| | |
| | | |
| | | 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.SensorStatusListRequest; |
| | | import com.doumee.core.haikang.model.param.respose.PageCameraInfoResponse; |
| | | import com.doumee.core.haikang.model.param.respose.PageFireChannelInfoResponse; |
| | | import com.doumee.core.haikang.model.param.respose.PageRegionInfoResponse; |
| | | import com.doumee.core.haikang.model.param.respose.PageSensorStatusResponse; |
| | | 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.dao.business.PlatformJobMapper; |
| | | import com.doumee.dao.business.PlatformLogMapper; |
| | | import com.doumee.dao.business.PlatformMapper; |
| | | import com.doumee.dao.business.model.Platform; |
| | | import com.doumee.dao.business.model.PlatformJob; |
| | | import com.doumee.dao.web.response.platformReport.CarmeraListVO; |
| | | import com.doumee.dao.web.response.platformReport.OnSitDispatchBoardVO; |
| | | import com.doumee.dao.web.response.platformReport.RegionTreeVO; |
| | | 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; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.math.BigDecimal; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | @Autowired |
| | | private PlatformLogMapper platformLogMapper; |
| | | @Autowired |
| | | private PlatformWaterGasMapper platformWaterGasMapper; |
| | | @Autowired |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | @Autowired |
| | | private PlatformWarnEventMapper platformWarnEventMapper; |
| | | @Autowired |
| | | private PlatformJobMapper platformJobMapper; |
| | | @Autowired |
| | | private PlatformWmsDetailMapper platformWmsDetailMapper; |
| | | @Autowired |
| | | private PlatformMapper platformMapper; |
| | | @Autowired |
| | | private VisitsJoinMapper visitsJoinMapper; |
| | | @Autowired |
| | | private RetentionMapper retentionMapper; |
| | | @Autowired |
| | | private PlatformGroupMapper platformGroupMapper; |
| | | /** |
| | | * 获取区域树形结构数据 |
| | | * @return |
| | |
| | | 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){ |
| | | if(StringUtils.equals(p.getRegionIndexCode(),c.getReginCode()) |
| | | if(StringUtils.equals(p.getIndexCode(),c.getReginCode()) |
| | | && (StringUtils.contains(c.getName(),name) ||StringUtils.isBlank(name))){ |
| | | if(p.getCarmeraList()==null){ |
| | | p.setCarmeraList(new ArrayList<>()); |
| | |
| | | |
| | | 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; |
| | | } |
| | |
| | | return allList; |
| | | } |
| | | @Override |
| | | 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) |
| | | .selectAll(PlatformGroup.class) |
| | | .eq(PlatformGroup::getIsdeleted,Constants.ZERO) |
| | | ); |
| | | if(groups!=null && groups.size()>0){ |
| | | List<PlatformWmsDetail> jobList = platformWmsDetailMapper.selectJoinList(PlatformWmsDetail.class, new MPJLambdaWrapper<PlatformWmsDetail>() |
| | | .selectSum( PlatformWmsDetail::getIoQty) |
| | | .selectAs(PlatformGroup::getId, PlatformWmsDetail::getGroupId) |
| | | .leftJoin(PlatformJob.class,PlatformJob::getId,PlatformWmsDetail::getJobId) |
| | | .eq(PlatformWmsDetail::getIsdeleted, Constants.ZERO) |
| | | .eq(PlatformJob::getIsdeleted, Constants.ZERO) |
| | | .in(PlatformJob::getStatus, Constants.PlatformJobStatus.DONE.getKey() |
| | | , Constants.PlatformJobStatus.AUTHED_LEAVE.getKey() |
| | | , Constants.PlatformJobStatus.LEAVED.getKey()) |
| | | .apply("to_days(t1.create_date) = to_days(now())") |
| | | .groupBy(PlatformJob::getPlatformGroupId) |
| | | ); |
| | | for(PlatformGroup d : groups){ |
| | | PlatformGroupFinishVO t = new PlatformGroupFinishVO(); |
| | | if(jobList!=null){ |
| | | for(PlatformWmsDetail dd : jobList){ |
| | | if(Constants.equalsInteger(dd.getGroupId(),d.getId())){ |
| | | d.setTotalNum(dd.getIoQty()); |
| | | } |
| | | } |
| | | } |
| | | t.setFinishData(Constants.formatBigdecimal(d.getTotalNum()).intValue()+Constants.formatBigdecimal(d.getOrtherTotalNum()).intValue()); |
| | | t.setPlatformGroupName(d.getName()); |
| | | data.add(t); |
| | | } |
| | | } |
| | | |
| | | return data; |
| | | } |
| | | |
| | | @Override |
| | | public CarWorkSituationVO carWorkSituation(int limit){ |
| | | CarWorkSituationVO carWorkSituationVO = new CarWorkSituationVO(); |
| | | List<PlatformLog> platformLogList = platformLogMapper.selectList(new QueryWrapper<PlatformLog>().lambda() |
| | | .orderByDesc(PlatformLog::getCreateDate) |
| | | .last(" limit "+limit) |
| | | ); |
| | | carWorkSituationVO.setPlatformLogList(platformLogList); |
| | | return carWorkSituationVO; |
| | | } |
| | | @Override |
| | | public List<SecurityDeviceDataVO> securityDeviceData(){ |
| | | List<SecurityDeviceDataVO> list = new ArrayList<>(); |
| | | 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){ |
| | | SecurityDeviceDataVO data = new SecurityDeviceDataVO(); |
| | | data.setDeviceType(r.getDevTypeName()); |
| | | data.setOnlineNum(r.getOnlineCount()); |
| | | data.setOfflineDeviceNum(r.getOfflineCount()); |
| | | data.setTotalNum(data.getOnlineNum() + data.getOfflineDeviceNum() ); |
| | | list.add(data); |
| | | } |
| | | } |
| | | /* |
| | | Random random = new Random(); |
| | | for (int i = 1; i <= 3; i++) { |
| | | SecurityDeviceDataVO data = new SecurityDeviceDataVO(); |
| | | data.setDeviceType("设备类型_"+i); |
| | | data.setOnlineNum(random.nextInt(10)); |
| | | data.setOfflineDeviceNum(random.nextInt(10)); |
| | | data.setTotalNum(data.getOnlineNum() + data.getOfflineDeviceNum() ); |
| | | list.add(data); |
| | | }*/ |
| | | return list; |
| | | } |
| | | @Override |
| | | 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("in"); |
| | | request.getFiledOptions().add(file); |
| | | 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){ |
| | | 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(DateUtil.getPlusTime(DateUtil.getISO8601DateByStr(r.getHappen_time()))); |
| | | // data.setContent(r.get); |
| | | list.add(data); |
| | | } |
| | | } |
| | | |
| | | } |
| | | 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());//通过安防平获取上月用电量数据 |
| | | getCurrentDateElectircityData(data.getTodayElectricity(),0);//通过安防平获取今日用电量数据 |
| | | getCurrentDateElectircityData(data.getYesterdayElectricity(),-1);//通过安防平获取昨日用电量数据 |
| | | String firstDate = DateUtil.getFirstDayCurrentMonth() +" 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(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +""); |
| | | data.getGasQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getRingNum().divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +""); |
| | | } |
| | | if( data.getWaterQuantity().getTotalNum().compareTo(new BigDecimal(0)) !=0){ |
| | | // //计算用水同比环比 |
| | | data.getWaterQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getSameNum().divide(data.getWaterQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +""); |
| | | data.getWaterQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getRingNum().divide(data.getWaterQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).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")); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 通过安防平获取今日用电量 |
| | | * @param data |
| | | */ |
| | | private void getCurrentDateElectircityData(EnergyModelDataVO data,int days) { |
| | | EnergyTrendRequest param = new EnergyTrendRequest(); |
| | | param.setDate(DateUtil.getFomartDate(DateUtil.addDaysToDate(new Date(),days),"yyyy-MM-dd"));//日期 |
| | | param.setMeterType(1); |
| | | param.setShowType("4"); |
| | | param.setNodeType(2); |
| | | param.setNodeId("root000000"); |
| | | param.setPeriodType("day"); |
| | | BigDecimal total = new BigDecimal(0); |
| | | 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 < response.getData().getYvalues().get(0).getValue().length; i++) { |
| | | total = total.add(new BigDecimal(StringUtils.defaultString( response.getData().getYvalues().get(0).getValue()[i],"0"))); |
| | | } |
| | | |
| | | } |
| | | data.setTotal(Constants.formatBigdecimal2Float(total).toString()); |
| | | } |
| | | |
| | | 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,'%Y-%m') 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(" group by DATE_FORMAT(TIME_INFO,'%Y-%m')") |
| | | ); |
| | | 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(i).setEnergy(new BigDecimal(StringUtils.defaultString(response.getData().getYvalues().get(0).getValue()[i],"0"))); |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | 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 |
| | | public List<PlatformWorkDataVO> platformWorkData(){ |
| | | |
| | | List<PlatformWorkDataVO> platformWorkDataVOList = new ArrayList<>(); |
| | | List<Platform> platformList = platformMapper.selectJoinList(Platform.class, new MPJLambdaWrapper<Platform>() |
| | | .selectAll( Platform.class) |
| | | .eq(Platform::getIsdeleted, Constants.ZERO) |
| | | .orderByAsc(Platform::getSortnum) |
| | | ); |
| | | if(platformList!=null && platformList.size()>0){ |
| | | 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) |
| | | .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() }) |
| | | .orderByDesc(PlatformJob::getStatus )); |
| | | //月台状态:0=作业中;1=空闲中;2=作业超时;3=叫号 |
| | | for(Platform model : platformList){ |
| | | PlatformWorkDataVO platformDurationVO = new PlatformWorkDataVO(); |
| | | platformDurationVO.setPlatformName(model.getName()); |
| | | platformDurationVO.setPlatformId(model.getId()); |
| | | platformDurationVO.setPlatformSort(model.getSortnum()); |
| | | PlatformJob job = getJobFromListById(model.getId(),jobList); |
| | | if(job != null){ |
| | | if(Constants.equalsInteger(job.getType(),Constants.ONE) || Constants.equalsInteger(job.getType(),Constants.THREE)){ |
| | | platformDurationVO.setWorkType(Constants.ONE);//如果是装货 |
| | | }else{ |
| | | platformDurationVO.setWorkType(Constants.ZERO);//如果是卸货 |
| | | } |
| | | Integer workMinute = Constants.formatBigdecimal(job.getWorkNum()).multiply(new BigDecimal(60)).divide(model.getWorkRate(),0,BigDecimal.ROUND_HALF_UP).intValue(); |
| | | Date overDate = DateUtil.getXMinuteAfterDate(job.getNewStartDate(),workMinute + model.getWorkTimeoutAlarmTime());//预计完成时间 |
| | | platformDurationVO.setFinishTimeStr(DateUtil.DateToStr(overDate,"HH:mm")); |
| | | |
| | | platformDurationVO.setWorkNum(Constants.formatBigdecimal(job.getWorkNum()).intValue()); |
| | | platformDurationVO.setCarNo(job.getCarCodeFront());//车牌号 |
| | | if(Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.CALLED.getKey() )){ |
| | | platformDurationVO.setStatus(Constants.THREE); //叫号中 |
| | | }else{ |
| | | platformDurationVO.setStatus(Constants.ZERO); //作业中 |
| | | platformDurationVO.setWorkTime(PlatformJobServiceImpl.getWorkTime(job,platformLogMapper));//已工作时间 |
| | | if(overDate.getTime() < System.currentTimeMillis() ){ |
| | | model.setStatus(Constants.TWO); //作业已超时 |
| | | } |
| | | } |
| | | }else{ |
| | | platformDurationVO.setStatus(Constants.ONE);//空闲中 |
| | | } |
| | | platformWorkDataVOList.add(platformDurationVO); |
| | | } |
| | | } |
| | | return platformWorkDataVOList; |
| | | } |
| | | |
| | | private PlatformJob getJobFromListById(Integer id, List<PlatformJob> jobList) { |
| | | if(jobList!=null){ |
| | | for(PlatformJob job :jobList){ |
| | | if(Constants.equalsInteger(job.getPlatformId(),id)){ |
| | | return job; |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | return null; |
| | | } |
| | | |
| | | /** |
| | | * |
| | | * @param type 查询类型:0=入库;1=出库 |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<WorkEfficiencyVO> workEfficiency(Integer type){ |
| | | //作业类型 0自有车卸货 1自有车装货 2外协车卸货 3外协车装货 4市公司外协车卸货 |
| | | List<WorkEfficiencyVO> workEfficiencyVOList = new ArrayList<>(); |
| | | List<PlatformJob> jobList = platformJobMapper.selectJoinList(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>() |
| | | .selectAll( PlatformJob.class) |
| | | .select("(select sum(ifnull(a.io_qty,0)) from platform_wms_detail a where a.isdeleted=0 and a.job_id =t.id )", PlatformJob::getIoQty) |
| | | .apply("to_days(t.create_date) = to_days(now())") |
| | | .eq(Platform::getIsdeleted, Constants.ZERO) |
| | | .in(PlatformJob::getStatus, Constants.PlatformJobStatus.DONE.getKey() |
| | | , Constants.PlatformJobStatus.AUTHED_LEAVE.getKey() |
| | | , Constants.PlatformJobStatus.LEAVED.getKey()) |
| | | .in(Constants.equalsInteger(type,Constants.ZERO),PlatformJob::getType,new Integer[]{0,2,4}) |
| | | .in(Constants.equalsInteger(type,Constants.ONE),PlatformJob::getType,new Integer[]{1,3}) |
| | | |
| | | ); |
| | | if(jobList==null || jobList.size()==0){ |
| | | return workEfficiencyVOList; |
| | | } |
| | | int curtotalNum = 0; |
| | | Date today = Utils.Date.getStart(new Date()); |
| | | long curTime=0, lastTime=0; |
| | | for (int i = 0; i < 8; i++) { |
| | | lastTime = curTime;//上次的时间 |
| | | int curHour = 8+(i*2); |
| | | curTime = curHour*60*60*1000 + today.getTime(); |
| | | WorkEfficiencyVO workEfficiencyVO = new WorkEfficiencyVO(); |
| | | workEfficiencyVO.setWorkTime(curHour+":00"); |
| | | workEfficiencyVO.setTotalWorkNum(0); |
| | | workEfficiencyVO.setWorkNum(0); |
| | | if(jobList!=null && jobList.size()>0){ |
| | | for(PlatformJob detail : jobList){ |
| | | if(detail.getDoneDate()!=null && detail.getDoneDate().getTime()<= curTime){ |
| | | //当前量 |
| | | if(detail.getDoneDate()!=null && detail.getDoneDate().getTime() > lastTime){ |
| | | //区间值 取实近2小时内的累计值 |
| | | workEfficiencyVO.setWorkNum(Constants.formatIntegerNum(workEfficiencyVO.getWorkNum())+Constants.formatBigdecimal(detail.getIoQty()).intValue() +Constants.formatBigdecimal(detail.getTotalNum()).intValue()); |
| | | //累积量 |
| | | } |
| | | } |
| | | } |
| | | curtotalNum += Constants.formatIntegerNum(workEfficiencyVO.getWorkNum()) ; |
| | | } |
| | | workEfficiencyVO.setTotalWorkNum(curtotalNum);//累计值 |
| | | workEfficiencyVOList.add(workEfficiencyVO); |
| | | } |
| | | return workEfficiencyVOList; |
| | | } |
| | | @Override |
| | | public List<PlatformDurationVO> platformDuration(){ |
| | | List<PlatformDurationVO> platformDurationList = new ArrayList<>(); |
| | | List<Platform> jobList = platformMapper.selectJoinList(Platform.class, new MPJLambdaWrapper<Platform>() |
| | | .selectAll( Platform.class) |
| | | .select(" (select ROUND( SUM(ifnull(pl.PARAM3,0)/60 ) , 2 ) from platform_log pl where pl.remark = t.id and to_days(pl.CREATE_DATE) =to_days(now()))",Platform::getWorkCountTime) |
| | | .eq(Platform::getIsdeleted, Constants.ZERO) |
| | | ); |
| | | if(jobList!=null){ |
| | | //按工作时长累计倒序排序 |
| | | Collections.sort(jobList, new Comparator<Platform>() { |
| | | @Override |
| | | public int compare(Platform o1, Platform o2) { |
| | | return Constants.formatBigdecimal(o2.getWorkCountTime()).intValue() - Constants.formatBigdecimal(o1.getWorkCountTime()).intValue(); |
| | | } |
| | | }); |
| | | for(Platform model : jobList){ |
| | | PlatformDurationVO data = new PlatformDurationVO(); |
| | | data.setPlatformId(model.getId()); |
| | | data.setPlatformName(model.getName()); |
| | | data.setWorkTotalTime(Constants.formatBigdecimal(model.getWorkCountTime()).intValue()); |
| | | platformDurationList.add(data); |
| | | } |
| | | } |
| | | |
| | | return platformDurationList; |
| | | } |
| | | @Override |
| | | public List<PlatformWarnEvent> warningList(int limit){ |
| | | List<PlatformWarnEvent> platformLogList = platformWarnEventMapper.selectList(new QueryWrapper<PlatformWarnEvent>().lambda() |
| | | .eq(PlatformWarnEvent::getIsdeleted,Constants.ZERO) |
| | | .apply("to_days(create_date) = to_days(now())") |
| | | .orderByDesc(PlatformWarnEvent::getCreateDate) |
| | | .last(" limit "+limit) |
| | | ); |
| | | return platformLogList; |
| | | } |
| | | @Override |
| | | public OnSitDispatchBoardVO getCnddCenterData(){ |
| | | OnSitDispatchBoardVO data = new OnSitDispatchBoardVO(); |
| | | //月台总数 |
| | |
| | | .selectAll(PlatformJob.class) |
| | | .select("count(id)" ,PlatformJob::getCountum) |
| | | .eq(PlatformJob::getIsdeleted,Constants.ZERO) |
| | | .apply("to_days(create_data) = to_days(now())" ) |
| | | .apply("to_days(create_date) = to_days(now())" ) |
| | | .groupBy(PlatformJob::getStatus ) |
| | | ); |
| | | if(jobList!=null){ |
| | |
| | | //-------------TODO----------【看板】爱确认需求-------------- |
| | | // * 0待确认 1待签到 2等待叫号 3入园等待 4已叫号 5作业中 6作业完成 7转移中 8异常挂起 9已授权离园 10已离园 11 已过号 12已取消 |
| | | for(PlatformJob model : jobList){ |
| | | //预约车辆 |
| | | if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WAIT_CONFIRM.getKey()) |
| | | ||Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WART_SIGN_IN.getKey())){ |
| | | //待确认 (预约车) |
| | | if( Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WAIT_CONFIRM.getKey())){ |
| | | data.setReservationCar(data.getReservationCar()+Constants.formatIntegerNum(model.getCountum())); |
| | | } |
| | | // 作业车辆 |
| | | //待签到(预约车) |
| | | if( Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WART_SIGN_IN.getKey())){ |
| | | data.setReservationCar(data.getReservationCar()+Constants.formatIntegerNum(model.getCountum())); |
| | | } |
| | | //等待叫号(预约车、签到数、排队车) |
| | | if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.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.IN_WAIT.getKey())){ |
| | | data.setSignedNum(data.getSignedNum()+Constants.formatIntegerNum(model.getCountum())); |
| | | data.setReservationCar(data.getReservationCar()+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())); |
| | | } |
| | | // 作业车辆(预约车、签到数、已叫号、作业车) |
| | | if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WORKING.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.setWorkedNum(data.getWorkedNum()+Constants.formatIntegerNum(model.getCountum())); |
| | | } |
| | | // 作业完成(预约车、签到数、已叫号、作业车、已完成) |
| | | if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.DONE.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.setWorkedNum(data.getWorkedNum()+Constants.formatIntegerNum(model.getCountum())); |
| | | data.setDoneNum(data.getDoneNum()+Constants.formatIntegerNum(model.getCountum())); |
| | | } |
| | | // 转移中(预约车、签到数、排队车) |
| | | if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.TRANSFERING.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.AUTHED_LEAVE.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.setWorkedNum(data.getWorkedNum()+Constants.formatIntegerNum(model.getCountum())); |
| | | data.setDoneNum(data.getDoneNum()+Constants.formatIntegerNum(model.getCountum())); |
| | | } |
| | | // 已离园 |
| | | if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.LEAVED.getKey())){ |
| | | data.setWorkingCar(data.getWorkingCar()+Constants.formatIntegerNum(model.getCountum())); |
| | | } |
| | | //排队车辆 |
| | | if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey()) |
| | | ||Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.IN_WAIT.getKey())){ |
| | | data.setLineUpCar(data.getLineUpCar()+Constants.formatIntegerNum(model.getCountum())); |
| | | // 已过号(预约车、签到数、排队车) |
| | | if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.OVER_NUMBER.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.CANCEL.getKey())){ |
| | | data.setReservationCar(data.getReservationCar()+Constants.formatIntegerNum(model.getCountum())); |
| | | } |
| | | |
| | | } |
| | | } |
| | | |