feat(资料中心): 更改为子表
This commit is contained in:
+27
@@ -0,0 +1,27 @@
|
||||
package com.jero.modules.laws.dataCenter.common;
|
||||
|
||||
/**
|
||||
* @ClassName: DataCenterCommon
|
||||
* @Description:
|
||||
* @Author: yjz
|
||||
* @Date: 2024-07-16 16:52
|
||||
* @Version: 1.0
|
||||
**/
|
||||
public class DataCenterCommon {
|
||||
private DataCenterCommon(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 数据中心文件夹类型 1:管理权限 2:查看权限 3:下载权限
|
||||
*/
|
||||
public static final String AUTH_MANAGE = "1";
|
||||
/**
|
||||
* 数据中心文件夹类型 1:管理权限 2:查看权限 3:下载权限
|
||||
*/
|
||||
public static final String AUTH_VIEW = "2";
|
||||
/**
|
||||
* 数据中心文件夹类型 1:管理权限 2:查看权限 3:下载权限
|
||||
*/
|
||||
public static final String AUTH_DOWNLOAD = "3";
|
||||
}
|
||||
+7
@@ -102,6 +102,13 @@ public class LawsDataCenterFolder implements Serializable {
|
||||
@ApiModelProperty(value = "查看权限(用户id逗号拼接)")
|
||||
@Size(max = 2000, message = "查看权限超出最大限度")
|
||||
private java.lang.String authViewIds;
|
||||
/**
|
||||
* 下载权限(用户id逗号拼接)
|
||||
*/
|
||||
@Excel(name = "下载权限(用户id逗号拼接)", width = 15)
|
||||
@ApiModelProperty(value = "下载权限(用户id逗号拼接)")
|
||||
@Size(max = 2000, message = "下载权限超出最大限度")
|
||||
private java.lang.String authDownloadIds;
|
||||
/**
|
||||
* 查看权限(用户id逗号拼接) 翻译
|
||||
*/
|
||||
|
||||
+4
-3
@@ -41,11 +41,12 @@
|
||||
folder_id,
|
||||
owner_id,
|
||||
uploader,
|
||||
(SELECT auth_manage_ids FROM laws_data_center_folder d WHERE d.id = folder_id) auth_manage_ids,
|
||||
(SELECT auth_view_ids FROM laws_data_center_folder d WHERE d.id = folder_id) auth_view_ids,
|
||||
(SELECT group_concat(user_id) FROM laws_data_center_folder_sublist d WHERE d.data_center_folder_id = folder_id and d.type = 1) auth_manage_ids,
|
||||
(SELECT group_concat(user_id) FROM laws_data_center_folder_sublist d WHERE d.data_center_folder_id = folder_id and d.type = 2) auth_view_ids,
|
||||
(SELECT group_concat(user_id) FROM laws_data_center_folder_sublist d WHERE d.data_center_folder_id = folder_id and d.type = 3) auth_download_ids,
|
||||
(SELECT default_folder FROM laws_data_center_folder d WHERE d.id = folder_id) default_folder,
|
||||
(SELECT create_by FROM laws_data_center_folder d WHERE d.id = folder_id) folder_create_by
|
||||
FROM laws_data_center_file) t
|
||||
${ew.customSqlSegment}
|
||||
</sql>
|
||||
</mapper>
|
||||
</mapper>
|
||||
|
||||
+44
-1
@@ -10,14 +10,18 @@ import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.BeanCopyUtils;
|
||||
import com.jero.common.util.MessageUtils;
|
||||
import com.jero.common.util.SnowflakeUtils;
|
||||
import com.jero.common.util.StreamUtils;
|
||||
import com.jero.modules.laws.common.util.CurrentUserUtil;
|
||||
import com.jero.modules.laws.common.util.TreeNodeComparator;
|
||||
import com.jero.modules.laws.dataCenter.common.DataCenterCommon;
|
||||
import com.jero.modules.laws.dataCenter.entity.LawsDataCenterFile;
|
||||
import com.jero.modules.laws.dataCenter.entity.LawsDataCenterFolder;
|
||||
import com.jero.modules.laws.dataCenter.entity.LawsDataCenterFolderSublist;
|
||||
import com.jero.modules.laws.dataCenter.mapper.LawsDataCenterFolderMapper;
|
||||
import com.jero.modules.laws.dataCenter.service.ILawsDataCenterFileService;
|
||||
import com.jero.modules.laws.dataCenter.service.ILawsDataCenterFolderService;
|
||||
import com.jero.modules.laws.dataCenter.service.LawsDataCenterFolderSublistService;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
@@ -51,6 +55,8 @@ public class LawsDataCenterFolderServiceImpl extends ServiceImpl<LawsDataCenterF
|
||||
private ISysUserService sysUserService;
|
||||
@Value("${adminRoleCode}")
|
||||
private String adminRoleCode;
|
||||
@Autowired
|
||||
private LawsDataCenterFolderSublistService lawsDataCenterFolderSublistService;
|
||||
|
||||
/**
|
||||
* @Author: liao
|
||||
@@ -175,8 +181,32 @@ public class LawsDataCenterFolderServiceImpl extends ServiceImpl<LawsDataCenterF
|
||||
if (StringUtils.isBlank(lawsDataCenterFolder.getParentId())) {
|
||||
lawsDataCenterFolder.setParentId("0");
|
||||
}
|
||||
String id = String.valueOf(SnowflakeUtils.snowflake());
|
||||
lawsDataCenterFolder.setId(id);
|
||||
save(lawsDataCenterFolder);
|
||||
}
|
||||
// 生成子表数据
|
||||
String authManageIds = lawsDataCenterFolder.getAuthManageIds();
|
||||
String authViewIds = lawsDataCenterFolder.getAuthViewIds();
|
||||
String authDownloadIds = lawsDataCenterFolder.getAuthDownloadIds();
|
||||
List<LawsDataCenterFolderSublist> lawsDataCenterFolderSublistList = new ArrayList<>();
|
||||
createChild(id, authManageIds, DataCenterCommon.AUTH_MANAGE, lawsDataCenterFolderSublistList);
|
||||
createChild(id, authViewIds, DataCenterCommon.AUTH_VIEW, lawsDataCenterFolderSublistList);
|
||||
createChild(id, authDownloadIds, DataCenterCommon.AUTH_DOWNLOAD, lawsDataCenterFolderSublistList);
|
||||
lawsDataCenterFolderSublistService.saveOrUpdateBatch(lawsDataCenterFolderSublistList);
|
||||
}
|
||||
|
||||
private static void createChild(String id, String authIds, String type,
|
||||
List<LawsDataCenterFolderSublist> lawsDataCenterFolderSublistList) {
|
||||
if (StringUtils.isNotBlank(authIds)){
|
||||
for (String userId : authIds.split(",")) {
|
||||
LawsDataCenterFolderSublist lawsDataCenterFolderSublist = new LawsDataCenterFolderSublist();
|
||||
lawsDataCenterFolderSublist.setType(type);
|
||||
lawsDataCenterFolderSublist.setUserId(userId);
|
||||
lawsDataCenterFolderSublist.setDataCenterFolderId(id);
|
||||
lawsDataCenterFolderSublistList.add(lawsDataCenterFolderSublist);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
@@ -187,6 +217,19 @@ public class LawsDataCenterFolderServiceImpl extends ServiceImpl<LawsDataCenterF
|
||||
@Override
|
||||
public void editById(LawsDataCenterFolder lawsDataCenterFolder) {
|
||||
saveOrUpdate(lawsDataCenterFolder);
|
||||
// 更新子表
|
||||
String id = lawsDataCenterFolder.getId();
|
||||
lawsDataCenterFolderSublistService.remove(new LambdaQueryWrapper<LawsDataCenterFolderSublist>()
|
||||
.eq(LawsDataCenterFolderSublist::getDataCenterFolderId, id));
|
||||
// 生成子表数据
|
||||
String authManageIds = lawsDataCenterFolder.getAuthManageIds();
|
||||
String authViewIds = lawsDataCenterFolder.getAuthViewIds();
|
||||
String authDownloadIds = lawsDataCenterFolder.getAuthDownloadIds();
|
||||
List<LawsDataCenterFolderSublist> lawsDataCenterFolderSublistList = new ArrayList<>();
|
||||
createChild(id, authManageIds, DataCenterCommon.AUTH_MANAGE, lawsDataCenterFolderSublistList);
|
||||
createChild(id, authViewIds, DataCenterCommon.AUTH_VIEW, lawsDataCenterFolderSublistList);
|
||||
createChild(id, authDownloadIds, DataCenterCommon.AUTH_DOWNLOAD, lawsDataCenterFolderSublistList);
|
||||
lawsDataCenterFolderSublistService.saveOrUpdateBatch(lawsDataCenterFolderSublistList);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user