fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java
@@ -17,7 +17,10 @@
import javax.annotation.Resource;
import java.text.DecimalFormat;
import java.util.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.LinkedHashMap;
import java.util.List;
/**
 * @Description
@@ -128,6 +131,7 @@
    /**
     * 获取库区封装信息
     *
     * @param companyId
     * @return
     */
@@ -135,7 +139,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) {
@@ -153,14 +157,14 @@
                    for (Depot depot : depotList) {
                        deptData.setDepotNumber(deptData.getDepotNumber() + 1);
                        if(StringUtils.isNotBlank(depot.getPledgeBank())){
                        if (StringUtils.isNotBlank(depot.getPledgeBank())) {
                            deptData.setDepotBankNumber(deptData.getDepotBankNumber() + 1);
                        }
                        if(null == depot.getStorageReal()){
                        if (null == depot.getStorageReal()) {
                            depot.setStorageReal(0.0);
                        }
                        deptData.setStorageNum(deptData.getStorageNum() + depot.getStorageReal()/1000);
                        deptData.setStorageNum(deptData.getStorageNum() + depot.getStorageReal() / 1000);
                    }
                }
@@ -176,7 +180,7 @@
                        if (Constant.TYPE_IN.equals(inoutRecord.getType())) {
                            deptData.setInNum(deptData.getInNum() + 1);
                        }
                        if (Constant.TYPE_OUT.equals(inoutRecord.getType())){
                        if (Constant.TYPE_OUT.equals(inoutRecord.getType())) {
                            deptData.setOutNum(deptData.getOutNum() + 1);
                        }
@@ -192,16 +196,17 @@
    /**
     * 获取库区下监控信息
     *
     * @param param
     * @return
     */
    public PageResponse<List<Camera>> cameraList(IgdsBaseParam param) {
        if(StringUtils.isBlank(param.getDeptId())){
        if (StringUtils.isBlank(param.getDeptId())) {
            return new PageResponse<>(RespCodeEnum.CODE_2000, null);
        }
        if (StringUtils.isBlank(param.getCompanyId())){
        if (StringUtils.isBlank(param.getCompanyId())) {
            param.setCompanyId(ContextUtil.getCompanyId());
        }
@@ -225,7 +230,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());
        }
@@ -240,26 +245,26 @@
            //用于统计分品种库存
            LinkedHashMap<String, Double> varietyMap = new LinkedHashMap<>();
            for (Depot depot : depotList) {
                if(StringUtils.isNotBlank(depot.getPledgeBank())){
                if (StringUtils.isNotBlank(depot.getPledgeBank())) {
                    indexData.setDepotBankNum(indexData.getDepotBankNum() + 1);
                }
                if(null == depot.getStorageReal()){
                if (null == depot.getStorageReal()) {
                    depot.setStorageReal(0.0);
                }
                if(StringUtils.isNotBlank(depot.getStoreType()) && "2".equals(depot.getStoreType())){
                    packFoodSum += depot.getStorageReal()/1000;
                }else {
                    foodSum += depot.getStorageReal()/1000;
                if (StringUtils.isNotBlank(depot.getStoreType()) && "2".equals(depot.getStoreType())) {
                    packFoodSum += depot.getStorageReal() / 1000;
                } else {
                    foodSum += depot.getStorageReal() / 1000;
                }
                if(depot.getStorageReal() > 0){
                    if(StringUtils.isBlank(depot.getFoodVariety())){
                if (depot.getStorageReal() > 0) {
                    if (StringUtils.isBlank(depot.getFoodVariety())) {
                        //设置为其他品类
                        depot.setFoodVariety("9999000");
                    }
                    varietyMap.putIfAbsent(depot.getFoodVariety(), 0.000);
                    varietyMap.put(depot.getFoodVariety(), varietyMap.get(depot.getFoodVariety()) + NumberUtil.keepPrecision(depot.getStorageReal()/1000, 3));
                    varietyMap.put(depot.getFoodVariety(), varietyMap.get(depot.getFoodVariety()) + NumberUtil.keepPrecision(depot.getStorageReal() / 1000, 3));
                }
            }
@@ -279,6 +284,7 @@
    /**
     * 大屏首页-库区信息统计
     *
     * @param param
     * @return
     */
@@ -286,7 +292,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) {
@@ -304,14 +310,14 @@
                    for (Depot depot : depotList) {
                        deptData.setDepotNumber(deptData.getDepotNumber() + 1);
                        if(StringUtils.isNotBlank(depot.getPledgeBank())){
                        if (StringUtils.isNotBlank(depot.getPledgeBank())) {
                            deptData.setDepotBankNumber(deptData.getDepotBankNumber() + 1);
                        }
                        if(null == depot.getStorageReal()){
                        if (null == depot.getStorageReal()) {
                            depot.setStorageReal(0.0);
                        }
                        deptData.setStorageNum(deptData.getStorageNum() + depot.getStorageReal()/1000);
                        deptData.setStorageNum(deptData.getStorageNum() + depot.getStorageReal() / 1000);
                    }
                }
@@ -327,7 +333,7 @@
                        if (Constant.TYPE_IN.equals(inoutRecord.getType())) {
                            deptData.setInNum(deptData.getInNum() + 1);
                        }
                        if (Constant.TYPE_OUT.equals(inoutRecord.getType())){
                        if (Constant.TYPE_OUT.equals(inoutRecord.getType())) {
                            deptData.setOutNum(deptData.getOutNum() + 1);
                        }
@@ -341,10 +347,19 @@
                igdsParam.setStart(DateUtil.getNewByDay(new Date(), -6));
                igdsParam.setEnd(DateUtil.getNextZero(new Date()));
                List<EventInfo> enevtList = eventInfoService.getListByParam(igdsParam);
                if (null != enevtList && !enevtList.isEmpty()) {
                    deptData.setWarnNum7(enevtList.size());
                    for (EventInfo eventInfo : enevtList) {
                        if(DateFormatUtils.format(new Date(), "yyyyMMdd").equals(DateFormatUtils.format(eventInfo.getTime(), "yyyyMMdd"))){
                List<EventInfo> resultEnevtList = new ArrayList<>();
                for (EventInfo info : enevtList) {
                    //当标签包含 卡车, 或者包含大写的英文字母(代表有车牌)时,添加进result
                    if (StringUtils.isNotBlank(info.getTags())) {
                        if (info.getTags().contains("卡车") || info.getTags().matches(".*[A-Z].*")) {
                            resultEnevtList.add(info);
                        }
                    }
                }
                if (null != resultEnevtList && !resultEnevtList.isEmpty()) {
                    deptData.setWarnNum7(resultEnevtList.size());
                    for (EventInfo eventInfo : resultEnevtList) {
                        if (DateFormatUtils.format(new Date(), "yyyyMMdd").equals(DateFormatUtils.format(eventInfo.getTime(), "yyyyMMdd"))) {
                            deptData.setDailyTotal(deptData.getDailyTotal() + 1);
                        }
                    }
@@ -379,13 +394,13 @@
                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());
            for (Dept dept : deptList) {
                if (StringUtils.isBlank(dept.getXzqhdm()) || null == valuePieChart.get(dept.getXzqhdm())) {
                    if(null == valuePieChart.get("999999")){
                    if (null == valuePieChart.get("999999")) {
                        valuePieChart.put("999999", 0);
                        namePieChart.put("999999", "其他区县");
                    }
@@ -395,9 +410,9 @@
            }
        }
        if(groupGisData.getDeptNum() > 0){
        if (groupGisData.getDeptNum() > 0) {
            for (String mapKey : valuePieChart.keySet()) {
                groupGisData.getDeptList().add(new ChartPie(valuePieChart.get(mapKey) + "", namePieChart.get(mapKey), new DecimalFormat("0.0").format((double)valuePieChart.get(mapKey) / groupGisData.getDeptNum() * 100)));
                groupGisData.getDeptList().add(new ChartPie(valuePieChart.get(mapKey) + "", namePieChart.get(mapKey), new DecimalFormat("0.0").format((double) valuePieChart.get(mapKey) / groupGisData.getDeptNum() * 100)));
            }
        }
@@ -405,18 +420,18 @@
        List<Depot> depotList = depotService.getData(ContextUtil.getCompanyId(), ContextUtil.subDeptId(null), false);
        if (null != depotList && !depotList.isEmpty()) {
            for (Depot depot : depotList) {
                if(null == depot.getStorageReal()){
                if (null == depot.getStorageReal()) {
                    depot.setStorageReal(0.0);
                }
                groupGisData.setSum(groupGisData.getSum() + depot.getStorageReal());
                if(StringUtils.isNotBlank(depot.getPledgeBank())){
                if (StringUtils.isNotBlank(depot.getPledgeBank())) {
                    groupGisData.setBankSum(groupGisData.getBankSum() + depot.getStorageReal());
                }else{
                } else {
                    groupGisData.setNormalSum(groupGisData.getNormalSum() + depot.getStorageReal());
                }
            }
        }
        if(groupGisData.getSum() > 0){
        if (groupGisData.getSum() > 0) {
            groupGisData.setSumPer(new DecimalFormat("0.00").format(groupGisData.getSum() / groupGisData.getSum() * 100L));
            groupGisData.setBankSumPer(new DecimalFormat("0.00").format(groupGisData.getBankSum() / groupGisData.getSum() * 100L));
            groupGisData.setNormalSumPer(new DecimalFormat("0.00").format(groupGisData.getNormalSum() / groupGisData.getSum() * 100L));
@@ -427,6 +442,7 @@
    /**
     * 大屏首页-抓拍跟踪信息
     *
     * @param param
     * @return
     */
@@ -436,13 +452,22 @@
        param.setEnd(new Date());
        List<SnapRecord> listSnap = snapRecordService.getListByParam(param);
        if (null != listSnap && !listSnap.isEmpty()) {
        List<SnapRecord> resultListSnap = new ArrayList<>();
        for (SnapRecord info : listSnap) {
            //当标签包含 卡车, 或者包含大写的英文字母(代表有车牌)时,添加进result
            if (StringUtils.isNotBlank(info.getTags())) {
                if (info.getTags().contains("卡车") || info.getTags().matches(".*[A-Z].*")) {
                    resultListSnap.add(info);
                }
            }
        }
        if (null != resultListSnap && !resultListSnap.isEmpty()) {
            //判断文件是否存在
            for (SnapRecord record : listSnap) {
                record.setImgName(commonManager.isImgExit( record.getImgName(), null));
            for (SnapRecord record : resultListSnap) {
                record.setImgName(commonManager.isImgExit(record.getImgName(), null));
            }
        }
        return new PageResponse<>(RespCodeEnum.CODE_0000, listSnap);
        return new PageResponse<>(RespCodeEnum.CODE_0000, resultListSnap);
    }
}