From 51e18e190dafdec70dc1f4a3a9ecd76fb2116726 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期六, 12 十月 2024 16:25:08 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 91 ++++++++++++++++++++++++++++++++------------- 1 files changed, 64 insertions(+), 27 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 c98d012..0047699 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) { @@ -865,34 +864,44 @@ if( data.getHPVehicleStatus() ==null ){ continue;//濡備綍鎺ㄩ�佺姸鎬侀泦鍚堜负绌猴紝涓嶅鐞嗚烦杩� } + //鍚勮溅閬撹溅杈嗙姸鎬� + EventPlatformCarsStatusInfoRequest status = data.getHPVehicleStatus(); + 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;//鐩戞帶鐐规湭鍚屾锛岃烦杩囧鐞� - } - //鍚勮溅閬撹溅杈嗙姸鎬� - EventPlatformCarsStatusInfoRequest status = data.getHPVehicleStatus(); - eventList.add(initPlatformEventModel(request,data,status));//灏佽浜嬩欢锛堝凡鏈堝彴閫氶亾涓虹淮搴︼級 - 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)){ @@ -907,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;//鍏朵粬鐘舵�佷笉澶勭悊锛岃烦杩� } @@ -1045,29 +1074,29 @@ 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)){ //濡傛灉鏄疞ED - PlatformBroadcastLog log = dealLedContentBiz(device.getHkNo(),device.getName(),content,speed,1); + PlatformBroadcastLog log = dealLedContentBiz(model.getId(),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){ @@ -1075,11 +1104,18 @@ } } - 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.setObjId(model.getId().toString()); log.setCreateDate(new Date()); log.setBizType(Constants.ONE); log.setHkDate(new Date()); @@ -1103,12 +1139,12 @@ log.setHkInfo("璇锋眰鎴愬姛"); log.setHkStatus(Constants.TWO); } - log.setDeviceType(Constants.ONE); + log.setDeviceType(Constants.ZERO); log.setName("鍙戦�佸箍鎾挱鎶ュ唴瀹�"); return log; } - public static PlatformBroadcastLog dealLedContentBiz(String hkNo,String hkName, String content,int speed,int color) { + public static PlatformBroadcastLog dealLedContentBiz(Integer platformId,String hkNo,String hkName, String content,int speed,int color) { PlatformBroadcastLog log = new PlatformBroadcastLog(); log.setCreateDate(new Date()); log.setBizType(Constants.ONE); @@ -1118,6 +1154,7 @@ log.setRemark(hkName); log.setInfo(content); log.setNum(Constants.ONE); + log.setObjId(platformId.toString()); TransparentChannelBodyRequest body = new TransparentChannelBodyRequest(); TransparentChannelHeadRequest head = new TransparentChannelHeadRequest(); -- Gitblit v1.9.3