From e97b734831482ccc56ef2457c8cde9892d16d7f9 Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期三, 29 五月 2024 11:58:29 +0800
Subject: [PATCH] feat:问答增加排序

---
 src/main/java/com/mindskip/xzs/domain/QuestionAnswer.java                     |    4 ++++
 src/main/java/com/mindskip/xzs/service/QuestionAnswerService.java             |    1 +
 src/main/java/com/mindskip/xzs/controller/admin/QuestionAnswerController.java |    5 +++++
 src/main/java/com/mindskip/xzs/service/impl/QuestionAnswerServiceImpl.java    |   15 ++++++++++++++-
 src/main/java/com/mindskip/xzs/domain/vo/QuestionAnswerVO.java                |    2 ++
 5 files changed, 26 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/mindskip/xzs/controller/admin/QuestionAnswerController.java b/src/main/java/com/mindskip/xzs/controller/admin/QuestionAnswerController.java
index b13a647..cae8489 100644
--- a/src/main/java/com/mindskip/xzs/controller/admin/QuestionAnswerController.java
+++ b/src/main/java/com/mindskip/xzs/controller/admin/QuestionAnswerController.java
@@ -73,4 +73,9 @@
         return RestResponse.ok("鎿嶄綔鎴愬姛");
     }
 
+    @GetMapping("getLastSequence")
+    public RestResponse<Integer> getLastSequence() {
+        return RestResponse.ok(questionAnswerService.getLastSequence());
+    }
+
 }
diff --git a/src/main/java/com/mindskip/xzs/domain/QuestionAnswer.java b/src/main/java/com/mindskip/xzs/domain/QuestionAnswer.java
index 111a9cf..c16edaa 100644
--- a/src/main/java/com/mindskip/xzs/domain/QuestionAnswer.java
+++ b/src/main/java/com/mindskip/xzs/domain/QuestionAnswer.java
@@ -6,6 +6,7 @@
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.mindskip.xzs.domain.enums.QuestionAnswerStatusEnum;
 import lombok.Data;
+import lombok.experimental.Accessors;
 
 import java.io.Serializable;
 
@@ -15,6 +16,7 @@
  */
 @TableName(value = "t_question_answer")
 @Data
+@Accessors(chain = true)
 public class QuestionAnswer implements Serializable {
 
     @TableId(type = IdType.AUTO)
@@ -28,6 +30,8 @@
 
     private QuestionAnswerStatusEnum status;
 
+    private Integer sequence;
+
     @TableLogic
     private Boolean deleted;
 
diff --git a/src/main/java/com/mindskip/xzs/domain/vo/QuestionAnswerVO.java b/src/main/java/com/mindskip/xzs/domain/vo/QuestionAnswerVO.java
index 6f52fc6..266595a 100644
--- a/src/main/java/com/mindskip/xzs/domain/vo/QuestionAnswerVO.java
+++ b/src/main/java/com/mindskip/xzs/domain/vo/QuestionAnswerVO.java
@@ -25,6 +25,8 @@
 
     private QuestionAnswerStatusEnum status;
 
+    private Integer sequence;
+
     private Boolean deleted;
 
     private static final long serialVersionUID = 1L;
diff --git a/src/main/java/com/mindskip/xzs/service/QuestionAnswerService.java b/src/main/java/com/mindskip/xzs/service/QuestionAnswerService.java
index 4808151..3e65d81 100644
--- a/src/main/java/com/mindskip/xzs/service/QuestionAnswerService.java
+++ b/src/main/java/com/mindskip/xzs/service/QuestionAnswerService.java
@@ -16,4 +16,5 @@
 
     void updateStatus(Integer id);
 
+    Integer getLastSequence();
 }
diff --git a/src/main/java/com/mindskip/xzs/service/impl/QuestionAnswerServiceImpl.java b/src/main/java/com/mindskip/xzs/service/impl/QuestionAnswerServiceImpl.java
index 0694389..3d4c38d 100644
--- a/src/main/java/com/mindskip/xzs/service/impl/QuestionAnswerServiceImpl.java
+++ b/src/main/java/com/mindskip/xzs/service/impl/QuestionAnswerServiceImpl.java
@@ -15,6 +15,7 @@
 import org.springframework.util.StringUtils;
 
 import java.util.List;
+import java.util.Objects;
 
 /**
  * @author gonghl
@@ -41,7 +42,7 @@
                 new LambdaQueryChainWrapper<>(questionAnswerMapper)
                         .like(StringUtils.hasText(questionAnswerVO.getQuestion()), QuestionAnswer::getQuestion, questionAnswerVO.getQuestion())
                         .or(StringUtils.hasText(questionAnswerVO.getQuestion()), wrapper -> wrapper.like(QuestionAnswer::getAnswer, questionAnswerVO.getQuestion()))
-                        .orderByDesc(QuestionAnswer::getId)
+                        .orderByAsc(QuestionAnswer::getSequence)
                         .list());
     }
 
@@ -49,8 +50,20 @@
     public List<QuestionAnswer> list() {
         return new LambdaQueryChainWrapper<>(questionAnswerMapper)
                 .eq(QuestionAnswer::getStatus, QuestionAnswerStatusEnum.ENABLE.getCode())
+                .orderByAsc(QuestionAnswer::getSequence)
                 .list();
     }
+
+
+    @Override
+    public Integer getLastSequence() {
+        QuestionAnswer one = new LambdaQueryChainWrapper<>(questionAnswerMapper)
+                .orderByDesc(QuestionAnswer::getSequence)
+                .last("limit 1")
+                .one();
+        return Objects.isNull(one) ? 1 : one.getSequence() + 1;
+    }
+
 }
 
 

--
Gitblit v1.8.0