From db0f521bf51f96029090ebc01dfa96fc163127a1 Mon Sep 17 00:00:00 2001 From: liukangdong <898885815@qq.com> Date: 星期五, 15 十一月 2024 18:29:03 +0800 Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java | 475 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 439 insertions(+), 36 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java index 0be4d8b..05fef7f 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java @@ -2,31 +2,35 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.haikang.model.HKConstants; import com.doumee.core.haikang.model.param.BaseListPageResponse; import com.doumee.core.haikang.model.param.BaseResponse; import com.doumee.core.haikang.model.param.BaseListPageRequest; -import com.doumee.core.haikang.model.param.request.RuleEventFiledOptionsRequest; -import com.doumee.core.haikang.model.param.request.RuleEventSearchRequest; -import com.doumee.core.haikang.model.param.request.SecureDevStatusTotalRequest; -import com.doumee.core.haikang.model.param.request.SensorStatusListRequest; +import com.doumee.core.haikang.model.param.request.*; import com.doumee.core.haikang.model.param.respose.*; import com.doumee.core.haikang.service.HKService; import com.doumee.core.model.ApiResponse; +import com.doumee.core.model.PageData; +import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.*; +import com.doumee.dao.business.join.VisitsJoinMapper; import com.doumee.dao.business.model.*; +import com.doumee.dao.system.model.SystemDictData; import com.doumee.dao.web.reqeust.SavePlatformWarnEventDTO; import com.doumee.dao.web.response.platformReport.*; import com.doumee.service.business.impl.PlatformJobServiceImpl; +import com.doumee.service.business.impl.VisitsServiceImpl; import com.doumee.service.business.third.BoardService; import com.github.yulichang.wrapper.MPJLambdaWrapper; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.checkerframework.checker.units.qual.C; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -45,6 +49,10 @@ @Autowired private PlatformLogMapper platformLogMapper; @Autowired + private PlatformWaterGasMapper platformWaterGasMapper; + @Autowired + private SystemDictDataBiz systemDictDataBiz; + @Autowired private PlatformWarnEventMapper platformWarnEventMapper; @Autowired private PlatformJobMapper platformJobMapper; @@ -52,6 +60,10 @@ private PlatformWmsDetailMapper platformWmsDetailMapper; @Autowired private PlatformMapper platformMapper; + @Autowired + private VisitsJoinMapper visitsJoinMapper; + @Autowired + private RetentionMapper retentionMapper; @Autowired private PlatformGroupMapper platformGroupMapper; /** @@ -93,7 +105,9 @@ return data; } private void initReginCameralList(List<PageRegionInfoResponse> allList,String name) { - List<CarmeraListVO> carmeraListVOList = cameraList(null); + CarmeraListVO re = new CarmeraListVO(); + re.setName(name); + List<CarmeraListVO> carmeraListVOList = cameraList(re); if(carmeraListVOList!=null && carmeraListVOList.size()>0){ for(PageRegionInfoResponse p : allList){ for(CarmeraListVO c : carmeraListVOList){ @@ -176,13 +190,15 @@ List<CarmeraListVO> data = new ArrayList<>(); for(PageCameraInfoResponse p : allList){ - CarmeraListVO t = new CarmeraListVO(); - t.setIndexCode(p.getCameraIndexCode()); - t.setReginCode(p.getRegionIndexCode()); - t.setName(p.getCameraName()); - t.setStatus(p.getStatus()); - t.setStatusName(p.getStatusName()); - data.add(t); + if(StringUtils.isBlank(req.getName()) ||StringUtils.contains(p.getCameraName(),req.getName())){ + CarmeraListVO t = new CarmeraListVO(); + t.setIndexCode(p.getCameraIndexCode()); + t.setReginCode(p.getRegionIndexCode()); + t.setName(p.getCameraName()); + t.setStatus(p.getStatus()); + t.setStatusName(p.getStatusName()); + data.add(t); + } } return data; } @@ -299,7 +315,10 @@ @Override public List<SecurityDeviceDataVO> securityDeviceData(){ List<SecurityDeviceDataVO> list = new ArrayList<>(); - BaseResponse<List<SecureDevStatusListResponse>> result = HKService.getSecureDevStatusList(new SecureDevStatusTotalRequest()) ; + SecureDevStatusTotalRequest request =new SecureDevStatusTotalRequest(); + request.setIncludeBool(""); + request.setRegionIds(new String[]{}); + BaseResponse<List<SecureDevStatusListResponse>> result = HKService.getSecureDevStatusList(request) ; if(result!=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) && result.getData()!=null){ List<SecureDevStatusListResponse> rlist = result.getData(); for(SecureDevStatusListResponse r :rlist){ @@ -324,32 +343,432 @@ return list; } @Override - public List<WaningEventDataVO> warningEventData(Integer type){ - List<WaningEventDataVO> list = new ArrayList<>(); + public WaningEventDataVO warningEventData(Integer type){ + WaningEventDataVO lastResult = new WaningEventDataVO(); + List<WaningEventDataListVO> list = new ArrayList<>(); RuleEventSearchRequest request = new RuleEventSearchRequest(); + request.setPageNo(1); + request.setPageSize(10); request.setFiledOptions(new ArrayList<>()); + request.setSorts(new ArrayList<>()); RuleEventFiledOptionsRequest file = new RuleEventFiledOptionsRequest(); file.setFieldName("event_type"); file.setFieldValue("131588");//瀹夐槻鍛婅 - file.setType("eq"); + file.setType("in"); request.getFiledOptions().add(file); - BaseResponse< RuleEventSearchResponse> result = HKService.ruleEventSearch(request); + SortRequest sort = new SortRequest(); + sort.setSortField("happen_time"); + sort.setSortType("desc"); + request.getSorts().add(sort); + BaseResponse<BaseListPageResponse< RuleEventSearchDataResponse>> result = HKService.ruleEventSearch(request); if(result!=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) && result.getData()!=null){ List<RuleEventSearchDataResponse> rlist = result.getData().getList(); + lastResult.setTotal(result.getData().getTotal()); if(rlist!=null){ + String privateIp =systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.EVENT_FILES_PRIVATE_DOMAIN).getCode(); + String publicIp =systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.EVENT_FILES_PUBLIC_DOMAIN).getCode(); for(RuleEventSearchDataResponse r :rlist){ - WaningEventDataVO data = new WaningEventDataVO(); + WaningEventDataListVO data = new WaningEventDataListVO(); data.setAddr(r.getSrc_name()); data.setImg(r.getImage_url()); + if(data.getImg()!=null){ + data.setImg(data.getImg().replace(privateIp,publicIp)); + } data.setTitle(r.getEvent_type_name()); - data.setCreateDate(r.getCreate_time()); + data.setCreateDate(DateUtil.getPlusTime(DateUtil.getISO8601DateByStr(r.getHappen_time()))); // data.setContent(r.get); list.add(data); } } } - return list; + lastResult.setList(list); + return lastResult; + } + @Override + public String getCarmeraPreviemUrl(CarmeraListVO param){ + CameraPreviewURLsRequest request = new CameraPreviewURLsRequest(); + request.setCameraIndexCode(param.getIndexCode()); + BaseResponse<CamerasPreviewURLsResponse> result = HKService.cameraPreviewURLs(request); + if(result!=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) && result.getData()!=null){ + return result.getData().getUrl(); + + } + return null; + } + @Override + public List<EnergyDataVO> loadEnergyCurve(){ + List<EnergyDataVO> loadCurveList = new ArrayList<>(); + try { + BaseResponse<List<EnergyTodayLoadDataResponse>> response = HKService.energyTodayLoadData(); + if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) || response.getData()==null ){ + for (EnergyTodayLoadDataResponse model :response.getData()) { + EnergyDataVO data = new EnergyDataVO(); + data.setTimeData(model.getName()); + data.setEnergy(new BigDecimal(model.getName())); + loadCurveList.add(data); + } + } + }catch (Exception e){ + e.printStackTrace(); + } + return loadCurveList; + } + @Override + public List<OilDataVO> energyLastMonthOilSort(){ + List<OilDataVO> oilDataVOList = new ArrayList<>(); + //涓婃湀娌硅�� + List<PlatformWaterGas> list = platformWaterGasMapper.selectList(new QueryWrapper<PlatformWaterGas>().lambda() + .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO) + .eq(PlatformWaterGas::getType,Constants.TWO) + .apply("DATE_FORMAT(time_info, '%Y-%m') = DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 MONTH), '%Y-%m')") + .orderByDesc(PlatformWaterGas::getNum) + .last("limit 30" ) + ); + for (PlatformWaterGas model :list) { + OilDataVO oilDataVO = new OilDataVO(); + oilDataVO.setCarNo(model.getCarCode()); + oilDataVO.setQuantity(model.getNum()); + oilDataVOList.add(oilDataVO); + } + return oilDataVOList; + } + + /** + * 鐢ㄧ數鎬昏兘鑰楀悓姣斻�佺幆姣斿拰鍖哄煙鐢ㄧ數閲忛泦鍚� + * @return + */ + @Override + public EnergyBoardVO centerEnergyData(){ + EnergyBoardVO data = new EnergyBoardVO(); + Random random = new Random(); + PlatformWaterGas smoke= platformWaterGasMapper.selectOne(new QueryWrapper<PlatformWaterGas>() + .select("sum(num) as num") + .lambda() + .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO) + .eq(PlatformWaterGas::getType,Constants.THREE) + .apply("year(time_info) = year(now())") + .last("limit 1 " )); + + data.setSmokeBoxTotal(0); + if(smoke!=null){ + data.setSmokeBoxTotal(Constants.formatBigdecimal(smoke.getNum()).intValue());//褰撳勾鐑熺鏁� + } + BigDecimal carbonGas = new BigDecimal(0);//鏈湀鐢ㄦ皵 + BigDecimal carbonWater = new BigDecimal(0);//鏈湀鐢ㄦ按 + BigDecimal carbonElec = new BigDecimal(0);//鐢ㄧ數 + + data.setTodayElectricity(getDefaultData());//浠婃棩鐢ㄧ數 + data.setElectricityQuantity(getDefaultData());//涓婃湀鐢ㄧ數 + data.setWaterQuantity(getDefaultData());//涓婃湀鐢ㄦ按 + data.setGasQuantity(getDefaultData());//涓婃湀鐢ㄦ皵 + data.setMonthElectricity(getDefaultData());//鏈湀鐢ㄧ數 + data.setYesterdayElectricity(getDefaultData());//鏄ㄦ棩鐢ㄧ數 + getMonthElectricityData(data.getMonthElectricity());//閫氳繃瀹夐槻骞宠幏鍙栨湰鏈堟暟鎹� + carbonElec = new BigDecimal(StringUtils.defaultString(data.getMonthElectricity().getTotal(), "0")); + getLastMonthElectricityData(data.getElectricityQuantity());//閫氳繃瀹夐槻骞宠幏鍙栦笂鏈堟暟鎹� + String firstDate = DateUtil.getFirstDayOfThisMonth() +" 00:00:00"; + Date month0 = DateUtil.getDateFromString(firstDate); + Date month1 = DateUtil.increaseMonth(month0,-1);//涓婃湀 + Date month2 = DateUtil.increaseMonth(month0,-2);//涓婁笂鏈� + Date month3 = DateUtil.increaseMonth(month0,-12);//鍘诲勾鍚屾湀 + + List<PlatformWaterGas> list = platformWaterGasMapper.selectList(new QueryWrapper<PlatformWaterGas>() + .lambda() + .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO) + .in(PlatformWaterGas::getType,Constants.ZERO,Constants.ONE) + .in(PlatformWaterGas::getTimeInfo,month0,month1,month3,month2) + ); + + if(list!=null){ + //绫诲瀷 0鐢ㄦ按 1鐢ㄦ皵 2鐢ㄦ补 + for(PlatformWaterGas model : list){ + if(Constants.equalsInteger(model.getType(),Constants.ONE)){ + if(model.getTimeInfo().getTime() == month0.getTime()){ + carbonGas = Constants.formatBigdecimal(model.getNum()); + } + if(model.getTimeInfo().getTime() == month1.getTime()){ + data.getGasQuantity().setTotalNum(Constants.formatBigdecimal(model.getNum()) ); + data.getGasQuantity().setTotal(Constants.formatBigdecimal(model.getNum())+""); + } + if(model.getTimeInfo().getTime() == month2.getTime()){ + data.getGasQuantity().setSameNum(Constants.formatBigdecimal(model.getNum()) ); + } + if(model.getTimeInfo().getTime() == month3.getTime()){ + data.getGasQuantity().setRingNum(Constants.formatBigdecimal(model.getNum()) ); + } + + }else if(Constants.equalsInteger(model.getType(),Constants.ZERO)){ + if(model.getTimeInfo().getTime() == month0.getTime()){ + carbonWater = Constants.formatBigdecimal(model.getNum()); + } + if(model.getTimeInfo().getTime() == month1.getTime()){ + data.getWaterQuantity().setTotalNum(Constants.formatBigdecimal(model.getNum()) ); + data.getWaterQuantity().setTotal(Constants.formatBigdecimal(model.getNum())+""); + } + if(model.getTimeInfo().getTime() == month2.getTime()){ + data.getWaterQuantity().setSameNum(Constants.formatBigdecimal(model.getNum()) ); + } + if(model.getTimeInfo().getTime() == month3.getTime()){ + data.getWaterQuantity().setRingNum(Constants.formatBigdecimal(model.getNum()) ); + } + } + } + } + if( data.getGasQuantity().getTotalNum().compareTo(new BigDecimal(0)) !=0){ + //璁$畻鐢ㄦ皵鍚屾瘮鐜瘮 + data.getGasQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getSameNum().divide(data.getGasQuantity().getTotalNum())).doubleValue()*100 +""); + data.getGasQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getRingNum().divide(data.getGasQuantity().getTotalNum())).doubleValue()*100 +""); + } + if( data.getWaterQuantity().getTotalNum().compareTo(new BigDecimal(0)) !=0){ + // //璁$畻鐢ㄦ按鍚屾瘮鐜瘮 + data.getWaterQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getSameNum().divide(data.getWaterQuantity().getTotalNum())).doubleValue()*100 +""); + data.getWaterQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getRingNum().divide(data.getWaterQuantity().getTotalNum())).doubleValue()*100 +""); + } + + /*璁$畻纰虫帓閲忥紝浠ヤ笅涓変釜鍥犵礌涔嬪拰 + 1)鐢ㄧ數鐨勪簩姘у寲纰虫帓鏀鹃噺(kg)=鑰楃數閲�(kWh)x0.785锛� + 2) 澶╃劧姘斾簩姘у寲纰虫帓鏀鹃噺(kg)=澶╃劧姘斾娇鐢ㄩ噺(m3)脳0.19锛� + 3) 鑷潵姘翠簩姘у寲纰虫帓鏀鹃噺(kg)=鑷潵姘翠娇鐢ㄩ噺(m3)脳0.91锛�*/ + data.setCarbon(Constants.formatBigdecimal2Float((carbonElec.multiply(new BigDecimal(0.785))) + .add(carbonGas.multiply(new BigDecimal(0.19))) + .add(carbonWater.multiply(new BigDecimal(0.91))))); + return data; + + } + + /** + * 閫氳繃瀹夐槻骞宠幏鍙栨湰鏈堟暟鎹� + * @param data + */ + private void getMonthElectricityData(EnergyModelDataVO data) { + BaseResponse<MonthDataByMeterTypeResponse> response = HKService.getCurrentMonthDataByMeterType("1"); + if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){ + data.setRingRate(StringUtils.defaultString(response.getData().getRingPercent(),"0")); + data.setSameRate(StringUtils.defaultString(response.getData().getSamePercent(),"0")); + data.setTotal(StringUtils.defaultString(response.getData().getValue(),"0")); + } + } + + /** + * 閫氳繃瀹夐槻骞宠幏鍙栦笂鏈堟暟鎹� + * @param data + */ + private void getLastMonthElectricityData(EnergyModelDataVO data) { + BaseResponse<LastMonthFeeByMeterTypeResponse> response = HKService.lastMonthFeeByMeterType("1"); + if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){ + data.setRingRate(StringUtils.defaultString(response.getData().getRingPercent(),"0")); + data.setSameRate(StringUtils.defaultString(response.getData().getSamePercent(),"0")); + data.setTotal(StringUtils.defaultString(response.getData().getValue(),"0")); + } + } + + private EnergyModelDataVO getDefaultData() { + EnergyModelDataVO data = new EnergyModelDataVO(); + data.setTotal("0"); + data.setSameRate("0"); + data.setRingRate("0"); + data.setTotalNum(new BigDecimal(0)); + data.setSameNum(new BigDecimal(0)); + data.setRingNum(new BigDecimal(0)); + return data; + } + + /** + * 鐢ㄧ數鎬昏兘鑰楀悓姣斻�佺幆姣斿拰鍖哄煙鐢ㄧ數閲忛泦鍚� + * @return + */ + @Override + public RegionEnergyListResponse energyRegionData(){ + RegionEnergyListResponse data = null; + BaseResponse<RegionEnergyListResponse> response = HKService.regionEnergyList("1"); + if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){ + data = response.getData(); + } + if(data == null){ + data = new RegionEnergyListResponse(); + data.setSecondRegionDataList(new ArrayList<>()); + data.setRootValue("0"); + data.setSamePercent("0"); + data.setRingPercent("0"); + data.setSecondRegionDataList(new ArrayList<>()); + } + return data; + + } + /** + * 杩�12涓按鐢垫皵娌硅�楁暟鎹粺璁� + * @param type + * @return + */ + @Override + public List<EnergyDataVO> energyDataList(Integer type){ + List<EnergyDataVO> energyDataVOList = new ArrayList<>(); + List<OilDataVO> oilDataVOList = new ArrayList<>(); + Date lastMonth = DateUtil.increaseMonth(new Date(),-11); + if(type >=0 && type <=2){ + //鐢ㄦ按鐢ㄧ數鐢ㄦ皵 + List<PlatformWaterGas> list = platformWaterGasMapper.selectList(new QueryWrapper<PlatformWaterGas>() + .select("DATE_FORMAT(TIME_INFO,'yyyy-MM') as time_info_str,sum(num) as num") + .lambda() + .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO) + .eq(PlatformWaterGas::getType,type) + .apply("time_info BETWEEN DATE_SUB(CURDATE(), INTERVAL 12 MONTH) AND CURDATE()")//杩�12涓湀 + .last(" groupby DATE_FORMAT(TIME_INFO,'yyyy-MM')") + ); + for (int i = 0; i < 12; i++) { + Date tempDate = DateUtil.increaseMonth(lastMonth,i); + EnergyDataVO data = new EnergyDataVO(); + data.setTimeData(DateUtil.getFomartDate(tempDate,"YYYY-MM")); + data.setEnergy(new BigDecimal(0)); + if(list!=null){ + for(PlatformWaterGas m : list){ + if(StringUtils.equals(m.getTimeInfoStr(),data.getTimeData())){ + data.setEnergy(Constants.formatBigdecimal(m.getNum())); + } + } + } + energyDataVOList.add(data); + } + }else{ + for (int i = 0; i < 12; i++) { + Date tempDate = DateUtil.increaseMonth(lastMonth,i); + EnergyDataVO data = new EnergyDataVO(); + data.setTimeData(DateUtil.getFomartDate(tempDate,(i+1)+"鏈�")); + data.setEnergy(new BigDecimal(0)); + energyDataVOList.add(data); + } + //濡傛灉鏄敤鐢垫暟鎹� + EnergyTrendRequest param = new EnergyTrendRequest(); + param.setDate(DateUtil.getFomartDate(new Date(),"yyyy"));//骞翠唤 + param.setMeterType(1); + param.setNodeType(2); + param.setNodeId("root000000"); + param.setPeriodType("year"); + BaseResponse<EnergyTrendResponse> response = HKService.energyTrend(param); + if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null&& response.getData().getYvalues()!=null ){ + for (int i = 0; i < 12; i++) { + if(response.getData().getYvalues().size()>0 &&response.getData().getYvalues().get(0).getValue().length>i){ + //鍙栫浉搴旂殑鍙傛暟鍊� + energyDataVOList.get(0).setEnergy(new BigDecimal(response.getData().getYvalues().get(0).getValue()[i])); + } + } + + } + } + return energyDataVOList; + } + @Override + public VisitDataVO visitSecurityData(){ + //寰呰闂�佸凡鐧昏銆佸凡绂诲紑 + + VisitDataVO result = new VisitDataVO(); + result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>() + .eq(Visits::getIsdeleted,Constants.ZERO) + .in(Visits::getStatus,Constants.VisitStatus.pass,Constants.VisitStatus.xfSuccess )));//寰呰闂� + result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>() + .eq(Visits::getIsdeleted,Constants.ZERO) + .in(Visits::getStatus,Constants.VisitStatus.signout,Constants.VisitStatus.signin )));//宸茬櫥璁� + result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>() + .eq(Visits::getIsdeleted,Constants.ZERO) + .in(Visits::getStatus,Constants.VisitStatus.signout )));//宸茬绂� + PageWrap<Visits> pageWrap = new PageWrap<>(); + pageWrap.setCapacity(10); + pageWrap.setPage(1); + pageWrap.setModel(new Visits()); + pageWrap.getModel().setLevelStatus(Constants.ZERO); + pageWrap.getModel().setStatus(Constants.TWO); + PageData<Visits> visitsPageData = VisitsServiceImpl.retentionPageBiz(pageWrap,visitsJoinMapper,systemDictDataBiz); + List<VisitRetentionDataVO> list = new ArrayList<>(); + if(visitsPageData !=null && visitsPageData.getRecords() !=null && visitsPageData.getRecords().size()>0){ + for (Visits model : visitsPageData.getRecords()) { + VisitRetentionDataVO data = new VisitRetentionDataVO(); + data.setName(model.getName()); + data.setCompanyName(model.getCompanyName()); + data.setTimeOutMinute(Constants.formatIntegerNum(model.getTimeOut())); + list.add(data); + } + result.setRetentionNum(visitsPageData.getTotal()); + } + result.setVisitRetentionDataList(list);//璁垮婊炵暀鏁版嵁闆嗗悎 + return result; + + } + @Override + public SecurityBoardVO centerSecurityData(){ + + + SecurityBoardVO data = new SecurityBoardVO(); + getParkingCarsNum(data);//鑾峰彇杞︿綅鏁版嵁 + List<Retention> retentionList = retentionMapper.selectJoinList(Retention.class, + new MPJLambdaWrapper<Retention>() + .selectAll(Retention.class) + .selectAs(Company::getType,Retention::getCompanyType) + .leftJoin(Company.class,Company::getId,Retention::getCompanyId) + ); + + //浠婃棩鍦ㄥ洯浜烘暟 + data.setInParkTotal( + (int) retentionList.stream().filter(i->!Constants.equalsInteger(i.getType(),Constants.THREE)).count() + ); + //鍦ㄥ洯闀挎湡鐩稿叧鏂逛汉鏁� + data.setInternalTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.TWO) && Constants.equalsInteger(i.getCompanyType(),Constants.ZERO)).count() + ); + //鍦ㄥ洯璁垮鏁伴噺 + data.setVisitTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&Objects.isNull(i.getCompanyType())).count() + ); + //鍦ㄥ洯杞﹁締 + data.setInternalCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE)).count() + ); + //鍦ㄥ洯鐩稿叧鏂硅溅杈� + data.setRelatedCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.relation)).count() + ); + //鍐呴儴杞﹁締 + data.setInternalCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.internal)).count() + ); + //鏉ヨ杞﹁締 + data.setVisitCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.visitor)).count() + ); + //鑷敱鐗╂祦杞︽暟閲� + data.setVisitCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.selfTruck)).count() + ); + //甯傚叕鍙稿嵏璐ц溅鏁伴噺 + data.setInternalJobCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.cityComTruck)).count() + ); + //澶栧崗杞︽暟閲� + data.setRelatedJobCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.outTruck)).count() + ); + return data; + } + + private void getParkingCarsNum(SecurityBoardVO data) { + try { + BaseResponse<ParkingStatisticResponse> response = HKService.getParkingStatistics(); + if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) || response.getData()==null + ||response.getData().getTodayParkingDataDto() == null){ + return; + } + data.setParkingLotTotal(Constants.formatIntegerNum(response.getData().getTodayParkingDataDto().getTotalPlace()));//鎬昏溅浣� + data.setFreeParkingLot(Constants.formatIntegerNum(response.getData().getTodayParkingDataDto().getLeftPlace()));//鍓╀綑杞︿綅 + data.setParkingUseRate(Constants.formatBigdecimal(response.getData().getTodayParkingDataDto().getUseRate()));//杞︿綅浣跨敤鐜� + }catch (Exception e){ + + } } @Override @@ -361,22 +780,6 @@ .eq(Platform::getIsdeleted, Constants.ZERO) .orderByAsc(Platform::getSortnum) ); - /** - * WAIT_CONFIRM(0, "寰呯‘璁�","寰呯‘璁�" ), - * WART_SIGN_IN(1, "寰呯鍒�","寰呯鍒�" ), - * WAIT_CALL(2, "宸茬鍒�","宸茬鍒�"), - * IN_WAIT(3, "鍏ュ洯绛夊緟","鍏ュ洯绛夊緟" ), - * CALLED(4, "宸插彨鍙�","宸插彨鍙�" ), - * WORKING(5, "浣滀笟涓�","浣滀笟涓�" ), - * DONE(6, "浣滀笟瀹屾垚 ","浣滀笟瀹屾垚" ), - * TRANSFERING(7, "杞Щ涓�","杞Щ涓�" ), - * EXCEPTION(8, "寮傚父鎸傝捣","寮傚父鎸傝捣" ), - * AUTHED_LEAVE(9, "宸叉巿鏉冪鍥�","宸叉巿鏉冪鍥�" ), - * LEAVED(10, "宸茬鍥� ","宸茬鍥� " ), - * OVER_NUMBER(11, "宸茶繃鍙�","宸茶繃鍙�" ), - * CANCEL(12, "宸插彇娑�","宸插彇娑�" ), - */ - if(platformList!=null && platformList.size()>0){ List<PlatformJob> jobList = platformJobMapper.selectJoinList(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>() .selectAll( PlatformJob.class) -- Gitblit v1.9.3