From a819ee6d472cda32ad335eb4cad0a9f7e4d0878e Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 10 十月 2024 17:12:07 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 166 +++++++++++++++++++++++++++++++------------------------
1 files changed, 93 insertions(+), 73 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 99b1e0c..9a6f454 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
@@ -5,8 +5,6 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.config.DataSyncConfig;
-import com.doumee.config.SpringContextUtil;
-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.*;
@@ -22,21 +20,14 @@
import com.doumee.dao.business.*;
import com.doumee.dao.business.join.VisitsJoinMapper;
import com.doumee.dao.business.model.*;
-import com.doumee.dao.system.model.SystemUser;
import com.doumee.dao.web.reqeust.SavePlatformWarnEventDTO;
-import com.doumee.service.business.DeviceEventService;
-import com.doumee.service.business.InterfaceLogService;
-import com.doumee.service.business.MemberService;
import com.doumee.service.business.impl.PlatformWarnEventServiceImpl;
-import com.github.yulichang.interfaces.MPJBaseJoin;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
-import com.hikvision.artemis.sdk.config.ArtemisConfig;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-import org.yaml.snakeyaml.scanner.Constant;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
@@ -874,34 +865,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(PlatformJob::getIsdeleted,Constants.ZERO )
+// .eq(StringUtils.equals(status.getStockStatus(),"front"),PlatformJob::getCarCodeFront,status.getPlateNo() )//鍓嶈溅鐗屽彿
+// .eq(!StringUtils.equals(status.getStockStatus(),"front"),PlatformJob::getCarCodeBack,status.getPlateNo() )//鍚庤溅鐗屽彿
+ .eq(PlatformJob::getPlatformId,Constants.ZERO )
+ .eq(PlatformJob::getIsdeleted,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)){
@@ -918,9 +919,14 @@
update.setDoneDate(update.getEditDate());*/
}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);
+ }
+
}
if(job.getStartDate() == null){
update.setStartDate(update.getEditDate());
@@ -1066,25 +1072,7 @@
}
if(Constants.equalsInteger(device.getType(),Constants.ZERO)){
//濡傛灉鏄疞ED
- PlatformBroadcastLog log = new PlatformBroadcastLog();
- log.setCreateDate(new Date());
- log.setBizType(Constants.ONE);
- log.setHkDate(new Date());
- log.setObjType(Constants.ONE);
- log.setIds(device.getHkNo());
- log.setRemark(device.getName());
- log.setInfo(content);
- log.setNum(Constants.ONE);
- BaseResponse response = dealLedContentBiz(device.getHkNo(),content,speed,1);
- if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
- log.setHkInfo("璇锋眰澶辫触锛�"+JSONObject.toJSONString(response));
- log.setHkStatus(Constants.THREE);
- }else{
- log.setHkInfo("璇锋眰鎴愬姛");
- log.setHkStatus(Constants.TWO);
- }
- log.setDeviceType(Constants.ONE);
- log.setName("璁剧疆LED灞忔樉鍐呭");
+ 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)){
@@ -1093,36 +1081,8 @@
broadcastList.add(device.getHkId());
}
}
-
if(broadcastList.size()>0){
- String content1 =Constants.PlatformBroadcastContent.WRONG_IN.getInfo();
- content1 = content1.replace("${param}",model.getCarCodeFront());
- PlatformBroadcastLog log = new PlatformBroadcastLog();
- log.setCreateDate(new Date());
- log.setBizType(Constants.ONE);
- log.setHkDate(new Date());
- log.setObjType(Constants.ONE);
- log.setInfo(content1);
- log.setRemark(bNames);
- log.setNum(Constants.ONE);
- log.setIds(String.join(",",broadcastList));
- CustomBroadcastRequest request = new CustomBroadcastRequest();
- request.setAudioPointIndexCode(broadcastList);
- request.setPlayDuration(15);//鍗曚綅绉�
- request.setBroadCastMode("tts");
- request.setPriority(1);
- request.setState(1);//鎾斁/鍋滄鏍囪瘑 1-鎾斁锛�0-鍋滄
- request.setPlayTtsContent(content1);
- BaseResponse response = HKService.customBroadcast(request);
- if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
- log.setHkInfo("璇锋眰澶辫触锛�"+JSONObject.toJSONString(response));
- log.setHkStatus(Constants.THREE);
- }else{
- log.setHkInfo("璇锋眰鎴愬姛");
- log.setHkStatus(Constants.TWO);
- }
- log.setDeviceType(Constants.ONE);
- log.setName("鍙戦�佸箍鎾挱鎶ュ唴瀹�");
+ PlatformBroadcastLog log = dealBroadcastBiz(model,broadcastList,bNames,Constants.PlatformBroadcastContent.WRONG_IN.getInfo());
logList.add(log);
}
if(logList.size()>0){
@@ -1130,7 +1090,57 @@
}
}
- public static BaseResponse dealLedContentBiz(String hkNo, String content,int speed,int color) {
+ /**
+ * 骞挎挱閫氱煡
+ * @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.setCreateDate(new Date());
+ log.setBizType(Constants.ONE);
+ log.setHkDate(new Date());
+ log.setObjType(Constants.ONE);
+ log.setInfo(content1);
+ log.setRemark(bNames);
+ log.setNum(Constants.ONE);
+ log.setIds(String.join(",",broadcastList));
+ CustomBroadcastRequest request = new CustomBroadcastRequest();
+ request.setAudioPointIndexCode(broadcastList);
+ request.setPlayDuration(15);//鍗曚綅绉�
+ request.setBroadCastMode("tts");
+ request.setPriority(1);
+ request.setState(1);//鎾斁/鍋滄鏍囪瘑 1-鎾斁锛�0-鍋滄
+ request.setPlayTtsContent(content1);
+ BaseResponse response = HKService.customBroadcast(request);
+ if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
+ log.setHkInfo("璇锋眰澶辫触锛�"+JSONObject.toJSONString(response));
+ log.setHkStatus(Constants.THREE);
+ }else{
+ log.setHkInfo("璇锋眰鎴愬姛");
+ log.setHkStatus(Constants.TWO);
+ }
+ log.setDeviceType(Constants.ONE);
+ log.setName("鍙戦�佸箍鎾挱鎶ュ唴瀹�");
+ return log;
+ }
+
+ public static PlatformBroadcastLog dealLedContentBiz(String hkNo,String hkName, String content,int speed,int color) {
+ PlatformBroadcastLog log = new PlatformBroadcastLog();
+ log.setCreateDate(new Date());
+ log.setBizType(Constants.ONE);
+ log.setHkDate(new Date());
+ log.setObjType(Constants.ONE);
+ log.setIds(hkNo);
+ log.setRemark(hkName);
+ log.setInfo(content);
+ log.setNum(Constants.ONE);
+
TransparentChannelBodyRequest body = new TransparentChannelBodyRequest();
TransparentChannelHeadRequest head = new TransparentChannelHeadRequest();
TransparentChannelBodyParamRequest request = new TransparentChannelBodyParamRequest();
@@ -1157,6 +1167,16 @@
request.getRegions().add(regions);
regions.setSpeed(speed>0?speed:13);
body.setParams(request);
- return HKService.transparentchannel(head,body);
+ BaseResponse response = HKService.transparentchannel(head,body);
+ if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
+ log.setHkInfo("璇锋眰澶辫触锛�"+JSONObject.toJSONString(response));
+ log.setHkStatus(Constants.THREE);
+ }else{
+ log.setHkInfo("璇锋眰鎴愬姛");
+ log.setHkStatus(Constants.TWO);
+ }
+ log.setDeviceType(Constants.ONE);
+ log.setName("璁剧疆LED灞忔樉鍐呭");
+ return log;
}
}
--
Gitblit v1.9.3