Browse Source

项目信息添加未读消息数量

master
zy_Java 5 years ago
parent
commit
fdf0b50830
  1. 10
      tall/src/main/java/com/ccsens/tall/bean/vo/ProjectVo.java
  2. 32
      tall/src/main/java/com/ccsens/tall/persist/dao/SysRingMsgDao.java
  3. 11
      tall/src/main/java/com/ccsens/tall/service/ProjectService.java
  4. 2
      tall/src/main/java/com/ccsens/tall/service/RingService.java
  5. 34
      tall/src/main/resources/mapper_dao/SysRingMsgDao.xml

10
tall/src/main/java/com/ccsens/tall/bean/vo/ProjectVo.java

@ -92,11 +92,15 @@ public class ProjectVo {
@ApiModelProperty("未处理的消息总数")
private Integer totalNum;
@ApiModelProperty("ring消息")
private Integer ringNum;
private Integer ringNum = 0;
@ApiModelProperty("check消息")
private Integer checkNum;
private Integer checkNum = 0;
@ApiModelProperty("交付物消息")
private Integer deliverNum;
private Integer deliverNum = 0;
public Integer getTotalNum(){
return ringNum + checkNum + deliverNum;
}
}
@ApiModel

32
tall/src/main/java/com/ccsens/tall/persist/dao/SysRingMsgDao.java

@ -10,11 +10,43 @@ import java.util.List;
@Repository
public interface SysRingMsgDao extends SysRingMsgMapper {
/**
* 查找项目下关于自己的ring消息
* @param userId userId
* @param projectId 项目id
* @return 消息详情
*/
List<RingVo.RingInfo> selectRingInfoByProject(@Param("userId")Long userId, @Param("projectId")Long projectId);
/**
* 获取用户在项目内的角色id
* @param userId userId
* @param projectId 项目id
* @return 角色id
*/
List<Long> selectRoleIdByUserId(@Param("userId")Long userId, @Param("projectId")Long projectId);
/**
* 获取ring消息的每个接收者的信息和读取的情况
* @param messageId ring消息id
* @return 接收者信息
*/
List<RingVo.MsgReceiveRole> ringReceiveRole(@Param("messageId")Long messageId);
/**
* 透过消息id查找消息详情
* @param userId userId
* @param projectId 项目id
* @param msgId ring消息id
* @return ring消息信息
*/
List<RingVo.RingInfo> selectRingInfoByRingMsgId(@Param("userId")Long userId, @Param("projectId")Long projectId, @Param("msgId")Long msgId);
/**
* 查找用户在项目下的未读ring消息的数量
* @param userId userId
* @param projectId 项目id
* @return 未读的消息的数量
*/
Integer getRingUnreadNum(@Param("userId")Long userId, @Param("projectId")Long projectId);
}

11
tall/src/main/java/com/ccsens/tall/service/ProjectService.java

@ -57,6 +57,8 @@ public class ProjectService implements IProjectService {
private SysDomainDao sysDomainDao;
@Resource
private SysLabelDao sysLabelDao;
@Resource
private SysRingMsgDao sysRingMsgDao;
@Override
public void saveProject(SysProject sysProject) {
@ -197,8 +199,13 @@ public class ProjectService implements IProjectService {
}
private ProjectVo.ProjectUnreadMsg getUnreadMsgByProject(Long userId,Long projectId) {
return null;
//获取ring消息未读数量
Integer ringUnread = sysRingMsgDao.getRingUnreadNum(userId,projectId);
ProjectVo.ProjectUnreadMsg unreadMsg = new ProjectVo.ProjectUnreadMsg();
unreadMsg.setRingNum(ringUnread);
//TODO 获取check未读消息
//TODO 获取未读交付物的消息
return unreadMsg;
}
private List<ProjectVo.ProjectInfo> projectInfoByProject(List<SysProject> projectList, Long currentUserId) {

2
tall/src/main/java/com/ccsens/tall/service/RingService.java

@ -117,7 +117,7 @@ public class RingService implements IRingService {
*/
@Override
public PageInfo<RingVo.RingInfo> getRingInfo(Long currentUserId, RingDto.GetRingDto getRingDto) {
log.info("查找第{}页,项目id:{}",getRingDto.getPage(),getRingDto.getProjectId());
getRingDto.setPage(getRingDto.getPage() == null ? 1 : getRingDto.getPage());
getRingDto.setPageSize(getRingDto.getPageSize() == null ? 10 : getRingDto.getPageSize());

34
tall/src/main/resources/mapper_dao/SysRingMsgDao.xml

@ -158,4 +158,38 @@
)a
ORDER BY a.time DESC
</select>
<select id="getRingUnreadNum" parameterType="java.util.Map" resultType="Integer">
SELECT
count(*)
FROM
(
SELECT
rm.id as ringId
FROM
t_sys_ring_msg rm LEFT JOIN t_sys_ring_send rs on rm.id = rs.ring_id
WHERE
rm.rec_status = 0
and
rs.rec_status = 0
and
rs.read_status = 0
and
rs.role_id in (
SELECT
r.id as rId
FROM
t_pro_role r LEFT JOIN t_pro_member_role mr on r.id = mr.role_id
LEFT JOIN t_pro_member m on mr.member_id = m.id
WHERE
(m.user_id =#{userId}
or
r.`name` = '全体成员'
)
AND
r.project_id = #{projectId}
)
GROUP BY rm.id
) a
</select>
</mapper>
Loading…
Cancel
Save