云前置改造-补召功能调整
This commit is contained in:
@@ -7,6 +7,8 @@ import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.csdevice.param.IcdBzParam;
|
||||
import com.njcn.csdevice.param.IcdBzReplyParam;
|
||||
import com.njcn.csdevice.pojo.vo.CldLogsVo;
|
||||
import com.njcn.csdevice.service.ICsTerminalReplyService;
|
||||
import com.njcn.web.controller.BaseController;
|
||||
@@ -52,14 +54,10 @@ public class CsTerminalReplyController extends BaseController {
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/updateData")
|
||||
@ApiOperation("更新推送结果")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "id", value = "参数", required = true),
|
||||
@ApiImplicitParam(name = "state", value = "状态", required = true),
|
||||
@ApiImplicitParam(name = "deviceId", value = "设备id", required = true)
|
||||
})
|
||||
public HttpResult<String> updateData(@RequestParam String id,@RequestParam Integer state,@RequestParam String deviceId){
|
||||
@ApiImplicitParam(name = "param", value = "参数", required = true)
|
||||
public HttpResult<String> updateData(@RequestBody @Validated IcdBzReplyParam param){
|
||||
String methodDescribe = getMethodDescribe("updateData");
|
||||
csTerminalReplyService.updateReplyData(id,state,deviceId);
|
||||
csTerminalReplyService.updateReplyData(param);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@@ -73,5 +71,15 @@ public class CsTerminalReplyController extends BaseController {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/updateBzData")
|
||||
@ApiOperation("更新补召推送结果")
|
||||
@ApiImplicitParam(name = "param", value = "参数", required = true)
|
||||
public HttpResult<String> updateBzData(@RequestBody @Validated IcdBzReplyParam param){
|
||||
String methodDescribe = getMethodDescribe("updateBzData");
|
||||
csTerminalReplyService.updateBzData(param);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -2,9 +2,12 @@ package com.njcn.csdevice.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.njcn.csdevice.param.IcdBzParam;
|
||||
import com.njcn.csdevice.param.IcdBzReplyParam;
|
||||
import com.njcn.csdevice.pojo.po.CsTerminalReply;
|
||||
import com.njcn.csdevice.pojo.vo.CldLogsVo;
|
||||
import com.njcn.web.pojo.param.BaseParam;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -20,10 +23,12 @@ public interface ICsTerminalReplyService extends IService<CsTerminalReply> {
|
||||
|
||||
List<String> queryReplyData();
|
||||
|
||||
void updateReplyData(String id,Integer state,String deviceId);
|
||||
void updateReplyData(IcdBzReplyParam param);
|
||||
|
||||
List<CsTerminalReply> getBzReplyData(String lineId);
|
||||
|
||||
Page<CldLogsVo> getBzLogs(BaseParam param);
|
||||
|
||||
void updateBzData(IcdBzReplyParam param);
|
||||
|
||||
}
|
||||
|
||||
@@ -4,9 +4,7 @@ import com.njcn.csdevice.param.IcdBzParam;
|
||||
import com.njcn.csdevice.param.IcdLedgerParam;
|
||||
import com.njcn.csdevice.param.IcdParam;
|
||||
import com.njcn.csdevice.pojo.vo.CldLedgerVo;
|
||||
import com.njcn.csdevice.pojo.vo.CldLogsVo;
|
||||
import com.njcn.csdevice.pojo.vo.DeviceInfo;
|
||||
import com.njcn.web.pojo.param.BaseParam;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.njcn.csdevice.api.CsLedgerFeignClient;
|
||||
import com.njcn.csdevice.mapper.CsTerminalReplyMapper;
|
||||
import com.njcn.csdevice.param.IcdBzReplyParam;
|
||||
import com.njcn.csdevice.pojo.po.CsEquipmentDeliveryPO;
|
||||
import com.njcn.csdevice.pojo.po.CsTerminalReply;
|
||||
import com.njcn.csdevice.pojo.vo.CldLogsVo;
|
||||
@@ -102,11 +103,13 @@ public class CsTerminalReplyServiceImpl extends ServiceImpl<CsTerminalReplyMappe
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateReplyData(String id,Integer state,String deviceId) {
|
||||
public void updateReplyData(IcdBzReplyParam param) {
|
||||
LambdaUpdateWrapper<CsTerminalReply> wrapper = new LambdaUpdateWrapper<>();
|
||||
wrapper.set(CsTerminalReply::getIsReceived,state)
|
||||
.eq(CsTerminalReply::getReplyId,id)
|
||||
.eq(CsTerminalReply::getDeviceId,deviceId);
|
||||
wrapper.set(CsTerminalReply::getIsReceived,param.getState())
|
||||
.set(CsTerminalReply::getReceivedCode,param.getCode())
|
||||
.set(CsTerminalReply::getReceivedMsg,param.getMsg())
|
||||
.eq(CsTerminalReply::getReplyId,param.getId())
|
||||
.eq(CsTerminalReply::getDeviceId,param.getDeviceId());
|
||||
this.update(wrapper);
|
||||
}
|
||||
|
||||
@@ -181,7 +184,18 @@ public class CsTerminalReplyServiceImpl extends ServiceImpl<CsTerminalReplyMappe
|
||||
cldLogsVo.setLineName(ledgerMap.get(param.getSearchValue()).getName());
|
||||
cldLogsVo.setLog(getLogDescription(item.getCode()));
|
||||
cldLogsVo.setLogTime(item.getCreateTime());
|
||||
cldLogsVo.setStatus(Objects.equals(item.getIsReceived(), 0)?"补召已下发":"补召成功");
|
||||
if (Objects.equals(item.getIsReceived(),0)) {
|
||||
cldLogsVo.setStatus("补召已下发");
|
||||
cldLogsVo.setResult("/");
|
||||
} else {
|
||||
if (item.getReceivedCode() == 200) {
|
||||
cldLogsVo.setStatus("补召成功");
|
||||
cldLogsVo.setResult("补召成功");
|
||||
} else {
|
||||
cldLogsVo.setStatus("补召失败");
|
||||
cldLogsVo.setResult(item.getReceivedMsg());
|
||||
}
|
||||
}
|
||||
cldLogsVos.add(cldLogsVo);
|
||||
});
|
||||
page.setRecords(cldLogsVos);
|
||||
@@ -191,6 +205,20 @@ public class CsTerminalReplyServiceImpl extends ServiceImpl<CsTerminalReplyMappe
|
||||
return page;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateBzData(IcdBzReplyParam param) {
|
||||
LambdaUpdateWrapper<CsTerminalReply> wrapper = new LambdaUpdateWrapper<>();
|
||||
wrapper.set(CsTerminalReply::getIsReceived,param.getState())
|
||||
.set(CsTerminalReply::getReceivedCode,param.getCode())
|
||||
.set(CsTerminalReply::getReceivedMsg,param.getMsg())
|
||||
.eq(CsTerminalReply::getReplyId,param.getId())
|
||||
.eq(CsTerminalReply::getDeviceId,param.getDeviceId());
|
||||
if (Objects.nonNull(param.getLineId()) && StringUtils.isNotBlank(param.getLineId())) {
|
||||
wrapper.eq(CsTerminalReply::getLineId,param.getLineId());
|
||||
}
|
||||
this.update(wrapper);
|
||||
}
|
||||
|
||||
public String getLogDescription(String code) {
|
||||
String result;
|
||||
switch (code) {
|
||||
|
||||
@@ -9,7 +9,6 @@ import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.csp.sentinel.util.StringUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.access.utils.ChannelObjectUtil;
|
||||
import com.njcn.common.pojo.exception.BusinessException;
|
||||
import com.njcn.csdevice.param.IcdBzParam;
|
||||
@@ -20,19 +19,16 @@ import com.njcn.csdevice.pojo.param.CsEquipmentDeliveryAddParm;
|
||||
import com.njcn.csdevice.pojo.param.CsLineParam;
|
||||
import com.njcn.csdevice.pojo.po.*;
|
||||
import com.njcn.csdevice.pojo.vo.CldLedgerVo;
|
||||
import com.njcn.csdevice.pojo.vo.CldLogsVo;
|
||||
import com.njcn.csdevice.pojo.vo.DeviceInfo;
|
||||
import com.njcn.csdevice.service.*;
|
||||
import com.njcn.csharmonic.api.EventFeignClient;
|
||||
import com.njcn.csharmonic.pojo.po.CsEventPO;
|
||||
import com.njcn.csharmonic.pojo.vo.EventDetailVO;
|
||||
import com.njcn.mq.message.BZEventMessage;
|
||||
import com.njcn.mq.template.BZEventMessageTemplate;
|
||||
import com.njcn.redis.pojo.enums.AppRedisKey;
|
||||
import com.njcn.redis.utils.RedisUtil;
|
||||
import com.njcn.system.enums.DicDataEnum;
|
||||
import com.njcn.system.pojo.po.SysDicTreePO;
|
||||
import com.njcn.web.pojo.param.BaseParam;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -297,8 +293,8 @@ class IcdServiceImpl implements IcdService {
|
||||
CsTerminalLogs log = buildTerminalLog(uuid, device, csLineList);
|
||||
logsToSave.add(log);
|
||||
|
||||
CsTerminalReply reply = buildTerminalReply(uuid, device, csLineList);
|
||||
repliesToSave.add(reply);
|
||||
List<CsTerminalReply> reply = buildTerminalReply(uuid, device, csLineList);
|
||||
repliesToSave.addAll(reply);
|
||||
}
|
||||
csTerminalLogsService.saveBatch(logsToSave);
|
||||
csTerminalReplyService.saveBatch(repliesToSave);
|
||||
@@ -341,25 +337,47 @@ class IcdServiceImpl implements IcdService {
|
||||
return log;
|
||||
}
|
||||
|
||||
private CsTerminalReply buildTerminalReply(String replyId, CsEquipmentDeliveryPO device,
|
||||
private List<CsTerminalReply> buildTerminalReply(String replyId, CsEquipmentDeliveryPO device,
|
||||
List<CsLinePO> csLineList) {
|
||||
List<CsTerminalReply> replies = new ArrayList<>();
|
||||
List<String> lineIds = csLineList.stream()
|
||||
.filter(line -> Objects.equals(line.getDeviceId(), device.getId()))
|
||||
.map(CsLinePO::getLineId)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
CsTerminalReply reply = new CsTerminalReply();
|
||||
reply.setId(IdUtil.simpleUUID());
|
||||
reply.setReplyId(replyId);
|
||||
reply.setNodeId(device.getNodeId());
|
||||
reply.setProcessNo(device.getNodeProcess());
|
||||
reply.setDeviceId(device.getId());
|
||||
reply.setLineId(String.join(",", lineIds));
|
||||
reply.setIsReceived(0);
|
||||
reply.setCode("allEvent");
|
||||
return reply;
|
||||
lineIds.forEach(lineId -> {
|
||||
CsTerminalReply reply = new CsTerminalReply();
|
||||
reply.setId(IdUtil.simpleUUID());
|
||||
reply.setReplyId(replyId);
|
||||
reply.setNodeId(device.getNodeId());
|
||||
reply.setProcessNo(device.getNodeProcess());
|
||||
reply.setDeviceId(device.getId());
|
||||
reply.setLineId(lineId);
|
||||
reply.setIsReceived(0);
|
||||
reply.setCode("allEvent");
|
||||
replies.add(reply);
|
||||
});
|
||||
return replies;
|
||||
}
|
||||
|
||||
// private CsTerminalReply buildTerminalReply(String replyId, CsEquipmentDeliveryPO device,
|
||||
// List<CsLinePO> csLineList) {
|
||||
// List<String> lineIds = csLineList.stream()
|
||||
// .filter(line -> Objects.equals(line.getDeviceId(), device.getId()))
|
||||
// .map(CsLinePO::getLineId)
|
||||
// .collect(Collectors.toList());
|
||||
//
|
||||
// CsTerminalReply reply = new CsTerminalReply();
|
||||
// reply.setId(IdUtil.simpleUUID());
|
||||
// reply.setReplyId(replyId);
|
||||
// reply.setNodeId(device.getNodeId());
|
||||
// reply.setProcessNo(device.getNodeProcess());
|
||||
// reply.setDeviceId(device.getId());
|
||||
// reply.setLineId(String.join(",", lineIds));
|
||||
// reply.setIsReceived(0);
|
||||
// reply.setCode("allEvent");
|
||||
// return reply;
|
||||
// }
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void bzFile(IcdBzParam param) {
|
||||
|
||||
Reference in New Issue
Block a user