Merge branch 'master' of http://bore.pub:10439/r/ERP_override
| | |
| | | component: () => import('../views/pp/processCard/PrintCustomLabel.vue'), |
| | | }, |
| | | { |
| | | path: 'printCustomLabelSemi', |
| | | name: 'printCustomLabelSemi', |
| | | component: () => import('../views/pp/processCard/PrintCustomLabelSemi.vue'), |
| | | }, |
| | | { |
| | | path: 'productionScheduling', |
| | | name: 'productionScheduling', |
| | | component: () => import('../views/pp/processCard/ProductionScheduling.vue'), |
| | |
| | | data.value.printList = JSON.parse(route.query.printList) |
| | | const type = route.query.type |
| | | const faceOrientation = route.query.faceOrientation |
| | | const lableType = route.query.lableType |
| | | |
| | | onMounted(() => { |
| | | request.post(`/processCard/getSelectPrintCustomLabel/${type}`, data.value).then((res) => { |
| | | if (res.code == 200) { |
| | | |
| | | produceList.value = deepClone(res.data.title) |
| | | list.value = deepClone(res.data.data) |
| | | const quantity = res.data.quantity |
| | | console.log(quantity) |
| | | const data = produceList.value[0].value |
| | | dataList = JSON.parse(`[${data}]`); |
| | | labelList = dataList[0] |
| | | for (let i = 0; i < list.value.length; i++) { |
| | | let count= list.value[i].quantity |
| | | for (let j = 0; j < quantity; j++) { |
| | | lastList.value.push(list.value[i]) |
| | | |
| | | let count= list.value[i].data.length |
| | | for (let j = 0; j < count; j++) { |
| | | for (let k = 0; k < list.value[i].data[j].quantity; k++){ |
| | | lastList.value.push(list.value[i].data[j]) |
| | | } |
| | | } |
| | | } |
| | | console.log(lastList.value) |
| | | console.log(labelList) |
| | | |
| | | |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | | router.push("/login") |
| | |
| | | }) |
| | | |
| | | } |
| | | |
| | | ) |
| | | |
| | | |
| | | // 打印方法 |
| | | const printFlowCard = () => { |
| | | // 需要打印的局部区域赋予"print-wrap"的id |
| | | let el = document.getElementById("printFlowCard"); |
| | | let el = document.getElementById("print"); |
| | | let doc = document; |
| | | let body = doc.body || doc.getElementsByTagName("body")[0]; |
| | | let printId = "print-" + Date.now(); |
| | |
| | | |
| | | <template> |
| | | <el-button id="printButton" @click="printFlowCard();">{{ $t('basicData.print') }}</el-button> |
| | | <div id="printFlowCard"> |
| | | <div v-for="(item1,id) in lastList" id="entirety"> |
| | | <div class="row4">{{faceOrientation}}</div> |
| | | <div v-for="(item,id) in labelList" class="contentRow"> |
| | | <div class="row1">{{ item.title }}:</div> |
| | | <div class="row2">{{ item1.order[item.name] }}</div> |
| | | <div class="printFlowCard_finished" id="print"> |
| | | <div v-for="(item1,id) in lastList" class="entirety_finished"> |
| | | <div class="row4">{{faceOrientation}}</div> |
| | | <div v-for="(item,id) in labelList" class="contentRow"> |
| | | <div class="row1">{{ item.title }}:</div> |
| | | <div class="row2">{{ item1.order[item.name] }}</div> |
| | | |
| | | </div> |
| | | <div class="row3"><label>W:</label>{{ item1.width }} <label>H:</label>{{ item1.height }}</div> |
| | | </div> |
| | | <div class="row3"><label>W:</label>{{ item1.width }} <label>H:</label>{{ item1.height }}</div> |
| | | |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | padding: 0; |
| | | } |
| | | |
| | | body{ |
| | | overflow: hidden; |
| | | } |
| | | |
| | | #printButton { |
| | | margin-top: -20px; |
| | | width: 100px; |
| | | } |
| | | |
| | | #printFlowCard { |
| | | /*成*/ |
| | | .printFlowCard_finished { |
| | | flex-wrap: wrap; |
| | | font-size: 20px; |
| | | margin-left: 5px; |
| | | margin-top: 15px; |
| | | font-size: 16px; |
| | | margin-left: 6px; |
| | | display: flex; |
| | | flex-direction:column; |
| | | } |
| | | |
| | | #entirety { |
| | | |
| | | /*成*/ |
| | | .entirety_finished { |
| | | display: flex; |
| | | text-align: center; |
| | | width: 250px; |
| | | margin-bottom: 10px; |
| | | flex-direction:column; |
| | | |
| | | } |
| | | |
| | | |
| | | .row3{ |
| | | text-align: center; |
| | | } |
| | | |
| | | .contentRow{ |
| | | display: flex; |
| | | text-align: center; |
| | | border: red solid 1px; |
| | | } |
| | | |
| | | label{ |
| | |
| | | } |
| | | |
| | | .row1{ |
| | | width: 20%; |
| | | font-weight: bolder; |
| | | } |
| | | |
| | |
| | | |
| | | @page { |
| | | size: auto; /* auto is the initial value */ |
| | | margin: 7mm 2mm 2mm 0mm /* this affects the margin in the printer settings */ |
| | | |
| | | margin: 12mm 4mm 0mm 2mm; /* this affects the margin in the printer settings */ |
| | | } |
| | | |
| | | @media print { |
| | | div { |
| | | page-break-inside: avoid; |
| | | } |
| | | |
| | | .entirety_finished { |
| | | page-break-before: always; |
| | | page-break-after: always; |
| | | } |
| | | |
| | | } |
| | | |
| | | </style> |
| New file |
| | |
| | | <script setup> |
| | | import request from "@/utils/request" |
| | | import {ElDatePicker, ElMessage} from "element-plus" |
| | | import {nextTick, onMounted, onUnmounted, reactive, ref, watch} from "vue" |
| | | import {Search} from "@element-plus/icons-vue" |
| | | import {useRouter} from 'vue-router' |
| | | import {changeFilterEvent, filterChanged} from "@/hook" |
| | | import {useI18n} from 'vue-i18n' |
| | | import deepClone from "@/utils/deepClone"; |
| | | //语言获取 |
| | | const {t} = useI18n() |
| | | let router = useRouter() |
| | | let produceList = ref([]) |
| | | let labelList = ref([]) |
| | | let titleList = ref([]) |
| | | let dataList = ref([]) |
| | | let list = ref([]) |
| | | let lastList=ref([]) |
| | | |
| | | let filterData = ref({}) |
| | | |
| | | const data = ref({ |
| | | printList: [] |
| | | }) |
| | | |
| | | |
| | | const {currentRoute} = useRouter() |
| | | const route = currentRoute.value |
| | | data.value.printList = JSON.parse(route.query.printList) |
| | | const type = route.query.type |
| | | const faceOrientation = route.query.faceOrientation |
| | | const lableType = route.query.lableType |
| | | |
| | | onMounted(() => { |
| | | request.post(`/processCard/getSelectPrintCustomLabel/${type}`, data.value).then((res) => { |
| | | if (res.code == 200) { |
| | | |
| | | produceList.value = deepClone(res.data.title) |
| | | list.value = deepClone(res.data.data) |
| | | const data = produceList.value[0].value |
| | | dataList = JSON.parse(`[${data}]`); |
| | | labelList = dataList[0] |
| | | for (let i = 0; i < list.value.length; i++) { |
| | | let count= list.value[i].data.length |
| | | for (let j = 0; j < count; j++) { |
| | | for (let k = 0; k < list.value[i].data[j].quantity; k++){ |
| | | lastList.value.push(list.value[i].data[j]) |
| | | } |
| | | } |
| | | } |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | | router.push("/login") |
| | | } |
| | | }) |
| | | |
| | | } |
| | | |
| | | ) |
| | | |
| | | |
| | | // 打印方法 |
| | | const printFlowCard = () => { |
| | | // 需要打印的局部区域赋予"print-wrap"的id |
| | | let el = document.getElementById("print"); |
| | | let doc = document; |
| | | let body = doc.body || doc.getElementsByTagName("body")[0]; |
| | | let printId = "print-" + Date.now(); |
| | | |
| | | // 创建无副作用的打印容器(因不确定页面的打印元素有无其它样式) |
| | | let content = doc.createElement("div"); |
| | | content.id = printId; |
| | | |
| | | // 样式控制与打印无关的元素隐藏 |
| | | let style = doc.createElement("style"); |
| | | style.innerHTML = |
| | | "body>#" + |
| | | printId + |
| | | "{display:none}@media print{body>:not(#" + |
| | | printId + |
| | | "){display:none !important}body>#" + |
| | | printId + |
| | | "{display:block;padding-top:1px}}"; |
| | | // |
| | | content.innerHTML = el.outerHTML; |
| | | // // console.log("el.outerHTML", el.outerHTML); |
| | | body.appendChild(style); |
| | | |
| | | // 与style元素设置的样式相配合 |
| | | // 把打印内容的元素添加到body(作为body的子元素,可用body的子选择器 '>' 控制打印样式) |
| | | body.appendChild(content); |
| | | setTimeout(() => { |
| | | window.print(); |
| | | body.removeChild(content); |
| | | body.removeChild(style); |
| | | }, 20); |
| | | } |
| | | </script> |
| | | |
| | | <template> |
| | | <el-button id="printButton" @click="printFlowCard();">{{ $t('basicData.print') }}</el-button> |
| | | <div class="printFlowCard_semi" id="print"> |
| | | <div v-for="(item1,id) in lastList" class="entirety_semi"> |
| | | <div class="row4">{{faceOrientation}}</div> |
| | | <div v-for="(item,id) in labelList" class="contentRow"> |
| | | <div class="row1">{{ item.title }}:</div> |
| | | <div class="row2">{{ item1.order[item.name] }}</div> |
| | | |
| | | </div> |
| | | <div class="row3"><label>W:</label>{{ item1.width }} <label>H:</label>{{ item1.height }}</div> |
| | | |
| | | </div> |
| | | </div> |
| | | |
| | | </template> |
| | | |
| | | <style scoped> |
| | | * { |
| | | margin: 0; |
| | | padding: 0; |
| | | } |
| | | |
| | | body{ |
| | | overflow: hidden; |
| | | } |
| | | |
| | | #printButton { |
| | | margin-top: -20px; |
| | | width: 100px; |
| | | } |
| | | |
| | | |
| | | |
| | | /*半*/ |
| | | .printFlowCard_semi { |
| | | flex-wrap: wrap; |
| | | font-size: 10px; |
| | | display: flex; |
| | | } |
| | | |
| | | |
| | | |
| | | /*半*/ |
| | | .entirety_semi { |
| | | width: 45%; |
| | | display: flex; |
| | | text-align: center; |
| | | flex-direction:column; |
| | | margin: 8px; |
| | | |
| | | } |
| | | |
| | | .row3{ |
| | | text-align: center; |
| | | } |
| | | |
| | | .contentRow{ |
| | | display: flex; |
| | | text-align: center; |
| | | } |
| | | |
| | | label{ |
| | | font-weight: bolder; |
| | | } |
| | | |
| | | .row1{ |
| | | width: 30%; |
| | | font-weight: bolder; |
| | | } |
| | | |
| | | .row4{ |
| | | font-weight: bolder; |
| | | text-align: right; |
| | | } |
| | | |
| | | .row1,.row2{ |
| | | text-align: left; |
| | | } |
| | | |
| | | @page { |
| | | size: auto; /* auto is the initial value */ |
| | | margin: 0mm 2mm 2mm 2mm; /* this affects the margin in the printer settings */ |
| | | |
| | | } |
| | | |
| | | @media print { |
| | | div { |
| | | page-break-inside: avoid; |
| | | } |
| | | } |
| | | |
| | | </style> |
| | |
| | | }, |
| | | ] |
| | | |
| | | //室内室外面 |
| | | const lableType = ref('1') |
| | | const lableTypeOptions = [ |
| | | { |
| | | value: '1', |
| | | label: '成品标签', |
| | | }, |
| | | { |
| | | value: '2', |
| | | label: '半品标签', |
| | | }, |
| | | ] |
| | | |
| | | |
| | | //打印类型 |
| | | const printType = ref() |
| | |
| | | filterMethod: filterChanged |
| | | }, |
| | | { |
| | | field: 'order_number', |
| | | title: '序号', |
| | | showOverflow: "ellipsis", |
| | | filters: [{data: ''}], |
| | | slots: {filter: 'num1_filter'}, |
| | | filterMethod: filterChanged |
| | | }, |
| | | { |
| | | field: 'customer_name', |
| | | title: t('customer.customerName'), |
| | | filters: [{data: ''}], |
| | |
| | | buttons: [ |
| | | {code: 'print', name: t('processCard.print'), status: 'primary'}, |
| | | {code: 'printLabel', name: t('processCard.printLabel'), status: 'primary'}, |
| | | // {code: 'customLabel', name: '自定义标签打印', status: 'primary'}, |
| | | {code: 'customLabel', name: '自定义标签打印', status: 'primary'}, |
| | | |
| | | ], |
| | | // import: false, |
| | |
| | | selectRecords = $grid.getCheckboxRecords() |
| | | let type=printType.value |
| | | let faceOrientation=stateValue.value |
| | | let lableTypes=lableType.value |
| | | if ($grid) { |
| | | switch (code) { |
| | | case 'print': { |
| | |
| | | } |
| | | } |
| | | |
| | | router.push({path: '/main/processCard/PrintCustomLabel', query: {type:type,faceOrientation:faceOrientation, printList: JSON.stringify(selectRecords)}}) |
| | | 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 |
| | | } |
| | |
| | | |
| | | <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="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>--> |
| | | <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" |
| | |
| | | let router = useRouter() |
| | | let produceList = ref([]) |
| | | let labelList = ref([]) |
| | | let list = ref() |
| | | let list = ref([]) |
| | | |
| | | |
| | | const data = ref({ |
| | |
| | | if (res.code == 200) { |
| | | |
| | | produceList.value = deepClone(res.data.data) |
| | | |
| | | console.log(produceList.value) |
| | | for (let i = 0; i < produceList.value.length; i++) { |
| | | let count= produceList.value[i].quantity |
| | | let count= produceList.value[i].data.length |
| | | for (let j = 0; j < count; j++) { |
| | | labelList.value.push(produceList.value[i]) |
| | | for (let k = 0; k < produceList.value[i].data[j].quantity; k++){ |
| | | labelList.value.push(produceList.value[i].data[j]) |
| | | } |
| | | |
| | | |
| | | } |
| | | } |
| | | console.log(labelList.value) |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | | router.push("/login") |
| | |
| | | <template> |
| | | <el-button id="printButton" @click="printFlowCard();">{{ $t('basicData.print') }}</el-button> |
| | | <div id="printFlowCard" > |
| | | <!-- <div id="entirety" v-for="(items,id) in produceList" > |
| | | <div v-for="(item,index) in items.data" :key="index"> |
| | | <div class="row1">{{ item.customer_name }}</div> |
| | | <div class="row2"> |
| | | <span>{{ item.order_id }}</span> |
| | | <span>{{ item.type_name }}</span> |
| | | </div> |
| | | <div class="row3">{{item.child_width}}*{{item.child_height}}={{item.quantity}}</div> |
| | | <div class="row5"> |
| | | <span>{{item.project}}</span> |
| | | <span>{{ item.remarks }}</span> |
| | | </div> |
| | | <div class="row6"> |
| | | <span>{{item.glass_child}}</span> |
| | | <span>{{item.processing_note}}</span> |
| | | </div> |
| | | </div> |
| | | </div>--> |
| | | <div id="entirety" v-for="(item,id) in labelList" > |
| | | <div class="row1">{{ item.customer_name }}</div> |
| | | <div class="row2"> |
| | | <span>{{ item.order_id }}</span> |
| | | <span>{{ item.type_name }}</span> |
| | | </div> |
| | | <div class="row3">{{item.child_width}}*{{item.child_height}}={{item.quantity}}</div> |
| | | <div class="row5"> |
| | | <span>{{item.project}}</span> |
| | | <span>{{ item.remarks }}</span> |
| | | </div> |
| | | <div class="row6"> |
| | | <span>{{item.glass_child}}</span> |
| | | <span>{{item.processing_note}}</span></div> |
| | | <div class="row1">{{ item.customer_name }}</div> |
| | | <div class="row2"> |
| | | <span>{{ item.order_id }}</span> |
| | | <span>{{ item.type_name }}</span> |
| | | </div> |
| | | <div class="row3">{{item.child_width}}*{{item.child_height}}={{item.quantity}}</div> |
| | | <div class="row5"> |
| | | <span>{{item.project}}</span> |
| | | <span>{{ item.remarks }}</span> |
| | | </div> |
| | | <div class="row6"> |
| | | <span>{{item.glass_child}}</span> |
| | | <span>{{item.processing_note}}</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | {field: 'process_id', width: 140, title: t('processCard.processId') ,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'order_number', title: t('order.OrderNum') ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },}, |
| | | {field: 'technology_number', title: t('processCard.technologyNumber') ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },}, |
| | | {field: 'quantity', title: t('order.OrderNum'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, width: 80}, |
| | | {field: 'quantity', title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, width: 80}, |
| | | {field: 'child_width', title: t('order.width'), }, |
| | | {field: 'child_height', title: t('order.height'), }, |
| | | {field: 'area', title: t('order.area') ,showOverflow:"ellipsis"}, |
| | |
| | | total.dataTotal = res.data.total.total*1 |
| | | total.pageTotal= res.data.total.pageTotal |
| | | pageTotal.value = res.data.total |
| | | xGrid.value.loadData(res.data.data) |
| | | produceList = deepClone(res.data.data) |
| | | produceList.forEach(item => { |
| | | if (item.damageDetails.qualityInsStatus === 2) { |
| | | item.damageDetails.qualityInsStatus = '已质检'; |
| | | } |
| | | else if (item.damageDetails.qualityInsStatus === 1){ |
| | | item.damageDetails.qualityInsStatus = '待质检'; |
| | | } |
| | | else if (item.damageDetails.qualityInsStatus === 0){ |
| | | item.damageDetails.qualityInsStatus = '无需质检'; |
| | | } |
| | | }); |
| | | xGrid.value.reloadData(produceList) |
| | | gridOptions.loading = false |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | |
| | | size="small"> |
| | | {{ $t('basicData.edit') }} |
| | | </el-button> |
| | | <el-button v-if="row.damageDetails.qualityInsStatus===1" @click="getTableRow(row,'setType')" link type="primary" size="small">{{ $t('basicData.review') }}</el-button> |
| | | <el-button v-else disabled @click="getTableRow(row,'setType')" link type="primary" size="small">{{ $t('basicData.review') }}</el-button> |
| | | <el-button v-if="row.damageDetails.qualityInsStatus==='已质检'||row.damageDetails.qualityInsStatus==='无需质检'" disabled @click="getTableRow(row,'setType')" link type="primary" size="small">{{ $t('basicData.review') }}</el-button> |
| | | <el-button v-else @click="getTableRow(row,'setType')" link type="primary" size="small">{{ $t('basicData.review') }}</el-button> |
| | | </template> |
| | | |
| | | <template #num1_filter="{ column, $panel }"> |
| | |
| | | total.pageTotal= res.data.total.pageTotal |
| | | pageTotal.value = res.data.total |
| | | produceList = produceList.value.concat(deepClone(res.data.data)) |
| | | xGrid.value.reloadData(produceList) |
| | | // 使用map方法来处理每个对象 |
| | | let modifiedCollection = produceList.map(item => { |
| | | if (item.reviewedState === 1) { |
| | | return { ...item, reviewedState: "已审核" }; |
| | | } |
| | | else if (item.reviewedState === 0) { |
| | | return { ...item, reviewedState: "未审核" }; |
| | | } |
| | | else if (item.reviewedState === 2){ |
| | | return { ...item, reviewedState: "审核不通过" }; |
| | | } |
| | | else { |
| | | // 其他情况保持不变 |
| | | return item; |
| | | } |
| | | }); |
| | | xGrid.value.reloadData(modifiedCollection) |
| | | gridOptions.loading = false |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | |
| | | |
| | | |
| | | produceList = deepClone(res.data.data) |
| | | xGrid.value.reloadData(produceList) |
| | | // 使用map方法来处理每个对象 |
| | | let modifiedCollection = produceList.map(item => { |
| | | if (item.reviewedState === 1) { |
| | | return { ...item, reviewedState: "已审核" }; |
| | | } |
| | | else if (item.reviewedState === 0) { |
| | | return { ...item, reviewedState: "未审核" }; |
| | | } |
| | | else if (item.reviewedState === 2){ |
| | | return { ...item, reviewedState: "审核不通过" }; |
| | | } |
| | | else { |
| | | // 其他情况保持不变 |
| | | return item; |
| | | } |
| | | }); |
| | | xGrid.value.reloadData(modifiedCollection) |
| | | }else{ |
| | | ElMessage.warning(res.msg) |
| | | } |
| | |
| | | total.dataTotal = res.data.total.total*1 |
| | | total.pageTotal= res.data.total.pageTotal |
| | | pageTotal.value = res.data.total |
| | | xGrid.value.loadData(res.data.data) |
| | | produceList=res.data.data |
| | | // 使用map方法来处理每个对象 |
| | | let modifiedCollection = produceList.map(item => { |
| | | if (item.reviewedState === 1) { |
| | | return { ...item, reviewedState: "已审核" }; |
| | | } |
| | | else if (item.reviewedState === 0) { |
| | | return { ...item, reviewedState: "未审核" }; |
| | | } |
| | | else if (item.reviewedState === 2){ |
| | | return { ...item, reviewedState: "审核不通过" }; |
| | | } |
| | | else { |
| | | // 其他情况保持不变 |
| | | return item; |
| | | } |
| | | }); |
| | | xGrid.value.reloadData(modifiedCollection) |
| | | gridOptions.loading = false |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | |
| | | total.pageTotal=parseInt(res.data.total) |
| | | pageNum.value=1 |
| | | produceList = deepClone(res.data.data) |
| | | xGrid.value.reloadData(produceList) |
| | | // 使用map方法来处理每个对象 |
| | | let modifiedCollection = produceList.map(item => { |
| | | if (item.reviewedState === 1) { |
| | | return { ...item, reviewedState: "已审核" }; |
| | | } |
| | | else if (item.reviewedState === 0) { |
| | | return { ...item, reviewedState: "未审核" }; |
| | | } |
| | | else if (item.reviewedState === 2){ |
| | | return { ...item, reviewedState: "审核不通过" }; |
| | | } |
| | | else { |
| | | // 其他情况保持不变 |
| | | return item; |
| | | } |
| | | }); |
| | | xGrid.value.reloadData(modifiedCollection) |
| | | gridOptions.loading=false |
| | | }else{ |
| | | ElMessage.warning(res.msg) |
| | |
| | | |
| | | List<Map<String, Object>> getCustomLabelDetailMp(String name, String form, String id, FlowCard flowCard); |
| | | |
| | | List<Order> getPrintCustomData(String orderId, Integer orderNumber); |
| | | List<Order> getPrintCustomData(String processId, Integer technologyNumber); |
| | | |
| | | Integer getPrintLabelCount(String processId, Integer technologyNumber); |
| | | } |
| | |
| | | |
| | | public Map<String, Object> getSelectPrintLabelSv(Map<String, Object> object) { |
| | | Map<String, Object> map = new HashMap<>(); |
| | | List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();//最终结果 |
| | | List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("printList")), FlowCard.class); |
| | | if (!flowCardList.isEmpty()) { |
| | | for (FlowCard flowCard : flowCardList) { |
| | | Integer count=flowCard.getQuantity(); |
| | | for (int i = 0; i < count; i++) { |
| | | map.put("data", flowCardMapper.getPrintLabel(flowCard.getProcessId(), flowCard.getTechnologyNumber())); |
| | | System.out.println(flowCardMapper.getPrintLabel(flowCard.getProcessId(), flowCard.getTechnologyNumber())); |
| | | } |
| | | // Integer count=flowCardMapper.getPrintLabelCount(flowCard.getProcessId(), flowCard.getTechnologyNumber()); |
| | | Map<String, Object> itemmap = new HashMap<>(); |
| | | // for (int i = 0; i < count; i++) { |
| | | itemmap.put("data", flowCardMapper.getPrintLabel(flowCard.getProcessId(), flowCard.getTechnologyNumber())); |
| | | list.add(itemmap); |
| | | //} |
| | | |
| | | } |
| | | } |
| | | |
| | | map.put("data", list); |
| | | return map; |
| | | } |
| | | |
| | |
| | | List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("printList")), FlowCard.class); |
| | | if (!flowCardList.isEmpty()) { |
| | | for (FlowCard flowCard : flowCardList) { |
| | | map.put("data", flowCardMapper.getPrintCustomData(flowCard.getOrderId(),flowCard.getOrderNumber())); |
| | | map.put("quantity", flowCard.getQuantity()); |
| | | |
| | | Map<String, Object> itemmap = new HashMap<>(); |
| | | itemmap.put("data", flowCardMapper.getPrintCustomData(flowCard.getProcessId(),flowCard.getTechnologyNumber())); |
| | | list.add(itemmap); |
| | | |
| | | |
| | | } |
| | | } |
| | | |
| | | map.put("title", flowCardMapper.getPrintTitle(type)); |
| | | map.put("data", list); |
| | | map.put("title", flowCardMapper.getPrintTitle(type)); |
| | | return map; |
| | | } |
| | | |
| | |
| | | order_type, |
| | | order_classify, |
| | | batch, |
| | | icon, |
| | | o.icon, |
| | | pack_type, |
| | | delivery_date, |
| | | al_type, |
| | |
| | | contacts, |
| | | delivery_address, |
| | | od.processing_note, |
| | | width, |
| | | height, |
| | | od.quantity |
| | | width, |
| | | height, |
| | | od.quantity, |
| | | od.order_number, |
| | | fc.technology_number |
| | | |
| | | from sd.order as o |
| | | left join sd.order_detail as od on o.order_id = od.order_id |
| | | where o.order_id = #{orderId} |
| | | and od.order_number = #{orderNumber} |
| | | left join flow_card as fc on o.order_id = fc.order_id and |
| | | od.order_number = fc.order_number |
| | | where fc.process_id = #{processId} |
| | | and fc.technology_number=#{technologyNumber} |
| | | group by od.order_number,width,height |
| | | |
| | | </select> |
| | | |
| | | <select id="getPrintLabelCount"> |
| | | |
| | | </select> |
| | | |