Merge branch 'master' of http://114.132.189.42:9002/r/mes-ocea-before
| | |
| | | @click="labelPrint" |
| | | type="primary" |
| | | style="margin-left:10px;" |
| | | >打印标签 |
| | | >标签打印 |
| | | </el-button> |
| | | <!-- <el-button |
| | | v-if="permissions.manufacturingorder_update_orderno" |
| | |
| | | </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> |
| | | |
| | |
| | | export default { |
| | | data() { |
| | | return { |
| | | checkList: [], |
| | | qrData: [], |
| | | orderDatalist:[], |
| | | diaPrintTab:false, |
| | | showCustomerorder: false, |
| | |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | computed: { |
| | | ...mapGetters(['permissions']) |
| | | }, |
| | |
| | | } |
| | | } |
| | | }, |
| | | //初始化二维码标签数据 |
| | | 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) { |
| | |
| | | ><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 |
| | | > |
| | |
| | | <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 |
| | | > --> |
| | |
| | | <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> |
| | |
| | | <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> |
| | |
| | | this.products = this.productList |
| | | this.products.forEach(item=>{ |
| | | item.staffName = staffName |
| | | item.outNum=1 |
| | | }) |
| | | }else{ |
| | | this.products = [] |
| | |
| | | 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 |
| | |
| | | <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" |
| | |
| | | <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> |
| | |
| | | <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> |
| | |
| | | <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" |
| | |
| | | <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> |
| | |
| | | <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> |
| | |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="IFS批次号" |
| | | label="批次号" |
| | | prop="ifsBatchNo" |
| | | align="center" |
| | | :show-overflow-tooltip="true" |
| | |
| | | <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> |
| | |
| | | }}</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> |
| | |
| | | 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 |
| | |
| | | }}</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> |
| | |
| | | <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" |
| | |
| | | :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"> |
| | |
| | | <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="操作" |
| | |
| | | @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> |
| | | |
| | |
| | | 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:'', |
| | |
| | | border: true, // 是否有纵向边框 |
| | | lazy: false, // 是否需要懒加载 |
| | | fit: true, // 列的宽度是否自撑开 |
| | | multiSelect: false, // |
| | | multiSelect: true, // |
| | | isEdit:false, |
| | | seqNo: true, |
| | | isShowHide: true, // 是否显示显影按钮 |
| | |
| | | type: 'primary', |
| | | fun: this.addOrUpdateHandle |
| | | }, |
| | | { |
| | | text: '标签打印', |
| | | type: 'primary', |
| | | fun: this.printLabel |
| | | }, |
| | | ], |
| | | operator: [ |
| | | { |
| | |
| | | } |
| | | }, |
| | | 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() |
| | |
| | | }, |
| | | preserve(datalist){ |
| | | this.testStandardParams = datalist |
| | | |
| | | }, |
| | | //右边保存 |
| | | addpreserve(){ |
| | |
| | | }) |
| | | }, |
| | | }, |
| | | computed: { |
| | | }, |
| | | } |
| | | </script> |