Pu Zhibing
8 天以前 ea1a62ba6484d6c6cb1ca67dcea938a95ba18fc6
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);
    }
@@ -112,11 +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());
            }else{
                return mgtMemberSuggestPageVoList;
            }
            memberSuggestPageDto.setShopIds(mgtShopIdByCodeVo.getShopIds());
        }
        //处理标签为正则方便sql判断
        if(StringUtils.isNotBlank(memberSuggestPageDto.getTags())){
@@ -127,6 +134,25 @@
        }
        //获取返回结果
        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;
    }