czt
2026-01-07 86e5b30bdc5505fdd446c0158867032c08f4f58e
fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java
@@ -44,6 +44,8 @@
    private EventInfoService eventInfoService;
    @Resource
    private SnapRecordService snapRecordService;
    @Resource
    private SecCameraService cameraService;
    /**
     * 获取省及下属市州集合
@@ -116,15 +118,97 @@
    }
    /**
     * 获取组织下所有库区信息
     * 获取用户下所有库区信息
     *
     * @return
     */
    public List<Dept> getDeptList() {
        return deptService.getDeptByUserType(null);
    }
    /**
     * 获取库区封装信息
     * @param companyId
     * @return
     */
    public List<Dept> getAllDept(String companyId) {
        return deptService.listDept(null, companyId, null);
    public List<GroupDeptData> getDeptData(String companyId) {
        List<GroupDeptData> list = new ArrayList<>();
        GroupDeptData deptData;
        List<Dept> deptList = deptService.getDeptByUserType(null);
        if (null != deptList && !deptList.isEmpty()) {
            List<Depot> depotList;
            for (Dept dept : deptList) {
                deptData = new GroupDeptData();
                deptData.setDeptId(dept.getId());
                deptData.setDeptName(dept.getKqmc());
                deptData.setCode(dept.getXzqhdm());
                deptData.setCounty(dept.getXzqhmc());
                deptData.setJd(dept.getJd());
                deptData.setWd(dept.getWd());
                //统计仓库数
                depotList = depotService.getCacheDepotList(dept.getCompanyId(), dept.getId());
                if (null != depotList && !depotList.isEmpty()) {
                    for (Depot depot : depotList) {
                        deptData.setDepotNumber(deptData.getDepotNumber() + 1);
                        if(StringUtils.isNotBlank(depot.getPledgeBank())){
                            deptData.setDepotBankNumber(deptData.getDepotBankNumber() + 1);
                        }
                        if(null == depot.getStorageReal()){
                            depot.setStorageReal(0.0);
                        }
                        deptData.setStorageNum(deptData.getStorageNum() + depot.getStorageReal()/1000);
                    }
                }
                //统计出入库数量
                InoutParam inoutParam = new InoutParam();
                inoutParam.setDeptId(dept.getId());
                inoutParam.setCompanyId(companyId);
                inoutParam.setStart(DateUtil.getCurZero(new Date()));
                inoutParam.setEnd(DateUtil.getNextZero(new Date()));
                List<InoutRecord> inoutRecords = inoutRecordService.listInout(inoutParam);
                if (null != inoutRecords && !inoutRecords.isEmpty()) {
                    for (InoutRecord inoutRecord : inoutRecords) {
                        if (Constant.TYPE_IN.equals(inoutRecord.getType())) {
                            deptData.setInNum(deptData.getInNum() + 1);
                        }
                        if (Constant.TYPE_OUT.equals(inoutRecord.getType())){
                            deptData.setOutNum(deptData.getOutNum() + 1);
                        }
                    }
                }
                list.add(deptData);
            }
        }
        return list;
    }
    /**
     * 获取库区下监控信息
     * @param param
     * @return
     */
    public PageResponse<List<Camera>> cameraList(IgdsBaseParam param) {
        if(StringUtils.isBlank(param.getDeptId())){
            return new PageResponse<>(RespCodeEnum.CODE_2000, null);
        }
        if (StringUtils.isBlank(param.getCompanyId())){
            param.setCompanyId(ContextUtil.getCompanyId());
        }
        List<Camera> listCamera = cameraService.getCameraByDeptId(param.getCompanyId(), param.getDeptId());
        return new PageResponse<>(RespCodeEnum.CODE_0000, listCamera);
    }
    /**
     * 大屏首页统计信息:企业数、库区数、仓库数、质押仓数、散粮及成品粮数、分品种库存数
@@ -141,7 +225,7 @@
        indexData.setCompanyNum(companyNum);
        //库区数
        List<Dept> deptList = deptService.listDept(null, param.getCompanyId(), null);
        List<Dept> deptList = deptService.getDeptByUserType(null);
        if (null != deptList) {
            indexData.setDeptNum(deptList.size());
        }
@@ -202,7 +286,7 @@
        List<GroupDeptData> list = new ArrayList<>();
        GroupDeptData deptData;
        List<Dept> deptList = deptService.getDeptData();
        List<Dept> deptList = deptService.getDeptByUserType(null);
        if (null != deptList && !deptList.isEmpty()) {
            List<Depot> depotList;
            for (Dept dept : deptList) {
@@ -295,7 +379,7 @@
                namePieChart.put(dicArea.getCode(), dicArea.getName());
            }
        }
        List<Dept> deptList = deptService.getDeptData();
        List<Dept> deptList = deptService.getDeptByUserType(null);
        if (null != deptList && !deptList.isEmpty()) {
            //库区总数
            groupGisData.setDeptNum(deptList.size());