From 1c6c22d91c98e8f8077abc15558c1f5590173057 Mon Sep 17 00:00:00 2001 From: wzp <2880584989@qq.com> Date: 星期五, 11 二月 2022 18:22:21 +0800 Subject: [PATCH] 最新版 --- assetMgtH5/pages/assets/borrow.vue | 309 ++++++++++++++++++++++++++++++++------------------ 1 files changed, 197 insertions(+), 112 deletions(-) diff --git a/assetMgtH5/pages/assets/borrow.vue b/assetMgtH5/pages/assets/borrow.vue index 4f1bb25..21667bf 100644 --- a/assetMgtH5/pages/assets/borrow.vue +++ b/assetMgtH5/pages/assets/borrow.vue @@ -13,143 +13,91 @@ <text class="cuIcon-title text-orange"></text> 鍙�熺敤璧勪骇鍒楄〃 </view> </view> - <view class="cu-list menu-avatar"> - <view class="cu-item"> - <view class="cu-avatar radius lg" - style="background-image:url(https://ossweb-img.qq.com/images/lol/web201310/skin/big81007.jpg);"> - </view> - <view class="content"> - <view> - <view class="text-cut text-bold text-xl">璇炬</view> - <view class="cu-tag radius bg-orange sm">鍙�熺敤锛�100</view> - <view class="numbox"> - <u-number-box v-model="value" :min="0" :showMinus="value > 0"> - <view slot="minus" class="minus"> - <u-icon name="minus" size="12"></u-icon> - </view> - <input slot="input" style="width: 38px;text-align: center; " - class="input" :value="value"></input> - <view slot="plus" class="plus"> - <u-icon name="plus" color="#FFFFFF" size="12"></u-icon> - </view> - </u-number-box> - </view> - </view> - <view class="text-gray text-sm flex"> - <view class="text-cut">瑙勬牸锛�120*120 鐧借壊 缂栫爜锛�1234533333</view> - </view> - </view> - <view class="action"> - <!-- <view class="text-grey text-xs">22:20</view> --> - <view class="cu-tag round bg-red sm">鍒犻櫎</view> - </view> - </view> - <view class="cu-item"> - <view class="cu-avatar radius lg" - style="background-image:url(https://ossweb-img.qq.com/images/lol/web201310/skin/big81007.jpg);"> - </view> - <view class="content"> - <view> - <view class="text-cut text-bold text-xl">鍦嗚</view> - <view class="cu-tag radius bg-orange sm">鍙�熺敤锛�100</view> - <view class="numbox"> - <u-number-box v-model="value" :min="0" :showMinus="value > 0"> - <view slot="minus" class="minus"> - <u-icon name="minus" size="12"></u-icon> - </view> - <input slot="input" style="width: 38px;text-align: center; " - class="input" :value="value"></input> - <view slot="plus" class="plus"> - <u-icon name="plus" color="#FFFFFF" size="12"></u-icon> - </view> - </u-number-box> - </view> - </view> - <view class="text-gray text-sm flex"> - <view class="text-cut">瑙勬牸锛�120*120 鐧借壊 缂栫爜锛�12345</view> - </view> - </view> - <view class="action"> - <!-- <view class="text-grey text-xs">22:20</view> --> - <view class="cu-tag round bg-red sm">鍒犻櫎</view> - </view> - </view> - - <view class="cu-item"> - <view class="cu-avatar radius lg" - style="background-image:url(https://ossweb-img.qq.com/images/lol/web201310/skin/big81007.jpg);"> - </view> - <view class="content"> - <view> - <view class="text-cut text-bold text-xl">妞呭瓙</view> - <view class="cu-tag radius bg-orange sm">鍙�熺敤锛�100</view> - <view class="numbox"> - <u-number-box v-model="value" :min="0" :showMinus="value > 0"> - <view slot="minus" class="minus"> - <u-icon name="minus" size="12"></u-icon> - </view> - <input slot="input" style="width: 38px;text-align: center; " - class="input" :value="value"></input> - <view slot="plus" class="plus"> - <u-icon name="plus" color="#FFFFFF" size="12"></u-icon> - </view> - </u-number-box> - </view> - </view> - <view class="text-gray text-sm flex"> - <view class="text-cut">瑙勬牸锛�120*120 鐧借壊 缂栫爜锛�12345</view> - </view> - </view> - <view class="action"> - <!-- <view class="text-grey text-xs">22:20</view> --> - <view class="cu-tag round bg-red sm">鍒犻櫎</view> - </view> - </view> + <view class="" v-if="listFlag"> + <u-empty mode="list" icon="http://cdn.uviewui.com/uview/empty/list.png"> + </u-empty> </view> - + + <view class="cu-list menu-avatar"> + <view class="cu-item" v-for="(item,index) in assetsList" :key="index"> + <view class="cu-avatar radius lg bg-white" style="background-image:url(../../static/device.png)"> + </view> + <view class="content"> + <view> + <view class="text-cut text-bold text-xl">{{item.name}}</view> + <view class="cu-tag radius bg-orange sm">鍙�熺敤锛歿{item.quantity}}</view> + <view class="numbox"> + <u-number-box v-model="valueList[index]" :min="0" :max="item.quantity" + :showMinus="valueList[index] > 0"> + <view slot="minus" class="minus"> + <u-icon name="minus" size="12"></u-icon> + </view> + <input slot="input" style="width: 38px;text-align: center; " class="input" + :value="valueList[index]?valueList[index]:0"></input> + <view slot="plus" class="plus"> + <u-icon name="plus" color="#FFFFFF" size="12"></u-icon> + </view> + </u-number-box> + </view> + </view> + <view class="text-gray text-sm flex"> + <view class="text-cut">瑙勬牸锛歿{item.model?item.model:'鏃�'}} 缂栫爜锛歿{item.serialNumber}}</view> + </view> + </view> + <!-- <view class="action"> --> + <!-- <view class="text-grey text-xs">22:20</view> --> + <!-- <view class="cu-tag round bg-red sm">鍒犻櫎</view> --> + <!-- </view> --> + </view> + + </view> + + + <!-- 鐢宠鐞嗙敱 --> <view class="margin-top"> <view class="margin-left border-title"> - 鐢宠鐞嗙敱 + 鐢宠鐞嗙敱 </view> <view class="flex justify-center align-center" style="margin-top: 10rpx;"> <view class="" style="width: 95%; "> - <u--textarea v-model="reason" placeholder="璇疯緭鍏ュ唴瀹�" placeholderStyle="font-size: 15rpx;" ></u--textarea> + <u--textarea v-model="reason" placeholder="璇疯緭鍏ュ唴瀹�" placeholderStyle="font-size: 15rpx;"> + </u--textarea> </view> - + </view> </view> - + <view class="padding-left padding-top border-title " style="padding-bottom: 10rpx;"> <view class="action"> - 鐢宠浜轰俊鎭� + 鐢宠浜轰俊鎭� </view> </view> <view class="flex justify-center"> <view class="u-border radius" style="width: 95%; padding:20rpx 0 20rpx 20rpx;"> <view class=""> - 鐢宠浜�: 鏉庤�佸笀 + 鐢宠浜�: {{applicant}} </view> <view class="" style="margin-top: 5rpx;"> - 鑱屽姟: 鐝富浠� + 鑱屽姟: {{jobTitle}} </view> <view class="" style="margin-top: 5rpx;"> - 鐢宠鍗曚綅: 鍒濅竴1鐝� + 鐢宠鍗曚綅: {{applicationUnit}} </view> <view class="" style="margin-top: 5rpx;"> - 鐢宠鏃堕棿: 2022骞�2鏈�8鏃� 23:00 + 鐢宠鏃堕棿: {{applicationTime}} </view> </view> </view> - + </view> - + <view class="margin-top"> - <u-button style="width: 40%;" type="primary" text="鎻愪氦鐢宠"></u-button> + <u-button style="width: 40%;" type="primary" text="鎻愪氦鐢宠" @click="submit" :disabled="isDisabled"></u-button> </view> - + <u-toast ref="uToast"></u-toast> </view> </template> @@ -157,26 +105,163 @@ export default { data() { return { - value: 10, - reason:'' + value: 0, + reason: '', + assetsList: [], + listFlag: false, + valueList: [], + applicant: "", //鐢宠浜� + jobTitle: "", //鑱屽姟 + applicationUnit: '', //鐢宠鍗曚綅 + applicationTime: '', //鐢宠鏃堕棿 + templateId: '', //妯℃澘ID + isDisabled: false } + }, + onShow() { + console.log(this.$dayjs().format("YYYY-MM-DD")); + this.initUseListData(); + this.initTemplateData(); }, methods: { valChange(e) { console.log('褰撳墠鍊间负: ' + e.value) + }, + //鑾峰彇鍙鐢ㄨ澶� + initUseListData() { + this.$http.get('/assets/approval/search', { + params: { + pageNum: "1", + pageSize: "3", + keyStr: '', + state: "2" + } + }) + + .then(res => { + // debugger; + if (res.data.code === 0) { + let data = res.data.rows; + this.assetsList = data; + // console.log(JSON.stringify(data.data)) + // let tt = data.data; + console.log(data.length) + } else { + this.listFlag = true; + } + + + }).catch(err => { + this.listFlag = true; + console.log(err.data) + }) + }, + + //鑾峰彇棰嗙敤鐨勬ā鏉� + initTemplateData() { + this.$http.get('/assets/approval/getTemplate') + .then(res => { + // debugger; + + if (res.data.code === 0) { + let data = res.data.data; + + console.log(data.length) + + //鑾峰彇鍊熺敤鐨勬ā鏉縄D + for (let i = 0; i < data.length; i++) { + if (data[i].type === 2) { + this.templateId = data[i].templateId; + break; + } + } + } + + + + }).catch(err => { + + console.log(err.data) + }) + }, + + submit() { + this.isDisabled = true; + if (this.reason.length <= 0) { + this.isDisabled = false; + this.$refs.uToast.show({ + type: 'error', + message: "璇峰~鍐欑敵璇风悊鐢�" + }); + return; + } + if (this.valueList.length <= 0) { + this.isDisabled = false; + this.$refs.uToast.show({ + type: 'error', + message: "璇烽�夋嫨涓�涓垨澶氫釜鍊熺敤璧勪骇锛�" + }); + + return; + } + + this.submitApply(); + }, + + submitApply() { + let assets = []; + for (let i = 0; i < this.valueList.length; i++) { + if (this.valueList[i] > 0) { + let item = this.assetsList[i]; + assets.push({ + "id": item.id, + "name": item.name, + "serialNumber": item.serialNumber, + "quantity": this.valueList[i] + }) + } + } + + console.log(assets); + let data = { + "assets": assets, + "templateId": this.templateId, + "reason": this.reason + } + + this.$http.post('/assets/approval/submit', data) + .then(res => { + debugger; + if (res.data.code === 0) { + console.log("鎴愬姛浜�") + this.$refs.uToast.show({ + type: 'success', + message: "鎻愪氦鎴愬姛" + }); + } else { + this.$refs.uToast.show({ + type: 'error', + message: res.data.msg + }); + } + this.isDisabled = false; + + }).catch(err => { + this.isDisabled = false; + console.log(err.data) + }) } } } </script> <style lang="scss"> - - .numbox{ + .numbox { margin-left: 20rpx; } - + .minus { - + width: 15px; height: 15px; border-width: 1px; -- Gitblit v1.9.1