添加补招小时批处理

This commit is contained in:
hzj
2025-08-21 19:38:10 +08:00
parent f4e1632386
commit e2f3ea7764
8 changed files with 137 additions and 10 deletions

View File

@@ -2,22 +2,33 @@ package com.njcn.device.pq.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.bpm.utils.CollectionUtils;
import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.pms.enums.PmsDeviceResponseEnum;
import com.njcn.device.pq.constant.Param;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.PqsTerminalLogsMapper;
import com.njcn.device.pq.pojo.dto.PqIcdPathDTO;
import com.njcn.device.pq.pojo.param.PqIcdPathParam;
import com.njcn.device.pq.pojo.po.PqDevType;
import com.njcn.device.pq.pojo.po.*;
import com.njcn.device.pq.service.IDeviceService;
import com.njcn.device.pq.service.PqDevTypeService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import com.njcn.user.api.UserFeignClient;
import com.njcn.user.pojo.po.User;
import com.njcn.web.pojo.param.BaseParam;
import com.njcn.web.utils.RequestUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -26,11 +37,12 @@ import java.util.function.Function;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.device.pq.pojo.po.PqIcdPath;
import com.njcn.device.pq.mapper.PqIcdPathMapper;
import com.njcn.device.pq.service.PqIcdPathService;
import org.springframework.transaction.annotation.Transactional;
import static com.njcn.device.pq.enums.LineBaseEnum.SUB_LEVEL;
/**
* Description:
* Date: 2024/11/5 11:24【需求编号】
@@ -44,7 +56,10 @@ public class PqIcdPathServiceImpl extends ServiceImpl<PqIcdPathMapper, PqIcdPath
private final PqDevTypeService devTypeService;
private final UserFeignClient userFeignClient;
private final IDeviceService deviceService;
private final PqsTerminalLogsMapper pqsTerminalLogsMapper;
private final DicDataFeignClient dicDataFeignClient;
private final LineMapper lineMapper;
@Override
public List<PqIcdPathDTO> icdPathList(List<String> devType) {
@@ -135,6 +150,35 @@ public class PqIcdPathServiceImpl extends ServiceImpl<PqIcdPathMapper, PqIcdPath
PqIcdPath icdPath = BeanUtil.copyProperties(param, PqIcdPath.class);
icdPath.setName(param.getFileName());
icdPath.setPath(param.getFilePath());
//查询绑定的icd的设备型号
List<PqDevType> pqDevTypeList = devTypeService.lambdaQuery().eq(PqDevType::getIcdId, param.getId()).eq(PqDevType::getState, 1).list();
if(!CollectionUtil.isEmpty(pqDevTypeList)) {
List<String> collect = pqDevTypeList.stream().map(PqDevType::getId).collect(Collectors.toList());
List<Device> list = deviceService.lambdaQuery().in(Device::getDevType,collect).eq(Device::getRunFlag, 0).list();
list.forEach(temp -> {
//记录日志
DictData dataDic = dicDataFeignClient.getDicDataByCodeAndType(DicDataEnum.DEV_PARAMETER.getCode(), DicDataTypeEnum.DEV_OPS.getCode()).getData();
String name = RequestUtil.getUserNickname();
PqsTerminalLogs pqsTerminalLogs = new PqsTerminalLogs();
pqsTerminalLogs.setLogsType(dataDic.getId());
//终端为4
pqsTerminalLogs.setTerminalType(4);
List<Line> subList = lineMapper.selectList(null);
Map<String, Line> subMap = subList.stream().collect(Collectors.toMap(Line::getId, Function.identity()));
Line dev = subMap.get(temp.getId());
String subName = subMap.get(dev.getPids().split(StrUtil.COMMA)[SUB_LEVEL.getCode()]).getName();
String temLos = "%s进行更新终端进程操作;终端名称 %s,修改了icd文件";
String tem = String.format(temLos, name, subName + "_" + dev.getName());
pqsTerminalLogs.setTerminalDescribe(tem);
pqsTerminalLogs.setState(DataStateEnum.ENABLE.getCode());
pqsTerminalLogs.setIsPush(0);
pqsTerminalLogs.setOperateType(Param.UPDATE);
pqsTerminalLogs.setObjIndex(temp.getId());
pqsTerminalLogsMapper.insert(pqsTerminalLogs);
});
}
return this.updateById(icdPath);
}

View File

@@ -3640,6 +3640,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
DeviceInfo deviceInfo = deviceInfos.get(0);
DeviceRebootMessage.DeviceInfo deviceInfo1 = new DeviceRebootMessage.DeviceInfo();
BeanUtils.copyProperties(deviceInfo, deviceInfo1);
deviceInfo1.setProcessNo(processNum);
List<DeviceRebootMessage.DeviceInfo.MonitorInfo> monitorInfoList = deviceInfo.getMonitorData().stream().map(tempMonitorInfo -> {
DeviceRebootMessage.DeviceInfo.MonitorInfo m = new DeviceRebootMessage.DeviceInfo.MonitorInfo();
BeanUtils.copyProperties(tempMonitorInfo, m);