| | |
| | | import com.ruoyi.basic.pojo.ProductModel; |
| | | import com.ruoyi.common.utils.SecurityUtils; |
| | | import com.ruoyi.common.utils.bean.BeanUtils; |
| | | import com.ruoyi.procurementrecord.dto.Details; |
| | | import com.ruoyi.procurementrecord.dto.ProcurementAddDto; |
| | | import com.ruoyi.procurementrecord.mapper.ProcurementRecordMapper; |
| | | import com.ruoyi.procurementrecord.mapper.ProcurementRecordOutMapper; |
| | | import com.ruoyi.procurementrecord.pojo.ProcurementRecordOut; |
| | | import com.ruoyi.procurementrecord.pojo.ProcurementRecordStorage; |
| | | import com.ruoyi.procurementrecord.service.ProcurementRecordService; |
| | | import com.ruoyi.procurementrecord.utils.StockUtils; |
| | | import com.ruoyi.production.controller.ProductWorkOrderController; |
| | | import com.ruoyi.production.dto.ProductStructureDto; |
| | |
| | | import java.time.LocalDateTime; |
| | | import java.time.LocalTime; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | |
| | | private ProcessRouteItemMapper processRouteItemMapper; |
| | | |
| | | private SalesLedgerProductMapper salesLedgerProductMapper; |
| | | |
| | | |
| | | private ProcurementRecordService procurementRecordService; |
| | | |
| | | private ProductModelMapper productModelMapper; |
| | | |
| | |
| | | productionProductOutputMapper.insert(productionProductOutput); |
| | | //对应的过程检或者出厂检 |
| | | List<ProductProcessRouteItem> productProcessRouteItems = productProcessRouteItemMapper.selectList(Wrappers.<ProductProcessRouteItem>lambdaQuery().eq(ProductProcessRouteItem::getProductRouteId, productProcessRouteItem.getProductRouteId())); |
| | | if (productProcessRouteItem.getDragSort()==productProcessRouteItems.size()){ |
| | | //最后一道工序生成出厂检 |
| | | Product product = productMapper.selectById(productModel.getProductId()); |
| | | QualityInspect qualityInspect = new QualityInspect(); |
| | | qualityInspect.setProductId(product.getId()); |
| | | qualityInspect.setProductName(product.getProductName()); |
| | | qualityInspect.setModel(productModel.getModel()); |
| | | qualityInspect.setUnit(productModel.getUnit()); |
| | | qualityInspect.setQuantity(dto.getQuantity()); |
| | | qualityInspect.setProcess(productProcess.getName()); |
| | | qualityInspect.setInspectState(0); |
| | | qualityInspect.setInspectType(2); // 去掉自动进入过程检验逻辑 |
| | | qualityInspect.setProductMainId(productionProductMain.getId()); |
| | | qualityInspect.setProductModelId(productModel.getId()); |
| | | qualityInspectMapper.insert(qualityInspect); |
| | | List<QualityTestStandardBinding> qualityTestStandardBindings = qualityTestStandardBindingMapper.selectList( |
| | | new LambdaQueryWrapper<QualityTestStandardBinding>() |
| | | .eq(QualityTestStandardBinding::getProductId, product.getId())); |
| | | if (qualityTestStandardBindings.size()>0){ |
| | | qualityTestStandardParamMapper.selectList(Wrappers.<QualityTestStandardParam>lambdaQuery() |
| | | .eq(QualityTestStandardParam::getTestStandardId,qualityTestStandardBindings.get(0).getTestStandardId())) |
| | | .forEach(qualityTestStandardParam -> { |
| | | QualityInspectParam param = new QualityInspectParam(); |
| | | BeanUtils.copyProperties(qualityTestStandardParam, param); |
| | | param.setId(null); |
| | | param.setInspectId(qualityInspect.getId()); |
| | | qualityInspectParamMapper.insert(param); |
| | | }); |
| | | } |
| | | } |
| | | // if (productProcessRouteItem.getDragSort()==productProcessRouteItems.size()){ |
| | | // //最后一道工序生成出厂检 |
| | | // Product product = productMapper.selectById(productModel.getProductId()); |
| | | // QualityInspect qualityInspect = new QualityInspect(); |
| | | // qualityInspect.setProductId(product.getId()); |
| | | // qualityInspect.setProductName(product.getProductName()); |
| | | // qualityInspect.setModel(productModel.getModel()); |
| | | // qualityInspect.setUnit(productModel.getUnit()); |
| | | // qualityInspect.setQuantity(dto.getQuantity()); |
| | | // qualityInspect.setProcess(productProcess.getName()); |
| | | // qualityInspect.setInspectState(0); |
| | | // qualityInspect.setInspectType(2); // 去掉自动进入过程检验逻辑 |
| | | // qualityInspect.setProductMainId(productionProductMain.getId()); |
| | | // qualityInspect.setProductModelId(productModel.getId()); |
| | | // qualityInspectMapper.insert(qualityInspect); |
| | | // List<QualityTestStandardBinding> qualityTestStandardBindings = qualityTestStandardBindingMapper.selectList( |
| | | // new LambdaQueryWrapper<QualityTestStandardBinding>() |
| | | // .eq(QualityTestStandardBinding::getProductId, product.getId())); |
| | | // if (qualityTestStandardBindings.size()>0){ |
| | | // qualityTestStandardParamMapper.selectList(Wrappers.<QualityTestStandardParam>lambdaQuery() |
| | | // .eq(QualityTestStandardParam::getTestStandardId,qualityTestStandardBindings.get(0).getTestStandardId())) |
| | | // .forEach(qualityTestStandardParam -> { |
| | | // QualityInspectParam param = new QualityInspectParam(); |
| | | // BeanUtils.copyProperties(qualityTestStandardParam, param); |
| | | // param.setId(null); |
| | | // param.setInspectId(qualityInspect.getId()); |
| | | // qualityInspectParamMapper.insert(param); |
| | | // }); |
| | | // } |
| | | // } |
| | | |
| | | ProcurementAddDto procurementRecordOutAdd = new ProcurementAddDto(); |
| | | procurementRecordOutAdd.setType(2); |
| | | procurementRecordOutAdd.setTypeName("生产出厂检验合格入库"); |
| | | procurementRecordOutAdd.setNickName(SecurityUtils.getLoginUser().getNickName()); |
| | | List<Details> details = new ArrayList<>(); |
| | | Details details1 = new Details(); |
| | | details1.setInboundQuantity(dto.getQuantity()); |
| | | // details1.setId(Math.toIntExact(salesLedgerProduct.getId())); |
| | | // details1.setUnitPrice(salesLedgerProduct.getTaxInclusiveUnitPrice()); |
| | | // details1.setTotalPrice(salesLedgerProduct.getTaxInclusiveTotalPrice()); |
| | | // details1.setProductModelId(salesLedgerProduct.getProductModelId()); |
| | | details.add(details1); |
| | | procurementRecordOutAdd.setDetails(details); |
| | | // procurementRecordOutAdd.setQualityInspectId(qualityInspect.getId()); |
| | | procurementRecordService.add(procurementRecordOutAdd); |
| | | |
| | | /*更新工单和生产订单*/ |
| | | ProductWorkOrder productWorkOrder = productWorkOrderMapper.selectById(dto.getWorkOrderId()); |