| | |
| | | import {addListener, toolbarButtonClickEvent} from "@/hook/mouseMove"; |
| | | import PrintProcess from '@/views/pp/processCard/PrintProcess.vue' |
| | | import PrintLabel from '@/views/pp/processCard/PrintLabel.vue' |
| | | import PrintCustomLabel from '@/views/pp/processCard/PrintCustomLabel.vue' |
| | | import footSum from "@/hook/footSum" |
| | | //语言获取 |
| | | const {t} = useI18n() |
| | | let router = useRouter() |
| | | const dialogTableVisible = ref(false) |
| | | const dialogTableVisibleLabel = ref(false) |
| | | const dialogTableVisibleCustomLabel = ref(false) |
| | | const printVisible= ref(false) |
| | | let selectRecords = ref(null) |
| | | |
| | |
| | | |
| | | |
| | | }) |
| | | |
| | | //定义页面总页数 |
| | | let pageTotal = ref('') |
| | | //定义数据返回结果 |
| | |
| | | //定义当前页数 |
| | | let pageNum = $ref(1) |
| | | let pageState = null |
| | | |
| | | //室内室外面 |
| | | const stateValue = ref('此面为室内面') |
| | | const stateOptions = [ |
| | | { |
| | | value: '此面为室内面', |
| | | label: '此面为室内面', |
| | | }, |
| | | { |
| | | value: '此面为室外面', |
| | | label: '此面为室外面', |
| | | }, |
| | | ] |
| | | |
| | | //室内室外面 |
| | | const lableType = ref('1') |
| | | const lableTypeOptions = [ |
| | | { |
| | | value: '1', |
| | | label: '成品标签', |
| | | }, |
| | | { |
| | | value: '2', |
| | | label: '半品标签', |
| | | }, |
| | | ] |
| | | |
| | | |
| | | //打印类型 |
| | | const printType = ref() |
| | | |
| | | //定义接收加载表头下拉数据 |
| | | const titleSelectJson = ref({ |
| | | dataType: [], |
| | | }) |
| | | |
| | | const {currentRoute} = useRouter() |
| | | const route = currentRoute.value |
| | |
| | | |
| | | if (res.code == 200) { |
| | | produceList = produceList.value.concat(deepClone(res.data.data)) |
| | | titleSelectJson.value.dataType = res.data.type |
| | | xGrid.value.reloadData(produceList) |
| | | gridOptions.loading = false |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | | } |
| | | }) |
| | | |
| | | |
| | | //表尾求和 |
| | | const sumNum = (list, field) => { |
| | |
| | | }, |
| | | { |
| | | field: 'process_id', |
| | | title: '流程卡号', |
| | | title: t('processCard.processId'), |
| | | showOverflow: "ellipsis", |
| | | filters: [{data: ''}], |
| | | slots: {filter: 'num1_filter'}, |
| | |
| | | }, |
| | | { |
| | | field: 'customer_name', |
| | | title: '客户名称', |
| | | title: t('customer.customerName'), |
| | | filters: [{data: ''}], |
| | | slots: {filter: 'num1_filter'}, |
| | | filterMethod: filterChanged |
| | | }, |
| | | { |
| | | field: 'project', |
| | | title: '项目名称', |
| | | title: t('order.project'), |
| | | filters: [{data: ''}], |
| | | slots: {filter: 'num1_filter'}, |
| | | filterMethod: filterChanged |
| | | }, |
| | | {field: 'technology_number', title: '小片顺序', showOverflow: "ellipsis"}, |
| | | {field: 'glass_address', title: '小片标记',}, |
| | | {field: 'quantity', title: '数量',}, |
| | | {field: 'total_area', title: '面积',}, |
| | | {field: 'product_name', title: '产品名称',}, |
| | | {field: 'glass_child', title: '单片名称',}, |
| | | {field: 'founder', title: '分架员',}, |
| | | {field: 'splitFrame_time', title: '分架时间',}, |
| | | {field: 'technology_number', title: t('processCard.technologyNumber'), showOverflow: "ellipsis"}, |
| | | {field: 'glass_address', title: t('processCard.glassAddress'),}, |
| | | {field: 'quantity', title: t('order.quantity'),}, |
| | | {field: 'total_area', title: t('order.area'),}, |
| | | {field: 'product_name', title: t('order.product'),}, |
| | | {field: 'glass_child', title: t('reportingWorks.glassChild'),}, |
| | | {field: 'founder', title: t('processCard.founder'),}, |
| | | {field: 'splitFrame_time', title: t('processCard.splitFrameTime'),}, |
| | | ],//表头按钮 |
| | | |
| | | toolbarConfig: { |
| | | buttons: [ |
| | | {code: 'print', name: '打印流程卡', status: 'primary'}, |
| | | {code: 'printLabel', name: '打印标签', status: 'primary'}, |
| | | {code: 'print', name: t('processCard.print'), status: 'primary'}, |
| | | {code: 'printLabel', name: t('processCard.printLabel'), status: 'primary'}, |
| | | {code: 'customLabel', name: '自定义标签打印', status: 'primary'}, |
| | | |
| | | ], |
| | | // import: false, |
| | | // export: true, |
| | |
| | | toolbarButtonClick ({ code}) { |
| | | const $grid = xGrid.value |
| | | selectRecords = $grid.getCheckboxRecords() |
| | | let type=printType.value |
| | | let faceOrientation=stateValue.value |
| | | let lableTypes=lableType.value |
| | | if ($grid) { |
| | | switch (code) { |
| | | case 'print': { |
| | |
| | | }) |
| | | break |
| | | } |
| | | case 'customLabel': { |
| | | if(selectRecords===null ||selectRecords===''||selectRecords.length===0){ |
| | | ElMessage.warning(t('searchOrder.msgList.checkOrder')) |
| | | return |
| | | } |
| | | if (type===null||type===''||type===undefined){ |
| | | ElMessage.warning('请选择自定义打印标签样式') |
| | | return |
| | | } |
| | | |
| | | let id = "" |
| | | for (let i = 0; i < selectRecords.length; i++) { |
| | | if (i + 1 === selectRecords.length) { |
| | | id += selectRecords[i].id |
| | | } else { |
| | | id += selectRecords[i].id + "|" |
| | | } |
| | | } |
| | | |
| | | if (lableTypes==1){ |
| | | router.push({path: '/main/processCard/PrintCustomLabel', query: {type:type,faceOrientation:faceOrientation,lableType:lableTypes, printList: JSON.stringify(selectRecords)}}) |
| | | |
| | | } |
| | | else { |
| | | router.push({path: '/main/processCard/PrintCustomLabelSemi', query: {type:type,faceOrientation:faceOrientation,lableType:lableTypes, printList: JSON.stringify(selectRecords)}}) |
| | | |
| | | } |
| | | |
| | | |
| | | break |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | } |
| | | |
| | | |
| | | |
| | | const detailGridOptions = reactive({ |
| | |
| | | xGridDetail.value.reloadData(detail.value) |
| | | } |
| | | |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | <div class="main-div-customer"> |
| | | <label>标签样式:</label> |
| | | <el-select v-model="printType" clearable default-value="default_city" style="width: 120px"> |
| | | <el-option |
| | | v-for="item in titleSelectJson['dataType']" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.name" |
| | | /> |
| | | </el-select> |
| | | |
| | | <el-select v-model="lableType" class="m-2" placeholder="成品标签" style="width: 140px"> |
| | | <el-option |
| | | v-for="item in lableTypeOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | |
| | | <el-select v-model="stateValue" class="m-2" placeholder="室内外面" style="width: 140px"> |
| | | <el-option |
| | | v-for="item in stateOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | <vxe-grid |
| | | ref="xGrid" |
| | | class="mytable-scrollbar" |
| | |
| | | <el-dialog |
| | | v-model="dialogTableVisible" |
| | | destroy-on-close |
| | | title="流程卡打印" |
| | | :title="$t('processCard.print')" |
| | | style="width: 80%;height:75% "> |
| | | <PrintProcess :printList="selectRecords" |
| | | style="width: 100%;height: 100%" /> |
| | |
| | | <el-dialog |
| | | v-model="dialogTableVisibleLabel" |
| | | destroy-on-close |
| | | title="标签打印" |
| | | :title="$t('processCard.printLabel')" |
| | | style="width: 80%;height:75% "> |
| | | <PrintLabel :printList="selectRecords" |
| | | style="width: 100%;height: 100%" /> |
| | | </el-dialog> |
| | | |
| | | <el-dialog |
| | | v-model="dialogTableVisibleCustomLabel" |
| | | destroy-on-close |
| | | title="自定义标签" |
| | | style="width: 80%;height:75% "> |
| | | <PrintLabel :printList="selectRecords" |
| | | style="width: 100%;height: 100%" /> |
| | |
| | | |
| | | </vxe-grid> |
| | | </el-dialog> |
| | | |
| | | |
| | | </div> |
| | | </template> |
| | | |