代码提交
This commit is contained in:
parent
ec4d0fadf8
commit
d0f8fc12f2
|
|
@ -1,10 +1,42 @@
|
||||||
package com.bonus.web.controller.archive;
|
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;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author:liang.chao
|
* @Author:liang.chao
|
||||||
* @Date:2025/9/18 - 16:06
|
* @Date:2025/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<>());
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import com.bonus.common.annotation.RequiresPermissions;
|
||||||
import com.bonus.common.annotation.SysLog;
|
import com.bonus.common.annotation.SysLog;
|
||||||
import com.bonus.common.core.controller.BaseController;
|
import com.bonus.common.core.controller.BaseController;
|
||||||
import com.bonus.common.core.domain.AjaxResult;
|
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.core.page.TableDataInfo;
|
||||||
import com.bonus.common.enums.OperaType;
|
import com.bonus.common.enums.OperaType;
|
||||||
import com.bonus.web.domain.SelectDto;
|
import com.bonus.web.domain.SelectDto;
|
||||||
|
|
@ -61,7 +62,7 @@ public class TransferApplyController extends BaseController {
|
||||||
@SysLog(title = "获取部门下拉", module = "数据/档案移交->档案移交申请", businessType = OperaType.QUERY, details = "获取部门下拉", logType = 1)
|
@SysLog(title = "获取部门下拉", module = "数据/档案移交->档案移交申请", businessType = OperaType.QUERY, details = "获取部门下拉", logType = 1)
|
||||||
public AjaxResult getDeptSelect(TransferApplyDto dto) {
|
public AjaxResult getDeptSelect(TransferApplyDto dto) {
|
||||||
try {
|
try {
|
||||||
List<SelectDto> list = transferApplyService.getDeptSelect(dto);
|
List<SysDept> list = transferApplyService.getDeptSelect(dto);
|
||||||
return AjaxResult.success(list);
|
return AjaxResult.success(list);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error(e.toString(), e);
|
log.error(e.toString(), e);
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
package com.bonus.web.controller.tool;
|
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.ArchivalCatalogueDto;
|
||||||
import com.bonus.web.domain.DaKyProFilesContentsDto;
|
import com.bonus.web.domain.DaKyProFilesContentsDto;
|
||||||
|
|
||||||
|
|
@ -80,4 +81,37 @@ public class TreeBuilder {
|
||||||
return roots;
|
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;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package com.bonus.web.mapper;
|
package com.bonus.web.mapper;
|
||||||
|
|
||||||
import com.bonus.common.core.domain.AjaxResult;
|
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.SelectDto;
|
||||||
import com.bonus.web.domain.TransferApplyDto;
|
import com.bonus.web.domain.TransferApplyDto;
|
||||||
import com.bonus.web.domain.TransferFileDto;
|
import com.bonus.web.domain.TransferFileDto;
|
||||||
|
|
@ -33,7 +34,7 @@ public interface TransferApplyMapper {
|
||||||
|
|
||||||
Integer addTransferAuditRecord(TransferApplyDto dto);
|
Integer addTransferAuditRecord(TransferApplyDto dto);
|
||||||
|
|
||||||
List<SelectDto> getDeptSelect(TransferApplyDto dto);
|
List<SysDept> getDeptSelect(TransferApplyDto dto);
|
||||||
|
|
||||||
List<SelectDto> getProSelect(TransferApplyDto dto);
|
List<SelectDto> getProSelect(TransferApplyDto dto);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package com.bonus.web.service;
|
package com.bonus.web.service;
|
||||||
|
|
||||||
import com.bonus.common.core.domain.AjaxResult;
|
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.SelectDto;
|
||||||
import com.bonus.web.domain.TransferApplyDto;
|
import com.bonus.web.domain.TransferApplyDto;
|
||||||
|
|
||||||
|
|
@ -23,7 +24,7 @@ public interface TransferApplyService {
|
||||||
|
|
||||||
AjaxResult audit(TransferApplyDto dto);
|
AjaxResult audit(TransferApplyDto dto);
|
||||||
|
|
||||||
List<SelectDto> getDeptSelect(TransferApplyDto dto);
|
List<SysDept> getDeptSelect(TransferApplyDto dto);
|
||||||
|
|
||||||
List<SelectDto> getProSelect(TransferApplyDto dto);
|
List<SelectDto> getProSelect(TransferApplyDto dto);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,9 @@
|
||||||
package com.bonus.web.service.impl;
|
package com.bonus.web.service.impl;
|
||||||
|
|
||||||
import com.bonus.common.core.domain.AjaxResult;
|
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.SelectDto;
|
||||||
import com.bonus.web.domain.TransferApplyDto;
|
import com.bonus.web.domain.TransferApplyDto;
|
||||||
import com.bonus.web.domain.TransferFileDto;
|
import com.bonus.web.domain.TransferFileDto;
|
||||||
|
|
@ -98,8 +101,11 @@ public class TransferApplyServiceImpl implements TransferApplyService {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<SelectDto> getDeptSelect(TransferApplyDto dto) {
|
public List<SysDept> getDeptSelect(TransferApplyDto dto) {
|
||||||
return transferApplyMapper.getDeptSelect(dto);
|
List<SysDept> deptSelect = transferApplyMapper.getDeptSelect(dto);
|
||||||
|
// 构建树
|
||||||
|
List<SysDept> tree = TreeBuilder.buildDeptTree(deptSelect);
|
||||||
|
return tree;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -323,25 +323,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
FROM da_ky_transfer_apply
|
FROM da_ky_transfer_apply
|
||||||
where del_flag = '1' and id = #{id}
|
where del_flag = '1' and id = #{id}
|
||||||
</select>
|
</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="getProSelect" resultType="com.bonus.web.domain.SelectDto">
|
||||||
SELECT
|
SELECT
|
||||||
id,
|
id,
|
||||||
|
|
@ -351,5 +332,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
WHERE
|
WHERE
|
||||||
del_flag = '1' and file_status = '1'
|
del_flag = '1' and file_status = '1'
|
||||||
</select>
|
</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>
|
</mapper>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue