Browse Source

lwbs修改查询"我的"相关

recovery
ma 4 years ago
parent
commit
f3d1059d1b
  1. 2
      tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java
  2. 8
      tall/src/main/java/com/ccsens/tall/service/LwbsService.java
  3. 7
      tall/src/main/resources/mapper_dao/TaskDetailDao.xml

2
tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java

@ -70,7 +70,7 @@ public interface TaskDetailDao extends ProTaskDetailMapper {
* @param userId 当前用户的userId
* @return
*/
List<TaskVo.NormalTask> queryLwbsByProjectId(@Param("projectId")Long projectId, @Param("startTime")Long startTime, @Param("endTime")Long endTime, @Param("userId")Long userId);
List<TaskVo.NormalTask> queryLwbsByProjectId(@Param("projectId")Long projectId, @Param("startTime")Long startTime, @Param("endTime")Long endTime, @Param("userId")Long userId,@Param("roleIds") List<Long> roleIds);
/**
* 通过任务详情id查询项目下的经理角色id

8
tall/src/main/java/com/ccsens/tall/service/LwbsService.java

@ -21,6 +21,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author
@ -33,6 +34,8 @@ public class LwbsService implements ILwbsService{
private TaskDetailDao taskDetailDao;
@Resource
public SysProjectDao sysProjectDao;
@Resource
public ProMemberService proMemberService;
/**
* 查询该用户的所有项目
@ -125,8 +128,11 @@ public class LwbsService implements ILwbsService{
private TaskVo.ProTaskInfo queryLwbsByProjectId(Long projectId, Long startTime,Long endTime, Long userId){
TaskVo.ProTaskInfo proTaskInfo = new TaskVo.ProTaskInfo();
//查找当前用户在项目中的角色
List<ProRole> proRoles = proMemberService.selectRolesByUserIdAndProjectId(userId, projectId, null);
List<Long> roleIds = proRoles.stream().map(ProRole::getId).collect(Collectors.toList());
//查询当前项目下所有任务
List<TaskVo.NormalTask> normalTaskList = taskDetailDao.queryLwbsByProjectId(projectId,startTime,endTime,userId);
List<TaskVo.NormalTask> normalTaskList = taskDetailDao.queryLwbsByProjectId(projectId,startTime,endTime,userId,roleIds);
//分解为全局和普通
if(CollectionUtil.isNotEmpty(normalTaskList)) {
TaskUtil.Task task = TaskUtil.splitTask(normalTaskList, startTime, endTime, 0);

7
tall/src/main/resources/mapper_dao/TaskDetailDao.xml

@ -721,6 +721,13 @@
AND s.end_time &gt;= #{startTime}
</if>
AND d.Level = 2
AND
<if test="roleIds!=null and roleIds.size() > 0">
d.executor_role IN
<foreach collection="roleIds" item="item" separator="," open="(" close=")">
#{item}
</foreach>
</if>
order by s.begin_time
)t
LEFT JOIN

Loading…
Cancel
Save