| | |
| | | import {CircleCheck, Download, Printer} from "@element-plus/icons-vue/global"; |
| | | import TagStyleDesigner from "@/components/pp/TagStyleDesigner.vue"; |
| | | import useUserInfoStore from "@/stores/userInfo"; |
| | | import { ElCheckbox } from 'element-plus' |
| | | |
| | | |
| | | const company = companyInfo() |
| | | const userStore = useUserInfoStore() |
| | | const userId = userStore.user.userId |
| | |
| | | printMergeVal: null, |
| | | like: null, |
| | | merge: null, |
| | | printFc:null |
| | | printFc:null, |
| | | flashback:null, |
| | | landingSequence:null, |
| | | compound:null |
| | | }) |
| | | |
| | | //标签 |
| | |
| | | lableType: null//标签类型 |
| | | }) |
| | | |
| | | //倒叙 |
| | | let flashback = ref(1) |
| | | //落架顺序 |
| | | let landingSequence= ref(1) |
| | | //合架打印 |
| | | let compound = ref(null) |
| | | |
| | | const getTableRow = (row, type) => { |
| | | switch (type) { |
| | |
| | | gridOptions.loading = false |
| | | |
| | | |
| | | hideButton(); |
| | | hideHead() |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | |
| | | |
| | | |
| | | const gridOptions = reactive({ |
| | | toolbar: true, |
| | | loading: true, |
| | | border: "full",//表格加边框 |
| | | keepSource: true,//保持源数据 |
| | |
| | | field: 'technology_number', |
| | | title: t('processCard.technologyNumber'), |
| | | showOverflow: "ellipsis", |
| | | width: 110, |
| | | width: 120, |
| | | filters: [{data: ''}], |
| | | slots: {filter: 'num1_filter'}, |
| | | filterMethod: filterChanged, |
| | | sortable: true |
| | | }, |
| | | {field: 'glass_address', title: t('processCard.glassAddress'), width: 90}, |
| | | {field: 'quantity', title: t('order.quantity'), width: 90}, |
| | |
| | | ],//表头按钮 |
| | | |
| | | toolbarConfig: { |
| | | slots:{ |
| | | buttons: "toolbar_buttons" |
| | | }, |
| | | buttons: [ |
| | | {code: 'print', name: t('processCard.print'), status: 'primary'}, |
| | | {code: 'customLabel', name: t('processCard.customLabelPrinting'), status: 'primary'}, |
| | | {code: 'printLabel', name: t('processCard.labelPrinting'), status: 'primary'}, |
| | | {code: 'printLabel2', name: t('processCard.labelPrinting2'), status: 'primary'}, |
| | | {code: 'sortTable', name: t('processCard.sortSummary'), status: 'primary'}, |
| | | // {code: 'printTest', name: "测试打印", status: 'primary'}, |
| | | // {code: 'printLike', name: "同配置打印", status: 'primary'}, |
| | | // {code: 'print', name: t('processCard.print'), status: 'primary'}, |
| | | // {code: 'customLabel', name: t('processCard.customLabelPrinting'), status: 'primary'}, |
| | | // {code: 'printLabel', name: t('processCard.labelPrinting'), status: 'primary'}, |
| | | // {code: 'printLabel2', name: t('processCard.labelPrinting2'), status: 'primary'}, |
| | | // {code: 'sortTable', name: t('processCard.sortSummary'), status: 'primary'}, |
| | | ], |
| | | // import: false, |
| | | // export: true, |
| | |
| | | printRow.value.like = null |
| | | printRow.value.merge = company.flowCardMerge |
| | | printRow.value.printFc= printFc |
| | | printRow.value.flashback = flashback.value |
| | | printRow.value.landingSequence=landingSequence.value |
| | | printRow.value.compound = compound.value |
| | | // router.push({path: '/main/processCard/printProcess', query: {printList: JSON.stringify(selectRecords),printMerge:printMergeVal}}) |
| | | if(company.companyName=='常州市吉利玻璃有限公司'){ |
| | | dialogTableVisibleStraight.value = true |
| | |
| | | return |
| | | } |
| | | if (printMerge.value === null || printMerge.value === '') { |
| | | ElMessage.warning('请填入需要合并的层') |
| | | ElMessage.warning(t('rework.msg1')) |
| | | return |
| | | } |
| | | |
| | |
| | | addListener(xGridDetail.value, detailGridOptions) |
| | | } |
| | | |
| | | const hideButton = () => { |
| | | // 根据条件值 hidePrintLabels 过滤按钮数组 |
| | | gridOptions.toolbarConfig.buttons = gridOptions.toolbarConfig.buttons.filter(button => { |
| | | // 根据 hidePrintLabels 过滤 printLabel 和 printLabel2 按钮 |
| | | if (hidePrintLabels === 'true') { |
| | | if (button.code === 'printLabel' || button.code === 'printLabel2') { |
| | | return false; // 隐藏 printLabel 和 printLabel2 |
| | | } |
| | | } |
| | | // 如果 printBtn 为 '1',则隐藏 customLabel 按钮 |
| | | if (btnType == 1 && button.code === 'customLabel') { |
| | | return false; // 隐藏 customLabel 按钮 |
| | | } |
| | | |
| | | // 默认情况下返回 true,保留其他按钮 |
| | | return true; |
| | | }); |
| | | //判断某个按钮 code 是否要显示 |
| | | function isButtonVisible(code) { |
| | | // 如果要隐藏 printLabel/printLabel2 |
| | | if (hidePrintLabels && (code === 'printLabel' || code === 'printLabel2')) { |
| | | return false |
| | | } |
| | | // 如果 btnType 为 1,要隐藏 customLabel |
| | | if (btnType === 1 && code === 'customLabel') { |
| | | return false |
| | | } |
| | | return true |
| | | } |
| | | |
| | | |
| | | const hideHead = () => { |
| | | |
| | | // 判断 btnType 是否等于 '1' (可以根据需要调整为数字 1) |
| | | if (btnType == 1) { |
| | | const headDiv = document.querySelector('.head'); |
| | |
| | | }) |
| | | } |
| | | |
| | | function onFlashbackChange(checked) { |
| | | flashback.value = checked ? 0 : 1 |
| | | } |
| | | |
| | | function onlandingSequenceChange(checked) { |
| | | landingSequence.value = checked ? 0 : 1 |
| | | } |
| | | </script> |
| | | |
| | | <template> |
| | |
| | | v-bind="gridOptions" |
| | | v-on="gridEvents" |
| | | |
| | | |
| | | > |
| | | <!-- 自定义 toolbar_buttons 插槽 --> |
| | | <template #toolbar_buttons="{ $grid }"> |
| | | |
| | | |
| | | <!-- 手动写出所有按钮 --> |
| | | <el-button |
| | | v-if="isButtonVisible('print')" |
| | | type="primary" |
| | | style="margin-right:8px;" |
| | | @click="$grid.dispatchEvent('toolbar-button-click', { code: 'print' })" |
| | | > |
| | | {{ t('processCard.print') }} |
| | | </el-button> |
| | | |
| | | <el-button |
| | | v-if="isButtonVisible('customLabel')" |
| | | type="primary" |
| | | style="margin-right:8px;" |
| | | @click="$grid.dispatchEvent('toolbar-button-click', { code: 'customLabel' })" |
| | | > |
| | | {{ t('processCard.customLabelPrinting') }} |
| | | </el-button> |
| | | |
| | | <el-button |
| | | v-if="isButtonVisible('printLabel')" |
| | | type="primary" |
| | | style="margin-right:8px;" |
| | | @click="$grid.dispatchEvent('toolbar-button-click', { code: 'printLabel' })" |
| | | > |
| | | {{ t('processCard.labelPrinting') }} |
| | | </el-button> |
| | | |
| | | <el-button |
| | | v-if="isButtonVisible('printLabel2')" |
| | | type="primary" |
| | | style="margin-right:8px;" |
| | | @click="$grid.dispatchEvent('toolbar-button-click', { code: 'printLabel2' })" |
| | | > |
| | | {{ t('processCard.labelPrinting2') }} |
| | | </el-button> |
| | | |
| | | <el-button |
| | | v-if="isButtonVisible('sortTable')" |
| | | type="primary" |
| | | style="margin-right:8px;" |
| | | @click="$grid.dispatchEvent('toolbar-button-click', { code: 'sortTable' })" |
| | | > |
| | | {{ t('processCard.sortSummary') }} |
| | | </el-button> |
| | | |
| | | <el-checkbox |
| | | :model-value="flashback === 0" |
| | | @change="onFlashbackChange" |
| | | > |
| | | {{ t('processCard.flashback') }} |
| | | </el-checkbox> |
| | | <el-checkbox |
| | | :model-value="landingSequence === 0" |
| | | @change="onlandingSequenceChange" |
| | | > |
| | | {{ t('processCard.landingSequence') }} |
| | | </el-checkbox> |
| | | <el-input |
| | | v-model="compound" |
| | | :placeholder="$t('processCard.printCompound')" |
| | | clearable |
| | | style="margin-left:20px; width: 110px;" |
| | | /> |
| | | |
| | | </template> |
| | | <!-- @toolbar-button-click="toolbarButtonClickEvent"--> |
| | | <!-- 下拉显示所有信息插槽--> |
| | | <template #content="{ row }"> |
| | |
| | | :printMerge="printRow.printMergeVal" |
| | | :printFc="printRow.printFc" |
| | | :merges="printRow.merge" |
| | | :flashback = "printRow.flashback" |
| | | :landingSequence = "printRow.landingSequence" |
| | | :compound = "printRow.compound" |
| | | style="width: 100%;height: 100%"/> |
| | | </el-dialog> |
| | | |