shenyijian
2024-06-20 b51fc02e94099f3419781cb59b3a6d8762bddaf3
湖北水库:施工:根据设备查询审批ID、审批待办列表分页
13 files modified
1 files added
130 ■■■■ changed files
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DO/SgProjectPersonConfigDO.java 10 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DO/SgProjectRolePersonV0.java 13 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/VO/SgProjectInfoVO.java 1 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/controller/SgProgressReportController.java 26 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/controller/SgProjectPersonConfigController.java 11 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProgressReportMapper.java 1 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProjectInfoMapper.xml 3 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProjectPersonConfigMapper.java 3 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProjectPersonConfigMapper.xml 20 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/SgProgressReportService.java 4 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/SgProjectPersonConfigService.java 6 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java 24 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProjectInfoServiceImpl.java 2 ●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProjectPersonConfigServiceImpl.java 6 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DO/SgProjectPersonConfigDO.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
@@ -16,12 +17,11 @@
 * @author shenyijian
 * @since 2024-06-15 11:45:35
 */
@Getter
@Setter
@TableName("SG_PROJECT_PERSON_CONFIG")
public class SgProjectPersonConfigDO implements Serializable {
    private static final long serialVersionUID = 1L;
@TableName("SG_PROJECT_PERSON_CONFIG")
@Data
public class SgProjectPersonConfigDO  {
    @TableId(type = IdType.AUTO)
    private Long id;
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DO/SgProjectRolePersonV0.java
New file
@@ -0,0 +1,13 @@
package cn.gistack.sm.sg.DO;
import lombok.Data;
@Data
public class SgProjectRolePersonV0 {
    private Long projectId;
    private String projectName;
    private Long roleId;
    private String roleName;
    private Long userId;
    private String userName;
}
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/VO/SgProjectInfoVO.java
@@ -16,6 +16,7 @@
    private String gxName;
    private String deviceName;
    private Long dId;
    private Long reportId;
    private String gxStepName;
    private Integer reportStatus;
    private String gxStepNum;
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/controller/SgProgressReportController.java
@@ -5,6 +5,7 @@
import cn.gistack.sm.sg.DTO.ApprovalDTO;
import cn.gistack.sm.sg.DTO.ProjectSearchDTO;
import cn.gistack.sm.sg.VO.SgProgressReportVO;
import cn.gistack.sm.sg.VO.SgProjectInfoVO;
import cn.gistack.sm.sg.service.SgProgressReportService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.support.Condition;
@@ -77,7 +78,7 @@
    }
    /**
     * APP审核列表
     * 待办列表(APP)
     */
    @GetMapping(value = "/list")
    public R queryList(ProjectSearchDTO searchDTO) {
@@ -86,7 +87,16 @@
    }
    /**
     * 待办列表统计
     * 待办列表分页
     */
    @GetMapping(value = "/project_progress_page")
    public R progressPage(ProjectSearchDTO searchDTO,Query query) {
        IPage<SgProgressReportVO> page = sgProgressReportService.progressPage(Condition.getPage(query),searchDTO);
        return R.data(page);
    }
    /**
     * 待办列表统计(APP)
     */
    @GetMapping(value = "/approval_count")
    public R countList(ProjectSearchDTO searchDTO) {
@@ -105,11 +115,21 @@
    /**
     * 审批状态统计
     * 审批情况检验(APP)
     */
    @GetMapping(value = "/check_step")
    public R checkStep(@RequestParam Long deviceId , @RequestParam Long stepId) {
        boolean flag = sgProgressReportService.checkStep(deviceId,stepId);
        return R.data(flag);
    }
    /**
     * 查询当前设备审批记录
     */
    @GetMapping(value = "/get_device_report")
    public R getDeviceReport(@RequestParam Long deviceId , @RequestParam(required = false) Long stepId) {
        String reportId = sgProgressReportService.getDeviceReport(deviceId,stepId);
        return R.data(reportId);
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/controller/SgProjectPersonConfigController.java
@@ -2,6 +2,7 @@
import cn.gistack.sm.sg.DO.SgProjectInfoDO;
import cn.gistack.sm.sg.DO.SgProjectPersonConfigDO;
import cn.gistack.sm.sg.DO.SgProjectRolePersonV0;
import cn.gistack.sm.sg.DTO.ProjectSearchDTO;
import cn.gistack.sm.sg.service.SgProjectPersonConfigService;
import org.checkerframework.checker.units.qual.A;
@@ -39,7 +40,7 @@
    /**
     * 新增项目人员配置
     */
    @GetMapping(value = "/add")
    @PostMapping(value = "/add")
    public R add( @RequestBody List<SgProjectPersonConfigDO> list) {
         projectPersonConfigService.add(list);
        return R.success("新增成功");
@@ -55,12 +56,12 @@
    }
    /**
     * 删除
     * 列表
     */
    @GetMapping(value = "/list")
    public R delete( ProjectSearchDTO searchDTO) {
        projectPersonConfigService.getList(searchDTO);
        return R.success("删除成功");
    public R list( ProjectSearchDTO searchDTO) {
    List<SgProjectRolePersonV0> list =    projectPersonConfigService.getList(searchDTO);
        return R.data(list);
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProgressReportMapper.java
@@ -26,6 +26,7 @@
    SgProgressReportVO queryById(@Param("id") String id);
    List<SgProgressReportVO> queryList(@Param("dto") ProjectSearchDTO searchDTO);
    List<SgProgressReportVO> queryList(IPage<SgProgressReportVO> page,@Param("dto") ProjectSearchDTO searchDTO);
    Long countList(@Param("dto") ProjectSearchDTO searchDTO);
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProjectInfoMapper.xml
@@ -25,7 +25,8 @@
        step.gx_step_num,
        re.STATUS as reportStatus,
        d.STATUS as deviceStatus,
        pro.STATUS as projectStatus
        pro.STATUS as projectStatus,
        re.id as reportId
        FROM
        ywxt.sg_project_info pro
        LEFT JOIN ywxt.sg_device d ON pro.id = d.program_id
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProjectPersonConfigMapper.java
@@ -1,6 +1,7 @@
package cn.gistack.sm.sg.mapper;
import cn.gistack.sm.sg.DO.SgProjectPersonConfigDO;
import cn.gistack.sm.sg.DO.SgProjectRolePersonV0;
import cn.gistack.sm.sg.DTO.ProjectSearchDTO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
@@ -20,4 +21,6 @@
    SgProjectPersonConfigDO selectByUserId(@Param("userId") Long reportUser);
    List<String> getRoleList(@Param("dto") ProjectSearchDTO searchDTO);
    List<SgProjectRolePersonV0> getList(@Param("dto") ProjectSearchDTO searchDTO);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProjectPersonConfigMapper.xml
@@ -21,4 +21,24 @@
            and pro.id = #{dto.projectId}
        </if>
    </select>
    <select id="getList" resultType="cn.gistack.sm.sg.DO.SgProjectRolePersonV0">
        SELECT
            DISTINCT
            sgc.role_id as roleId,
            pro.id as projectId,
            pro.project_name,
            ro.role_name
            --   d.id as device_id,
            --   d.device_name
            , sppc.user_id
            , bu.real_name as userName
        FROM
            ywxt.sg_project_info pro
                LEFT JOIN ywxt.sg_device d ON pro.id = d.program_id
                Left JOIN ywxt.sg_gx_config sgc ON d.device_type = sgc.gx_device_type
                left join ywxt.blade_role ro on    ro.id = sgc.role_id
                left join ywxt.sg_project_person_config sppc on sppc.rold_id = sgc.role_id
                left join ywxt.blade_user bu on sppc.user_id = bu.id
        where 1=1 and pro.id = #{dto.projectId}
    </select>
</mapper>
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/SgProgressReportService.java
@@ -37,4 +37,8 @@
    Map<String, Long> statusCount(ProjectSearchDTO searchDTO);
    boolean checkStep(Long deviceId, Long stepId);
    IPage<SgProgressReportVO> progressPage(IPage<SgProgressReportVO> page, ProjectSearchDTO searchDTO);
    String getDeviceReport(Long deviceId, Long stepId);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/SgProjectPersonConfigService.java
@@ -1,6 +1,7 @@
package cn.gistack.sm.sg.service;
import cn.gistack.sm.sg.DO.SgProjectPersonConfigDO;
import cn.gistack.sm.sg.DO.SgProjectRolePersonV0;
import cn.gistack.sm.sg.DTO.ProjectSearchDTO;
import com.baomidou.mybatisplus.extension.service.IService;
@@ -18,7 +19,8 @@
    List<String> getRoleList(ProjectSearchDTO searchDTO);
    void add(List<SgProjectPersonConfigDO> list);
    void add(List<SgProjectPersonConfigDO>  list);
    void getList(ProjectSearchDTO searchDTO);
    List<SgProjectRolePersonV0> getList(ProjectSearchDTO searchDTO);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java
@@ -10,6 +10,7 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -329,6 +330,29 @@
        }
        return true;
    }
    @Override
    public IPage<SgProgressReportVO> progressPage(IPage<SgProgressReportVO> page, ProjectSearchDTO searchDTO) {
        Long userId = AuthUtil.getUserId();
        searchDTO.setUserId(userId);
        List<SgProgressReportVO> list = sgProgressReportMapper.queryList(page, searchDTO);
        return page.setRecords(list);
    }
    @Override
    public String getDeviceReport(Long gxDeviceId, Long gxStepId) {
        QueryWrapper<SgProgressReportDO> wrapper = new QueryWrapper<>();
        wrapper.eq("gx_device_id",gxDeviceId);
        if (gxStepId!=null){
            wrapper.eq("gx_step_id",gxStepId);
        }
        List<SgProgressReportDO> sgProgressReportDOS = sgProgressReportMapper.selectList(wrapper);
        if (CollectionUtils.isNotEmpty(sgProgressReportDOS)){
            sgProgressReportDOS.sort((u1, u2) -> u2.getCreateTime().compareTo(u1.getCreateTime()));
        return sgProgressReportDOS.get(0).getId().toString();
        }
        return null;
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProjectInfoServiceImpl.java
@@ -77,7 +77,7 @@
                    sgDeviceDO.setId(dId);
                    sgDeviceDO.setDeviceName(deList.get(0).getDeviceName());
                    sgDeviceDO.setStatus(    deList.get(0).getDeviceStatus());
                    sgDeviceDO.setStepDOList(deList.stream().map(s->SgGxStepDO.builder().gxStepNum(s.getGxStepNum()).gxStepName(s.getGxStepName()).approvalStatus(s.getReportStatus()).build()).collect(Collectors.toList()));
                    sgDeviceDO.setStepDOList(deList.stream().map(s->SgGxStepDO.builder().id(s.getReportId()).gxStepNum(s.getGxStepNum()).gxStepName(s.getGxStepName()).approvalStatus(s.getReportStatus()).build()).collect(Collectors.toList()));
                    deviceDOS.add(sgDeviceDO);
                }
                typeVO.setDeviceDOS(deviceDOS);
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProjectPersonConfigServiceImpl.java
@@ -1,6 +1,7 @@
package cn.gistack.sm.sg.service.impl;
import cn.gistack.sm.sg.DO.SgProjectPersonConfigDO;
import cn.gistack.sm.sg.DO.SgProjectRolePersonV0;
import cn.gistack.sm.sg.DTO.ProjectSearchDTO;
import cn.gistack.sm.sg.mapper.SgProjectPersonConfigMapper;
import cn.gistack.sm.sg.service.SgProjectPersonConfigService;
@@ -36,7 +37,8 @@
    }
    @Override
    public void getList(ProjectSearchDTO searchDTO) {
    public List<SgProjectRolePersonV0> getList(ProjectSearchDTO searchDTO) {
        List<SgProjectRolePersonV0> list =    projectPersonConfigMapper.getList(searchDTO);
        return list;
    }
}