补片流程卡打印将同流程卡号合并打印,返工流程卡添加责任信息,调整流程卡其它备注样式
| | |
| | | </td> |
| | | |
| | | </tr> |
| | | <tr v-if="company.remarkSwitch=='1'" v-for="(itemremark,index) in item.remarkList" :key="index"> |
| | | <tr v-if="company.remarkSwitch=='1'"> |
| | | <td colspan="29"> |
| | | 编号:{{itemremark.S01}} |
| | | 备注1:{{itemremark.S02}} |
| | | 备注2:{{itemremark.S03}} |
| | | 备注3:{{itemremark.S04}} |
| | | 备注4:{{itemremark.S05}} |
| | | |
| | | <div style="display: flex;flex-wrap: wrap;"> |
| | | <div v-for="(itemremark,index) in item.remarkList" :key="index"> |
| | | <span v-if="!(itemremark.S02==null&&itemremark.S03==null&&itemremark.S04==null&&itemremark.S05==null)"> |
| | | 编号:{{itemremark.S01}} |
| | | </span> |
| | | <span v-if="itemremark.S02!=null">备注1:{{itemremark.S02}}</span> |
| | | <span v-if="itemremark.S03!=null">备注2:{{itemremark.S03}}</span> |
| | | <span v-if="itemremark.S04!=null">备注3:{{itemremark.S04}}</span> |
| | | <span v-if="itemremark.S05!=null">备注4:{{itemremark.S05}}</span> |
| | | </div> |
| | | </div> |
| | | </td> |
| | | </tr> |
| | | <tr v-for="(itemtextareas,index) in item.detail" :key="index"> |
| | |
| | | } |
| | | |
| | | #contentTable tbody { |
| | | |
| | | white-space: nowrap; |
| | | } |
| | | |
| | | .tdNowrap { |
| | | |
| | | white-space: nowrap; |
| | | } |
| | | |
| | | #contentTable tfoot { |
| | |
| | | // } |
| | | // }); |
| | | // data.value.printList = Object.values(uniqueObjects); |
| | | let flowCardCount = data.value.printList.length |
| | | let flowCardCount = null |
| | | onMounted(() => { |
| | | request.post(`/processCard/getSelectPrintingRefund/${merge}/${like}`, data.value).then((res) => { |
| | | if (res.code == 200) { |
| | |
| | | |
| | | } |
| | | |
| | | //处理同配置打印 |
| | | // 使用一个对象来存储合并后的结果 |
| | | const mergedData = produceList.value.reduce((acc, item) => { |
| | | const processId = item.detail[0].process_id; |
| | | |
| | | // 如果该 process_id 尚未在 acc 中,初始化其数组 |
| | | if (!acc[processId]) { |
| | | acc[processId] = { |
| | | processList: item.processList, |
| | | detailList: [], |
| | | detail: item.detail |
| | | }; |
| | | } |
| | | |
| | | // 合并 detailList |
| | | acc[processId].detailList = acc[processId].detailList.concat(item.detailList); |
| | | |
| | | return acc; |
| | | }, {}); |
| | | |
| | | // 将合并后的对象转换回数组 |
| | | produceList.value = Object.values(mergedData); |
| | | |
| | | flowCardCount=produceList.value.length |
| | | |
| | | |
| | | handleSummary() |
| | | handleGetQRCode() |
| | | } else { |
| | |
| | | </tr> |
| | | <tr v-for="(itemtextareas,index) in item.detail" :key="index"> |
| | | <td colspan="29" rowspan="6" style="width: 480px;height: 150px "> |
| | | <div style="width: 100%;height: 100%;"><textarea style="height: 99%;width: 99%;border: none;;font-size: 12px">{{itemtextareas.processing_note}}</textarea> |
| | | <div style="width: 100%;height: 100%;"><textarea style="height: 99%;width: 99%;border: none;;font-size: 12px;text-align: left">{{itemtextareas.processing_note}}</textarea> |
| | | </div> |
| | | </td> |
| | | </tr> |
| | |
| | | |
| | | } |
| | | |
| | | //处理同配置打印 |
| | | |
| | | |
| | | handleSummary() |
| | | handleGetQRCode() |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | |
| | | <div id="bj" style="float: right;font-size: 28px">返 {{ id + 1 }}</div> |
| | | <div>{{ company.companyName }}</div> |
| | | <div>生产流程卡</div> |
| | | <div v-if="itemFlow.technologyNumberMerge!=''" style="text-align: right;font-weight: bolder">流程卡号: {{ |
| | | <div v-if="itemFlow.technologyNumberMerge!=''" style="text-align: right;font-weight: bolder">{{itemFlow.otherRemarks}} |
| | | 流程卡号: {{ |
| | | itemFlow.process_id |
| | | }}/{{ itemFlow.technologyNumberMerge }} 共 {{ flowCardCount }} 架 |
| | | </div> |
| | | <div v-else style="text-align: right;font-weight: bolder">流程卡号: {{ |
| | | <div v-else style="text-align: right;font-weight: bolder"> |
| | | {{itemFlow.otherRemarks}} |
| | | 流程卡号: {{ |
| | | itemFlow.process_id |
| | | }}/{{ itemFlow.technologyNumber }} 共 {{ flowCardCount }} 架 |
| | | </div> |
| | |
| | | </td> |
| | | </tr> |
| | | <tr v-for="(itemtextarea,index) in item.detail" :key="index"> |
| | | <td v-if="like='1'" colspan="4" rowspan="6" style="width: 480px;height: 100px "> |
| | | <div style="width: 100%;height: 100%;"><textarea style="height: 99%;width: 99%;border: none;;font-size: 11px">{{company.printLabel.printFlowCard.processingNote(itemtextarea)}}</textarea> |
| | | </div> |
| | | </td> |
| | | <td v-else colspan="6" rowspan="2" style="width: 480px;height: 100px "> |
| | | <!-- <div style="width: 100%;height: 100%"><textarea style="height: 99%;width: 99%;font-size: 11px">{{ itemtextarea.processing_note }}</textarea>--> |
| | | <!-- </div>--> |
| | | <div style="width: 100%;height: 100%;"><textarea style="height: 99%;width: 99%;border: none;;font-size: 11px">{{company.printLabel.printFlowCard.processingNote(itemtextarea)}}</textarea> |
| | | <td colspan="4" rowspan="5" style="width: 480px;height: 100px "> |
| | | <div> |
| | | 次破类型:{{itemtextarea.breakage_type}} |
| | | 次破原因:{{itemtextarea.breakage_reason}} |
| | | 责任工序:{{itemtextarea.responsible_process}} |
| | | 责任班组:{{itemtextarea.responsible_team}} |
| | | </div> |
| | | </td> |
| | | <td>完工签名</td> |
| | |
| | | destroy-on-close |
| | | style="width: 75%;height:75% "> |
| | | <template #header="{ close, titleId, titleClass }"> |
| | | <el-button v-print="printContent" @click="printNumber" :icon="Printer" circle /> |
| | | <el-button v-print="printContent" :icon="Printer" circle /> |
| | | </template> |
| | | <print-process id="child" :printList="printRow.list" :printMerge="printRow.printMergeVal" :printLike="printRow.like" |
| | | style="width: 100%;height: 100%" /> |
| | |
| | | |
| | | List<Map<String, Object>> getDetailListLikeRefund(String processId, String technologyNumber, Integer orderNumber, String reportingWorkId); |
| | | |
| | | List<Map<String, Object>> getPrimaryListRework(String processId, String technologyNumber, Integer orderNumber); |
| | | List<Map<String, Object>> getPrimaryListRework(String processId, String technologyNumber, Integer orderNumber, String reportingWorkId); |
| | | |
| | | List<Map<String, Object>> getDetailListRework(String processId, Integer technologyNumber, Integer orderNumber, String reportingWorkId); |
| | | |
| | |
| | | //流程卡表头表尾数据 |
| | | //是否传入合并层数 |
| | | if (printMerge.equals("")||printMerge.equals("null") ){ |
| | | itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber())); |
| | | itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(),flowCard.getReportingWorkId())); |
| | | List<Map<String, Object>> detailList = flowCardMapper.getDetailListRework(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(),flowCard.getReportingWorkId()); |
| | | itemmap.put("detailList", detailList); |
| | | } |
| | |
| | | itemmap.put("detailList", detailList); |
| | | } |
| | | else { |
| | | itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber())); |
| | | itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(), flowCard.getReportingWorkId())); |
| | | |
| | | List<Map<String, Object>> detailList = flowCardMapper.getDetailListLikeRework(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber(),flowCard.getReportingWorkId()); |
| | | itemmap.put("detailList", detailList); |
| | |
| | | round(SUM(ogd.total_area), 2) as gross_area, |
| | | sum(od.weight) as weight, |
| | | #{technologyNumber} as technologyNumber, |
| | | concat(fc.process_id, '/', #{technologyNumber}) as processIdNumber |
| | | concat(fc.process_id, '/', #{technologyNumber}) as processIdNumber, |
| | | dd.breakage_type, |
| | | dd.breakage_reason, |
| | | dd.responsible_process, |
| | | dd.responsible_team, |
| | | concat('对应我司单号', o.batch) AS otherRemarks |
| | | from flow_card as fc |
| | | left join sd.order_glass_detail as ogd |
| | | on fc.order_id = ogd.order_id and fc.order_number = ogd.order_number and |
| | |
| | | ogdc.technology_number = ogd.technology_number |
| | | left join rework as pl on pl.process_id = fc.process_id and pl.order_sort = fc.order_number and |
| | | pl.technology_number = fc.technology_number |
| | | left join pp.reporting_work as rw on rw.order_id = fc.order_id and rw.process_id = fc.process_id |
| | | left join pp.damage_details as dd |
| | | on rw.reporting_work_id = dd.reporting_work_id and dd.order_number = fc.order_number and |
| | | dd.technology_number = fc.technology_number |
| | | where fc.process_id = #{processId} |
| | | and fc.order_number = #{orderNumber} |
| | | and fc.technology_number = #{technologyNumber} |
| | | and rw.reporting_work_id = #{reportingWorkId} |
| | | group by fc.process_id, fc.technology_number |
| | | </select> |
| | | |