新增 用户反馈信息表

This commit is contained in:
Lemon
2025-06-30 14:09:47 +08:00
parent fd527e0467
commit 0f2f25ef0b
16 changed files with 690 additions and 579 deletions

View File

@@ -0,0 +1,83 @@
package com.jsowell.pile.service;
import java.util.List;
import com.jsowell.pile.domain.MemberFeedbackInfo;
import com.jsowell.pile.dto.MemberFeedbackInfoDTO;
import com.jsowell.pile.vo.uniapp.customer.MemberFeedbackInfoVO;
/**
* 用户问题反馈Service接口
*
* @author jsowell
* @date 2025-06-26
*/
public interface MemberFeedbackInfoService {
/**
* 查询用户问题反馈
*
* @param id 用户问题反馈主键
* @return 用户问题反馈
*/
public MemberFeedbackInfo selectMemberFeedbackInfoById(Long id);
/**
* 查询用户问题反馈列表
*
* @param memberFeedbackInfo 用户问题反馈
* @return 用户问题反馈集合
*/
public List<MemberFeedbackInfo> selectMemberFeedbackInfoList(MemberFeedbackInfo memberFeedbackInfo);
/**
* 新增用户问题反馈
*
* @param memberFeedbackInfo 用户问题反馈
* @return 结果
*/
public int insertMemberFeedbackInfo(MemberFeedbackInfo memberFeedbackInfo);
/**
* 修改用户问题反馈
*
* @param memberFeedbackInfo 用户问题反馈
* @return 结果
*/
public int updateMemberFeedbackInfo(MemberFeedbackInfo memberFeedbackInfo);
/**
* 批量删除用户问题反馈
*
* @param ids 需要删除的用户问题反馈主键集合
* @return 结果
*/
public int deleteMemberFeedbackInfoByIds(Long[] ids);
/**
* 删除用户问题反馈信息
*
* @param id 用户问题反馈主键
* @return 结果
*/
public int deleteMemberFeedbackInfoById(Long id);
/**
* 保存用户提出的反馈建议信息
* @param dto
*/
void saveFeedbackInfo(MemberFeedbackInfoDTO dto);
/**
* 通过memberId查询反馈信息列表
* @param memberId
* @return
*/
List<MemberFeedbackInfoVO> getInfoListByMemberId(String memberId);
/**
* 通过反馈编码查询反馈信息详情
* @param feedbackCode
* @return
*/
MemberFeedbackInfoVO getMemberFeedbackDetailByCode(String feedbackCode);
}

View File

@@ -1,49 +0,0 @@
package com.jsowell.pile.service;
import com.jsowell.pile.dto.MemberFeedbackDTO;
import com.jsowell.pile.dto.QueryMemberFeedbackDTO;
import com.jsowell.pile.vo.uniapp.customer.MemberFeedbackVO;
import java.util.List;
public interface MemberFeedbackService {
/**
* 用户反馈信息保存
* @param dto
*/
void saveFeedback(MemberFeedbackDTO dto);
/**
* 获取用户反馈信息列表
* @param memberId
* @return
*/
List<MemberFeedbackVO> getFeedbackList(String memberId);
/**
* 条件查询用户反馈信息列表 (管理后台使用)
* @param dto
* @return
*/
List<MemberFeedbackVO> selectFeedbackList(QueryMemberFeedbackDTO dto);
/**
* 根据memberId获取用户反馈信息
* @param id
* @return
*/
MemberFeedbackVO getFeedbackById(Long id);
/**
* 根据memberId删除用户反馈信息
* @param dto
*/
void updateFeedback(QueryMemberFeedbackDTO dto);
/**
* 根据ids删除用户反馈信息
* @param ids
*/
void deleteFeedbackByIds(List<Long> ids);
}

View File

@@ -0,0 +1,136 @@
package com.jsowell.pile.service.impl;
import java.util.List;
import com.jsowell.common.constant.Constants;
import com.jsowell.common.util.DateUtils;
import com.jsowell.common.util.id.IdUtils;
import com.jsowell.pile.dto.MemberFeedbackInfoDTO;
import com.jsowell.pile.service.MemberFeedbackInfoService;
import com.jsowell.pile.vo.uniapp.customer.MemberFeedbackInfoVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.jsowell.pile.mapper.MemberFeedbackInfoMapper;
import com.jsowell.pile.domain.MemberFeedbackInfo;
/**
* 用户问题反馈Service业务层处理
*
* @author jsowell
* @date 2025-06-26
*/
@Service
public class MemberFeedbackInfoServiceImpl implements MemberFeedbackInfoService {
@Autowired
private MemberFeedbackInfoMapper memberFeedbackInfoMapper;
/**
* 查询用户问题反馈
*
* @param id 用户问题反馈主键
* @return 用户问题反馈
*/
@Override
public MemberFeedbackInfo selectMemberFeedbackInfoById(Long id) {
return memberFeedbackInfoMapper.selectMemberFeedbackInfoById(id);
}
/**
* 查询用户问题反馈列表
*
* @param memberFeedbackInfo 用户问题反馈
* @return 用户问题反馈
*/
@Override
public List<MemberFeedbackInfo> selectMemberFeedbackInfoList(MemberFeedbackInfo memberFeedbackInfo) {
return memberFeedbackInfoMapper.selectMemberFeedbackInfoList(memberFeedbackInfo);
}
/**
* 新增用户问题反馈
*
* @param memberFeedbackInfo 用户问题反馈
* @return 结果
*/
@Override
public int insertMemberFeedbackInfo(MemberFeedbackInfo memberFeedbackInfo) {
memberFeedbackInfo.setCreateTime(DateUtils.getNowDate());
return memberFeedbackInfoMapper.insertMemberFeedbackInfo(memberFeedbackInfo);
}
/**
* 修改用户问题反馈
*
* @param memberFeedbackInfo 用户问题反馈
* @return 结果
*/
@Override
public int updateMemberFeedbackInfo(MemberFeedbackInfo memberFeedbackInfo) {
memberFeedbackInfo.setUpdateTime(DateUtils.getNowDate());
return memberFeedbackInfoMapper.updateMemberFeedbackInfo(memberFeedbackInfo);
}
/**
* 批量删除用户问题反馈
*
* @param ids 需要删除的用户问题反馈主键
* @return 结果
*/
@Override
public int deleteMemberFeedbackInfoByIds(Long[] ids) {
return memberFeedbackInfoMapper.deleteMemberFeedbackInfoByIds(ids);
}
/**
* 删除用户问题反馈信息
*
* @param id 用户问题反馈主键
* @return 结果
*/
@Override
public int deleteMemberFeedbackInfoById(Long id) {
return memberFeedbackInfoMapper.deleteMemberFeedbackInfoById(id);
}
/**
* 保存用户提出的反馈建议信息
* @param dto
*/
@Override
public void saveFeedbackInfo(MemberFeedbackInfoDTO dto) {
MemberFeedbackInfo info = MemberFeedbackInfo.builder()
.memberId(dto.getMemberId())
.nickName(dto.getNickName())
.phoneNumber(dto.getPhoneNumber())
.feedbackType(dto.getFeedbackType())
.feedbackContent(dto.getFeedbackContent())
.status(Constants.ZERO)
.build();
// 生成24位流水号
String feedbackCode = IdUtils.generateFBSerialNumber(24);
info.setFeedbackCode(feedbackCode);
insertMemberFeedbackInfo(info);
}
/**
* 通过memberId查询反馈信息列表
* @param memberId
* @return
*/
@Override
public List<MemberFeedbackInfoVO> getInfoListByMemberId(String memberId) {
return memberFeedbackInfoMapper.getInfoListByMemberId(memberId);
}
/**
* 通过反馈编码查询反馈信息详情
* @param feedbackCode
* @return
*/
@Override
public MemberFeedbackInfoVO getMemberFeedbackDetailByCode(String feedbackCode) {
return memberFeedbackInfoMapper.getMemberFeedbackDetailByCode(feedbackCode);
}
}

View File

@@ -1,110 +0,0 @@
package com.jsowell.pile.service.impl;
import com.github.pagehelper.PageHelper;
import com.jsowell.common.constant.Constants;
import com.jsowell.common.core.redis.RedisCache;
import com.jsowell.common.util.DateUtils;
import com.jsowell.pile.domain.MemberBasicInfo;
import com.jsowell.pile.domain.MemberFeedback;
import com.jsowell.pile.dto.MemberFeedbackDTO;
import com.jsowell.pile.dto.QueryMemberFeedbackDTO;
import com.jsowell.pile.mapper.MemberBasicInfoMapper;
import com.jsowell.pile.mapper.MemberFeedbackMapper;
import com.jsowell.pile.service.MemberFeedbackService;
import com.jsowell.pile.vo.uniapp.customer.MemberFeedbackVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
@Slf4j
public class MemberFeedbackServiceImpl implements MemberFeedbackService {
@Autowired
MemberBasicInfoMapper memberBasicInfoMapper;
@Autowired
MemberFeedbackMapper memberFeedbackMapper;
/**
* 用户反馈保存
* @param dto
*/
@Override
public void saveFeedback(MemberFeedbackDTO dto) {
MemberBasicInfo memberInfo = memberBasicInfoMapper.selectInfoByMemberId(dto.getMemberId());
if (memberInfo == null) {
throw new IllegalArgumentException("");
}
MemberFeedback memberFeedback = MemberFeedback.builder ()
.memberId(dto.getMemberId())
.memberName(memberInfo.getNickName())
.contactInfo(memberInfo.getMobileNumber()) // 联系方式
.feedbackType(dto.getFeedbackType()) //反馈类型
.feedbackContent(dto.getFeedbackContent())
.status(Constants.ONE)
.createTime(DateUtils.getNowDate())
.delFlag(Constants.ZERO)
.build();
// 保存反馈信息至数据库
memberFeedbackMapper.insertMemberFeedback(memberFeedback);
}
/**
* 获取用户反馈列表
* @param memberId
* @return
*/
@Override
public List<MemberFeedbackVO> getFeedbackList(String memberId) {
return memberFeedbackMapper.selectMemberFeedbackList(memberId);
}
/**
* 条件查询用户反馈列表 (后管)
* @param dto
* @return
*/
@Override
public List<MemberFeedbackVO> selectFeedbackList(QueryMemberFeedbackDTO dto) {
//分页
dto.setPageNum(dto.getPageNum() == null? 1 : dto.getPageNum());
dto.setPageSize(dto.getPageSize() == null? 10 : dto.getPageSize());
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
return memberFeedbackMapper.getFeedbackList(dto);
}
/**
* 根据id获取用户反馈信息
* @param id
* @return
*/
@Override
public MemberFeedbackVO getFeedbackById(Long id) {
return memberFeedbackMapper.getFeedbackById(id);
}
/**
* 根据id更新用户反馈信息
* @param dto
*/
@Override
public void updateFeedback(QueryMemberFeedbackDTO dto) {
memberFeedbackMapper.updateFeedback(dto);
}
/**
* 根据id删除用户反馈信息
* @param ids
*/
@Override
public void deleteFeedbackByIds(List<Long> ids) {
for (Long id : ids) {
memberFeedbackMapper.deleteMemberFeedbackById(id);
}
}
}