Commit 47bd19a7 authored by tangwei's avatar tangwei

解决冲突

parents cc4b9026 7dfe4ac3
...@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.jxiop.biz.service.impl; ...@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.jxiop.biz.service.impl;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
...@@ -1160,17 +1161,24 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -1160,17 +1161,24 @@ public class HealthStatusIndicatorServiceImpl {
@Autowired @Autowired
private JumpConfigMapper jumpConfigMapper; private JumpConfigMapper jumpConfigMapper;
public String getJumpUrlByInfo(String objectName, List<JumpConfig> jumpConfigs) { public String getJumpUrlByInfo(String sbbm, List<JumpConfig> jumpConfigs) {
String jumpUrl = null; Map<String, String> collect = jumpConfigs.stream().collect(Collectors.toMap(JumpConfig::getType, JumpConfig::getUrl));
for (JumpConfig jumpConfig : jumpConfigs) { if (StrUtil.isEmpty(sbbm)) {
if (jumpConfig.getType().equals("默认")) { return "";
jumpUrl = jumpConfig.getUrl(); }
} if (sbbm.indexOf("BAT") != -1) {
if (objectName.contains(jumpConfig.getType())) { return collect.get("箱变");
return jumpConfig.getUrl(); } else if (sbbm.indexOf("WG") != -1) {
} return collect.get("汇流箱");
} else if (sbbm.indexOf("WC") != -1) {
return collect.get("逆变器");
} else if (sbbm.length() == 12 && sbbm.indexOf("MD") != -1) {
return collect.get("风机");
} else if (sbbm.length() > 12 && sbbm.indexOf("MD") != -1) {
return collect.get("风机子系统");
} else {
return collect.get("默认");
} }
return jumpUrl;
} }
/** /**
* 光伏 - 触发预控模型生成预警 * 光伏 - 触发预控模型生成预警
...@@ -1193,7 +1201,7 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -1193,7 +1201,7 @@ public class HealthStatusIndicatorServiceImpl {
riskBizInfoVo.setSourceAttributionDesc(idxBizPvWarningRecord.getStation()); riskBizInfoVo.setSourceAttributionDesc(idxBizPvWarningRecord.getStation());
riskBizInfoVo.setWarningObjectType("equip"); riskBizInfoVo.setWarningObjectType("equip");
riskBizInfoVo.setWarningTime(DateUtil.now()); riskBizInfoVo.setWarningTime(DateUtil.now());
riskBizInfoVo.setWarningObjectLinkUrl(getJumpUrlByInfo(idxBizPvWarningRecord.getEquipmentName(), jumpConfigs)); riskBizInfoVo.setWarningObjectLinkUrl(getJumpUrlByInfo(idxBizPvWarningRecord.getKks(), jumpConfigs));
List<RiskDynamicDetailsVo> detailsVos = new ArrayList<>(); List<RiskDynamicDetailsVo> detailsVos = new ArrayList<>();
RiskDynamicDetailsVo dynamicDetailsVo = new RiskDynamicDetailsVo(); RiskDynamicDetailsVo dynamicDetailsVo = new RiskDynamicDetailsVo();
dynamicDetailsVo.setTabName("预警详情"); dynamicDetailsVo.setTabName("预警详情");
...@@ -1258,7 +1266,7 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -1258,7 +1266,7 @@ public class HealthStatusIndicatorServiceImpl {
riskBizInfoVo.setSourceAttributionDesc(idxBizFanWarningRecord.getStation()); riskBizInfoVo.setSourceAttributionDesc(idxBizFanWarningRecord.getStation());
riskBizInfoVo.setWarningObjectType("equip"); riskBizInfoVo.setWarningObjectType("equip");
riskBizInfoVo.setWarningTime(DateUtil.now()); riskBizInfoVo.setWarningTime(DateUtil.now());
riskBizInfoVo.setWarningObjectLinkUrl(getJumpUrlByInfo(idxBizFanWarningRecord.getEquipmentName(), jumpConfigs)); riskBizInfoVo.setWarningObjectLinkUrl(getJumpUrlByInfo(idxBizFanWarningRecord.getKks(), jumpConfigs));
List<RiskDynamicDetailsVo> detailsVos = new ArrayList<>(); List<RiskDynamicDetailsVo> detailsVos = new ArrayList<>();
RiskDynamicDetailsVo dynamicDetailsVo = new RiskDynamicDetailsVo(); RiskDynamicDetailsVo dynamicDetailsVo = new RiskDynamicDetailsVo();
dynamicDetailsVo.setTabName("预警详情"); dynamicDetailsVo.setTabName("预警详情");
......
package com.yeejoin.amos.boot.module.jxiop.api.config;
import org.springframework.context.annotation.Bean;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.stereotype.Component;
import java.util.concurrent.Executor;
import java.util.concurrent.ThreadPoolExecutor;
@Component
public class AsyncConfig {
@Bean("async")
public Executor asyncScheduledTask(){
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
executor.setMaxPoolSize(50);
executor.setCorePoolSize(20);
executor.setQueueCapacity(50);
executor.setThreadNamePrefix("async-thread-");
executor.setKeepAliveSeconds(60);
executor.setRejectedExecutionHandler(new ThreadPoolExecutor.AbortPolicy(){});
executor.initialize();
return executor;
}
}
...@@ -4,6 +4,7 @@ import com.yeejoin.amos.component.feign.config.InnerInvokException; ...@@ -4,6 +4,7 @@ import com.yeejoin.amos.component.feign.config.InnerInvokException;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import java.util.List; import java.util.List;
...@@ -26,4 +27,16 @@ public interface McbWarningFeign { ...@@ -26,4 +27,16 @@ public interface McbWarningFeign {
@GetMapping("/task/getWarningInfoCountByObjectId") @GetMapping("/task/getWarningInfoCountByObjectId")
FeignClientResult<Integer> getWarningInfoCountByObjectId(@RequestParam(value = "code") String code); FeignClientResult<Integer> getWarningInfoCountByObjectId(@RequestParam(value = "code") String code);
/**
* 根据风险来源查询人员红黄绿吗信息
*/
@GetMapping("/task/getWarningInfoByTraceId")
FeignClientResult<String> getWarningInfoByTraceId(@RequestParam(value = "traceId") String traceId);
/**
* 根据风险来源查询人员红黄绿吗信息
*/
@PostMapping("/task/updateRawDataByTraceId")
FeignClientResult<Boolean> updateRawDataByTraceId(@RequestParam(value = "traceId") String traceId, @RequestParam(value = "rawData") String rawData);
} }
package com.yeejoin.amos.boot.module.jxiop.biz.emqx;
import cn.hutool.core.text.CharSequenceUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.module.jxiop.api.dto.BizMessage;
import com.yeejoin.amos.boot.module.jxiop.api.dto.TableContentVo;
import com.yeejoin.amos.boot.module.jxiop.api.feign.McbWarningFeign;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.component.emq.EmqxListener;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Component
@Slf4j
public class JobRawDataUrlMessage extends EmqxListener {
@Resource
protected EmqKeeper emqKeeper;
@Resource
private McbWarningFeign mcbWarningFeign;
// 江西电建接收红黄绿码主题
private static final String UPDATE_RAWDATA_JOBURL = "update/rawData/jobUrl";
@PostConstruct
void init() throws Exception {
emqKeeper.subscript(UPDATE_RAWDATA_JOBURL, 2, this);
}
@Override
public void processMessage(String topic, MqttMessage message) {
log.info("修改工单url数据{}", new String(message.getPayload()));
JSONObject ja = JSON.parseObject(new String(message.getPayload()));
jxIopUpdate(ja);
}
@Async("async")
public void jxIopUpdate(JSONObject analysisResult) {
FeignClientResult<String> sevenEntityMcb = null;
try {
sevenEntityMcb = mcbWarningFeign.getWarningInfoByTraceId(analysisResult.get("traceId").toString());
} catch (Exception e) {
e.printStackTrace();
}
if (sevenEntityMcb != null && 200 == sevenEntityMcb.getStatus() && CharSequenceUtil.isNotEmpty(sevenEntityMcb.getResult())) {
String result = sevenEntityMcb.getResult();
BizMessage alarmEvent = JSON.parseObject(result, BizMessage.class);
List<Map<String, String>> list = new ArrayList<>();
Map<String, String> hashMap = new HashMap<>();
hashMap.put("key", "1");
hashMap.put("name", "工单详情");
hashMap.put("url", analysisResult.get("url").toString());
list.add(hashMap);
TableContentVo tableContentVo = new TableContentVo("10", "链接跳转", list, "jump");
alarmEvent.getBizInfo().getDynamicDetails().get(0).getTabContent().add(tableContentVo);
String rawData = JSON.toJSONString(alarmEvent);
mcbWarningFeign.updateRawDataByTraceId(analysisResult.get("traceId").toString(), rawData);
log.info("预警rawData字段修改完成,rawData数据:{}", rawData);
}
}
}
...@@ -235,28 +235,18 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa ...@@ -235,28 +235,18 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa
List<String> strings = new ArrayList<>(); List<String> strings = new ArrayList<>();
if (CollectionUtils.isNotEmpty(overCertificateList)) { if (CollectionUtils.isNotEmpty(overCertificateList)) {
strings.add("过期证书:" + String.join("," , overCertificateList)); strings.add("过期证书:" + String.join("," , overCertificateList));
} else {
strings.add("过期证书:无");
} }
if (CollectionUtils.isNotEmpty(inMonthCertificateList)) { if (CollectionUtils.isNotEmpty(inMonthCertificateList)) {
strings.add("临期证书:" + String.join("," , inMonthCertificateList)); strings.add("临期证书:" + String.join("," , inMonthCertificateList));
} else {
strings.add("临期证书:无");
} }
if (CollectionUtils.isNotEmpty(noCertificateList)) { if (CollectionUtils.isNotEmpty(noCertificateList)) {
strings.add("缺少证书:" + String.join("," , noCertificateList)); strings.add("缺少证书:" + String.join("," , noCertificateList));
} else {
strings.add("缺少证书:无");
} }
String join = ""; String join = "";
if (CollectionUtils.isNotEmpty(strings)) { if (CollectionUtils.isNotEmpty(strings)) {
join = "(" + String.join(";", strings) + ")"; join = String.join(";", strings);
} }
List<String> missCerList = new ArrayList<>(); personBasic.setMissingCertificate(join);
missCerList.addAll(noCertificateList);
missCerList.addAll(overCertificateList);
String missCerStrings = String.join(",", missCerList);
personBasic.setMissingCertificate(missCerStrings);
if (CollectionUtils.isEmpty(list) && isInMonth == 0 && isOver == 0) { if (CollectionUtils.isEmpty(list) && isInMonth == 0 && isOver == 0) {
personBasic.setQrcodeColor(QrcodeColorEnum.GREEN.getCode()); personBasic.setQrcodeColor(QrcodeColorEnum.GREEN.getCode());
...@@ -288,7 +278,7 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa ...@@ -288,7 +278,7 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa
BizMessage bizMessage = new BizMessage(); BizMessage bizMessage = new BizMessage();
bizMessage.setIndexKey("RYFM"); bizMessage.setIndexKey("RYFM");
bizMessage.setIndexValue(personBasic.getPostName() + personBasic.getQrcodeDesc()); bizMessage.setIndexValue(personBasic.getPostName() + personBasic.getQrcodeDesc());
RiskBizInfoVo riskBizInfoVo = fetchData(personBasic, personAccount, personBasic.getPostName() + personBasic.getQrcodeDesc() + join); RiskBizInfoVo riskBizInfoVo = fetchData(personBasic, personAccount, join);
bizMessage.setBizInfo(riskBizInfoVo); bizMessage.setBizInfo(riskBizInfoVo);
bizMessage.setTraceId(String.valueOf(personBasic.getSequenceNbr())); bizMessage.setTraceId(String.valueOf(personBasic.getSequenceNbr()));
try { try {
...@@ -468,34 +458,24 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa ...@@ -468,34 +458,24 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa
List<String> strings = new ArrayList<>(); List<String> strings = new ArrayList<>();
if (CollectionUtils.isNotEmpty(overCertificateList)) { if (CollectionUtils.isNotEmpty(overCertificateList)) {
strings.add("过期证书:" + String.join("," , overCertificateList)); strings.add("过期证书:" + String.join("," , overCertificateList));
} else {
strings.add("过期证书:无");
} }
if (CollectionUtils.isNotEmpty(inMonthCertificateList)) { if (CollectionUtils.isNotEmpty(inMonthCertificateList)) {
strings.add("临期证书:" + String.join("," , inMonthCertificateList)); strings.add("临期证书:" + String.join("," , inMonthCertificateList));
} else {
strings.add("临期证书:无");
} }
if (CollectionUtils.isNotEmpty(noCertificateList)) { if (CollectionUtils.isNotEmpty(noCertificateList)) {
strings.add("缺少证书:" + String.join("," , noCertificateList)); strings.add("缺少证书:" + String.join("," , noCertificateList));
} else {
strings.add("缺少证书:无");
} }
String join = ""; String join = "";
if (CollectionUtils.isNotEmpty(strings)) { if (CollectionUtils.isNotEmpty(strings)) {
join = "(" + String.join(";", strings) + ")"; join = String.join(";", strings);
} }
List<String> missCerList = new ArrayList<>(); String missingCertificateOld = personBasic.getMissingCertificate();
missCerList.addAll(noCertificateList); personBasic.setMissingCertificate(join);
missCerList.addAll(overCertificateList);
String missCerStrings = String.join(",", missCerList);
personBasic.setMissingCertificate(missCerStrings);
CompanyModel companyModel = new CompanyModel(); CompanyModel companyModel = new CompanyModel();
//单位 //单位
companyModel = this.getCompanyModel(personAccount.getProjectId()); companyModel = this.getCompanyModel(personAccount.getProjectId());
String qrcodeDescOld = personBasic.getQrcodeDesc();
String qrcodeColorOld = personBasic.getQrcodeColor(); String qrcodeColorOld = personBasic.getQrcodeColor();
if (CollectionUtils.isEmpty(list) && isInMonth == 0 && isOver == 0) { if (CollectionUtils.isEmpty(list) && isInMonth == 0 && isOver == 0) {
personBasic.setQrcodeColor(QrcodeColorEnum.GREEN.getCode()); personBasic.setQrcodeColor(QrcodeColorEnum.GREEN.getCode());
...@@ -574,7 +554,7 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa ...@@ -574,7 +554,7 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa
} }
personAccount.setProjectName(companyModel.getCompanyName()); personAccount.setProjectName(companyModel.getCompanyName());
if (!qrcodeDescOld.equals(personBasic.getQrcodeDesc())) { if (StringUtils.isNotEmpty(join) && !join.equals(missingCertificateOld)) {
personBasic.setRecDate(new Date()); personBasic.setRecDate(new Date());
this.personBasicMapper.updateById(personBasic); this.personBasicMapper.updateById(personBasic);
if (("证书不全".equals(personBasic.getQrcodeDesc()) || if (("证书不全".equals(personBasic.getQrcodeDesc()) ||
...@@ -582,7 +562,7 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa ...@@ -582,7 +562,7 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa
BizMessage bizMessage = new BizMessage(); BizMessage bizMessage = new BizMessage();
bizMessage.setIndexKey("RYFM"); bizMessage.setIndexKey("RYFM");
bizMessage.setIndexValue(personBasic.getPostName() + personBasic.getQrcodeDesc()); bizMessage.setIndexValue(personBasic.getPostName() + personBasic.getQrcodeDesc());
RiskBizInfoVo riskBizInfoVo = fetchData(personBasic, personAccount, personBasic.getPostName() + personBasic.getQrcodeDesc() + join); RiskBizInfoVo riskBizInfoVo = fetchData(personBasic, personAccount, join);
bizMessage.setBizInfo(riskBizInfoVo); bizMessage.setBizInfo(riskBizInfoVo);
bizMessage.setDataSource("人员赋码"); bizMessage.setDataSource("人员赋码");
try { try {
......
...@@ -30,8 +30,10 @@ spring.liquibase.enabled=true ...@@ -30,8 +30,10 @@ spring.liquibase.enabled=true
## eureka properties: ## eureka properties:
#eureka.instance.prefer-ip-address=true eureka.instance.prefer-ip-address=true
#eureka.instance.ip-address=172.16.3.41 eureka.instance.ip-address=172.16.3.41
eureka.instance.instance-id=${eureka.instance.ip-address}:${server.port}
eureka.client.registry-fetch-interval-seconds=5 eureka.client.registry-fetch-interval-seconds=5
eureka.instance.health-check-url-path=/actuator/health eureka.instance.health-check-url-path=/actuator/health
eureka.instance.lease-expiration-duration-in-seconds=10 eureka.instance.lease-expiration-duration-in-seconds=10
...@@ -60,3 +62,5 @@ spring.http.encoding.force=true ...@@ -60,3 +62,5 @@ spring.http.encoding.force=true
privilege.fegin.name=AMOS-API-PRIVILEGE privilege.fegin.name=AMOS-API-PRIVILEGE
feign.client.config.default.connect-timeout=20000 feign.client.config.default.connect-timeout=20000
feign.client.config.default.read-timeout=20000 feign.client.config.default.read-timeout=20000
mcb.warning.name=MCB-SERVER
...@@ -102,8 +102,8 @@ public class MonitoringServiceImpl { ...@@ -102,8 +102,8 @@ public class MonitoringServiceImpl {
Region region = regionList.get(i); Region region = regionList.get(i);
list = stationCacheInfoDtoList.stream().filter(stationCacheInfoDto -> stationCacheInfoDto.getBelongProvince().equals(region.getRegionName())).collect(Collectors.toList()); list = stationCacheInfoDtoList.stream().filter(stationCacheInfoDto -> stationCacheInfoDto.getBelongProvince().equals(region.getRegionName())).collect(Collectors.toList());
List<StationCacheInfoDto> fdlist = list.stream().filter(stationCacheInfoDto -> stationCacheInfoDto.getStationType().equals("FDZ")).collect(Collectors.toList()); List<StationCacheInfoDto> fdlist = list.stream().filter(stationCacheInfoDto -> stationCacheInfoDto.getStationType().equals("FDZ")).collect(Collectors.toList());
List<StationCacheInfoDto> gflist = list.stream().filter(stationCacheInfoDto -> !stationCacheInfoDto.getStationType().contains("GFDZ")).collect(Collectors.toList()); List<StationCacheInfoDto> gflist = list.stream().filter(stationCacheInfoDto -> stationCacheInfoDto.getStationType().contains("GFDZ")).collect(Collectors.toList());
List<StationCacheInfoDto> cnlist = list.stream().filter(stationCacheInfoDto -> !stationCacheInfoDto.getStationType().equals("CNDZ")).collect(Collectors.toList()); List<StationCacheInfoDto> cnlist = list.stream().filter(stationCacheInfoDto -> stationCacheInfoDto.getStationType().equals("CNDZ")).collect(Collectors.toList());
if (list.size() > 0) { if (list.size() > 0) {
regionNationWideDto.setJsJoin(true); regionNationWideDto.setJsJoin(true);
} else { } else {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment