From 3d6cc6bf2bdad1714c98c820dc1805b89d594141 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期六, 12 十月 2024 16:27:02 +0800
Subject: [PATCH] 最新版本
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 86 +++++++++++++++++++++++++++++++-----------
1 files changed, 63 insertions(+), 23 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 fe0be93..0e353d4 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
@@ -394,8 +394,6 @@
queryWrapper.last("limit 1");
Visits visits = visitsMapper.selectJoinOne(Visits.class,queryWrapper);
if(visits !=null){
- //濡傛灉浜哄憳淇℃伅瀛樺湪锛屽垯鍒犻櫎涔嬪墠鐨勬墍鏈夎繘鍦烘暟鎹紙鏃犺姝ゆ鎺ㄩ�佹槸杩涘巶杩樻槸鍑哄満鎺ㄩ�佷簨浠讹級
- delRetentionLis.add(visits.getMemberId());
if(dataSyncConfig.getOrgUserDataOrigin() == DataSyncConfig.origin.hk){
//濡傛灉鏄紛鍒╁ぇ灞忛」鐩紝涓嶅仛澶勭悊
return;
@@ -404,7 +402,7 @@
updateVistis.setId(visits.getId());
if (Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.VISIT_SIGN_ICCM_IN.getKey()) {
//濡傛灉鏄瀹㈢櫥璁帮紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰�
- retentionList.add(getRetentionModelByVisitRequest(visits, request.getHappenTime(),request.getSrcType()));
+// retentionList.add(getRetentionModelByVisitRequest(visits, request.getHappenTime(),request.getSrcType()));
//鏉ヨ鏃堕棿
updateVistis.setStatus(Constants.VisitStatus.signin);
updateVistis.setInDate(DateUtil.getISO8601DateByStr(data.getBeginTime()));
@@ -414,7 +412,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()));
@@ -422,12 +420,23 @@
updateVistis.setOutType(Constants.ZERO);
updateVistis.setOutInfo("璁垮姝e父绛剧");
}else{
+ //濡傛灉浜哄憳淇℃伅瀛樺湪锛屽垏鏄瀹㈤�氳锛屽垯鍒犻櫎涔嬪墠鐨勬墍鏈夎繘鍦烘暟鎹紙鏃犺姝ゆ鎺ㄩ�佹槸杩涘巶杩樻槸鍑哄満鎺ㄩ�佷簨浠讹級
+ delRetentionLis.add(visits.getMemberId());
//濡傛灉鏄瀹㈤�氳
+ if(request.getData()!=null&&request.getData().getParamValues()!=null &&
+ StringUtils.equals(request.getData().getParamValues().getInOrOut(),"1")){
+ //濡傛灉鏄瀹㈢櫥璁帮紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰�
+ Retention r = getRetentionModelByVisitRequest(visits, request.getHappenTime(),request.getSrcType());
+ r.setCarNo(request.getData().getParamValues().getPlateNos());
+ r.setAccessType(request.getData().getParamValues().getAccessType());
+ r.setDeviceName(request.getData().getParamValues().getSrcName());
+ r.setDeviceIndex(request.getData().getParamValues().getSrcIndex());
+ retentionList.add(r);
+ }
}
updateVistis.setEditDate(new Date());
//鏇存柊璁垮鏉ヨ鎴栬�呯绂绘椂闂翠俊鎭�
visitsMapper.updateById(updateVistis) ;
-
}
}
private Retention getRetentionModelByVisitRequest(Visits visits, String happentTime,String srcType) {
@@ -888,9 +897,11 @@
.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;//濡傛灉浣滀笟涓虹┖锛岃烦杩囧鐞�
@@ -915,16 +926,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;//鍏朵粬鐘舵�佷笉澶勭悊锛岃烦杩�
}
@@ -1053,40 +1084,48 @@
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){
platformBroadcastLogMapper.insert(logList);
}
}
- public static PlatformBroadcastLog dealBroadcastBiz(PlatformJob model, List<String> broadcastList,String bNames) {
- PlatformBroadcastLog log = new PlatformBroadcastLog();
- String content1 =Constants.PlatformBroadcastContent.WRONG_IN.getInfo();
- content1 = content1.replace("${param}",model.getCarCodeFront());
+ /**
+ * 骞挎挱閫氱煡
+ * @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();
+ content1 = content1.replace("${param}",model.getCarCodeFront());
+ log.setObjId(model.getId().toString());
log.setCreateDate(new Date());
log.setBizType(Constants.ONE);
log.setHkDate(new Date());
@@ -1110,12 +1149,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);
@@ -1125,6 +1164,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