From 6af94c9f2deb77e97ccfca2c83c3c28dac534ae0 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期四, 10 十月 2024 18:57:48 +0800 Subject: [PATCH] 最新版本 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 77 ++++++++++++++++++++++++++++---------- 1 files changed, 57 insertions(+), 20 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java index 8dbd506..d9cf7a7 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java @@ -414,7 +414,7 @@ member.setLastVisitDate(updateVistis.getInDate()); member.setId(visits.getMemberId()); memberMapper.updateById(member); - }else if (Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.VISIT_SIGN_ICCM_OUT.getKey()) { + }else if (Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.VISIT_SIGN_ICCM_OUT.getKey()) { //濡傛灉鏄瀹㈢绂讳簨浠� updateVistis.setStatus(Constants.VisitStatus.signout); updateVistis.setInDate(DateUtil.getISO8601DateByStr(data.getBeginTime())); @@ -427,7 +427,6 @@ updateVistis.setEditDate(new Date()); //鏇存柊璁垮鏉ヨ鎴栬�呯绂绘椂闂翠俊鎭� visitsMapper.updateById(updateVistis) ; - } } private Retention getRetentionModelByVisitRequest(Visits visits, String happentTime,String srcType) { @@ -867,31 +866,42 @@ } //鍚勮溅閬撹溅杈嗙姸鎬� EventPlatformCarsStatusInfoRequest status = data.getHPVehicleStatus(); - eventList.add(initPlatformEventModel(request,data,status));//灏佽浜嬩欢锛堝凡鏈堝彴閫氶亾涓虹淮搴︼級 + PlatformEvent event = initPlatformEventModel(request,data,status); + if(StringUtils.isBlank(status.getPlateNo())){ + eventList.add(event);//灏佽浜嬩欢锛堝凡鏈堝彴閫氶亾涓虹淮搴︼級 + continue;//濡傛灉杞﹁締淇℃伅涓虹┖锛屼笉澶勭悊鐩存帴璺宠繃 + } PlatformDevice model = platformDeviceMapper.selectOne(new QueryWrapper<PlatformDevice>().lambda() .eq(PlatformDevice::getDeviceId,request.getSrcIndex()) .eq(PlatformDevice::getIsdeleted,Constants.ZERO) .last("limit 1")); if(model ==null){ + eventList.add(event);//灏佽浜嬩欢锛堝凡鏈堝彴閫氶亾涓虹淮搴︼級 continue;//鐩戞帶鐐规湭鍚屾锛岃烦杩囧鐞� } - if(StringUtils.isBlank(status.getPlateNo())){ - continue;//濡傛灉杞﹁締淇℃伅涓虹┖锛屼笉澶勭悊鐩存帴璺宠繃 - } + event.setPlatformId(model.getPlatformId());//鏈堝彴缂栫爜 + eventList.add(event);//灏佽浜嬩欢锛堝凡鏈堝彴閫氶亾涓虹淮搴︼級 + //鎴帀绗竴涓鑹叉眽瀛�,鍘绘帀鈥滄寕鈥濆瓧 + status.setPlateNo(status.getPlateNo().substring(1,status.getPlateNo().length()).replace("鎸�","")); PlatformJob job = platformJobMapper.selectJoinOne(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>() .selectAll(PlatformJob.class) .selectAs(Platform::getName,PlatformJob::getPlatformName) .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) - .eq(StringUtils.equals(status.getStockStatus(),"front"),PlatformJob::getCarCodeFront,status.getPlateNo() )//鍓嶈溅鐗屽彿 - .eq(!StringUtils.equals(status.getStockStatus(),"front"),PlatformJob::getCarCodeBack,status.getPlateNo() )//鍚庤溅鐗屽彿 +// .eq(StringUtils.equals(status.getStockStatus(),"front"),PlatformJob::getCarCodeFront,status.getPlateNo() )//鍓嶈溅鐗屽彿 +// .eq(!StringUtils.equals(status.getStockStatus(),"front"),PlatformJob::getCarCodeBack,status.getPlateNo() )//鍚庤溅鐗屽彿 .eq(PlatformJob::getIsdeleted,Constants.ZERO ) + .eq(PlatformJob::getPlatformId,model.getPlatformId() ) + .orderByDesc(PlatformJob::getCallDate) .last("limit 1 ")); + if(job == null){ + continue;//濡傛灉浣滀笟涓虹┖锛岃烦杩囧鐞� + } PlatformJob update = new PlatformJob(); update.setId(job.getId()); update.setEditDate(new Date()); if(StringUtils.equals(status.getMotionStatus(),"leave")){ //濡傛灉鏄溅杈嗙寮�,涓嶅仛鐩稿叧鑷姩瀹屾垚浣滀笟涓氬姟澶勭悊 - /* if(job ==null && !Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.WORKING.getKey())){ + /* if(job ==null && !Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.WORKING.getKey())){ continue;//濡傛灉娌℃煡鍒板搴旂殑浣滀笟鎴栬�呬綔涓氬苟闈炰綔涓氫腑锛屼笉鍋氫笟鍔″鐞� } if(Constants.equalsInteger(job.getType(), Constants.THREE) || Constants.equalsInteger(job.getType(), Constants.TWO)){ @@ -906,16 +916,36 @@ //濡傛灉鏄鍦ㄤ綔涓氱殑鐘舵�侊紝鏍囪浣滀笟宸插畬鎴� update.setStatus(Constants.PlatformJobStatus.DONE.getKey());//浣滀笟宸插畬鎴� update.setDoneDate(update.getEditDate());*/ + if(Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.DONE.getKey()) || + Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())){ + if(((StringUtils.equals(status.getStockStatus(),"front") && StringUtils.equals(job.getCarCodeFront(),status.getPlateNo())) + ||(!StringUtils.equals(status.getStockStatus(),"front") && StringUtils.equals(job.getCarCodeBack(),status.getPlateNo())) + )){ + //璇存槑杞﹁締杩涢敊鏈堝彴 鎴栬�呰繕鏈彨鍙风姸鎬侊紝鍙戣捣璀﹀憡 +// dealCarsInErrorPlatformBiz(job,status); + update.setInOut(Constants.ZERO);//杞﹁締宸茬粡绂诲紑 + platformJobMapper.updateById(update); + } + } }else if(StringUtils.equals(status.getMotionStatus(),"enter")){ //濡傛灉鏄溅杈嗚繘鍏� - if(job ==null || !Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.CALLED.getKey())){ - //璇存槑杞﹁締杩涢敊鏈堝彴 鎴栬�呰繕鏈彨鍙风姸鎬侊紝鍙戣捣璀﹀憡 - dealCarsInErrorPlatformBiz(job,status); + if(Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.CALLED.getKey())){ + if(!((StringUtils.equals(status.getStockStatus(),"front") && StringUtils.equals(job.getCarCodeFront(),status.getPlateNo())) + ||(!StringUtils.equals(status.getStockStatus(),"front") && StringUtils.equals(job.getCarCodeBack(),status.getPlateNo())) + )){ + //璇存槑杞﹁締杩涢敊鏈堝彴 鎴栬�呰繕鏈彨鍙风姸鎬侊紝鍙戣捣璀﹀憡 + dealCarsInErrorPlatformBiz(job,status); + }else{ + //杞﹁締宸茬粡杩涘叆 + update.setInOut(Constants.ONE);//杞﹁締宸茬粡杩涘叆 + platformJobMapper.updateById(update); + } } - if(job.getStartDate() == null){ + /*if(job.getStartDate() == null){ update.setStartDate(update.getEditDate()); } update.setStatus(Constants.PlatformJobStatus.WORKING.getKey());//寮�濮嬩綔涓� + */ }else{ continue;//鍏朵粬鐘舵�佷笉澶勭悊锛岃烦杩� } @@ -1044,14 +1074,14 @@ return; } String content =Constants.PlatformLedContent.WRONG_IN.getInfo(); - content = content.replace("${param}",model.getPlatformName()); - content = content.replace("${param2}",model.getCarCodeFront()); + content = content.replace("${param2}",model.getPlatformName()); + content = content.replace("${param}",status.getPlateNo()); List<String> broadcastList = new ArrayList<>(); List<String> ledList = new ArrayList<>(); String bNames = ""; List<PlatformBroadcastLog> logList = new ArrayList<>(); for(PlatformDevice device : deviceList){ - if(StringUtils.isNotBlank(device.getHkId())){ + if(StringUtils.isBlank(device.getHkId())){ continue; } if(Constants.equalsInteger(device.getType(),Constants.ZERO)){ @@ -1059,14 +1089,14 @@ PlatformBroadcastLog log = dealLedContentBiz(device.getHkNo(),device.getName(),content,speed,1); logList.add(log); ledList.add(device.getHkId()); - }else if(Constants.equalsInteger(device.getType(),Constants.ZERO)){ + }else if(Constants.equalsInteger(device.getType(),Constants.TWO)){ //濡傛灉鏄箍鎾偣 bNames += device.getName()+";"; broadcastList.add(device.getHkId()); } } if(broadcastList.size()>0){ - PlatformBroadcastLog log = dealBroadcastBiz(model,broadcastList,bNames); + PlatformBroadcastLog log = dealBroadcastBiz(model,broadcastList,bNames,Constants.PlatformBroadcastContent.WRONG_IN.getInfo().replace("${param}",status.getPlateNo())); logList.add(log); } if(logList.size()>0){ @@ -1074,9 +1104,16 @@ } } - private PlatformBroadcastLog dealBroadcastBiz(PlatformJob model, List<String> broadcastList,String bNames) { + /** + * 骞挎挱閫氱煡 + * @param model + * @param broadcastList + * @param bNames + * @param content1 + * @return + */ + public static PlatformBroadcastLog dealBroadcastBiz(PlatformJob model, List<String> broadcastList,String bNames , String content1) { PlatformBroadcastLog log = new PlatformBroadcastLog(); - String content1 =Constants.PlatformBroadcastContent.WRONG_IN.getInfo(); content1 = content1.replace("${param}",model.getCarCodeFront()); log.setCreateDate(new Date()); -- Gitblit v1.9.3