gonglilong
2024-11-11 e610dbf131729194519ae1ebb63f4c4d613c41a0
修改权限逻辑
4 files modified
74 ■■■■■ changed files
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DTO/ProjectSearchDTO.java 4 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProgressReportMapper.xml 5 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProjectInfoMapper.xml 18 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java 47 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DTO/ProjectSearchDTO.java
@@ -61,6 +61,10 @@
     */
    private List<String> countryUnit;
    private List<String> selfUnit;
    /**
     * 设备施工单位
     */
    private List<String> sgUnit;
    /**
     * 用户角色
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProgressReportMapper.xml
@@ -108,7 +108,7 @@
        <if test="dto.selfUnit != null and dto.selfUnit.size>0">
            and
            <foreach collection="dto.selfUnit" item="item" index="index" open="(" separator="or" close=")">
                si.CONSTRUCTION_UNIT Like  CONCAT(CONCAT('%', #{item}), '%')
                si.CONSTRUCTION_UNIT Like  CONCAT(CONCAT('%', #{item}), '%') or   si.SELF_UNIT Like  CONCAT(CONCAT('%', #{item}), '%')
            </foreach>
        </if>
        <if test="dto.userUnit != null and dto.userUnit.size>0">
@@ -237,13 +237,14 @@
        </if>
    </select>
    <select id="getUserByIds" resultType="java.util.Map">
        select u.id ,u.real_name ,d.full_name as deptName from ywxt.blade_user u inner join ywxt.blade_dept d on u.dept_id = convert(varchar(100),d.id) where 1 = 1
        select u.id ,u.real_name ,d.full_name as deptName from ywxt.blade_user u inner join ywxt.blade_dept d on  u.dept_id like CONCAT('%', d.id, '%') where 1 = 1  and d."SG_CODE" is not null
        <if test="ids != null and ids.size>0">
            AND u.id in
            <foreach collection="ids" item="item" index="index" open="(" separator="," close=")">
                #{item}
            </foreach>
        </if>
    </select>
    <select id="selectProframId" resultType="java.lang.Long">
        select program_id from ywxt.sg_device where id = #{deviceId}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProjectInfoMapper.xml
@@ -19,7 +19,7 @@
        <if test="dto.selfUnit != null and dto.selfUnit.size>0 ">
            and
            <foreach collection="dto.selfUnit" item="item" index="index" open="(" separator="or" close=")">
                info.CONSTRUCTION_UNIT Like  CONCAT(CONCAT('%', #{item}), '%')
                info.CONSTRUCTION_UNIT Like  CONCAT(CONCAT('%', #{item}), '%') or   info.SELF_UNIT Like  CONCAT(CONCAT('%', #{item}), '%')
            </foreach>
        </if>
        <if test="dto.userUnit != null and dto.userUnit.size>0">
@@ -509,7 +509,7 @@
        <if test="dto.selfUnit != null and dto.selfUnit.size>0">
            and
            <foreach collection="dto.selfUnit" item="item" index="index" open="(" separator="or" close=")">
                pro.CONSTRUCTION_UNIT Like  CONCAT(CONCAT('%', #{item}), '%')
                pro.CONSTRUCTION_UNIT Like  CONCAT(CONCAT('%', #{item}), '%') or  pro.SELF_UNIT Like  CONCAT(CONCAT('%', #{item}), '%')
            </foreach>
        </if>
        <if test="dto.userUnit != null and dto.userUnit.size>0">
@@ -562,12 +562,20 @@
            Pdict.DICT_KEY
    </select>
    <select id="getSgCodeByUser" resultType="java.lang.String">
        SELECT
       <!-- SELECT
            dp."SG_CODE"
        FROM
            ywxt.BLADE_USER u
                LEFT JOIN ywxt.blade_dept dp ON u.dept_id = cast( dp.id AS VARCHAR )
        WHERE u.id = #{userId}
        WHERE u.id = #{userId} -->
        SELECT
        distinct dp."SG_CODE"
        FROM
        ywxt.BLADE_USER u
        LEFT JOIN ywxt.blade_dept dp ON   u.dept_id  Like  CONCAT('%',  dp.id , '%')
        WHERE u.id =  #{userId}  and   dp."SG_CODE"  is not null limit 1
    </select>
    <select id="queryDept" resultType="cn.gistack.sm.sg.VO.SgAllDeptOrUser">
@@ -597,7 +605,7 @@
        <if test="dto.selfUnit != null and dto.selfUnit.size>0 ">
            and
            <foreach collection="dto.selfUnit" item="item" index="index" open="(" separator="or" close=")">
                info.CONSTRUCTION_UNIT Like  CONCAT(CONCAT('%', #{item}), '%')
                info.CONSTRUCTION_UNIT Like  CONCAT(CONCAT('%', #{item}), '%') or info.SELF_UNIT Like  CONCAT(CONCAT('%', #{item}), '%')
            </foreach>
        </if>
        <if test="dto.userUnit != null and dto.userUnit.size>0">
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java
@@ -82,11 +82,12 @@
                    List<String> users=sgProjectInfoMapper.getUserS(controlUnitS);
                    resultUsers.addAll(users);
                }
//                if(s.getSelfUnit()!=null){
//                    String selfUnit = s.getSelfUnit().toString();
//                    List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnit);
//                    resultUsers.addAll(selfUnitusers);
//                }
                if(s.getSelfUnit()!=null){
                    String selfUnit = s.getSelfUnit();
                    List<String> selfUnitS = Arrays.asList(selfUnit.split(","));
                    List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnitS);
                    resultUsers.addAll(selfUnitusers);
                }
                s.setUserIDs(resultUsers);
@@ -125,11 +126,12 @@
                    List<String> users=sgProjectInfoMapper.getUserS(controlUnitS);
                    resultUsers.addAll(users);
                }
//                if(s.getSelfUnit()!=null){
//                    String selfUnit = s.getSelfUnit().toString();
//                    List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnit);
//                    resultUsers.addAll(selfUnitusers);
//                }
                if(s.getSelfUnit()!=null){
                    String selfUnit = s.getSelfUnit();
                    List<String> selfUnitS = Arrays.asList(selfUnit.split(","));
                    List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnitS);
                    resultUsers.addAll(selfUnitusers);
                }
                s.setUserIDs(resultUsers);
@@ -589,11 +591,12 @@
                    List<String> users=sgProjectInfoMapper.getUserS(controlUnitS);
                    resultUsers.addAll(users);
                }
//                if(s.getSelfUnit()!=null){
//                    String selfUnit = s.getSelfUnit().toString();
//                    List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnit);
//                    resultUsers.addAll(selfUnitusers);
//                }
                if(s.getSelfUnit()!=null){
                    String selfUnit = s.getSelfUnit();
                    List<String> selfUnitS = Arrays.asList(selfUnit.split(","));
                    List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnitS);
                    resultUsers.addAll(selfUnitusers);
                }
                s.setUserIDs(resultUsers);
@@ -736,11 +739,12 @@
                    List<String> users=sgProjectInfoMapper.getUserS(controlUnitS);
                    resultUsers.addAll(users);
                }
//                if(s.getSelfUnit()!=null){
//                    String selfUnit = s.getSelfUnit().toString();
//                    List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnit);
//                    resultUsers.addAll(selfUnitusers);
//                }
                if(s.getSelfUnit()!=null){
                    String selfUnit = s.getSelfUnit();
                    List<String> selfUnitS = Arrays.asList(selfUnit.split(","));
                    List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnitS);
                    resultUsers.addAll(selfUnitusers);
                }
                s.setUserIDs(resultUsers);
@@ -781,8 +785,9 @@
                searchDTO.setCountryUnit(longList);
            }
            if(roleId==1800818489547112450L){
            if(roleId.equals(1800818489547112450L)){
                searchDTO.setSelfUnit(longList);
            }
        }
    }