参数收集清单添加权限

This commit is contained in:
CD
2022-11-15 14:18:51 +08:00
parent 34a0b2e31f
commit f6a917941e
@@ -48,8 +48,12 @@ import com.jero.modules.oss.entity.OSSFile;
import com.jero.modules.oss.service.IOSSFileService;
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.ProjectUserLocationEnum;
import com.jero.modules.project.mapper.ProjectLibraryBaseMapper;
import com.jero.modules.project.service.IProjectRelatedPersonnelService;
import com.jero.modules.project.service.IProjectUserPermissionService;
import com.jero.modules.split.common.FileUnZip;
import com.jero.modules.split.common.ReadExcel;
import com.jero.modules.system.entity.SysAnnouncement;
@@ -148,6 +152,8 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
private ProjectLibraryBaseMapper projectLibraryBaseMapper;
@Autowired
private WebSocketServer webSocketServer; // 同步上报库时变更清单状态时使用
@Autowired
private IProjectUserPermissionService projectUserPermissionService;
@Resource
private WebSocket webSocket; // 消息专用
@@ -1514,6 +1520,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(",");
List<ParamsCollectManifestEO> updateEOList = new ArrayList<>();
List<String> delDrePermission = new ArrayList<>();
StringBuilder connectBuilder = new StringBuilder();
connectBuilder.append("You are required to fill in ");
@@ -1534,9 +1541,31 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
updateEO.setDre(dre); // 设置填写人
updateEO.setState(CollectManifestStateEnum.WAIT_FILL.getValue()); // 设置状态为:待填写
updateEOList.add(updateEO);
delDrePermission.add(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId());
}
boolean isSuccess = updateBatchById(updateEOList);
if (isSuccess) {
//设置权限 先删后加
Date now = new Date();
QueryWrapper<ProjectUserPermission> delDreWrapper = new QueryWrapper<>();
delDreWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_DRE.getValue()).in("description", delDrePermission);
projectUserPermissionService.remove(delDreWrapper);
List<ProjectUserPermission> adds = new ArrayList<>();
for (ParamsCollectManifestEO paramsCollectManifestEO : updateEOList) {
ProjectUserPermission projectUserPermission = new ProjectUserPermission();
projectUserPermission.setProjectId(projectId);
projectUserPermission.setUserId(sysUserService.getUserByName(paramsCollectManifestEO.getDre()) == null?"":sysUserService.getUserByName(paramsCollectManifestEO.getDre()).getId());
projectUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_DRE.getValue());
projectUserPermission.setDescription(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId());
projectUserPermission.setCreateTime(now);
projectUserPermission.setUpdateTime(now);
adds.add(projectUserPermission);
}
if (ObjectUtils.isNotEmpty(adds)) {
projectUserPermissionService.saveBatch(adds);
}
}
// 消息内容
SysUser sysUser = sysUserService.getUserByName(dre);
String[] thirdIds = new String[1];
@@ -1628,7 +1657,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
List<ParamsCollectManifestEO> updateEOList = new ArrayList<>();
List<Map<String, String>> msgMapList = new ArrayList<>();
List<String> updateEOIdList = new ArrayList<>();
List<String> delSdtPermission = new ArrayList<>();
List<ParamsCollectManifestEO> paramsCollectManifestEOList = listByIds(Arrays.asList(paramsCollectManifestIdStr));
paramsCollectManifestEOList = paramsCollectManifestEOList.stream().sorted(Comparator.comparing(ParamsCollectManifestBaseEO::getNioNumber)).collect(Collectors.toList()); // 按NIO编号升序
for (ParamsCollectManifestEO paramsCollectManifestEO : paramsCollectManifestEOList) {
@@ -1644,6 +1673,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
updateEOList.add(updateEO);
updateEOIdList.add(paramsCollectManifestEO.getId());
delSdtPermission.add(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId());
} else {
Map<String, String> msgMap = new HashMap<>();
msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber());
@@ -1663,8 +1693,28 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
boolean isSuccess = updateBatchById(updateEOList);
if (isSuccess) {
// 消息内容
Date now = new Date();
List<ParamsCollectManifestEO> afterUpdateEOList = listByIds(updateEOIdList);
//设置权限 先删后加
QueryWrapper<ProjectUserPermission> delSdtWrapper = new QueryWrapper<>();
delSdtWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue()).in("description", delSdtPermission);
projectUserPermissionService.remove(delSdtWrapper);
List<ProjectUserPermission> adds = new ArrayList<>();
for (ParamsCollectManifestEO paramsCollectManifestEO : afterUpdateEOList) {
ProjectUserPermission projectUserPermission = new ProjectUserPermission();
projectUserPermission.setProjectId(projectId);
projectUserPermission.setUserId(sysUserService.getUserByName(paramsCollectManifestEO.getSdt()) == null?"":sysUserService.getUserByName(paramsCollectManifestEO.getSdt()).getId());
projectUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue());
projectUserPermission.setDescription(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId());
projectUserPermission.setCreateTime(now);
projectUserPermission.setUpdateTime(now);
adds.add(projectUserPermission);
}
if (ObjectUtils.isNotEmpty(adds)) {
projectUserPermissionService.saveBatch(adds);
}
// 消息内容
List<String> sdtList = afterUpdateEOList.stream()
.map(ParamsCollectManifestEO::getSdt)
.distinct()
@@ -1759,7 +1809,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
List<ParamsCollectManifestEO> updateEOList = new ArrayList<>();
List<Map<String, String>> msgMapList = new ArrayList<>();
List<String> updateEOIdList = new ArrayList<>();
List<String> delSdtPermission = new ArrayList<>();
LambdaQueryWrapper<ParamsCollectManifestEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId)
.notIn(ParamsCollectManifestEO::getControlType, ControlTypeEnum.Title.getValue())
@@ -1778,6 +1828,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
updateEOList.add(updateEO);
updateEOIdList.add(paramsCollectManifestEO.getId());
delSdtPermission.add(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId());
} else {
Map<String, String> msgMap = new HashMap<>();
msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber());
@@ -1797,8 +1848,27 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
boolean isSuccess = updateBatchById(updateEOList);
if (isSuccess) {
// 消息内容
Date now = new Date();
List<ParamsCollectManifestEO> afterUpdateEOList = listByIds(updateEOIdList);
//设置权限 先删后加
QueryWrapper<ProjectUserPermission> delSdtWrapper = new QueryWrapper<>();
delSdtWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue()).in("description", delSdtPermission);
projectUserPermissionService.remove(delSdtWrapper);
List<ProjectUserPermission> adds = new ArrayList<>();
for (ParamsCollectManifestEO paramsCollectManifestEO : afterUpdateEOList) {
ProjectUserPermission projectUserPermission = new ProjectUserPermission();
projectUserPermission.setProjectId(projectId);
projectUserPermission.setUserId(sysUserService.getUserByName(paramsCollectManifestEO.getSdt()) == null?"":sysUserService.getUserByName(paramsCollectManifestEO.getSdt()).getId());
projectUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue());
projectUserPermission.setDescription(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId());
projectUserPermission.setCreateTime(now);
projectUserPermission.setUpdateTime(now);
adds.add(projectUserPermission);
}
if (ObjectUtils.isNotEmpty(adds)) {
projectUserPermissionService.saveBatch(adds);
}
// 消息内容
List<String> sdtList = afterUpdateEOList.stream()
.map(ParamsCollectManifestEO::getSdt)
.distinct()