diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SplitOrderServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SplitOrderServiceImpl.java index 216b56abd..ebfb96f53 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SplitOrderServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SplitOrderServiceImpl.java @@ -5,6 +5,7 @@ import com.cool.store.constants.CommonConstants; import com.cool.store.constants.RedisConstant; import com.cool.store.context.CurrentUserHolder; import com.cool.store.context.LoginUserInfo; +import com.cool.store.dao.EnterpriseUserDAO; import com.cool.store.dao.SplitOrderDAO; import com.cool.store.dao.StoreDao; import com.cool.store.dao.AdjustmentOrderDAO; @@ -46,6 +47,7 @@ import java.text.MessageFormat; import java.util.*; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; +import java.util.stream.Stream; import static com.cool.store.enums.wallet.WalletTradeModuleEnum.STANDARD_STORE; import static com.cool.store.enums.wallet.WalletTradeModuleEnum.TRANSFER; @@ -81,6 +83,9 @@ public class SplitOrderServiceImpl implements SplitOrderService { @Resource WalletApiService walletApiService; + @Resource + EnterpriseUserDAO enterpriseUserDAO; + @Override @Transactional(rollbackFor = Exception.class) @@ -184,8 +189,24 @@ public class SplitOrderServiceImpl implements SplitOrderService { @Override public PageInfo page(SplitOrderPageRequest request) { PageHelper.startPage(request.getPageNum(), request.getPageSize()); - List responses = splitOrderDAO.pageQueryWithStore(request); - return new PageInfo<>(responses); + List list = splitOrderDAO.pageQueryWithStore(request); + + Set userIdList = list.stream() + .filter(x -> StringUtils.isNotBlank(x.getConfirmer()) || StringUtils.isNotBlank(x.getCreateUserId())) + .flatMap(x -> Stream.of(x.getConfirmer(), x.getCreateUserId())) + .filter(StringUtils::isNotBlank) + .collect(Collectors.toSet()); + Map userNameMap = enterpriseUserDAO.getUserNameMap(new ArrayList<>(userIdList)); + + list.forEach(response -> { + if (StringUtils.isNotBlank(response.getConfirmer())){ + response.setConfirmerName(userNameMap.get(response.getConfirmer())); + } + if (StringUtils.isNotEmpty(response.getCreateUserId())){ + response.setCreateUserName(userNameMap.get(response.getCreateUserId())); + } + }); + return new PageInfo<>(list); } @Override