| | |
| | | |
| | | @Override |
| | | public R addRouteItem(ProductionOrderRoutingOperation productionOrderRoutingOperation) { |
| | | // 新增工艺路线 |
| | | int insert = productionOrderRoutingOperationMapper.insert(productionOrderRoutingOperation); |
| | | //工序关联的参数需要同步新增 |
| | | List<TechnologyOperationParam> technologyOperationParams = technologyOperationParamMapper.selectList(Wrappers.<TechnologyOperationParam>lambdaQuery() |
| | | .eq(TechnologyOperationParam::getTechnologyOperationId, productionOrderRoutingOperation.getTechnologyOperationId())); |
| | | // 参数与前置条件校验 |
| | | if (CollectionUtils.isNotEmpty(technologyOperationParams)){ |
| | | ArrayList<ProductionOrderRoutingOperationParam> productionOrderRoutingOperationParams = new ArrayList<>(); |
| | | // 遍历处理数据并组装结果 |
| | | for (TechnologyOperationParam technologyOperationParam : technologyOperationParams) { |
| | | TechnologyParam technologyParam = technologyParamMapper.selectById(technologyOperationParam.getTechnologyParamId()); |
| | | ProductionOrderRoutingOperationParam productionOrderRoutingOperationParam = new ProductionOrderRoutingOperationParam(); |
| | |
| | | } |
| | | String workOrderNoStr = "GD" + String.format("%s%03d", datePrefix, sequenceNumber); |
| | | ProductionOperationTask productionOperationTask = new ProductionOperationTask(); |
| | | productionOperationTask.setTechnologyRoutingOperationId(productionOrderRoutingOperation.getId()); |
| | | productionOperationTask.setProductionOrderRoutingOperationId(productionOrderRoutingOperation.getId()); |
| | | productionOperationTask.setProductionOrderId(productionOrderRoutingOperation.getProductionOrderId()); |
| | | productionOperationTask.setPlanQuantity(BigDecimal.ZERO); |
| | | productionOperationTask.setCompleteQuantity(BigDecimal.ZERO); |
| | |
| | | |
| | | @Override |
| | | public R deleteRouteItem(Long id) { |
| | | // 删除工艺路线 |
| | | try { |
| | | // 查询并准备业务数据 |
| | | ProductionOperationTask productionOperationTask = productionOperationTaskMapper.selectOne( |
| | | new LambdaQueryWrapper<ProductionOperationTask>() |
| | | .eq(ProductionOperationTask::getTechnologyRoutingOperationId, id) |
| | | .eq(ProductionOperationTask::getProductionOrderRoutingOperationId, id) |
| | | .last("limit 1")); |
| | | // 参数与前置条件校验 |
| | | if (productionOperationTask == null) { |
| | | throw new RuntimeException("删除失败:未找到关联的生产工单"); |
| | | } |
| | |
| | | List<ProductionProductMain> productionProductMains = productionProductMainMapper.selectList( |
| | | new LambdaQueryWrapper<ProductionProductMain>() |
| | | .eq(ProductionProductMain::getProductionOperationTaskId, productionOperationTask.getId())); |
| | | // 遍历处理数据并组装结果 |
| | | for (ProductionProductMain main : productionProductMains) { |
| | | productionProductMainService.removeProductMain(main.getId()); |
| | | } |
| | |
| | | routingId = deleteItem.getOrderRoutingId(); |
| | | } |
| | | productionOperationTaskMapper.delete(new LambdaQueryWrapper<ProductionOperationTask>() |
| | | .eq(ProductionOperationTask::getTechnologyRoutingOperationId, id)); |
| | | .eq(ProductionOperationTask::getProductionOrderRoutingOperationId, id)); |
| | | productionOrderRoutingOperationMapper.deleteById(id); |
| | | if (routingId != null) { |
| | | List<ProductionOrderRoutingOperation> operationList = productionOrderRoutingOperationMapper.selectList( |
| | |
| | | ProductionOrderRoutingOperation item = operationList.get(i); |
| | | if (!Integer.valueOf(i + 1).equals(item.getDragSort())) { |
| | | item.setDragSort(i + 1); |
| | | // 持久化或输出处理结果 |
| | | productionOrderRoutingOperationMapper.updateById(item); |
| | | } |
| | | } |
| | |
| | | |
| | | @Override |
| | | public int sortRouteItem(ProductionOrderRoutingOperation productionOrderRoutingOperation) { |
| | | // 排序工艺路线 |
| | | ProductionOrderRoutingOperation oldItem = productionOrderRoutingOperationMapper.selectById(productionOrderRoutingOperation.getId()); |
| | | List<ProductionOrderRoutingOperation> operationList = productionOrderRoutingOperationMapper.selectList( |
| | | Wrappers.<ProductionOrderRoutingOperation>lambdaQuery() |