diff --git a/fw-valhalla-service/src/main/java/cn/fw/valhalla/service/bus/CustomerRetentionRatioBizService.java b/fw-valhalla-service/src/main/java/cn/fw/valhalla/service/bus/CustomerRetentionRatioBizService.java index cb9d320..f5edce8 100644 --- a/fw-valhalla-service/src/main/java/cn/fw/valhalla/service/bus/CustomerRetentionRatioBizService.java +++ b/fw-valhalla-service/src/main/java/cn/fw/valhalla/service/bus/CustomerRetentionRatioBizService.java @@ -2,12 +2,14 @@ package cn.fw.valhalla.service.bus; import cn.fw.valhalla.common.constant.RoleCode; import cn.fw.valhalla.common.utils.DateUtil; +import cn.fw.valhalla.common.utils.StringUtils; import cn.fw.valhalla.domain.db.pool.StammkundePool; import cn.fw.valhalla.domain.db.report.CustomerRetentionRatio; import cn.fw.valhalla.domain.enums.DefeatReasonEnum; import cn.fw.valhalla.domain.enums.StammkundeStatusEnum; import cn.fw.valhalla.rpc.erp.UserService; import cn.fw.valhalla.rpc.erp.dto.PostUserDTO; +import cn.fw.valhalla.rpc.erp.dto.UserInfoDTO; import cn.fw.valhalla.rpc.oop.OopService; import cn.fw.valhalla.rpc.oop.dto.ShopDTO; import cn.fw.valhalla.service.data.CustomerRetentionRatioService; @@ -77,7 +79,13 @@ public class CustomerRetentionRatioBizService { List userDTOS = Optional.ofNullable(userService.getUserByRole(shop.getId(), RoleCode.FWGW)).orElse(new ArrayList<>()); Set set = new HashSet<>(); for (StammkundePool pool : pools) { - set.add(new UserInfo(pool.getAdviserId(), pool.getAdviserName())); + Long adviserId = pool.getAdviserId(); + String adviserName = pool.getAdviserName(); + if (StringUtils.isEmpty(adviserName)) { + UserInfoDTO user = userService.user(adviserId); + adviserName = Objects.nonNull(user) ? user.getUserName() : adviserName; + } + set.add(new UserInfo(adviserId, adviserName)); } for (PostUserDTO pool : userDTOS) { set.add(new UserInfo(pool.getUserId(), pool.getUserName()));