fix 选择器
This commit is contained in:
@@ -32,11 +32,11 @@ public interface LearningTaskService {
|
||||
* @description 获取学习任务列表分页
|
||||
* @param filter 过滤条件
|
||||
* @param pageParam 分页参数
|
||||
* @return ResultDomain<TbLearningTask> 任务列表
|
||||
* @return ResultDomain<TaskVO> 任务列表(包含统计信息)
|
||||
* @author yslg
|
||||
* @since 2025-10-15
|
||||
*/
|
||||
ResultDomain<TbLearningTask> getTaskPage(TbLearningTask filter, PageParam pageParam);
|
||||
ResultDomain<TaskVO> getTaskPage(TbLearningTask filter, PageParam pageParam);
|
||||
|
||||
/**
|
||||
* @description 根据ID获取任务详情
|
||||
|
||||
@@ -98,6 +98,12 @@ public class PermissionVO extends BaseDTO{
|
||||
*/
|
||||
private String menuID;
|
||||
|
||||
/**
|
||||
* @description 父菜单ID(用于权限绑定菜单查询)
|
||||
* @author yslg
|
||||
* @since 2025-10-30
|
||||
*/
|
||||
private String parentID;
|
||||
/**
|
||||
* @description 菜单名称(用于权限绑定菜单查询)
|
||||
* @author yslg
|
||||
@@ -304,6 +310,14 @@ public class PermissionVO extends BaseDTO{
|
||||
this.menuID = menuID;
|
||||
}
|
||||
|
||||
public String getParentID() {
|
||||
return parentID;
|
||||
}
|
||||
|
||||
public void setParentID(String parentID) {
|
||||
this.parentID = parentID;
|
||||
}
|
||||
|
||||
public String getMenuName() {
|
||||
return menuName;
|
||||
}
|
||||
|
||||
@@ -49,7 +49,7 @@ public class LearningTaskController {
|
||||
* 获取任务列表分页
|
||||
*/
|
||||
@PostMapping("/page")
|
||||
public ResultDomain<TbLearningTask> getTaskPage(@RequestBody PageRequest<TbLearningTask> pageRequest) {
|
||||
public ResultDomain<TaskVO> getTaskPage(@RequestBody PageRequest<TbLearningTask> pageRequest) {
|
||||
TbLearningTask filter = pageRequest.getFilter();
|
||||
PageParam pageParam = pageRequest.getPageParam();
|
||||
return learningTaskService.getTaskPage(filter, pageParam);
|
||||
|
||||
@@ -109,16 +109,52 @@ public class SCLearningTaskServiceImpl implements LearningTaskService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultDomain<TbLearningTask> getTaskPage(TbLearningTask filter, PageParam pageParam) {
|
||||
ResultDomain<TbLearningTask> resultDomain = new ResultDomain<>();
|
||||
public ResultDomain<TaskVO> getTaskPage(TbLearningTask filter, PageParam pageParam) {
|
||||
ResultDomain<TaskVO> resultDomain = new ResultDomain<>();
|
||||
// 获取当前用户的部门角色
|
||||
List<UserDeptRoleVO> userDeptRoles = LoginUtil.getCurrentDeptRole();
|
||||
List<TbLearningTask> taskList = learningTaskMapper.selectLearningTasksPage(filter, pageParam, userDeptRoles);
|
||||
long total = learningTaskMapper.countLearningTasks(filter, userDeptRoles);
|
||||
pageParam.setTotalElements(total);
|
||||
pageParam.setTotalPages((int) Math.ceil((double) total / pageParam.getPageSize()));
|
||||
PageDomain<TbLearningTask> pageDomain = new PageDomain<>();
|
||||
pageDomain.setDataList(taskList);
|
||||
|
||||
// 将TbLearningTask转换为TaskVO,并添加统计信息
|
||||
List<TaskVO> taskVOList = new ArrayList<>();
|
||||
for (TbLearningTask task : taskList) {
|
||||
TaskVO taskVO = new TaskVO();
|
||||
taskVO.setLearningTask(task);
|
||||
|
||||
String taskID = task.getTaskID();
|
||||
// 获取任务的用户列表并统计各状态人数
|
||||
List<TbTaskUser> taskUsers = taskUserMapper.selectByTaskId(taskID);
|
||||
int totalUserNum = taskUsers.size();
|
||||
int completedUserNum = 0;
|
||||
int learningUserNum = 0;
|
||||
int notStartUserNum = 0;
|
||||
|
||||
for (TbTaskUser taskUser : taskUsers) {
|
||||
Integer status = taskUser.getStatus();
|
||||
if (status != null) {
|
||||
if (status == 2) {
|
||||
completedUserNum++;
|
||||
} else if (status == 1) {
|
||||
learningUserNum++;
|
||||
} else if (status == 0) {
|
||||
notStartUserNum++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
taskVO.setTotalTaskNum(totalUserNum);
|
||||
taskVO.setCompletedTaskNum(completedUserNum);
|
||||
taskVO.setLearningTaskNum(learningUserNum);
|
||||
taskVO.setNotStartTaskNum(notStartUserNum);
|
||||
|
||||
taskVOList.add(taskVO);
|
||||
}
|
||||
|
||||
PageDomain<TaskVO> pageDomain = new PageDomain<>();
|
||||
pageDomain.setDataList(taskVOList);
|
||||
pageDomain.setPageParam(pageParam);
|
||||
resultDomain.success("获取任务列表分页成功", pageDomain);
|
||||
return resultDomain;
|
||||
|
||||
@@ -55,6 +55,7 @@
|
||||
<id column="id" property="id" jdbcType="VARCHAR"/>
|
||||
<result column="menu_id" property="menuID" jdbcType="VARCHAR"/>
|
||||
<result column="menu_name" property="menuName" jdbcType="VARCHAR"/>
|
||||
<result column="parent_id" property="parentID" jdbcType="VARCHAR"/>
|
||||
<result column="menu_url" property="menuUrl" jdbcType="VARCHAR"/>
|
||||
</resultMap>
|
||||
|
||||
@@ -301,6 +302,7 @@
|
||||
tsm.id,
|
||||
tsm.menu_id,
|
||||
tsm.name AS menu_name,
|
||||
tsm.parent_id AS parent_id,
|
||||
tsm.url AS menu_url
|
||||
FROM tb_sys_menu tsm
|
||||
INNER JOIN tb_sys_menu_permission tsmp ON tsmp.menu_id = tsm.menu_id
|
||||
|
||||
Reference in New Issue
Block a user