From 8444084e6aa11efa23287e7f82474ac22378a5c4 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期二, 01 四月 2025 16:03:19 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java | 45 ++++++++++++++++++++++++++++++++++++++------- 1 files changed, 38 insertions(+), 7 deletions(-) diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java index 460d6f1..88e9684 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java @@ -14,22 +14,26 @@ import com.ruoyi.member.domain.vo.MgtMemberSuggestPageVo; import com.ruoyi.member.domain.vo.MgtMemberSuggestTagVo; import com.ruoyi.member.mapper.member.MemberSuggestMapper; +import com.ruoyi.member.service.member.MemberService; import com.ruoyi.member.service.member.MemberSuggestService; import com.ruoyi.system.api.domain.dto.AppSuggestPageDto; import com.ruoyi.system.api.domain.dto.AppUserSuggestDto; +import com.ruoyi.system.api.domain.dto.MgtBaseBathDto; import com.ruoyi.system.api.domain.dto.MgtShopIdByCodeDto; import com.ruoyi.system.api.domain.poji.config.SysTag; +import com.ruoyi.system.api.domain.poji.member.Member; import com.ruoyi.system.api.domain.poji.sys.SysUser; import com.ruoyi.system.api.domain.vo.MgtShopIdByCodeVo; +import com.ruoyi.system.api.domain.vo.MgtSimpleShopVo; import com.ruoyi.system.api.service.RemoteConfigService; import com.ruoyi.system.api.service.RemoteShopService; import com.ruoyi.system.api.service.RemoteUserService; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; +import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; /** * <p> @@ -55,6 +59,9 @@ @Resource private RemoteConfigService remoteConfigService; + @Resource + private MemberService memberService; + /** * * @param page @@ -78,6 +85,10 @@ memberSuggest.setSuggestContent(appUserSuggestDto.getSuggestContent()); memberSuggest.setCreateTime(new Date()); memberSuggest.setSuggestType(appUserSuggestDto.getSuggestType()); + if(appUserSuggestDto.getSuggestType()==2){ + Member member = memberService.getByUserId(appUserSuggestDto.getUserId()); + memberSuggest.setShopId(member.getRelationShopId()); + } memberSuggest.setReplayFlag(0); this.saveOrUpdate(memberSuggest); } @@ -104,6 +115,7 @@ @Override public List<MgtMemberSuggestPageVo> pageMgtMemberSuggest(Page page,MgtMemberSuggestPageDto memberSuggestPageDto){ //如果区域代码不为null获取对应的商户id + List<MgtMemberSuggestPageVo> mgtMemberSuggestPageVoList = new ArrayList<>(); if(StringUtils.isNotBlank(memberSuggestPageDto.getKeyword())||StringUtils.isNotBlank(memberSuggestPageDto.getShopProvinceCode())||StringUtils.isNotBlank(memberSuggestPageDto.getShopCityCode())||StringUtils.isNotBlank(memberSuggestPageDto.getShopAreaCode())){ MgtShopIdByCodeDto mgtShopIdByCodeDto = new MgtShopIdByCodeDto(); mgtShopIdByCodeDto.setShopName(memberSuggestPageDto.getKeyword()); @@ -111,9 +123,7 @@ mgtShopIdByCodeDto.setShopCityCode(memberSuggestPageDto.getShopCityCode()); mgtShopIdByCodeDto.setShopAreaCode(memberSuggestPageDto.getShopAreaCode()); MgtShopIdByCodeVo mgtShopIdByCodeVo = remoteShopService.getShopIdByCode(mgtShopIdByCodeDto).getData(); - if(StringUtils.isNotBlank(mgtShopIdByCodeVo.getShopIds())){ - memberSuggestPageDto.setShopIds(mgtShopIdByCodeVo.getShopIds()); - } + memberSuggestPageDto.setShopIds(mgtShopIdByCodeVo.getShopIds()); } //处理标签为正则方便sql判断 if(StringUtils.isNotBlank(memberSuggestPageDto.getTags())){ @@ -123,7 +133,26 @@ memberSuggestPageDto.setSuggestStatus(0); } //获取返回结果 - List<MgtMemberSuggestPageVo> mgtMemberSuggestPageVoList = memberSuggestMapper.pageMgtMemberSuggest(page, memberSuggestPageDto); + mgtMemberSuggestPageVoList = memberSuggestMapper.pageMgtMemberSuggest(page, memberSuggestPageDto); + if(mgtMemberSuggestPageVoList!=null&&!mgtMemberSuggestPageVoList.isEmpty()){ + HashSet<Long> shopIdSet = new HashSet<>(); + for(MgtMemberSuggestPageVo mgtMemberSuggestPageVo : mgtMemberSuggestPageVoList){ + if(mgtMemberSuggestPageVo.getShopId()!=null){ + shopIdSet.add(mgtMemberSuggestPageVo.getShopId()); + } + } + String shopJoinedString = String.join(",", shopIdSet.stream().map(Object::toString).collect(Collectors.toList())); + MgtBaseBathDto mgtBaseBathDto = new MgtBaseBathDto(); + mgtBaseBathDto.setIds(shopJoinedString); + List<MgtSimpleShopVo> simpleShopVoList = remoteShopService.listShopSimpleVoByIds(mgtBaseBathDto).getData(); + Map<Long, MgtSimpleShopVo> shopMap = simpleShopVoList.stream() + .collect(Collectors.toMap(MgtSimpleShopVo::getShopId, Function.identity())); + for(MgtMemberSuggestPageVo mgtMemberSuggestPageVo : mgtMemberSuggestPageVoList){ + if(mgtMemberSuggestPageVo.getShopId()!=null){ + mgtMemberSuggestPageVo.setShopName(shopMap.get(mgtMemberSuggestPageVo.getShopId()).getShopName()); + } + } + } return mgtMemberSuggestPageVoList; } @@ -146,6 +175,8 @@ memberSuggest.setReplayFlag(1); String responseTime = DateUtils.formatDuration(memberSuggest.getCreateTime(), memberSuggest.getReplayTime()); memberSuggest.setResponseTime(responseTime); + long responseTimestamp = DateUtils.diffTime(memberSuggest.getCreateTime(), memberSuggest.getReplayTime()); + memberSuggest.setResponseTimestamp(responseTimestamp); this.saveOrUpdate(memberSuggest); } -- Gitblit v1.7.1