shenyijian
2024-10-10 af2a7128e2c74689f3728233842bbaea69417354
湖北水库:进度上报去除施工准备
4 files modified
57 ■■■■ changed files
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DTO/ProjectSearchDTO.java 1 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProgressReportMapper.xml 9 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgDeviceServiceImpl.java 2 ●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java 45 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DTO/ProjectSearchDTO.java
@@ -37,6 +37,7 @@
     * 工序类型
     */
    private String gxType;
    private String typeName;
    /**
     * 工序名
     */
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProgressReportMapper.xml
@@ -62,6 +62,15 @@
        <if test="dto.endTime != null and dto.endTime != ''">
            and report.create_time &lt;= #{dto.endTime}
        </if>
        <if test="dto.typeName != null and dto.typeName != ''">
            and dict.DICT_KEY  = #{typeName}
            <if test="dto.childTypeList != null and !dto.childTypeList.isEmpty()">
                or dict.DICT_KEY in
                <foreach collection="dto.childTypeList" open="(" close=")" separator="," item="id">
                    #{id}
                </foreach>
            </if>
        </if>
        order by report.report_time desc
    </select>
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgDeviceServiceImpl.java
@@ -59,7 +59,7 @@
        sg1.setDeviceName("施工准备");
        sg1.setDeviceType("sgzb");
        sg1.setStatus(0);
        list.add(sg1);
//        list.add(sg1);
        List<SgDeviceDO> sgDeviceDOS = baseMapper.selectList(queryWrapper);
        if (CollectionUtils.isNotEmpty(sgDeviceDOS)) {
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java
@@ -64,6 +64,9 @@
    @Autowired
    private SgProjectInfoServiceImpl sgProjectInfoService;
    @Autowired
    private SgGxMapper sgGxMapper;
    ExecutorService cachedThreadPool = Executors.newCachedThreadPool();
@@ -106,6 +109,10 @@
    }
    @Override
    public IPage<SgProgressReportVO> queryPageListAll(IPage<SgProgressReportVO> page, ProjectSearchDTO searchDTO) {
        if (StringUtils.isNotBlank(searchDTO.getTypeName())){
            List<String> childType = sgGxMapper.childType(searchDTO.getTypeName());
            searchDTO.setChildTypeList(childType);
        }
        List<SgProgressReportVO> list = sgProgressReportMapper.queryPageListAll(page,searchDTO);
        if(list != null){
            list.forEach(s ->{
@@ -187,22 +194,24 @@
        }
        if (sgProgressReportDOS1!= null && sgProgressReportDOS1.size() > 0) {
            for (SgProgressReportDO sgProgressReportDO1 : sgProgressReportDOS1) {
                if (sgProgressReportDO1.getStatus()!= 2 && sgProgressReportDO1.getStatus()!= 3)  {
                    throw new ServiceException("请先完成施工准备的审批!");
                }
            }
        } else if (sgProgressReportDOS1 == null || (!sgProgressReportDO.getGxStepName().equals("施工准备"))) {
            throw new ServiceException("请先发起施工准备的审批!");
        }
//        if (sgProgressReportDOS1!= null && sgProgressReportDOS1.size() > 0) {
//            for (SgProgressReportDO sgProgressReportDO1 : sgProgressReportDOS1) {
//                if (sgProgressReportDO1.getStatus()!= 2 && sgProgressReportDO1.getStatus()!= 3)  {
//                    throw new ServiceException("请先完成施工准备的审批!");
//                }
//            }
//        } else if (sgProgressReportDOS1 == null || (!sgProgressReportDO.getGxStepName().equals("施工准备"))) {
//            throw new ServiceException("请先发起施工准备的审批!");
//        }
        Long gxDeviceId = sgProgressReportDO.getGxDeviceId();
        Long gxStepId = sgProgressReportDO.getGxStepId();
        SgGxStepDO sgGxStepDO = sgGxStepMapper.selectById(gxStepId);
        List<SgGxStepDO> list = sgGxStepMapper.selectByGxInfoId(sgGxStepDO.getGxInfoId());
        QueryWrapper<SgProgressReportDO> wrapper = new QueryWrapper<>();
        wrapper.in("status",Arrays.asList(0,1,2,3));
        if(sgProgressReportDO.getGxDeviceId()==998 || sgProgressReportDO.getGxDeviceId()==999){
        if(sgProgressReportDO.getGxDeviceId()==998
            //|| sgProgressReportDO.getGxDeviceId()==999
        ){
            wrapper.eq("gx_step_id", gxStepId).eq("gx_device_id",gxDeviceId).ne("status",4).eq("profram_id",sgProgressReportDO.getProframId());
        }else {
            wrapper.eq("gx_step_id", gxStepId).eq("gx_device_id",gxDeviceId).ne("status",4);
@@ -237,10 +246,11 @@
        sgProgressReportMapper.insert(sgProgressReportDO);
        String deviceType ="";
        SgDeviceDO sgDeviceDO = new SgDeviceDO();
        if (gxDeviceId == 999){
             deviceType = "sgzb";
            //sgReportUserMapper.insert(SgReportUserDO.builder().reportId(sgProgressReportDO.getId()).roleId(Long.parseLong("1811657352658042882")).approvalStatus(0).approvalOrder(1).build());
        }else if(gxDeviceId == 998){
//        if (gxDeviceId == 999){
//             deviceType = "sgzb";
//            //sgReportUserMapper.insert(SgReportUserDO.builder().reportId(sgProgressReportDO.getId()).roleId(Long.parseLong("1811657352658042882")).approvalStatus(0).approvalOrder(1).build());
//        }else
            if(gxDeviceId == 998){
            deviceType = "sgys";
            //sgReportUserMapper.insert(SgReportUserDO.builder().reportId(sgProgressReportDO.getId()).roleId(Long.parseLong("1811657352658042882")).approvalStatus(0).approvalOrder(1).build());
        }else {
@@ -275,7 +285,8 @@
        }
        //加个项目及设备的状态判断 方便统计计算
        if(gxStepId != 25 && gxStepId != 26 ) {
        if(//gxStepId != 25 &&
            gxStepId != 26 ) {
            if (sgDeviceDO != null && sgDeviceDO.getStatus() == 0) {
                sgDeviceDO.setStatus(1);
                sgDeviceMapper.updateById(sgDeviceDO);
@@ -577,6 +588,10 @@
    @Override
    public Map<String, Long> countListAll(ProjectSearchDTO searchDTO) {
        if (StringUtils.isNotBlank(searchDTO.getTypeName())){
            List<String> childType = sgGxMapper.childType(searchDTO.getTypeName());
            searchDTO.setChildTypeList(childType);
        }
        List<SgProgressReportVO> list = sgProgressReportMapper.queryPageListAll(null, searchDTO);
        Map<String, Long> map = new HashMap<>();
        getStatusCountByList(list, map);