From 5b04d19edea32888efa9ee4881395a21da348e3f Mon Sep 17 00:00:00 2001
From: 安瑾然 <107107765@qq.com>
Date: 星期四, 14 七月 2022 14:21:44 +0800
Subject: [PATCH] commit

---
 src/main/java/com/example/jz/dao/CauseDao.java                        |    2 
 src/main/java/com/example/jz/dao/AnnouncementDao.java                 |    4 
 src/main/java/com/example/jz/dao/ReportDao.java                       |    2 
 src/test/java/com/example/jz/dao/GroupDaoTest.java                    |   32 ++
 src/main/java/com/example/jz/modle/entity/Announcement.java           |   47 --
 src/main/java/com/example/jz/controller/MessageController.java        |   61 ---
 src/main/java/com/example/jz/modle/entity/GroupUser.java              |   47 --
 src/main/java/com/example/jz/controller/ReportController.java         |   54 +-
 src/main/java/com/example/jz/service/impl/GroupServiceImpl.java       |   53 +++
 src/test/java/com/example/jz/JzApplicationTests.java                  |    6 
 src/main/java/com/example/jz/config/SwaggerConfig.java                |    2 
 pom.xml                                                               |    8 
 src/main/java/com/example/jz/modle/entity/Group.java                  |   68 +---
 src/main/resources/banner.txt                                         |   22 +
 src/main/java/com/example/jz/controller/CommonQuestionController.java |    2 
 src/main/java/com/example/jz/modle/entity/Message.java                |   66 +--
 src/main/java/com/example/jz/service/MessageService.java              |    6 
 src/main/java/com/example/jz/service/ReportService.java               |    1 
 src/main/java/com/example/jz/dao/GroupDao.java                        |    8 
 src/main/java/com/example/jz/modle/vo/GroupMessageVo.java             |   34 ++
 src/main/java/com/example/jz/controller/SensitiveController.java      |    2 
 src/main/java/com/example/jz/controller/PublicityController.java      |    2 
 src/main/java/com/example/jz/service/GroupService.java                |   11 
 src/main/resources/mapper/GroupDao.xml                                |   18 +
 src/main/java/com/example/jz/service/impl/ReportServiceImpl.java      |   36 ++
 src/main/java/com/example/jz/modle/entity/Report.java                 |  129 -------
 src/main/java/com/example/jz/modle/vo/GroupUserVo.java                |   34 ++
 src/main/resources/mapper/MessageDao.xml                              |   20 +
 src/main/java/com/example/jz/config/MybatisPlusConfig.java            |    2 
 src/main/java/com/example/jz/JzApplication.java                       |    2 
 src/main/java/com/example/jz/dao/GroupUserDao.java                    |    2 
 src/main/java/com/example/jz/service/impl/MessageServiceImpl.java     |    8 
 src/main/resources/mapper/AnnouncementDao.xml                         |   12 
 src/main/java/com/example/jz/controller/GroupController.java          |   92 +++--
 src/main/resources/application.yml                                    |    3 
 src/main/java/com/example/jz/dao/MessageDao.java                      |    8 
 36 files changed, 499 insertions(+), 407 deletions(-)

diff --git a/pom.xml b/pom.xml
index 217e9f4..2b8c206 100644
--- a/pom.xml
+++ b/pom.xml
@@ -17,34 +17,41 @@
         <java.version>1.8</java.version>
     </properties>
     <dependencies>
+        <!-- springboot web -->
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
+        <!-- 瀹炰綋绫� -->
         <dependency>
             <groupId>org.projectlombok</groupId>
             <artifactId>lombok</artifactId>
             <optional>true</optional>
         </dependency>
+        <!-- 鏁版嵁搴撻┍鍔� -->
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
         </dependency>
+        <!-- springboot 娴嬭瘯 -->
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-test</artifactId>
             <scope>test</scope>
         </dependency>
+        <!-- mybatis-plus -->
         <dependency>
             <groupId>com.baomidou</groupId>
             <artifactId>mybatis-plus-boot-starter</artifactId>
             <version>3.3.2</version>
         </dependency>
+        <!-- minio SDK -->
         <dependency>
             <groupId>io.minio</groupId>
             <artifactId>minio</artifactId>
             <version>7.1.0</version>
         </dependency>
+        <!-- swagger API -->
         <dependency>
             <groupId>io.springfox</groupId>
             <artifactId>springfox-swagger2</artifactId>
@@ -75,6 +82,7 @@
             <artifactId>swagger-bootstrap-ui</artifactId>
             <version>1.9.6</version>
         </dependency>
+        <!-- hutool 宸ュ叿鍖� -->
         <dependency>
             <groupId>cn.hutool</groupId>
             <artifactId>hutool-all</artifactId>
diff --git a/src/main/java/com/example/jz/JzApplication.java b/src/main/java/com/example/jz/JzApplication.java
index 838dcc3..0cb7ae9 100644
--- a/src/main/java/com/example/jz/JzApplication.java
+++ b/src/main/java/com/example/jz/JzApplication.java
@@ -1,11 +1,9 @@
 package com.example.jz;
 
-import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 
 @SpringBootApplication
-@MapperScan("com.example.jz.dao")
 public class JzApplication {
 
     public static void main(String[] args) {
diff --git a/src/main/java/com/example/jz/config/MybatisPlusConfig.java b/src/main/java/com/example/jz/config/MybatisPlusConfig.java
index aa3fe75..b341f39 100644
--- a/src/main/java/com/example/jz/config/MybatisPlusConfig.java
+++ b/src/main/java/com/example/jz/config/MybatisPlusConfig.java
@@ -11,6 +11,7 @@
 @Configuration
 @MapperScan({"com.example.jz.dao"})
 public class MybatisPlusConfig {
+
     /**
      * 鍒嗛〉鎻掍欢
      *
@@ -21,5 +22,4 @@
     public PaginationInterceptor paginationInterceptor() {
         return new PaginationInterceptor();
     }
-
 }
diff --git a/src/main/java/com/example/jz/config/SwaggerConfig.java b/src/main/java/com/example/jz/config/SwaggerConfig.java
index 39929ea..58da3fe 100644
--- a/src/main/java/com/example/jz/config/SwaggerConfig.java
+++ b/src/main/java/com/example/jz/config/SwaggerConfig.java
@@ -31,7 +31,7 @@
                 .title("闈掔緤缁忎睛鎺ュ彛鏂囨。")
                 .description("闈掔緤缁忎睛鎺ュ彛鏂囨。Swagger鐗�")
                 .termsOfServiceUrl("https://www.baidu.com/")
-                .contact(new Contact("浼樺垱绔�", "https://www.baidu.com/", "1070107765@qq.com"))
+                .contact(new Contact("浼樺垱鍔�", "https://www.baidu.com/", "1070107765@qq.com"))
                 .version("1.0")
                 .build();
     }
diff --git a/src/main/java/com/example/jz/controller/CommonQuestionController.java b/src/main/java/com/example/jz/controller/CommonQuestionController.java
index 3fecef8..6445380 100644
--- a/src/main/java/com/example/jz/controller/CommonQuestionController.java
+++ b/src/main/java/com/example/jz/controller/CommonQuestionController.java
@@ -24,7 +24,7 @@
  */
 @RestController
 @RequestMapping("commonQuestion")
-@Api(tags = "甯歌闂琛�(CommonQuestion)琛ㄦ帴鍙�")
+@Api(tags = "甯歌闂鎺ュ彛")
 public class CommonQuestionController extends ApiController {
     /**
      * 鏈嶅姟瀵硅薄
diff --git a/src/main/java/com/example/jz/controller/GroupController.java b/src/main/java/com/example/jz/controller/GroupController.java
index 933a24c..41a8655 100644
--- a/src/main/java/com/example/jz/controller/GroupController.java
+++ b/src/main/java/com/example/jz/controller/GroupController.java
@@ -1,13 +1,20 @@
 package com.example.jz.controller;
 
 
-
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.api.ApiController;
 import com.baomidou.mybatisplus.extension.api.R;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.example.jz.modle.entity.Announcement;
 import com.example.jz.modle.entity.Group;
+import com.example.jz.modle.vo.GroupMessageVo;
+import com.example.jz.modle.vo.GroupUserVo;
 import com.example.jz.service.GroupService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
@@ -16,73 +23,74 @@
 
 /**
  * 缇よ〃
-(Group)琛ㄦ帶鍒跺眰
+ * (Group)琛ㄦ帶鍒跺眰
  *
  * @author makejava
  * @since 2022-07-11 16:35:57
  */
 @RestController
 @RequestMapping("group")
+@Api(tags = "缇ょ粍鎺ュ彛")
 public class GroupController extends ApiController {
-    /**
-     * 鏈嶅姟瀵硅薄
-     */
-    @Resource
     private GroupService groupService;
 
+    @Autowired
+    public void setGroupService(GroupService groupService) {
+        this.groupService = groupService;
+    }
     /**
-     * 鍒嗛〉鏌ヨ鎵�鏈夋暟鎹�
+     * 鏍规嵁缇ょ粍id鑾峰彇褰撳墠缇ょ粍鎵�鏈夌殑娑堟伅
      *
-     * @param page 鍒嗛〉瀵硅薄
-     * @param group 鏌ヨ瀹炰綋
-     * @return 鎵�鏈夋暟鎹�
+     * @param id 缇ょ粍id
+     * @return 褰撳墠缇ょ粍鎵�鏈夌殑娑堟伅
      */
-    @GetMapping
-    public R selectAll(Page<Group> page, Group group) {
-        return success(this.groupService.page(page, new QueryWrapper<>(group)));
+    @GetMapping("getAllMessage")
+    @ApiOperation(value = "鑾峰彇褰撳墠缇ょ粍鎵�鏈夌殑娑堟伅")
+    @ApiImplicitParam(name = "id", value = "缇ょ粍id", required = true, dataType = "Integer")
+    public R<List<GroupMessageVo>> getAllMessage(@RequestParam("id") Integer id) {
+        return R.ok(groupService.getAllMessage(id));
     }
 
     /**
-     * 閫氳繃涓婚敭鏌ヨ鍗曟潯鏁版嵁
+     * 鏍规嵁缇ょ粍id鑾峰彇褰撳墠缇ょ粍鎵�鏈夊叕鍛�
      *
-     * @param id 涓婚敭
-     * @return 鍗曟潯鏁版嵁
+     * @param id 缇ょ粍id
+     * @return 褰撳墠缇ょ粍鎵�鏈夌殑娑堟伅
      */
-    @GetMapping("{id}")
-    public R selectOne(@PathVariable Serializable id) {
-        return success(this.groupService.getById(id));
+    @GetMapping("getAllNotice")
+    @ApiOperation(value = "鑾峰彇褰撳墠缇ょ粍鎵�鏈夌殑鍏憡")
+    @ApiImplicitParam(name = "id", value = "缇ょ粍id", required = true, dataType = "Integer")
+    public R<List<Announcement>> getAllNotice(@RequestParam("id") Integer id) {
+        return R.ok(groupService.getAllNotice(id));
     }
 
     /**
-     * 鏂板鏁版嵁
+     * 鍙戦�佷俊鎭�
      *
-     * @param group 瀹炰綋瀵硅薄
-     * @return 鏂板缁撴灉
+     * @param id   缇ょ粍id
+     * @param text 娑堟伅鍐呭
+     * @return 鍙戦�佺粨鏋�
      */
-    @PostMapping
-    public R insert(@RequestBody Group group) {
-        return success(this.groupService.save(group));
+    @GetMapping("sendMessage")
+    @ApiOperation(value = "鍙戦�佷俊鎭�")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "text", value = "娑堟伅鏂囨湰", required = true, dataType = "String"),
+            @ApiImplicitParam(name = "id", value = "缇ょ粍id", required = true, dataType = "Integer")
+    })
+    public R<Boolean> sendMessage(@RequestParam("id") Integer id, @RequestParam("text") String text) {
+        return R.ok(groupService.sendMessage(id, text));
     }
 
     /**
-     * 淇敼鏁版嵁
+     * 鑾峰彇缇ょ粍鎵�鏈変汉鍛樺垪琛�
      *
-     * @param group 瀹炰綋瀵硅薄
-     * @return 淇敼缁撴灉
+     * @param id 缇ょ粍id
+     * @return 缇ょ粍鎵�鏈変汉鍛樺垪琛�
      */
-    @PutMapping
-    public R update(@RequestBody Group group) {
-        return success(this.groupService.updateById(group));
-    }
-
-    /**
-     * 鍒犻櫎鏁版嵁
-     *
-     * @param idList 涓婚敭缁撳悎
-     * @return 鍒犻櫎缁撴灉
-     */
-    @DeleteMapping
-    public R delete(@RequestParam("idList") List<Long> idList) {
-        return success(this.groupService.removeByIds(idList));
+    @GetMapping("getAllUser")
+    @ApiOperation(value = "鑾峰彇缇ょ粍鎵�鏈変汉鍛樺垪琛�")
+    @ApiImplicitParam(name = "id", value = "缇ょ粍id", required = true, dataType = "Integer")
+    public R<List<GroupUserVo>> getAllUser(@RequestParam("id") Integer id) {
+        return R.ok(groupService.getAllUser(id));
     }
 }
diff --git a/src/main/java/com/example/jz/controller/MessageController.java b/src/main/java/com/example/jz/controller/MessageController.java
index bd4137e..6f41f6e 100644
--- a/src/main/java/com/example/jz/controller/MessageController.java
+++ b/src/main/java/com/example/jz/controller/MessageController.java
@@ -1,13 +1,17 @@
 package com.example.jz.controller;
 
 
-
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.api.ApiController;
 import com.baomidou.mybatisplus.extension.api.R;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.example.jz.modle.entity.Message;
+import com.example.jz.modle.vo.GroupMessageVo;
 import com.example.jz.service.MessageService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
@@ -22,6 +26,7 @@
  */
 @RestController
 @RequestMapping("message")
+@Api(tags = "缇ょ粍娑堟伅")
 public class MessageController extends ApiController {
     /**
      * 鏈嶅姟瀵硅薄
@@ -29,59 +34,5 @@
     @Resource
     private MessageService messageService;
 
-    /**
-     * 鍒嗛〉鏌ヨ鎵�鏈夋暟鎹�
-     *
-     * @param page 鍒嗛〉瀵硅薄
-     * @param message 鏌ヨ瀹炰綋
-     * @return 鎵�鏈夋暟鎹�
-     */
-    @GetMapping
-    public R selectAll(Page<Message> page, Message message) {
-        return success(this.messageService.page(page, new QueryWrapper<>(message)));
-    }
 
-    /**
-     * 閫氳繃涓婚敭鏌ヨ鍗曟潯鏁版嵁
-     *
-     * @param id 涓婚敭
-     * @return 鍗曟潯鏁版嵁
-     */
-    @GetMapping("{id}")
-    public R selectOne(@PathVariable Serializable id) {
-        return success(this.messageService.getById(id));
-    }
-
-    /**
-     * 鏂板鏁版嵁
-     *
-     * @param message 瀹炰綋瀵硅薄
-     * @return 鏂板缁撴灉
-     */
-    @PostMapping
-    public R insert(@RequestBody Message message) {
-        return success(this.messageService.save(message));
-    }
-
-    /**
-     * 淇敼鏁版嵁
-     *
-     * @param message 瀹炰綋瀵硅薄
-     * @return 淇敼缁撴灉
-     */
-    @PutMapping
-    public R update(@RequestBody Message message) {
-        return success(this.messageService.updateById(message));
-    }
-
-    /**
-     * 鍒犻櫎鏁版嵁
-     *
-     * @param idList 涓婚敭缁撳悎
-     * @return 鍒犻櫎缁撴灉
-     */
-    @DeleteMapping
-    public R delete(@RequestParam("idList") List<Long> idList) {
-        return success(this.messageService.removeByIds(idList));
-    }
 }
diff --git a/src/main/java/com/example/jz/controller/PublicityController.java b/src/main/java/com/example/jz/controller/PublicityController.java
index 7604fde..107e9bf 100644
--- a/src/main/java/com/example/jz/controller/PublicityController.java
+++ b/src/main/java/com/example/jz/controller/PublicityController.java
@@ -24,7 +24,7 @@
  */
 @RestController
 @RequestMapping("publicity")
-@Api(tags = "鍏叡瀹d紶琛�(Publicity)琛ㄦ帴鍙�")
+@Api(tags = "鍏叡瀹d紶鎺ュ彛")
 public class PublicityController {
     /**
      * 鏈嶅姟瀵硅薄
diff --git a/src/main/java/com/example/jz/controller/ReportController.java b/src/main/java/com/example/jz/controller/ReportController.java
index 7e4bdf8..cfed973 100644
--- a/src/main/java/com/example/jz/controller/ReportController.java
+++ b/src/main/java/com/example/jz/controller/ReportController.java
@@ -1,27 +1,30 @@
 package com.example.jz.controller;
 
-
-
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.api.ApiController;
-import com.baomidou.mybatisplus.extension.api.R;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.example.jz.modle.R;
 import com.example.jz.modle.entity.Report;
 import com.example.jz.service.ReportService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
 import java.io.Serializable;
+import java.util.Date;
 import java.util.List;
 
 /**
  * 鎶ユ琛�(Report)琛ㄦ帶鍒跺眰
  *
- * @author makejava
+ * @author 瀹夌懢鐒�
  * @since 2022-07-13 11:52:58
  */
 @RestController
 @RequestMapping("report")
+@Api(value = "鎶ユ鎺ュ彛", tags = "鎶ユ鎺ュ彛")
 public class ReportController extends ApiController {
     /**
      * 鏈嶅姟瀵硅薄
@@ -32,13 +35,14 @@
     /**
      * 鍒嗛〉鏌ヨ鎵�鏈夋暟鎹�
      *
-     * @param page 鍒嗛〉瀵硅薄
+     * @param page   鍒嗛〉瀵硅薄
      * @param report 鏌ヨ瀹炰綋
      * @return 鎵�鏈夋暟鎹�
      */
     @GetMapping
-    public R selectAll(Page<Report> page, Report report) {
-        return success(this.reportService.page(page, new QueryWrapper<>(report)));
+    @ApiOperation(value = "鍒嗛〉鏌ヨ鎵�鏈夋暟鎹�")
+    public R<IPage<Report>> selectAll(Page<Report> page, Report report) {
+        return R.ok(reportService.page(page, new QueryWrapper<>(report)));
     }
 
     /**
@@ -48,41 +52,37 @@
      * @return 鍗曟潯鏁版嵁
      */
     @GetMapping("{id}")
-    public R selectOne(@PathVariable Serializable id) {
-        return success(this.reportService.getById(id));
+    @ApiOperation(value = "閫氳繃涓婚敭鏌ヨ鍗曟潯鏁版嵁")
+    public R<Report> selectOne(@PathVariable Serializable id) {
+        return R.ok(reportService.getById(id));
     }
 
     /**
-     * 鏂板鏁版嵁
+     * 鎶ユ
      *
      * @param report 瀹炰綋瀵硅薄
      * @return 鏂板缁撴灉
      */
     @PostMapping
-    public R insert(@RequestBody Report report) {
-        return success(this.reportService.save(report));
+    @ApiOperation(value = "鎶ユ")
+    public R<Boolean> insert(@RequestBody Report report) {
+        report.setCtime(new Date());
+        report.setStatus(0);
+        //TODO 鍔ㄦ�佽幏鍙栧綋鍓嶇殑鐢ㄦ埛id
+        report.setUserId(1);
+        return R.ok(reportService.save(report));
     }
 
     /**
-     * 淇敼鏁版嵁
+     * 瀹℃牳閫氳繃骞朵笖鍏宠仈妗堜欢id
      *
      * @param report 瀹炰綋瀵硅薄
      * @return 淇敼缁撴灉
      */
-    @PutMapping
-    public R update(@RequestBody Report report) {
-        return success(this.reportService.updateById(report));
-    }
-
-    /**
-     * 鍒犻櫎鏁版嵁
-     *
-     * @param idList 涓婚敭缁撳悎
-     * @return 鍒犻櫎缁撴灉
-     */
-    @DeleteMapping
-    public R delete(@RequestParam("idList") List<Long> idList) {
-        return success(this.reportService.removeByIds(idList));
+    @PostMapping("/audit")
+    @ApiOperation(value = "瀹℃牳閫氳繃")
+    public R<Boolean> audit(@RequestBody Report report) {
+        return R.ok(reportService.audit(report));
     }
 }
 
diff --git a/src/main/java/com/example/jz/controller/SensitiveController.java b/src/main/java/com/example/jz/controller/SensitiveController.java
index ca2f760..7f44460 100644
--- a/src/main/java/com/example/jz/controller/SensitiveController.java
+++ b/src/main/java/com/example/jz/controller/SensitiveController.java
@@ -31,7 +31,7 @@
 @RestController
 @RequestMapping("sensitive")
 @ApiOperation("鏁忔劅璇嶈〃(Sensitive)琛ㄦ帶鍒跺眰")
-@Api(tags = "鏁忔劅璇嶈〃(Sensitive)琛ㄦ帴鍙�")
+@Api(tags = "鏁忔劅璇嶆帴鍙�")
 public class SensitiveController extends ApiController {
     /**
      * 鏈嶅姟瀵硅薄
diff --git a/src/main/java/com/example/jz/dao/AnnouncementDao.java b/src/main/java/com/example/jz/dao/AnnouncementDao.java
index bc48731..9cc4c1e 100644
--- a/src/main/java/com/example/jz/dao/AnnouncementDao.java
+++ b/src/main/java/com/example/jz/dao/AnnouncementDao.java
@@ -2,6 +2,9 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.example.jz.modle.entity.Announcement;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
 
 /**
  * 鍏憡琛�(Announcement)琛ㄦ暟鎹簱璁块棶灞�
@@ -9,6 +12,7 @@
  * @author makejava
  * @since 2022-07-11 16:35:52
  */
+@Mapper
 public interface AnnouncementDao extends BaseMapper<Announcement> {
 
 }
diff --git a/src/main/java/com/example/jz/dao/CauseDao.java b/src/main/java/com/example/jz/dao/CauseDao.java
index ae27aa3..b3a873d 100644
--- a/src/main/java/com/example/jz/dao/CauseDao.java
+++ b/src/main/java/com/example/jz/dao/CauseDao.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.example.jz.modle.entity.Cause;
+import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 妗堜欢琛�(Cause)琛ㄦ暟鎹簱璁块棶灞�
@@ -9,6 +10,7 @@
  * @author makejava
  * @since 2022-07-13 11:52:57
  */
+@Mapper
 public interface CauseDao extends BaseMapper<Cause> {
 
 }
diff --git a/src/main/java/com/example/jz/dao/GroupDao.java b/src/main/java/com/example/jz/dao/GroupDao.java
index d7dbcea..3cb3ef6 100644
--- a/src/main/java/com/example/jz/dao/GroupDao.java
+++ b/src/main/java/com/example/jz/dao/GroupDao.java
@@ -2,6 +2,11 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.example.jz.modle.entity.Group;
+import com.example.jz.modle.vo.GroupUserVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * 缇よ〃
@@ -10,6 +15,9 @@
  * @author makejava
  * @since 2022-07-11 16:35:57
  */
+@Mapper
 public interface GroupDao extends BaseMapper<Group> {
 
+    List<GroupUserVo> getAllUser(@Param("groupId") Integer id);
+
 }
diff --git a/src/main/java/com/example/jz/dao/GroupUserDao.java b/src/main/java/com/example/jz/dao/GroupUserDao.java
index f7514e4..1f9da2d 100644
--- a/src/main/java/com/example/jz/dao/GroupUserDao.java
+++ b/src/main/java/com/example/jz/dao/GroupUserDao.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.example.jz.modle.entity.GroupUser;
+import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 鐢ㄦ埛鍜岀兢涓棿琛�(GroupUser)琛ㄦ暟鎹簱璁块棶灞�
@@ -9,6 +10,7 @@
  * @author makejava
  * @since 2022-07-11 16:35:57
  */
+@Mapper
 public interface GroupUserDao extends BaseMapper<GroupUser> {
 
 }
diff --git a/src/main/java/com/example/jz/dao/MessageDao.java b/src/main/java/com/example/jz/dao/MessageDao.java
index 621a475..ff7d210 100644
--- a/src/main/java/com/example/jz/dao/MessageDao.java
+++ b/src/main/java/com/example/jz/dao/MessageDao.java
@@ -2,6 +2,11 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.example.jz.modle.entity.Message;
+import com.example.jz.modle.vo.GroupMessageVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * 娑堟伅琛�(Message)琛ㄦ暟鎹簱璁块棶灞�
@@ -9,6 +14,9 @@
  * @author makejava
  * @since 2022-07-11 16:35:57
  */
+@Mapper
 public interface MessageDao extends BaseMapper<Message> {
 
+    List<GroupMessageVo> getAllMessageByGroup(@Param("groupId") Integer id);
+
 }
diff --git a/src/main/java/com/example/jz/dao/ReportDao.java b/src/main/java/com/example/jz/dao/ReportDao.java
index 1ec0ee3..34690be 100644
--- a/src/main/java/com/example/jz/dao/ReportDao.java
+++ b/src/main/java/com/example/jz/dao/ReportDao.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.example.jz.modle.entity.Report;
+import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 鎶ユ琛�(Report)琛ㄦ暟鎹簱璁块棶灞�
@@ -9,6 +10,7 @@
  * @author makejava
  * @since 2022-07-13 11:52:58
  */
+@Mapper
 public interface ReportDao extends BaseMapper<Report> {
 
 }
diff --git a/src/main/java/com/example/jz/modle/entity/Announcement.java b/src/main/java/com/example/jz/modle/entity/Announcement.java
index 785cfd4..2cd3553 100644
--- a/src/main/java/com/example/jz/modle/entity/Announcement.java
+++ b/src/main/java/com/example/jz/modle/entity/Announcement.java
@@ -1,5 +1,12 @@
 package com.example.jz.modle.entity;
 
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
 import java.io.Serializable;
 import java.util.Date;
 
@@ -9,6 +16,12 @@
  * @author makejava
  * @since 2022-07-12 16:50:56
  */
+@TableName("qyjz.announcement")
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
 public class Announcement implements Serializable {
     private static final long serialVersionUID = -64538879138052915L;
     /**
@@ -27,39 +40,5 @@
      * 鍒涘缓鏃堕棿
      */
     private Date ctime;
-
-
-    public String getText() {
-        return text;
-    }
-
-    public void setText(String text) {
-        this.text = text;
-    }
-
-    public Integer getGroupId() {
-        return groupId;
-    }
-
-    public void setGroupId(Integer groupId) {
-        this.groupId = groupId;
-    }
-
-    public Integer getId() {
-        return id;
-    }
-
-    public void setId(Integer id) {
-        this.id = id;
-    }
-
-    public Date getCtime() {
-        return ctime;
-    }
-
-    public void setCtime(Date ctime) {
-        this.ctime = ctime;
-    }
-
 }
 
diff --git a/src/main/java/com/example/jz/modle/entity/Group.java b/src/main/java/com/example/jz/modle/entity/Group.java
index 1d7b931..6628fac 100644
--- a/src/main/java/com/example/jz/modle/entity/Group.java
+++ b/src/main/java/com/example/jz/modle/entity/Group.java
@@ -1,6 +1,12 @@
 package com.example.jz.modle.entity;
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
 
 import java.io.Serializable;
 import java.util.Date;
@@ -9,10 +15,15 @@
  * 缇よ〃
 (Group)瀹炰綋绫�
  *
- * @author makejava
+ * @author 瀹夌懢鐒�
  * @since 2022-07-12 16:50:59
  */
 @TableName("qyjz.group")
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
 public class Group implements Serializable {
     private static final long serialVersionUID = 208063400600909704L;
     /**
@@ -30,6 +41,7 @@
     /**
      * 缇� id
      */
+    @TableId
     private Integer id;
     /**
      * 鍒涘缓浜篿d
@@ -39,55 +51,9 @@
      * 缇ゅ垱寤烘椂闂�
      */
     private Date ctime;
-
-
-    public String getGroupName() {
-        return groupName;
-    }
-
-    public void setGroupName(String groupName) {
-        this.groupName = groupName;
-    }
-
-    public Date getUpdateTime() {
-        return updateTime;
-    }
-
-    public void setUpdateTime(Date updateTime) {
-        this.updateTime = updateTime;
-    }
-
-    public Integer getGroupAnnouncementId() {
-        return groupAnnouncementId;
-    }
-
-    public void setGroupAnnouncementId(Integer groupAnnouncementId) {
-        this.groupAnnouncementId = groupAnnouncementId;
-    }
-
-    public Integer getId() {
-        return id;
-    }
-
-    public void setId(Integer id) {
-        this.id = id;
-    }
-
-    public Integer getUserId() {
-        return userId;
-    }
-
-    public void setUserId(Integer userId) {
-        this.userId = userId;
-    }
-
-    public Date getCtime() {
-        return ctime;
-    }
-
-    public void setCtime(Date ctime) {
-        this.ctime = ctime;
-    }
-
+    /**
+     * 妗堜欢id
+     */
+    private Integer causeId;
 }
 
diff --git a/src/main/java/com/example/jz/modle/entity/GroupUser.java b/src/main/java/com/example/jz/modle/entity/GroupUser.java
index 6ebc272..29f829b 100644
--- a/src/main/java/com/example/jz/modle/entity/GroupUser.java
+++ b/src/main/java/com/example/jz/modle/entity/GroupUser.java
@@ -1,5 +1,12 @@
 package com.example.jz.modle.entity;
 
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
 import java.io.Serializable;
 import java.util.Date;
 
@@ -9,6 +16,12 @@
  * @author makejava
  * @since 2022-07-12 16:50:59
  */
+@TableName("qyjz.group_user")
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
 public class GroupUser implements Serializable {
     private static final long serialVersionUID = -27152838957515341L;
     /**
@@ -27,39 +40,5 @@
      * 鍒涘缓鏃堕棿
      */
     private Date ctime;
-
-
-    public Integer getUserId() {
-        return userId;
-    }
-
-    public void setUserId(Integer userId) {
-        this.userId = userId;
-    }
-
-    public Integer getGroupId() {
-        return groupId;
-    }
-
-    public void setGroupId(Integer groupId) {
-        this.groupId = groupId;
-    }
-
-    public Object getBanSpeech() {
-        return banSpeech;
-    }
-
-    public void setBanSpeech(Object banSpeech) {
-        this.banSpeech = banSpeech;
-    }
-
-    public Date getCtime() {
-        return ctime;
-    }
-
-    public void setCtime(Date ctime) {
-        this.ctime = ctime;
-    }
-
 }
 
diff --git a/src/main/java/com/example/jz/modle/entity/Message.java b/src/main/java/com/example/jz/modle/entity/Message.java
index fc311c4..777316b 100644
--- a/src/main/java/com/example/jz/modle/entity/Message.java
+++ b/src/main/java/com/example/jz/modle/entity/Message.java
@@ -1,5 +1,14 @@
 package com.example.jz.modle.entity;
 
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
 import java.io.Serializable;
 import java.util.Date;
 
@@ -9,7 +18,13 @@
  * @author makejava
  * @since 2022-07-12 16:50:59
  */
-public class Message implements Serializable {
+@TableName("qyjz.message")
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+public class Message  extends Model<Message> implements Serializable {
     private static final long serialVersionUID = -28737108473853898L;
     /**
      * 娑堟伅鍐呭
@@ -26,50 +41,19 @@
     /**
      * 娑堟伅id
      */
+    @TableId
     private Integer id;
     
     private Date ctime;
 
-
-    public String getText() {
-        return text;
+    /**
+     * 鑾峰彇涓婚敭鍊�
+     *
+     * @return 涓婚敭鍊�
+     */
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
     }
-
-    public void setText(String text) {
-        this.text = text;
-    }
-
-    public Integer getUserId() {
-        return userId;
-    }
-
-    public void setUserId(Integer userId) {
-        this.userId = userId;
-    }
-
-    public Integer getGroupId() {
-        return groupId;
-    }
-
-    public void setGroupId(Integer groupId) {
-        this.groupId = groupId;
-    }
-
-    public Integer getId() {
-        return id;
-    }
-
-    public void setId(Integer id) {
-        this.id = id;
-    }
-
-    public Date getCtime() {
-        return ctime;
-    }
-
-    public void setCtime(Date ctime) {
-        this.ctime = ctime;
-    }
-
 }
 
diff --git a/src/main/java/com/example/jz/modle/entity/Report.java b/src/main/java/com/example/jz/modle/entity/Report.java
index 1c6db75..0a8b23f 100644
--- a/src/main/java/com/example/jz/modle/entity/Report.java
+++ b/src/main/java/com/example/jz/modle/entity/Report.java
@@ -4,6 +4,12 @@
 
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
 import java.io.Serializable;
 
 /**
@@ -13,6 +19,11 @@
  * @since 2022-07-13 11:52:58
  */
 @TableName("qyjz.report")
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
 public class Report extends Model<Report> {
     //妗堜欢ID
     private Integer id;
@@ -23,7 +34,7 @@
     //鏄惁浠e姙 1锛堜唬鍔烇級 0锛堜笉鏄唬鍔烇級
     private String isCommission;
     //娑夋閲戦
-    private String amountInvolved;
+    private Double amountInvolved;
     //鎶ユ鏉愭枡鍥剧墖鍦板潃 澶氫釜鐢�,鍒嗛殧
     private String reportMaterials;
     //鎶ユ鏃堕棿
@@ -40,120 +51,8 @@
     private Date cheatTime;
     //琛ュ厖淇℃伅
     private String information;
-    //妗堜欢id
+    //妗堜欢Id
     private Integer causeId;
-
-    public Integer getCauseId() {
-        return causeId;
-    }
-
-    public void setCauseId(Integer causeId) {
-        this.causeId = causeId;
-    }
-
-    public Integer getId() {
-        return id;
-    }
-
-    public void setId(Integer id) {
-        this.id = id;
-    }
-
-    public String getPic() {
-        return pic;
-    }
-
-    public void setPic(String pic) {
-        this.pic = pic;
-    }
-
-    public Integer getUserId() {
-        return userId;
-    }
-
-    public void setUserId(Integer userId) {
-        this.userId = userId;
-    }
-
-    public String getIsCommission() {
-        return isCommission;
-    }
-
-    public void setIsCommission(String isCommission) {
-        this.isCommission = isCommission;
-    }
-
-    public String getAmountInvolved() {
-        return amountInvolved;
-    }
-
-    public void setAmountInvolved(String amountInvolved) {
-        this.amountInvolved = amountInvolved;
-    }
-
-    public String getReportMaterials() {
-        return reportMaterials;
-    }
-
-    public void setReportMaterials(String reportMaterials) {
-        this.reportMaterials = reportMaterials;
-    }
-
-    public Date getReportTime() {
-        return reportTime;
-    }
-
-    public void setReportTime(Date reportTime) {
-        this.reportTime = reportTime;
-    }
-
-    public String getReportMethod() {
-        return reportMethod;
-    }
-
-    public void setReportMethod(String reportMethod) {
-        this.reportMethod = reportMethod;
-    }
-
-    public Integer getCreator() {
-        return creator;
-    }
-
-    public void setCreator(Integer creator) {
-        this.creator = creator;
-    }
-
-    public Integer getStatus() {
-        return status;
-    }
-
-    public void setStatus(Integer status) {
-        this.status = status;
-    }
-
-    public Date getCtime() {
-        return ctime;
-    }
-
-    public void setCtime(Date ctime) {
-        this.ctime = ctime;
-    }
-
-    public Date getCheatTime() {
-        return cheatTime;
-    }
-
-    public void setCheatTime(Date cheatTime) {
-        this.cheatTime = cheatTime;
-    }
-
-    public String getInformation() {
-        return information;
-    }
-
-    public void setInformation(String information) {
-        this.information = information;
-    }
 
     /**
      * 鑾峰彇涓婚敭鍊�
@@ -164,5 +63,5 @@
     protected Serializable pkVal() {
         return this.id;
     }
-    }
+}
 
diff --git a/src/main/java/com/example/jz/modle/vo/GroupMessageVo.java b/src/main/java/com/example/jz/modle/vo/GroupMessageVo.java
new file mode 100644
index 0000000..f4596a9
--- /dev/null
+++ b/src/main/java/com/example/jz/modle/vo/GroupMessageVo.java
@@ -0,0 +1,34 @@
+package com.example.jz.modle.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * @author 瀹夌懢鐒�
+ * @data 2022/7/14 - 9:56 AM
+ * @description
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+public class GroupMessageVo {
+    /**
+     * 鐢ㄦ埛鍚�
+     */
+    private String userName;
+    /**
+     * 鏂囨湰鍐呭
+     */
+    private String text;
+    /**
+     * 鍒涘缓鏃堕棿
+     */
+    private Date ctime;
+}
diff --git a/src/main/java/com/example/jz/modle/vo/GroupUserVo.java b/src/main/java/com/example/jz/modle/vo/GroupUserVo.java
new file mode 100644
index 0000000..dd6dbc3
--- /dev/null
+++ b/src/main/java/com/example/jz/modle/vo/GroupUserVo.java
@@ -0,0 +1,34 @@
+package com.example.jz.modle.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * @author 瀹夌懢鐒�
+ * @data 2022/7/14 - 9:56 AM
+ * @description
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+public class GroupUserVo {
+    /**
+     * 鐢ㄦ埛鍚�
+     */
+    private String userId;
+    /**
+     * 鏂囨湰鍐呭
+     */
+    private String userName;
+    /**
+     * 鏄惁绂佽█(0涓哄惁1涓烘槸锛�
+     */
+    private Object banSpeech;
+}
diff --git a/src/main/java/com/example/jz/service/GroupService.java b/src/main/java/com/example/jz/service/GroupService.java
index a87496f..56e0547 100644
--- a/src/main/java/com/example/jz/service/GroupService.java
+++ b/src/main/java/com/example/jz/service/GroupService.java
@@ -1,7 +1,12 @@
 package com.example.jz.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.example.jz.modle.entity.Announcement;
 import com.example.jz.modle.entity.Group;
+import com.example.jz.modle.vo.GroupMessageVo;
+import com.example.jz.modle.vo.GroupUserVo;
+
+import java.util.List;
 
 /**
  * 缇よ〃
@@ -11,5 +16,11 @@
  * @since 2022-07-11 16:35:57
  */
 public interface GroupService extends IService<Group> {
+    List<GroupMessageVo> getAllMessage(Integer id);
 
+    List<Announcement> getAllNotice(Integer id);
+
+    Boolean sendMessage(Integer id, String text);
+
+    List<GroupUserVo> getAllUser(Integer id);
 }
diff --git a/src/main/java/com/example/jz/service/MessageService.java b/src/main/java/com/example/jz/service/MessageService.java
index 4c9a28c..5446d5c 100644
--- a/src/main/java/com/example/jz/service/MessageService.java
+++ b/src/main/java/com/example/jz/service/MessageService.java
@@ -2,6 +2,9 @@
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.example.jz.modle.entity.Message;
+import com.example.jz.modle.vo.GroupMessageVo;
+
+import java.util.List;
 
 /**
  * 娑堟伅琛�(Message)琛ㄦ湇鍔℃帴鍙�
@@ -11,4 +14,7 @@
  */
 public interface MessageService extends IService<Message> {
 
+
+
+
 }
diff --git a/src/main/java/com/example/jz/service/ReportService.java b/src/main/java/com/example/jz/service/ReportService.java
index 5f21172..90e6203 100644
--- a/src/main/java/com/example/jz/service/ReportService.java
+++ b/src/main/java/com/example/jz/service/ReportService.java
@@ -11,5 +11,6 @@
  */
 public interface ReportService extends IService<Report> {
 
+    Boolean audit(Report report);
 }
 
diff --git a/src/main/java/com/example/jz/service/impl/GroupServiceImpl.java b/src/main/java/com/example/jz/service/impl/GroupServiceImpl.java
index 4e23eca..a4cfab5 100644
--- a/src/main/java/com/example/jz/service/impl/GroupServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/GroupServiceImpl.java
@@ -1,19 +1,70 @@
 package com.example.jz.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.example.jz.dao.AnnouncementDao;
 import com.example.jz.dao.GroupDao;
+import com.example.jz.dao.MessageDao;
+import com.example.jz.modle.entity.Announcement;
 import com.example.jz.modle.entity.Group;
+import com.example.jz.modle.entity.Message;
+import com.example.jz.modle.vo.GroupMessageVo;
+import com.example.jz.modle.vo.GroupUserVo;
 import com.example.jz.service.GroupService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Date;
+import java.util.List;
 
 /**
  * 缇よ〃
-(Group)琛ㄦ湇鍔″疄鐜扮被
+ * (Group)琛ㄦ湇鍔″疄鐜扮被
  *
  * @author makejava
  * @since 2022-07-11 16:35:57
  */
 @Service("groupService")
 public class GroupServiceImpl extends ServiceImpl<GroupDao, Group> implements GroupService {
+    private MessageDao messageDao;
+    private AnnouncementDao announcementDao;
+    private GroupDao groupDao;
 
+    @Autowired
+    public void setMessageDao(MessageDao messageDao) {
+        this.messageDao = messageDao;
+    }
+
+    @Autowired
+    public void setAnnouncementDao(AnnouncementDao announcementDao) {
+        this.announcementDao = announcementDao;
+    }
+
+    @Autowired
+    public void setGroupDao(GroupDao groupDao) {
+        this.groupDao = groupDao;
+    }
+
+    @Override
+    public List<GroupMessageVo> getAllMessage(Integer id) {
+        return messageDao.getAllMessageByGroup(id);
+    }
+
+    @Override
+    public List<Announcement> getAllNotice(Integer id) {
+        return announcementDao.selectList(new LambdaQueryWrapper<>(Announcement.class).eq(Announcement::getGroupId, id));
+    }
+
+    @Override
+    public Boolean sendMessage(Integer id, String text) {
+        // todo 鍔ㄦ�佽幏鍙栧綋鍓嶇櫥褰曠敤鎴风殑id
+        Message message = new Message().setUserId(1).setText(text).setGroupId(id).setCtime(new Date());
+        return messageDao.insert(message) > 0;
+    }
+
+    @Override
+    public List<GroupUserVo> getAllUser(Integer id) {
+        return groupDao.getAllUser(id);
+    }
 }
diff --git a/src/main/java/com/example/jz/service/impl/MessageServiceImpl.java b/src/main/java/com/example/jz/service/impl/MessageServiceImpl.java
index 7ef1480..32c93b3 100644
--- a/src/main/java/com/example/jz/service/impl/MessageServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/MessageServiceImpl.java
@@ -3,8 +3,13 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.example.jz.dao.MessageDao;
 import com.example.jz.modle.entity.Message;
+import com.example.jz.modle.vo.GroupMessageVo;
 import com.example.jz.service.MessageService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
 
 /**
  * 娑堟伅琛�(Message)琛ㄦ湇鍔″疄鐜扮被
@@ -14,5 +19,8 @@
  */
 @Service("messageService")
 public class MessageServiceImpl extends ServiceImpl<MessageDao, Message> implements MessageService {
+    @Autowired
+    private MessageDao messageDao;
+
 
 }
diff --git a/src/main/java/com/example/jz/service/impl/ReportServiceImpl.java b/src/main/java/com/example/jz/service/impl/ReportServiceImpl.java
index 924ec9f..71860a6 100644
--- a/src/main/java/com/example/jz/service/impl/ReportServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/ReportServiceImpl.java
@@ -1,10 +1,20 @@
 package com.example.jz.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.example.jz.dao.CauseDao;
+import com.example.jz.dao.GroupDao;
+import com.example.jz.dao.GroupUserDao;
 import com.example.jz.dao.ReportDao;
+import com.example.jz.modle.entity.Group;
+import com.example.jz.modle.entity.GroupUser;
 import com.example.jz.modle.entity.Report;
 import com.example.jz.service.ReportService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Date;
 
 /**
  * 鎶ユ琛�(Report)琛ㄦ湇鍔″疄鐜扮被
@@ -15,5 +25,31 @@
 @Service("reportService")
 public class ReportServiceImpl extends ServiceImpl<ReportDao, Report> implements ReportService {
 
+    @Autowired
+    private ReportDao reportDao;
+    @Autowired
+    private GroupDao groupDao;
+    @Autowired
+    private GroupUserDao groupUserDao;
+
+    /**
+     * 瀹℃牳鎶ユ
+     *
+     * @param report
+     * @return
+     */
+    @Override
+    @Transactional
+    public Boolean audit(Report report) {
+        // 1. 鏇存柊鎶ユ琛�
+        report.setStatus(1);
+        reportDao.updateById(report);
+        // 2. 鏇存柊缇ょ敤鎴疯〃
+        Group group = groupDao.selectOne(new LambdaQueryWrapper<>(Group.class)
+                .eq(Group::getCauseId, report.getCauseId()));
+        GroupUser groupUser = new GroupUser().setGroupId(group.getId()).setUserId(report.getUserId()).setCtime(new Date()).setBanSpeech(0);
+        groupUserDao.insert(groupUser);
+        return true;
+    }
 }
 
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 85a0d04..9681f9d 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -25,6 +25,9 @@
   servlet:
     multipart:
       max-file-size: 50MB
+  jackson:
+    date-format: yyyy-MM-dd HH:mm:ss
+    time-zone: GMT+8
 
 # minio閰嶇疆
 minio:
diff --git a/src/main/resources/banner.txt b/src/main/resources/banner.txt
new file mode 100644
index 0000000..4231639
--- /dev/null
+++ b/src/main/resources/banner.txt
@@ -0,0 +1,22 @@
+////////////////////////////////////////////////////////////////////
+//                          _ooOoo_                               //
+//                         o8888888o                              //
+//                         88" . "88                              //
+//                         (| ^_^ |)                              //
+//                         O\  =  /O                              //
+//                      ____/`---'\____                           //
+//                    .'  \\|     |//  `.                         //
+//                   /  \\|||  :  |||//  \                        //
+//                  /  _||||| -:- |||||-  \                       //
+//                  |   | \\\  -  /// |   |                       //
+//                  | \_|  ''\---/''  |   |                       //
+//                  \  .-\__  `-`  ___/-. /                       //
+//                ___`. .'  /--.--\  `. . ___                     //
+//              ."" '<  `.___\_<|>_/___.'  >'"".                  //
+//            | | :  `- \`.;`\ _ /`;.`/ - ` : | |                 //
+//            \  \ `-.   \_ __\ /__ _/   .-` /  /                 //
+//      ========`-.____`-.___\_____/___.-`____.-'========         //
+//                           `=---='                              //
+//      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^        //
+//             浣涚淇濅綉       姘镐笉瀹曟満      姘告棤BUG                   //
+////////////////////////////////////////////////////////////////////
\ No newline at end of file
diff --git a/src/main/resources/mapper/AnnouncementDao.xml b/src/main/resources/mapper/AnnouncementDao.xml
new file mode 100644
index 0000000..80c2c0f
--- /dev/null
+++ b/src/main/resources/mapper/AnnouncementDao.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.example.jz.dao.AnnouncementDao">
+    <resultMap type="com.example.jz.modle.entity.Announcement" id="AnnouncementMap">
+        <result property="id" column="id" jdbcType="VARCHAR"/>
+        <result property="text" column="text" jdbcType="VARCHAR"/>
+        <result property="groupId" column="group_id" jdbcType="VARCHAR"/>
+        <result property="ctime" column="ctime" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+
+</mapper>
diff --git a/src/main/resources/mapper/GroupDao.xml b/src/main/resources/mapper/GroupDao.xml
new file mode 100644
index 0000000..14923e0
--- /dev/null
+++ b/src/main/resources/mapper/GroupDao.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.example.jz.dao.GroupDao">
+
+    <resultMap id="GroupUserVoMap" type="com.example.jz.modle.vo.GroupUserVo">
+        <result property="userId" column="user_id" />
+        <result property="userName" column="real_name" />
+        <result property="banSpeech" column="ban_speech" />
+    </resultMap>
+
+    <select id="getAllUser" resultType="com.example.jz.modle.vo.GroupUserVo">
+        select group_user.user_id,group_user.ban_speech,user.real_name
+        from group_user
+        join user on group_user.user_id = user.id
+        where group_id = #{groupId}
+    </select>
+
+</mapper>
diff --git a/src/main/resources/mapper/MessageDao.xml b/src/main/resources/mapper/MessageDao.xml
new file mode 100644
index 0000000..f3e16e6
--- /dev/null
+++ b/src/main/resources/mapper/MessageDao.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.example.jz.dao.MessageDao">
+
+    <resultMap type="com.example.jz.modle.vo.GroupMessageVo" id="GroupMessageVoMap">
+        <result property="userName" column="real_name" jdbcType="VARCHAR"/>
+        <result property="text" column="text" jdbcType="VARCHAR"/>
+        <result property="ctime" column="ctime" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+    <select id="getAllMessageByGroup" resultMap="GroupMessageVoMap">
+        select u.real_name, m.text, m.ctime
+        from message m
+        join user u on m.user_id = u.id
+        where m.group_id = #{groupId}
+        order by m.ctime desc
+    </select>
+
+
+</mapper>
diff --git a/src/test/java/com/example/jz/JzApplicationTests.java b/src/test/java/com/example/jz/JzApplicationTests.java
index 9f2c6fa..8d887ac 100644
--- a/src/test/java/com/example/jz/JzApplicationTests.java
+++ b/src/test/java/com/example/jz/JzApplicationTests.java
@@ -16,4 +16,10 @@
         System.out.println(minIOService.getPreviewFileUrl("2fff006f3082f00e26d496dc0a47c624.png"));
     }
 
+
+    @Test
+    void test() {
+
+    }
+
 }
diff --git a/src/test/java/com/example/jz/dao/GroupDaoTest.java b/src/test/java/com/example/jz/dao/GroupDaoTest.java
new file mode 100644
index 0000000..9817e32
--- /dev/null
+++ b/src/test/java/com/example/jz/dao/GroupDaoTest.java
@@ -0,0 +1,32 @@
+package com.example.jz.dao;
+
+import com.example.jz.exception.BusinessException;
+import com.example.jz.modle.vo.GroupUserVo;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+
+import java.util.List;
+
+import static org.junit.jupiter.api.Assertions.*;
+
+/**
+ * @author 瀹夌懢鐒�
+ * @data 2022/7/14 - 1:49 PM
+ * @description
+ */
+@SpringBootTest
+class GroupDaoTest {
+    private GroupDao groupDao;
+
+    @Autowired
+    public void setGroupDao(GroupDao groupDao) {
+        this.groupDao = groupDao;
+    }
+
+    @Test
+    void getAllUser() {
+        List<GroupUserVo> groupUserVos = groupDao.getAllUser(1);
+        System.out.println(groupUserVos);
+    }
+}
\ No newline at end of file

--
Gitblit v1.8.0