From 6b788d78086803adf646394578815e187cf4a034 Mon Sep 17 00:00:00 2001 From: fengyuan_yang <1976974459@qq.com> Date: Tue, 3 Dec 2024 14:34:55 +0800 Subject: [PATCH] =?UTF-8?q?2024-12-02=20=E8=AE=A1=E7=AE=97=E5=B7=A5?= =?UTF-8?q?=E6=97=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RoutingManagementController.java | 12 ++ .../service/RoutingManagementService.java | 2 + .../impl/RoutingManagementServiceImpl.java | 118 +++++++----------- .../modules/part/vo/RoutingComponentVo.java | 2 + .../sys/modules/part/vo/RoutingHeaderVo.java | 4 + 5 files changed, 63 insertions(+), 75 deletions(-) diff --git a/src/main/java/com/xujie/sys/modules/part/controller/RoutingManagementController.java b/src/main/java/com/xujie/sys/modules/part/controller/RoutingManagementController.java index d32fbb9d..e85f72af 100644 --- a/src/main/java/com/xujie/sys/modules/part/controller/RoutingManagementController.java +++ b/src/main/java/com/xujie/sys/modules/part/controller/RoutingManagementController.java @@ -310,4 +310,16 @@ public class RoutingManagementController { List list = routingManagementService.saveStandardOperation(data); return R.ok().put("rows", list); } + + /** + * 计算工时 + * @param data + * @return + */ + @PostMapping(value="/calculationTime") + @ResponseBody + public R calculationTime(@RequestBody RoutingHeaderVo data) { + List list = routingManagementService.calculationTime(data); + return R.ok().put("rows", list); + } } diff --git a/src/main/java/com/xujie/sys/modules/part/service/RoutingManagementService.java b/src/main/java/com/xujie/sys/modules/part/service/RoutingManagementService.java index 0af8445c..c61f90a0 100644 --- a/src/main/java/com/xujie/sys/modules/part/service/RoutingManagementService.java +++ b/src/main/java/com/xujie/sys/modules/part/service/RoutingManagementService.java @@ -54,4 +54,6 @@ public interface RoutingManagementService { List getStandardOperations(RoutingHeaderVo data); List saveStandardOperation(RoutingComponentVo data); + + List calculationTime(RoutingHeaderVo data); } diff --git a/src/main/java/com/xujie/sys/modules/part/service/impl/RoutingManagementServiceImpl.java b/src/main/java/com/xujie/sys/modules/part/service/impl/RoutingManagementServiceImpl.java index 408e971b..93abea03 100644 --- a/src/main/java/com/xujie/sys/modules/part/service/impl/RoutingManagementServiceImpl.java +++ b/src/main/java/com/xujie/sys/modules/part/service/impl/RoutingManagementServiceImpl.java @@ -686,13 +686,50 @@ public class RoutingManagementServiceImpl extends ServiceImpl getStandardOperations(RoutingHeaderVo data) { - //List operations = new ArrayList<>(); - // 获得物料的商品组1 PartInformationEntity part = partInformationMapper.selectOne(new QueryWrapper().eq("site", data.getSite()).eq("sourceBu", data.getBuNo()).eq("part_no", data.getPartNo())); // 根据商品组1查标准工序 List operations = routingManagementMapper.getStandardRoutingOperationByProductGroupId(data.getSite(), data.getBuNo(), part.getProductGroupId1()); + return operations; + } + + /** + * 新增工序 + * @param data + * @return + */ + @Override + @Transactional + public List saveStandardOperation(RoutingComponentVo data) { + if (!data.getInformationList().isEmpty()) { + // 删除旧工序 + //routingManagementMapper.deleteRoutingComponent(data.getSite(), data.getBuNo(), data.getPartNo(), data.getRoutingType(), data.getRoutingRevision(), data.getAlternativeNo()); + // 增加标准工序 + for (RoutingComponentEntity componentEntity : data.getInformationList()) { + componentEntity.setPartNo(data.getPartNo()); + componentEntity.setRoutingType(data.getRoutingType()); + componentEntity.setRoutingRevision(data.getRoutingRevision()); + componentEntity.setAlternativeNo(data.getAlternativeNo()); + routingManagementMapper.saveRoutingComponent(componentEntity); + } + } + // 查询routing子明细列表 + RoutingDetailEntity routingDetail = new RoutingDetailEntity(); + BeanUtils.copyProperties(data, routingDetail); + List list = routingManagementMapper.queryRoutingComponent(routingDetail); + return list; + } + + /** + * 计算工时 + * @param data + * @return + */ + @Override + public List calculationTime(RoutingHeaderVo data) { + // 根据商品组1查标准工序 + List operations = data.getOperationList(); // 获得物料维护的属性 PartSubPropertiesValueData valueData = new PartSubPropertiesValueData(); @@ -704,6 +741,9 @@ public class RoutingManagementServiceImpl extends ServiceImpl collect = new ArrayList<>(); if ("RFID绑定-TAL".equals(operation.getOperationName())) { @@ -794,79 +834,7 @@ public class RoutingManagementServiceImpl extends ServiceImpl conditionList = routingManagementMapper.getPtmCondition(data.getSite(), data.getBuNo(), part.getProductGroupId1()); -// for (PgPtmConditionEntity conditionData : conditionList) { -// // 查维护的属性集 -// List conditionItems = routingManagementMapper.getConditionItemList(data.getSite(), data.getBuNo(), conditionData.getConditionId()); -// // 如果属性集合大小不等则直接跳过 -// if (partItems.size() != conditionItems.size()) { -// continue; -// } -// // 比较属性编码和属性值是否一致 -// boolean b = partItems.stream().allMatch( -// partItem -> conditionItems.stream().anyMatch( -// conditionItem -> -// Objects.equals(partItem.getPropertiesItemNo(), conditionItem.getItemNo()) && -// Objects.equals(partItem.getTextValue(), conditionItem.getTextValue()) && -// Objects.equals(partItem.getNumValue(), conditionItem.getNumValue()) -// ) -// ); -// if (b) { -// // 获取该condition下维护的工序 -// List conditionOperations = routingManagementMapper.getConditionOperationsInfo(conditionData.getConditionId()); -// -// // 创建一个映射,键为 operationNo,值为对应的 RoutingComponentVo 对象 -// Map conditionOperationsMap = conditionOperations.stream() -// .collect(Collectors.toMap(RoutingComponentVo::getOperationNo, vo -> vo)); -// -// // 赋值 labor_run_factor mach_run_factor labor_cycle_time mach_cycle_time -// for (RoutingComponentVo operation : operations) { -// // 检查 conditionOperationsMap 中是否存在相同的 operationNo -// if (conditionOperationsMap.containsKey(operation.getOperationNo())) { -// // 获取 conditionOperations 中具有相同 operationNo 的 RoutingComponentVo 对象 -// RoutingComponentVo conditionOperation = conditionOperationsMap.get(operation.getOperationNo()); -// -// // 更新 operations 中的对象属性 -// operation.setMachRunFactor(conditionOperation.getMachRunFactor()); -// operation.setLaborRunFactor(conditionOperation.getLaborRunFactor()); -// operation.setMachCycleTime(conditionOperation.getMachCycleTime()); -// operation.setLaborCycleTime(conditionOperation.getLaborCycleTime()); -// operation.setConditionDesc(conditionData.getConditionDesc()); -// } -// } -// break; -// } -// } return operations; } - /** - * 新增工序 - * @param data - * @return - */ - @Override - @Transactional - public List saveStandardOperation(RoutingComponentVo data) { - if (!data.getInformationList().isEmpty()) { - // 删除旧工序 - //routingManagementMapper.deleteRoutingComponent(data.getSite(), data.getBuNo(), data.getPartNo(), data.getRoutingType(), data.getRoutingRevision(), data.getAlternativeNo()); - // 增加标准工序 - for (RoutingComponentEntity componentEntity : data.getInformationList()) { - componentEntity.setPartNo(data.getPartNo()); - componentEntity.setRoutingType(data.getRoutingType()); - componentEntity.setRoutingRevision(data.getRoutingRevision()); - componentEntity.setAlternativeNo(data.getAlternativeNo()); - routingManagementMapper.saveRoutingComponent(componentEntity); - } - } - // 查询routing子明细列表 - RoutingDetailEntity routingDetail = new RoutingDetailEntity(); - BeanUtils.copyProperties(data, routingDetail); - List list = routingManagementMapper.queryRoutingComponent(routingDetail); - return list; - } - } diff --git a/src/main/java/com/xujie/sys/modules/part/vo/RoutingComponentVo.java b/src/main/java/com/xujie/sys/modules/part/vo/RoutingComponentVo.java index 510edbab..cc82e0f1 100644 --- a/src/main/java/com/xujie/sys/modules/part/vo/RoutingComponentVo.java +++ b/src/main/java/com/xujie/sys/modules/part/vo/RoutingComponentVo.java @@ -71,4 +71,6 @@ public class RoutingComponentVo extends RoutingComponentEntity { * 效率 */ private BigDecimal refEfficiency; + + private String flag; } diff --git a/src/main/java/com/xujie/sys/modules/part/vo/RoutingHeaderVo.java b/src/main/java/com/xujie/sys/modules/part/vo/RoutingHeaderVo.java index 1c928a62..43f8b647 100644 --- a/src/main/java/com/xujie/sys/modules/part/vo/RoutingHeaderVo.java +++ b/src/main/java/com/xujie/sys/modules/part/vo/RoutingHeaderVo.java @@ -3,6 +3,8 @@ package com.xujie.sys.modules.part.vo; import com.xujie.sys.modules.part.entity.RoutingHeaderEntity; import lombok.Data; +import java.util.List; + @Data public class RoutingHeaderVo extends RoutingHeaderEntity { @@ -36,4 +38,6 @@ public class RoutingHeaderVo extends RoutingHeaderEntity { private String userName; private String alternativeNo; + + private List operationList; }