| | |
| | | productOrder.setSaleLedgerProductId(salesLedgerProduct.getId()); |
| | | String string = productOrderServiceImpl.generateNextOrderNo(LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd"))); |
| | | productOrder.setNpsNo(string); |
| | | productOrder.setStatus("待生产"); |
| | | productOrder.setQuantity(salesLedgerProduct.getQuantity());//需求数量 |
| | | productOrder.setCompleteQuantity(BigDecimal.ZERO);//完成数量 |
| | | productOrderMapper.insert(productOrder); |
| | |
| | | productProcessRouteMapper.insert(productProcessRoute); |
| | | // 绑定生产bom清单 |
| | | List<ProductBom> productBoms = productBomMapper.selectList(new LambdaQueryWrapper<ProductBom>() |
| | | .eq(ProductBom::getProductModelId, processRoute.getProductModelId()) |
| | | .eq(ProductBom::getProductModelId, salesLedgerProduct.getProductModelId()) |
| | | .orderByDesc(ProductBom::getId)); |
| | | if(com.baomidou.mybatisplus.core.toolkit.CollectionUtils.isNotEmpty(productBoms)){ |
| | | ProductBom productBom = productBoms.get(0); |
| | | // 获取bom子表信息 |
| | | List<ProductStructure> productStructures = productStructureMapper.selectList(new LambdaQueryWrapper<ProductStructure>() |
| | | .isNotNull(ProductStructure::getParentId) |
| | | .eq(ProductStructure::getBomId, productBom.getId())); |
| | | if(com.baomidou.mybatisplus.core.toolkit.CollectionUtils.isNotEmpty(productStructures)){ |
| | | productStructures.forEach(item ->{ |
| | | ProductStructureRecord item1 = new ProductStructureRecord(); |
| | | BeanUtils.copyProperties(item, item1); |
| | | item1.setProductOrderId(productOrder.getId()); |
| | | item1.setDemandedQuantity(item.getUnitQuantity().add(productOrder.getQuantity())); |
| | | item1.setDemandedQuantity(item.getUnitQuantity().multiply(productOrder.getQuantity())); |
| | | item1.setBomId(Long.valueOf(productBom.getId())); |
| | | productStructureRecordMapper.insert(item1); |
| | | }); |
| | |
| | | productOrderMapper.delete(new LambdaQueryWrapper<ProductOrder>() |
| | | .in(ProductOrder::getSaleLedgerProductId, productIds)); |
| | | // 删除附件 |
| | | commonFileService.deleteByBusinessIds(productIds, FileNameType.PRODUCT_ORDER.getValue()); |
| | | commonFileService.deleteByBusinessIds(orderIds, FileNameType.PRODUCT_ORDER.getValue()); |
| | | // 删除生产订单-物料清单 |
| | | productStructureRecordMapper.delete(new LambdaQueryWrapper<ProductStructureRecord>() |
| | | .in(ProductStructureRecord::getProductOrderId, productIds)); |
| | | .in(ProductStructureRecord::getProductOrderId, orderIds)); |
| | | } |
| | | } |
| | | |