From a8c8e4281c0298ce9a946b1d65166a2fe438ce1c Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期四, 26 九月 2024 09:04:14 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java |   87 +++++++++++++++++++++++++++----------------
 1 files changed, 54 insertions(+), 33 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 c7b56b4..ba580d2 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
@@ -7,9 +7,7 @@
 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.request.CustomBroadcastRequest;
-import com.doumee.core.haikang.model.param.request.TransparentChannelBodyRequest;
-import com.doumee.core.haikang.model.param.request.TransparentChannelHeadRequest;
+import com.doumee.core.haikang.model.param.request.*;
 import com.doumee.core.haikang.model.param.request.event.acs.EventAcsInfoRequest;
 import com.doumee.core.haikang.model.param.request.event.acs.EventAcsRequest;
 import com.doumee.core.haikang.model.param.request.event.acs.EventDeviceDataRequest;
@@ -23,9 +21,11 @@
 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;
@@ -84,6 +84,8 @@
     private PlatformEventMapper platformEventMapper;
     @Autowired
     private PlatformLogMapper platformLogMapper;
+    @Autowired
+    private PlatformWarnEventServiceImpl platformWarnEventService;
     /**
      * 娴峰悍闂ㄧ浜嬩欢鎺ㄩ��
      * @param param
@@ -155,7 +157,7 @@
                         .eq(Device::getIsdeleted,Constants.ZERO)
                         .last("limit 1" ));
                 delRetentionLis.add(member.getId());
-                if(!(Constants.equalsInteger(d.getIsEntrance(),Constants.ONE) && Constants.formatIntegerNum(request.getData().getExtEventInOut()) != Constants.ONE)){
+                if(d!=null && !(Constants.equalsInteger(d.getIsEntrance(),Constants.ONE) && Constants.formatIntegerNum(request.getData().getExtEventInOut()) != Constants.ONE)){
                     //濡傛灉鏄繘闂紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰�
                     retentionList.add(getRetentionModelByRequest(member,request));
                 }
@@ -334,7 +336,7 @@
      * @return
      */
     @Override
-    public String    dealVisitEventIccm(EventVisitIccmRequest param, HttpServletResponse response){
+    public String     dealVisitEventIccm(EventVisitIccmRequest param, HttpServletResponse response){
         log.info("銆愭捣搴疯瀹簨浠舵帹閫併��==========寮�濮�=======锛歕n"+JSONObject.toJSONString(param));
         String result = null;
         try {
@@ -354,7 +356,8 @@
                     continue;
                 }
                 //娴峰悍璁垮璁板綍缂栫爜
-                dealVisitDataByRequstIccm(request,delRetentionLis,retentionList,list);
+                dealVisitDataByRequstIccm(request,delRetentionLis,retentionList);
+                list.add(getVisitEventModelByRequestIccm(request,request.getData().getVisitorInformationList().get(0)));
             }
             if(list.size()>0){
                 //鎻掑叆闂ㄧ璁板綍
@@ -382,14 +385,14 @@
     /**
      *  鏍规嵁璁垮鎺ㄩ�佽瀹㈣褰曠紪鐮侊紝澶勭悊璁垮璁板綍銆佸湪鍦轰汉鍛樼瓑淇℃伅
      */
-    private void dealVisitDataByRequstIccm(EventVisitIccmInfoRequest request, List<Integer> delRetentionLis, List<Retention> retentionList,List<VisitEvent> list) {
+    private void dealVisitDataByRequstIccm(EventVisitIccmInfoRequest request, List<Integer> delRetentionLis, List<Retention> retentionList ) {
 
         EventVisitIccmDataRequest model = request.getData();
         EventVisitIccmInvoiceParamRequest data =  request.getData().getVisitorInvoices();
         MPJLambdaWrapper<Visits> queryWrapper = new MPJLambdaWrapper<>();
         queryWrapper.selectAll(Visits.class);
         queryWrapper.selectAs(Member::getType,Visits::getMemberType);
-        queryWrapper.eq(Visits::getHkId,model.getVisitorInvoices().getInvoicesId() );//璁垮鍗曞彿
+        queryWrapper.eq(Visits::getHkId,model.getVisitorInvoices().getInvoicesNo() );//璁垮鍗曞彿
         queryWrapper.leftJoin(Member.class,Member::getId,Visits::getMemberId );
         queryWrapper.last("limit 1");
         Visits visits = visitsMapper.selectJoinOne(Visits.class,queryWrapper);
@@ -427,6 +430,7 @@
             updateVistis.setEditDate(new Date());
             //鏇存柊璁垮鏉ヨ鎴栬�呯绂绘椂闂翠俊鎭�
             visitsMapper.updateById(updateVistis) ;
+
         }
     }
     private Retention getRetentionModelByVisitRequest(Visits visits, String happentTime,String srcType) {
@@ -453,13 +457,19 @@
 
         return retention;
     }
-    private VisitEvent getVisitEventModelByRequest(EventVisitIccmInfoRequest request,EventVisitIccmDetailParamRequest detail) {
+    private VisitEvent getVisitEventModelByRequestIccm(EventVisitIccmInfoRequest request,EventVisitIccmDetailParamRequest detail) {
         if(request.getData().getTargetPerson() ==null){
             request.getData().setTargetPerson(new EventVisitIccmTargetParamRequest());
         }
+        if(request.getData().getVisitorInvoices() == null){
+            request.getData().setVisitorInvoices(new EventVisitIccmInvoiceParamRequest());
+        }
         VisitEvent event = new VisitEvent();
         event.setIsdeleted(Constants.ZERO);
-        event.setCreateDate(DateUtil.getISO8601DateByStr(request.getHappenTime()));
+        event.setCreateDate(DateUtil.getISO8601DateByStr2(request.getHappenTime()));
+        if(event.getCreateDate() == null){
+            event.setCreateDate(new Date());
+        }
         event.setVisitorWorkUint(detail.getUnit());
         event.setVisitorId(detail.getVisitorId());
         event.setVisitorCode(detail.getAppointmentCode());
@@ -483,7 +493,7 @@
         event.setPhotoUrl(getHkImgUrl(detail.getFacePic()));
         event.setPersonName(detail.getVisitorName());
         event.setCarNo(detail.getPlateNo());
-
+        event.setInvoicesNo(request.getData().getVisitorInvoices().getInvoicesNo());//璁垮鍗曞彿
         event.setIdType(detail.getCertType());
         String idnum = detail.getCertNo();
         if(StringUtils.isNotBlank(idnum)){
@@ -572,6 +582,7 @@
         event.setPhotoUrl(getHkImgUrl(request.getData().getPhotoUrl()));
         event.setPersonName(request.getData().getPersonName());
         event.setCarNo(request.getData().getCarNo());
+        event.setInvoicesNo(request.getData().getVisitorId());
         event.setCaptureUrl(request.getData().getCaptureUrl());
         if(StringUtils.isNotBlank(request.getData().getCaptureUrl())){
             event.setCaptureUrl(HKConstants.IMG_INDEX+request.getData().getCaptureUrl());
@@ -614,7 +625,6 @@
         retention.setMemberId(visits.getMemberId());
 //        retention.setDeviceName(request.getSrcName());
 //        retention.setDeviceIndex(request.getSrcIndex());
-
         return retention;
     }
 
@@ -806,12 +816,11 @@
             List<EventPlatformInfoRequest> events  = param.getParams().getEvents();
             List<Platform> list = new ArrayList<>();
             for(EventPlatformInfoRequest request : events){
-                List<EventPlatformDataRequest>  dataList = request.getData();
-                if(dataList ==null || dataList.size()==0){
+                EventPlatformDataRequest   data = request.getData();
+                if(data ==null ){
                     continue;
                 }
                 Integer  workStatus = 0;
-                for(EventPlatformDataRequest data : dataList){
                     if( data.getHPWorkingStatus() ==null ||  data.getHPWorkingStatus().size() ==0){
                         continue;//濡備綍鎺ㄩ�佺姸鎬侀泦鍚堜负绌猴紝涓嶅鐞嗚烦杩�
                     }
@@ -821,15 +830,11 @@
                             .last("limit 1"));
                     if(model ==null){
                         continue;//鐩戞帶鐐规湭鍚屾锛岃烦杩囧鐞�
-
                     }
                     //鍚勮溅閬撹溅杈嗙姸鎬�
                     for(EventPlatformStatusInfoRequest status : data.getHPWorkingStatus()){
 
-
                     }
-                    break;//鍙鐞嗙涓�涓暟鎹姸鎬�
-                }
             }
             result = "鎴愬姛";
             log.error("銆愭捣搴锋湀鍙板伐浣滅姸鎬佷簨浠舵帹閫併��========鎴愬姛=======");
@@ -1025,7 +1030,13 @@
      * @param status
      */
     private void dealCarsInErrorPlatformBiz( PlatformJob model,EventPlatformCarsStatusInfoRequest status) {
-        //TODO-----------------澶勭悊杞﹁締杩涘叆閿欒鏈堝彴涓氬姟閫昏緫
+        //澶勭悊杞﹁締杩涘叆閿欒鏈堝彴涓氬姟閫昏緫
+        SavePlatformWarnEventDTO savePlatformWarnEventDTO = new SavePlatformWarnEventDTO();
+        savePlatformWarnEventDTO.setPlatformJobId(model.getId());
+        savePlatformWarnEventDTO.setPlatformId(model.getPlatformId());
+        savePlatformWarnEventDTO.setCarCode(model.getCarCodeFront());
+        savePlatformWarnEventDTO.setEventType(Constants.PlatformWarnEvent.STOP_ERROR.getKey());
+        platformWarnEventService.savePlatformWarnEvent(savePlatformWarnEventDTO);
 
         List<PlatformDevice> deviceList = platformDeviceMapper.selectList(new QueryWrapper<PlatformDevice>().lambda()
                 .eq(PlatformDevice::getPlatformId,model.getPlatformId())
@@ -1041,23 +1052,33 @@
             }
             if(Constants.equalsInteger(device.getType(),Constants.ZERO)){
                 //濡傛灉鏄疞ED
-                TransparentChannelBodyRequest request = new TransparentChannelBodyRequest();
+                TransparentChannelBodyRequest body = new TransparentChannelBodyRequest();
                 TransparentChannelHeadRequest head = new TransparentChannelHeadRequest();
+                TransparentChannelBodyParamRequest request = new TransparentChannelBodyParamRequest();
+                TransparentChannelBodyRegionRequest regions = new TransparentChannelBodyRegionRequest();
                 head.setAbility("cld");//鍥哄畾鍊�
                 head.setTreatyType("haixuan_led_net");//鍥哄畾鍊�
                 head.setDeviceIndexCode(device.getHkId());
-                request.setMethod("ControlLedGereral");//鍥哄畾鍊�
+                body.setMethod("ControlLedGereral");//鍥哄畾鍊�
                 request.setIndexCode(device.getHkId());
-                request.setActionType(0);
-                request.setContent(content);
                 request.setOperationType(219);//鍥哄畾鍊�
-                request.setRegionNo(1);
-                request.setRegionType(14);
-                request.setFontColor(1);
-                request.setCircleTimes(1);//寰幆娆℃暟
-                request.setFontSize(16);//
-                request.setStayTime(1);//鍗曚綅锛燂紵
-                HKService.transparentchannel(head,request);
+                regions.setActionType(32);
+                regions.setContent(content);
+                regions.setRegionNo(1);
+                regions.setRegionType(14);
+                regions.setFontColor(1);
+                regions.setCircleTimes(1);//寰幆娆℃暟
+                regions.setFontSize(32);//
+                regions.setStayTime(1);//鍗曚綅锛燂紵
+                regions.setRegionLeftTopXPos(0);
+                regions.setRegionLeftTopYPos(0);
+                regions.setRegionRightBottomXPos(255);
+                regions.setRegionRightBottomYPos(31);
+                request.setRegions(new ArrayList<>());
+                request.getRegions().add(regions);
+                regions.setSpeed(13);
+                body.setParams(request);
+                HKService.transparentchannel(head,body);
             }else  if(Constants.equalsInteger(device.getType(),Constants.ZERO)){
                 //濡傛灉鏄箍鎾偣
                 broadcastList.add(device.getHkId());
@@ -1066,9 +1087,9 @@
         if(broadcastList.size()>0){
             CustomBroadcastRequest request = new CustomBroadcastRequest();
             request.setAudioPointIndexCode(broadcastList);
-            request.setPlayDuration(60);//鍗曚綅绉�
+            request.setPlayDuration(15);//鍗曚綅绉�
             request.setBroadCastMode("tts");
-            request.setPriority(15);
+            request.setPriority(1);
             request.setState(1);//鎾斁/鍋滄鏍囪瘑 1-鎾斁锛�0-鍋滄
             request.setPlayTtsContent(content);
             HKService.customBroadcast(request);

--
Gitblit v1.9.3