|  |  |  | 
|---|
|  |  |  | <template> | 
|---|
|  |  |  | <view> | 
|---|
|  |  |  | <view class="header"> | 
|---|
|  |  |  | <uni-forms label-width="120"> | 
|---|
|  |  |  | <uni-forms-item label="æçæ¡ç "> | 
|---|
|  |  |  | <uni-easyinput type="text" @input="inputChange()" v-model="value" placeholder="请æ«ç " ref='midInput' | 
|---|
|  |  |  | :focus="true" /> | 
|---|
|  |  |  | </uni-forms-item> | 
|---|
|  |  |  | <uni-forms-item> | 
|---|
|  |  |  | <button @click="submit" type="primary" size="default" style="margin-top: 2%;">æ£é宿</button> | 
|---|
|  |  |  | </uni-forms-item> | 
|---|
|  |  |  | </uni-forms> | 
|---|
|  |  |  | <uni-segmented-control :current="current" :values="items" @clickItem="onClickItem"> | 
|---|
|  |  |  | </uni-segmented-control> | 
|---|
|  |  |  | <view class="content"> | 
|---|
|  |  |  | <view v-if="current === 0" class="headerstyle"> | 
|---|
|  |  |  | <view class="itemstyle"> | 
|---|
|  |  |  | <uni-forms label-width="120"> | 
|---|
|  |  |  | <uni-forms-item label="æçæ¡ç "> | 
|---|
|  |  |  | <uni-easyinput type="text" :focus="!istrue" v-model="barcode" placeholder="è¯·æ«ææçæ¡ç " | 
|---|
|  |  |  | ref='midInput' @input="inputChangebarcode()" /> | 
|---|
|  |  |  | </uni-forms-item> | 
|---|
|  |  |  | <uni-forms-item> | 
|---|
|  |  |  | <button @click="picking" type="primary" style="margin-left: 0px;">æ£é宿</button> | 
|---|
|  |  |  | </uni-forms-item> | 
|---|
|  |  |  | </uni-forms> | 
|---|
|  |  |  | <uni-list> | 
|---|
|  |  |  | <uni-list-item direction="column" v-for="item in matInfos" :key="item.palletCode"> | 
|---|
|  |  |  | <template v-slot:body> | 
|---|
|  |  |  | <!-- <uni-icons type="trash" size="22" style="position: absolute;right: 5%;" | 
|---|
|  |  |  | @click="deleteList(item.sn)"> | 
|---|
|  |  |  | </uni-icons> --> | 
|---|
|  |  |  | <view class="uni-content"> | 
|---|
|  |  |  | <view>åæ®ç¼å·ï¼{{item.orderNo}}</view> | 
|---|
|  |  |  | <view>æçç¼å·ï¼{{item.palletCode}}</view> | 
|---|
|  |  |  | <view>ç©ææ¹æ¬¡ï¼{{item.batchNo}}</view> | 
|---|
|  |  |  | <view>ç©æç¼ç ï¼{{item.materielCode}}</view> | 
|---|
|  |  |  | <view>ç©æåç§°ï¼{{item.materielName}}</view> | 
|---|
|  |  |  | <view>åæ®æ°éï¼{{item.orderQuantity}}</view> | 
|---|
|  |  |  | <view>åå§åºåï¼{{item.originalQuantity}}</view> | 
|---|
|  |  |  | <view>åé
åºåï¼{{item.assignQuantity}}</view> | 
|---|
|  |  |  | <view>å©ä½åºåï¼{{item.originalQuantity-item.assignQuantity}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </uni-list-item> | 
|---|
|  |  |  | </uni-list> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view v-if="current === 2" class="headerstyle"> | 
|---|
|  |  |  | <view class="itemstyle"> | 
|---|
|  |  |  | <uni-forms label-width="120"> | 
|---|
|  |  |  | <uni-forms-item label="æçæ¡ç "> | 
|---|
|  |  |  | <uni-easyinput type="text" :focus="!istrue2" v-model="barcode2" placeholder="è¯·æ«ææçæ¡ç " | 
|---|
|  |  |  | ref='midInput' @input="inputChangebarcode2()" /> | 
|---|
|  |  |  | </uni-forms-item> | 
|---|
|  |  |  | <uni-forms-item label="å
ç®±æ ç¾"> | 
|---|
|  |  |  | <uni-easyinput type="text" @input="inputChange2()" v-model="innerboxcode" | 
|---|
|  |  |  | placeholder="è¯·æ«æå
ç®±æ ç¾" ref='midInput' :focus="istrue2" /> | 
|---|
|  |  |  | </uni-forms-item> | 
|---|
|  |  |  | <uni-forms-item> | 
|---|
|  |  |  | <button @click="submit" type="primary" size="default" style="margin-top: 2%;">ç»ç</button> | 
|---|
|  |  |  | </uni-forms-item> | 
|---|
|  |  |  | </uni-forms> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view v-if="current === 1" class="headerstyle"> | 
|---|
|  |  |  | <view class="itemstyle"> | 
|---|
|  |  |  | <uni-forms label-width="120"> | 
|---|
|  |  |  | <uni-forms-item label="æçæ¡ç "> | 
|---|
|  |  |  | <uni-easyinput type="text" :focus="!addressFocus" v-model="inboundBarcode" | 
|---|
|  |  |  | placeholder="è¯·æ«ææçæ¡ç " ref='midInput' @input="inputChangebarcode3" /> | 
|---|
|  |  |  | </uni-forms-item> | 
|---|
|  |  |  | <uni-forms-item label="å°åæ¡ç "> | 
|---|
|  |  |  | <uni-easyinput type="text" v-model="address" :disabled = "addressdisabled" placeholder="è¯·æ«æå°åæ¡ç " ref='midInput' | 
|---|
|  |  |  | :focus="addressFocus" /> | 
|---|
|  |  |  | </uni-forms-item> | 
|---|
|  |  |  | <uni-forms-item> | 
|---|
|  |  |  | <button @click="inbound" type="primary" size="default" style="margin-top: 2%;">å
¥åºç¡®è®¤</button> | 
|---|
|  |  |  | </uni-forms-item> | 
|---|
|  |  |  | </uni-forms> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view> | 
|---|
|  |  |  | <uni-list> | 
|---|
|  |  |  | <uni-list-item direction="column" v-if="inboundBarcode"> | 
|---|
|  |  |  | <template v-slot:body> | 
|---|
|  |  |  | <view class="uni-list-box"> | 
|---|
|  |  |  | <view class="uni-content"> | 
|---|
|  |  |  | <view class="uni-title-sub uni-ellipsis-2">æ»æ°éï¼{{Summmary}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </uni-list-item> | 
|---|
|  |  |  | <uni-list-item direction="column" v-for="(item,index) in stockInfoDetail" :key="index"> | 
|---|
|  |  |  | <template v-slot:body> | 
|---|
|  |  |  | <view class="uni-list-box"> | 
|---|
|  |  |  | <view class="uni-content"> | 
|---|
|  |  |  | <view class="uni-title-sub uni-ellipsis-2">ç©æç¼å·ï¼{{item.materielCode}}</view> | 
|---|
|  |  |  | <view class="uni-note">ç©æåç§°ï¼{{item.materielName}}</view> | 
|---|
|  |  |  | <view class="uni-note">ç©ææ¹æ¬¡ï¼{{item.batchNo}}</view> | 
|---|
|  |  |  | <view class="uni-note">åºåæ°éï¼{{item.stockQuantity}}</view> | 
|---|
|  |  |  | <view class="uni-note">åºåºæ°éï¼{{item.outboundQuantity}}</view> | 
|---|
|  |  |  | <view class="uni-note">çäº§æ¥æï¼{{item.productionDate}}</view> | 
|---|
|  |  |  | <view class="uni-note">æ æ æï¼{{item.effectiveDate}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </uni-list-item> | 
|---|
|  |  |  | </uni-list> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <uni-list class="footer"> | 
|---|
|  |  |  | <uni-list-item direction="column" v-if="value2"> | 
|---|
|  |  |  | <label>{{value2}}</label> | 
|---|
|  |  |  | </uni-list-item> | 
|---|
|  |  |  | <uni-list-item direction="column" v-for="item in matTotal" :key="item.matCode"> | 
|---|
|  |  |  | <template v-slot:body> | 
|---|
|  |  |  | <view class="uni-list-box"> | 
|---|
|  |  |  | <view class="uni-content"> | 
|---|
|  |  |  | <view class="uni-title-sub uni-ellipsis-2">ç©æç¼ç ï¼{{item.matCode}}</view> | 
|---|
|  |  |  | <view class="uni-title-sub uni-ellipsis-2">æ°éï¼{{item.matQuantity}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </uni-list-item> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <uni-list-item direction="column" v-for="(item,index) in matInfo" :key="index"> | 
|---|
|  |  |  | <template v-slot:body> | 
|---|
|  |  |  | <view class="uni-list-box"> | 
|---|
|  |  |  | <view class="uni-content"> | 
|---|
|  |  |  | <view class="uni-title-sub uni-ellipsis-2" style="font-size: 1.1em;">ç©æç¼ç ï¼{{item.matCode}} | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="uni-title-sub uni-ellipsis-2" style="font-size: 1.1em;">ç©æåç§°ï¼{{item.matName}} | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="uni-title-sub uni-ellipsis-2" style="font-size: 1.1em;">æ°éï¼{{item.matQty}} | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </uni-list-item> | 
|---|
|  |  |  | </uni-list> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <u-toast ref="uToast" /> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <script> | 
|---|
|  |  |  | // const SixUniTts = uni.requireNativePlugin("SmallSix-SixUniTts") | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | data() { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | value: "", | 
|---|
|  |  |  | matInfo: [], | 
|---|
|  |  |  | value2: "", | 
|---|
|  |  |  | matTotal:[] | 
|---|
|  |  |  | items: ['æ£é', 'å
¥åº'], //'æ£éç»ç', | 
|---|
|  |  |  | current: 0, | 
|---|
|  |  |  | isPicking: false, | 
|---|
|  |  |  | istrue: false, | 
|---|
|  |  |  | matInfos: [], | 
|---|
|  |  |  | barcode: '', | 
|---|
|  |  |  | materialsns: "", | 
|---|
|  |  |  | boxBarcodes: [], | 
|---|
|  |  |  | sns: [], | 
|---|
|  |  |  | barcodefocus: true, | 
|---|
|  |  |  | totalNum: 0, | 
|---|
|  |  |  | pickNum: 0, | 
|---|
|  |  |  | num: 0, | 
|---|
|  |  |  | orderTotalNum: 0, | 
|---|
|  |  |  | orderPickNum: 0, | 
|---|
|  |  |  | orderNo: "", | 
|---|
|  |  |  | matTotal: [], | 
|---|
|  |  |  | istrue2: false, | 
|---|
|  |  |  | barcode2: '', | 
|---|
|  |  |  | innerboxcode: "", | 
|---|
|  |  |  | sns2: [], | 
|---|
|  |  |  | barcodefocus: true, | 
|---|
|  |  |  | addressFocus: false, | 
|---|
|  |  |  | inboundBarcode: "", | 
|---|
|  |  |  | address: "", | 
|---|
|  |  |  | warehouseId: 0, | 
|---|
|  |  |  | Summmary: 0, | 
|---|
|  |  |  | stockInfoDetail: [], | 
|---|
|  |  |  | addressdisabled: false | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | onLoad(res) { | 
|---|
|  |  |  | //this.hideboard(); | 
|---|
|  |  |  | this.barcodefocus = false; | 
|---|
|  |  |  | this.warehouseId = res.warehouseId; | 
|---|
|  |  |  | if (this.warehouseId == 5) { | 
|---|
|  |  |  | this.address = "8005" | 
|---|
|  |  |  | }else if (this.warehouseId == 3) { | 
|---|
|  |  |  | this.address = "1011"; | 
|---|
|  |  |  | this.addressdisabled = true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.istrue = false; | 
|---|
|  |  |  | this.addressFocus = false; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | submit() { | 
|---|
|  |  |  | if (this.value.length == 0) { | 
|---|
|  |  |  | onClickItem(e) { | 
|---|
|  |  |  | this.barcodeFo = true; | 
|---|
|  |  |  | this.focus = false; | 
|---|
|  |  |  | this.addressFocus = false; | 
|---|
|  |  |  | if (this.current !== e.currentIndex) { | 
|---|
|  |  |  | this.current = e.currentIndex; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | inbound() { | 
|---|
|  |  |  | if (this.inboundBarcode == "") { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: "请æ«ç ", | 
|---|
|  |  |  | title: "è¯·æ«ææçæ¡ç ", | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | var param; | 
|---|
|  |  |  | var matInfo = this.value.split('|'); | 
|---|
|  |  |  | if (matInfo.length == 7) { | 
|---|
|  |  |  | param = { | 
|---|
|  |  |  | MainData: { | 
|---|
|  |  |  | "innerCode": this.value | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | param = { | 
|---|
|  |  |  | MainData: { | 
|---|
|  |  |  | "barcode": this.value | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.address == "") { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: "è¯·æ«æå°åæ¡ç ", | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | var postData = { | 
|---|
|  |  |  | MainData: { | 
|---|
|  |  |  | "barcode": this.inboundBarcode, | 
|---|
|  |  |  | "startPoint": this.address, | 
|---|
|  |  |  | "warehouseId": this.warehouseId | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.$u.post('/api/StockOperate/ReleaseAllBox', param).then(resdt => { | 
|---|
|  |  |  | if (resdt.status) { | 
|---|
|  |  |  | uni.$showMsg('è§£çæå!') | 
|---|
|  |  |  | this.value = ""; | 
|---|
|  |  |  | this.matInfo = []; | 
|---|
|  |  |  | this.$u.post('/api/Task/RequestInboundTask', postData).then(res => { | 
|---|
|  |  |  | if (res.status) { | 
|---|
|  |  |  | uni.$showMsg(res.message); | 
|---|
|  |  |  | this.inboundBarcode = ""; | 
|---|
|  |  |  | setTimeout(() => { | 
|---|
|  |  |  | this.addressFocus = false; | 
|---|
|  |  |  | }, 200); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: resdt.message, | 
|---|
|  |  |  | title: res.message, | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | inputChangebarcode3() { | 
|---|
|  |  |  | this.addressFocus = false; | 
|---|
|  |  |  | this.$nextTick(function(x) { | 
|---|
|  |  |  | if (this.inboundBarcode != '') { | 
|---|
|  |  |  | this.addressFocus = true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | this.$nextTick(function(x) { | 
|---|
|  |  |  | if (this.inboundBarcode != '') { | 
|---|
|  |  |  | var postData = { | 
|---|
|  |  |  | MainData: { | 
|---|
|  |  |  | "barcode": this.inboundBarcode, | 
|---|
|  |  |  | "warehouseId": this.warehouseId, | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | this.$u.post('/api/StockInfo/StockQueryData', postData).then(res => { | 
|---|
|  |  |  | // this.stockInfo = []; | 
|---|
|  |  |  | this.stockInfoDetail = []; | 
|---|
|  |  |  | if (res.status) { | 
|---|
|  |  |  | // this.stockInfo = res.data, | 
|---|
|  |  |  | this.stockInfoDetail = res.data.details | 
|---|
|  |  |  | //è·åæ»æ°é | 
|---|
|  |  |  | this.stockInfoDetail.forEach(item => { | 
|---|
|  |  |  | this.Summmary+= item.stockQuantity; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | // title: "æªæ¾å°æçä¿¡æ¯", | 
|---|
|  |  |  | title: res.message, | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | picking() { | 
|---|
|  |  |  | if (this.barcode == "") { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: "è¯·æ«ææçæ¡ç ", | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.$u.post('/api/OutStockLockInfo/MaterialPick?palletCode=' + this.barcode, {}).then(res => { | 
|---|
|  |  |  | if (res.status) { | 
|---|
|  |  |  | // if(this.warehouseId==5){ | 
|---|
|  |  |  | //    this.Finish("8005"); | 
|---|
|  |  |  | // } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | uni.$showMsg('æ£éæå!') | 
|---|
|  |  |  | this.barcode = ""; | 
|---|
|  |  |  | this.matInfos = []; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: res.message, | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | Finish(code) { | 
|---|
|  |  |  | this.$u.post('http://127.0.0.1:9291/api/CTU_AGV/PutFinish?&code=' + code).then( | 
|---|
|  |  |  | res => { | 
|---|
|  |  |  | if (res.status) { | 
|---|
|  |  |  | // this.$refs.uToast.show({ | 
|---|
|  |  |  | //    title: "宿æå", | 
|---|
|  |  |  | //    type: "success" | 
|---|
|  |  |  | // }) | 
|---|
|  |  |  | // this.barcode = ""; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | // this.$refs.uToast.show({ | 
|---|
|  |  |  | //    title: res.message, | 
|---|
|  |  |  | //    type: "error" | 
|---|
|  |  |  | // }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | inputChange(e) { | 
|---|
|  |  |  | this.$nextTick(() => { | 
|---|
|  |  |  | if (this.value.length == 0) { | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | var matInfo = this.value.split('|'); | 
|---|
|  |  |  | this.matInfo = []; | 
|---|
|  |  |  | this.istrue = false; | 
|---|
|  |  |  | var matInfo = this.materialsns.split('|'); | 
|---|
|  |  |  | if (matInfo.length == 7) { | 
|---|
|  |  |  | this.$u.post('/api/StockOperate/GetStockInfoByInnerCode', { | 
|---|
|  |  |  | MainData: { | 
|---|
|  |  |  | "innerCode": this.value | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }).then(res => { | 
|---|
|  |  |  | if (res.status) { | 
|---|
|  |  |  | this.matInfo = res.data.stockInfo; | 
|---|
|  |  |  | this.matTotal = res.data.stockTotal; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: res.message, | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | var matObj = { | 
|---|
|  |  |  | matCode: matInfo[1], | 
|---|
|  |  |  | matProductionDate: matInfo[3], | 
|---|
|  |  |  | matQty: matInfo[5], | 
|---|
|  |  |  | orderNo: matInfo[6], | 
|---|
|  |  |  | sn: this.materialsns, | 
|---|
|  |  |  | isPicking: this.isPicking | 
|---|
|  |  |  | } | 
|---|
|  |  |  | var temp = this.boxBarcodes.find(x => x.orderNo == matObj.orderNo); | 
|---|
|  |  |  | if (!temp) { | 
|---|
|  |  |  | var tmp = this.matTotal.find(x => x.matCode == matObj.matCode); | 
|---|
|  |  |  | if (!tmp) { | 
|---|
|  |  |  | this.matTotal.push({ | 
|---|
|  |  |  | matCode: matObj.matCode, | 
|---|
|  |  |  | matQuantity: parseInt(matObj.matQty) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | tmp.matQuantity += parseInt(matObj.matQty); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | this.sns.push({ | 
|---|
|  |  |  | innerboxcode: this.materialsns, | 
|---|
|  |  |  | isSplit: this.isPicking | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.boxBarcodes.push(matObj); | 
|---|
|  |  |  | this.isPicking = false; | 
|---|
|  |  |  | setTimeout(this.updateFocus, 100); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: "æ«ç éå¤", | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | setTimeout(this.updateFocus, 100); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$u.post('/api/StockOperate/GetStockInfoByBarcode', { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: "æ«ç é误,è¯·æ«ææ£ç¡®å
ç®±ç ", | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | setTimeout(this.updateFocus, 100); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | checkedClick() { | 
|---|
|  |  |  | this.isPicking = !this.isPicking; | 
|---|
|  |  |  | this.istrue = false; | 
|---|
|  |  |  | this.$nextTick(function(x) { | 
|---|
|  |  |  | if (this.barcode != '') { | 
|---|
|  |  |  | this.istrue = true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | updateFocus() { | 
|---|
|  |  |  | this.materialsns = ''; | 
|---|
|  |  |  | if (!this.istrue) { | 
|---|
|  |  |  | this.istrue = true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | inputChangebarcode() { | 
|---|
|  |  |  | this.boxBarcodes = []; | 
|---|
|  |  |  | this.istrue = false; | 
|---|
|  |  |  | this.$nextTick(function(x) { | 
|---|
|  |  |  | if (this.barcode != '') { | 
|---|
|  |  |  | var postData = { | 
|---|
|  |  |  | MainData: { | 
|---|
|  |  |  | "barcode": this.value | 
|---|
|  |  |  | "barcode": this.barcode, | 
|---|
|  |  |  | "warehouseId": this.warehouseId, | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }).then(res => { | 
|---|
|  |  |  | if (res.status) { | 
|---|
|  |  |  | this.matInfo = res.data.stockInfo; | 
|---|
|  |  |  | this.matTotal = res.data.stockTotal; | 
|---|
|  |  |  | // console.log(res.data); | 
|---|
|  |  |  | // console.log(this.matTotal); | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | this.$u.post('/api/OutStockLockInfo/GetStockOutboundOrder', postData).then(res => { | 
|---|
|  |  |  | this.matInfos = []; | 
|---|
|  |  |  | if (res != null) { | 
|---|
|  |  |  | this.matInfos = res | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: res.message, | 
|---|
|  |  |  | title: "æªæ¾å°æ£éä¿¡æ¯", | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | this.istrue = true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | deleteList(res) { | 
|---|
|  |  |  | this.matTotal.map((item, index) => { | 
|---|
|  |  |  | var temp = this.boxBarcodes.find(x => x.sn == res); | 
|---|
|  |  |  | if (temp) { | 
|---|
|  |  |  | if (item.matCode == temp.matCode) { | 
|---|
|  |  |  | if (item.matQuantity - temp.matQty == 0) { | 
|---|
|  |  |  | this.matTotal.splice(index, 1); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | item.matQuantity -= temp.matQty; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | this.sns.map((item, index) => { | 
|---|
|  |  |  | if (item.innerboxcode == res) { | 
|---|
|  |  |  | this.sns.splice(index, 1); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | this.boxBarcodes.map((item, index) => { | 
|---|
|  |  |  | if (item.sn == res) { | 
|---|
|  |  |  | this.boxBarcodes.splice(index, 1); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | submit() { | 
|---|
|  |  |  | if (this.barcode2 == "") { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: "è¯·æ«ææçæ¡ç ", | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.innerboxcode == "") { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: "è¯·æ«æå
ç®±æ ç¾", | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.$u.post('/api/StockOperate/PickingBoxing', { | 
|---|
|  |  |  | MainData: { | 
|---|
|  |  |  | "barcode": this.barcode2, | 
|---|
|  |  |  | "innerboxcode": this.innerboxcode | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | DelKeys: this.sns2 | 
|---|
|  |  |  | }).then(res => { | 
|---|
|  |  |  | if (res.status) { | 
|---|
|  |  |  | uni.$showMsg('ç»çæå!') | 
|---|
|  |  |  | this.barcode2 = ""; | 
|---|
|  |  |  | this.innerboxcode = ""; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: res.message, | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }).catch(err => { | 
|---|
|  |  |  | this.$refs.uToast.show({ | 
|---|
|  |  |  | title: err.message, | 
|---|
|  |  |  | type: "error" | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | inputChange2(e) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | inputChangebarcode2() { | 
|---|
|  |  |  | this.istrue2 = false; | 
|---|
|  |  |  | this.$nextTick(function(x) { | 
|---|
|  |  |  | if (this.barcode2 != '') { | 
|---|
|  |  |  | this.istrue2 = true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | <style lang="scss"> | 
|---|
|  |  |  | @import '@/common/uni-ui.scss'; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | page { | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | flex-direction: column; | 
|---|
|  |  |  | box-sizing: border-box; | 
|---|
|  |  |  | background-color: #efeff4; | 
|---|
|  |  |  | min-height: 100%; | 
|---|
|  |  |  | height: auto; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .tips { | 
|---|
|  |  |  | color: #67c23a; | 
|---|
|  |  |  | font-size: 14px; | 
|---|
|  |  |  | line-height: 40px; | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | background-color: #f0f9eb; | 
|---|
|  |  |  | height: 0; | 
|---|
|  |  |  | opacity: 0; | 
|---|
|  |  |  | transform: translateY(-100%); | 
|---|
|  |  |  | transition: all 0.3s; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .tips-ani { | 
|---|
|  |  |  | transform: translateY(0); | 
|---|
|  |  |  | height: 40px; | 
|---|
|  |  |  | opacity: 1; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .content { | 
|---|
|  |  |  | width: 100%; | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .list-picture { | 
|---|
|  |  |  | width: 100%; | 
|---|
|  |  |  | height: 145px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .thumb-image { | 
|---|
|  |  |  | width: 100%; | 
|---|
|  |  |  | height: 100%; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .ellipsis { | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | overflow: hidden; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .uni-ellipsis-1 { | 
|---|
|  |  |  | overflow: hidden; | 
|---|
|  |  |  | white-space: nowrap; | 
|---|
|  |  |  | text-overflow: ellipsis; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .uni-ellipsis-2 { | 
|---|
|  |  |  | overflow: hidden; | 
|---|
|  |  |  | text-overflow: ellipsis; | 
|---|
|  |  |  | display: -webkit-box; | 
|---|
|  |  |  | -webkit-line-clamp: 2; | 
|---|
|  |  |  | -webkit-box-orient: vertical; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .customcss { | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | position: fixed; | 
|---|
|  |  |  | width: 100%; | 
|---|
|  |  |  | top: 10px; | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | z-index: 999; | 
|---|
|  |  |  | left: 30px; | 
|---|
|  |  |  | height: 20%; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .footer { | 
|---|
|  |  |  | // padding-top: 30%; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .header { | 
|---|
|  |  |  | width: 100%; | 
|---|
|  |  |  | height: 150px; | 
|---|
|  |  |  | background-color: #ffffff; | 
|---|
|  |  |  | padding: 20rpx 40rpx; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .content-text { | 
|---|
|  |  |  | font-size: 14px; | 
|---|
|  |  |  | color: #666; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .itemstyle { | 
|---|
|  |  |  | margin-top: 20px; | 
|---|
|  |  |  | margin-left: 5%; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .headerstyle { | 
|---|
|  |  |  | width: 90%; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|