代码提交

This commit is contained in:
liang.chao 2025-09-18 17:12:08 +08:00
parent ec4d0fadf8
commit d0f8fc12f2
7 changed files with 106 additions and 25 deletions

View File

@ -1,10 +1,42 @@
package com.bonus.web.controller.archive;
import com.bonus.common.annotation.RequiresPermissions;
import com.bonus.common.annotation.SysLog;
import com.bonus.common.core.controller.BaseController;
import com.bonus.common.core.page.TableDataInfo;
import com.bonus.common.enums.OperaType;
import com.bonus.web.domain.TransferApplyDto;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.List;
/**
* @Authorliang.chao
* @Date2025/9/18 - 16:06
*/
public class FileTransferRecordController {
@RestController
@RequestMapping("/transferRecord")
@Slf4j
public class FileTransferRecordController extends BaseController {
// @ApiOperation(value = "档案移交申请列表")
// @GetMapping("getTransferRecordList")
// @SysLog(title = "档案移交申请列表", module = "数据/档案移交->档案移交申请", businessType = OperaType.QUERY, details = "档案移交申请列表", logType = 1)
// @RequiresPermissions("transfer:record:list")
// public TableDataInfo getTransferRecordList(TransferApplyDto dto) {
// try {
// startPage();
// List<TransferApplyDto> list = transferApplyService.list(dto);
// return getDataTable(list);
// } catch (Exception e) {
// log.error(e.toString(), e);
// return getDataTable(new ArrayList<>());
// }
// }
}

View File

@ -4,6 +4,7 @@ import com.bonus.common.annotation.RequiresPermissions;
import com.bonus.common.annotation.SysLog;
import com.bonus.common.core.controller.BaseController;
import com.bonus.common.core.domain.AjaxResult;
import com.bonus.common.core.domain.entity.SysDept;
import com.bonus.common.core.page.TableDataInfo;
import com.bonus.common.enums.OperaType;
import com.bonus.web.domain.SelectDto;
@ -61,7 +62,7 @@ public class TransferApplyController extends BaseController {
@SysLog(title = "获取部门下拉", module = "数据/档案移交->档案移交申请", businessType = OperaType.QUERY, details = "获取部门下拉", logType = 1)
public AjaxResult getDeptSelect(TransferApplyDto dto) {
try {
List<SelectDto> list = transferApplyService.getDeptSelect(dto);
List<SysDept> list = transferApplyService.getDeptSelect(dto);
return AjaxResult.success(list);
} catch (Exception e) {
log.error(e.toString(), e);

View File

@ -1,5 +1,6 @@
package com.bonus.web.controller.tool;
import com.bonus.common.core.domain.entity.SysDept;
import com.bonus.web.domain.ArchivalCatalogueDto;
import com.bonus.web.domain.DaKyProFilesContentsDto;
@ -80,4 +81,37 @@ public class TreeBuilder {
return roots;
}
public static List<SysDept> buildDeptTree(List<SysDept> list) {
// 过滤已删除的数据del_flag = '0' 表示已删除
List<SysDept> validList = list.stream()
.filter(item -> "0".equals(item.getDelFlag()))
.filter(item -> "0".equals(item.getStatus()))
.collect(Collectors.toList());
// 使用 Map 提升查找效率
Map<Long, SysDept> map = new HashMap<>();
List<SysDept> roots = new ArrayList<>();
// 第一步将所有节点放入 map
for (SysDept item : validList) {
map.put(item.getDeptId(), item);
}
// 第二步构建父子关系
for (SysDept item : validList) {
Long parentId = item.getParentId();
// 如果 parent_id null则为根节点
if (parentId == null) {
roots.add(item);
} else {
SysDept parent = map.get(parentId);
if (parent != null) {
parent.getChildren().add(item);
}
}
}
return roots;
}
}

View File

@ -1,6 +1,7 @@
package com.bonus.web.mapper;
import com.bonus.common.core.domain.AjaxResult;
import com.bonus.common.core.domain.entity.SysDept;
import com.bonus.web.domain.SelectDto;
import com.bonus.web.domain.TransferApplyDto;
import com.bonus.web.domain.TransferFileDto;
@ -33,7 +34,7 @@ public interface TransferApplyMapper {
Integer addTransferAuditRecord(TransferApplyDto dto);
List<SelectDto> getDeptSelect(TransferApplyDto dto);
List<SysDept> getDeptSelect(TransferApplyDto dto);
List<SelectDto> getProSelect(TransferApplyDto dto);
}

View File

@ -1,6 +1,7 @@
package com.bonus.web.service;
import com.bonus.common.core.domain.AjaxResult;
import com.bonus.common.core.domain.entity.SysDept;
import com.bonus.web.domain.SelectDto;
import com.bonus.web.domain.TransferApplyDto;
@ -23,7 +24,7 @@ public interface TransferApplyService {
AjaxResult audit(TransferApplyDto dto);
List<SelectDto> getDeptSelect(TransferApplyDto dto);
List<SysDept> getDeptSelect(TransferApplyDto dto);
List<SelectDto> getProSelect(TransferApplyDto dto);
}

View File

@ -1,6 +1,9 @@
package com.bonus.web.service.impl;
import com.bonus.common.core.domain.AjaxResult;
import com.bonus.common.core.domain.entity.SysDept;
import com.bonus.web.controller.tool.TreeBuilder;
import com.bonus.web.domain.ArchivalCatalogueDto;
import com.bonus.web.domain.SelectDto;
import com.bonus.web.domain.TransferApplyDto;
import com.bonus.web.domain.TransferFileDto;
@ -98,8 +101,11 @@ public class TransferApplyServiceImpl implements TransferApplyService {
}
@Override
public List<SelectDto> getDeptSelect(TransferApplyDto dto) {
return transferApplyMapper.getDeptSelect(dto);
public List<SysDept> getDeptSelect(TransferApplyDto dto) {
List<SysDept> deptSelect = transferApplyMapper.getDeptSelect(dto);
// 构建树
List<SysDept> tree = TreeBuilder.buildDeptTree(deptSelect);
return tree;
}
@Override

View File

@ -323,25 +323,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
FROM da_ky_transfer_apply
where del_flag = '1' and id = #{id}
</select>
<select id="getTransferFile" resultType="com.bonus.web.domain.TransferFileDto">
SELECT
dkp.pro_name AS proName,
dkp.single_pro_name AS singleProName,
dktf.file_name AS fileName
FROM da_ky_transfer_file dktf
left join da_ky_project dkp on dkp.id = dktf.pro_id
where dktf.transfer_apply_id = #{id}
</select>
<select id="getDeptSelect" resultType="com.bonus.web.domain.SelectDto">
SELECT
dept_id AS id,
dept_name AS name
FROM
da_ky_sys_dept
WHERE
del_flag = '0'
AND LENGTH(ancestors) - LENGTH(REPLACE(ancestors, ',', '')) + 1 = 3
</select>
<select id="getProSelect" resultType="com.bonus.web.domain.SelectDto">
SELECT
id,
@ -351,5 +332,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
WHERE
del_flag = '1' and file_status = '1'
</select>
<select id="getTransferFile" resultType="com.bonus.web.domain.TransferFileDto">
SELECT
dkp.pro_name AS proName,
dkp.single_pro_name AS singleProName,
dktf.file_name AS fileName
FROM da_ky_transfer_file dktf
left join da_ky_project dkp on dkp.id = dktf.pro_id
where dktf.transfer_apply_id = #{id}
</select>
<select id="getDeptSelect" resultType="com.bonus.common.core.domain.entity.SysDept">
SELECT
dept_id AS deptId,
parent_id AS parentId,
ancestors,
dept_name AS deptName,
order_num AS orderNum,
leader,
phone,
email,
status
FROM
da_ky_sys_dept
WHERE
del_flag = '0' and status = '0'
</select>
</mapper>