From fad58948e8c787706525dcbd70f06140e8dab2b7 Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期日, 02 七月 2023 19:16:23 +0800
Subject: [PATCH] 商户端优惠券
---
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java | 154 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 152 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 2b30b48..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
@@ -4,15 +4,29 @@
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;
@@ -30,6 +44,16 @@
@Resource
private MemberSuggestMapper memberSuggestMapper;
+
+ @Resource
+ private RemoteShopService remoteShopService;
+
+ @Resource
+ private RemoteUserService remoteUserService;
+
+ @Resource
+ private RemoteConfigService remoteConfigService;
+
/**
*
* @param page
@@ -42,7 +66,7 @@
}
/**
- *
+ * 用户建议
* @param appUserSuggestDto
*/
@Override
@@ -51,8 +75,134 @@
memberSuggest.setDelFlag(0);
memberSuggest.setCreateUserId(appUserSuggestDto.getUserId());
memberSuggest.setSuggestContent(appUserSuggestDto.getSuggestContent());
- memberSuggest.setCreateTime(DateUtils.getNowDate());
+ memberSuggest.setCreateTime(new Date());
memberSuggest.setSuggestType(appUserSuggestDto.getSuggestType());
+ memberSuggest.setReplayFlag(0);
+ this.saveOrUpdate(memberSuggest);
+ }
+
+ /**
+ * @description
+ * @author jqs
+ * @date 2023/6/9 10:02
+ * @param suggestTag
+ * @return void
+ */
+ @Override
+ public void deleteMemberSuggestTag(String suggestTag){
+ memberSuggestMapper.deleteMemberSuggestTag(suggestTag);
+ }
+
+ /**
+ * @description 分页获取用户建议
+ * @author jqs
+ * @date 2023/6/9 17:26
+ * @param memberSuggestPageDto
+ * @return List<MgtMemberSuggestPageVo>
+ */
+ @Override
+ public List<MgtMemberSuggestPageVo> pageMgtMemberSuggest(Page page,MgtMemberSuggestPageDto memberSuggestPageDto){
+ //如果区域代码不为null获取对应的商户id
+ 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());
+ MgtShopIdByCodeVo mgtShopIdByCodeVo = remoteShopService.getShopIdByCode(mgtShopIdByCodeDto).getData();
+ if(StringUtils.isNotBlank(mgtShopIdByCodeVo.getShopIds())){
+ 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