From c48169d93608ee7f9e7bc41f21d8d470bd5fb44d Mon Sep 17 00:00:00 2001 From: Fixiaobai <fixiaobai@163.com> Date: 星期三, 06 十二月 2023 18:04:50 +0800 Subject: [PATCH] Merge branch 'master' of http://114.132.189.42:9002/r/mes-ocea-before --- src/views/plan/manufacturingorder/index.vue | 90 +++++++++-------- src/views/product/workbench/batchproductout-form-new.vue | 31 +++-- src/views/product/workbench/feed-pane.vue | 16 +- src/views/product/workbench/workReportCard.vue | 12 +- src/views/quality/Packaging_ledger/index.vue | 117 ++++++++++++++++++++--- src/views/product/workbench/productInDialog.vue | 6 + 6 files changed, 188 insertions(+), 84 deletions(-) diff --git a/src/views/plan/manufacturingorder/index.vue b/src/views/plan/manufacturingorder/index.vue index 9d42d58..b1bc910 100644 --- a/src/views/plan/manufacturingorder/index.vue +++ b/src/views/plan/manufacturingorder/index.vue @@ -109,7 +109,7 @@ @click="labelPrint" type="primary" style="margin-left:10px;" - >鎵撳嵃鏍囩 + >鏍囩鎵撳嵃 </el-button> <!-- <el-button v-if="permissions.manufacturingorder_update_orderno" @@ -195,36 +195,32 @@ </div> </span> </el-dialog> - <!-- 鏍囩鎵撳嵃 --> - <el-dialog title="鏍囩鍒楄〃" :visible.sync="diaPrintTab" width="500px"> - <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;"> - <el-card class="box-card" v-for="(tem, i) in orderDatalist" :key="i" style="margin-bottom: 15px;"> - <el-row> - <el-col :span="10" :offset="3">搴忓彿锛�</el-col> - <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col> - </el-row> - <el-row> - <el-col :span="10" :offset="3">瀹㈡埛璁㈠崟鍙凤細</el-col> - <el-col :span="10" style="font-weight: bold;">{{ tem.customerOrderNo }}</el-col> - </el-row> - <el-row> - <el-col :span="10" :offset="3">闆朵欢鍚嶇О锛�</el-col> - <el-col :span="10" style="font-weight: bold;">{{ tem.partName }}</el-col> - </el-row> - <el-row> - <el-col :span="10" :offset="3">璁㈠崟浜岀淮鐮侊細</el-col> - <el-col :span="10"> - <vueQr :text="JSON.stringify(tem)" :size="200" :margin="2"></vueQr> - </el-col> - </el-row> - </el-card> - </div> - <span slot="footer" class="dialog-footer"> - <el-button @click="diaPrintTab = false">鍙� 娑�</el-button> - <el-button type="primary" @click="diaPrintTab = false">鎵� 鍗�</el-button> - </span> - </el-dialog> </basic-container> + <!-- 鏍囩鎵撳嵃 --> + <el-dialog title="鏍囩鍒楄〃" :visible.sync="diaPrintTab" width="500px"> + <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;"> + <el-card class="box-card" v-for="(item, i) in qrData" :key="i" style="margin-bottom: 15px;width:100%"> + <el-row> + <el-col :span="10" :offset="3">搴忓彿锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">杞﹂棿璁㈠崟鍙凤細</el-col> + <el-col :span="10" style="font-weight: bold;">{{ item.moNo2 }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">璁㈠崟浜岀淮鐮侊細</el-col> + <el-col :span="10"> + <vueQr :text="JSON.stringify(item)" :size="80" :margin="2"></vueQr> + </el-col> + </el-row> + </el-card> + </div> + <span slot="footer" class="dialog-footer"> + <el-button @click="diaPrintTab = false">鍙� 娑�</el-button> + <el-button type="primary" @click="diaPrintTab = false">鎵� 鍗�</el-button> + </span> + </el-dialog> </div> </template> @@ -257,6 +253,8 @@ export default { data() { return { + checkList: [], + qrData: [], orderDatalist:[], diaPrintTab:false, showCustomerorder: false, @@ -1044,7 +1042,6 @@ } }) }, - computed: { ...mapGetters(['permissions']) }, @@ -1403,26 +1400,35 @@ } } }, + //鍒濆鍖栦簩缁寸爜鏍囩鏁版嵁 + initQrData(data){ + if(data){ + let index = Number(data.qtyRequired) + Number(data.scrapQty) + if(index>0){ + for(var i=1;i<= index;i++){ + let obj = { + moNo: data.moNo, + moNo2: null, + } + let no = (i+"").padStart(3,'0') + obj.moNo2 = data.moNo + no + this.qrData.push(obj) + } + } + } + }, // table鑷甫浜嬩欢 handleSelectionChange(val) { let orderData = [] orderData =val.map( el =>{ return{ moNo:el.moNo, - workShop:el.workShop, - operationNames:el.operationNames, - customerOrderNo:el.customerOrderNo, - customerName:el.customerName, - mpsNo:el.mpsNo, - remark:el.remark, - partNo:el.partNo, - partName:el.partName, - unit:el.unit, - requiredDate:el.requiredDate, + qtyRequired: el.qtyRequired, + scrapQty: el.scrapQty } }) this.orderDatalist = orderData - console.log(orderData,"澶氳閫変腑"); + this.initQrData(orderData[0]) // 鏍规嵁鐘舵�侊紝绂佺敤琛ㄥご鎸夐挳 // 绛涢�夊嚭閫変腑璁板綍鐨勭姸鎬� var stateArr = val.map(function(value, index) { diff --git a/src/views/product/workbench/batchproductout-form-new.vue b/src/views/product/workbench/batchproductout-form-new.vue index d9868e6..11f7e1a 100644 --- a/src/views/product/workbench/batchproductout-form-new.vue +++ b/src/views/product/workbench/batchproductout-form-new.vue @@ -57,9 +57,9 @@ ><el-col :span="2" class="batch-product-out-form-header-col" ><span>闆朵欢鍚嶇О</span></el-col > - <el-col :span="4" class="batch-product-out-form-header-col" + <!-- <el-col :span="4" class="batch-product-out-form-header-col" ><span>搴忓垪鍙�</span></el-col - > + > --> <!-- <el-col :span="2" class="batch-product-out-form-header-col" ><span>杞藉叿缂栧彿</span></el-col > @@ -78,9 +78,9 @@ <el-col :span="1" class="batch-product-out-form-header-col" ><span>鍗曚綅</span></el-col > - <el-col :span="2" class="batch-product-out-form-header-col" + <!-- <el-col :span="2" class="batch-product-out-form-header-col" ><span>WDR鍙�</span></el-col - > + > --> <!-- <el-col :span="1" class="batch-product-out-form-header-col" ><span>鍒嗘鎻忚堪</span></el-col > --> @@ -133,11 +133,11 @@ <span class="inline-el-hidden">{{ item.partName }}</span> </el-tooltip> </el-col> - <el-col :span="4" class="batch-product-out-form-body-col l-mes"> + <!-- <el-col :span="4" class="batch-product-out-form-body-col l-mes"> --> <!-- <span>{{ item.outBatchNo }}</span> --> - <el-input v-model="item.outBatchNo"> + <!-- <el-input v-model="item.outBatchNo"> </el-input> - </el-col> + </el-col> --> <!-- <el-col :span="2" class="batch-product-out-form-body-col l-mes"> <el-input v-model="item.reelNumber"></el-input> </el-col> @@ -156,17 +156,22 @@ <el-col :span="1" class="batch-product-out-form-body-col"> <span>{{ item.unit }}</span> </el-col> - <el-col :span="2" class="batch-product-out-form-body-col l-mes"> + <!-- <el-col :span="2" class="batch-product-out-form-body-col l-mes"> <el-input v-model="item.wdr"></el-input> - </el-col> + </el-col> --> <!-- <el-col :span="1" class="batch-product-out-form-body-col l-mes"> <el-input v-model="item.segmentDesc"></el-input> </el-col> --> <el-col :span="2" class="batch-product-out-form-body-col l-mes"> - <el-input v-model="item.outNum"></el-input> + <span v-text="item.outNum"></span> </el-col> <el-col :span="2" class="batch-product-out-form-body-col l-mes"> - <el-input v-model="item.scrapQty"></el-input> + <el-select v-model="item.scrapQty"> + <el-option label="0" value="0"> + </el-option> + <el-option label="1" value="1"> + </el-option> + </el-select> </el-col> <!-- <el-col :span="1" class="batch-product-out-form-body-col l-mes"> <el-input v-model="item.reelWeight"></el-input> @@ -392,6 +397,7 @@ this.products = this.productList this.products.forEach(item=>{ item.staffName = staffName + item.outNum=1 }) }else{ this.products = [] @@ -478,7 +484,8 @@ newProduct.partNo = this.parentInfo.partNo newProduct.partName = this.parentInfo.partName newProduct.outBatchNo = oriOutBatchNo - newProduct.productQty = 0 + newProduct.productQty = 1 + newProduct.outNum = 1 newProduct.unit = this.parentInfo.unit newProduct.productStaffs = productStaffs newProduct.productStaffIds = productStaffIds diff --git a/src/views/product/workbench/feed-pane.vue b/src/views/product/workbench/feed-pane.vue index 0b41376..78fb19e 100644 --- a/src/views/product/workbench/feed-pane.vue +++ b/src/views/product/workbench/feed-pane.vue @@ -250,9 +250,9 @@ <span>{{ scope.row.partName }}</span> </template> </el-table-column> - <el-table-column label="IFS鎵规鍙�" prop="ifsBatchNo" align="center"> + <el-table-column label="鎵规鍙�" prop="ifsBatchNo" align="center"> <template slot="header"> - <div style="line-height: 14px;">IFS鎵规鍙�</div> + <div style="line-height: 14px;">鎵规鍙�</div> <div class="th" @click.stop> <el-input type="text" @@ -268,7 +268,7 @@ <span>{{ scope.row.ifsBatchNo }}</span> </template> </el-table-column> - <el-table-column label="WDR鍙�" prop="ifsWdr" align="center"> + <!-- <el-table-column label="WDR鍙�" prop="ifsWdr" align="center"> <template slot="header"> <div style="line-height: 14px;">WDR鍙�</div> <div class="th" @click.stop> @@ -285,7 +285,7 @@ <template slot-scope="scope"> <span>{{ scope.row.ifsWdr }}</span> </template> - </el-table-column> + </el-table-column> --> <!-- <el-table-column label="SN鍙�" prop="partBatchNo" align="center"> <template slot="header"> <div style="line-height: 14px;">SN鍙�</div> @@ -1242,9 +1242,9 @@ <span>{{ scope.row.partName }}</span> </template> </el-table-column> - <el-table-column label="IFS鎵规鍙�" prop="ifsBatchNo" align="center"> + <el-table-column label="鎵规鍙�" prop="ifsBatchNo" align="center"> <template slot="header" slot-scope="scope"> - <div style="line-height: 14px;">IFS鎵规鍙�</div> + <div style="line-height: 14px;">鎵规鍙�</div> <div class="th" @click.stop> <el-input type="text" @@ -1260,7 +1260,7 @@ <span>{{ scope.row.ifsBatchNo }}</span> </template> </el-table-column> - <el-table-column label="WDR鍙�" prop="ifsWdr" align="center"> + <!-- <el-table-column label="WDR鍙�" prop="ifsWdr" align="center"> <template slot="header" slot-scope="scope"> <div style="line-height: 14px;">WDR鍙�</div> <div class="th" @click.stop> @@ -1277,7 +1277,7 @@ <template slot-scope="scope"> <span>{{ scope.row.ifsWdr }}</span> </template> - </el-table-column> + </el-table-column> --> <!-- <el-table-column label="SN鍙�" prop="partBatchNo" align="center"> <template slot="header" slot-scope="scope"> <div style="line-height: 14px;">SN鍙�</div> diff --git a/src/views/product/workbench/productInDialog.vue b/src/views/product/workbench/productInDialog.vue index ab22650..15c4b15 100644 --- a/src/views/product/workbench/productInDialog.vue +++ b/src/views/product/workbench/productInDialog.vue @@ -25,7 +25,7 @@ > </el-table-column> <el-table-column - label="IFS鎵规鍙�" + label="鎵规鍙�" prop="ifsBatchNo" align="center" :show-overflow-tooltip="true" @@ -46,6 +46,10 @@ <el-table-column label="鍗曚綅" prop="unit" align="center"> </el-table-column> <el-table-column label="鏄惁宸ュ簭搴撳瓨" prop="operationStockStatus" align="center"> + <template slot-scope="scope"> + <span v-if="scope.row.operationStockStatus">鏄�</span> + <span v-else>鍚�</span> + </template> </el-table-column> <el-table-column label="鎵�灞炲伐搴�" prop="name" align="center"> </el-table-column> diff --git a/src/views/product/workbench/workReportCard.vue b/src/views/product/workbench/workReportCard.vue index 25a2921..d6c3704 100644 --- a/src/views/product/workbench/workReportCard.vue +++ b/src/views/product/workbench/workReportCard.vue @@ -256,7 +256,7 @@ }}</template> </template> </el-table-column> - <el-table-column label="WDR鍙�" prop="wdr" align="center" width="100"> + <!-- <el-table-column label="WDR鍙�" prop="wdr" align="center" width="100"> <template slot-scope="scope"> <el-input :id="'idReport_' + +scope.$index" :ref="'reference_' + scope.$index" v-if="scope.row.isEdit" v-model="scope.row.wdr" placeholder="WDR鍙�"></el-input> @@ -264,7 +264,7 @@ scope.row.wdr }}</template> </template> - </el-table-column> + </el-table-column> --> <!-- <el-table-column label="鍒嗘鎻忚堪" prop="segmentDesc" align="center"> <template slot-scope="scope"> <el-input @@ -288,8 +288,8 @@ }}</template> </template> </el-table-column> - <el-table-column label="IFS鎵规鍙�" prop="ifsBatchNo" align="center" width="120"> - <!-- <template slot="header" slot-scope="scope"> + <!-- <el-table-column label="IFS鎵规鍙�" prop="ifsBatchNo" align="center" width="120"> + <template slot="header" slot-scope="scope"> <div style="line-height: 14px;">IFS鎵规鍙�</div> <div class="th" @click.stop> <template> @@ -305,8 +305,8 @@ <template v-if="!scope.row.isIfsBatchNoEdit">{{ scope.row.ifsBatchNo }}</template> - </template> --> - </el-table-column> + </template> + </el-table-column> --> <el-table-column label="澶囨敞" prop="remark" align="center"> <template slot-scope="scope"> <el-input :id="'idReport_' + +scope.$index" :ref="'reference_' + scope.$index" v-if="scope.row.isEdit" diff --git a/src/views/quality/Packaging_ledger/index.vue b/src/views/quality/Packaging_ledger/index.vue index 45b5115..b4837ac 100644 --- a/src/views/quality/Packaging_ledger/index.vue +++ b/src/views/quality/Packaging_ledger/index.vue @@ -9,10 +9,10 @@ :prelang="prelang" :ajaxFun="ajaxFun" :options="options" - @currentChange="handleCurrentChange" + @handleSelectionChange="handleSelectionChange" ref="processconfiguration" > - <template #toolbar></template> + <template #toolbar></template> </ttable> </el-col> <el-col :span="13" style="padding-left: 10px"> @@ -101,7 +101,6 @@ <el-input v-model="scope.row.number"></el-input> </template> </el-table-column> - <el-table-column label="鍗曚綅" prop="unit" align="center" /> <el-table-column fixed="right" label="鎿嶄綔" @@ -127,7 +126,31 @@ @handleSelectionChange = "preserve" > </packfromadd> - </basic-container> + </basic-container> + <el-dialog title="鏍囩鍒楄〃" top="5vh" :visible.sync="diaPrintTab" width="500px"> + <div id="qrCard" class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;"> + <el-card class="box-card" v-for="(item, i) in qrData" :key="i" style="margin-bottom: 15px;"> + <el-row> + <el-col :span="10" :offset="3">搴忓彿锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">鍖呰缂栧彿锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ item.packageNo }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">浜岀淮鐮侊細</el-col> + <el-col :span="10"> + <vueQr :text="JSON.stringify(item)" :size="120" :margin="1"></vueQr> + </el-col> + </el-row> + </el-card> + </div> + <span slot="footer" class="dialog-footer"> + <el-button @click="diaPrintTab = false">鍙� 娑�</el-button> + <el-button type="primary" @click="printFun">鎵� 鍗�</el-button> + </span> + </el-dialog> </div> </template> @@ -136,9 +159,14 @@ import ttable from '@/views/common/ztt-table.vue' import packfrom from './pack-from.vue' import packfromadd from './pack-fromadd.vue' +import vueQr from 'vue-qr' +import PrintJS from 'print-js' export default { data(){ return { + qrData:[], + diaPrintTab: false, + multipleSelection: [], isCheck: false, dataway:{}, goid:'', @@ -156,7 +184,7 @@ border: true, // 鏄惁鏈夌旱鍚戣竟妗� lazy: false, // 鏄惁闇�瑕佹噿鍔犺浇 fit: true, // 鍒楃殑瀹藉害鏄惁鑷拺寮� - multiSelect: false, // + multiSelect: true, // isEdit:false, seqNo: true, isShowHide: true, // 鏄惁鏄剧ず鏄惧奖鎸夐挳 @@ -237,6 +265,11 @@ type: 'primary', fun: this.addOrUpdateHandle }, + { + text: '鏍囩鎵撳嵃', + type: 'primary', + fun: this.printLabel + }, ], operator: [ { @@ -263,14 +296,71 @@ } }, components: { - ttable, - packfrom, - packfromadd - }, - watch: { - - }, + ttable, + packfrom, + packfromadd, + vueQr + }, + watch: { + diaPrintTab(newVal){ + if(!newVal){ + this.qrData = [] + } + } + }, methods: { + //鎵撳嵃鎸夐挳 + printFun() { + this.diaPrintTab = false; + PrintJS({ + printable: "qrCard", + type: "html", + // header: "鍘熸潗鏂欐娴嬫姤鍛�", + targetStyles: ["*"], + style: `@page {margin: 0mm 5mm;} + html {zoom:100%;} + @media print { + html,body{ + width:60mm; + height:40mm; + } + }`, + ignoreElements: ["no-ignore"], + orientation: 'portrait' + }); + }, + handleSelectionChange(val){ + this.multipleSelection = val + let lastRow = val[val.length - 1] + this.handleCurrentChange(lastRow) + }, + printLabel(){ + if(this.multipleSelection.length==0){ + this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�') + return + } + this.diaPrintTab = true + console.log(this.multipleSelection); + this.multipleSelection.forEach(item=>{ + let obj = { + packageNo: item.packageNo, + contractNo: item.contractNo, + boxInfo: [] + } + list({packageBoxId:item.id}).then((res) =>{ + res.data.data.forEach(ele=>{ + obj.boxInfo.push({ + product: ele.product, + productNo: ele.productNo, + specs: ele.specs, + unit: ele.unit, + number: ele.number + }) + }) + }) + this.qrData.push(obj) + }) + }, // 鑾峰彇鏁版嵁鍒楄〃 getData() { this.$refs.processconfiguration.refreshData() @@ -315,7 +405,6 @@ }, preserve(datalist){ this.testStandardParams = datalist - }, //鍙宠竟淇濆瓨 addpreserve(){ @@ -348,7 +437,5 @@ }) }, }, - computed: { - }, } </script> \ No newline at end of file -- Gitblit v1.9.3