| | |
| | | |
| | | |
| | | <!-- mescroll-body跟随page滚动, 不可fixed定位, 可设置 top, bottom, topbar, bottombar, safearea的偏移量--> |
| | | <mescroll-body ref="mescrollRef" top="176" bottom="300" @init="mescrollInit" @down="downCallback" @up="upCallback"> |
| | | <mescroll-body ref="mescrollRef" top="176" bottom="300" @init="mescrollInit" @down="downCallback" |
| | | @up="upCallback"> |
| | | <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 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.assets.name}}</view> |
| | | <view class="cu-tag radius bg-orange sm">可归还:{{item.quantity}}</view> |
| | | <view class="cu-tag radius bg-orange sm">可归还:{{item.availableQuantity}}</view> |
| | | <view class="numbox"> |
| | | <u-number-box v-model="valueList[index]" :min="0" :max="item.quantity" |
| | | <u-number-box v-model="valueList[index]" :min="0" :max="item.availableQuantity" |
| | | :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> |
| | | <input slot="input" style="width: 38px;text-align: center; " class="input" @blur="inputChange(index)" |
| | | :value="valueList[index] ? valueList[index] : 0" @input="valueList[index] = $event.detail.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> |
| | | <view class="flex justify-center align-center" style="margin-top: 10rpx;"> |
| | | <view class="" style="width: 95%; "> |
| | | <u--textarea height="50" v-model="reason" placeholder="请输入内容" placeholderStyle="font-size: 15rpx;"> |
| | | <u--textarea height="50" v-model="reason" placeholder="请输入内容" |
| | | placeholderStyle="font-size: 15rpx;"> |
| | | </u--textarea> |
| | | </view> |
| | | |
| | |
| | | </view> |
| | | |
| | | <view class="margin-top" style="margin-bottom: 30rpx;"> |
| | | <u-button style="width: 40%;" type="primary" text="提交申请" @click="submit" :disabled="isDisabled"></u-button> |
| | | <u-button style="width: 40%;" type="primary" text="提交申请" @click="submit" :disabled="isDisabled"> |
| | | </u-button> |
| | | </view> |
| | | |
| | | <u-toast ref="uToast"></u-toast> |
| | |
| | | applicationTime: '', //申请时间 |
| | | templateId: '', //模板ID |
| | | isDisabled: false, |
| | | |
| | | |
| | | approvalAssetsId: [], //非必传 我的资产报修、报废、归还时填写 审批资产ID |
| | | productCode: [], //非必传 报修报废时 填写 |
| | | page: 1, |
| | | pageSize: 10, |
| | | status: 'loadmore', |
| | |
| | | this.initTemplateData(); |
| | | }, |
| | | methods: { |
| | | inputChange(index){ |
| | | // console.log('开始:',this.valueList[index]); |
| | | this.valueList[index] = this.valueList[index]; |
| | | // console.log('结束:',this.valueList[index]); |
| | | |
| | | console.log('列表',this.valueList) |
| | | }, |
| | | |
| | | /*上拉加载的回调: 其中page.num:当前页 从1开始, page.size:每页数据条数,默认10 */ |
| | | onSearch(e) { |
| | | console.log("搜索:" + this.keyword) |
| | |
| | | params: { |
| | | pageNum: pageNum, |
| | | pageSize: pageSize, |
| | | keyStr: this.keyword |
| | | keyStr: this.keyword, |
| | | approvalType:2 |
| | | } |
| | | }) |
| | | .then(res => { |
| | | // debugger; |
| | | if (res.data.code === 0) { |
| | | let data = res.data.data; |
| | | console.log('总资产'+ data.length) |
| | | if (page.num == 1) this.assetsList = []; //如果是第一页,需手动置空列表 |
| | | this.assetsList = this.assetsList.concat(data); //追加新数据 |
| | | console.log(this.assetsList.length) |
| | | this.mescroll.endBySize(this.assetsList.length, res.data.total); |
| | | |
| | | if (page.num == 1) { |
| | | this.assetsList = []; //如果是第一页,需手动置空列表 |
| | | this.approvalAssetsId = []; |
| | | } |
| | | else{ |
| | | |
| | | for (let i = 0; i < data.length; i++) { |
| | | this.approvalAssetsId.push(data[i].id) |
| | | // console.log(data[i].assets.id) |
| | | } |
| | | |
| | | // console.log('id=',this.approvalAssetsId) |
| | | this.assetsList = this.assetsList.concat(data); //追加新数据 |
| | | |
| | | this.mescroll.endBySize(this.assetsList.length, res.data.total); |
| | | } else { |
| | | this.mescroll.endBySize(0, 0); |
| | | } |
| | | |
| | |
| | | let data = res.data.data; |
| | | //获取领用的模板ID |
| | | for (let i = 0; i < data.length; i++) { |
| | | if (data[i].type === 2) { |
| | | if (data[i].type === 3) { |
| | | this.templateId = data[i].templateId; |
| | | break; |
| | | } |
| | |
| | | this.isDisabled = false; |
| | | this.$refs.uToast.show({ |
| | | type: 'error', |
| | | message: "请选择一个或多个领用资产!" |
| | | message: "请选择一个或多个借用资产!" |
| | | }); |
| | | |
| | | return; |
| | |
| | | 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] |
| | | "id": 31377, |
| | | "name": item.assets.name, |
| | | "serialNumber": item.assets.serialNumber, |
| | | "quantity": this.valueList[i], |
| | | "approvalAssetsId":this.approvalAssetsId[i]==="0"?"":this.approvalAssetsId[i] |
| | | }) |
| | | } |
| | | } |
| | | |
| | | // console.log(assets); |
| | | console.log(assets); |
| | | let data = { |
| | | "assets": assets, |
| | | "templateId": this.templateId, |
| | | "reason": this.reason |
| | | "reason": this.reason, |
| | | "approvalAssetsId":140 |
| | | } |
| | | |
| | | console.log('data=',data) |
| | | |
| | | this.$http.post('/assets/approval/submit', data) |
| | | .then(res => { |
| | | // debugger; |
| | | debugger; |
| | | if (res.data.code === 0) { |
| | | console.log("成功了"); |
| | | this.reason=""; |
| | |
| | | padding-top: 10rpx; |
| | | font-size: 28rpx; |
| | | text-align: center; |
| | | background-color: #CFE0DA; |
| | | background-color: #FFFFFF; |
| | | } |
| | | |
| | | // 设置padding |