|
|
@ -1,9 +1,14 @@ |
|
|
|
package com.epmet.service.impl; |
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSON; |
|
|
|
import com.epmet.commons.tools.constant.NumConstant; |
|
|
|
import com.epmet.commons.tools.utils.ConvertUtils; |
|
|
|
import com.epmet.constant.BadgeConstant; |
|
|
|
import com.epmet.dao.UserBadgeDao; |
|
|
|
import com.epmet.dto.form.UserBadgeListFormDTO; |
|
|
|
import com.epmet.dto.form.UserOperListFormDTO; |
|
|
|
import com.epmet.dto.result.UserBadgeListResultDTO; |
|
|
|
import com.epmet.dto.result.UserOperListResultDTO; |
|
|
|
import com.epmet.redis.UserBadgeRedis; |
|
|
|
import com.epmet.service.UserBadgeService; |
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
@ -38,8 +43,8 @@ public class UserBadgeServiceImpl implements UserBadgeService { |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public List<UserBadgeListResultDTO> selectBadgeList(UserBadgeListFormDTO userBadgeListFormDTO) { |
|
|
|
List<UserBadgeListResultDTO> userBadge = userBadgeRedis.getUserBadge(userBadgeListFormDTO.getCustomerId()); |
|
|
|
if (CollectionUtils.isEmpty(userBadge)){ |
|
|
|
Object userBadge = userBadgeRedis.getUserBadge(userBadgeListFormDTO.getCustomerId()); |
|
|
|
if (null == userBadge){ |
|
|
|
List<UserBadgeListResultDTO> resultUserBadge = new ArrayList<>(); |
|
|
|
List<UserBadgeListResultDTO> userBadgeListResultDTOS = userBadgeDao.selectAllBadge(userBadgeListFormDTO); |
|
|
|
if (!CollectionUtils.isEmpty(userBadgeListResultDTOS)){ |
|
|
@ -54,14 +59,15 @@ public class UserBadgeServiceImpl implements UserBadgeService { |
|
|
|
}); |
|
|
|
}); |
|
|
|
userBadgeRedis.setUserBadge(resultUserBadge,userBadgeListFormDTO.getCustomerId()); |
|
|
|
userBadge = userBadgeRedis.getUserBadge(userBadgeListFormDTO.getCustomerId()); |
|
|
|
} |
|
|
|
} |
|
|
|
userBadge = userBadgeRedis.getUserBadge(userBadgeListFormDTO.getCustomerId()); |
|
|
|
List<UserBadgeListResultDTO> redisUserBadgeList = JSON.parseArray(userBadge.toString(), UserBadgeListResultDTO.class); |
|
|
|
List<UserBadgeListResultDTO> userBadgeListResultDTOS = userBadgeDao.selectBadgeList(userBadgeListFormDTO); |
|
|
|
if (CollectionUtils.isEmpty(userBadgeListResultDTOS)){ |
|
|
|
return userBadge; |
|
|
|
return redisUserBadgeList; |
|
|
|
} |
|
|
|
userBadge.forEach(u -> { |
|
|
|
redisUserBadgeList.forEach(u -> { |
|
|
|
userBadgeListResultDTOS.forEach(badge -> { |
|
|
|
if (u.getBadgeId().equals(badge.getBadgeId())){ |
|
|
|
badge.setBadgeIcon(u.getBadgeIcon()); |
|
|
@ -69,11 +75,52 @@ public class UserBadgeServiceImpl implements UserBadgeService { |
|
|
|
} |
|
|
|
}); |
|
|
|
}); |
|
|
|
userBadge.forEach(u -> { |
|
|
|
redisUserBadgeList.forEach(u -> { |
|
|
|
if (!u.getStatus()){ |
|
|
|
userBadgeListResultDTOS.add(u); |
|
|
|
} |
|
|
|
}); |
|
|
|
return userBadgeListResultDTOS; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @Description 个人中心-获取徽章可操作列表(点亮,取消,认证) |
|
|
|
* @Param userOperListFormDTO |
|
|
|
* @author zxc |
|
|
|
* @date 2020/11/3 4:42 下午 |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public List<UserOperListResultDTO> selectOperList(UserOperListFormDTO userOperListFormDTO) { |
|
|
|
List<UserOperListResultDTO> userAuthBadgeList = userBadgeDao.selectAuthRecord(userOperListFormDTO.getUserId()); |
|
|
|
Object userBadge = userBadgeRedis.getUserBadge(userOperListFormDTO.getCustomerId()); |
|
|
|
List<UserOperListResultDTO> userOperListResultDTOS = JSON.parseArray(userBadge.toString(), UserOperListResultDTO.class); |
|
|
|
// 没有任何记录
|
|
|
|
if (CollectionUtils.isEmpty(userAuthBadgeList)){ |
|
|
|
userOperListResultDTOS.forEach(u -> { |
|
|
|
u.setIsLighted(u.getIsOpened().equals(NumConstant.ZERO_STR) ? BadgeConstant.NO : BadgeConstant.YES); |
|
|
|
u.setIsCertificated(BadgeConstant.NO); |
|
|
|
u.setIsReject(false); |
|
|
|
}); |
|
|
|
return userOperListResultDTOS; |
|
|
|
} |
|
|
|
List<UserOperListResultDTO> badgeIsOpenedList = userBadgeDao.selectBadgeByUserId(userOperListFormDTO.getUserId()); |
|
|
|
userOperListResultDTOS.forEach(ub -> { |
|
|
|
userAuthBadgeList.forEach(u -> { |
|
|
|
if (ub.getBadgeId().equals(u.getBadgeId())){ |
|
|
|
ub.setIsReject(u.getAuditStatus().equals(BadgeConstant.REJECTED) ? true : false); |
|
|
|
ub.setIsCertificated(u.getAuditStatus().equals(BadgeConstant.APPROVED) ? BadgeConstant.YES : BadgeConstant.NO); |
|
|
|
} |
|
|
|
}); |
|
|
|
if (CollectionUtils.isEmpty(badgeIsOpenedList)){ |
|
|
|
ub.setIsLighted(BadgeConstant.NO); |
|
|
|
}else { |
|
|
|
badgeIsOpenedList.forEach(b -> { |
|
|
|
if (ub.getBadgeId().equals(b.getBadgeId())){ |
|
|
|
ub.setIsLighted(b.getIsOpened().equals(NumConstant.ZERO_STR) ? BadgeConstant.NO : BadgeConstant.YES); |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|
}); |
|
|
|
return userOperListResultDTOS; |
|
|
|
} |
|
|
|
} |
|
|
|