| | |
| | | :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-col> |
| | | <el-col :span="2"> |
| | | <el-button |
| | | v-if="!isCheck" |
| | | style="float: right; padding: 3px 0" |
| | | type="text" |
| | | @click="relateOperationParam()" |
| | |
| | | <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="操作" |
| | |
| | | <!-- 新增 --> |
| | | <packfrom |
| | | :currshowlist.sync="addOrUpdateVisible" |
| | | @way = "wayRenovate" |
| | | > |
| | | @refreshDataList="getData"> |
| | | </packfrom> |
| | | <packfromadd |
| | | :currshowlist.sync="increase" |
| | |
| | | @handleSelectionChange = "preserve" |
| | | > |
| | | </packfromadd> |
| | | </basic-container> |
| | | </basic-container> |
| | | <el-dialog title="标签列表" top="5vh" :visible.sync="diaPrintTab" width="500px"> |
| | | <div style="width:100%;height: 400px;overflow-y: auto;"> |
| | | <div id="qrCard" class="dia_body"> |
| | | <el-card class="box-card" v-for="(item, i) in qrData" :key="i" style="margin-bottom: 10px;"> |
| | | <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="110" :margin="1"></vueQr> |
| | | </el-col> |
| | | </el-row> |
| | | </el-card> |
| | | </div> |
| | | </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:'', |
| | | testStandardParams: [], |
| | |
| | | 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: [ |
| | | { |
| | | text: '检验', |
| | | icon: 'el-icon-delete', |
| | | icon: 'el-icon-position', |
| | | type: 'text', |
| | | size: 'small', |
| | | fun: this.check |
| | |
| | | } |
| | | }, |
| | | 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",//文档类型 |
| | | maxWidth:450, |
| | | targetStyles:['*'], |
| | | style: `@page { |
| | | margin:0; |
| | | padding: 0; |
| | | size: 360px 170px; |
| | | } |
| | | html{ |
| | | zoom:100%; |
| | | } |
| | | @media print{ |
| | | width: 360px; |
| | | height: 170px; |
| | | margin:0; |
| | | padding: 0; |
| | | }`, |
| | | onPrintDialogClose: this.erexcel=false, |
| | | targetStyles: ["*"], // 使用dom的所有样式,很重要 |
| | | font_size: '', |
| | | }); |
| | | }, |
| | | 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 |
| | | 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() |
| | |
| | | }) |
| | | }, |
| | | handleCurrentChange(row){ |
| | | if(row.state=='已报检'){ |
| | | this.isCheck = true |
| | | } |
| | | this.dataway = row |
| | | this.packageBoxId = { |
| | | packageBoxId:row.id |
| | |
| | | }, |
| | | preserve(datalist){ |
| | | this.testStandardParams = datalist |
| | | |
| | | }, |
| | | //右边保存 |
| | | addpreserve(){ |
| | |
| | | }) |
| | | }, |
| | | }, |
| | | computed: { |
| | | }, |
| | | } |
| | | </script> |