guoshilong
2023-05-12 7ce22375b6c7a88689bde5fdb01a3c654d6fa051
Merge remote-tracking branch 'origin/jtdev' into jtdev
3 files modified
120 ■■■■ changed files
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/dto/AttResBaseUserDTO.java 4 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttResBaseMapper.xml 66 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttResBaseServiceImpl.java 50 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/dto/AttResBaseUserDTO.java
@@ -50,9 +50,9 @@
    private String engScal;
    /**
     * 所属地点
     * 所在地点
     */
    @ApiModelProperty(value = "所属地点")
    @ApiModelProperty(value = "所在地点")
    private String place;
    /**
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttResBaseMapper.xml
@@ -26,14 +26,40 @@
    <!--获取水库对应责任人分页数据-->
    <select id="getAttResBaseUserPage" resultType="cn.gistack.sm.sjztmd.dto.AttResBaseUserDTO">
        select
        arb."guid",
        arb."name",
        arb."res_loc" as place,
        arb."res_reg_code" as resRegCode,
        arb."eng_scal" as engScal,
        aab."ad_name" as adName
        arb."guid", arb."name", arb."res_loc" as place, arb."res_reg_code" as resRegCode, arb."eng_scal" as engScal,
        aab."ad_name" as adName,
        trmp1."user_unit" areaUnitName,trmp1."user_name" areaUsername,trmp1."user_phone" areaPhone,trmp1."position" areaPosition,
        trmp2."user_unit" customsUnitName,trmp2."user_name" customsUsername,trmp2."user_phone" customsPhone,trmp2."position" customsPosition,
        trmp3."user_unit" manageUnitUnitName,trmp3."user_name" manageUnitUsername,trmp3."user_phone" manageUnitPhone,trmp3."position" manageUnitPosition,
        trmp4."user_unit" technologyUnitName,trmp4."user_name" technologyUsername,trmp4."user_phone" technologyPhone,trmp4."position" technologyPosition,
        trmp5."user_unit" patrolUnitName,trmp5."user_name" patrolUsername,trmp5."user_phone" patrolPhone,trmp5."position" patrolPosition
        from SJZT_MD."att_res_base" arb
        left join "SJZT_MD"."att_ad_base" aab on aab."guid" = concat(arb."ad_guid",'000000')
        left join (
        select "res_guid",WM_Concat("user_unit") "user_unit",WM_Concat("user_name") "user_name",WM_Concat("user_phone") "user_phone",WM_Concat("position") "position"
        from "SJZT_MD"."tb_res_manage_person" where  "type"=1 GROUP BY "res_guid"
        ) trmp1 on arb."guid" = trmp1."res_guid"
        left join (
        select "res_guid",WM_Concat("user_unit") "user_unit",WM_Concat("user_name") "user_name",WM_Concat("user_phone") "user_phone",WM_Concat("position") "position"
        from "SJZT_MD"."tb_res_manage_person" where  "type"=2 GROUP BY "res_guid"
        ) trmp2 on arb."guid" = trmp2."res_guid"
        left join (
        select "res_guid",WM_Concat("user_unit") "user_unit",WM_Concat("user_name") "user_name",WM_Concat("user_phone") "user_phone",WM_Concat("position") "position"
        from "SJZT_MD"."tb_res_manage_person" where  "type"=3 GROUP BY "res_guid"
        ) trmp3 on arb."guid" = trmp3."res_guid"
        left join (
        select "res_guid",WM_Concat("user_unit") "user_unit",WM_Concat("user_name") "user_name",WM_Concat("user_phone") "user_phone",WM_Concat("position") "position"
        from "SJZT_MD"."tb_res_manage_person" where  "type"=4 GROUP BY "res_guid"
        ) trmp4 on arb."guid" = trmp4."res_guid"
        left join (
        select "res_guid",WM_Concat("user_unit") "user_unit",WM_Concat("user_name") "user_name",WM_Concat("user_phone") "user_phone",WM_Concat("position") "position"
        from "SJZT_MD"."tb_res_manage_person" where  "type"=5 GROUP BY "res_guid"
        ) trmp5 on arb."guid" = trmp5."res_guid"
        where 1=1
        <if test="params.name !=null and params.name !=''">
            AND arb."name" LIKE CONCAT('%',#{params.name},'%')
@@ -44,6 +70,34 @@
        <if test="params.engScal !=null and params.engScal !=''">
            AND arb."eng_scal" LIKE CONCAT('%',#{params.engScal},'%')
        </if>
        <if test="params.isWorkable==1">
            AND (
                (
                (arb."eng_scal" = '大(1)型' or arb."eng_scal" = '大(2)型' or arb."eng_scal" = '中型')
                and
                trmp1."user_unit" is not null and trmp2."user_unit" is not null and trmp3."user_unit" is not null
                )
                or
                (
                (arb."eng_scal" = '小(1)型' or arb."eng_scal" = '小(2)型')
                and
                trmp1."user_unit" is not null and trmp2."user_unit" is not null and trmp3."user_unit" is not null and trmp4."user_unit" is not null and trmp5."user_unit" is not null
                )
            )
        </if>
        <if test="params.isWorkable==2">
            AND (
                (arb."eng_scal" = '大(1)型' or arb."eng_scal" = '大(2)型' or arb."eng_scal" = '中型')
                and
                (trmp1."user_unit" is null or trmp2."user_unit" is null or trmp3."user_unit" is null)
                or
                (
                (arb."eng_scal" = '小(1)型' or arb."eng_scal" = '小(2)型')
                and
                (trmp1."user_unit" is null or trmp2."user_unit" is null or trmp3."user_unit" is null or trmp4."user_unit" is null or trmp5."user_unit" is null)
                )
            )
        </if>
        <if test="list != null and list.size()>0">
            and aab."ad_code" in
            <foreach collection="list" item="adCode" separator ="," open="("  close=")">
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttResBaseServiceImpl.java
@@ -60,56 +60,6 @@
            list = callTaskMapper.getAllChildrenAreaByAreaCode(adCode.toString());
        }
        List<AttResBaseUserDTO> attResBaseUserDTOList = baseMapper.getAttResBaseUserPage(page,list,params);
        // 遍历查询所在地点和其它责任人信息
        for (AttResBaseUserDTO attResBaseUserDTO : attResBaseUserDTOList) {
            // 查询各类型责任人
            List<ManagePersonVO> userList = baseMapper.getUserByResBaseGuid(attResBaseUserDTO.getGuid());
            // 组装数据
            if (userList.size() > 0){
                // 责任人类型 1:行政责任人 2:主管部门责任人 3:管理单位责任人 4:技术责任人 5:巡查责任人
                for (ManagePersonVO person : userList) {
                    // 1:行政责任人
                    if (person.getType().equals(1)) {
                        attResBaseUserDTO.setAreaUsername(person.getUsername());
                        attResBaseUserDTO.setAreaUnitName(person.getUnitName());
                        attResBaseUserDTO.setAreaPosition(person.getPosition());
                        attResBaseUserDTO.setAreaPhone(person.getPhone());
                    }
                    // 2:主管部门责任人
                    if (person.getType().equals(2)) {
                        attResBaseUserDTO.setCustomsUsername(person.getUsername());
                        attResBaseUserDTO.setCustomsUnitName(person.getUnitName());
                        attResBaseUserDTO.setCustomsPosition(person.getPosition());
                        attResBaseUserDTO.setCustomsPhone(person.getPhone());
                    }
                    // 3:管理单位责任人
                    if (person.getType().equals(3)) {
                        attResBaseUserDTO.setManageUnitUsername(person.getUsername());
                        attResBaseUserDTO.setManageUnitUnitName(person.getUnitName());
                        attResBaseUserDTO.setManageUnitPosition(person.getPosition());
                        attResBaseUserDTO.setManageUnitPhone(person.getPhone());
                    }
                    // 4:技术责任人
                    if (person.getType().equals(4)) {
                        attResBaseUserDTO.setTechnologyUsername(person.getUsername());
                        attResBaseUserDTO.setTechnologyUnitName(person.getUnitName());
                        attResBaseUserDTO.setTechnologyPosition(person.getPosition());
                        attResBaseUserDTO.setTechnologyPhone(person.getPhone());
                    }
                    // 5:巡查责任人
                    if (person.getType().equals(5)) {
                        attResBaseUserDTO.setPatrolUsername(person.getUsername());
                        attResBaseUserDTO.setPatrolUnitName(person.getUnitName());
                        attResBaseUserDTO.setPatrolPosition(person.getPosition());
                        attResBaseUserDTO.setPatrolPhone(person.getPhone());
                    }
                }
            }
        }
        // 返回数据
        return page.setRecords(attResBaseUserDTOList);
    }