diff --git a/web-api/src/main/java/com/jeesite/modules/app/utils/MyUtils.java b/web-api/src/main/java/com/jeesite/modules/app/utils/MyUtils.java index 13d7ca96..94a803b9 100644 --- a/web-api/src/main/java/com/jeesite/modules/app/utils/MyUtils.java +++ b/web-api/src/main/java/com/jeesite/modules/app/utils/MyUtils.java @@ -23,9 +23,9 @@ public class MyUtils { public static Map convertToTreeNode(BizFolders folder, boolean isDisabled) { Map node = new HashMap<>(); - node.put("id", folder.getFolderId()); // folderId → id - node.put("name", folder.getFolderName()); // folderName → name - node.put("children", new ArrayList<>()); // 初始化children空数组 + node.put("id", folder.getFolderId()); + node.put("name", folder.getFolderName()); + node.put("children", new ArrayList<>()); if (isDisabled) { node.put("disabled", true); } diff --git a/web-api/src/main/java/com/jeesite/modules/biz/entity/BizFolders.java b/web-api/src/main/java/com/jeesite/modules/biz/entity/BizFolders.java index b62b8d3e..f47291d6 100644 --- a/web-api/src/main/java/com/jeesite/modules/biz/entity/BizFolders.java +++ b/web-api/src/main/java/com/jeesite/modules/biz/entity/BizFolders.java @@ -2,6 +2,7 @@ package com.jeesite.modules.biz.entity; import java.io.Serializable; import java.util.Date; + import com.jeesite.common.mybatis.annotation.JoinTable; import com.jeesite.common.mybatis.annotation.JoinTable.Type; import com.fasterxml.jackson.annotation.JsonFormat; @@ -23,70 +24,71 @@ import java.io.Serial; /** * 文件夹信息Entity + * * @author gaoxq * @version 2025-12-18 */ @EqualsAndHashCode(callSuper = true) -@Table(name="biz_folders", alias="a", label="文件夹信息信息", columns={ - @Column(name="create_time", attrName="createTime", label="记录时间", isUpdate=false, isUpdateForce=true), - @Column(name="folder_id", attrName="folderId", label="文件夹标识", isPK=true), - @Column(name="folder_name", attrName="folderName", label="文件夹名称", queryType=QueryType.LIKE), - @Column(name="parent_id", attrName="parentId", label="父文件夹"), - @Column(name="user_name", attrName="userName", label="用户姓名", isQuery=false), - @Column(name="login_code", attrName="loginCode", label="用户名称"), - @Column(name="update_time", attrName="updateTime", label="更新时间", isQuery=false, isUpdateForce=true), - @Column(name="is_deleted", attrName="isDeleted", label="是否删除"), - @Column(name="description", attrName="description", label="文件夹描述", queryType=QueryType.LIKE), - }, orderBy="a.create_time DESC" +@Table(name = "biz_folders", alias = "a", label = "文件夹信息信息", columns = { + @Column(name = "create_time", attrName = "createTime", label = "记录时间", isUpdate = false, isUpdateForce = true), + @Column(name = "folder_id", attrName = "folderId", label = "文件夹标识", isPK = true), + @Column(name = "folder_name", attrName = "folderName", label = "文件夹名称", queryType = QueryType.LIKE), + @Column(name = "parent_id", attrName = "parentId", label = "父文件夹"), + @Column(name = "user_name", attrName = "userName", label = "用户姓名", isQuery = false), + @Column(name = "login_code", attrName = "loginCode", label = "用户名称"), + @Column(name = "update_time", attrName = "updateTime", label = "更新时间", isQuery = false, isUpdateForce = true), + @Column(name = "is_deleted", attrName = "isDeleted", label = "是否删除"), + @Column(name = "description", attrName = "description", label = "文件夹描述", isQuery = false), +}, orderBy = "a.create_time DESC" ) @Data public class BizFolders extends DataEntity implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - private Date createTime; // 记录时间 - private String folderId; // 文件夹标识 - private String folderName; // 文件夹名称 - private String parentId; // 父文件夹 - private String userName; // 用户姓名 - private String loginCode; // 用户名称 - private Date updateTime; // 更新时间 - private Integer isDeleted; // 是否删除 - private String description; // 文件夹描述 - @ExcelFields({ - @ExcelField(title="记录时间", attrName="createTime", align=Align.CENTER, sort=10, dataFormat="yyyy-MM-dd hh:mm"), - @ExcelField(title="文件夹标识", attrName="folderId", align=Align.CENTER, sort=20), - @ExcelField(title="文件夹名称", attrName="folderName", align=Align.CENTER, sort=30), - @ExcelField(title="父文件夹", attrName="parentId", align=Align.CENTER, sort=40), - @ExcelField(title="用户姓名", attrName="userName", align=Align.CENTER, sort=50), - @ExcelField(title="用户名称", attrName="loginCode", align=Align.CENTER, sort=60), - @ExcelField(title="更新时间", attrName="updateTime", align=Align.CENTER, sort=70, dataFormat="yyyy-MM-dd hh:mm"), - @ExcelField(title="是否删除", attrName="isDeleted", dictType="sys_yes_no", align=Align.CENTER, sort=80), - @ExcelField(title="文件夹描述", attrName="description", align=Align.CENTER, sort=90), - }) - public BizFolders() { - this(null); - } - - public BizFolders(String id){ - super(id); - } - - public Date getCreateTime_gte() { - return sqlMap.getWhere().getValue("create_time", QueryType.GTE); - } + @Serial + private static final long serialVersionUID = 1L; + private Date createTime; // 记录时间 + private String folderId; // 文件夹标识 + private String folderName; // 文件夹名称 + private String parentId; // 父文件夹 + private String userName; // 用户姓名 + private String loginCode; // 用户名称 + private Date updateTime; // 更新时间 + private Integer isDeleted; // 是否删除 + private String description; // 文件夹描述 - public void setCreateTime_gte(Date createTime) { - sqlMap.getWhere().and("create_time", QueryType.GTE, createTime); - } - - public Date getCreateTime_lte() { - return sqlMap.getWhere().getValue("create_time", QueryType.LTE); - } + @ExcelFields({ + @ExcelField(title = "记录时间", attrName = "createTime", align = Align.CENTER, sort = 10, dataFormat = "yyyy-MM-dd hh:mm"), + @ExcelField(title = "文件夹标识", attrName = "folderId", align = Align.CENTER, sort = 20), + @ExcelField(title = "文件夹名称", attrName = "folderName", align = Align.CENTER, sort = 30), + @ExcelField(title = "父文件夹", attrName = "parentId", align = Align.CENTER, sort = 40), + @ExcelField(title = "用户姓名", attrName = "userName", align = Align.CENTER, sort = 50), + @ExcelField(title = "用户名称", attrName = "loginCode", align = Align.CENTER, sort = 60), + @ExcelField(title = "更新时间", attrName = "updateTime", align = Align.CENTER, sort = 70, dataFormat = "yyyy-MM-dd hh:mm"), + @ExcelField(title = "是否删除", attrName = "isDeleted", dictType = "sys_yes_no", align = Align.CENTER, sort = 80), + @ExcelField(title = "文件夹描述", attrName = "description", align = Align.CENTER, sort = 90), + }) + public BizFolders() { + this(null); + } + + public BizFolders(String id) { + super(id); + } + + public Date getCreateTime_gte() { + return sqlMap.getWhere().getValue("create_time", QueryType.GTE); + } + + public void setCreateTime_gte(Date createTime) { + sqlMap.getWhere().and("create_time", QueryType.GTE, createTime); + } + + public Date getCreateTime_lte() { + return sqlMap.getWhere().getValue("create_time", QueryType.LTE); + } + + public void setCreateTime_lte(Date createTime) { + sqlMap.getWhere().and("create_time", QueryType.LTE, createTime); + } - public void setCreateTime_lte(Date createTime) { - sqlMap.getWhere().and("create_time", QueryType.LTE, createTime); - } - } \ No newline at end of file diff --git a/web-api/src/main/java/com/jeesite/modules/biz/web/BizFoldersController.java b/web-api/src/main/java/com/jeesite/modules/biz/web/BizFoldersController.java index 6636577a..02853592 100644 --- a/web-api/src/main/java/com/jeesite/modules/biz/web/BizFoldersController.java +++ b/web-api/src/main/java/com/jeesite/modules/biz/web/BizFoldersController.java @@ -239,6 +239,17 @@ public class BizFoldersController extends BaseController { List> thirdNodeList = new ArrayList<>(); for (BizFolders thirdFolder : thirdLevelFolders) { Map thirdNode = MyUtils.convertToTreeNode(thirdFolder, false); + BizFolders fourthQuery = new BizFolders(); + fourthQuery.setParentId(thirdFolder.getFolderId()); + fourthQuery.setIsDeleted(0); + List fourthLevelFolders = bizFoldersService.findList(fourthQuery); + List> fourthNodeList = new ArrayList<>(); + for (BizFolders fourthFolder : fourthLevelFolders) { + Map fourthNode = MyUtils.convertToTreeNode(fourthFolder, bizFolders.getDescription().equals("add") ? true : false); + fourthNode.put("children", new ArrayList<>()); + fourthNodeList.add(fourthNode); + } + thirdNode.put("children", fourthNodeList); thirdNodeList.add(thirdNode); } secondNode.put("children", thirdNodeList); diff --git a/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/folder.vue b/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/folder.vue index 1c136e1f..cfa4d50a 100644 --- a/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/folder.vue +++ b/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/folder.vue @@ -37,7 +37,7 @@ component: 'TreeSelect', componentProps: { api: bizFolderTreeData, - params: { loginCode: userinfo.value.loginCode }, + params: { loginCode: userinfo.value.loginCode , description: 'add' }, allowClear: true, }, required: true, diff --git a/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/form.vue b/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/form.vue index 836823b6..fffc5070 100644 --- a/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/form.vue +++ b/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/form.vue @@ -39,7 +39,7 @@ component: 'TreeSelect', componentProps: { api: bizFolderTreeData, - params: { loginCode: userinfo.value.loginCode }, + params: { loginCode: userinfo.value.loginCode, description: 'mv' }, allowClear: true, }, required: true, diff --git a/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/upload.vue b/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/upload.vue index e2c6bc33..835e5136 100644 --- a/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/upload.vue +++ b/web-vue/packages/core/layouts/views/desktop/workbench/components/myfiles/upload.vue @@ -37,6 +37,7 @@ component: 'Select', componentProps: { api: bizFoldersListAll, + params: {}, fieldNames: { label: 'folderName', value: 'folderId' }, immediate: true, allowClear: true,