| | |
| | | <uni-th width="100">产品ID</uni-th> |
| | | <uni-th width="100">产品名称</uni-th> |
| | | <uni-th width="100">库位</uni-th> |
| | | <uni-th width="100">确认数量</uni-th> |
| | | </uni-tr> |
| | | <uni-tr v-for="(item, index) in locDetlData" :key="index"> |
| | | <uni-td>{{item.count}}</uni-td> |
| | | <uni-td>{{item.matNo}}</uni-td> |
| | | <uni-td>{{item.matName}}</uni-td> |
| | | <uni-td>{{item.locNo}}</uni-td> |
| | | <uni-td align="center"> |
| | | <button class="uni-button" size="mini" type="primary" @click="conf(index,item)">修改</button> |
| | | <button class="uni-button" size="mini" type="warn" @click="remove(index,item)">删除</button> |
| | | </uni-td> |
| | | </uni-tr> |
| | | </uni-table> |
| | | |
| | | </view> |
| | | <view> |
| | | <button class="cu-btn bg-yellow pda-btn">确 认</button> |
| | | <button class="cu-btn bg-grey pda-btn">重 置</button> |
| | | <button class="cu-btn bg-yellow pda-btn" @click="check">确 认</button> |
| | | <button class="cu-btn bg-grey pda-btn" @click="reset">重 置</button> |
| | | </view> |
| | | <view> |
| | | <uni-popup ref="popup" background-color="#fff" style="width: 500rpx;"> |
| | |
| | | <text class="title">数量</text> |
| | | <uni-number-box @change="countDom" v-model="count" /> |
| | | </view> |
| | | <button class="cu-btn bg-yellow pda-btn2" @click="confirm">补充</button> |
| | | <button class="cu-btn bg-yellow pda-btn2" @click="confirm">提取</button> |
| | | |
| | | </view> |
| | | </uni-popup> |
| | |
| | | export default { |
| | | data() { |
| | | return { |
| | | msgType: '', |
| | | messageText: '', |
| | | index: 0, |
| | | array: [], |
| | | matBtn:'', |
| | |
| | | type: '', |
| | | msgType:'', |
| | | messageText:'', |
| | | baseIP:'', |
| | | outlet:'', |
| | | checkList:[], |
| | | sourceList:[], |
| | | minCount:0, |
| | | } |
| | | }, |
| | | onLoad(){ |
| | | let that = this |
| | | mounted(){ |
| | | // 获取IP端口 |
| | | const UIP = uni.getStorageSync('UIP'); |
| | | this.baseIP = UIP |
| | | // 获取出库口 |
| | | let that = this |
| | | uni.request({ |
| | | url: that.baseHttp + that.baseIP + that.baseUrl + "/available/take/check/site", |
| | | header: { |
| | |
| | | }) |
| | | }, |
| | | methods: { |
| | | bindPickerChange: function(e) { |
| | | this.index = e.detail.value |
| | | // 提示窗口 |
| | | messageToggle(type) { |
| | | this.msgType = type |
| | | this.messageText = '提取失败' |
| | | this.$refs.message.open() |
| | | }, |
| | | // 提取 |
| | | // 出库口:180等 |
| | | bindPickerChange: function(e) { |
| | | let that = this |
| | | that.index = e.detail.value |
| | | that.outlet = that.array[that.index] |
| | | uni.request({ |
| | | url: that.baseHttp + that.baseIP + that.baseUrl + "/mobile/check/queryMatFromDevNo?devNo=" + that.outlet, |
| | | header: { |
| | | 'token':uni.getStorageSync('token') |
| | | }, |
| | | method:'GET', |
| | | async:false, |
| | | success(res){ |
| | | if(res.data.code === 200){ |
| | | console.log(1) |
| | | that.locDetlData = res.data.data |
| | | if(res.data.data && res.data.data.length > 0){ |
| | | res.data.data.map(function(item){ |
| | | that.souceData.push(item) |
| | | console.log(that.souceData) |
| | | }) |
| | | } |
| | | } else if (res.data.code = 403){ |
| | | uni.navigateBack({ |
| | | delta: 1 |
| | | }) |
| | | } else { |
| | | this.messageToggle('error') |
| | | this.messageText = res.data.msg |
| | | } |
| | | } |
| | | |
| | | }) |
| | | |
| | | }, |
| | | // 点击补充的弹窗 |
| | | toggle(type) { |
| | | this.type = type |
| | | // open 方法传入参数 等同在 uni-popup 组件上绑定 type属性 |
| | |
| | | countDom(value) { |
| | | |
| | | }, |
| | | // 根据产品ID查询产品详情 |
| | | find(){ |
| | | let that = this |
| | | let thatId = that.matNo |
| | |
| | | that.unit = data.unit |
| | | } |
| | | } else if (res.data.code ===403 ){ |
| | | // 待定 |
| | | uni.navigateBack({ |
| | | delta: 1 |
| | | }) |
| | | } else { |
| | | // 待定 |
| | | this.messageToggle('error') |
| | | this.messageText = res.data.msg |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | // 删除 |
| | | remove(index,item){ |
| | | this.matData.splice(index,1) |
| | | this.messageToggle('success') |
| | | this.messageText = '删除成功' |
| | | }, |
| | | // 弹窗 确认补充 |
| | | confirm(){ |
| | | let that = this |
| | | let data = { |
| | |
| | | that.addTableData(data) |
| | | |
| | | }, |
| | | initTableData(data){ |
| | | for(var i=0;i<data.length;i++){ |
| | | var toPush =true |
| | | for(var j = 0; j<this.locDetlDate.length;j++){ |
| | | if (data[i].matNo === this.locDetlData[j].matNo && data[i].locNo === this.locDetlData[j].locNo) { |
| | | toPush = false; |
| | | } |
| | | } |
| | | if(toPush){ |
| | | this.locDetlDate.push(data[i]) |
| | | } |
| | | // 修改数量 |
| | | conf(){ |
| | | let that = this |
| | | let data = { |
| | | matNo:that.matNo, |
| | | matName:that.matName, |
| | | count:that.count |
| | | } |
| | | for (var j = 0; j < that.locDetlData.length; j++) { |
| | | if (matNo === that.locDetlData[j].matNo && locNo === that.locDetlData[j].locNo) { |
| | | if (that.count < that.minCount) { |
| | | that.messageToggle('error') |
| | | that.messageText = '数量必须大于0' |
| | | return; |
| | | } |
| | | that.locDetlData[j].count = Number(that.count); |
| | | } |
| | | } |
| | | that.messageToggle('success') |
| | | that.messageText = '修改成功' |
| | | }, |
| | | // 移除物料 |
| | | remove(index,item){ |
| | | this.matData.splice(index,1) |
| | | this.messageToggle('success') |
| | | this.messageText = '删除成功' |
| | | }, |
| | | addTableData(data){ |
| | | let that = this |
| | |
| | | that.messageText = '提取失败' |
| | | return |
| | | } |
| | | this.$refs.popup.close() |
| | | var toPush = true |
| | | for (var j = 0; j < this.locDetlData.length; j++) { |
| | | if (data.matNo === this.locDetlData[j].matNo && data.locNo === this.locDetlData[j].locNo) { |
| | |
| | | } |
| | | locDetlData.push(pushData); |
| | | } |
| | | this.$refs.popup.close() |
| | | |
| | | }, |
| | | initTableData(data){ |
| | | for(var i=0;i<data.length;i++){ |
| | | var toPush =true |
| | | for(var j = 0; j<this.locDetlDate.length;j++){ |
| | | if (data[i].matNo === this.locDetlData[j].matNo && data[i].locNo === this.locDetlData[j].locNo) { |
| | | toPush = false; |
| | | } |
| | | } |
| | | if(toPush){ |
| | | this.locDetlDate.push(data[i]) |
| | | } |
| | | } |
| | | }, |
| | | // 重置 |
| | | reset(){ |
| | | this.array = [] |
| | | this.locDetlData = []; |
| | | this.checkList = [] |
| | | this.sourceList = [] |
| | | }, |
| | | check(){ |
| | | if(this.souceData.length === 0) { |
| | | this.messageToggle('error') |
| | | this.messageText = '站点无货,无法盘点' |
| | | return |
| | | } |
| | | if(this.locDetlData.length > 0) { |
| | | for(var i = 0; i < that.locDetlData.length; i++){ |
| | | if (that.locDetlData[i].count === null || that.locDetlData[i].count === 0 || |
| | | that.locDetlData[i].count === undefined) { |
| | | this.messageToggle('error') |
| | | this.messageText = that.locDetlData[i].matNo + '商品数量错误' |
| | | return |
| | | } |
| | | } |
| | | } |
| | | if (this.locDetlData.length > 0) { |
| | | this.locDetlData.map(function (item) { |
| | | this.checkList.push({ |
| | | locNo: item.locNo, |
| | | matNo: item.matNo, |
| | | checkQty: item.count |
| | | }); |
| | | }); |
| | | } |
| | | if (this.souceData.length > 0) { |
| | | this.souceData.map(function (item) { |
| | | this.sourceList.push({ |
| | | locNo: item.locNo, |
| | | matNo: item.matNo, |
| | | count: item.count |
| | | }); |
| | | }); |
| | | } |
| | | uni.request({ |
| | | url: that.baseHttp + that.baseIP + that.baseUrl + "/mobile/stock/check", |
| | | header: { |
| | | 'token':uni.getStorageSync('token') |
| | | }, |
| | | data: JSON.stringify({ |
| | | checkList: this.checkList |
| | | }), |
| | | method:'POST', |
| | | async:false, |
| | | success(res){ |
| | | if(res.data.code === 200){ |
| | | this.reset(); |
| | | this.messageToggle('success') |
| | | this.messageText = '盘点成功' |
| | | } else if (res.data.code === 403) { |
| | | uni.navigateBack({ |
| | | delta: 1 |
| | | }) |
| | | } else { |
| | | this.messageToggle('error') |
| | | this.messageText = res.data.msg |
| | | } |
| | | |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | </script> |