From 16ee98410ff451ec87e7a4b2ae8386822c62241e Mon Sep 17 00:00:00 2001 From: yxw Date: Thu, 26 Sep 2024 09:24:07 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A3=85=E9=85=8D=E7=9B=AE=E8=A7=86=E5=8D=95?= =?UTF-8?q?=E6=89=93=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../strategy/AssemblyVisualListPrintStrategy.java | 4 ++-- .../step/MesWorkOrderCutCheckStepService.java | 21 +++++++++++++-------- .../pcn/pojo/context/MesProductionPartContext.java | 13 ++++++++++--- 3 files changed, 25 insertions(+), 13 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/AssemblyVisualListPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/AssemblyVisualListPrintStrategy.java index 5d1e175..4e1d79b 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/AssemblyVisualListPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/AssemblyVisualListPrintStrategy.java @@ -90,9 +90,9 @@ public class AssemblyVisualListPrintStrategy implements IPrintTemplateStrategySe // 为空时显示内容 String isNullViewContent = StringUtils.isEmpty(partProdGroup.getIsNullViewContent()) ? "" : partProdGroup.getIsNullViewContent(); for (Integer index = 0; index < totalCount; index++) { - String displayValue = workOrderAssemblyList.size() -1 < index ? isNullViewContent : workOrderAssemblyList.get(0).getDisplayValue(); + String displayValue = workOrderAssemblyList.size() -1 < index ? isNullViewContent : workOrderAssemblyList.get(index).getDisplayValue(); - resultMap.put(MesPcnExtConstWords.ASSEMBLY_PARAM + (index+1), StringUtils.isEmpty(displayValue) ? "" : displayValue); + resultMap.put(MesPcnExtConstWords.ASSEMBLY_PARAM + (index+1), StringUtils.isEmpty(displayValue) ? StringUtils.isEmpty(isNullViewContent) ? "" : isNullViewContent : displayValue); } printDataMapList.add(resultMap); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderCutCheckStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderCutCheckStepService.java index 11ab0c0..7e5637b 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderCutCheckStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesWorkOrderCutCheckStepService.java @@ -178,21 +178,26 @@ public class MesWorkOrderCutCheckStepService extends BaseStepService { List> dataList = new ArrayList<>(); List orderList = filterProductionPartContext(productionPartContextList, true); - List finishCodeList = filterProductionPartContext(productionPartContextList, false); + //List finishCodeList = filterProductionPartContext(productionPartContextList, false); AtomicReference index = new AtomicReference<>(0); if (!CollectionUtils.isEmpty(orderList)) { + + // 腔数 + int cavityQty = productionPartContextList.stream().collect(Collectors.groupingBy(MesProductionPartContext::getPartNo)).size(); + orderList.forEach(o -> StationKvBeanUtil.addStationKvBeanList(dataList, new ArrayList<>(), - new StationKvBean(MesPcnExtConstWords.WORK_ORDER_NO, "裁片工单号", o.getWorkOrderNo()), + new StationKvBean(MesPcnExtConstWords.CUT_WORK_ORDER_NO, "裁片工单号", o.getCutWorkOrderNo()), + new StationKvBean(MesPcnExtConstWords.WORK_ORDER_NO, "工单号", o.getWorkOrderNo()), new StationKvBean(MesPcnExtConstWords.PART_NO, "零件编码", new StringJoiner(MesPcnExtConstWords.SLANT_R).add(o.getPartNo()).toString()), - new StationKvBean(MesPcnExtConstWords.QTY, "完成数/工单数", new StringJoiner(MesPcnExtConstWords.SLANT_R).add(String.valueOf(o.getCompleteQty().intValue())).add(String.valueOf(o.getQty().intValue())).toString()), - new StationKvBean(MesPcnExtConstWords.CAVITY, "腔数", new StringJoiner(MesPcnExtConstWords.SLANT_R).add(String.valueOf(index.updateAndGet(v -> v + 1))).add(String.valueOf(productionPartContextList.size())).toString()))); + new StationKvBean(MesPcnExtConstWords.QTY, "裁片工单数/完成数/工单数", new StringJoiner(MesPcnExtConstWords.SLANT_R).add(String.valueOf(o.getCutQty().intValue())).add(String.valueOf(o.getCompleteQty().intValue())).add(String.valueOf(o.getQty().intValue())).toString()), + new StationKvBean(MesPcnExtConstWords.CAVITY, "腔数", new StringJoiner(MesPcnExtConstWords.SLANT_R).add(String.valueOf(index.updateAndGet(v -> v + 1))).add(String.valueOf(cavityQty)).toString()))); } - if (!CollectionUtils.isEmpty(finishCodeList)) { - StationKvBeanUtil.addStationKvBeanList(dataList, new ArrayList<>(), new StationKvBean(MesPcnExtConstWords.CAVITY_FINISH_CODE, "空腔数", String.valueOf(finishCodeList.size()))); - } + //if (!CollectionUtils.isEmpty(finishCodeList)) { + // StationKvBeanUtil.addStationKvBeanList(dataList, new ArrayList<>(), new StationKvBean(MesPcnExtConstWords.CAVITY_FINISH_CODE, "空腔数", String.valueOf(finishCodeList.size()))); + //} return dataList; } @@ -354,7 +359,7 @@ public class MesWorkOrderCutCheckStepService extends BaseStepService { workOrderList.stream().filter(o -> null != o).forEach(o -> { MesProductionPartContext productionPartContext = new MesProductionPartContext() - .copyPartNo(o, workOrderCutDetailMap.get(o.getWorkOrderNo()).getQty(), equipVariableCollectContextList.get(0).getMessageSource()) + .copyPartNo(o, workOrderCutDetailMap.get(o.getWorkOrderNo()).getQty(), workOrderCutDetailMap.get(o.getWorkOrderNo()).getCutWorkOrderNo(), equipVariableCollectContextList.get(0).getMessageSource()) .isCheck(productionProcessContext.getWorkCell()); //if (equipVariableCollectContextList.get(0).getIsConsume().compareTo(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()) == 0) productionPartContext.checkSeqResult(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); productionPartContext.setCutCode(cutScheme.getCutCode()); diff --git a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/context/MesProductionPartContext.java b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/context/MesProductionPartContext.java index f8ecd05..e69c183 100644 --- a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/context/MesProductionPartContext.java +++ b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/context/MesProductionPartContext.java @@ -37,6 +37,9 @@ public class MesProductionPartContext implements Serializable { @ApiParam("客户零件号") private String custPartNo; + @ApiParam("裁片工单数量") + private Double cutQty; + @ApiParam("工单数量") private Double qty; @@ -114,6 +117,9 @@ public class MesProductionPartContext implements Serializable { // 裁片功能 @ApiParam("裁片方案代码") private String cutCode; + + @ApiParam("裁片工单号") + private String cutWorkOrderNo; // 裁片功能 //根据一模多腔赋值 @@ -139,12 +145,13 @@ public class MesProductionPartContext implements Serializable { return messageSource(messageSource); } - //根据工单信息赋值 - public MesProductionPartContext copyPartNo(MesWorkOrder workOrder, Double qty, Integer messageSource) { + //根据工单信息、裁片工单明细赋值 + public MesProductionPartContext copyPartNo(MesWorkOrder workOrder, Double cutQty, String cutWorkOrderNo, Integer messageSource) { if (null != workOrder) { BeanUtils.copyProperties(workOrder, this); if (StringUtils.isEmpty(this.completeQty)) this.completeQty = new Double(0); - this.setQty(qty); + this.setCutQty(cutQty); + this.setCutWorkOrderNo(cutWorkOrderNo); } else this.isFinishCode = CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(); return messageSource(messageSource); }