| | |
| | | import com.doumee.core.wms.model.response.WmsInventoryDataResponse; |
| | | import com.doumee.core.wms.model.response.WmsInventoryJsonResponse; |
| | | import com.doumee.dao.business.*; |
| | | import com.doumee.dao.business.join.PlatformWarnEventJoinMapper; |
| | | import com.doumee.dao.business.join.VisitsJoinMapper; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.web.reqeust.CarsJobAndContractDTO; |
| | |
| | | import com.doumee.service.business.impl.VisitsServiceImpl; |
| | | import com.doumee.service.business.third.BoardService; |
| | | import com.doumee.service.business.third.WmsService; |
| | | import com.github.xiaoymin.knife4j.core.util.CollectionUtils; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.lang3.StringUtils; |
| | |
| | | @Autowired |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | @Autowired |
| | | private PlatformWarnEventMapper platformWarnEventMapper; |
| | | private PlatformWarnEventJoinMapper platformWarnEventJoinMapper; |
| | | @Autowired |
| | | private PlatformJobMapper platformJobMapper; |
| | | @Autowired |
| | |
| | | public List<PlatformGroupFinishVO> platformGroupFinish(){ |
| | | List<PlatformGroupFinishVO> data = new ArrayList<>(); |
| | | List<PlatformGroup> groups = platformGroupMapper.selectJoinList(PlatformGroup.class, new MPJLambdaWrapper<PlatformGroup>() |
| | | .select("(select sum(a.TOTAL_NUM) from platform_job a where a.PLATFORM_GROUP_ID=t.id and a.isdeleted=0 and a.status in(6,9,10) and to_days(a.done_date) = to_days(now()))",PlatformGroup::getOrtherTotalNum) |
| | | .select("(select sum(case when a.total_num is null then ( select sum(pwd.IO_QTY) from platform_wms_detail pwd where pwd.JOB_ID = a.id ) else a.total_num end) from platform_job a where a.PLATFORM_GROUP_ID=t.id and a.isdeleted=0 and a.status in(6,9,10) and to_days(a.done_date) = to_days(now()))",PlatformGroup::getOrtherTotalNum) |
| | | //.select("(select sum(a.TOTAL_NUM) from platform_job a where a.PLATFORM_GROUP_ID=t.id and a.isdeleted=0 and a.status in(6,9,10) and to_days(a.done_date) = to_days(now()))",PlatformGroup::getOrtherTotalNum) |
| | | |
| | | //.select(" case when t.total_num is null then ( select sum(pwd.IO_QTY) from platform_wms_detail pwd where pwd.JOB_ID = t.id ) else t.total_num end ioQty ") |
| | | .selectAll(PlatformGroup.class) |
| | | .eq(PlatformGroup::getIsdeleted,Constants.ZERO) |
| | | ); |
| | |
| | | public CarWorkSituationVO carWorkSituation(int limit){ |
| | | CarWorkSituationVO carWorkSituationVO = new CarWorkSituationVO(); |
| | | List<PlatformLog> platformLogList = platformLogMapper.selectList(new QueryWrapper<PlatformLog>().lambda() |
| | | .like(PlatformLog::getCreateDate,DateUtil.getCurrDate()) |
| | | .orderByDesc(PlatformLog::getCreateDate) |
| | | .last(" limit "+limit) |
| | | ); |
| | |
| | | request.setSorts(new ArrayList<>()); |
| | | RuleEventFiledOptionsRequest file = new RuleEventFiledOptionsRequest(); |
| | | file.setFieldName("event_type"); |
| | | file.setFieldValue("131588");//安防告警 |
| | | file.setFieldValue("131588,131593");//安防告警和人员告警 |
| | | file.setType("in"); |
| | | if(type == 1){ |
| | | file.setFieldValue("131588");//安防告警 |
| | | }else if(type == 2){ |
| | | |
| | | }else if(type ==2){ |
| | | |
| | | file.setFieldValue("131593");//人员告警 |
| | | } |
| | | request.getFiledOptions().add(file); |
| | | SortRequest sort = new SortRequest(); |
| | |
| | | alarmDataVO.setProcessingNum(Constants.formatIntegerNum(response.getData().getUnHandedAlarmNum())); |
| | | alarmDataVO.setStartDate(start); |
| | | alarmDataVO.setEndDate(end); |
| | | }else{ |
| | | alarmDataVO.setTotalNum(Constants.ZERO); |
| | | alarmDataVO.setRealNum(Constants.ZERO); |
| | | alarmDataVO.setErrNum(Constants.ZERO); |
| | | alarmDataVO.setLiftNum(Constants.ZERO); |
| | | alarmDataVO.setProcessingNum(Constants.ZERO); |
| | | alarmDataVO.setStartDate(start); |
| | | alarmDataVO.setEndDate(end); |
| | | } |
| | | return alarmDataVO; |
| | | } |
| | |
| | | data.setDangerDealedNum(totalNum !=null?totalNum.intValue():0);//今日处理隐患数量 |
| | | return data; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 消防 温湿度数据 |
| | | */ |
| | | @Override |
| | | public List<TemperatureHumidityDataVO> getTemperatureHumidityData(){ |
| | | TemperatureHumidityDataRequest request = new TemperatureHumidityDataRequest(); |
| | | List<TemperatureHumidityDataVO> temperatureHumidityDataVOList = new ArrayList<>(); |
| | | request.setPageNo(1); |
| | | request.setPageSize(100); |
| | | request.setParentIndexCode(systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.TEMPERATURE_HUMIDITY).getCode()); |
| | | BaseResponse<BaseListPageResponse<TemperatureHumidityDataResponse>> response = HKService.temperatureHumidityDataStatistic(request); |
| | | if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){ |
| | | List<TemperatureHumidityDataResponse> temperatureHumidityDataResponseList = response.getData().getList(); |
| | | |
| | | if(CollectionUtils.isNotEmpty(temperatureHumidityDataResponseList)){ |
| | | Set<String> parentIndexCode = new HashSet<String>(temperatureHumidityDataResponseList.stream().map( |
| | | i->i.getIndexCode().replace("@0","").replace("@1","") |
| | | ).collect(Collectors.toList())); |
| | | for (String code:parentIndexCode) { |
| | | List<TemperatureHumidityDataResponse> dateList = |
| | | temperatureHumidityDataResponseList.stream().filter(i->i.getIndexCode().indexOf(code)>=Constants.ZERO).collect(Collectors.toList()); |
| | | TemperatureHumidityDataVO temperatureHumidityDataVO = new TemperatureHumidityDataVO(); |
| | | for (TemperatureHumidityDataResponse data:dateList) { |
| | | if(data.getSensorType().equals("temp")){ |
| | | temperatureHumidityDataVO.setTemperatureData(data); |
| | | }else{ |
| | | temperatureHumidityDataVO.setHumidityData(data); |
| | | } |
| | | } |
| | | temperatureHumidityDataVOList.add(temperatureHumidityDataVO); |
| | | } |
| | | } |
| | | } |
| | | return temperatureHumidityDataVOList; |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 用电总能耗同比、环比和区域用电量集合 |
| | | * @return |
| | |
| | | 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))))); |
| | | .add(carbonWater.multiply(new BigDecimal(0.91)))).divide(new BigDecimal(1000),2,BigDecimal.ROUND_HALF_UP)); |
| | | return data; |
| | | |
| | | } |
| | |
| | | data.setRingPercent("0"); |
| | | data.setSecondRegionDataList(new ArrayList<>()); |
| | | } |
| | | return data; |
| | | if(data.getSecondRegionDataList()!=null && data.getSecondRegionDataList().size()>1){ |
| | | int index =-1; |
| | | for (int i = 0; i <data.getSecondRegionDataList().size() ; i++) { |
| | | RegionTopPowerResponse t=data.getSecondRegionDataList().get(i); |
| | | if(Constants.formatBigdecimal(t.getPercent()).compareTo(new BigDecimal(1)) == 0){ |
| | | index =i; |
| | | break; |
| | | } |
| | | } |
| | | if(index>-1){ |
| | | data.getSecondRegionDataList().remove(index);//删除根节点数据 |
| | | } |
| | | } |
| | | |
| | | return data; |
| | | } |
| | | /** |
| | | * 近12个水电气油耗数据统计 |
| | |
| | | VisitDataVO result = new VisitDataVO(); |
| | | result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>() |
| | | .eq(Visits::getIsdeleted,Constants.ZERO) |
| | | .apply("to_days(create_date)=to_days(now()") |
| | | .apply("to_days(create_date)=to_days(now())") |
| | | .in(Visits::getStatus,Constants.VisitStatus.pass,Constants.VisitStatus.xfSuccess )));//待访问 |
| | | result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>() |
| | | .eq(Visits::getIsdeleted,Constants.ZERO) |
| | | .apply("to_days(create_date)=to_days(now()") |
| | | .apply("to_days(create_date)=to_days(now())") |
| | | .in(Visits::getStatus,Constants.VisitStatus.signout,Constants.VisitStatus.signin )));//已登记 |
| | | result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>() |
| | | .eq(Visits::getIsdeleted,Constants.ZERO) |
| | | .apply("to_days(create_date)=to_days(now()") |
| | | .apply("to_days(create_date)=to_days(now())") |
| | | .in(Visits::getStatus,Constants.VisitStatus.signout )));//已签离 |
| | | /*PageWrap<Visits> pageWrap = new PageWrap<>(); |
| | | pageWrap.setCapacity(10); |
| | |
| | | (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) |
| | | &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.outTruck)).count() |
| | | ); |
| | | data.setVideoPluginUrl(getVideoUrl()); |
| | | return data; |
| | | } |
| | | |
| | | private String getVideoUrl() { |
| | | return systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode()+"plugin/VideoWebPlugin.exe"; |
| | | } |
| | | |
| | | private void getParkingCarsNum(SecurityBoardVO data) { |
| | |
| | | List<PlatformJob> jobList = platformJobMapper.selectJoinList(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>() |
| | | .selectAll( PlatformJob.class) |
| | | .select("( select pl.CREATE_DATE from platform_log pl where t.id = pl.obj_id and pl.OBJ_TYPE = "+Constants.PlatformJobLogType.WORKING.getKey()+" order by pl.CREATE_DATE desc limit 1 ) as newStartDate") |
| | | .select(" (select sum(ifnull(pl.IO_QTY , 0 )) from platform_wms_detail pl where pl.job_id = t.id and pl.isdeleted=0 )",PlatformJob::getWorkNum) |
| | | //.select(" ( select sum(ifnull(pl.IO_QTY , 0 )) from platform_wms_detail pl where pl.job_id = t.id and pl.isdeleted=0 )",PlatformJob::getWorkNum) |
| | | .select(" ( case when t.total_num is null then ( select sum(pwd.IO_QTY) from platform_wms_detail pwd where pwd.JOB_ID = t.id ) else t.total_num end )",PlatformJob::getWorkNum) |
| | | .apply("to_days(t.create_date) = to_days(now())") |
| | | .eq(Platform::getIsdeleted, Constants.ZERO) |
| | | .in(PlatformJob ::getStatus,new Integer[]{Constants.PlatformJobStatus.WORKING.getKey(),Constants.PlatformJobStatus.CALLED.getKey() }) |
| | |
| | | } |
| | | @Override |
| | | public List<PlatformWarnEvent> warningList(int limit){ |
| | | List<PlatformWarnEvent> platformLogList = platformWarnEventMapper.selectList(new QueryWrapper<PlatformWarnEvent>().lambda() |
| | | List<PlatformWarnEvent> platformLogList = platformWarnEventJoinMapper |
| | | .selectJoinList(PlatformWarnEvent.class,new MPJLambdaWrapper<PlatformWarnEvent>() |
| | | .selectAll(PlatformWarnEvent.class) |
| | | .selectAs(Platform::getName,PlatformWarnEvent::getPlatformName) |
| | | .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) |
| | | .eq(PlatformWarnEvent::getIsdeleted,Constants.ZERO) |
| | | .apply("to_days(create_date) = to_days(now())") |
| | | .apply("to_days(t.create_date) = to_days(now())") |
| | | .orderByDesc(PlatformWarnEvent::getCreateDate) |
| | | .last(" limit "+limit) |
| | | ); |
| | |
| | | if( Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.IN_WAIT.getKey())){ |
| | | data.setSignedNum(data.getSignedNum()+Constants.formatIntegerNum(model.getCountum())); |
| | | data.setReservationCar(data.getReservationCar()+Constants.formatIntegerNum(model.getCountum())); |
| | | data.setLineUpCar(data.getLineUpCar()+Constants.formatIntegerNum(model.getCountum())); |
| | | } |
| | | //已叫号(预约车、签到数、已叫号) |
| | | if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.CALLED.getKey()) ){ |
| | | data.setSignedNum(data.getSignedNum()+Constants.formatIntegerNum(model.getCountum())); |
| | | data.setReservationCar(data.getReservationCar()+Constants.formatIntegerNum(model.getCountum())); |
| | | data.setCalledNum(data.getCalledNum()+Constants.formatIntegerNum(model.getCountum())); |
| | | data.setLineUpCar(data.getLineUpCar()+Constants.formatIntegerNum(model.getCountum())); |
| | | } |
| | | // 作业车辆(预约车、签到数、已叫号、作业车) |
| | | if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WORKING.getKey())){ |
| | |
| | | } |
| | | |
| | | } |
| | | |
| | | data.setVideoPluginUrl(getVideoUrl()); |
| | | String indexCodes = systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.HK_CHANGNEI_SCREEN_INDEXCODES).getCode(); |
| | | if(StringUtils.isNotBlank(indexCodes)){ |
| | | data.setVideoIndexCodes(indexCodes.split(",")); |
| | | } |
| | | } |
| | | |
| | | return data; |