|
|
@@ -1,7 +1,9 @@
|
|
|
package com.xunmei.core.edu.service.impl;
|
|
|
|
|
|
+import cn.hutool.core.map.MapUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
import com.alibaba.fastjson2.JSON;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
|
|
@@ -9,17 +11,17 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.xunmei.common.core.constant.ErrorMsgConstants;
|
|
|
import com.xunmei.common.core.constant.SecurityConstants;
|
|
|
import com.xunmei.common.core.domain.DateRange;
|
|
|
-import com.xunmei.common.core.domain.edu.domain.CoreEduTrainingPlanToExecOrg;
|
|
|
-import com.xunmei.common.core.domain.edu.domain.CoreEduTrainingPlanToRole;
|
|
|
-import com.xunmei.common.core.domain.edu.domain.CoreEduTrainingTask;
|
|
|
-import com.xunmei.common.core.domain.edu.domain.CoreEduTrainingTaskToRole;
|
|
|
+import com.xunmei.common.core.domain.edu.domain.*;
|
|
|
import com.xunmei.common.core.domain.edu.dto.CoreEduTrainingTaskPageDto;
|
|
|
import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingPlanDataVo;
|
|
|
+import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskDetailVo;
|
|
|
import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskPageVo;
|
|
|
import com.xunmei.common.core.enums.edu.EduTrainingDoStatus;
|
|
|
import com.xunmei.common.core.utils.DateUtils;
|
|
|
import com.xunmei.common.core.web.page.TableDataInfo;
|
|
|
import com.xunmei.core.edu.mapper.CoreEduTrainingTaskMapper;
|
|
|
+import com.xunmei.core.edu.mapper.CoreEduTrainingTaskToRoleMapper;
|
|
|
+import com.xunmei.core.edu.mapper.CoreEduTrainingTaskToUserMapper;
|
|
|
import com.xunmei.core.edu.service.ICoreEduTrainingTaskService;
|
|
|
import com.xunmei.core.edu.service.ICoreEduTrainingTaskToRoleService;
|
|
|
import com.xunmei.system.api.RemoteOrgService;
|
|
|
@@ -48,10 +50,31 @@ public class CoreEduTrainingTaskServiceImpl extends ServiceImpl<CoreEduTrainingT
|
|
|
private RemoteOrgService orgService;
|
|
|
@Autowired
|
|
|
private ICoreEduTrainingTaskToRoleService coreEduTrainingTaskToRoleService;
|
|
|
+ @Autowired
|
|
|
+ private CoreEduTrainingTaskToRoleMapper taskToRoleMapper;
|
|
|
+ @Autowired
|
|
|
+ private CoreEduTrainingTaskToUserMapper taskToUserMapper;
|
|
|
|
|
|
@Override
|
|
|
public TableDataInfo<CoreEduTrainingTaskPageVo> selectPage(CoreEduTrainingTaskPageDto request) {
|
|
|
- IPage<CoreEduTrainingTaskPageVo> pageData = coreEduTrainingTaskMapper.selectPageData(request.getPage(), request);
|
|
|
+ if (Boolean.TRUE.equals(request.getCheckSub())) {
|
|
|
+ SysOrg org = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectOrgById(request.getOrgId(), SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
|
|
|
+ request.setOrgPath(org.getPath());
|
|
|
+ }
|
|
|
+ IPage<CoreEduTrainingTaskPageVo> pageData = coreEduTrainingTaskMapper.selectPageData(request.getPageRequest(), request);
|
|
|
+ if (ObjectUtil.isNotEmpty(pageData.getRecords())) {
|
|
|
+ List<Long> idList = pageData.getRecords().stream().map(CoreEduTrainingTaskPageVo::getId).collect(Collectors.toList());
|
|
|
+ List<CoreEduTrainingTaskToRole> roleList = taskToRoleMapper.selectList(new LambdaQueryWrapper<CoreEduTrainingTaskToRole>()
|
|
|
+ .in(CoreEduTrainingTaskToRole::getEduTrainingTaskId, idList));
|
|
|
+ Map<Long, List<CoreEduTrainingTaskToRole>> listMap = roleList.stream().collect(Collectors.groupingBy(CoreEduTrainingTaskToRole::getEduTrainingTaskId));
|
|
|
+ for (CoreEduTrainingTaskPageVo record : pageData.getRecords()) {
|
|
|
+ List<CoreEduTrainingTaskToRole> coreEduTrainingTaskToRoles = listMap.get(record.getId());
|
|
|
+ if (ObjectUtil.isEmpty(coreEduTrainingTaskToRoles)) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ record.setTaskRoleNameList(coreEduTrainingTaskToRoles.stream().map(CoreEduTrainingTaskToRole::getRoleName).collect(Collectors.joining(",")));
|
|
|
+ }
|
|
|
+ }
|
|
|
//抓换为TableDataInfo适配前端
|
|
|
return TableDataInfo.build(pageData);
|
|
|
|
|
|
@@ -66,8 +89,11 @@ public class CoreEduTrainingTaskServiceImpl extends ServiceImpl<CoreEduTrainingT
|
|
|
* @return 教育任务
|
|
|
*/
|
|
|
@Override
|
|
|
- public CoreEduTrainingTask selectCoreEduTrainingTaskById(Long id) {
|
|
|
- return coreEduTrainingTaskMapper.selectById(id);
|
|
|
+ public CoreEduTrainingTaskDetailVo selectCoreEduTrainingTaskById(Long id) {
|
|
|
+ CoreEduTrainingTaskDetailVo detailVo = coreEduTrainingTaskMapper.selectEduTrainingTaskDetail(id);
|
|
|
+ List<CoreEduTrainingTaskToUser> userList = taskToUserMapper.selectByMap(MapUtil.of("plan_id", id));
|
|
|
+ detailVo.setTaskUserList(userList);
|
|
|
+ return detailVo;
|
|
|
}
|
|
|
|
|
|
/**
|