认证-参数项收集-查询工程接口人

This commit is contained in:
liyawei
2022-05-16 15:29:38 +08:00
parent ecf699bc66
commit 19a93eafa6
7 changed files with 137 additions and 33 deletions
@@ -162,8 +162,8 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
@AutoLog(value = "参数项收集清单-查询工程接口人列表")
@ApiOperation(value="参数项收集清单-查询工程接口人列表", notes="参数项收集清单-查询工程接口人列表")
@GetMapping(value = "/querySdtList")
public Result<List<SysUser>> querySdtList(ParamsCollectManifestVO paramsCollectManifestVO) {
List<SysUser> sdtList = paramsCollectManifestEOService.querySdtList(paramsCollectManifestVO);
public Result<List<Map<String,String>>> querySdtList(ParamsCollectManifestVO paramsCollectManifestVO) {
List<Map<String,String>> sdtList = paramsCollectManifestEOService.querySdtList(paramsCollectManifestVO);
return Result.OK(sdtList);
}
@@ -260,7 +260,7 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
* @return
*/
@AutoLog(value = "参数项收集清单-分配填写人")
@ApiOperation(value="参数项收集清单-分配工程接口", notes="参数项收集清单-分配工程接口")
@ApiOperation(value="参数项收集清单-分配填写", notes="参数项收集清单-分配填写")
@PostMapping(value = "/updateDreBatch")
public Result<?> updateDreBatch(ParamsCollectManifestVO paramsCollectManifestVO) {
boolean isSuccess = paramsCollectManifestEOService.updateDreBatch(paramsCollectManifestVO);
@@ -290,13 +290,13 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
}
/**
* 冻结配置-下拉选项
* 冻结配置,引用参数-下拉选项
*
* @param paramsCollectManifestVO
* @return
*/
@AutoLog(value = "参数项收集清单-冻结配置-下拉选项")
@ApiOperation(value="参数项收集清单-冻结配置-下拉选项", notes="参数项收集清单-冻结配置-下拉选项")
@AutoLog(value = "参数项收集清单-配置下拉选项")
@ApiOperation(value="参数项收集清单-配置下拉选项", notes="参数项收集清单-配置下拉选项")
@PostMapping(value = "/getConfigLableList")
public Result<?> getConfigLableList(ParamsCollectManifestVO paramsCollectManifestVO) {
List<Map<String, String>> configLableList = paramsCollectManifestEOService.getConfigLabelList(paramsCollectManifestVO);
@@ -321,6 +321,28 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
}
}
/**
* 引用参数
*
* @param paramsCollectManifestVO
* @return
*/
@AutoLog(value = "参数项收集清单-引用参数")
@ApiOperation(value="参数项收集清单-引用参数", notes="参数项收集清单-引用参数")
@PostMapping(value = "/referParams")
public Result<?> referParams(ParamsCollectManifestVO paramsCollectManifestVO) {
boolean isSuccess = paramsCollectManifestEOService.referParams(paramsCollectManifestVO);
if (isSuccess) {
return Result.OK("引用参数成功!");
} else {
return Result.error("引用参数失败!");
}
}
@@ -26,7 +26,6 @@
<result column="dre" property="dre" />
<result column="deadline" property="deadline" />
<result column="params_manifest_id" property="paramsManifestId" />
<result column="is_lock" property="isLock" />
</resultMap>
<sql id="BaseQuerySql">
<where>
@@ -60,6 +59,9 @@
<when test="paramsCollectManifestEO.userTypes == 'sdt,dre'">
AND (sdt = #{paramsCollectManifestEO.sdt} or dre = #{paramsCollectManifestEO.dre}) AND state != '1'
</when>
<when test="paramsCollectManifestEO.userTypes == 'guest'">
AND (sdt = #{paramsCollectManifestEO.sdt} or dre = #{paramsCollectManifestEO.dre})
</when>
</choose>
</if>
@@ -15,6 +15,7 @@
<result column="motor" property="motor" />
<result column="params_manifest_id" property="paramsManifestId" />
<result column="display_seq" property="displaySeq" />
<result column="is_lock" property="isLock" />
</resultMap>
<update id="updateForeach" parameterType="java.util.List">
@@ -14,5 +14,7 @@
<result column="battery" property="battery" />
<result column="motor" property="motor" />
<result column="params_manifest_id" property="paramsManifestId" />
<result column="display_seq" property="displaySeq" />
<result column="is_lock" property="isLock" />
</resultMap>
</mapper>
@@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO;
import com.jero.modules.cert.collect.vo.ParamsCollectManifestVO;
import com.jero.modules.cert.template.entity.ParamsInfoPublishEO;
import com.jero.modules.system.entity.SysUser;
import java.util.List;
import java.util.Map;
@@ -88,7 +87,7 @@ public interface IParamsCollectManifestEOService extends IService<ParamsCollectM
*/
List<ParamsInfoPublishEO> getParamsInfoPublishListForAdd(ParamsCollectManifestVO paramsCollectManifestVO);
List<SysUser> querySdtList(ParamsCollectManifestVO paramsCollectManifestVO);
List<Map<String,String>> querySdtList(ParamsCollectManifestVO paramsCollectManifestVO);
String getLoginUserTypes(ParamsCollectManifestVO paramsCollectManifestVO);
@@ -112,9 +111,12 @@ public interface IParamsCollectManifestEOService extends IService<ParamsCollectM
// 下发收集
boolean issueCollection(ParamsCollectManifestVO paramsCollectManifestVO);
// 冻结配置-下拉选项
// 配置-下拉选项
List<Map<String, String>> getConfigLabelList(ParamsCollectManifestVO paramsCollectManifestVO);
// 冻结配置
boolean lockConfigColumn(ParamsCollectManifestVO paramsCollectManifestVO);
// 引用参数
boolean referParams(ParamsCollectManifestVO paramsCollectManifestVO);
}
@@ -8,6 +8,7 @@ import com.jero.common.constant.CommonConstant;
import com.jero.common.constant.enums.CutEnum;
import com.jero.common.constant.enums.MessageTypeEnum;
import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.vo.LoginUser;
import com.jero.generater.modules.online.cgform.entity.OnlCgformField;
import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl;
@@ -203,16 +204,22 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
public List<Map<String, Object>> queryList(ParamsCollectManifestEO paramsCollectManifestEO, String cut) {
String paramsManifestId = paramsCollectManifestEO.getParamsManifestId();
// String userTypes = paramsCollectManifestEO.getUserTypes();
// LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录用户
// if ("sdt".equals(userTypes)) {
// paramsCollectManifestEO.setSdt(loginUser.getUsername());
// } else if ("dre".equals(userTypes)) {
// paramsCollectManifestEO.setDre(loginUser.getUsername());
// } else if ("sdt,dre".equals(userTypes)) {
// paramsCollectManifestEO.setSdt(loginUser.getUsername());
// paramsCollectManifestEO.setDre(loginUser.getUsername());
// }
String userTypes = paramsCollectManifestEO.getUserTypes();
if (StringUtils.isBlank(userTypes)) {
throw new JeroBootException("用户类型参数不能为空!");
}
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录用户
if ("sdt".equals(userTypes)) {
paramsCollectManifestEO.setSdt(loginUser.getUsername());
} else if ("dre".equals(userTypes)) {
paramsCollectManifestEO.setDre(loginUser.getUsername());
} else if ("sdt,dre".equals(userTypes)) {
paramsCollectManifestEO.setSdt(loginUser.getUsername());
paramsCollectManifestEO.setDre(loginUser.getUsername());
} else if ("guest".equals(userTypes)) {
paramsCollectManifestEO.setSdt(loginUser.getUsername());
paramsCollectManifestEO.setDre(loginUser.getUsername());
}
List<ParamsCollectManifestEO> list = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO); // 查询固定列 TODO 添加用户类型权限
List<ParamsConfigEO> paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); // 查询配置列
@@ -230,7 +237,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
list.forEach(collectManifestEO -> { // 参数收集清单
// 处理数据字典字段 中英文切换 认证类型,责任领域
List<String> certCategory = Arrays.asList(collectManifestEO.getCertCategory().split(","));
List<String> dutyTerritory = Arrays.asList(collectManifestEO.getDutyTerritory().split(","));
List<String> dutyTerritory = Arrays.asList(collectManifestEO.getDutyTerritory().split(",")); // 单选
String certCategoryName = "";
String dutyTerritoryName = "";
if (CutEnum.CN.getValue().equals(cut)) {
@@ -284,6 +291,13 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
});
}
// 处理工程接口人
Map<String, Object> sdtMap = new HashMap<>();
sdtMap.put("controlType", controlType);
sdtMap.put("dutyTerritory", StringUtils.join(dutyTerritory, ","));
sdtMap.put("dataValue", collectManifestEO.getSdt());
manifestMap.put("sdt", sdtMap);
listMap.add(manifestMap);
});
@@ -645,15 +659,21 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
}
@Override
public List<SysUser> querySdtList(ParamsCollectManifestVO paramsCollectManifestVO) {
List<SysUser> sdtList = new ArrayList<>();
public List<Map<String,String>> querySdtList(ParamsCollectManifestVO paramsCollectManifestVO) {
List<Map<String,String>> sdtList = new ArrayList<>();
ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(paramsCollectManifestVO.getProjectId(), paramsCollectManifestVO.getDutyTerritory());
if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) {
String sdtId = projectRelatedPersonnel.getEngineeringInterfacePerson();
if (StringUtils.isNotBlank(sdtId)) {
SysUser sysUser = sysUserService.getById(sdtId);
if (ObjectUtil.isNotEmpty(sysUser)) {
sdtList.add(sysUser);
String sdtIds = projectRelatedPersonnel.getEngineeringInterfacePerson();
if (StringUtils.isNotBlank(sdtIds)) {
String[] sdtIdStr = sdtIds.split(",");
for (int i=0; i<sdtIdStr.length; i++) {
SysUser sysUser = sysUserService.getById(sdtIdStr[i]);
if (ObjectUtil.isNotEmpty(sysUser)) {
Map<String, String> userMap = new HashMap<>();
userMap.put("label", sysUser.getUsername());
userMap.put("value", sysUser.getUsername());
sdtList.add(userMap);
}
}
}
}
@@ -929,11 +949,16 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
@Override
public List<Map<String, String>> getConfigLabelList(ParamsCollectManifestVO paramsCollectManifestVO) {
String paramsManifestId = paramsCollectManifestVO.getParamsManifestId();
String configFlag = paramsCollectManifestVO.getConfigFlag();
// 查询未冻结配置列
// 查询配置列
LambdaQueryWrapper<ParamsConfigEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(ParamsConfigEO::getParamsManifestId, paramsManifestId);
queryWrapper.eq(ParamsConfigEO::getIsLock, ConfigLockEnum.NO.getValue());
if ("2".equals(configFlag)) { // 指定查询非冻结配置
queryWrapper.eq(ParamsConfigEO::getIsLock, ConfigLockEnum.NO.getValue());
}
queryWrapper.orderByAsc(ParamsConfigEO::getDisplaySeq);
List<ParamsConfigEO> paramsConfigEOList = paramsConfigEOService.list(queryWrapper);
@@ -952,19 +977,65 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
@Override
public boolean lockConfigColumn(ParamsCollectManifestVO paramsCollectManifestVO) {
String paramsManifestId = paramsCollectManifestVO.getParamsManifestId();
String paramsConfigIds = paramsCollectManifestVO.getParamsConfigIds();
String[] paramsConfigIdStr = paramsConfigIds.split(",");
List<String> paramsConfigIdList = Arrays.asList(paramsConfigIds.split(","));
List<ParamsConfigEO> updateConfigEOList = new ArrayList<>();
for (int i=0; i<paramsConfigIdStr.length; i++) {
// 将之前被冻结的列 解冻
List<ParamsConfigEO> paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId);
paramsConfigEOList = paramsConfigEOList.stream().filter(e-> !paramsConfigIdList.contains(e.getId())).collect(Collectors.toList());
paramsConfigEOList.forEach(paramsConfigEO -> {
if (ConfigLockEnum.YES.getValue().equals(paramsConfigEO.getIsLock())) {
ParamsConfigEO updateConfigEO = new ParamsConfigEO();
updateConfigEO.setId(paramsConfigEO.getId());
updateConfigEO.setIsLock(ConfigLockEnum.NO.getValue());
updateConfigEOList.add(updateConfigEO);
}
});
// 冻结选择的配置列
for (String paramsConfigId : paramsConfigIdList) {
ParamsConfigEO updateConfigEO = new ParamsConfigEO();
updateConfigEO.setId(paramsConfigIdStr[i]);
updateConfigEO.setId(paramsConfigId);
updateConfigEO.setIsLock(ConfigLockEnum.YES.getValue());
updateConfigEOList.add(updateConfigEO);
}
return paramsConfigEOService.updateBatchById(updateConfigEOList);
}
@Override
public boolean referParams(ParamsCollectManifestVO paramsCollectManifestVO) {
String paramsCollectManifestIds = paramsCollectManifestVO.getIds();
String sourceConfigId = paramsCollectManifestVO.getSourceConfigId();
String targetConfigIds = paramsCollectManifestVO.getTargetConfigIds();
if (targetConfigIds.contains(sourceConfigId)) {
throw new JeroBootException("引用到的配置不能包含被引用配置!");
}
String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(",");
String[] targetConfigIdStr = targetConfigIds.split(",");
ParamsConfigDataEO sourceConfigDataEO = paramsConfigDataEOService.getById(sourceConfigId);
List<ParamsConfigDataEO> updateConfigDataEOList = new ArrayList<>();
for (int i=0; i<paramsCollectManifestIdStr.length; i++) {
for (int j=0; j<targetConfigIdStr.length; j++) {
ParamsConfigDataEO targetConfigDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(targetConfigIdStr[j], paramsCollectManifestIdStr[i]);
if (ObjectUtil.isNotEmpty(targetConfigDataEO)) {
ParamsConfigDataEO updateConfigDataEO = new ParamsConfigDataEO();
updateConfigDataEO.setId(targetConfigDataEO.getId());
updateConfigDataEO.setTextData(sourceConfigDataEO.getTextData());
updateConfigDataEO.setPullData(sourceConfigDataEO.getPullData());
updateConfigDataEO.setFileConnectId(sourceConfigDataEO.getFileConnectId());
updateConfigDataEOList.add(updateConfigDataEO);
}
}
}
return paramsConfigDataEOService.updateBatchById(updateConfigDataEOList);
}
/**
* 实体对象转成Map
* @param obj 实体对象
@@ -34,4 +34,8 @@ public class ParamsCollectManifestVO {
private String sdt; // 工程接口人
private String dre; // 填写人
private String paramsConfigIds; // 参数配置ids
private String configFlag; // 1-全部配置 2-非冻结配置
private String sourceConfigId; // 引用参数专用
private String targetConfigIds; // 引用参数专用
}