Browse Source

data-agg:个人中心是否显示@我

dev
yinzuomei 4 years ago
parent
commit
ed46482948
  1. 28
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/UserEventLogoResultDTO.java
  2. 6
      epmet-module/data-aggregator/data-aggregator-server/pom.xml
  3. 20
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java
  4. 4
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/ResiUserBadgeDao.java
  5. 2
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govproject/ProjectDao.java
  6. 10
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java
  7. 36
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java
  8. 10
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govproject/GovProjectService.java
  9. 14
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govproject/impl/GovProjectServiceImpl.java
  10. 13
      epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/ResiUserBadgeDao.xml
  11. 11
      epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govproject/ProjectDao.xml

28
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/UserEventLogoResultDTO.java

@ -0,0 +1,28 @@
package com.epmet.dataaggre.dto.epmetuser.result;
import lombok.Data;
import java.io.Serializable;
/**
* 人大代表个人中心是否显示@me
*
* @author yinzuomei@elink-cn.com
* @date 2021/8/3 15:01
*/
@Data
public class UserEventLogoResultDTO implements Serializable {
private static final long serialVersionUID = 3232361347890014097L;
/**
* true:人大代表false不是人大代表此列用来判断是否显示@我
*/
private Boolean isNpc;
/**
* 展示红点true隐藏false
*/
private Boolean redDot;
public UserEventLogoResultDTO(){
this.isNpc=false;
this.redDot=false;
}
}

6
epmet-module/data-aggregator/data-aggregator-server/pom.xml

@ -75,6 +75,12 @@
<version>2.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>epmet-user-client</artifactId>
<version>2.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>

20
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java

@ -8,15 +8,10 @@ import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dataaggre.dto.epmetuser.form.OpenStaffDetailFormDTO;
import com.epmet.dataaggre.dto.epmetuser.form.GridMemberStatsFormDTO;
import com.epmet.dataaggre.dto.epmetuser.form.PatrolDateListFormDTO;
import com.epmet.dataaggre.dto.epmetuser.form.PatrolRecordListFormDTO;
import com.epmet.dataaggre.dto.epmetuser.form.StaffListFormDTO;
import com.epmet.dataaggre.dto.epmetuser.result.OpenStaffDetailResultDTO;
import com.epmet.dataaggre.dto.epmetuser.result.PatrolDateListResultDTO;
import com.epmet.dataaggre.dto.epmetuser.result.PatrolRecordListResultDTO;
import com.epmet.dataaggre.dto.epmetuser.result.PersonalPatrolListResultDTO;
import com.epmet.dataaggre.dto.epmetuser.result.StaffListResultDTO;
import com.epmet.dataaggre.dto.epmetuser.result.*;
import com.epmet.dataaggre.dto.govorg.result.GridMemberDataAnalysisResultDTO;
import com.epmet.dataaggre.service.datastats.DataStatsService;
import com.epmet.dataaggre.service.epmetuser.EpmetUserService;
@ -200,4 +195,17 @@ public class EpmetUserController {
}
/**
* 我要报事-人大代表个人中心 是否显示@我是否显示红点
*
* @param tokenDto
* @return com.epmet.commons.tools.utils.Result<com.epmet.dataaggre.dto.epmetuser.result.UserEventLogoResultDTO>
* @author yinzuomei
* @date 2021/8/3 15:07
*/
@PostMapping("mentionme")
public Result<UserEventLogoResultDTO> mentionMeEvent(@LoginUser TokenDto tokenDto){
return new Result<UserEventLogoResultDTO>().ok(epmetUserService.mentionMeEvent(tokenDto.getUserId()));
}
}

4
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/ResiUserBadgeDao.java

@ -20,6 +20,7 @@ package com.epmet.dataaggre.dao.epmetuser;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dataaggre.entity.epmetuser.ResiUserBadgeEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 用户徽章关系表
@ -29,5 +30,6 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface ResiUserBadgeDao extends BaseDao<ResiUserBadgeEntity> {
ResiUserBadgeEntity selectUserByBadge(@Param("userId")String userId, @Param("badgeKey")String badgeKey);
}

2
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govproject/ProjectDao.java

@ -68,4 +68,6 @@ public interface ProjectDao extends BaseDao<ProjectEntity> {
List<String> selectDepartmentNameList(ProjectDTO project);
List<ProjectDistributionResultDTO> selectList(@Param("customerId") String customerId,@Param("list")List<String> issueIds);
int countRedDot(String userId);
}

10
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java

@ -86,4 +86,14 @@ public interface EpmetUserService {
* @Author sun
**/
List<StaffRoleListResultDTO> getStaffRoleList(String customerId, String userId);
/**
* 我要报事-人大代表个人中心 是否显示@我是否显示红点
*
* @param userId
* @return com.epmet.dataaggre.dto.epmetuser.result.UserEventLogoResultDTO
* @author yinzuomei
* @date 2021/8/3 15:09
*/
UserEventLogoResultDTO mentionMeEvent(String userId);
}

36
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java

@ -3,11 +3,9 @@ package com.epmet.dataaggre.service.epmetuser.impl;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.constant.BadgeConstant;
import com.epmet.dataaggre.constant.DataSourceConstant;
import com.epmet.dataaggre.dao.epmetuser.CustomerStaffDao;
import com.epmet.dataaggre.dao.epmetuser.StaffPatrolRecordDao;
import com.epmet.dataaggre.dao.epmetuser.StaffRoleDao;
import com.epmet.dataaggre.dao.epmetuser.UserBaseInfoDao;
import com.epmet.dataaggre.dao.epmetuser.*;
import com.epmet.dataaggre.dto.epmetuser.CustomerStaffDTO;
import com.epmet.dataaggre.dto.epmetuser.StaffPatrolDetailDTO;
import com.epmet.dataaggre.dto.epmetuser.StaffPatrolRecordDTO;
@ -19,17 +17,18 @@ import com.epmet.dataaggre.dto.epmetuser.result.*;
import com.epmet.dataaggre.dto.govorg.CustomerAgencyDTO;
import com.epmet.dataaggre.dto.govorg.CustomerGridDTO;
import com.epmet.dataaggre.dto.govorg.result.GridStaffResultDTO;
import com.epmet.dataaggre.entity.epmetuser.ResiUserBadgeEntity;
import com.epmet.dataaggre.service.epmetuser.EpmetUserService;
import com.epmet.dataaggre.service.epmetuser.StaffPatrolDetailService;
import com.epmet.dataaggre.service.epmetuser.StaffPatrolRecordService;
import com.epmet.dataaggre.service.govorg.GovOrgService;
import com.epmet.dataaggre.service.govproject.GovProjectService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.text.NumberFormat;
import java.util.*;
import java.util.stream.Collectors;
@ -57,6 +56,10 @@ public class EpmetUserServiceImpl implements EpmetUserService {
private StaffRoleDao staffRoleDao;
@Resource
private CustomerStaffDao customerStaffDao;
@Autowired
private ResiUserBadgeDao resiUserBadgeDao;
@Autowired
private GovProjectService govProjectService;
/**
* @Description 根据UserIds查询
@ -374,5 +377,28 @@ public class EpmetUserServiceImpl implements EpmetUserService {
return staffRoleDao.selectStaffRoleList(customerId, userId);
}
/**
* 我要报事-人大代表个人中心 是否显示@我是否显示红点
*
* @param userId
* @return com.epmet.dataaggre.dto.epmetuser.result.UserEventLogoResultDTO
* @author yinzuomei
* @date 2021/8/3 15:09
*/
@Override
public UserEventLogoResultDTO mentionMeEvent(String userId) {
UserEventLogoResultDTO resultDTO = new UserEventLogoResultDTO();
ResiUserBadgeEntity resiUserBadgeEntity = resiUserBadgeDao.selectUserByBadge(userId, BadgeConstant.BADGE_KEY_NPC);
//是否是人大代表
if (null != resiUserBadgeEntity) {
resultDTO.setIsNpc(true);
}
//展示红点:true;隐藏:false
if(govProjectService.countRedDot(userId)>0){
resultDTO.setRedDot(true);
};
return resultDTO;
}
}

10
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govproject/GovProjectService.java

@ -41,4 +41,14 @@ public interface GovProjectService {
List<ProjectDistributionResultDTO> queryProjectDistribution(ProjectDistributionFormDTO formDTO);
/**
* 查询resi_event_mention
*
* @param userId
* @return int
* @author yinzuomei
* @date 2021/8/3 15:27
*/
int countRedDot(String userId);
}

14
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govproject/impl/GovProjectServiceImpl.java

@ -233,4 +233,18 @@ public class GovProjectServiceImpl implements GovProjectService {
throw new RenException("计算首次响应时间失败");
}
}
/**
* 查询resi_event_mention
*
* @param userId
* @return int
* @author yinzuomei
* @date 2021/8/3 15:27
*/
@Override
public int countRedDot(String userId) {
return projectDao.countRedDot(userId);
}
}

13
epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/ResiUserBadgeDao.xml

@ -3,4 +3,17 @@
<mapper namespace="com.epmet.dataaggre.dao.epmetuser.ResiUserBadgeDao">
<select id="selectUserByBadge" parameterType="map" resultType="com.epmet.dataaggre.entity.epmetuser.ResiUserBadgeEntity">
SELECT
rub.*
FROM
resi_user_badge rub
INNER JOIN badge b ON ( rub.BADGE_ID = b.ID )
WHERE
rub.DEL_FLAG = '0'
AND b.DEL_FLAG = '0'
AND rub.USER_ID = #{userId}
AND b.BADGE_KEY = #{badgeKey}
AND rub.CERTIFICATION_AUTID_STATUS = 'approved'
</select>
</mapper>

11
epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govproject/ProjectDao.xml

@ -144,4 +144,15 @@
</foreach>
order by p.CREATED_TIME desc
</select>
<select id="countRedDot" parameterType="java.lang.String" resultType="int">
SELECT
count(1) as total
FROM
resi_event_mention rem
WHERE
rem.DEL_FLAG = '0'
AND rem.RED_DOT = '1'
AND rem.USER_ID = #{userId}
</select>
</mapper>
Loading…
Cancel
Save