From e0ea1f4a21321f145be79556896181f23f22b708 Mon Sep 17 00:00:00 2001
From: gongzuming <gongzuming>
Date: 星期四, 29 八月 2024 09:33:16 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master-v2
---
src/main/java/com/mzl/flower/service/content/FeedbackService.java | 74 +++++++++++++++++++++++++++++++++++++
1 files changed, 74 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/mzl/flower/service/content/FeedbackService.java b/src/main/java/com/mzl/flower/service/content/FeedbackService.java
new file mode 100644
index 0000000..d74e3a3
--- /dev/null
+++ b/src/main/java/com/mzl/flower/service/content/FeedbackService.java
@@ -0,0 +1,74 @@
+package com.mzl.flower.service.content;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.mzl.flower.config.exception.ValidationException;
+import com.mzl.flower.config.security.SecurityUtils;
+import com.mzl.flower.dto.request.content.AddFeedbackDTO;
+import com.mzl.flower.dto.request.content.QueryFeedBackDTO;
+import com.mzl.flower.dto.request.content.ReplyFeedbackDTO;
+import com.mzl.flower.dto.response.content.FeedbackDTO;
+import com.mzl.flower.entity.content.Feedback;
+import com.mzl.flower.mapper.content.FeedbackMapper;
+import com.mzl.flower.utils.DateUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+@Service
+@Transactional
+public class FeedbackService {
+
+ private final FeedbackMapper feedbackMapper;
+
+
+ public FeedbackService(FeedbackMapper feedbackMapper) {
+ this.feedbackMapper = feedbackMapper;
+ }
+
+ public void add(AddFeedbackDTO dto) {
+ Feedback feedback = new Feedback();
+ feedback.setFeedBack(dto.getFeedBack());
+ feedback.setType(dto.getType());
+ feedback.setPictures(dto.getPictures());
+ feedback.setUserId(SecurityUtils.getUserId());
+ feedback.setHandled(false);
+ feedback.create(SecurityUtils.getUserId());
+ feedbackMapper.insert(feedback);
+ }
+
+ public Page<FeedbackDTO> queryPage(QueryFeedBackDTO dto, Page page) {
+ if(StringUtils.isNotBlank(dto.getCreateDateBeginStr())){
+ dto.setCreateDateBegin(DateUtils.dateToLocalDateTime(dto.getCreateDateBeginStr(),true));
+ }
+ if(StringUtils.isNotBlank(dto.getCreateDateEndStr())){
+ dto.setCreateDateEnd(DateUtils.dateToLocalDateTime(dto.getCreateDateEndStr(),false));
+ }
+ List<FeedbackDTO> list = feedbackMapper.queryPage(dto, page);
+ page.setRecords(list);
+ return page;
+ }
+
+ public FeedbackDTO detail(Long id) {
+ QueryFeedBackDTO dto = new QueryFeedBackDTO();
+ dto.setId(id);
+ List<FeedbackDTO> list = feedbackMapper.queryPage(dto, new Page(1,1));
+ if(list != null && list.size() > 0){
+ return list.get(0);
+ }
+ return null;
+ }
+
+ public void reply(ReplyFeedbackDTO dto) {
+ Feedback feedback = feedbackMapper.selectById(dto.getId());
+ if(feedback == null){
+ throw new ValidationException("投诉反馈不存在");
+ }
+ feedback.setReply(dto.getReply());
+ feedback.setHandled(true);
+ feedback.setReplyTime(LocalDateTime.now());
+ feedbackMapper.updateById(feedback);
+ }
+}
--
Gitblit v1.9.3