| | |
| | | package com.doumee.service.business.impl.thrid; |
| | | |
| | | 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.cars.response.CarsDeviceDetaisResponse; |
| | | import com.doumee.core.haikang.model.param.BaseListPageRequest; |
| | | 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.*; |
| | | import com.doumee.core.haikang.model.param.respose.*; |
| | | import com.doumee.core.haikang.service.HKCarOpenService; |
| | | 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.core.wms.model.response.WmsBaseResponse; |
| | | 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.VisitsJoinMapper; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.system.model.SystemDictData; |
| | | import com.doumee.dao.web.reqeust.CarsJobAndContractDTO; |
| | | 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.doumee.service.business.third.WmsService; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.lang3.ObjectUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.checkerframework.checker.units.qual.C; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | public class BoardServiceImpl implements BoardService { |
| | | @Autowired |
| | | private PlatformLogMapper platformLogMapper; |
| | | @Autowired |
| | | private WmsService wmsService; |
| | | @Autowired |
| | | private HiddenDangerMapper hiddenDangerMapper; |
| | | @Autowired |
| | |
| | | private RetentionMapper retentionMapper; |
| | | @Autowired |
| | | private PlatformGroupMapper platformGroupMapper; |
| | | /** |
| | | * 获取区域树形结构数据 |
| | | * @return |
| | | */ |
| | | @Override |
| | | public BoardStockListVO stockList( ){ |
| | | BoardStockListVO data = new BoardStockListVO(); |
| | | double toatalNum = 1d; |
| | | BigDecimal num = new BigDecimal(0); |
| | | List<GeneralVO> list = new ArrayList<>(); |
| | | try { |
| | | toatalNum =Double.parseDouble(systemDictDataBiz.queryByCode(Constants.WMS_PARAM,Constants.WMS_TOTAL_STOCK_NUM).getCode()) ; |
| | | }catch (Exception e){ |
| | | |
| | | } |
| | | WmsBaseResponse<WmsInventoryDataResponse> response = wmsService.getInventoryList(); |
| | | if(response!=null && response.getData()!=null && response.getData().size()>=0){ |
| | | List<WmsInventoryJsonResponse> t= response.getData().get(0).getJson(); |
| | | if(t!=null &&t.size()>0){ |
| | | for(WmsInventoryJsonResponse j :t){ |
| | | num = num.add (Constants.formatBigdecimal( j.getQty())); |
| | | GeneralVO d = new GeneralVO(); |
| | | d.setNum(Constants.formatBigdecimal(j.getQty())); |
| | | d.setName(j.getItem_name()); |
| | | list.add(d); |
| | | } |
| | | } |
| | | } |
| | | data.setStockList(list); |
| | | data.setNum(num); |
| | | if(toatalNum<=0){ |
| | | toatalNum =1; |
| | | } |
| | | data.setTotalNum(new BigDecimal(toatalNum)); |
| | | data.setUseRate(data.getTotalNum().divide(data.getNum(),2,BigDecimal.ROUND_UP)); |
| | | return data; |
| | | |
| | | } |
| | | /** |
| | | * 获取区域树形结构数据 |
| | | * @return |
| | |
| | | file.setFieldName("event_type"); |
| | | file.setFieldValue("131588");//安防告警 |
| | | file.setType("in"); |
| | | if(type == 1){ |
| | | |
| | | }else if(type ==2){ |
| | | |
| | | } |
| | | request.getFiledOptions().add(file); |
| | | SortRequest sort = new SortRequest(); |
| | | sort.setSortField("happen_time"); |
| | |
| | | public List<TransportMeasureVO> transportMeasure(Integer queryType){ |
| | | List<TransportMeasureVO> list = new ArrayList<>(); |
| | | Random random = new Random(); |
| | | List<String> dayList = DateUtil.getBeforDays(new Date(),7); |
| | | List<Date> dayList = DateUtil.getDateListBeforDays(new Date(),7);//近7天 |
| | | if(Constants.equalsInteger(queryType,Constants.ONE)){ |
| | | dayList = DateUtil.getBeforDays(new Date(),30); |
| | | dayList = DateUtil.getThisMonthDateList();//本月天数 |
| | | }else if(Constants.equalsInteger(queryType,Constants.TWO)){ |
| | | dayList = DateUtil.getBeforMonth(new Date(),12); |
| | | dayList = DateUtil.getThisYearMonthList();//本年月份 |
| | | } |
| | | |
| | | |
| | | for (String str:dayList) { |
| | | List<PlatformJob> dataList = platformJobMapper.selectJoinList(PlatformJob.class, |
| | | new MPJLambdaWrapper<PlatformJob>() |
| | | .selectAs(PlatformJob::getId,PlatformJob::getId) |
| | | .selectAs(PlatformJob::getTotalNum,PlatformJob::getTotalNum) |
| | | // .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date) |
| | | .eq(PlatformJob::getIsdeleted,Constants.ZERO) |
| | | .apply(queryType==0,"to_days(create_date) >= to_days(now()) -7") |
| | | .apply(queryType==1,"year(create_date) = year(now()) and month(create_date) = month(now())") |
| | | .apply(queryType==2,"year(create_date) = year(now())")); |
| | | for (Date date : dayList) { |
| | | TransportMeasureVO data = new TransportMeasureVO(); |
| | | data.setPlanDate(str); |
| | | data.setPlanTimes(random.nextInt(200)); |
| | | data.setPlanTaskNum(new BigDecimal(random.nextInt(1000))); |
| | | data.setFinishTaskNum(new BigDecimal(data.getPlanTaskNum().intValue())); |
| | | data.setPlanDate(date); |
| | | data.setPlanTimes(0); |
| | | data.setPlanTaskNum(new BigDecimal(random.nextInt(0))); |
| | | data.setFinishTaskNum(new BigDecimal(0)); |
| | | for(PlatformJob job :dataList){ |
| | | if(queryType == 2){ |
| | | if(DateUtil.formatDate(date,"yyyy-MM").equals(DateUtil.formatDate(job.getCreateDate(),"yyyy-MM"))){ |
| | | data.setPlanTimes( data.getPlanTimes() +1); |
| | | data.setPlanTaskNum( data.getPlanTaskNum().add(Constants.formatBigdecimal(job.getTotalNum()))); |
| | | if(Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.DONE.getKey()) |
| | | ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.LEAVED.getKey()) |
| | | ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())){ |
| | | //完成数 |
| | | data.setFinishTaskNum( data.getFinishTaskNum().add(Constants.formatBigdecimal(job.getTotalNum()))); |
| | | } |
| | | } |
| | | }else{ |
| | | if(DateUtil.formatDate(date,"yyyy-MM-dd").equals(DateUtil.formatDate(job.getCreateDate(),"yyyy-MM-dd"))){ |
| | | data.setPlanTimes( data.getPlanTimes() +1); |
| | | data.setPlanTaskNum( data.getPlanTaskNum().add(Constants.formatBigdecimal(job.getTotalNum()))); |
| | | if(Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.DONE.getKey()) |
| | | ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.LEAVED.getKey()) |
| | | ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())){ |
| | | //完成数 |
| | | data.setFinishTaskNum( data.getFinishTaskNum().add(Constants.formatBigdecimal(job.getTotalNum()))); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | list.add(data); |
| | | } |
| | | return list; |
| | |
| | | new MPJLambdaWrapper<PlatformJob>() |
| | | .selectAs(PlatformJob::getId,PlatformJob::getId) |
| | | .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum) |
| | | .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty) |
| | | // .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date) |
| | | .eq(PlatformJob::getIsdeleted,Constants.ZERO) |
| | | // .in(PlatformJob::getType,Constants.ONE,Constants.THREE) |
| | | .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()) |
| | |
| | | List<PlatformJob> monthLastNum = platformJobMapper.selectJoinList(PlatformJob.class, |
| | | new MPJLambdaWrapper<PlatformJob>() |
| | | .selectAs(PlatformJob::getId,PlatformJob::getId) |
| | | .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty) |
| | | // .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date) |
| | | .eq(PlatformJob::getIsdeleted,Constants.ZERO) |
| | | .in(PlatformJob::getType,Constants.ONE,Constants.THREE) |
| | | .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()) |
| | |
| | | .selectAs(PlatformJob::getId,PlatformJob::getId) |
| | | .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum) |
| | | .selectCount(PlatformJob::getPlatformId,PlatformJob::getCountum) |
| | | .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty) |
| | | // .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date) |
| | | .eq(PlatformJob::getIsdeleted,Constants.ZERO) |
| | | .in(PlatformJob::getType,Constants.ONE,Constants.THREE) |
| | | .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()) |
| | |
| | | new MPJLambdaWrapper<PlatformJob>() |
| | | .selectAs(PlatformJob::getId,PlatformJob::getId) |
| | | .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum) |
| | | .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty) |
| | | // .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date) |
| | | .eq(PlatformJob::getIsdeleted,Constants.ZERO) |
| | | .in(PlatformJob::getType,Constants.ONE,Constants.THREE) |
| | | .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()) |
| | |
| | | .selectAs(PlatformJob::getStatus,PlatformJob::getStatus) |
| | | .selectAs(PlatformJob::getType,PlatformJob::getType) |
| | | .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum) |
| | | .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty) |
| | | // .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date) |
| | | .eq(PlatformJob::getIsdeleted,Constants.ZERO) |
| | | .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey(),Constants.PlatformJobStatus.CALLED.getKey()) |
| | | .apply(" and to_days(create_date) <to_days(now())")); |
| | |
| | | .selectAs(PlatformJob::getStatus,PlatformJob::getStatus) |
| | | .selectAs(PlatformJob::getType,PlatformJob::getType) |
| | | .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum) |
| | | .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty) |
| | | // .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date) |
| | | .eq(PlatformJob::getIsdeleted,Constants.ZERO) |
| | | .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey()) |
| | | .apply("year(create_date) = year("+DateUtil.getPlusTime2(lastYear)+") and to_days(create_date)<= "+DateUtil.getPlusTime2(lastYear))); |
| | |
| | | ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()))){ |
| | | continue; |
| | | } |
| | | if(Constants.formatBigdecimal(job.getIoQty()).compareTo(new BigDecimal(0)) >0){ |
| | | r.add( job.getIoQty()); |
| | | }else{ |
| | | // if(Constants.formatBigdecimal(job.getIoQty()).compareTo(new BigDecimal(0)) >0){ |
| | | // r.add( job.getIoQty()); |
| | | // }else{ |
| | | r.add(Constants.formatBigdecimal(job.getTotalNum())); |
| | | } |
| | | // } |
| | | } |
| | | return Constants.formatBigdecimal0Float(r); |
| | | } |
| | |
| | | VisitDataVO result = new VisitDataVO(); |
| | | result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>() |
| | | .eq(Visits::getIsdeleted,Constants.ZERO) |
| | | .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()") |
| | | .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()") |
| | | .in(Visits::getStatus,Constants.VisitStatus.signout )));//已签离 |
| | | PageWrap<Visits> pageWrap = new PageWrap<>(); |
| | | /*PageWrap<Visits> pageWrap = new PageWrap<>(); |
| | | pageWrap.setCapacity(10); |
| | | pageWrap.setPage(1); |
| | | pageWrap.setModel(new Visits()); |
| | |
| | | list.add(data); |
| | | } |
| | | result.setRetentionNum(visitsPageData.getTotal()); |
| | | }*/ |
| | | |
| | | String code= systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.TIMEOUT_WARNING).getCode(); |
| | | MPJLambdaWrapper<Visits> queryWrapper = new MPJLambdaWrapper<>(); |
| | | queryWrapper.selectAll(Visits.class); |
| | | queryWrapper.selectAs(Member::getName,Visits::getReceptMemberName); |
| | | queryWrapper.select("TIMESTAMPDIFF( MINUTE, NOW(), t.OUT_DATE) AS timeOut"); |
| | | queryWrapper.selectAs(Company::getName,Visits::getReceptMemberDepartment); |
| | | queryWrapper.leftJoin(Member.class,Member::getId,Visits::getReceptMemberId); |
| | | queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId); |
| | | queryWrapper.leftJoin(" member m on m.id= t.MEMBER_ID"); |
| | | queryWrapper.eq(Visits::getStatus,Constants.VisitStatus.signin); |
| | | queryWrapper.apply(" TIMESTAMPDIFF( MINUTE, NOW(), t.OUT_DATE) <= "+code+" "); |
| | | queryWrapper.ne("m.type ",Constants.TWO); |
| | | queryWrapper.eq(Visits::getIsdeleted,Constants.ZERO); |
| | | queryWrapper.orderByDesc(Visits::getEditDate); |
| | | List<Visits> vr = visitsJoinMapper.selectList(queryWrapper); |
| | | result.setVisitRetentionDataList(new ArrayList<>());//访客滞留数据集合 |
| | | if(vr!=null&&vr!=null){ |
| | | vr.stream().forEach(s ->{ |
| | | VisitRetentionDataVO t = new VisitRetentionDataVO(); |
| | | t.setName(s.getName()); |
| | | t.setCompanyName(s.getCompanyName()); |
| | | t.setTimeOutMinute(s.getTimeOut()); |
| | | result.getVisitRetentionDataList().add(t); |
| | | }); |
| | | } |
| | | result.setVisitRetentionDataList(list);//访客滞留数据集合 |
| | | return result; |
| | | |
| | | } |
| | | @Override |
| | | public SecurityBoardVO centerSecurityData(){ |
| | | |
| | | |
| | | SecurityBoardVO data = new SecurityBoardVO(); |
| | | getParkingCarsNum(data);//获取车位数据 |
| | |
| | | (int) retentionList.stream().filter(i->!Constants.equalsInteger(i.getType(),Constants.THREE)).count() |
| | | ); |
| | | //在园长期相关方人数 |
| | | data.setInternalTotal( |
| | | data.setRelatedTotal( |
| | | (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.TWO) && Constants.equalsInteger(i.getCompanyType(),Constants.ZERO)).count() |
| | | ); |
| | | //在园内部员工人数 |
| | | data.setInternalTotal( |
| | | (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.TWO) && Constants.equalsInteger(i.getCompanyType(),Constants.ONE)).count() |
| | | ); |
| | | //在园访客数量 |
| | | data.setVisitTotal( |
| | |
| | | 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) |
| | | // .select("(select sum(ifnull(a.io_qty,0)) from platform_wms_detail a where a.isdeleted=0 and a.job_id =t.id )", create_date) |
| | | .apply("to_days(t.create_date) = to_days(now())") |
| | | .eq(Platform::getIsdeleted, Constants.ZERO) |
| | | .in(PlatformJob::getStatus, Constants.PlatformJobStatus.DONE.getKey() |