智慧保安后台管理项目备份
tangzy
2021-09-24 87c8721094ee295cc3bb7870aedaa3e0aa0368a3
1.统计
5 files modified
155 ■■■■■ changed files
src/main/java/org/springblade/modules/information/controller/InformationController.java 87 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/information/mapper/InformationMapper.java 1 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml 61 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/information/service/IInformationService.java 1 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/information/service/impl/InformationServiceImpl.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/information/controller/InformationController.java
@@ -1578,9 +1578,9 @@
        return R.data(lists);
    }
    /**
    /*    *//**
     * 分局预警统计
     */
     *//*
    @PostMapping("/selectFj")
    public R selectFj() {
        //辖区信息
@@ -1663,7 +1663,86 @@
            lists.add(map);
        }
        return R.data(lists);
    }*/
    /**
     * 分局预警统计
     */
    @PostMapping("/selectFj")
    public R selectFj() {
        //辖区信息
        List<Map<Object, Object>> list = informationService.selectJur();
        List<Map<String, Object>> lists = new ArrayList<>();
        for (int i = 0; i < list.size(); i++) {
            Integer count = 0;
            int countwg = 0;
            int countjy = 0;
            int countwm = 0;
            Map<String, Object> map = new HashMap<String, Object>();
            //辖区id
            String id = list.get(i).get("id").toString();
            //辖区名称
            String jurname = list.get(i).get("dept_name").toString();
            String childer = informationService.selJurchilder(id);
            String[] split = childer.split(",");
            String strArrays = "";
            for (int j = 0; j < split.length; j++) {
                strArrays += "'" + split[j] + "',";
    }
            String jurisdiction = strArrays.substring(0, strArrays.length() - 1);
            //保安员表现差预警数量
            List<Map<Object, Object>> mapbx = informationService.selectBx(jurisdiction, "", "");
            for (int ibx = 0; ibx < mapbx.size(); ibx++) {
                String num = mapbx.get(ibx).get("num").toString();
                count += Integer.valueOf(num);
            }
            //保安员资格异常的数量
            List<Map<Object, Object>> mapEx = informationService.selectExtype(jurisdiction, "", "");
            for (int iex = 0; iex < mapEx.size(); iex++) {
                String num = mapEx.get(iex).get("num").toString();
                count += Integer.valueOf(num);
            }
            List<Map<Object, Object>> maps = informationService.seleFj(jurisdiction);
            for (int z = 0; z < maps.size(); z++) {
                //违规经营
                //总数
                String znums = maps.get(z).get("znum").toString();
                int znum = Integer.parseInt(znums);
                //持证人数
                String cznums = maps.get(z).get("cznum").toString();
                int cznum = Integer.parseInt(cznums);
                //缴纳社保人数
                String sbnums = maps.get(z).get("sbnum").toString();
                int sbnum = Integer.parseInt(sbnums);
                //保安总人数为0
                if (znum == 0) {
                    continue;
                } else {
                    int a = znum / 2;
                    if (cznum <= a || sbnum <= a) {
                        countwg++;
                    }
                }
                //经营不善
                String num = maps.get(z).get("fwnum").toString();
                int a = Integer.parseInt(num);
                if (a == 0) {
                    countjy++;
                }
                //有实无名
                String numw = maps.get(z).get("znum").toString();
                int aw = Integer.parseInt(numw);
                if (aw == 0) {
                    countwm++;
                }
            }
            //处罚
            List<Map<Object, Object>> mapc = informationService.selectCf(jurisdiction);
            int size = mapc.size();
            map.put("Count", count + countjy + countwg + countwm + size);
            map.put("jurname", jurname);
            lists.add(map);
        }
        return R.data(lists);
    }
}
src/main/java/org/springblade/modules/information/mapper/InformationMapper.java
@@ -86,6 +86,7 @@
    List<Map<Object,Object>> selectWg(String jurisdiction);
    List<Map<Object,Object>> selectJy(String jurisdiction);
    List<Map<Object,Object>> selectYs(String jurisdiction);
    List<Map<Object,Object>> seleFj(String jurisdiction);
    List<Map<Object,Object>> selJur();
    String selJurchilder(String id);
    List<Map<Object,Object>> seleJuList(String substring);
src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
@@ -1142,8 +1142,7 @@
    <select id="selectBxs" resultType="java.util.HashMap">
        select
            si.jurisdiction id,
        select si.jurisdiction id,
            sj.parent_id,
            sj.dept_name jurisdictionName,
            si.enterprisename,
@@ -1161,8 +1160,7 @@
             sys_jurisdiction sj
             on
                 sj.id = si.jurisdiction
        where
            1=1
        where 1 = 1
          and (si.stats = 2 or si.stats =4)
          and bu.is_deleted = 0
          and bu.`status` = 1
@@ -2346,7 +2344,8 @@
        from
        (
        select d.dept_id,count(*) count from (
        select a.dept_id, ifnull(b.count, 0) num1, ifnull(c.count, 0) num2,ifnull(FORMAT((c.count/b.count)*100, 2), 0) num3 from
        select a.dept_id, ifnull(b.count, 0) num1, ifnull(c.count, 0) num2,ifnull(FORMAT((c.count/b.count)*100, 2), 0)
        num3 from
        (
        select
        bu.dept_id, ifnull(count(*), 0) count
@@ -2851,14 +2850,16 @@
    <!--持证率低于50%,社保缴纳率低于50%,派遣率低于50%-->
    <select id="getSecurityHoldAndSoidAndDispatchGroupCountList" resultType="org.springblade.modules.information.vo.ResponseVo">
    <select id="getSecurityHoldAndSoidAndDispatchGroupCountList"
            resultType="org.springblade.modules.information.vo.ResponseVo">
        select g.id,g.dept_name name,ifnull(f.count,0) num
        from
        (select id,dept_name from sys_jurisdiction where parent_id = 1372091709474910209) g
        left join
        (
        select c.id,c.parent_id,count(*) count from (
        select si.enterpriseName,sj.id,sj.parent_id,a.dept_id,ifnull(a.count,0) num1,ifnull(b.count,0) num2,ifnull(FORMAT((b.count/a.count)*100,2),0) num3 from
        select si.enterpriseName,sj.id,sj.parent_id,a.dept_id,ifnull(a.count,0) num1,ifnull(b.count,0)
        num2,ifnull(FORMAT((b.count/a.count)*100,2),0) num3 from
        (
        select
        bu.dept_id,ifnull(count(*),0) count
@@ -2945,4 +2946,50 @@
        </if>
    </select>
    <select id="seleFj" resultType="java.util.HashMap">
        SELECT i.departmentid,
        i.enterpriseName,
        IFNULL(D.znum, 0) AS znum,
        IFNULL(d.num, 0) AS fwnum,
        IFNULL(B.cznum, 0) AS cznum,
        IFNULL(C.sbnum, 0) AS sbnum
        FROM sys_information i
        LEFT JOIN (
        SELECT COUNT(*) AS znum,
        dept_id
        FROM blade_user
        WHERE role_id = '1412226235153731586'
        AND `status` = 1
        AND is_deleted = 0
        GROUP BY dept_id
        ) D ON D.dept_id = i.departmentid
        LEFT JOIN (SELECT COUNT(*) num, dept_id FROM sys_dispatcher_unit GROUP BY dept_id) d
        ON i.departmentid = d.dept_id
        LEFT JOIN (
        SELECT COUNT(*) AS cznum,
        dept_id
        FROM blade_user
        WHERE hold = 1
        AND role_id = '1412226235153731586'
        AND `status` = 1
        AND is_deleted = 0
        GROUP BY dept_id
        ) B ON B.dept_id = i.departmentid
        LEFT JOIN (
        SELECT COUNT(*) AS sbnum,
        dept_id
        FROM blade_user
        WHERE soil = 0
        AND role_id = '1412226235153731586'
        AND `status` = 1
        AND is_deleted = 0
        GROUP BY dept_id
        ) C ON C.dept_id = i.departmentid
        WHERE 1 = 1
        AND i.stats !=0
        <if test="jurisdiction!=null and jurisdiction != '' and jurisdiction != '1372091709474910209'">
            and i.jurisdiction in(${jurisdiction})
        </if>
    </select>
</mapper>
src/main/java/org/springblade/modules/information/service/IInformationService.java
@@ -203,4 +203,5 @@
     * @return
     */
    List<ResponseVo> getSecurityHoldAndSoidAndDispatchGroupCountList(Integer type);
    List<Map<Object,Object>> seleFj(String jurisdiction);
}
src/main/java/org/springblade/modules/information/service/impl/InformationServiceImpl.java
@@ -441,4 +441,9 @@
    public List<ResponseVo> getSecurityHoldAndSoidAndDispatchGroupCountList(Integer type) {
        return baseMapper.getSecurityHoldAndSoidAndDispatchGroupCountList(type);
    }
    @Override
    public List<Map<Object, Object>> seleFj(String jurisdiction) {
        return baseMapper.seleFj(jurisdiction);
    }
}