项目权限(差一个认证参数列表权限没弄)
This commit is contained in:
+2
@@ -43,4 +43,6 @@ public interface SysRoleMapper extends BaseMapper<SysRole> {
|
||||
"where user_id = #{userId}")
|
||||
List<SysRole> getRoleByUserId(@Param("userId") String userId);
|
||||
|
||||
@Select("SELECT count(0) from sys_user_role ur LEFT JOIN sys_role r ON r.id = ur.role_id WHERE r.role_code = #{roleCode} and ur.user_id = #{userId}")
|
||||
Integer queryUserRoleByCode(@Param("roleCode")String roleCode, @Param("userId")String userId);
|
||||
}
|
||||
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
package com.jero.modules.project.controller;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.project.entity.ProjectUserPermission;
|
||||
import com.jero.modules.project.service.IProjectUserPermissionService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import com.jero.common.system.base.controller.JeroController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 项目权限表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2022-11-10
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="项目权限表")
|
||||
@RestController
|
||||
@RequestMapping("/project/projectUserPermission")
|
||||
@Slf4j
|
||||
public class ProjectUserPermissionController extends JeroController<ProjectUserPermission, IProjectUserPermissionService> {
|
||||
|
||||
|
||||
}
|
||||
+87
@@ -0,0 +1,87 @@
|
||||
package com.jero.modules.project.entity;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.math.BigDecimal;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
import com.jero.common.aspect.annotation.Dict;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 项目权限表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2022-11-10
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Data
|
||||
@TableName("project_user_permission")
|
||||
@Accessors(chain = true)
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@ApiModel(value="project_user_permission对象", description="项目权限表")
|
||||
public class ProjectUserPermission implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**主键*/
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
@ApiModelProperty(value = "主键")
|
||||
private String id;
|
||||
|
||||
/**创建人*/
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private String createBy;
|
||||
|
||||
/**创建日期*/
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty(value = "创建日期")
|
||||
private java.util.Date createTime;
|
||||
|
||||
/**更新人*/
|
||||
@ApiModelProperty(value = "更新人")
|
||||
private String updateBy;
|
||||
|
||||
/**更新日期*/
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty(value = "更新日期")
|
||||
private java.util.Date updateTime;
|
||||
|
||||
/**项目id*/
|
||||
@Excel(name = "项目id", width = 15)
|
||||
@ApiModelProperty(value = "项目id")
|
||||
private String projectId;
|
||||
|
||||
/**用户id*/
|
||||
@Excel(name = "用户id", width = 15)
|
||||
@ApiModelProperty(value = "用户id")
|
||||
private String userId;
|
||||
|
||||
/**所属位置*/
|
||||
@Excel(name = "所属位置", width = 15)
|
||||
@ApiModelProperty(value = "所属位置")
|
||||
private String belong;
|
||||
|
||||
/**
|
||||
* 如果是相关人员名单的时候,这里填写相关人员名单id
|
||||
*
|
||||
* 如果是法规清单的时候,这里填写对应的法规清单id
|
||||
*
|
||||
* 如果是认证参数的时候,这里填写参数收集清单id
|
||||
*
|
||||
* */
|
||||
@Excel(name = "具体描述", width = 15)
|
||||
@ApiModelProperty(value = "具体描述")
|
||||
private String description;
|
||||
|
||||
}
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
package com.jero.modules.project.enums;
|
||||
|
||||
public enum PermissionDescriptionEnum {
|
||||
|
||||
PROJECT_RELATED_PERSONNEL("相关人员名单","projectRelatedPersonnelId:"),
|
||||
PROJECT_LAWS_INVENTORY("法规清单","projectLawsInventoryId:"),
|
||||
PARAMS_COLLECT_MANIFEST("参数项","paramsCollectManifestId:");
|
||||
|
||||
String label;
|
||||
String value;
|
||||
|
||||
PermissionDescriptionEnum(String label, String value) {
|
||||
this.label = label;
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public String getLabel() {
|
||||
return label;
|
||||
}
|
||||
|
||||
public void setLabel(String label) {
|
||||
this.label = label;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
+1
@@ -20,6 +20,7 @@ public enum ProjectRoleEnum {
|
||||
VERIFYDUTY("验证符合性确认-责任人","10",""),
|
||||
MANAGER("验证符合性确认-责任人","11",""),
|
||||
ADMIN("系统管理员","12",""),
|
||||
VIEWER("Viewer","",""),
|
||||
;
|
||||
|
||||
String name;
|
||||
|
||||
+59
@@ -0,0 +1,59 @@
|
||||
package com.jero.modules.project.enums;
|
||||
|
||||
/**
|
||||
* 项目权限相关添加人员的类型
|
||||
*/
|
||||
public enum ProjectUserLocationEnum {
|
||||
|
||||
PROJECT_ADD_STUDIO("PROJECT_ADD_STUDIO","项目新增时设置的Studio工程师"),
|
||||
PROJECT_ADD_CERTIFICATION("PROJECT_ADD_CERTIFICATION","项目新增时设置的认证工程师"),
|
||||
|
||||
PROJECT_DETAIL_RELEVANT_PERSONNEL_CERTIFICATION("PROJECT_DETAIL_RELEVANT_PERSONNEL_CERTIFICATION","相关人员名单中认证工程师"),
|
||||
PROJECT_DETAIL_RELEVANT_PERSONNEL_INTERFACE("PROJECT_DETAIL_RELEVANT_PERSONNEL_INTERFACE","相关人员名单中工程接口人"),
|
||||
PROJECT_DETAIL_RELEVANT_PERSONNEL_LAW("PROJECT_DETAIL_RELEVANT_PERSONNEL_LAW","相关人员名单中法规工程师"),
|
||||
|
||||
PROJECT_LAWS_INVENTORY_CREATE_BY("PROJECT_LAWS_INVENTORY_CREATE_BY","法规清单创建人"),
|
||||
PROJECT_LAWS_INVENTORY_REGULATION("PROJECT_LAWS_INVENTORY_REGULATION","法规清单中法规工程师"),
|
||||
PROJECT_LAWS_INVENTORY_HOMOLOGATION("PROJECT_LAWS_INVENTORY_HOMOLOGATION","法规清单中认证工程师"),
|
||||
PROJECT_LAWS_INVENTORY_INTERFACE("PROJECT_LAWS_INVENTORY_INTERFACE","法规清单中工程接口人"),
|
||||
PROJECT_LAWS_INVENTORY_DESIGN_INITIATOR("PROJECT_LAWS_INVENTORY_DESIGN_INITIATOR","法规清单中设计符合性确认发起人"),
|
||||
PROJECT_LAWS_INVENTORY_DESIGN_DUTY("PROJECT_LAWS_INVENTORY_DESIGN_DUTY","法规清单中设计符合性确认责任人"),
|
||||
PROJECT_LAWS_INVENTORY_PREHOMO_INITIATOR("PROJECT_LAWS_INVENTORY_PREHOMO_INITIATOR","法规清单中prehomo确认发起人"),
|
||||
PROJECT_LAWS_INVENTORY_PREHOMO_DUTY("PROJECT_LAWS_INVENTORY_PREHOMO_DUTY","法规清单中prehomo确认责任人"),
|
||||
PROJECT_LAWS_INVENTORY_VERIFY_INITIATOR("PROJECT_LAWS_INVENTORY_VERIFY_INITIATOR","法规清单中验证符合性确认发起人"),
|
||||
PROJECT_LAWS_INVENTORY_VERIFY_DUTY("PROJECT_LAWS_INVENTORY_VERIFY_DUTY","法规清单中验证符合性确认责任人"),
|
||||
|
||||
PROJECT_LAWS_TASK_AFFIRM_INQUIRE("PROJECT_LAWS_TASK_AFFIRM_INQUIRE","法规任务确认询问人"),
|
||||
|
||||
PROJECT_LAWS_DESIGN_DISTRIBUTION("PROJECT_LAWS_DESIGN_DISTRIBUTION","设计符合性确认分发工程师"),
|
||||
PROJECT_LAWS_PREHOMO_DISTRIBUTION("PROJECT_LAWS_PREHOMO_DISTRIBUTION","prehomo确认分发工程师"),
|
||||
PROJECT_LAWS_VERIFY_DISTRIBUTION("PROJECT_LAWS_VERIFY_DISTRIBUTION","验证符合性确认分发工程师"),
|
||||
|
||||
PROJECT_PARAMS_COLLECT_MANIFEST_DRE("PROJECT_PARAMS_COLLECT_MANIFEST_DRE","认证参数收集中填写人"),
|
||||
PROJECT_PARAMS_COLLECT_MANIFEST_SDT("PROJECT_PARAMS_COLLECT_MANIFEST_SDT","认证参数收集中工程接口人");
|
||||
|
||||
|
||||
String value;
|
||||
String label;
|
||||
|
||||
ProjectUserLocationEnum(String value, String label) {
|
||||
this.value = value;
|
||||
this.label = label;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public String getLabel() {
|
||||
return label;
|
||||
}
|
||||
|
||||
public void setLabel(String label) {
|
||||
this.label = label;
|
||||
}
|
||||
}
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
package com.jero.modules.project.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import com.jero.modules.project.entity.ProjectUserPermission;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* @Description: 项目权限表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2022-11-10
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface ProjectUserPermissionMapper extends BaseMapper<ProjectUserPermission> {
|
||||
|
||||
|
||||
List<String> queryProjectIdsByUserId(@Param("userId") String userId);
|
||||
}
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.jero.modules.project.mapper.ProjectUserPermissionMapper">
|
||||
<resultMap id="ProjectUserPermissionResultMap" type="com.jero.modules.project.entity.ProjectUserPermission">
|
||||
<id column="id" property="id" />
|
||||
<result column="create_by" property="createBy" />
|
||||
<result column="create_time" property="createTime" />
|
||||
<result column="update_by" property="updateBy" />
|
||||
<result column="update_time" property="updateTime" />
|
||||
<result column="project_id" property="projectId" />
|
||||
<result column="user_id" property="userId" />
|
||||
<result column="belong" property="belong" />
|
||||
<result column="description" property="description" />
|
||||
</resultMap>
|
||||
|
||||
<select id="queryProjectIdsByUserId" resultType="java.lang.String">
|
||||
|
||||
SELECT * FROM project_user_permission pup
|
||||
WHERE pup.user_id = #{userId} GROUP BY pup.project_id
|
||||
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
package com.jero.modules.project.service;
|
||||
|
||||
import com.jero.modules.project.entity.ProjectUserPermission;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 项目权限表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2022-11-10
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IProjectUserPermissionService extends IService<ProjectUserPermission> {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param projectUserPermission
|
||||
* @return
|
||||
*/
|
||||
void add(ProjectUserPermission projectUserPermission);
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param projectUserPermission
|
||||
* @return
|
||||
*/
|
||||
void editById(ProjectUserPermission projectUserPermission);
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
ProjectUserPermission queryById(String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<ProjectUserPermission> queryList();
|
||||
}
|
||||
+95
-3
@@ -239,6 +239,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
@Autowired
|
||||
private IBussDocumentLibraryEOService bussDocumentLibraryEOService;
|
||||
|
||||
@Autowired
|
||||
private IProjectUserPermissionService projectUserPermissionService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
@@ -247,6 +250,8 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
*/
|
||||
@Override
|
||||
public void add(ProjectLawsInventoryEO projectLawsInventoryEO) {
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
Date now = new Date();
|
||||
List<ProjectTaskInventoryEO> projectTaskInventoryEOList = new ArrayList<>();
|
||||
//法规清单所有的数据
|
||||
LambdaQueryWrapper<ProjectLawsInventoryEO> wrapperTemp = new LambdaQueryWrapper<>();
|
||||
@@ -317,6 +322,17 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
}
|
||||
if(projectLawsInventoryEOS.size() != 0){
|
||||
this.saveBatch(projectLawsInventoryEOS);
|
||||
//设置权限
|
||||
for (ProjectLawsInventoryEO lawsInventoryEO : projectLawsInventoryEOS) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectLawsInventoryEO.getProjectLibraryId());
|
||||
permission.setUserId(sysUser.getId());
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_CREATE_BY.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_LAWS_INVENTORY.getValue() + lawsInventoryEO.getId());
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
projectUserPermissionService.add(permission);
|
||||
}
|
||||
projectLawsInventoryEOS.forEach(lawsInventory -> {
|
||||
ProjectTaskInventoryEO projectTaskInventoryEO = new ProjectTaskInventoryEO();
|
||||
String projectTaskInventoryId = UUID.randomUUID().toString().replace("-", "");
|
||||
@@ -328,7 +344,6 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
|
||||
//更新log
|
||||
String projectLibraryId = projectLawsInventoryEOS.stream().map(e->e.getProjectLibraryId()).collect(Collectors.toList()).get(0);
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
String username = sysUser.getUsername();
|
||||
QueryWrapper<DummyInventoryBaseEO> queryWrapper = new QueryWrapper<>();
|
||||
String dummyInventoryBaseName = dummyInventoryBaseEOService.list(queryWrapper.eq("id", dummyInventoryBaseId)).get(0).getName();//name
|
||||
@@ -375,7 +390,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
}
|
||||
|
||||
List<ProjectLawsInventoryEO> list = new ArrayList<>();
|
||||
|
||||
List<ProjectUserPermission> addPermission = new ArrayList<>();
|
||||
for (BussDocumentLibraryEO bussDocumentLibraryEO : bussDocumentLibraryEOList) {
|
||||
String standId = bussDocumentLibraryEO.getId();
|
||||
|
||||
@@ -397,11 +412,23 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
projectTaskInventoryEO.setProjectLawsInventoryId(projectLawsInventoryId);
|
||||
projectTaskInventoryEO.setStandId(standId);
|
||||
projectTaskInventoryEOList.add(projectTaskInventoryEO);
|
||||
|
||||
//添加权限
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectLawsInventoryEO.getProjectLibraryId());
|
||||
permission.setUserId(sysUser.getId());
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_CREATE_BY.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_LAWS_INVENTORY.getValue() + projectLawsInventoryId);
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
addPermission.add(permission);
|
||||
}
|
||||
super.saveBatch(list);
|
||||
if (ObjectUtils.isNotEmpty(addPermission)) {
|
||||
projectUserPermissionService.saveBatch(addPermission);
|
||||
}
|
||||
|
||||
//更新log
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
String username = sysUser.getUsername();
|
||||
String serialNumber = list.stream().map(e->e.getSerialNumber()).collect(Collectors.joining(","));
|
||||
String contentLog = username+"向清单中添加了“"+serialNumber+"”";
|
||||
@@ -479,11 +506,63 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
//更新流程信息
|
||||
updateFlowInfo(projectLawsInventoryEO);
|
||||
}
|
||||
|
||||
//设置权限 先删后加
|
||||
List<ProjectUserPermission> adds = new ArrayList<>();
|
||||
if (ObjectUtils.isNotEmpty(projectLawsInventoryEO.getRegulationOwnerId())) {
|
||||
setProjectLawsInventoryPermission(projectLawsInventoryEO.getRegulationOwnerId(), projectLawsInventoryEO.getProjectLibraryId(), projectLawsInventoryEO.getId(), now, adds, ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_REGULATION.getValue());
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(projectLawsInventoryEO.getHomologationEngineerId())) {
|
||||
setProjectLawsInventoryPermission(projectLawsInventoryEO.getHomologationEngineerId(),projectLawsInventoryEO.getProjectLibraryId(), projectLawsInventoryEO.getId(), now, adds, ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_HOMOLOGATION.getValue());
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(projectLawsInventoryEO.getEngineeringInterfacePerson())) {
|
||||
setProjectLawsInventoryPermission(projectLawsInventoryEO.getEngineeringInterfacePerson(),projectLawsInventoryEO.getProjectLibraryId(), projectLawsInventoryEO.getId(), now, adds, ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_INTERFACE.getValue());
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(projectLawsInventoryEO.getDesignInitiatorId())) {
|
||||
setProjectLawsInventoryPermission(projectLawsInventoryEO.getDesignInitiatorId(),projectLawsInventoryEO.getProjectLibraryId(), projectLawsInventoryEO.getId(), now, adds, ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_DESIGN_INITIATOR.getValue());
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(projectLawsInventoryEO.getDesignDutyId())) {
|
||||
setProjectLawsInventoryPermission(projectLawsInventoryEO.getDesignDutyId(),projectLawsInventoryEO.getProjectLibraryId(), projectLawsInventoryEO.getId(), now, adds, ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_DESIGN_DUTY.getValue());
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(projectLawsInventoryEO.getPrehomoInitiatorId())) {
|
||||
setProjectLawsInventoryPermission(projectLawsInventoryEO.getPrehomoInitiatorId(),projectLawsInventoryEO.getProjectLibraryId(), projectLawsInventoryEO.getId(), now, adds, ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_PREHOMO_INITIATOR.getValue());
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(projectLawsInventoryEO.getPrehomoDutyId())) {
|
||||
setProjectLawsInventoryPermission(projectLawsInventoryEO.getPrehomoDutyId(),projectLawsInventoryEO.getProjectLibraryId(), projectLawsInventoryEO.getId(), now, adds, ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_PREHOMO_DUTY.getValue());
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(projectLawsInventoryEO.getVerifyInitiatorId())) {
|
||||
setProjectLawsInventoryPermission(projectLawsInventoryEO.getVerifyInitiatorId(),projectLawsInventoryEO.getProjectLibraryId(), projectLawsInventoryEO.getId(), now, adds, ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_VERIFY_INITIATOR.getValue());
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(projectLawsInventoryEO.getVerifyDutyId())) {
|
||||
setProjectLawsInventoryPermission(projectLawsInventoryEO.getVerifyDutyId(),projectLawsInventoryEO.getProjectLibraryId(), projectLawsInventoryEO.getId(), now, adds, ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_VERIFY_DUTY.getValue());
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(adds)) {
|
||||
projectUserPermissionService.saveBatch(adds);
|
||||
}
|
||||
|
||||
|
||||
}else {
|
||||
throw new JeroBootException("该用户没有权限操作该数据!");
|
||||
}
|
||||
}
|
||||
|
||||
private void setProjectLawsInventoryPermission(String userId, String projectId,String lawsInventoryId,Date now, List<ProjectUserPermission> adds, String belong) {
|
||||
QueryWrapper<ProjectUserPermission> del = new QueryWrapper<>();
|
||||
del.eq("project_id", projectId)
|
||||
.eq("belong", belong)
|
||||
.eq("description", PermissionDescriptionEnum.PROJECT_LAWS_INVENTORY.getValue() + lawsInventoryId);
|
||||
projectUserPermissionService.remove(del);
|
||||
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectId);
|
||||
permission.setUserId(userId);
|
||||
permission.setBelong(belong);
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_LAWS_INVENTORY.getValue() + lawsInventoryId);
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
adds.add(permission);
|
||||
}
|
||||
|
||||
private void setDateNull(ProjectLawsInventoryEO projectLawsInventoryEO, LambdaUpdateWrapper<ProjectLawsInventoryEO> updateWrapper) {
|
||||
if(ObjectUtils.isEmpty(projectLawsInventoryEO.getXin1Che1Xing2Shi2Shi1Ri4Qi1())){
|
||||
updateWrapper.set(ProjectLawsInventoryEO::getXin1Che1Xing2Shi2Shi1Ri4Qi1,null);
|
||||
@@ -639,6 +718,10 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
QueryWrapper<ProjectLawsInventoryRejectCauseEO> rejectCauseRemoveWrapper = new QueryWrapper<>();
|
||||
rejectCauseRemoveWrapper.lambda().eq(ProjectLawsInventoryRejectCauseEO::getProjectLawsInventoryId,id);
|
||||
this.projectLawsInventoryRejectCauseEOService.remove(rejectCauseRemoveWrapper);
|
||||
//删除相关人员权限
|
||||
QueryWrapper<ProjectUserPermission> delPermission = new QueryWrapper<>();
|
||||
delPermission.eq("description", PermissionDescriptionEnum.PROJECT_LAWS_INVENTORY.getValue() + id);
|
||||
projectUserPermissionService.remove(delPermission);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -689,6 +772,15 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
QueryWrapper<ProjectLawsInventoryRejectCauseEO> rejectCauseRemoveWrapper = new QueryWrapper<>();
|
||||
rejectCauseRemoveWrapper.lambda().in(ProjectLawsInventoryRejectCauseEO::getProjectLawsInventoryId,ids);
|
||||
this.projectLawsInventoryRejectCauseEOService.remove(rejectCauseRemoveWrapper);
|
||||
|
||||
//删除相关人员权限
|
||||
List<String> description = new ArrayList<>();
|
||||
QueryWrapper<ProjectUserPermission> delPermission = new QueryWrapper<>();
|
||||
for (String id : ids) {
|
||||
description.add(PermissionDescriptionEnum.PROJECT_LAWS_INVENTORY.getValue() + id);
|
||||
}
|
||||
delPermission.in("description", description);
|
||||
projectUserPermissionService.remove(delPermission);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+273
-22
@@ -11,34 +11,18 @@ import com.jero.common.system.vo.DictModel;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.modules.cert.collect.service.IParamsManifestEOService;
|
||||
import com.jero.modules.enums.DictCodeEnum;
|
||||
import com.jero.modules.project.entity.ConditionAssessmentEO;
|
||||
import com.jero.modules.project.entity.ProjectLawsInventoryEO;
|
||||
import com.jero.modules.project.entity.ProjectLawsInventoryLogEO;
|
||||
import com.jero.modules.project.entity.ProjectLibraryBase;
|
||||
import com.jero.modules.project.entity.ProjectLibraryRoleRelEO;
|
||||
import com.jero.modules.project.entity.ProjectRelatedPersonnel;
|
||||
import com.jero.modules.project.entity.ProjectTaskInventoryEO;
|
||||
import com.jero.modules.project.entity.ProjectTaskPlanning;
|
||||
import com.jero.modules.project.enums.CertificationProgressEnum;
|
||||
import com.jero.modules.project.enums.CurrentProjectStatusEnum;
|
||||
import com.jero.modules.project.enums.DesignComplianceStatusEnum;
|
||||
import com.jero.modules.project.enums.InventoryAffirmStatusEnum;
|
||||
import com.jero.modules.project.enums.OperatorTypeEnum;
|
||||
import com.jero.modules.project.enums.ProjectRoleEnum;
|
||||
import com.jero.modules.project.enums.TaskAffirmStatusEnum;
|
||||
import com.jero.modules.project.enums.TopEnum;
|
||||
import com.jero.modules.project.mapper.ProjectLawsInventoryEOMapper;
|
||||
import com.jero.modules.project.mapper.ProjectLibraryBaseMapper;
|
||||
import com.jero.modules.project.mapper.ProjectNameInfoEOMapper;
|
||||
import com.jero.modules.project.mapper.ProjectRelatedPersonnelMapper;
|
||||
import com.jero.modules.project.mapper.ProjectTaskInventoryEOMapper;
|
||||
import com.jero.modules.project.entity.*;
|
||||
import com.jero.modules.project.enums.*;
|
||||
import com.jero.modules.project.mapper.*;
|
||||
import com.jero.modules.project.service.IConditionAssessmentEOService;
|
||||
import com.jero.modules.project.service.IProjectLibraryBaseService;
|
||||
import com.jero.modules.project.service.IProjectLibraryRoleRelEOService;
|
||||
import com.jero.modules.project.service.IProjectUserPermissionService;
|
||||
import com.jero.modules.system.entity.SysDictItem;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.enums.DicCodeEnum;
|
||||
import com.jero.modules.system.mapper.SysDictItemMapper;
|
||||
import com.jero.modules.system.mapper.SysRoleMapper;
|
||||
import com.jero.modules.system.mapper.SysUserMapper;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
@@ -133,6 +117,15 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
@Autowired
|
||||
private ISysUserService sysUserService;
|
||||
|
||||
@Autowired
|
||||
private SysRoleMapper sysRoleMapper;
|
||||
|
||||
@Autowired
|
||||
private IProjectUserPermissionService projectUserPermissionService;
|
||||
|
||||
@Autowired
|
||||
private ProjectUserPermissionMapper projectUserPermissionMapper;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
@@ -162,6 +155,33 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
projectLibraryRoleRelEO.setUserId(projectLibraryBase.getStudioEngineer());
|
||||
projectLibraryRoleRelEO.setRoleCode(ProjectRoleEnum.STUDIO_ENGINEER.getValue());
|
||||
projectLibraryRoleRelEOService.add(projectLibraryRoleRelEO);
|
||||
|
||||
//项目权限表添加
|
||||
List<ProjectUserPermission> adds = new ArrayList<>();
|
||||
if (ObjectUtils.isNotEmpty(projectLibraryBase.getStudioEngineer())) {
|
||||
ProjectUserPermission projectUserPermission = new ProjectUserPermission();
|
||||
projectUserPermission.setProjectId(projectLibraryBase.getId());
|
||||
projectUserPermission.setUserId(projectLibraryBase.getStudioEngineer());
|
||||
projectUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_ADD_STUDIO.getValue());
|
||||
projectUserPermission.setCreateTime(now);
|
||||
projectUserPermission.setUpdateTime(now);
|
||||
adds.add(projectUserPermission);
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(projectLibraryBase.getCertificationEngineer())) {
|
||||
for (String id : projectLibraryBase.getCertificationEngineer().split(",")) {
|
||||
ProjectUserPermission projectUserPermission = new ProjectUserPermission();
|
||||
projectUserPermission.setProjectId(projectLibraryBase.getId());
|
||||
projectUserPermission.setUserId(id);
|
||||
projectUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_ADD_CERTIFICATION.getValue());
|
||||
projectUserPermission.setCreateTime(now);
|
||||
projectUserPermission.setUpdateTime(now);
|
||||
adds.add(projectUserPermission);
|
||||
}
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(adds)) {
|
||||
projectUserPermissionService.saveBatch(adds);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -182,6 +202,7 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
projectLibraryBaseTemp.setExplanation(projectLibraryBase.getExplanation());
|
||||
this.save(projectLibraryBaseTemp);
|
||||
|
||||
Date now = new Date();
|
||||
|
||||
//相关人员名单中添加数据
|
||||
List<ProjectRelatedPersonnel> projectRelatedPersonnelList = projectRelatedPersonnelMapper.queryPageList(id,
|
||||
@@ -191,11 +212,57 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
null,
|
||||
null);
|
||||
if(projectRelatedPersonnelList.size() != 0){
|
||||
List<ProjectUserPermission> relatedPersonnelPermissionList = new ArrayList<>();
|
||||
for (ProjectRelatedPersonnel projectRelatedPersonnel : projectRelatedPersonnelList) {
|
||||
projectRelatedPersonnel.setId(UUID.randomUUID().toString().replace("-", ""));
|
||||
String relatedPersonnelId = UUID.randomUUID().toString().replace("-", "");
|
||||
projectRelatedPersonnel.setId(relatedPersonnelId);
|
||||
projectRelatedPersonnel.setProjectId(projectId);
|
||||
|
||||
//添加人员权限
|
||||
if (ObjectUtils.isNotEmpty(projectRelatedPersonnel.getLawEngineer())) {
|
||||
for (String lawEngineerId : projectRelatedPersonnel.getLawEngineer().split(",")) {
|
||||
//projectUserPermissionService.queryRelatedPersonnelPermission(projectLibraryBase.getId(),lawEngineerId,ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_LAW.getValue());
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectId);
|
||||
permission.setUserId(lawEngineerId);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_LAW.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + relatedPersonnelId);
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
relatedPersonnelPermissionList.add(permission);
|
||||
}
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(projectRelatedPersonnel.getEngineeringInterfacePerson())) {
|
||||
for (String engineeringInterfacePersonId : projectRelatedPersonnel.getEngineeringInterfacePerson().split(",")) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectId);
|
||||
permission.setUserId(engineeringInterfacePersonId);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_INTERFACE.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + relatedPersonnelId);
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
relatedPersonnelPermissionList.add(permission);
|
||||
}
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(projectRelatedPersonnel.getCertificationEngineer())) {
|
||||
for (String certificationEngineerId : projectRelatedPersonnel.getCertificationEngineer().split(",")) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectId);
|
||||
permission.setUserId(certificationEngineerId);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_CERTIFICATION.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + relatedPersonnelId);
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
relatedPersonnelPermissionList.add(permission);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
projectRelatedPersonnelService.saveBatch(projectRelatedPersonnelList);
|
||||
if (ObjectUtils.isNotEmpty(relatedPersonnelPermissionList)) {
|
||||
projectUserPermissionService.saveBatch(relatedPersonnelPermissionList);
|
||||
}
|
||||
}
|
||||
|
||||
//法规/认证任务计划添加数据 projectTaskPlanningService
|
||||
@@ -213,13 +280,26 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
LambdaQueryWrapper<ProjectLibraryRoleRelEO> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.in(ProjectLibraryRoleRelEO::getProjectLibraryId,projectLibraryBase.getId());
|
||||
List<ProjectLibraryRoleRelEO> projectLibraryRoleRelEOList = projectLibraryRoleRelEOService.list(queryWrapper);
|
||||
|
||||
List<ProjectUserPermission> studioUserPermissions = new ArrayList<>();
|
||||
if(ObjectUtils.isNotEmpty(projectLibraryRoleRelEOList)){
|
||||
for (ProjectLibraryRoleRelEO projectLibraryRoleRelEO : projectLibraryRoleRelEOList) {
|
||||
projectLibraryRoleRelEO.setId(UUID.randomUUID().toString().replace("-", ""));
|
||||
projectLibraryRoleRelEO.setProjectLibraryId(projectId);
|
||||
projectLibraryRoleRelEOService.add(projectLibraryRoleRelEO);
|
||||
//添加studio权限
|
||||
ProjectUserPermission studioUserPermission = new ProjectUserPermission();
|
||||
studioUserPermission.setProjectId(projectId);
|
||||
studioUserPermission.setUserId(projectLibraryRoleRelEO.getUserId());
|
||||
studioUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_ADD_STUDIO.getValue());
|
||||
studioUserPermission.setCreateTime(now);
|
||||
studioUserPermission.setUpdateTime(now);
|
||||
studioUserPermissions.add(studioUserPermission);
|
||||
}
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(studioUserPermissions)) {
|
||||
projectUserPermissionService.saveBatch(studioUserPermissions);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -258,6 +338,8 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
projectLibraryBase.setUpdateBy(sysUser.getUsername());
|
||||
|
||||
ProjectLibraryBase original = baseMapper.selectById(projectLibraryBase.getId());
|
||||
|
||||
checkExitData(projectLibraryBase);
|
||||
saveOrUpdate(projectLibraryBase);
|
||||
|
||||
@@ -265,6 +347,14 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
QueryWrapper<ProjectLibraryRoleRelEO> deleteLibraryRoleRelWrapper = new QueryWrapper<>();
|
||||
deleteLibraryRoleRelWrapper.lambda().eq(ProjectLibraryRoleRelEO::getProjectLibraryId,projectLibraryBase.getId());
|
||||
projectLibraryRoleRelEOService.remove(deleteLibraryRoleRelWrapper);
|
||||
//删除当前项目studio项目权限
|
||||
QueryWrapper<ProjectUserPermission> delStudioPermission = new QueryWrapper<>();
|
||||
delStudioPermission.eq("project_id", projectLibraryBase.getId()).eq("belong", ProjectUserLocationEnum.PROJECT_ADD_STUDIO.getValue());
|
||||
projectUserPermissionService.remove(delStudioPermission);
|
||||
//删除当前项目certification engineer项目权限
|
||||
QueryWrapper<ProjectUserPermission> delCertificationPermission = new QueryWrapper<>();
|
||||
delCertificationPermission.eq("project_id", projectLibraryBase.getId()).eq("belong", ProjectUserLocationEnum.PROJECT_ADD_CERTIFICATION.getValue());
|
||||
projectUserPermissionService.remove(delCertificationPermission);
|
||||
|
||||
// 初始化当前项目的studio与项目库 角色关系
|
||||
ProjectLibraryRoleRelEO projectLibraryRoleRelEO = new ProjectLibraryRoleRelEO();
|
||||
@@ -272,13 +362,67 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
projectLibraryRoleRelEO.setUserId(projectLibraryBase.getStudioEngineer());
|
||||
projectLibraryRoleRelEO.setRoleCode(ProjectRoleEnum.STUDIO_ENGINEER.getValue());
|
||||
projectLibraryRoleRelEOService.add(projectLibraryRoleRelEO);
|
||||
//重新设置当前项目studio项目权限
|
||||
List<ProjectUserPermission> engineers = new ArrayList<>();
|
||||
ProjectUserPermission studioPermission = new ProjectUserPermission();
|
||||
studioPermission.setProjectId(projectLibraryBase.getId());
|
||||
studioPermission.setUserId(projectLibraryBase.getStudioEngineer());
|
||||
studioPermission.setBelong(ProjectUserLocationEnum.PROJECT_ADD_STUDIO.getValue());
|
||||
studioPermission.setCreateTime(now);
|
||||
studioPermission.setUpdateTime(now);
|
||||
engineers.add(studioPermission);
|
||||
//重新设置当前项目certification engineer项目权限
|
||||
if (ObjectUtils.isNotEmpty(projectLibraryBase.getCertificationEngineer())) {
|
||||
for (String certificationEngineer : projectLibraryBase.getCertificationEngineer().split(",")) {
|
||||
ProjectUserPermission certificationPermission = new ProjectUserPermission();
|
||||
certificationPermission.setProjectId(projectLibraryBase.getId());
|
||||
certificationPermission.setUserId(certificationEngineer);
|
||||
certificationPermission.setBelong(ProjectUserLocationEnum.PROJECT_ADD_CERTIFICATION.getValue());
|
||||
certificationPermission.setCreateTime(now);
|
||||
certificationPermission.setUpdateTime(now);
|
||||
engineers.add(certificationPermission);
|
||||
}
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(engineers)) {
|
||||
projectUserPermissionService.saveBatch(engineers);
|
||||
}
|
||||
|
||||
//编辑时如果认证工程师发生变化,同步修改相关人员名单中的认证工程师
|
||||
List<ProjectRelatedPersonnel> result = projectRelatedPersonnelMapper.queryPageList(projectLibraryBase.getId(),
|
||||
DictCodeEnum.DUTY_TERRITORY.getValue(), null, null, null, null);
|
||||
//项目的认证工程师
|
||||
String certificationEngineer = projectLibraryBase.getCertificationEngineer();
|
||||
//一个都不选的情况下
|
||||
if ("".equals(certificationEngineer)) {
|
||||
//删除当前项目的相关人员名单中认证工程师权限
|
||||
QueryWrapper<ProjectUserPermission> delWrapper = new QueryWrapper<>();
|
||||
delWrapper.eq("project_id", projectLibraryBase.getId())
|
||||
.eq("belong", ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_CERTIFICATION.getValue());
|
||||
projectUserPermissionService.remove(delWrapper);
|
||||
//删除当前项目的法规清单中认证工程师权限
|
||||
QueryWrapper<ProjectUserPermission> delLawInventoryWrapper = new QueryWrapper<>();
|
||||
delLawInventoryWrapper.eq("project_id", projectLibraryBase.getId())
|
||||
.eq("belong", ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_HOMOLOGATION.getValue());
|
||||
projectUserPermissionService.remove(delLawInventoryWrapper);
|
||||
}
|
||||
//选择了其他工程师
|
||||
if(StringUtils.isNotBlank(certificationEngineer)){
|
||||
for (String id : original.getCertificationEngineer().split(",")) {
|
||||
if (!certificationEngineer.contains(id)) {
|
||||
//如果原来的认证工程师被删除了,则需要同步删除当前项目的相关人员名单中该认证工程师权限
|
||||
QueryWrapper<ProjectUserPermission> delWrapper = new QueryWrapper<>();
|
||||
delWrapper.eq("project_id", projectLibraryBase.getId()).eq("user_id",id).
|
||||
eq("belong", ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_CERTIFICATION.getValue());
|
||||
projectUserPermissionService.remove(delWrapper);
|
||||
//如果原来的认证工程师被删除了,则需要同步删除当前项目的法规清单中该认证工程师权限
|
||||
QueryWrapper<ProjectUserPermission> delLawInventoryWrapper = new QueryWrapper<>();
|
||||
delLawInventoryWrapper.eq("project_id", projectLibraryBase.getId()).eq("user_id",id).
|
||||
eq("belong", ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_HOMOLOGATION.getValue());
|
||||
projectUserPermissionService.remove(delLawInventoryWrapper);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
for (ProjectRelatedPersonnel projectRelatedPersonnel : result) {
|
||||
//相关人员名单的认证工程师
|
||||
String certificationEngineerTemp = projectRelatedPersonnel.getCertificationEngineer();
|
||||
@@ -299,6 +443,102 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
//批量修改相关人员名单信息中的认证工程师
|
||||
projectRelatedPersonnelService.updateBatchById(result);
|
||||
}
|
||||
/**
|
||||
*法规清单发起任务前或任务结束后修改studio或者修改认证工程师时,
|
||||
*如果设计符合性确认、Pre-Homo确认、 验证符合性确认中的发起人跟责任人引用到了这两人,
|
||||
*而且这两个人不属于相关人员名单的工程接口人和法规工程师,同步删除这两人的权限
|
||||
*/
|
||||
|
||||
List<String> belongs = new ArrayList<>();
|
||||
belongs.add(ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_DESIGN_INITIATOR.getValue());
|
||||
belongs.add(ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_DESIGN_DUTY.getValue());
|
||||
belongs.add(ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_PREHOMO_INITIATOR.getValue());
|
||||
belongs.add(ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_PREHOMO_DUTY.getValue());
|
||||
belongs.add(ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_VERIFY_INITIATOR.getValue());
|
||||
belongs.add(ProjectUserLocationEnum.PROJECT_LAWS_INVENTORY_VERIFY_DUTY.getValue());
|
||||
|
||||
QueryWrapper<ProjectLawsInventoryEO> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("project_library_id", projectLibraryBase.getId());
|
||||
List<ProjectLawsInventoryEO> list = projectLawsInventoryEOService.list(queryWrapper);
|
||||
if (ObjectUtils.isNotEmpty(list)) {
|
||||
for (ProjectLawsInventoryEO lawsInventoryEO : list) {
|
||||
boolean boo = false;
|
||||
//发起任务前
|
||||
if (TaskAffirmStatusEnum.NOT_STARTED.getValue().equals(lawsInventoryEO.getTaskAffirmStatus())) {
|
||||
boo = true;
|
||||
}
|
||||
//任务结束后
|
||||
if (!boo) {
|
||||
int count = 0;
|
||||
QueryWrapper<ProjectTaskInventoryEO> taskInventoryQueryWrapper = new QueryWrapper<>();
|
||||
taskInventoryQueryWrapper.eq("project_laws_inventory_id",lawsInventoryEO.getId());
|
||||
List<ProjectTaskInventoryEO> taskInventoryRecords = projectTaskInventoryEOMapper.selectList(taskInventoryQueryWrapper);
|
||||
for (ProjectTaskInventoryEO taskInventoryRecord : taskInventoryRecords) {
|
||||
String designStatus = taskInventoryRecord.getDesignStatus();
|
||||
String verifyStatus = taskInventoryRecord.getVerifyStatus();
|
||||
String prehomoStatus = taskInventoryRecord.getPrehomoStatus();
|
||||
boolean designStatusFlag = StringUtils.isBlank(designStatus) || designStatus.equals(DesignComplianceStatusEnum.REVIEW_COMPLETED.getValue());
|
||||
boolean verifyStatusFlag = StringUtils.isBlank(verifyStatus) || verifyStatus.equals(DesignComplianceStatusEnum.REVIEW_COMPLETED.getValue());
|
||||
boolean prehomoStatusFlag = StringUtils.isBlank(prehomoStatus) || prehomoStatus.equals(DesignComplianceStatusEnum.REVIEW_COMPLETED.getValue());
|
||||
if (designStatusFlag && verifyStatusFlag && prehomoStatusFlag) {
|
||||
count++;
|
||||
}
|
||||
}
|
||||
if (count == 3) {
|
||||
boo = true;
|
||||
}
|
||||
}
|
||||
if (boo) {
|
||||
QueryWrapper<ProjectRelatedPersonnel> personnelQueryWrapper = new QueryWrapper<>();
|
||||
personnelQueryWrapper.eq("duty_territory", lawsInventoryEO.getDutyTerritory()).eq("project_id", projectLibraryBase.getId());
|
||||
List<ProjectRelatedPersonnel> personnels = projectRelatedPersonnelService.list(personnelQueryWrapper);
|
||||
|
||||
if (!original.getStudioEngineer().equals(projectLibraryBase.getStudioEngineer())) {
|
||||
StringBuilder participator = new StringBuilder();
|
||||
if (ObjectUtils.isNotEmpty(personnels)) {
|
||||
if (ObjectUtils.isNotEmpty(personnels.get(0).getLawEngineer())) {
|
||||
participator.append(personnels.get(0).getLawEngineer() + ",");
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(personnels.get(0).getCertificationEngineer())) {
|
||||
participator.append(personnels.get(0).getCertificationEngineer() + ",");
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(personnels.get(0).getEngineeringInterfacePerson())) {
|
||||
participator.append(personnels.get(0).getEngineeringInterfacePerson() + ",");
|
||||
}
|
||||
}
|
||||
if (!participator.toString().contains(original.getStudioEngineer())) {
|
||||
//删除当前studio在法规清单中的人员权限
|
||||
QueryWrapper<ProjectUserPermission> del = new QueryWrapper<>();
|
||||
del.eq("project_id", projectLibraryBase.getId()).eq("user_id", original.getStudioEngineer()).in("belong",belongs).
|
||||
eq("description", PermissionDescriptionEnum.PROJECT_LAWS_INVENTORY.getValue() + lawsInventoryEO.getId());
|
||||
projectUserPermissionService.remove(del);
|
||||
}
|
||||
}
|
||||
for (String id : original.getCertificationEngineer().split(",")) {
|
||||
if (!certificationEngineer.contains(id)) {
|
||||
StringBuilder participator = new StringBuilder();
|
||||
if (ObjectUtils.isNotEmpty(personnels)) {
|
||||
if (ObjectUtils.isNotEmpty(personnels.get(0).getLawEngineer())) {
|
||||
participator.append(personnels.get(0).getLawEngineer() + ",");
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(personnels.get(0).getEngineeringInterfacePerson())) {
|
||||
participator.append(personnels.get(0).getEngineeringInterfacePerson() + ",");
|
||||
}
|
||||
}
|
||||
participator.append(original.getStudioEngineer());
|
||||
if (!participator.toString().contains(id)) {
|
||||
//删除当前studio在法规清单中的人员权限
|
||||
QueryWrapper<ProjectUserPermission> del = new QueryWrapper<>();
|
||||
del.eq("project_id", projectLibraryBase.getId()).eq("user_id", id).in("belong",belongs).
|
||||
eq("description", PermissionDescriptionEnum.PROJECT_LAWS_INVENTORY.getValue() + lawsInventoryEO.getId());
|
||||
projectUserPermissionService.remove(del);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -336,6 +576,10 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
logEOQueryWrapper.in("project_library_id",id);
|
||||
projectLawsInventoryLogEOService.remove(logEOQueryWrapper);
|
||||
|
||||
//删除权限
|
||||
QueryWrapper<ProjectUserPermission> permissionQueryWrapper = new QueryWrapper<>();
|
||||
permissionQueryWrapper.eq("project_id", id);
|
||||
projectUserPermissionService.remove(permissionQueryWrapper);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -478,6 +722,13 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
*/
|
||||
@Override
|
||||
public List<ProjectLibraryBase> queryPageList(Map<String,Object> params) {
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
List<String> projectIds = new ArrayList<>();
|
||||
if (sysRoleMapper.queryUserRoleByCode(ProjectRoleEnum.VIEWER.getName(), loginUser.getId()) == 0) {
|
||||
//如果不是Viewer,根据项目用户权限表筛选有权访问的项目
|
||||
projectIds = projectUserPermissionMapper.queryProjectIdsByUserId(loginUser.getId());
|
||||
}
|
||||
|
||||
List<ProjectLibraryBase> result = projectLibraryBaseMapper.queryPageList(params);
|
||||
disposeData(result,"",false);
|
||||
//目标市场
|
||||
|
||||
+194
-2
@@ -17,10 +17,14 @@ import com.jero.modules.enums.DictCodeEnum;
|
||||
import com.jero.modules.ocr.entity.User;
|
||||
import com.jero.modules.project.entity.ProjectLibraryBase;
|
||||
import com.jero.modules.project.entity.ProjectRelatedPersonnel;
|
||||
import com.jero.modules.project.entity.ProjectUserPermission;
|
||||
import com.jero.modules.project.enums.PermissionDescriptionEnum;
|
||||
import com.jero.modules.project.enums.ProjectInventoryFieldEnum;
|
||||
import com.jero.modules.project.enums.ProjectRoleEnum;
|
||||
import com.jero.modules.project.enums.ProjectUserLocationEnum;
|
||||
import com.jero.modules.project.mapper.ProjectRelatedPersonnelMapper;
|
||||
import com.jero.modules.project.service.IProjectRelatedPersonnelService;
|
||||
import com.jero.modules.project.service.IProjectUserPermissionService;
|
||||
import com.jero.modules.system.entity.SysDictItem;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.mapper.SysDictItemMapper;
|
||||
@@ -93,6 +97,10 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
|
||||
@Autowired
|
||||
private ProjectLibraryBaseServiceImpl projectLibraryBaseService;
|
||||
|
||||
@Autowired
|
||||
private IProjectUserPermissionService projectUserPermissionService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
@@ -133,6 +141,76 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
projectRelatedPersonnel.setUpdateBy(sysUser.getUsername());
|
||||
saveOrUpdate(projectRelatedPersonnel);
|
||||
|
||||
|
||||
List<ProjectUserPermission> adds = new ArrayList<>();
|
||||
if (projectRelatedPersonnel.getLawEngineer() != null) {
|
||||
if (!"".equals(projectRelatedPersonnel.getLawEngineer())) {
|
||||
for (String lawEngineerId : projectRelatedPersonnel.getLawEngineer().split(",")) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectRelatedPersonnel.getProjectId());
|
||||
permission.setUserId(lawEngineerId);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_LAW.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + projectRelatedPersonnel.getId());
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
adds.add(permission);
|
||||
}
|
||||
}
|
||||
//修改当前相关人员名单中责任领域人员权限
|
||||
QueryWrapper<ProjectUserPermission> delPermissionWrapper = new QueryWrapper<>();
|
||||
delPermissionWrapper.eq("project_id", projectRelatedPersonnel.getProjectId())
|
||||
.eq("belong", ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_LAW.getValue())
|
||||
.eq("description", PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + projectRelatedPersonnel.getId());
|
||||
projectUserPermissionService.remove(delPermissionWrapper);
|
||||
}
|
||||
if (projectRelatedPersonnel.getEngineeringInterfacePerson()!= null) {
|
||||
if (!"".equals(projectRelatedPersonnel.getEngineeringInterfacePerson())) {
|
||||
for (String engineeringInterfacePersonId : projectRelatedPersonnel.getEngineeringInterfacePerson().split(",")) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectRelatedPersonnel.getProjectId());
|
||||
permission.setUserId(engineeringInterfacePersonId);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_INTERFACE.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + projectRelatedPersonnel.getId());
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
adds.add(permission);
|
||||
}
|
||||
}
|
||||
//修改当前相关人员名单中责任领域人员权限
|
||||
QueryWrapper<ProjectUserPermission> delPermissionWrapper = new QueryWrapper<>();
|
||||
delPermissionWrapper.eq("project_id",projectRelatedPersonnel.getProjectId())
|
||||
.eq("belong", ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_INTERFACE.getValue())
|
||||
.eq("description", PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + projectRelatedPersonnel.getId());
|
||||
projectUserPermissionService.remove(delPermissionWrapper);
|
||||
}
|
||||
if (projectRelatedPersonnel.getCertificationEngineer()!= null) {
|
||||
if (!"".equals(projectRelatedPersonnel.getCertificationEngineer())) {
|
||||
for (String certificationEngineerId : projectRelatedPersonnel.getCertificationEngineer().split(",")) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectRelatedPersonnel.getProjectId());
|
||||
permission.setUserId(certificationEngineerId);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_CERTIFICATION.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + projectRelatedPersonnel.getId());
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
adds.add(permission);
|
||||
}
|
||||
}
|
||||
//修改当前相关人员名单中责任领域人员权限
|
||||
QueryWrapper<ProjectUserPermission> delPermissionWrapper = new QueryWrapper<>();
|
||||
delPermissionWrapper.eq("project_id",projectRelatedPersonnel.getProjectId())
|
||||
.eq("belong", ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_CERTIFICATION.getValue())
|
||||
.eq("description", PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + projectRelatedPersonnel.getId());
|
||||
projectUserPermissionService.remove(delPermissionWrapper);
|
||||
}
|
||||
if (ObjectUtils.isNotEmpty(adds)) {
|
||||
projectUserPermissionService.saveBatch(adds);
|
||||
}
|
||||
//修改当前属于当前责任领域的法规清单的人员权限
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -981,7 +1059,12 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
Result<?> result = new Result<>();
|
||||
int row=3;
|
||||
StringBuilder message = new StringBuilder();
|
||||
|
||||
List<ProjectUserPermission> addPermission = new ArrayList<>();
|
||||
Date now = new Date();
|
||||
|
||||
for (ProjectRelatedPersonnel projectRelatedPersonnel:records) {
|
||||
String relatedPersonnelId = "";
|
||||
//查标签内容里的责任领域数据
|
||||
List<SysDictItem> sysDictItemList = sysDictItemMapper.selectItemsByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue());
|
||||
List<String> dutyTerritoryValueList = new ArrayList<>();
|
||||
@@ -1015,6 +1098,7 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
QueryWrapper<ProjectRelatedPersonnel> queryWrapper = new QueryWrapper<>();
|
||||
List<ProjectRelatedPersonnel> idList = list(queryWrapper.select("id").eq("duty_territory", dutyTerritoryValueList.get(0)).eq("project_id",projectId));
|
||||
projectRelatedPersonnel.setId(idList.get(0).getId());
|
||||
relatedPersonnelId = idList.get(0).getId();
|
||||
}
|
||||
}
|
||||
}else{
|
||||
@@ -1056,8 +1140,26 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
.map(sysUser -> sysUser.getId()).collect(Collectors.joining(","));
|
||||
}
|
||||
midId.append(lawEngineerId).append(",");
|
||||
|
||||
//添加权限
|
||||
if (ObjectUtils.isNotEmpty(relatedPersonnelId) && ObjectUtils.isNotEmpty(lawEngineerId)) {
|
||||
for (String id : lawEngineerId.split(",")) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectId);
|
||||
permission.setUserId(id);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_LAW.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + relatedPersonnelId);
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
addPermission.add(permission);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
projectRelatedPersonnel.setLawEngineer(midId.substring(0,midId.toString().length()-1));
|
||||
QueryWrapper<ProjectUserPermission> delPermissionWrapper = new QueryWrapper<>();
|
||||
delPermissionWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_LAW.getValue()).eq("description", PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + relatedPersonnelId);
|
||||
projectUserPermissionService.remove(delPermissionWrapper);
|
||||
}
|
||||
}else{
|
||||
projectRelatedPersonnel.setLawEngineer("");
|
||||
@@ -1093,8 +1195,25 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
.map(sysUser -> sysUser.getId()).collect(Collectors.joining(","));
|
||||
}
|
||||
midId.append(engineeringInterfacePersonId).append(",");
|
||||
|
||||
//添加权限
|
||||
if (ObjectUtils.isNotEmpty(relatedPersonnelId)&&ObjectUtils.isNotEmpty(engineeringInterfacePersonId)) {
|
||||
for (String id : engineeringInterfacePersonId.split(",")) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectId);
|
||||
permission.setUserId(id);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_INTERFACE.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + relatedPersonnelId);
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
addPermission.add(permission);
|
||||
}
|
||||
}
|
||||
}
|
||||
projectRelatedPersonnel.setEngineeringInterfacePerson(midId.substring(0,midId.toString().length()-1));
|
||||
QueryWrapper<ProjectUserPermission> delPermissionWrapper = new QueryWrapper<>();
|
||||
delPermissionWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_INTERFACE.getValue()).eq("description", PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + relatedPersonnelId);
|
||||
projectUserPermissionService.remove(delPermissionWrapper);
|
||||
}
|
||||
}else{
|
||||
projectRelatedPersonnel.setEngineeringInterfacePerson("");
|
||||
@@ -1161,15 +1280,31 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
.map(sysUser -> sysUser.getId()).collect(Collectors.joining(","));
|
||||
}
|
||||
midId.append(certificationEngineerId).append(",");
|
||||
|
||||
//添加权限
|
||||
if (ObjectUtils.isNotEmpty(relatedPersonnelId)&&ObjectUtils.isNotEmpty(certificationEngineerId)) {
|
||||
for (String id : certificationEngineerId.split(",")) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectId);
|
||||
permission.setUserId(id);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_CERTIFICATION.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + relatedPersonnelId);
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
addPermission.add(permission);
|
||||
}
|
||||
}
|
||||
}
|
||||
projectRelatedPersonnel.setCertificationEngineer(midId.substring(0,midId.toString().length()-1));
|
||||
QueryWrapper<ProjectUserPermission> delPermissionWrapper = new QueryWrapper<>();
|
||||
delPermissionWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_CERTIFICATION.getValue()).eq("description", PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + relatedPersonnelId);
|
||||
projectUserPermissionService.remove(delPermissionWrapper);
|
||||
}
|
||||
|
||||
}else{
|
||||
projectRelatedPersonnel.setCertificationEngineer("");
|
||||
}
|
||||
projectRelatedPersonnel.setProjectId(projectId);
|
||||
Date now = new Date();
|
||||
projectRelatedPersonnel.setUpdateTime(now);
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
projectRelatedPersonnel.setUpdateBy(sysUser.getUsername());
|
||||
@@ -1182,6 +1317,11 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
//中英切换提示语,message为空 = 之前的数据没错
|
||||
if(StringUtils.isBlank(message.toString())) {
|
||||
saveOrUpdateBatch(records);
|
||||
//设置相关人员权限
|
||||
if (ObjectUtils.isNotEmpty(addPermission)) {
|
||||
projectUserPermissionService.saveBatch(addPermission);
|
||||
}
|
||||
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
message.append("导入成功");
|
||||
} else {
|
||||
@@ -1303,22 +1443,74 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
@Override
|
||||
public void setBatch(ProjectRelatedPersonnel projectRelatedPersonnel) {
|
||||
List<ProjectRelatedPersonnel> projectRelatedPersonnelList = new ArrayList<>();
|
||||
List<ProjectUserPermission> addPermissionList = new ArrayList<>();
|
||||
|
||||
String projectId = "";
|
||||
ProjectRelatedPersonnel personnel = baseMapper.selectById(projectRelatedPersonnel.getIds().split(",")[0]);
|
||||
if (ObjectUtils.isNotEmpty(personnel)) {
|
||||
projectId = personnel.getProjectId();
|
||||
}
|
||||
|
||||
Date now = new Date();
|
||||
for (String id : projectRelatedPersonnel.getIds().split(",")) {
|
||||
ProjectRelatedPersonnel projectRelatedPersonnelTemp = new ProjectRelatedPersonnel();
|
||||
projectRelatedPersonnelTemp.setId(id);
|
||||
projectRelatedPersonnelTemp.setUpdateTime(new Date());
|
||||
projectRelatedPersonnelTemp.setUpdateTime(now);
|
||||
if(org.apache.commons.lang3.StringUtils.isNotBlank(projectRelatedPersonnel.getLawEngineer())){
|
||||
projectRelatedPersonnelTemp.setLawEngineer(projectRelatedPersonnel.getLawEngineer());
|
||||
for (String lawEngineerId : projectRelatedPersonnel.getLawEngineer().split(",")) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectId);
|
||||
permission.setUserId(lawEngineerId);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_LAW.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + id);
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
addPermissionList.add(permission);
|
||||
}
|
||||
QueryWrapper<ProjectUserPermission> delPermissionQueryWrapper= new QueryWrapper<>();
|
||||
delPermissionQueryWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_LAW.getValue()).eq("description", PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + id);
|
||||
projectUserPermissionService.remove(delPermissionQueryWrapper);
|
||||
}
|
||||
if(org.apache.commons.lang3.StringUtils.isNotBlank(projectRelatedPersonnel.getEngineeringInterfacePerson())){
|
||||
projectRelatedPersonnelTemp.setEngineeringInterfacePerson(projectRelatedPersonnel.getEngineeringInterfacePerson());
|
||||
for (String engineeringInterfacePersonId : projectRelatedPersonnel.getEngineeringInterfacePerson().split(",")) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectId);
|
||||
permission.setUserId(engineeringInterfacePersonId);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_INTERFACE.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + id);
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
addPermissionList.add(permission);
|
||||
}
|
||||
QueryWrapper<ProjectUserPermission> delPermissionQueryWrapper= new QueryWrapper<>();
|
||||
delPermissionQueryWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_INTERFACE.getValue()).eq("description", PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + id);
|
||||
projectUserPermissionService.remove(delPermissionQueryWrapper);
|
||||
}
|
||||
if(org.apache.commons.lang3.StringUtils.isNotBlank(projectRelatedPersonnel.getCertificationEngineer())){
|
||||
projectRelatedPersonnelTemp.setCertificationEngineer(projectRelatedPersonnel.getCertificationEngineer());
|
||||
for (String certificationEngineerId : projectRelatedPersonnel.getCertificationEngineer().split(",")) {
|
||||
ProjectUserPermission permission = new ProjectUserPermission();
|
||||
permission.setProjectId(projectId);
|
||||
permission.setUserId(certificationEngineerId);
|
||||
permission.setBelong(ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_CERTIFICATION.getValue());
|
||||
permission.setDescription(PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + id);
|
||||
permission.setCreateTime(now);
|
||||
permission.setUpdateTime(now);
|
||||
addPermissionList.add(permission);
|
||||
}
|
||||
QueryWrapper<ProjectUserPermission> delPermissionQueryWrapper= new QueryWrapper<>();
|
||||
delPermissionQueryWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_DETAIL_RELEVANT_PERSONNEL_CERTIFICATION.getValue()).eq("description", PermissionDescriptionEnum.PROJECT_RELATED_PERSONNEL.getValue() + id);
|
||||
projectUserPermissionService.remove(delPermissionQueryWrapper);
|
||||
}
|
||||
projectRelatedPersonnelList.add(projectRelatedPersonnelTemp);
|
||||
}
|
||||
this.updateBatchById(projectRelatedPersonnelList);
|
||||
|
||||
if (ObjectUtils.isNotEmpty(addPermissionList)) {
|
||||
projectUserPermissionService.saveBatch(addPermissionList);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+89
@@ -0,0 +1,89 @@
|
||||
package com.jero.modules.project.service.impl;
|
||||
|
||||
import com.jero.modules.project.entity.ProjectUserPermission;
|
||||
import com.jero.modules.project.mapper.ProjectUserPermissionMapper;
|
||||
import com.jero.modules.project.service.IProjectUserPermissionService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
/**
|
||||
* @Description: 项目权限表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2022-11-10
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class ProjectUserPermissionServiceImpl extends ServiceImpl<ProjectUserPermissionMapper, ProjectUserPermission> implements IProjectUserPermissionService {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param projectUserPermission
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(ProjectUserPermission projectUserPermission) {
|
||||
Date now = new Date();
|
||||
projectUserPermission.setCreateTime(now);
|
||||
projectUserPermission.setUpdateTime(now);
|
||||
save(projectUserPermission);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param projectUserPermission
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(ProjectUserPermission projectUserPermission) {
|
||||
Date now = new Date();
|
||||
projectUserPermission.setUpdateTime(now);
|
||||
saveOrUpdate(projectUserPermission);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
removeById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public ProjectUserPermission queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<ProjectUserPermission> queryList() {
|
||||
return list();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user