晏有为
2024-05-23 10de56ca16261e6a4eec49dfd32f0a6b232f7baf
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java
@@ -12,6 +12,7 @@
import com.yuanchu.mom.dto.SampleOrderDto;
import com.yuanchu.mom.dto.SampleProductDto;
import com.yuanchu.mom.dto.SampleProductDto2;
import com.yuanchu.mom.exception.ErrorException;
import com.yuanchu.mom.mapper.*;
import com.yuanchu.mom.pojo.*;
import com.yuanchu.mom.service.InsOrderService;
@@ -77,11 +78,15 @@
        insOrderMapper.updateById(insOrder);
        List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, orderId).select(InsSample::getId));
        List<Integer> ids = insSamples.stream().map(a-> a.getId()).collect(Collectors.toList());
        List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().in(InsProduct::getInsSampleId, ids).select(InsProduct::getSonLaboratory).groupBy(InsProduct::getSonLaboratory));
        List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().in(InsProduct::getInsSampleId, ids).eq(InsProduct::getState, 1).select(InsProduct::getSonLaboratory).groupBy(InsProduct::getSonLaboratory));
        for (InsProduct insProduct : insProducts) {
            InsOrderState insOrderState = new InsOrderState();
            insOrderState.setInsOrderId(orderId);
            insOrderState.setLaboratory(insProduct.getSonLaboratory());
            try {
                insOrderState.setLaboratory(insProduct.getSonLaboratory());
            }catch (NullPointerException e){
                throw new ErrorException("该检验单有未维护实验室的检验项目");
            }
            insOrderState.setInsState(0);
            insOrderStateMapper.insert(insOrderState);
        }
@@ -117,6 +122,9 @@
                    product.setUpdateTime(null);
                    product.setUpdateUser(null);
                    product.setInsSampleId(a.getId());
                    if(product.getInspectionItemSubclass() == null){
                        product.setInspectionItemSubclass("");
                    }
                    insProductMapper.insert(product);
                }
            }
@@ -136,6 +144,7 @@
    @Override
    public int upInsOrderOfState(InsOrder insOrder) {
        insOrder.setExamineTime(LocalDateTime.now());
        return insOrderMapper.updateById(insOrder);
    }