From c5cc7da07c7f202f336468c0cd0d2789b4775b03 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 09 十月 2024 11:31:15 +0800 Subject: [PATCH] 最新版本 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java | 92 ++++++++++++++++----------------------------- 1 files changed, 33 insertions(+), 59 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java index 56d8e4e..191e785 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java @@ -4,6 +4,7 @@ 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.BaseResponse; import com.doumee.core.haikang.model.param.request.ParkReservationAddRequest; import com.doumee.core.haikang.model.param.request.ParkReservationDelRequest; @@ -360,12 +361,30 @@ List<PlatformWmsDetail> platformWmsDetailList = platformWmsDetailMapper.selectList(new QueryWrapper<PlatformWmsDetail>().lambda() .eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO) .eq(PlatformWmsDetail::getJobId,platformJob.getId())); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformWmsDetailList)){ platformJob.setTotalNum( platformWmsDetailList.stream().map(m->m.getIoQty()).reduce(BigDecimal.ZERO,BigDecimal::add) ); platformWmsJob.setPlatformWmsDetailList(platformWmsDetailList); platformJob.setPlatformWmsJob(platformWmsJob); + + if(Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.zyczh) + || Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.wxczh)){ + + Integer unLockCount = platformWmsDetailList.stream().filter(i->Constants.equalsInteger(i.getLockStatus(),Constants.ZERO)).collect(Collectors.toList()).size(); + if(Constants.equalsInteger(unLockCount,Constants.ZERO)){ + platformJob.setLockStatus(Constants.TWO); //鍏ㄩ儴涓婇攣 + }else if(Constants.equalsInteger(unLockCount,platformWmsDetailList.size())){ + platformJob.setLockStatus(Constants.ZERO); //鏈笂閿� + }else{ + platformJob.setLockStatus(Constants.ONE); //閮ㄥ垎涓婇攣 + } + + } + + + } } } @@ -407,7 +426,7 @@ platformJob.setWaitTime(waitTime); } }else{ - platformJob.setWaitTime("绛夊緟鍙彿"); + platformJob.setWaitTime("棰勮绛夊緟锛�-灏忔椂-鍒嗛挓"); } }else if(Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.WORKING.getKey()) || Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.DONE.getKey())){ @@ -429,7 +448,6 @@ .ne(PlatformLog::getParam3,Constants.ZERO+"") .orderByDesc(PlatformLog::getCreateDate)); platformJob.setWorkTime(platformLogList.stream().map(m->Long.valueOf(m.getParam3())).reduce(Long.valueOf(0),Long::sum)); - } } @@ -462,7 +480,6 @@ //鏌ヨ鍓嶆柟鎺掗槦鏁伴噺 this.queryWaitNum(platformJob); } - driverHomeVO.setPlatformJobList(platformJobList); @@ -1519,42 +1536,34 @@ .eq(Platform::getStatus,Constants.ZERO) ); for (Platform platform:platformList) { - PlatformDataListResponse platformDataListResponse = new PlatformDataListResponse(); + PlatformDataListResponse platformDataListResponse = new PlatformDataListResponse(); platformDataListResponse.setId(platform.getId()); platformDataListResponse.setHkId(platform.getHkId()); platformDataListResponse.setName(platform.getName()); platformDataListResponse.setWorkStatus(Constants.ZERO); //鏌ヨ褰撳墠浣滀笟杞﹁締 -// PlatformJob platformJob = platformJobMapper.selectOne(new QueryWrapper<PlatformJob>() -// .select(" * , ( select pl.CREATE_DATE from platform_log pl where platform_job.id = pl.obj_id and pl.OBJ_TYPE = 5 order by pl.CREATE_DATE desc limit 1 ) as newStartDate ," + -// " case when platform_job.total_num is null then ( select sum(pwd.IO_QTY) from platform_wms_detail pwd where pwd.JOB_ID = platform_job.id ) else platform_job.total_num end workNum ") -// .eq("isdeleted",Constants.ZERO) -// .eq("status",Constants.PlatformJobStatus.WORKING.getKey()) -// .orderByDesc("START_DATE") -// .last(" limit 1") -// ); - PlatformJob platformJob = platformJobJoinMapper.selectJoinOne(PlatformJob.class,new MPJLambdaWrapper<PlatformJob>() + PlatformJob platformJob = platformJobJoinMapper.selectJoinOne(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>() .selectAll(PlatformJob.class) - .selectAs(Platform::getWorkRate,PlatformJob::getWorkRate) - .selectAs(Platform::getName,PlatformJob::getPlatformName) + .selectAs(Platform::getWorkRate, PlatformJob::getWorkRate) + .selectAs(Platform::getName, PlatformJob::getPlatformName) .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 workNum ") .select(" ( select pl.CREATE_DATE from platform_log pl where t.id = pl.obj_id and pl.OBJ_TYPE = 5 order by pl.CREATE_DATE desc limit 1 ) as newStartDate ") .select(" ( select pl.CREATE_DATE from platform_log pl where t.id = pl.obj_id and pl.OBJ_TYPE = 4 order by pl.CREATE_DATE desc limit 1 ) as newCallDate ") - .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) + .leftJoin(Platform.class, Platform::getId, PlatformJob::getPlatformId) .eq(PlatformJob::getStatus, Constants.PlatformJobStatus.WORKING.getKey()) - .eq(PlatformJob::getPlatformId,platform.getId()) + .eq(PlatformJob::getPlatformId, platform.getId()) .orderByDesc(PlatformJob::getStatus) .orderByDesc(PlatformJob::getStartDate) .last(" limit 1") ); - if(Objects.nonNull(platformJob)){ + if (Objects.nonNull(platformJob)) { platformDataListResponse.setCarCode(platformJob.getCarCodeFront()); platformDataListResponse.setWorkType( - Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.zycxh) - ||Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.wxcxh) - ||Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.sgscxh)?Constants.ZERO:Constants.ONE + Constants.equalsInteger(platformJob.getType(), Constants.platformJobType.zycxh) + || Constants.equalsInteger(platformJob.getType(), Constants.platformJobType.wxcxh) + || Constants.equalsInteger(platformJob.getType(), Constants.platformJobType.sgscxh) ? Constants.ZERO : Constants.ONE ); platformDataListResponse.setWorkStatus(Constants.ONE); //鏌ヨ浣滀笟鏃堕暱 @@ -1562,51 +1571,16 @@ this.getWorkTime(platformJob) ); //璁$畻宸蹭綔涓氭椂闀� 鏍规嵁鏈堝彴宸ヤ綔鏁堢巼 璁$畻浠诲姟閲忛渶瑕佹椂闂� - if(Objects.isNull(platformJob.getWorkNum()) || Objects.isNull(platformJob.getWorkRate())){ + if (Objects.isNull(platformJob.getWorkNum()) || Objects.isNull(platformJob.getWorkRate())) { platformDataListResponse.setFinishTime(null); - }else{ + } else { Integer workMinute = platformJob.getWorkNum().multiply(new BigDecimal(60)).divide(platformJob.getWorkRate()).intValue(); - Date overDate = DateUtil.getXMinuteAfterDate(platformJob.getNewStartDate(),workMinute); + Date overDate = DateUtil.getXMinuteAfterDate(platformJob.getNewStartDate(), workMinute); platformDataListResponse.setFinishTime(overDate); - } - try { - List<Platform> platformList = platformJoinMapper.selectList( - new MPJLambdaWrapper<Platform>().eq(Platform::getIsdeleted,Constants.ZERO) - .eq(Platform::getStatus,Constants.ZERO) - ); - for (Platform platform:platformList) { - PlatformDataListResponse platformDataListResponse = new PlatformDataListResponse(); - platformDataListResponse.setId(platform.getId()); - platformDataListResponse.setHkId(platform.getHkId()); - platformDataListResponse.setName(platform.getName()); - platformDataListResponse.setWorkStatus(Constants.ZERO); - //鏌ヨ褰撳墠浣滀笟杞﹁締 - PlatformJob platformJob = platformJobMapper.selectOne(new QueryWrapper<PlatformJob>().lambda() - .eq(PlatformJob::getIsdeleted,Constants.ZERO) - .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WORKING.getKey()) - .orderByDesc(PlatformJob::getWorkTime) - .last(" limit 1") - ); - if(Objects.nonNull(platformJob)){ - platformDataListResponse.setCarCode(platformJob.getCarCodeFront()); - platformDataListResponse.setWorkType( - Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.zycxh) - ||Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.wxcxh) - ||Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.sgscxh)?Constants.ZERO:Constants.ONE - ); - platformDataListResponse.setWorkStatus(Constants.ONE); - //鏌ヨ浣滀笟鏃堕暱 - platformDataListResponse.setWorkTime( - this.getWorkTime(platformJob) - ); } } platformDataListResponseList.add(platformDataListResponse); - }catch (Exception e){ - System.out.println("===============================鎶ラ敊鍟︼細\n"); - e.printStackTrace(); } - return platformDataListResponseList; } -- Gitblit v1.9.3