Lius
3 天以前 2196ba833d88c32dd0e26b526928d313cfea0d80
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java
@@ -3,6 +3,7 @@
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
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;
@@ -25,9 +26,11 @@
import org.jeecg.modules.eam.constant.*;
import org.jeecg.modules.eam.entity.*;
import org.jeecg.modules.eam.mapper.EamThirdMaintenanceOrderMapper;
import org.jeecg.modules.eam.request.EamThirdMaintenanceBaseResponse;
import org.jeecg.modules.eam.request.EamThirdMaintenanceQuery;
import org.jeecg.modules.eam.request.EamThirdMaintenanceRequest;
import org.jeecg.modules.eam.service.*;
import org.jeecg.modules.eam.vo.EamThirdMaintenanceBaseVo;
import org.jeecg.modules.flowable.apithird.business.entity.FlowMyBusiness;
import org.jeecg.modules.flowable.apithird.business.service.IFlowMyBusinessService;
import org.jeecg.modules.flowable.apithird.service.FlowCallBackServiceI;
@@ -38,6 +41,7 @@
import org.jeecg.modules.system.entity.BaseFactoryUser;
import org.jeecg.modules.system.service.IBaseFactoryService;
import org.jeecg.modules.system.service.IBaseFactoryUserService;
import org.jeecg.modules.system.service.ISysDictService;
import org.jeecg.modules.system.service.ISysUserService;
import org.jeecg.modules.system.vo.UserSelector;
import org.springframework.beans.BeanUtils;
@@ -46,6 +50,7 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.util.*;
import java.util.stream.Collectors;
@@ -90,6 +95,8 @@
    private IEamThirdMaintenanceOrderDetailService eamThirdMaintenanceOrderDetailService;
    @Resource
    private IEamThirdMaintenanceSpareService eamThirdMaintenanceSpareService;
    @Resource
    private ISysDictService sysDictService;
    @Override
    public IPage<EamThirdMaintenanceOrder> queryPageList(Page<EamThirdMaintenanceOrder> page, EamThirdMaintenanceQuery query) {
@@ -341,6 +348,7 @@
    /**
     * 查询三保工单基本信息
     *
     * @param id
     * @return
     */
@@ -371,6 +379,68 @@
        return update > 0;
    }
    @Override
    public List<EamThirdMaintenanceOrder> selectWaitMaintenanceOrderList() {
        LambdaQueryWrapper<EamThirdMaintenanceOrder> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(EamThirdMaintenanceOrder::getMaintenanceStatus, ThirdMaintenanceStatusEnum.WAIT_MAINTENANCE.name());
        queryWrapper.isNotNull(EamThirdMaintenanceOrder::getFreezeOrderDate);
        queryWrapper.eq(EamThirdMaintenanceOrder::getDelFlag, CommonConstant.DEL_FLAG_0);
        LocalDate localDate = LocalDate.now();
        queryWrapper.lt(EamThirdMaintenanceOrder::getFreezeOrderDate, localDate.toString());
        return this.getBaseMapper().selectList(queryWrapper);
    }
    @Override
    public List<EamThirdMaintenanceOrder> selectUnCompletedThirdMaintenanceOrderList() {
        LambdaQueryWrapper<EamThirdMaintenanceOrder> queryWrapper = new LambdaQueryWrapper<>();
        List<String> statusList = Arrays.asList(ThirdMaintenanceStatusEnum.WAIT_MAINTENANCE.name(),
                ThirdMaintenanceStatusEnum.UNDER_MAINTENANCE.name(),
                ThirdMaintenanceStatusEnum.WAIT_CHECK.name(),
                ThirdMaintenanceStatusEnum.UNDER_FIRST_ACCEPTANCE.name(),
                ThirdMaintenanceStatusEnum.UNDER_SECOND_ACCEPTANCE.name(),
                ThirdMaintenanceStatusEnum.OPERATOR_SIGNATURE.name(),
                ThirdMaintenanceStatusEnum.REPAIRMAN_SIGNATURE.name(),
                ThirdMaintenanceStatusEnum.REPAIR_MANAGER_SIGNATURE.name(),
                ThirdMaintenanceStatusEnum.INSPECTOR_SIGNATURE.name(),
                ThirdMaintenanceStatusEnum.FREEZE.name()
        );
        queryWrapper.in(EamThirdMaintenanceOrder::getMaintenanceStatus, statusList);
        queryWrapper.isNotNull(EamThirdMaintenanceOrder::getOrderExpirationDate);
        queryWrapper.eq(EamThirdMaintenanceOrder::getDelFlag, CommonConstant.DEL_FLAG_0);
        LocalDate localDate = LocalDate.now();
        queryWrapper.lt(EamThirdMaintenanceOrder::getOrderExpirationDate, localDate.toString());
        return this.getBaseMapper().selectList(queryWrapper);
    }
    /**
     * 获取工单基本信息
     *
     * @param id 工单id
     * @return
     */
    @Override
    public JSONObject exportThirdMaintenanceOrderBaseInfo(String id) {
        // 创建结果对象
        JSONObject result = new JSONObject();
        EamThirdMaintenanceBaseResponse eamThirdMaintenanceBaseResponse = eamThirdMaintenanceOrderMapper.findThirdMaintenanceBaseInfo(id);
        if (eamThirdMaintenanceBaseResponse == null) {
            return result;
        }
        eamThirdMaintenanceBaseResponse.setOperatorSignature(sysDictService.queryTableDictTextByKey("sys_user", "realname", "username", eamThirdMaintenanceBaseResponse.getOperatorSignature()) + "," + eamThirdMaintenanceBaseResponse.getAssistantOperator());
        eamThirdMaintenanceBaseResponse.setRepairmanSignature(sysDictService.queryTableDictTextByKey("sys_user", "realname", "username", eamThirdMaintenanceBaseResponse.getRepairmanSignature()) + "," + eamThirdMaintenanceBaseResponse.getAssistantRepairman());
        eamThirdMaintenanceBaseResponse.setRepairManagerSignature(sysDictService.queryTableDictTextByKey("sys_user", "realname", "username", eamThirdMaintenanceBaseResponse.getRepairManagerSignature()));
        eamThirdMaintenanceBaseResponse.setInspectorSignature(sysDictService.queryTableDictTextByKey("sys_user", "realname", "username", eamThirdMaintenanceBaseResponse.getInspectorSignature()));
        eamThirdMaintenanceBaseResponse.setEquipmentCategory(sysDictService.queryDictTextByKey("equipment_category", eamThirdMaintenanceBaseResponse.getEquipmentCategory()));
        //检查人和检查时间
        EamThirdMaintenanceBaseVo vo = eamThirdMaintenanceOrderDetailService.selectCreatByAndTimeByOrderId(id);
        if (vo != null) {
            eamThirdMaintenanceBaseResponse.setCreateBy(sysDictService.queryTableDictTextByKey("sys_user", "realname", "username", vo.getOperateBy()));
            eamThirdMaintenanceBaseResponse.setCreateTime(vo.getOperateTime());
        }
        result.put("data",Collections.singletonList(eamThirdMaintenanceBaseResponse));
        return result;
    }
    /**
     * 设置流程变量
     */