feat: 会后管理流程结束后同步资料中心结构
This commit is contained in:
+74
-1
@@ -3,6 +3,7 @@ package com.jero.modules.activiti.process.meetingmanage.service.impl;
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||
@@ -28,6 +29,11 @@ import com.jero.modules.activiti.process.meetingmanage.vo.MeetingManageFlowVO;
|
||||
import com.jero.modules.activiti.service.ProcessAllService;
|
||||
import com.jero.modules.activiti.service.ProcessApprovalRecordService;
|
||||
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
||||
import com.jero.modules.laws.common.util.CurrentUserUtil;
|
||||
import com.jero.modules.laws.dataCenter.entity.LawsDataCenterFile;
|
||||
import com.jero.modules.laws.dataCenter.entity.LawsDataCenterFolder;
|
||||
import com.jero.modules.laws.dataCenter.service.ILawsDataCenterFileService;
|
||||
import com.jero.modules.laws.dataCenter.service.ILawsDataCenterFolderService;
|
||||
import com.jero.modules.laws.standardization.common.LawsStandardizationCommon;
|
||||
import com.jero.modules.laws.standardization.entity.LawsStandardization;
|
||||
import com.jero.modules.laws.standardization.entity.LawsStandardizationMeeting;
|
||||
@@ -70,6 +76,12 @@ public class MeetingManageFlowServiceImpl implements IMeetingManageFlowService {
|
||||
private final ISysUserService sysUserService;
|
||||
private final FlowUtility flowUtility;
|
||||
|
||||
@Resource
|
||||
private ILawsDataCenterFolderService lawsDataCenterFolderService;
|
||||
|
||||
@Resource
|
||||
private ILawsDataCenterFileService lawsDataCenterFileService;
|
||||
|
||||
public MeetingManageFlowServiceImpl(ProcessAllService processAllService,
|
||||
ProcessApprovalRecordService processApprovalRecordService,
|
||||
ProcessDraftService processDraftService,
|
||||
@@ -297,8 +309,8 @@ public class MeetingManageFlowServiceImpl implements IMeetingManageFlowService {
|
||||
.eq(ProcessMeetingManage::getProjectId, processAll.getProjectId()), false);
|
||||
|
||||
// 保存参会人员
|
||||
ProcessMeetingManagePersonnel processMeetingManagePersonnel = new ProcessMeetingManagePersonnel();
|
||||
if (!meetingManageFlowVO.isNotAttend()){
|
||||
ProcessMeetingManagePersonnel processMeetingManagePersonnel = new ProcessMeetingManagePersonnel();
|
||||
processMeetingManagePersonnel.setProcessMeetingManageId(processMeetingManage.getId());
|
||||
processMeetingManagePersonnel.setPersonnelId(loginUser.getId());
|
||||
processMeetingManagePersonnel.setFileId(meetingManageFlowVO.getFileIds());
|
||||
@@ -346,10 +358,71 @@ public class MeetingManageFlowServiceImpl implements IMeetingManageFlowService {
|
||||
standardizationVO.setStandardizationGroupList(Collections.emptyList());
|
||||
standardizationVO.setStandardizationLiaisonList(Collections.emptyList());
|
||||
lawsStandardizationService.addOrUpdateStandardization(standardizationVO, LawsStandardizationCommon.SOURCE_2);
|
||||
|
||||
// 更改文件在资料中心的位置
|
||||
this.updateFolderDataCenter(processMeetingManage, processMeetingManagePersonnel);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void updateFolderDataCenter(ProcessMeetingManage processMeetingManage, ProcessMeetingManagePersonnel processMeetingManagePersonnel) {
|
||||
String fileIds = processMeetingManagePersonnel.getFileId();
|
||||
if (StrUtil.isBlank(fileIds)) {
|
||||
return;
|
||||
}
|
||||
|
||||
// 找到根目录
|
||||
LambdaQueryWrapper<LawsDataCenterFolder> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(LawsDataCenterFolder::getFolderName, "根目录");
|
||||
LawsDataCenterFolder root = lawsDataCenterFolderService.getOne(queryWrapper);
|
||||
|
||||
// 判断资料中心是否有一级和二级的文件夹,没有则创建
|
||||
LawsStandardization first = lawsStandardizationService.getById(processMeetingManage.getStandardizationFirstId());
|
||||
queryWrapper.clear();
|
||||
queryWrapper.eq(LawsDataCenterFolder::getFolderName, first.getName());
|
||||
LawsDataCenterFolder one = lawsDataCenterFolderService.getOne(queryWrapper);
|
||||
String finalFolderId = "";
|
||||
if (one == null) {
|
||||
// 创建一级目录
|
||||
LawsDataCenterFolder folder = new LawsDataCenterFolder();
|
||||
folder.setFolderName(first.getName());
|
||||
folder.setParentId(root.getId());
|
||||
folder.setDefaultFolder("0");
|
||||
folder.setOwnerId(CurrentUserUtil.getId());
|
||||
lawsDataCenterFolderService.save(folder);
|
||||
one = folder;
|
||||
finalFolderId = one.getId();
|
||||
} else {
|
||||
finalFolderId = one.getId();
|
||||
}
|
||||
String secondId = processMeetingManage.getStandardizationSecondId();
|
||||
if (StrUtil.isNotBlank(secondId)) {
|
||||
LawsStandardization second = lawsStandardizationService.getById(processMeetingManage.getStandardizationSecondId());
|
||||
queryWrapper.clear();
|
||||
queryWrapper.eq(LawsDataCenterFolder::getFolderName, second.getName());
|
||||
LawsDataCenterFolder two = lawsDataCenterFolderService.getOne(queryWrapper);
|
||||
if (two == null) {
|
||||
// 创建一级目录
|
||||
LawsDataCenterFolder folder = new LawsDataCenterFolder();
|
||||
folder.setFolderName(second.getName());
|
||||
folder.setParentId(one.getId());
|
||||
folder.setDefaultFolder("0");
|
||||
folder.setOwnerId(CurrentUserUtil.getId());
|
||||
lawsDataCenterFolderService.save(folder);
|
||||
two = folder;
|
||||
finalFolderId = two.getId();
|
||||
} else {
|
||||
finalFolderId = two.getId();
|
||||
}
|
||||
}
|
||||
|
||||
// 移动文件位置
|
||||
LambdaUpdateWrapper<LawsDataCenterFile> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.in(LawsDataCenterFile::getFileId, Arrays.asList(fileIds.split(",")));
|
||||
updateWrapper.set(LawsDataCenterFile::getFolderId, finalFolderId);
|
||||
lawsDataCenterFileService.update(updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void flowTransfer(String taskId, String userId) {
|
||||
processHandleService.transfer(taskId, userId);
|
||||
|
||||
-6
@@ -785,10 +785,6 @@ public class LawsCommonServiceImpl implements ILawsCommonService {
|
||||
// 筛选出表单显示的
|
||||
fieldList = fieldList.stream().filter(lawsTag -> YesOrNoEnum.YES.getInteger()
|
||||
.equals(lawsTag.getIsShowFormCreate())).collect(Collectors.toList());
|
||||
// 新增字段
|
||||
StringBuilder fieldsBuilder = new StringBuilder();
|
||||
// 新增数据值
|
||||
StringBuilder valuesBuilder = new StringBuilder();
|
||||
// 对默认的字段赋值
|
||||
String existId = parameterMap.get(FieldCommon.ID) == null ? "" : parameterMap.get(FieldCommon.ID).toString();
|
||||
//先新增后面在编辑
|
||||
@@ -825,8 +821,6 @@ public class LawsCommonServiceImpl implements ILawsCommonService {
|
||||
jointInsertFieldAndValue(fieldList, key, value, id, standardNumber, updateWrapper);
|
||||
}
|
||||
}
|
||||
// 操作数据库进行新增数据
|
||||
//lawsCommonMapper.commonAdd(tableName, fieldsBuilder.toString(), valuesBuilder.toString());
|
||||
//根据类型更新数据
|
||||
executeUpdateWrapperByModel(module, updateWrapper);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user