ADD: 检修计划添加项目负责人和项目成员

This commit is contained in:
贾同学
2025-09-08 10:21:34 +08:00
parent ecafa996a3
commit 7f2a61ba21
6 changed files with 66 additions and 7 deletions

View File

@@ -70,10 +70,17 @@ public class AdPlanParam {
private List<String> standardDevIds; private List<String> standardDevIds;
@ApiModelProperty(value = "测试项ID列表") @ApiModelProperty(value = "测试项ID列表")
private List<@Pattern(regexp = PatternRegex.SYSTEM_ID, message = DetectionValidMessage.SOURCE_ID_FORMAT_ERROR)String> testItems; private List<@Pattern(regexp = PatternRegex.SYSTEM_ID, message = DetectionValidMessage.SOURCE_ID_FORMAT_ERROR) String> testItems;
@ApiModelProperty(value = "检测配置") @ApiModelProperty(value = "检测配置")
private AdPlanTestConfig testConfig; private AdPlanTestConfig testConfig;
@ApiModelProperty(value = "检测负责人")
private String leader;
@ApiModelProperty(value = "检测成员")
private List<String> memberIds;
/** /**
* 分页查询实体 * 分页查询实体
*/ */

View File

@@ -118,5 +118,17 @@ public class AdPlan extends BaseEntity implements Serializable {
* 是否为导入(比对式使用) 0-否 1-是 * 是否为导入(比对式使用) 0-否 1-是
*/ */
private Integer importFlag; private Integer importFlag;
/**
* 检测负责人
*/
private String leader;
/**
* 检测成员
*/
private String members;
} }

View File

@@ -156,4 +156,16 @@ public class AdPlanVO {
* 是否导入0-否 1-是 * 是否导入0-否 1-是
*/ */
private Integer importFlag; private Integer importFlag;
/**
* 检测负责人
*/
private String leader;
private String leaderName;
/**
* 检测成员
*/
private String members;
private String membersName;
} }

View File

@@ -84,6 +84,8 @@ import com.njcn.gather.system.dictionary.service.IDictTreeService;
import com.njcn.gather.system.dictionary.service.IDictTypeService; import com.njcn.gather.system.dictionary.service.IDictTypeService;
import com.njcn.gather.type.pojo.po.DevType; import com.njcn.gather.type.pojo.po.DevType;
import com.njcn.gather.type.service.IDevTypeService; import com.njcn.gather.type.service.IDevTypeService;
import com.njcn.gather.user.user.pojo.po.SysUser;
import com.njcn.gather.user.user.service.ISysUserService;
import com.njcn.web.utils.ExcelUtil; import com.njcn.web.utils.ExcelUtil;
import com.njcn.web.utils.HttpServletUtil; import com.njcn.web.utils.HttpServletUtil;
import com.njcn.web.utils.PoiUtil; import com.njcn.web.utils.PoiUtil;
@@ -143,6 +145,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
private final IPqIcdPathService pqIcdPathService; private final IPqIcdPathService pqIcdPathService;
private final IAdPariService adPairService; private final IAdPariService adPairService;
private final IAdPlanTestConfigService adPlanTestConfigService; private final IAdPlanTestConfigService adPlanTestConfigService;
private final ISysUserService sysUserService;
private final JdbcTemplate jdbcTemplate; private final JdbcTemplate jdbcTemplate;
@Value("${report.reportDir}") @Value("${report.reportDir}")
@@ -200,7 +203,6 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
} else { } else {
adPlanVO.setProgress(0.0f); adPlanVO.setProgress(0.0f);
} }
if (StrUtil.isNotBlank(adPlan.getTestItem())) { if (StrUtil.isNotBlank(adPlan.getTestItem())) {
adPlanVO.setTestItems(Arrays.asList(adPlan.getTestItem().split(StrUtil.COMMA))); adPlanVO.setTestItems(Arrays.asList(adPlan.getTestItem().split(StrUtil.COMMA)));
List<DictTree> dictTreeList = dictTreeService.listByIds(adPlanVO.getTestItems()); List<DictTree> dictTreeList = dictTreeService.listByIds(adPlanVO.getTestItems());
@@ -232,6 +234,17 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
AdPlanTestConfig testConfig = adPlanTestConfigService.getOne(new LambdaQueryWrapper<AdPlanTestConfig>().eq(AdPlanTestConfig::getPlanId, adPlan.getFatherPlanId())); AdPlanTestConfig testConfig = adPlanTestConfigService.getOne(new LambdaQueryWrapper<AdPlanTestConfig>().eq(AdPlanTestConfig::getPlanId, adPlan.getFatherPlanId()));
adPlanVO.setTestConfig(testConfig); adPlanVO.setTestConfig(testConfig);
} }
if (StrUtil.isNotBlank(adPlan.getLeader())) {
SysUser leader = sysUserService.getById(adPlan.getLeader());
if (leader != null) {
adPlanVO.setLeaderName(leader.getName());
}
}
if (StrUtil.isNotBlank(adPlan.getMembers())) {
List<String> memberIds = Arrays.asList(adPlan.getMembers().split(StrUtil.COMMA));
List<SysUser> memberList = sysUserService.listByIds(memberIds);
adPlanVO.setMembersName(memberList.stream().map(SysUser::getName).reduce((a, b) -> a + "," + b).orElse(""));
}
} }
@Override @Override
@@ -241,7 +254,6 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
this.checkRepeat(param, false, CommonEnum.FATHER_ID.getValue()); this.checkRepeat(param, false, CommonEnum.FATHER_ID.getValue());
AdPlan adPlan = new AdPlan(); AdPlan adPlan = new AdPlan();
BeanUtil.copyProperties(param, adPlan); BeanUtil.copyProperties(param, adPlan);
String planId = UUID.randomUUID().toString().replaceAll("-", ""); String planId = UUID.randomUUID().toString().replaceAll("-", "");
adPlan.setId(planId); adPlan.setId(planId);
adPlan.setDatasourceId(String.join(StrUtil.COMMA, param.getDatasourceIds())); adPlan.setDatasourceId(String.join(StrUtil.COMMA, param.getDatasourceIds()));
@@ -283,6 +295,9 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
if (CollUtil.isNotEmpty(param.getTestItems())) { if (CollUtil.isNotEmpty(param.getTestItems())) {
adPlan.setTestItem(String.join(StrUtil.COMMA, param.getTestItems())); adPlan.setTestItem(String.join(StrUtil.COMMA, param.getTestItems()));
} }
if (CollUtil.isNotEmpty(param.getMemberIds())) {
adPlan.setMembers(String.join(StrUtil.COMMA, param.getMemberIds()));
}
this.save(adPlan); this.save(adPlan);
DictData dictData = dictDataService.getDictDataById(param.getPattern()); DictData dictData = dictDataService.getDictDataById(param.getPattern());
@@ -381,7 +396,9 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
if (CollUtil.isNotEmpty(param.getTestItems())) { if (CollUtil.isNotEmpty(param.getTestItems())) {
plan2.setTestItem(String.join(StrUtil.COMMA, param.getTestItems())); plan2.setTestItem(String.join(StrUtil.COMMA, param.getTestItems()));
} }
if (CollUtil.isNotEmpty(param.getMemberIds())) {
plan2.setMembers(String.join(StrUtil.COMMA, param.getMemberIds()));
}
DictData dictData = dictDataService.getDictDataById(param.getPattern()); DictData dictData = dictDataService.getDictDataById(param.getPattern());
if (PatternEnum.CONTRAST.getValue().equals(dictData.getCode())) { if (PatternEnum.CONTRAST.getValue().equals(dictData.getCode())) {
List<AdPlan> childrenPlan = this.lambdaQuery().eq(AdPlan::getFatherPlanId, param.getId()).list(); List<AdPlan> childrenPlan = this.lambdaQuery().eq(AdPlan::getFatherPlanId, param.getId()).list();

View File

@@ -10,7 +10,9 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.LogUtil; import com.njcn.common.utils.LogUtil;
import com.njcn.gather.user.user.pojo.param.SysUserParam; import com.njcn.gather.user.user.pojo.param.SysUserParam;
import com.njcn.gather.user.user.pojo.po.SysRole;
import com.njcn.gather.user.user.pojo.po.SysUser; import com.njcn.gather.user.user.pojo.po.SysUser;
import com.njcn.gather.user.user.service.ISysUserRoleService;
import com.njcn.gather.user.user.service.ISysUserService; import com.njcn.gather.user.user.service.ISysUserService;
import com.njcn.web.controller.BaseController; import com.njcn.web.controller.BaseController;
import com.njcn.web.utils.HttpResultUtil; import com.njcn.web.utils.HttpResultUtil;
@@ -24,6 +26,7 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
/** /**
@@ -38,6 +41,7 @@ import java.util.List;
public class SysUserController extends BaseController { public class SysUserController extends BaseController {
private final ISysUserService sysUserService; private final ISysUserService sysUserService;
private final ISysUserRoleService sysUserRoleService;
@OperateInfo(info = LogEnum.SYSTEM_COMMON) @OperateInfo(info = LogEnum.SYSTEM_COMMON)
@PostMapping("/list") @PostMapping("/list")
@@ -121,6 +125,13 @@ public class SysUserController extends BaseController {
String methodDescribe = getMethodDescribe("getAll"); String methodDescribe = getMethodDescribe("getAll");
LogUtil.njcnDebug(log, "{},查询所有用户", methodDescribe); LogUtil.njcnDebug(log, "{},查询所有用户", methodDescribe);
List<SysUser> result = sysUserService.lambdaQuery().eq(SysUser::getState, DataStateEnum.ENABLE.getCode()).list(); List<SysUser> result = sysUserService.lambdaQuery().eq(SysUser::getState, DataStateEnum.ENABLE.getCode()).list();
result.forEach(user -> {
user.setPassword(null);
List<SysRole> sysRoles = sysUserRoleService.listRoleByUserId(user.getId());
user.setRoleIds(sysRoles.stream().map(SysRole::getId).collect(Collectors.toList()));
user.setRoleCodes(sysRoles.stream().map(SysRole::getCode).collect(Collectors.toList()));
user.setRoleNames(sysRoles.stream().map(SysRole::getName).collect(Collectors.toList()));
});
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
} }
} }

View File

@@ -1,7 +1,5 @@
package com.njcn.gather.user.user.pojo.po; package com.njcn.gather.user.user.pojo.po;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
@@ -10,11 +8,11 @@ import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer; import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer; import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import com.njcn.db.mybatisplus.bo.BaseEntity; import com.njcn.db.mybatisplus.bo.BaseEntity;
import io.swagger.models.auth.In;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
/** /**
@@ -91,6 +89,8 @@ public class SysUser extends BaseEntity implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private List<String> roleIds; private List<String> roleIds;
@TableField(exist = false)
private List<String> roleCodes;
@TableField(exist = false) @TableField(exist = false)
private List<String> roleNames; private List<String> roleNames;