k94314517
2024-09-25 67ff8bd1223a488542f2504db84f68d17846d149
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
@@ -459,6 +461,9 @@
        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.getISO8601DateByStr2(request.getHappenTime()));
@@ -488,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)){
@@ -577,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());
@@ -619,7 +625,6 @@
        retention.setMemberId(visits.getMemberId());
//        retention.setDeviceName(request.getSrcName());
//        retention.setDeviceIndex(request.getSrcIndex());
        return retention;
    }
@@ -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)){
                //如果是LED
                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);