From 1a9da0b5ef171300a5f7968a8ce09b30f9d2f793 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期日, 29 九月 2024 15:50:12 +0800 Subject: [PATCH] 最新版本 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 127 ++++++++++++++++++++++++++++++++---------- 1 files changed, 96 insertions(+), 31 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 1b26bdc..f7e8781 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 @@ -3,10 +3,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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.*; import com.doumee.core.haikang.model.param.request.event.acs.EventAcsInfoRequest; import com.doumee.core.haikang.model.param.request.event.acs.EventAcsRequest; @@ -75,7 +77,11 @@ @Autowired private PlatformMapper platformMapper; @Autowired + private SystemDictDataBiz systemDictDataBiz; + @Autowired private PlatformDeviceMapper platformDeviceMapper; + @Autowired + private PlatformBroadcastLogMapper platformBroadcastLogMapper; @Autowired private PlatformJobMapper platformJobMapper; @Autowired @@ -886,7 +892,10 @@ if(StringUtils.isBlank(status.getPlateNo())){ continue;//濡傛灉杞﹁締淇℃伅涓虹┖锛屼笉澶勭悊鐩存帴璺宠繃 } - PlatformJob job = platformJobMapper.selectOne(new QueryWrapper<PlatformJob>().lambda() + 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 ) @@ -1039,62 +1048,118 @@ savePlatformWarnEventDTO.setEventType(Constants.PlatformWarnEvent.STOP_ERROR.getKey()); platformWarnEventService.savePlatformWarnEvent(savePlatformWarnEventDTO); + int speed = 13; + try { + speed = Integer.parseInt(systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.LED_CONTENT_SPEED).getCode()); + }catch (Exception e){ + + } List<PlatformDevice> deviceList = platformDeviceMapper.selectList(new QueryWrapper<PlatformDevice>().lambda() .eq(PlatformDevice::getPlatformId,model.getPlatformId()) .eq(PlatformDevice::getIsdeleted,Constants.ZERO)); if(deviceList ==null || deviceList.size() == 0){ return; } - String content ="杞﹁締"+model.getCarCodeFront()+"鍋滈敊鏈堝彴浜�"; + String content =Constants.PlatformLedContent.WRONG_IN.getInfo(); + content = content.replace("${param}",model.getPlatformName()); + content = content.replace("${param2}",model.getCarCodeFront()); List<String> broadcastList = new ArrayList<>(); + List<String> ledList = new ArrayList<>(); + List<PlatformBroadcastLog> logList = new ArrayList<>(); for(PlatformDevice device : deviceList){ if(StringUtils.isNotBlank(device.getHkId())){ continue; } if(Constants.equalsInteger(device.getType(),Constants.ZERO)){ //濡傛灉鏄疞ED - 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()); - body.setMethod("ControlLedGereral");//鍥哄畾鍊� - request.setIndexCode(device.getHkId()); - request.setOperationType(219);//鍥哄畾鍊� - 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); + 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.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灞忔樉鍐呭"); + logList.add(log); + ledList.add(device.getHkId()); }else if(Constants.equalsInteger(device.getType(),Constants.ZERO)){ //濡傛灉鏄箍鎾偣 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.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(content); - HKService.customBroadcast(request); + 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("鍙戦�佸箍鎾挱鎶ュ唴瀹�"); + logList.add(log); } + if(logList.size()>0){ + platformBroadcastLogMapper.insert(logList); + } + } + public static BaseResponse dealLedContentBiz(String hkNo, String content,int speed,int color) { + 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(hkNo); + body.setMethod("ControlLedGereral");//鍥哄畾鍊� + request.setIndexCode(hkNo); + request.setOperationType(219);//鍥哄畾鍊� + regions.setActionType(32); + regions.setContent(content); + regions.setRegionNo(1); + regions.setRegionType(14); + regions.setFontColor(color>0?color: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(speed>0?speed:13); + body.setParams(request); + return HKService.transparentchannel(head,body); } } -- Gitblit v1.9.3