From 962e7325d72222a4ffd4d74a1fc5612f95326e98 Mon Sep 17 00:00:00 2001 From: jiangqs <343695869@qq.com> Date: 星期日, 11 六月 2023 18:49:39 +0800 Subject: [PATCH] 建议管理 --- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java | 107 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 105 insertions(+), 2 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 f3beae9..cd9ec00 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 @@ -3,21 +3,30 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.core.utils.DateUtils; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.member.domain.dto.MgtMemberSuggestPageDto; +import com.ruoyi.member.domain.dto.MgtReplayMemberSuggestDto; +import com.ruoyi.member.domain.dto.MgtTagMemberSuggestDto; import com.ruoyi.member.domain.pojo.member.MemberSuggest; import com.ruoyi.member.domain.vo.AppSuggestPageVo; 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.MemberSuggestService; import com.ruoyi.system.api.domain.dto.AppSuggestPageDto; import com.ruoyi.system.api.domain.dto.AppUserSuggestDto; import com.ruoyi.system.api.domain.dto.MgtShopIdByCodeDto; +import com.ruoyi.system.api.domain.poji.config.SysTag; +import com.ruoyi.system.api.domain.poji.sys.SysUser; import com.ruoyi.system.api.domain.vo.MgtShopIdByCodeVo; +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; @@ -39,7 +48,11 @@ @Resource private RemoteShopService remoteShopService; + @Resource + private RemoteUserService remoteUserService; + @Resource + private RemoteConfigService remoteConfigService; /** * @@ -53,7 +66,7 @@ } /** - * + * 用户建议 * @param appUserSuggestDto */ @Override @@ -64,6 +77,7 @@ memberSuggest.setSuggestContent(appUserSuggestDto.getSuggestContent()); memberSuggest.setCreateTime(new Date()); memberSuggest.setSuggestType(appUserSuggestDto.getSuggestType()); + memberSuggest.setReplayFlag(0); this.saveOrUpdate(memberSuggest); } @@ -89,8 +103,9 @@ @Override public List<MgtMemberSuggestPageVo> pageMgtMemberSuggest(Page page,MgtMemberSuggestPageDto memberSuggestPageDto){ //如果区域代码不为null获取对应的商户id - if(StringUtils.isNotBlank(memberSuggestPageDto.getShopProvinceCode())||StringUtils.isNotBlank(memberSuggestPageDto.getShopCityCode())||StringUtils.isNotBlank(memberSuggestPageDto.getShopAreaCode())){ + 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()); mgtShopIdByCodeDto.setShopProvinceCode(memberSuggestPageDto.getShopProvinceCode()); mgtShopIdByCodeDto.setShopCityCode(memberSuggestPageDto.getShopCityCode()); mgtShopIdByCodeDto.setShopAreaCode(memberSuggestPageDto.getShopAreaCode()); @@ -99,7 +114,95 @@ memberSuggestPageDto.setShopIds(mgtShopIdByCodeVo.getShopIds()); } } + //处理标签为正则方便sql判断 + if(StringUtils.isNotBlank(memberSuggestPageDto.getTags())){ + memberSuggestPageDto.setTags(memberSuggestPageDto.getTags().replace(",","|")); + } + if(memberSuggestPageDto.getSuggestStatus()!=null&&memberSuggestPageDto.getSuggestStatus()!=1){ + memberSuggestPageDto.setSuggestStatus(0); + } + //获取返回结果 List<MgtMemberSuggestPageVo> mgtMemberSuggestPageVoList = memberSuggestMapper.pageMgtMemberSuggest(page, memberSuggestPageDto); return mgtMemberSuggestPageVoList; } + + /** + * @description 平台回复会员建议 + * @param mgtReplayMemberSuggestDto + * @return void + * @author jqs34 + * @date 2023/6/11 16:03 + */ + @Override + public void mgtReplayMemberSuggest(MgtReplayMemberSuggestDto mgtReplayMemberSuggestDto){ + Long userId = mgtReplayMemberSuggestDto.getUserId(); + SysUser sysUser = remoteUserService.getSysUser(userId).getData(); + MemberSuggest memberSuggest = this.getById(mgtReplayMemberSuggestDto.getSuggestId()); + memberSuggest.setReplayContent(mgtReplayMemberSuggestDto.getReplayContent()); + memberSuggest.setReplayTime(new Date()); + memberSuggest.setReplayUserId(userId); + memberSuggest.setReplayUserName(sysUser.getNickName()); + memberSuggest.setReplayFlag(1); + String responseTime = DateUtils.formatDuration(memberSuggest.getCreateTime(), memberSuggest.getReplayTime()); + memberSuggest.setResponseTime(responseTime); + this.saveOrUpdate(memberSuggest); + } + + /** + * @description 获取建议标签列表 + * @param suggestId + * @return List<MgtMemberSuggestTagVo> + * @author jqs34 + * @date 2023/6/11 16:12 + */ + @Override + public List<MgtMemberSuggestTagVo> listMgtMemberSuggestTag(Long suggestId){ + MemberSuggest memberSuggest = this.getById(suggestId); + String suggestTags = memberSuggest.getSuggestTags(); + Long[] tagIdLongArr = null; + if(StringUtils.isNotBlank(suggestTags)){ + String[] tagIdArr = suggestTags.split(","); + tagIdLongArr = new Long[tagIdArr.length]; + for (int i = 0; i < tagIdArr.length; i++) { + try { + tagIdLongArr[i] = Long.parseLong(tagIdArr[i]); + } catch (NumberFormatException e) { + tagIdLongArr[i] = null; + } + } + } + List<SysTag> sysTagsList = remoteConfigService.listSysTag(4).getData(); + //生成返回结果 + List<MgtMemberSuggestTagVo> mgtMemberSuggestTagVoList = new ArrayList<>(); + for(SysTag sysTag : sysTagsList){ + MgtMemberSuggestTagVo mgtMemberSuggestTagVo = new MgtMemberSuggestTagVo(); + mgtMemberSuggestTagVo.setTagId(sysTag.getTagId()); + mgtMemberSuggestTagVo.setTagName(sysTag.getTagName()); + //判断是否选择 + if(tagIdLongArr!=null && tagIdLongArr.length>0){ + for(Long tagId : tagIdLongArr){ + if(tagId!=null && tagId.equals(sysTag.getTagId())){ + mgtMemberSuggestTagVo.setSelectFlag(1); + break; + } + } + } + mgtMemberSuggestTagVoList.add(mgtMemberSuggestTagVo); + } + return mgtMemberSuggestTagVoList; + } + + /** + * @description 平台编辑会员建议标签 + * @param mgtTagMemberSuggestDto + * @return void + * @author jqs34 + * @date 2023/6/11 16:28 + */ + @Override + public void mgtEditMemberSuggestTag(MgtTagMemberSuggestDto mgtTagMemberSuggestDto){ + MemberSuggest memberSuggest = this.getById(mgtTagMemberSuggestDto.getSuggestId()); + memberSuggest.setSuggestTags(mgtTagMemberSuggestDto.getSuggestTags()); + this.saveOrUpdate(memberSuggest); + } } -- Gitblit v1.7.1