Merge remote-tracking branch 'origin/dev_2nd_LCYH' into dev_2nd_LCYH

This commit is contained in:
范强强
2023-04-06 15:08:33 +08:00
7 changed files with 150 additions and 7 deletions
@@ -474,4 +474,15 @@ ALTER TABLE `auth_dummy_inventory_info`
-- 项目库-法规清单,增加字段 流程最后结束的时间(导出合规性报告时使用) 2023-4-03 未同步生产环境 -- 项目库-法规清单,增加字段 流程最后结束的时间(导出合规性报告时使用) 2023-4-03 未同步生产环境
ALTER TABLE `project_laws_inventory` ALTER TABLE `project_laws_inventory`
ADD COLUMN `process_end_time` datetime NULL COMMENT '流程最后结束的时间' AFTER `stand_id`; ADD COLUMN `process_end_time` datetime NULL COMMENT '流程最后结束的时间' AFTER `stand_id`;
-- 自定义表头中动态表头使用以下字段 2023-4-06 未同步生产环境
ALTER TABLE `head_custom`
ADD COLUMN `sort_params` varchar(255) NULL COMMENT '排序--动态表头' AFTER `sort`,
ADD COLUMN `click` varchar(255) NULL COMMENT '动态表头使用' AFTER `affirm_flag`,
ADD COLUMN `click1` varchar(255) NULL COMMENT '动态表头使用' AFTER `click`,
ADD COLUMN `click2` varchar(255) NULL COMMENT '动态表头使用' AFTER `click1`,
ADD COLUMN `click3` varchar(255) NULL COMMENT '动态表头使用' AFTER `click2`,
ADD COLUMN `click4` varchar(255) NULL COMMENT '动态表头使用' AFTER `click3`,
ADD COLUMN `click5` varchar(255) NULL COMMENT '动态表头使用' AFTER `click4`,
ADD COLUMN `click6` varchar(255) NULL COMMENT '动态表头使用' AFTER `click5`;
@@ -580,6 +580,9 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
map.put("db_field_txt", paramsConfigEO.getConfigName()); map.put("db_field_txt", paramsConfigEO.getConfigName());
map.put("type", true); //配置列 标识 map.put("type", true); //配置列 标识
map.put("orderNum", orderNumStart); //配置列 标识 map.put("orderNum", orderNumStart); //配置列 标识
map.put("headFieldCn","查看");
map.put("headFieldEn","View");
map.put("moduleFlag","上报库详情");
listConfig.add(map); listConfig.add(map);
orderNumStart ++; orderNumStart ++;
@@ -590,6 +593,10 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
for (int i = 0; i < fieldList.size(); i++) { for (int i = 0; i < fieldList.size(); i++) {
OnlCgformField onlCgformField = fieldList.get(i); OnlCgformField onlCgformField = fieldList.get(i);
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
map.put("headFieldCn",onlCgformField.getDbFieldTxt());
map.put("headFieldEn",onlCgformField.getDbFieldEnName());
map.put("moduleFlag","上报库详情");
map.put("field",onlCgformField.getDbFieldName());
String dbFieldName = onlCgformField.getDbFieldName(); String dbFieldName = onlCgformField.getDbFieldName();
if ("description".equals(dbFieldName)) { if ("description".equals(dbFieldName)) {
indexOfDescription = i; indexOfDescription = i;
@@ -651,6 +658,9 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
list.addAll(indexOfDescription+1, listConfig); list.addAll(indexOfDescription+1, listConfig);
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
map.put("headFieldCn","操作");
map.put("headFieldEn","Operation");
map.put("moduleFlag","上报库详情");
if(CutEnum.CN.getValue().equals(cut)){ if(CutEnum.CN.getValue().equals(cut)){
map.put("db_field_txt","操作"); map.put("db_field_txt","操作");
}else{ }else{
@@ -663,7 +673,11 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
list = list.stream().sorted( list = list.stream().sorted(
Comparator.comparing(ParamsReportDetailEOServiceImpl::getMapValueByOrderNum).thenComparing(ParamsReportDetailEOServiceImpl::getMapValueByOrderNum) Comparator.comparing(ParamsReportDetailEOServiceImpl::getMapValueByOrderNum).thenComparing(ParamsReportDetailEOServiceImpl::getMapValueByOrderNum)
).collect(Collectors.toList()); ).collect(Collectors.toList());
int count = 0;
for (Map<String, Object> mapTmp : list) {
//排序字段赋值,用于自定义列表
mapTmp.put("sortParams",String.valueOf(count++));
}
return list; return list;
} }
@@ -102,6 +102,30 @@ public class HeadCustomEO implements Comparable<HeadCustomEO> {
@ApiModelProperty(value = "确认标识") @ApiModelProperty(value = "确认标识")
private java.lang.String affirmFlag; private java.lang.String affirmFlag;
@ApiModelProperty(value = "排序--动态表头")
private String sortParams;
@ApiModelProperty(value = "动态表头使用")
private String click;
@ApiModelProperty(value = "动态表头使用")
private String click1;
@ApiModelProperty(value = "动态表头使用")
private String click2;
@ApiModelProperty(value = "动态表头使用")
private String click3;
@ApiModelProperty(value = "动态表头使用")
private String click4;
@ApiModelProperty(value = "动态表头使用")
private String click5;
@ApiModelProperty(value = "动态表头使用")
private String click6;
@Override @Override
public int compareTo(HeadCustomEO o) { public int compareTo(HeadCustomEO o) {
return Integer.valueOf(this.getSort())-Integer.valueOf(o.getSort());//升序 return Integer.valueOf(this.getSort())-Integer.valueOf(o.getSort());//升序
@@ -0,0 +1,28 @@
package com.jero.modules.head.enums;
/**
* @description
* @date 2022/1/21 15:22
* @auth zhn
*/
public enum headCustomEnum {
VIRTUAL_LIST("虚拟清单"),
LAWS_LIST("法规清单"),
PARAMETER_COLLECTION_LIST("参数项收集清单"),
REPORT_DATABASE_DETAILS("上报库详情");
String name;
private headCustomEnum(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
@@ -6,6 +6,7 @@ import com.jero.common.constant.enums.CutEnum;
import com.jero.common.system.vo.LoginUser; import com.jero.common.system.vo.LoginUser;
import com.jero.modules.head.entity.HeadCustomEO; import com.jero.modules.head.entity.HeadCustomEO;
import com.jero.modules.head.enums.AffirmFlagEnum; import com.jero.modules.head.enums.AffirmFlagEnum;
import com.jero.modules.head.enums.headCustomEnum;
import com.jero.modules.head.mapper.HeadCustomEOMapper; import com.jero.modules.head.mapper.HeadCustomEOMapper;
import com.jero.modules.head.service.IHeadCustomEOService; import com.jero.modules.head.service.IHeadCustomEOService;
import com.jero.modules.head.vo.HeadCustomVO; import com.jero.modules.head.vo.HeadCustomVO;
@@ -17,6 +18,7 @@ import org.springframework.stereotype.Service;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.Comparator;
import java.util.Date; import java.util.Date;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List; import java.util.List;
@@ -49,7 +51,12 @@ public class HeadCustomEOServiceImpl extends ServiceImpl<HeadCustomEOMapper, Hea
//一级标题 //一级标题
List<HeadCustomEO> oneList = headCustomEOList.stream().filter(e -> StringUtils.isBlank(e.getAffirmFlag())).collect(Collectors.toList()); List<HeadCustomEO> oneList = headCustomEOList.stream().filter(e -> StringUtils.isBlank(e.getAffirmFlag())).collect(Collectors.toList());
Collections.sort(oneList); if(!headCustomEnum.PARAMETER_COLLECTION_LIST.getName().equals(headCustomEOList.get(0).getModuleFlag())
&& !headCustomEnum.REPORT_DATABASE_DETAILS.getName().equals(headCustomEOList.get(0).getModuleFlag())){
Collections.sort(oneList);
}else{
oneList.sort(Comparator.comparing(HeadCustomEO::getSortParams));
}
//二级标题 //二级标题
List<HeadCustomEO> twoList = headCustomEOList.stream().filter(e -> StringUtils.isNotBlank(e.getAffirmFlag())).collect(Collectors.toList()); List<HeadCustomEO> twoList = headCustomEOList.stream().filter(e -> StringUtils.isNotBlank(e.getAffirmFlag())).collect(Collectors.toList());
@@ -156,6 +163,14 @@ public class HeadCustomEOServiceImpl extends ServiceImpl<HeadCustomEOMapper, Hea
headCustomEOTemp.setCreateBy(loginUser.getUsername()); headCustomEOTemp.setCreateBy(loginUser.getUsername());
headCustomEOTemp.setCreateTime(new Date()); headCustomEOTemp.setCreateTime(new Date());
headCustomEOTemp.setUpdateTime(new Date()); headCustomEOTemp.setUpdateTime(new Date());
headCustomEOTemp.setSortParams(headCustomEO.getSortParams());
headCustomEOTemp.setClick(headCustomEO.getClick());
headCustomEOTemp.setClick1(headCustomEO.getClick1());
headCustomEOTemp.setClick2(headCustomEO.getClick2());
headCustomEOTemp.setClick3(headCustomEO.getClick3());
headCustomEOTemp.setClick4(headCustomEO.getClick4());
headCustomEOTemp.setClick5(headCustomEO.getClick5());
headCustomEOTemp.setClick6(headCustomEO.getClick6());
return headCustomEOTemp; return headCustomEOTemp;
} }
@@ -225,7 +240,12 @@ public class HeadCustomEOServiceImpl extends ServiceImpl<HeadCustomEOMapper, Hea
//列表表头二级 //列表表头二级
List<HeadCustomEO> twoList = list.stream() List<HeadCustomEO> twoList = list.stream()
.filter(e -> StringUtils.isNotBlank(e.getAffirmFlag())).collect(Collectors.toList()); .filter(e -> StringUtils.isNotBlank(e.getAffirmFlag())).collect(Collectors.toList());
Collections.sort(oneList); if(!headCustomEnum.PARAMETER_COLLECTION_LIST.getName().equals(moduleFlag)
&& !headCustomEnum.REPORT_DATABASE_DETAILS.getName().equals(moduleFlag)){
Collections.sort(oneList);
}else{
oneList.sort(Comparator.comparing(HeadCustomEO::getSortParams));
}
for (HeadCustomEO headCustomEO : oneList) { for (HeadCustomEO headCustomEO : oneList) {
HeadCustomVO headCustomVO = new HeadCustomVO(); HeadCustomVO headCustomVO = new HeadCustomVO();
if (ObjectUtils.isNotEmpty(twoList)) { if (ObjectUtils.isNotEmpty(twoList)) {
@@ -1,6 +1,7 @@
package com.jero.modules.project.service; package com.jero.modules.project.service;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.itextpdf.text.DocumentException; import com.itextpdf.text.DocumentException;
import com.jero.common.api.vo.Result; import com.jero.common.api.vo.Result;
@@ -234,4 +235,11 @@ public interface IProjectLawsInventoryEOService extends IService<ProjectLawsInve
* @param projectLawsInventoryEOS * @param projectLawsInventoryEOS
*/ */
void lawsInventoryEOListSortByVerifyDueDate(List<ProjectLawsInventoryEO> projectLawsInventoryEOS); void lawsInventoryEOListSortByVerifyDueDate(List<ProjectLawsInventoryEO> projectLawsInventoryEOS);
/**
* 创建查询权限,2023-04-06 修改UAT问题第22条
* @param isProjectRole
* @param currentUser
*/
void createQueryPermission(int isProjectRole, LoginUser currentUser, QueryWrapper<ProjectLawsInventoryEO> projectLawsInventoryEOQueryWrapper);
} }
@@ -1402,12 +1402,15 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
&& isProjectRole != Integer.parseInt(ProjectRoleEnum.MANAGER.getValue()) && isProjectRole != Integer.parseInt(ProjectRoleEnum.MANAGER.getValue())
&& isProjectRole != Integer.parseInt(ProjectRoleEnum.ADMIN.getValue()) && isProjectRole != Integer.parseInt(ProjectRoleEnum.ADMIN.getValue())
&& isProjectRole != Integer.parseInt(ProjectRoleEnum.VIEWER.getValue())){ && isProjectRole != Integer.parseInt(ProjectRoleEnum.VIEWER.getValue())){
projectLawsInventoryEOQueryWrapper.and(queryWrapper ->{ /*projectLawsInventoryEOQueryWrapper.and(queryWrapper ->{
queryWrapper.eq("regulation_owner_id",currentUser.getId()). queryWrapper.eq("regulation_owner_id",currentUser.getId()).
or().eq("engineering_interface_person",currentUser.getId()). or().eq("engineering_interface_person",currentUser.getId()).
or().eq("design_duty_id",currentUser.getId()). or().eq("design_duty_id",currentUser.getId()).
or().eq("verify_duty_id",currentUser.getId()); or().eq("verify_duty_id",currentUser.getId());
}); });*/
// 创建查询权限
this.createQueryPermission(isProjectRole,currentUser,projectLawsInventoryEOQueryWrapper);
} }
List<ProjectLawsInventoryEO> result = super.baseMapper.selectList(projectLawsInventoryEOQueryWrapper); List<ProjectLawsInventoryEO> result = super.baseMapper.selectList(projectLawsInventoryEOQueryWrapper);
log.info("二阶段消耗时间:" + (System.currentTimeMillis() - startTime)); log.info("二阶段消耗时间:" + (System.currentTimeMillis() - startTime));
@@ -10601,6 +10604,18 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
sysRoles.add(sysRole); sysRoles.add(sysRole);
} }
// 认证
if((StringUtils.isNotBlank(certificationEngineerName) && certificationEngineerName.contains(loginUser.getUsername()))){
SysRole sysRole = new SysRole();
sysRole.setRoleCode(com.jero.modules.system.enums.ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue());
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
sysRole.setRoleName(com.jero.modules.system.enums.ProjectRoleEnum.HOMOLOGATION_ENGINEER.getName());
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
sysRole.setRoleName(com.jero.modules.system.enums.ProjectRoleEnum.HOMOLOGATION_ENGINEER.getCode());
}
sysRoles.add(sysRole);
}
} }
//相关人员名单中取法规工程师 //相关人员名单中取法规工程师
List<ProjectRelatedPersonnel> projectRelatedPersonnels = projectRelatedPersonnelService.queryPageList(projectLibraryId,null,null,null,null,null); List<ProjectRelatedPersonnel> projectRelatedPersonnels = projectRelatedPersonnelService.queryPageList(projectLibraryId,null,null,null,null,null);
@@ -10682,7 +10697,11 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
// 责任人 // 责任人
QueryWrapper<ProjectLawsInventoryEO> queryDutyPersonCountWrap = new QueryWrapper<>(); QueryWrapper<ProjectLawsInventoryEO> queryDutyPersonCountWrap = new QueryWrapper<>();
queryDutyPersonCountWrap.lambda().eq(ProjectLawsInventoryEO::getDesignDutyId,loginUser.getId()); queryDutyPersonCountWrap.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryId);
queryDutyPersonCountWrap.and(query -> {
query.lambda().eq(ProjectLawsInventoryEO::getDesignDutyId,loginUser.getId());
query.or().lambda().eq(ProjectLawsInventoryEO::getVerifyDutyId,loginUser.getId());
});
Integer dutyPersonCount = this.baseMapper.selectCount(queryDutyPersonCountWrap); Integer dutyPersonCount = this.baseMapper.selectCount(queryDutyPersonCountWrap);
if(dutyPersonCount > 0){ if(dutyPersonCount > 0){
SysRole sysRole = new SysRole(); SysRole sysRole = new SysRole();
@@ -11541,6 +11560,25 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}); });
} }
@Override
public void createQueryPermission(int isProjectRole, LoginUser currentUser,QueryWrapper<ProjectLawsInventoryEO> queryWrapper) {
// 如果是法规工程师,只能看到法规工程师是自己的数据
if(isProjectRole == Integer.parseInt(ProjectRoleEnum.REGULATI_ENGINEER.getValue())){
queryWrapper.lambda().eq(ProjectLawsInventoryEO::getRegulationOwnerId,currentUser.getId());
}
// 如果是责任人,只能看到设计符合性或验证符合型 责任人是自己的数据。
if(isProjectRole == Integer.parseInt(com.jero.modules.system.enums.ProjectRoleEnum.PERSON_LIABLE1.getValue())){
queryWrapper.and(query -> {
query.lambda().eq(ProjectLawsInventoryEO::getDesignDutyId,currentUser.getId());
query.or().lambda().eq(ProjectLawsInventoryEO::getVerifyDutyId,currentUser.getId());
});
}
// 如果是工程接口人,只能看到工程接口人是自己的数据。
if(isProjectRole == Integer.parseInt(com.jero.modules.system.enums.ProjectRoleEnum.INTERFACE_PERSON1.getValue())){
queryWrapper.lambda().eq(ProjectLawsInventoryEO::getEngineeringInterfacePerson,currentUser.getId());
}
}
/** /**
* 系统内所有用户验证 * 系统内所有用户验证
* @param projectLawsInventoryEO * @param projectLawsInventoryEO