This commit is contained in:
mashuai 2025-04-15 11:05:24 +08:00
parent d5fde80166
commit 8adbe9febc
1 changed files with 129 additions and 146 deletions

View File

@ -771,157 +771,140 @@ public class TmTaskServiceImpl implements TmTaskService {
List<TmTask> tmTaskList = tmTaskMapper.getAuditManageListByLeaseTmTask(record); List<TmTask> tmTaskList = tmTaskMapper.getAuditManageListByLeaseTmTask(record);
for (TmTask tmTask : tmTaskList) { for (TmTask tmTask : tmTaskList) {
int count = 0; if (tmTask == null) {
if (tmTask != null) { continue;
// 去查询任务分单表 }
List<LeaseApplyInfo> collect = tmTaskMapper.getAuditManageListByLeaseInfo(tmTask); List<LeaseApplyInfo> collect = tmTaskMapper.getAuditManageListByLeaseInfo(tmTask);
if (collect.size() > 0) { if (collect.isEmpty()) {
continue;
}
int deptId1 = tmTaskMapper.getDeptId(collect.get(0).getCreateBy()); int deptId1 = tmTaskMapper.getDeptId(collect.get(0).getCreateBy());
handleTaskByRoleAndDept(tmTask, collect, roles, deptId, deptId1);
}
return tmTaskList.stream().filter(t -> t.getLeaseApplyInfoList() != null).collect(Collectors.toList());
}
/**
* 处理角色和部门逻辑
* @param tmTask
* @param collect
* @param roles
* @param deptId
* @param deptId1
*/
private void handleTaskByRoleAndDept(TmTask tmTask, List<LeaseApplyInfo> collect, Set<String> roles, Long deptId, int deptId1) {
List<LeaseApplyInfo> filteredList;
if (roles.contains("admin") || deptId == 100) { if (roles.contains("admin") || deptId == 100) {
// 对领料任务集合查询具体详情 filteredList = collect;
for (LeaseApplyInfo leaseApplyInfo : collect) { } else if (deptId == 101) {
if (leaseApplyInfo != null) { filteredList = handleDept101(collect, deptId1);
// 去查询领料任务详情表 } else if (deptId == 102) {
List<LeaseApplyDetails> leaseApplyDetails = tmTaskMapper.getLeaseApplyManageDetails(leaseApplyInfo); filteredList = handleDept102(collect, deptId1);
if (leaseApplyDetails.size() > 0) { } else if (deptId == deptId1) {
for (LeaseApplyDetails leaseApplyDetail : leaseApplyDetails) { filteredList = collect;
if (leaseApplyDetail != null && leaseApplyDetail.getPreNum() != null) { } else if (roles.contains("sgb")) {
// 统计预领数量 filteredList = handleRoleSgb(collect, deptId1);
count += leaseApplyDetail.getPreNum(); } else {
return;
} }
processLeaseApplyInfoList(tmTask, filteredList, collect, deptId1);
} }
// 塞入领料任务详情的集合中
leaseApplyInfo.setLeaseApplyDetails(leaseApplyDetails); /**
// 存入领料任务实体集合 * 处理部门101
tmTask.setLeaseApplyInfoList(collect); * @param collect
tmTask.setDeptId(Long.parseLong(String.valueOf(deptId1))); * @param deptId1
tmTask.setRemark(collect.get(0).getRemark()); * @return
} */
} private List<LeaseApplyInfo> handleDept101(List<LeaseApplyInfo> collect, int deptId1) {
} List<LeaseApplyInfo> auditListByLeaseInfo = collect.stream()
} else if (deptId == 101) { //机具经理书记副经理查看数据 .filter(t -> t.getCompanyId() != null)
List<LeaseApplyInfo> auditListByLeaseInfo = collect.stream().filter(t -> t.getCompanyId() != null).filter(t -> t.getCompanyId() == 101).collect(Collectors.toList()); .filter(t -> t.getCompanyId() == 101)
.collect(Collectors.toList());
if (deptId1 == 101) { if (deptId1 == 101) {
List<LeaseApplyInfo> applyInfoList = collect.stream().filter(t -> t.getCompanyId() != null).filter(t -> t.getCompanyId() == 102).collect(Collectors.toList()); List<LeaseApplyInfo> applyInfoList = collect.stream()
.filter(t -> t.getCompanyId() != null)
.filter(t -> t.getCompanyId() == 102)
.collect(Collectors.toList());
auditListByLeaseInfo.addAll(applyInfoList); auditListByLeaseInfo.addAll(applyInfoList);
} }
return auditListByLeaseInfo;
}
if (auditListByLeaseInfo != null && !auditListByLeaseInfo.isEmpty()) { /**
// 对领料任务集合查询具体详情 * 处理部门102
for (LeaseApplyInfo leaseApplyInfo : auditListByLeaseInfo) { * @param collect
if (leaseApplyInfo != null) { * @param deptId1
// 去查询领料任务详情表 * @return
List<LeaseApplyDetails> leaseApplyDetails = tmTaskMapper.getLeaseApplyManageDetails(leaseApplyInfo); */
if (leaseApplyDetails.size() > 0) { private List<LeaseApplyInfo> handleDept102(List<LeaseApplyInfo> collect, int deptId1) {
for (LeaseApplyDetails leaseApplyDetail : leaseApplyDetails) { List<LeaseApplyInfo> auditListByLeaseInfo = collect.stream()
if (leaseApplyDetail != null && leaseApplyDetail.getPreNum() != null) { .filter(t -> t.getCompanyId() != null)
// 统计预领数量 .filter(t -> t.getCompanyId() == 102)
count += leaseApplyDetail.getPreNum(); .collect(Collectors.toList());
}
}
// 塞入领料任务详情的集合中
leaseApplyInfo.setLeaseApplyDetails(leaseApplyDetails);
// 存入领料任务实体集合
tmTask.setLeaseApplyInfoList(auditListByLeaseInfo);
tmTask.setDeptId(Long.parseLong(String.valueOf(deptId1)));
tmTask.setRemark(collect.get(0).getRemark());
}
}
}
}
} else if (deptId == 102) { // 调试公司可以看到的数据权限
List<LeaseApplyInfo> auditListByLeaseInfo = collect.stream().filter(t -> t.getCompanyId() != null).filter(t -> t.getCompanyId() == 102).collect(Collectors.toList());
if (deptId1 == 102) { if (deptId1 == 102) {
List<LeaseApplyInfo> list2 = collect.stream().filter(t -> t.getCompanyId() != null).filter(t -> t.getCompanyId() == 101).collect(Collectors.toList()); List<LeaseApplyInfo> list2 = collect.stream()
.filter(t -> t.getCompanyId() != null)
.filter(t -> t.getCompanyId() == 101)
.collect(Collectors.toList());
auditListByLeaseInfo.addAll(list2); auditListByLeaseInfo.addAll(list2);
} }
return auditListByLeaseInfo;
}
if (auditListByLeaseInfo != null && !auditListByLeaseInfo.isEmpty()) { /**
// 对领料任务集合查询具体详情 * 处理角色为sgb
for (LeaseApplyInfo leaseApplyInfo : auditListByLeaseInfo) { * @param collect
if (leaseApplyInfo != null) { * @param deptId1
// 去查询领料任务详情表 * @return
List<LeaseApplyDetails> leaseApplyDetails = tmTaskMapper.getLeaseApplyManageDetails(leaseApplyInfo); */
if (leaseApplyDetails.size() > 0) { private List<LeaseApplyInfo> handleRoleSgb(List<LeaseApplyInfo> collect, int deptId1) {
for (LeaseApplyDetails leaseApplyDetail : leaseApplyDetails) { List<LeaseApplyInfo> auditListByLeaseInfo = collect.stream()
if (leaseApplyDetail != null && leaseApplyDetail.getPreNum() != null) { .filter(t -> t.getCompanyId() != null)
// 统计预领数量 .filter(t -> t.getCompanyId() == 101)
count += leaseApplyDetail.getPreNum(); .collect(Collectors.toList());
}
}
// 塞入领料任务详情的集合中
leaseApplyInfo.setLeaseApplyDetails(leaseApplyDetails);
// 存入领料任务实体集合
tmTask.setLeaseApplyInfoList(auditListByLeaseInfo);
tmTask.setDeptId(Long.parseLong(String.valueOf(deptId1)));
tmTask.setRemark(collect.get(0).getRemark());
}
}
}
}
} else if (deptId == deptId1) { //其他各分公司可以看到的自己部门的数据
// 对领料任务集合查询具体详情
for (LeaseApplyInfo leaseApplyInfo : collect) {
if (leaseApplyInfo != null) {
// 去查询领料任务详情表
List<LeaseApplyDetails> leaseApplyDetails = tmTaskMapper.getLeaseApplyManageDetails(leaseApplyInfo);
if (leaseApplyDetails.size() > 0) {
for (LeaseApplyDetails leaseApplyDetail : leaseApplyDetails) {
if (leaseApplyDetail != null && leaseApplyDetail.getPreNum() != null) {
// 统计预领数量
count += leaseApplyDetail.getPreNum();
}
}
// 塞入领料任务详情的集合中
leaseApplyInfo.setLeaseApplyDetails(leaseApplyDetails);
// 存入领料任务实体集合
tmTask.setLeaseApplyInfoList(collect);
tmTask.setDeptId(Long.parseLong(String.valueOf(deptId1)));
tmTask.setRemark(collect.get(0).getRemark());
}
}
}
} else if (roles.contains("sgb")) {
// 对领料任务集合查询具体详情
List<LeaseApplyInfo> auditListByLeaseInfo = collect.stream().filter(t -> t.getCompanyId() != null).filter(t -> t.getCompanyId() == 101).collect(Collectors.toList());
if (deptId1 == 210) { if (deptId1 == 210) {
List<LeaseApplyInfo> list1 = collect.stream().filter(t -> t.getCompanyId() != null).filter(t -> t.getCompanyId() == 102).collect(Collectors.toList()); List<LeaseApplyInfo> list1 = collect.stream()
.filter(t -> t.getCompanyId() != null)
.filter(t -> t.getCompanyId() == 102)
.collect(Collectors.toList());
auditListByLeaseInfo.addAll(list1); auditListByLeaseInfo.addAll(list1);
} }
if (auditListByLeaseInfo != null && !auditListByLeaseInfo.isEmpty()) { return auditListByLeaseInfo;
// 对领料任务集合查询具体详情 }
for (LeaseApplyInfo leaseApplyInfo : auditListByLeaseInfo) {
if (leaseApplyInfo != null) { /**
// 去查询领料任务详情表 * 处理部门101102sgb角色的逻辑
* @param tmTask
* @param filteredList
* @param collect
* @param deptId1
*/
private void processLeaseApplyInfoList(TmTask tmTask, List<LeaseApplyInfo> filteredList, List<LeaseApplyInfo> collect, int deptId1) {
if (filteredList.isEmpty()) {
return;
}
int count = 0;
for (LeaseApplyInfo leaseApplyInfo : filteredList) {
if (leaseApplyInfo == null) {
continue;
}
List<LeaseApplyDetails> leaseApplyDetails = tmTaskMapper.getLeaseApplyManageDetails(leaseApplyInfo); List<LeaseApplyDetails> leaseApplyDetails = tmTaskMapper.getLeaseApplyManageDetails(leaseApplyInfo);
if (leaseApplyDetails.size() > 0) { if (leaseApplyDetails.isEmpty()) {
continue;
}
for (LeaseApplyDetails leaseApplyDetail : leaseApplyDetails) { for (LeaseApplyDetails leaseApplyDetail : leaseApplyDetails) {
if (leaseApplyDetail != null && leaseApplyDetail.getPreNum() != null) { if (leaseApplyDetail != null && leaseApplyDetail.getPreNum() != null) {
// 统计预领数量
count += leaseApplyDetail.getPreNum(); count += leaseApplyDetail.getPreNum();
} }
} }
// 塞入领料任务详情的集合中
leaseApplyInfo.setLeaseApplyDetails(leaseApplyDetails); leaseApplyInfo.setLeaseApplyDetails(leaseApplyDetails);
// 存入领料任务实体集合 }
tmTask.setLeaseApplyInfoList(auditListByLeaseInfo); tmTask.setLeaseApplyInfoList(filteredList);
tmTask.setDeptId(Long.parseLong(String.valueOf(deptId1))); tmTask.setDeptId(Long.parseLong(String.valueOf(deptId1)));
tmTask.setRemark(collect.get(0).getRemark()); tmTask.setRemark(collect.get(0).getRemark());
}
}
}
}
}
}
}
tmTask.setPreCountNum(count); tmTask.setPreCountNum(count);
} }
List<TmTask> tmTasks = tmTaskList.stream().filter(t -> t.getLeaseApplyInfoList() != null).collect(Collectors.toList());
return tmTasks;
}
/** /**
* 获取审核列表 - App端 * 获取审核列表 - App端
*/ */