Browse Source

查询项目下的交付物记录

tall3
ma 4 years ago
parent
commit
302c14c61f
  1. 2
      common/src/main/java/com/ccsens/common/bean/vo/CDeliverVo.java
  2. 2
      common/src/main/java/com/ccsens/common/persist/dao/ProDeliverDao.java
  3. 8
      common/src/main/java/com/ccsens/common/persist/dao/ProRoleTaskDao.java
  4. 28
      common/src/main/java/com/ccsens/common/service/DeliverService.java
  5. 33
      common/src/main/resources/mapper_dao/ProDeliverDao.xml
  6. 14
      common/src/main/resources/mapper_dao/ProRoleTaskDao.xml

2
common/src/main/java/com/ccsens/common/bean/vo/CDeliverVo.java

@ -40,7 +40,7 @@ public class CDeliverVo {
@ApiModelProperty("上传时间") @ApiModelProperty("上传时间")
private Long time; private Long time;
@ApiModelProperty("文本内容") @ApiModelProperty("文本内容")
private Long content; private String content;
@ApiModelProperty("检查人列表") @ApiModelProperty("检查人列表")
private List<CheckerInfo> checkerList; private List<CheckerInfo> checkerList;
} }

2
common/src/main/java/com/ccsens/common/persist/dao/ProDeliverDao.java

@ -22,5 +22,5 @@ public interface ProDeliverDao extends ProDeliverMapper {
* @param params 项目id * @param params 项目id
* @return 所有项目及交付物 * @return 所有项目及交付物
*/ */
CDeliverVo.DeliverOfProject queryDeliverOfProject(CDeliverDto.QueryDeliverOfProject params); List<CDeliverVo.DeliverOfTask> queryDeliverOfProject(CDeliverDto.QueryDeliverOfProject params);
} }

8
common/src/main/java/com/ccsens/common/persist/dao/ProRoleTaskDao.java

@ -25,4 +25,12 @@ public interface ProRoleTaskDao extends ProRoleTaskMapper {
* @param newRoleTaskList 角色任务关系列表 * @param newRoleTaskList 角色任务关系列表
*/ */
void insertAllRoleTask(@Param("roleTaskList") List<ProRoleTask> newRoleTaskList); void insertAllRoleTask(@Param("roleTaskList") List<ProRoleTask> newRoleTaskList);
/**
* 查询我负责的任务
* @param taskDetailId 任务详情id
* @param userOfRoles 角色id列表
* @return 角色任务id
*/
List<Long> isMyTask(@Param("taskDetailId") Long taskDetailId,@Param("roleIdList") List<Long> userOfRoles);
} }

28
common/src/main/java/com/ccsens/common/service/DeliverService.java

@ -6,6 +6,7 @@ import cn.hutool.core.util.ObjectUtil;
import com.ccsens.common.bean.dto.CDeliverDto; import com.ccsens.common.bean.dto.CDeliverDto;
import com.ccsens.common.bean.po.ProDeliver; import com.ccsens.common.bean.po.ProDeliver;
import com.ccsens.common.bean.po.ProDeliverChecker; import com.ccsens.common.bean.po.ProDeliverChecker;
import com.ccsens.common.bean.po.ProRoleTask;
import com.ccsens.common.bean.po.ProTaskSub; import com.ccsens.common.bean.po.ProTaskSub;
import com.ccsens.common.bean.vo.CDeliverVo; import com.ccsens.common.bean.vo.CDeliverVo;
import com.ccsens.common.bean.vo.CProjectVo; import com.ccsens.common.bean.vo.CProjectVo;
@ -40,6 +41,12 @@ public class DeliverService implements IDeliverService{
@Resource @Resource
private ProDeliverCheckerDao deliverCheckerDao; private ProDeliverCheckerDao deliverCheckerDao;
@Resource @Resource
private ProRoleTaskDao roleTaskDao;
@Resource
private ProRoleDao roleDao;
@Resource
private ProRoleMemberDao roleMemberDao;
@Resource
private Snowflake snowflake; private Snowflake snowflake;
@Override @Override
@ -62,6 +69,20 @@ public class DeliverService implements IDeliverService{
throw new BaseException(CommonCodeError.NOT_TASK); throw new BaseException(CommonCodeError.NOT_TASK);
} }
Long userOfMemberId = memberDao.findUserOfMemberId(params.getProjectId(), userId); Long userOfMemberId = memberDao.findUserOfMemberId(params.getProjectId(), userId);
if (ObjectUtil.isNull(userOfMemberId)) {
throw new BaseException(CommonCodeError.NO_POWER);
}
List<Long> userOfRoles = roleMemberDao.findMemberOfRoleIds(userOfMemberId);
//查看是否是我负责的任务
if (CollectionUtil.isNotEmpty(userOfRoles)) {
List<Long> isMyTask = roleTaskDao.isMyTask(taskSub.getTaskDetailId(), userOfRoles);
if (CollectionUtil.isEmpty(isMyTask)) {
throw new BaseException(CommonCodeError.NO_POWER);
}
}else {
throw new BaseException(CommonCodeError.NO_POWER);
}
ProDeliver proDeliver = new ProDeliver(); ProDeliver proDeliver = new ProDeliver();
proDeliver.setId(snowflake.nextId()); proDeliver.setId(snowflake.nextId());
proDeliver.setTaskSubId(params.getTaskSubId()); proDeliver.setTaskSubId(params.getTaskSubId());
@ -128,8 +149,11 @@ public class DeliverService implements IDeliverService{
if (ObjectUtil.isNull(projectById)) { if (ObjectUtil.isNull(projectById)) {
throw new BaseException(CommonCodeError.PROJECT_NOT_FOUND); throw new BaseException(CommonCodeError.PROJECT_NOT_FOUND);
} }
CDeliverVo.DeliverOfProject deliverOfProject = deliverDao.queryDeliverOfProject(params); List<CDeliverVo.DeliverOfTask> deliverOfTask = deliverDao.queryDeliverOfProject(params);
return null; CDeliverVo.DeliverOfProject deliverOfProject = new CDeliverVo.DeliverOfProject();
deliverOfProject.setProjectName(projectById.getName());
deliverOfProject.setDeliverOfTaskList(deliverOfTask);
return deliverOfProject;
} }
} }

33
common/src/main/resources/mapper_dao/ProDeliverDao.xml

@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ccsens.common.persist.dao.ProDeliverDao"> <mapper namespace="com.ccsens.common.persist.dao.ProDeliverDao">
<resultMap id="delivOfTask" type="com.ccsens.common.bean.vo.CDeliverVo$DeliverOfTask"> <resultMap id="deliverOfTask" type="com.ccsens.common.bean.vo.CDeliverVo$DeliverOfTask">
<result column="id" property="id"/> <result column="id" property="id"/>
<result column="name" property="name"/> <result column="name" property="name"/>
<result column="taskName" property="taskName"/> <result column="taskName" property="taskName"/>
@ -18,7 +18,7 @@
</collection> </collection>
</resultMap> </resultMap>
<select id="queryDeliverOfTask" resultType="com.ccsens.common.bean.vo.CDeliverVo$DeliverOfTask"> <select id="queryDeliverOfTask" resultMap="deliverOfTask">
SELECT SELECT
d.id, d.id,
m.`name`, m.`name`,
@ -41,12 +41,35 @@
WHERE WHERE
d.rec_status = 0 AND c.rec_status = 0 AND ts.rec_status = 0 AND td.rec_status = 0 d.rec_status = 0 AND c.rec_status = 0 AND ts.rec_status = 0 AND td.rec_status = 0
AND c.rec_status = 0 AND c.rec_status = 0
AND task_sub_id = #{taskSubId} AND d.task_sub_id = #{taskSubId}
ORDER BY d.time DESC ORDER BY d.time DESC
</select> </select>
<select id="queryDeliverOfProject" resultType="com.ccsens.common.bean.vo.CDeliverVo$DeliverOfProject"> <select id="queryDeliverOfProject" resultMap="deliverOfTask">
SELECT
d.id,
m.`name`,
td.`name` AS taskName,
d.time,
d.content,
c.id As checkId,
m1.`name` AS checkerName,
m1.id AS checkerId,
c.`status`,
c.score,
c.remark
FROM
t_pro_deliver AS d
LEFT JOIN t_pro_deliver_checker AS c ON d.id = c.deliver_id
LEFT JOIN t_pro_task_sub AS ts ON ts.id = d.task_sub_id
LEFT JOIN t_pro_task_detail AS td ON td.id = ts.task_detail_id
LEFT JOIN t_pro_member AS m ON m.id = d.member_id AND m.rec_status = 0
LEFT JOIN t_pro_member AS m1 ON m1.id = c.member_id AND m1.rec_status = 0
WHERE
d.rec_status = 0 AND c.rec_status = 0 AND ts.rec_status = 0 AND td.rec_status = 0
AND c.rec_status = 0
AND d.project_id = #{projectId}
ORDER BY d.time DESC
</select> </select>
</mapper> </mapper>

14
common/src/main/resources/mapper_dao/ProRoleTaskDao.xml

@ -31,4 +31,18 @@
</foreach> </foreach>
</select> </select>
<select id="isMyTask" resultType="java.lang.Long">
SELECT
id
FROM
t_pro_role_task
WHERE
task_id = #{taskDetailId}
AND role_id IN
<foreach collection="roleIdList" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</select>
</mapper> </mapper>

Loading…
Cancel
Save