zss
2024-12-10 8d4ad0d13ef71e22cc1036e2c6c00aafb20ed597
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
@@ -17,10 +17,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yuanchu.mom.common.GetLook;
import com.yuanchu.mom.common.PrintChina;
import com.yuanchu.mom.dto.InsOrderPlanDTO;
import com.yuanchu.mom.dto.InsProductResultDto;
import com.yuanchu.mom.dto.SampleProductDto;
import com.yuanchu.mom.dto.SubmitPlanDto;
import com.yuanchu.mom.dto.*;
import com.yuanchu.mom.exception.ErrorException;
import com.yuanchu.mom.mapper.*;
import com.yuanchu.mom.pojo.*;
@@ -129,6 +126,9 @@
    @Resource
    FuSheUtils fuSheUtils;
    @Resource
    DianLuUtils dianLuUtils;
    @Override
    public Map<String, Object> selectInsOrderPlanList(Page page, InsOrderPlanDTO insOrderPlanDTO) {
        Map<String, Object> map = new HashMap<>();
@@ -190,7 +190,7 @@
                .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId())
                .eq(InsOrderState::getInsSampleId, sampleId)
                .eq(InsOrderState::getLaboratory, laboratory));
        if (ObjectUtils.isEmpty(orderState.getInsTime())){
        if (ObjectUtils.isEmpty(orderState.getInsTime())) {
            //更新检验任务表的检验时间
            insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate()
                    .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId())
@@ -310,7 +310,7 @@
    }
    @Override
    public int uploadFile(Integer orderId, MultipartFile file, String sonLaboratory, Integer sampleId) {
    public Object uploadFile(Integer orderId, MultipartFile file, String sonLaboratory, Integer sampleId) {
        String urlString;
        String pathName;
        String path;
@@ -344,16 +344,15 @@
            file.transferTo(new File(urlString));
            insOrderFile.setFileUrl(pathName);
            insOrderFileMapper.insert(insOrderFile);
            //如果是辐射试验(近场/远程上传的csv文件)
            String[] split = filename.split("\\.");
            if (ObjectUtils.isNotEmpty(sonLaboratory) && (sonLaboratory.equals("近场") || sonLaboratory.equals("远场")) &&
                    split[split.length - 1].equals("csv")) {
                //判断是哪种csv文件,是否有——
                if (sonLaboratory.equals("近场")) {
                    fuSheUtils.getFuSheWord1(sonLaboratory, insOrderFile);
                } else {
                    fuSheUtils.getFuSheWord2(sonLaboratory, insOrderFile);
                }
            if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("近场") && split[split.length - 1].equals("csv")) {
                fuSheUtils.getFuSheWord1(sonLaboratory, insOrderFile);
            } else if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("远场") && split[split.length - 1].equals("xlsx")) {
                fuSheUtils.getFuSheWord2(sonLaboratory, insOrderFile);
            } else if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("电路试验") && split[split.length - 1].equals("xlsx") && filename.contains("交调")) {
                dianLuUtils.readDianLuFile1(sampleId, insOrderFile);
            } else if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("电路试验") && split[split.length - 1].equals("csv") && filename.contains("驻波")) {
                dianLuUtils.readDianLuFile2(sampleId, insOrderFile);
            }
        } catch (Exception e) {
            System.err.println("附件上传错误");
@@ -380,12 +379,15 @@
    //扫码报检
    @Override
    public int scanInsOrderState(String sonLaboratory, String sampleCode, String trees) {
    public int scanInsOrderState(String sonLaboratory, String sampleCode, String trees, String entrustCode) {
        /*样品入库*/
        warehouseService.inWarehouse(trees, sampleCode);
        warehouseService.inWarehouse(trees, sampleCode, entrustCode);
        /*新增检验任务*/
        //先判断该样品是否有这个站点的项目
        InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getSampleCode, sampleCode));
        List<InsOrder> insOrders = insOrderMapper.selectList(Wrappers.<InsOrder>lambdaQuery().eq(InsOrder::getEntrustCode, entrustCode));
        InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery()
                .eq(InsSample::getSampleCode, sampleCode)
                .eq(InsSample::getInsOrderId, insOrders.get(0).getId()));
        List<String> collect = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
                .eq(InsProduct::getState, 1)
                .eq(InsProduct::getInsSampleId, insSample.getId())).stream().map(InsProduct::getSonLaboratory).collect(Collectors.toList());
@@ -424,10 +426,13 @@
    //扫码出库
    @Override
    public int outInsOrderState(String sonLaboratory, String sampleCode) {
    public int outInsOrderState(String sonLaboratory, String sampleCode, String entrustCode) {
        //判断该样品的检验任务是否已经结束(继续试验或者是结束试验)
        //先判断该样品是否有这个站点的项目
        InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getSampleCode, sampleCode));
        List<InsOrder> insOrders = insOrderMapper.selectList(Wrappers.<InsOrder>lambdaQuery().eq(InsOrder::getEntrustCode, entrustCode));
        InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery()
                .eq(InsSample::getSampleCode, sampleCode)
                .eq(InsSample::getInsOrderId, insOrders.get(0).getId()));
        List<String> collect = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
                .eq(InsProduct::getState, 1)
                .eq(InsProduct::getInsSampleId, insSample.getId())).stream().map(InsProduct::getSonLaboratory).collect(Collectors.toList());
@@ -449,7 +454,7 @@
            }
        }
        boolean a = true;
        warehouseService.outWarehouse(sampleCode, a);
        warehouseService.outWarehouse(sampleCode, a, entrustCode);
        return 0;
    }
@@ -870,6 +875,15 @@
        return list;
    }
    //电路试验的保存检验内容(返回/提交)
    @Override
    public int saveInsContext2s(InsProductResultDtos insProductResultDtos) {
        for (InsProductResultDto insProductResultDto : insProductResultDtos.getInsProductResultDtos()) {
            saveInsContext2(insProductResultDto);
        }
       return  1;
    }
    //温湿度试验+功率试验的保存检验内容
    @Override
    public int saveInsContext3(InsProductResult insProductResult) {
@@ -1040,7 +1054,10 @@
                    if (insOrder.getFormType().equals("原理样机")) {
                        //出库
                        try {
                            outInsOrderState(laboratory, insSample.getSampleCode());
                            List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, insSample.getInsOrderId()));
                            for (InsSample sample : insSamples) {
                                outInsOrderState(laboratory, sample.getSampleCode(), insOrder.getEntrustCode());
                            }
                        } catch (Exception e) {
                        }