zouyu
2025-03-14 66205d252d0d999bbe9b41397cf8a7181632939c
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java
ÎļþÃû´Ó cnas-require/src/main/java/com/ruoyi/require/service/impl/InsOrderPlanServiceImpl.java ÐÞ¸Ä
@@ -1,4 +1,4 @@
package com.ruoyi.require.service.impl;
package com.ruoyi.inspect.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.lang.UUID;
@@ -17,7 +17,6 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
@@ -37,37 +36,32 @@
import com.ruoyi.basic.mapper.StandardProductListMapper;
import com.ruoyi.basic.service.StandardTemplateService;
import com.ruoyi.basic.vo.StandardProductVO;
import com.ruoyi.common.constant.ExchangeConstants;
import com.ruoyi.common.constant.RouterKeyConstants;
import com.ruoyi.common.core.domain.entity.Custom;
import com.ruoyi.common.core.domain.entity.SysDictData;
import com.ruoyi.common.core.domain.entity.User;
import com.ruoyi.common.utils.DictUtils;
import com.ruoyi.common.utils.JackSonUtil;
import com.ruoyi.common.utils.QueryWrappers;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.framework.exception.ErrorException;
import com.ruoyi.framework.util.MatrixToImageWriter;
import com.ruoyi.framework.util.RedisUtil;
import com.ruoyi.framework.util.SheetWriteHandlerUtil;
import com.ruoyi.inspect.amqp.constants.ExchangeConstants;
import com.ruoyi.inspect.amqp.constants.RouterKeyConstants;
import com.ruoyi.inspect.dto.*;
import com.ruoyi.inspect.handler.*;
import com.ruoyi.inspect.mapper.*;
import com.ruoyi.inspect.pojo.*;
import com.ruoyi.inspect.service.InsBushingService;
import com.ruoyi.inspect.service.InsOrderPlanService;
import com.ruoyi.inspect.service.InsOrderService;
import com.ruoyi.inspect.service.InsUnPassService;
import com.ruoyi.inspect.service.impl.InsOrderServiceImpl;
import com.ruoyi.framework.util.SheetWriteHandlerUtil;
import com.ruoyi.inspect.service.impl.InsReportServiceImpl;
import com.ruoyi.inspect.vo.*;
import com.ruoyi.performance.mapper.AuxiliaryOutputWorkingHoursMapper;
import com.ruoyi.performance.mapper.PerformanceShiftMapper;
import com.ruoyi.performance.mapper.ShiftTimeMapper;
import com.ruoyi.require.handler.*;
import com.ruoyi.require.pojo.InformationNotification;
import com.ruoyi.require.service.InformationNotificationService;
import com.ruoyi.require.service.InsOrderPlanService;
import com.ruoyi.notice.pojo.InformationNotification;
import com.ruoyi.notice.service.InformationNotificationService;
import com.ruoyi.system.mapper.CustomMapper;
import com.ruoyi.system.mapper.UserMapper;
import com.ruoyi.system.service.ISysDictTypeService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
@@ -126,6 +120,7 @@
    private InsSampleMapper insSampleMapper;
    @Resource
    private InsSampleUserMapper insSampleUserMapper;
    @Resource
    private InsOrderMapper insOrderMapper;
    @Resource
@@ -140,10 +135,6 @@
    private InsOrderStateMapper insOrderStateMapper;
    @Resource
    private InsProductMapper insProductMapper;
    @Resource
    private ShiftTimeMapper shiftTimeMapper;
    @Resource
    private PerformanceShiftMapper performanceShiftMapper;
    @Resource
    private StandardProductListMapper standardProductListMapper;
@@ -167,7 +158,7 @@
    private InsUnPassService insUnPassService;
    @Resource
    AuxiliaryOutputWorkingHoursMapper auxiliaryOutputWorkingHoursMapper;
    private ISysDictTypeService dictTypeService;
    @Resource
    private InformationNotificationService informationNotificationService;
@@ -446,8 +437,7 @@
     */
    private String getCurrentUserLaboratory(){
        // èŽ·å–å½“å‰äººæ‰€åœ¨å®žéªŒå®¤
        Integer userId = SecurityUtils.getUserId().intValue();
        String departLimsId = userMapper.selectById(userId).getDepartLimsId();
        String departLimsId = userMapper.selectById(SecurityUtils.getUserId()).getDepartLimsId();
        String laboratory = "";
        if(StringUtils.isNotBlank(departLimsId)) {
            String[] split = departLimsId.split(",");
@@ -663,6 +653,7 @@
    @Override
    public IPage<InsOrderPlanVO> selectInsOrderPlanList(Page page, InsOrderPlanDTO insOrderPlanDTO) {
        User user = userMapper.selectById(SecurityUtils.getUserId());//当前登录的人
        //获取当前人所属实验室id
        String departLimsId = user.getDepartLimsId();
        String laboratory = null;
@@ -685,8 +676,7 @@
            }
            insOrderPlanDTO.setUserId(null);
        }
        InsOrderPlanDTO planDTO = new InsOrderPlanDTO();
        QueryWrapper<InsOrderPlanDTO> wrappers = QueryWrappers.queryWrappers(planDTO);
//        QueryWrapper<InsOrderPlanDTO> wrappers = QueryWrappers.queryWrappers(planDTO);
        IPage<InsOrderPlanVO> insOrderPage = insSampleMapper.findInsSampleAndOrder(
                page,
                userName,
@@ -697,7 +687,7 @@
                laboratory,
                insOrderPlanDTO.getEntrustCode(),
                insOrderPlanDTO.getInsState(),
                wrappers,
                null,
                insOrderPlanDTO.getSendTimeRange()
                );
        return insOrderPage;
@@ -705,8 +695,7 @@
    @Override
    public IPage<InsOrderPlanTaskSwitchVo> inspectionOrderDetailsTaskSwitching(Page page, InsOrderPlanDTO insOrderPlanDTO) {
        Integer userId = SecurityUtils.getUserId().intValue();
        User user = userMapper.selectById(userId);//当前登录的人
        User user = userMapper.selectById(SecurityUtils.getUserId());//当前登录的人
        //获取当前人所属实验室id
        String departLimsId = user.getDepartLimsId();
@@ -720,11 +709,10 @@
            }
        }
        if (ObjectUtil.isNotEmpty(insOrderPlanDTO.getUserId())) {
            insOrderPlanDTO.setUserId(userId.longValue());
            insOrderPlanDTO.setUserId(Long.valueOf(user.getId()));
        }
        String sonLaboratory = insOrderPlanDTO.getSonLaboratory();//试验室
        IPage<InsOrderPlanTaskSwitchVo> insOrderPage = insSampleMapper.inspectionOrderDetailsTaskSwitching(page, QueryWrappers.queryWrappers(insOrderPlanDTO), userId, sonLaboratory, laboratory);
        return insOrderPage;
        return insSampleMapper.inspectionOrderDetailsTaskSwitching(page, QueryWrappers.queryWrappers(insOrderPlanDTO), user.getId(), sonLaboratory, laboratory);
    }
    //认领任务
@@ -740,8 +728,6 @@
    @Override
    public Map<String, Object> doInsOrder(Integer id, String laboratory) {
//        InsOrder insOrder = new InsOrder();
//        insOrder.setId(id);
        InsOrder order = insOrderMapper.selectById(id);
        InsOrderState insOrderState = insOrderStateMapper.selectOne(new LambdaQueryWrapper<InsOrderState>()
@@ -859,8 +845,7 @@
    public IPage<InsOrderFile> getFileList(Page page, InsOrderFile insOrderFile) {
        Integer insOrderId = insOrderFile.getInsOrderId();
        insOrderFile.setInsOrderId(null);
        IPage<InsOrderFile> insOrderFileIPage = insOrderFileMapper.getFileList(page, QueryWrappers.queryWrappers(insOrderFile),insOrderId);
        return insOrderFileIPage;
        return insOrderFileMapper.getFileList(page, QueryWrappers.queryWrappers(insOrderFile),insOrderId);
    }
    @Override
@@ -2088,9 +2073,10 @@
                    .and(i->i.isNull(InsProduct::getInspectionItemClass).or().eq(InsProduct::getInspectionItemClass,""))
                    );//用检验分项字段区别光纤配置与温度循环
            //查询全色谱,过滤色标并排序
            List<String> colorList = DictUtils.getDictCache("色标").stream()
            List<String> colorList = dictTypeService.selectDictDataByType("fiber_color_type").stream()
                    .sorted(Comparator.comparing(SysDictData::getDictSort))
                    .map(SysDictData::getDictValue)
                    .map(SysDictData::getDictLabel)
                    .collect(Collectors.toList());
            //松套管附件处理
            long piperCount = insProducts.stream().filter(f->!Objects.isNull(f.getInsBushId())).count();