From 1fb2cfb2bcb152bee03f8a332700241693cfd9b6 Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期二, 16 八月 2022 13:37:00 +0800
Subject: [PATCH] bug处理

---
 src/main/resources/mapper/ReportDao.xml                             |   48 ++++-
 src/main/java/com/example/jz/dao/ReportDao.java                     |    5 
 src/main/java/com/example/jz/controller/ReportController.java       |    1 
 src/main/java/com/example/jz/modle/dto/AddReportLoadDto.java        |   52 ++++++
 src/main/java/com/example/jz/service/impl/GroupServiceImpl.java     |   80 ++++++++-
 src/main/java/com/example/jz/service/impl/CauseServiceImpl.java     |   58 +++++-
 src/test/java/com/example/jz/JzApplicationTests.java                |    5 
 src/main/java/com/example/jz/modle/entity/Message.java              |    4 
 src/main/java/com/example/jz/service/ReportService.java             |    2 
 src/main/java/com/example/jz/modle/vo/GroupMessageVo.java           |    2 
 src/main/java/com/example/jz/modle/vo/MessageVo.java                |    2 
 src/main/java/com/example/jz/service/GroupService.java              |    3 
 src/main/resources/mapper/GroupDao.xml                              |   16 +
 src/main/java/com/example/jz/service/impl/ReportServiceImpl.java    |   63 ++++---
 src/main/java/com/example/jz/modle/dto/AddReportDto.java            |    1 
 src/main/java/com/example/jz/modle/vo/QuestionVo.java               |    4 
 src/main/java/com/example/jz/modle/entity/Report.java               |    3 
 src/main/java/com/example/jz/controller/CauseController.java        |   24 +-
 src/main/java/com/example/jz/modle/vo/GroupUserVo.java              |    8 
 src/main/java/com/example/jz/modle/vo/ReportListVo.java             |    2 
 src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java |    6 
 src/main/java/com/example/jz/modle/vo/CauseReportVo.java            |   10 
 src/main/resources/mapper/MessageDao.xml                            |    7 
 src/main/java/com/example/jz/controller/GroupController.java        |   57 ++++++-
 src/main/java/com/example/jz/service/CauseService.java              |    2 
 25 files changed, 364 insertions(+), 101 deletions(-)

diff --git a/src/main/java/com/example/jz/controller/CauseController.java b/src/main/java/com/example/jz/controller/CauseController.java
index 39e636c..2a4ce10 100644
--- a/src/main/java/com/example/jz/controller/CauseController.java
+++ b/src/main/java/com/example/jz/controller/CauseController.java
@@ -111,26 +111,26 @@
         return R.ok();
     }
 
+    @ApiOperation(httpMethod = "POST", value = "妗堜欢鍙�-妗堜欢褰曞叆-鎶ユ浜哄憳-鎶ユ浜哄厓瀵煎叆")
+    @PostMapping("/reporterUpload")
+    @ApiResponse(message = "鎵ц鎴愬姛", code = 200)
+    @SneakyThrows
+    public R uploadReporter(@RequestParam(value = "multipartFile") MultipartFile multipartFile,Integer causeId) {
+        causeService.loadFileReport(multipartFile,causeId);
+        return R.ok();
+    }
+
     @ApiOperation(httpMethod = "GET", value = "鏍规嵁缇ょ粍id鏌ヨ妗堜欢鍒嗛〉")
     @GetMapping("/getAllReportList")
     @ApiResponse(message = "鎵ц鎴愬姛", code = 200)
-    public R<IPage<ReportListVo>> get(Page<ReportListVo> page, ReportParamDto reportParamDto, Integer groupId) {
-        return R.ok(reportService.getPageByGroupId(page, reportParamDto, groupId));
+    public R<IPage<ReportListVo>> get(Page<ReportListVo> page, ReportParamDto reportParamDto, Integer causeId) {
+        return R.ok(reportService.getPageByGroupId(page, reportParamDto, causeId));
     }
 
     @ApiOperation(httpMethod = "POST", value = "娣诲姞浜哄憳")
     @PostMapping("/addReporter")
     @ApiResponse(message = "鎵ц鎴愬姛", code = 200)
-    public R<Boolean> get(AddReportDto addReportDto) {
-        if (addReportDto.getReporterName() == null || addReportDto.getReporterName().equals("")) {
-            return R.failed("鎶ユ浜哄憳涓嶈兘涓虹┖");
-        }
-        if (addReportDto.getMobile() == null || addReportDto.getMobile().equals("")) {
-            return R.failed("鎶ユ浜哄憳鐢佃瘽涓嶈兘涓虹┖");
-        }
-        if (addReportDto.getIdcard() == null || addReportDto.getIdcard().equals("")) {
-            return R.failed("鎶ユ浜哄憳韬唤璇佷笉鑳戒负绌�");
-        }
+    public R<Boolean> get(@RequestBody AddReportDto addReportDto) {
         return R.ok(causeService.addReportPeople(addReportDto));
     }
 
diff --git a/src/main/java/com/example/jz/controller/GroupController.java b/src/main/java/com/example/jz/controller/GroupController.java
index 41a8655..88968fe 100644
--- a/src/main/java/com/example/jz/controller/GroupController.java
+++ b/src/main/java/com/example/jz/controller/GroupController.java
@@ -1,15 +1,17 @@
 package com.example.jz.controller;
 
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 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.Announcement;
 import com.example.jz.modle.entity.Group;
+import com.example.jz.modle.entity.GroupUser;
+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 com.example.jz.service.GroupUserService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -17,8 +19,6 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import javax.annotation.Resource;
-import java.io.Serializable;
 import java.util.List;
 
 /**
@@ -38,8 +38,12 @@
     public void setGroupService(GroupService groupService) {
         this.groupService = groupService;
     }
+
+    @Autowired
+    GroupUserService groupUserService;
+
     /**
-     * 鏍规嵁缇ょ粍id鑾峰彇褰撳墠缇ょ粍鎵�鏈夌殑娑堟伅
+     * 鏍规嵁缇ょ粍id鑾峰彇褰撳墠缇ょ粍鎵�鏈夌殑娑堟伅 淇敼
      *
      * @param id 缇ょ粍id
      * @return 褰撳墠缇ょ粍鎵�鏈夌殑娑堟伅
@@ -49,6 +53,37 @@
     @ApiImplicitParam(name = "id", value = "缇ょ粍id", required = true, dataType = "Integer")
     public R<List<GroupMessageVo>> getAllMessage(@RequestParam("id") Integer id) {
         return R.ok(groupService.getAllMessage(id));
+    }
+
+
+    @GetMapping("getGroupMessage")
+    @ApiOperation(value = "鑾峰彇褰撳墠缇ょ粍娑堟伅閫氳繃鎴愬憳鎴栬�呭唴瀹�")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "report", value = "缇ょ粍id", required = true, dataType = "Integer"),
+            @ApiImplicitParam(name = "context", value = "缇ょ粍id", required = true, dataType = "String")
+    })
+    public R<List<GroupMessageVo>> get(@RequestParam(value = "report" ,required = false) String reporter, @RequestParam(value = "context",required = false) String context,Integer groupId) {
+        return R.ok(groupService.getByCondition(reporter, context,groupId));
+    }
+
+    @PutMapping("banSpeech")
+    @ApiOperation(value = "绂佽█")
+    @ApiImplicitParam(name = "id", value = "缇ょ粍id", required = true, dataType = "Integer")
+    public R setBanSpeech(@RequestParam("id") Integer id) {
+        return R.ok(groupUserService.update(new UpdateWrapper<GroupUser>().set("ban_speech",1).eq("user_id",id)));
+    }
+
+    @PutMapping("allowSpeech")
+    @ApiOperation(value = "鍏佽鍙戣█")
+    @ApiImplicitParam(name = "id", value = "缇ょ粍id", required = true, dataType = "Integer")
+    public R setAllowSpeech(@RequestParam("id") Integer id) {
+        return R.ok(groupUserService.update(new UpdateWrapper<GroupUser>().set("ban_speech",0).eq("user_id",id)));
+    }
+
+    @PutMapping("banSpeechAll")
+    @ApiOperation(value = "鍏ㄩ儴绂佽█")
+    public R setBanSpeechAll(@RequestParam("id") Integer id) {
+        return R.ok(groupUserService.update(new UpdateWrapper<GroupUser>().set("ban_speech",1).eq("group_id",id)));
     }
 
     /**
@@ -82,7 +117,7 @@
     }
 
     /**
-     * 鑾峰彇缇ょ粍鎵�鏈変汉鍛樺垪琛�
+     * 鑾峰彇缇ょ粍鎵�鏈変汉鍛樺垪琛� 淇敼
      *
      * @param id 缇ょ粍id
      * @return 缇ょ粍鎵�鏈変汉鍛樺垪琛�
@@ -93,4 +128,10 @@
     public R<List<GroupUserVo>> getAllUser(@RequestParam("id") Integer id) {
         return R.ok(groupService.getAllUser(id));
     }
-}
+
+    @GetMapping("getAllGroupName")
+    @ApiOperation(value = "鑾峰彇缇ょ粍鍚嶇О")
+    public R<List<Group>> getAllGroupName() {
+        return R.ok(groupService.list());
+    }
+}
\ No newline at end of file
diff --git a/src/main/java/com/example/jz/controller/ReportController.java b/src/main/java/com/example/jz/controller/ReportController.java
index 0e37f47..0b17490 100644
--- a/src/main/java/com/example/jz/controller/ReportController.java
+++ b/src/main/java/com/example/jz/controller/ReportController.java
@@ -88,6 +88,7 @@
     @PutMapping("/updateReport")
     @ApiResponse(message = "鎵ц鎴愬姛", code = 200)
     public R updateReport(@RequestBody Report report) {
+        report.setPic(null);
         reportService.updateById(report);
         return R.ok();
     }
diff --git a/src/main/java/com/example/jz/dao/ReportDao.java b/src/main/java/com/example/jz/dao/ReportDao.java
index eee3b7d..a349876 100644
--- a/src/main/java/com/example/jz/dao/ReportDao.java
+++ b/src/main/java/com/example/jz/dao/ReportDao.java
@@ -9,6 +9,7 @@
 import org.apache.ibatis.annotations.Param;
 
 import java.io.Serializable;
+import java.util.List;
 
 /**
  * 鎶ユ琛�(Report)琛ㄦ暟鎹簱璁块棶灞�
@@ -23,6 +24,8 @@
 
     ReportListVo getReportListVoById(Serializable id);
 
-    Page<ReportListVo> getPageByGroupId(Page<ReportListVo> page, ReportParamDto reportParamDto, Integer groupId);
+    List<ReportListVo> getPageByGroupId( ReportParamDto reportParamDto, Integer causeId,Long size,Long current);
+
+    Integer getPageByGroupIdCount(ReportParamDto reportParamDto, Integer causeId);
 }
 
diff --git a/src/main/java/com/example/jz/modle/dto/AddReportDto.java b/src/main/java/com/example/jz/modle/dto/AddReportDto.java
index 9c68dc1..b8f4063 100644
--- a/src/main/java/com/example/jz/modle/dto/AddReportDto.java
+++ b/src/main/java/com/example/jz/modle/dto/AddReportDto.java
@@ -1,5 +1,6 @@
 package com.example.jz.modle.dto;
 
+import com.alibaba.excel.annotation.ExcelProperty;
 import com.example.jz.modle.entity.Report;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
diff --git a/src/main/java/com/example/jz/modle/dto/AddReportLoadDto.java b/src/main/java/com/example/jz/modle/dto/AddReportLoadDto.java
new file mode 100644
index 0000000..f7e0dc6
--- /dev/null
+++ b/src/main/java/com/example/jz/modle/dto/AddReportLoadDto.java
@@ -0,0 +1,52 @@
+package com.example.jz.modle.dto;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.example.jz.modle.entity.Report;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+
+/**
+ * @author 瀹夌懢鐒�
+ * @data 2022/7/18 - 2:12 PM
+ * @description
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class AddReportLoadDto {
+    @ApiModelProperty(value = "鎶ユ浜�",dataType = "String")
+    @ExcelProperty(value = "鎶ユ浜�",index = 0)
+    private String reporterName;
+
+    @ApiModelProperty(value = "鎶ユ浜烘墜鏈哄彿",dataType = "String")
+    @ExcelProperty(value = "鎵嬫満鍙�",index = 1)
+    //鎶ユ浜烘墜鏈哄彿
+    private String mobile;
+
+    @ApiModelProperty(value = "鎶ユ浜鸿韩浠借瘉鍙�",dataType = "String")
+    @ExcelProperty(value = "韬唤璇佸彿",index = 2)
+    //鎶ユ浜鸿韩浠借瘉鍙�
+    private String idcard;
+
+    @ExcelProperty(value = "琚獥鏃堕棿",index = 3)
+    private Date cheatTime;
+
+    @ExcelProperty(value = "娑夋閲戦",index = 4)
+    private Double amountInvolved;
+
+    @ExcelProperty(value = "妗堜欢鎻忚堪",index = 5)
+    private String reportDescription;
+
+    @ExcelProperty(value = "琛ュ厖淇℃伅",index = 6)
+    private String information;
+
+    @ApiModelProperty(value = "缇ょ粍id",dataType = "Integer")
+    private Integer groupId;
+
+    //妗堜欢Id
+    private Integer causeId;
+}
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 777316b..f467535 100644
--- a/src/main/java/com/example/jz/modle/entity/Message.java
+++ b/src/main/java/com/example/jz/modle/entity/Message.java
@@ -46,6 +46,10 @@
     
     private Date ctime;
 
+    private Integer copId;
+
+    private String reportName;
+
     /**
      * 鑾峰彇涓婚敭鍊�
      *
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 d6168f2..4b4920d 100644
--- a/src/main/java/com/example/jz/modle/entity/Report.java
+++ b/src/main/java/com/example/jz/modle/entity/Report.java
@@ -2,6 +2,7 @@
 
 import java.util.Date;
 
+import com.alibaba.excel.annotation.ExcelProperty;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
 import io.swagger.annotations.ApiModelProperty;
@@ -60,6 +61,8 @@
     private Integer causeId;
     //妗堜欢鎻忚堪
     private String reportDescription;
+    //鏄惁杩涚兢
+    private Integer isInGroup;
 
     /**
      * 鑾峰彇涓婚敭鍊�
diff --git a/src/main/java/com/example/jz/modle/vo/CauseReportVo.java b/src/main/java/com/example/jz/modle/vo/CauseReportVo.java
index 70e8fe1..b06c50c 100644
--- a/src/main/java/com/example/jz/modle/vo/CauseReportVo.java
+++ b/src/main/java/com/example/jz/modle/vo/CauseReportVo.java
@@ -12,20 +12,20 @@
     //澶村儚鍦板潃
     private String pic;
     //鎶ユ浜篿d
-    private String userName;
+    private String reporterName;
     /**
      * 鎵嬫満鍙风爜
      */
-    private String userMobile;
+    private String mobile;
     /**
      * 鐢ㄦ埛韬唤璇佸彿鐮�
      */
-    private String userIdcard;
+    private String idcard;
     //鏄惁浠e姙 1锛堜唬鍔烇級 0锛堜笉鏄唬鍔烇級
     private String isCommission;
 
     //鏄惁浠e姙 1锛堜唬鍔烇級 0锛堜笉鏄唬鍔烇級
-    private String isIntoGroup;
+    private Integer isInGroup;
     //娑夋閲戦
     private Double amountInvolved;
     //鎶ユ鏉愭枡鍥剧墖鍦板潃 澶氫釜鐢�,鍒嗛殧
@@ -44,4 +44,6 @@
     private Integer causeId;
     //缇ょ粍id
     private Integer groupId;
+    //妗堜欢鎻忚堪
+    private String reportDescription;
 }
diff --git a/src/main/java/com/example/jz/modle/vo/GroupMessageVo.java b/src/main/java/com/example/jz/modle/vo/GroupMessageVo.java
index f4596a9..8547597 100644
--- a/src/main/java/com/example/jz/modle/vo/GroupMessageVo.java
+++ b/src/main/java/com/example/jz/modle/vo/GroupMessageVo.java
@@ -23,6 +23,8 @@
      * 鐢ㄦ埛鍚�
      */
     private String userName;
+
+private  String pic;
     /**
      * 鏂囨湰鍐呭
      */
diff --git a/src/main/java/com/example/jz/modle/vo/GroupUserVo.java b/src/main/java/com/example/jz/modle/vo/GroupUserVo.java
index dd6dbc3..0e0c000 100644
--- a/src/main/java/com/example/jz/modle/vo/GroupUserVo.java
+++ b/src/main/java/com/example/jz/modle/vo/GroupUserVo.java
@@ -23,9 +23,11 @@
      * 鐢ㄦ埛鍚�
      */
     private String userId;
-    /**
-     * 鏂囨湰鍐呭
-     */
+
+    private Integer groupId;
+
+    private String pic;
+
     private String userName;
     /**
      * 鏄惁绂佽█(0涓哄惁1涓烘槸锛�
diff --git a/src/main/java/com/example/jz/modle/vo/MessageVo.java b/src/main/java/com/example/jz/modle/vo/MessageVo.java
index f7796fc..78873bc 100644
--- a/src/main/java/com/example/jz/modle/vo/MessageVo.java
+++ b/src/main/java/com/example/jz/modle/vo/MessageVo.java
@@ -25,6 +25,6 @@
     @ApiModelProperty(dataType = "Integer",value = "缇ょ粍id")
     private Integer groupId;
 
-    @ApiModelProperty(dataType = "Date",value = "鍒涘缓甯堣")
+    @ApiModelProperty(dataType = "Date",value = "鍒涘缓鏃堕棿")
     private Date ctime;
 }
diff --git a/src/main/java/com/example/jz/modle/vo/QuestionVo.java b/src/main/java/com/example/jz/modle/vo/QuestionVo.java
index 064fd7d..a33bd6b 100644
--- a/src/main/java/com/example/jz/modle/vo/QuestionVo.java
+++ b/src/main/java/com/example/jz/modle/vo/QuestionVo.java
@@ -25,4 +25,8 @@
     //鏈�鏃╂妗堝彂鏃堕棿
     @ApiModelProperty(dataType = "Date", value = "鍙戝竷鏃堕棿")
     private Date releaseTime;
+
+    //闂瑙g瓟
+    @ApiModelProperty(value = "闂瑙g瓟")
+    private String answer;
 }
diff --git a/src/main/java/com/example/jz/modle/vo/ReportListVo.java b/src/main/java/com/example/jz/modle/vo/ReportListVo.java
index c87ddf0..cc9f2e6 100644
--- a/src/main/java/com/example/jz/modle/vo/ReportListVo.java
+++ b/src/main/java/com/example/jz/modle/vo/ReportListVo.java
@@ -8,8 +8,6 @@
 @Data
 @ApiModel(description = "鎶ユ浜哄憳棣栭〉",value = "ReportListVo")
 public class ReportListVo extends Report {
-    //鏄惁杩涚兢
-    private Integer isIntoGroup;
 
     //缇d
     private Integer groupId;
diff --git a/src/main/java/com/example/jz/service/CauseService.java b/src/main/java/com/example/jz/service/CauseService.java
index 0fc2289..167d5a2 100644
--- a/src/main/java/com/example/jz/service/CauseService.java
+++ b/src/main/java/com/example/jz/service/CauseService.java
@@ -82,5 +82,7 @@
     Boolean addReportPeople(AddReportDto addReportDto);
 
     List<Map<String,String>> getCauseIdAndName();
+
+    void loadFileReport(MultipartFile multipartFile,Integer causeId);
 }
 
diff --git a/src/main/java/com/example/jz/service/GroupService.java b/src/main/java/com/example/jz/service/GroupService.java
index 56e0547..a8368be 100644
--- a/src/main/java/com/example/jz/service/GroupService.java
+++ b/src/main/java/com/example/jz/service/GroupService.java
@@ -3,6 +3,7 @@
 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.entity.Message;
 import com.example.jz.modle.vo.GroupMessageVo;
 import com.example.jz.modle.vo.GroupUserVo;
 
@@ -23,4 +24,6 @@
     Boolean sendMessage(Integer id, String text);
 
     List<GroupUserVo> getAllUser(Integer id);
+
+    List<GroupMessageVo> getByCondition(String name, String text,Integer groupId);
 }
diff --git a/src/main/java/com/example/jz/service/ReportService.java b/src/main/java/com/example/jz/service/ReportService.java
index b99cbef..94fe678 100644
--- a/src/main/java/com/example/jz/service/ReportService.java
+++ b/src/main/java/com/example/jz/service/ReportService.java
@@ -29,7 +29,7 @@
 
     ReportListVo getReportListVoById(Serializable id);
 
-    Page<ReportListVo> getPageByGroupId(Page<ReportListVo> page, ReportParamDto reportParamDto, Integer groupId);
+    Page<ReportListVo> getPageByGroupId(Page<ReportListVo> page, ReportParamDto reportParamDto, Integer causeId);
 
     /**
      * 娣诲姞妗堜欢
diff --git a/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java b/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java
index 74f45d3..ac5649a 100644
--- a/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java
@@ -12,6 +12,7 @@
 import com.example.jz.exception.BusinessException;
 import com.example.jz.modle.PageParam;
 import com.example.jz.modle.dto.AddReportDto;
+import com.example.jz.modle.dto.AddReportLoadDto;
 import com.example.jz.modle.dto.CauseDto;
 import com.example.jz.modle.dto.CauseLoadDto;
 import com.example.jz.modle.entity.*;
@@ -19,8 +20,11 @@
 import com.example.jz.modle.vo.CauseVo;
 import com.example.jz.modle.vo.UserVo;
 import com.example.jz.service.CauseService;
+import com.example.jz.service.ReportService;
+import com.example.jz.service.UserService;
 import lombok.SneakyThrows;
 import org.springframework.beans.BeanUtils;
+import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.multipart.MultipartFile;
@@ -50,6 +54,10 @@
     GroupDao groupDao;
     @Resource
     GroupUserDao groupUserDao;
+    @Resource
+    UserService userService;
+    @Resource
+    ReportService reportService;
 
     @Resource
     AnnouncementDao announcementDao;
@@ -127,21 +135,17 @@
     @Override
     public PageParam<CauseReportVo> getReporterList(Integer causeId) {
         PageParam<Report> PageParam = new PageParam<>();
-        PageParam<Report> reportPageParam = reportDao.selectPage(PageParam, new QueryWrapper<Report>().eq("cause_id", causeId));
+        PageParam<Report> reportPageParam = reportDao.selectPage(PageParam, new QueryWrapper<Report>().eq("cause_id", causeId).orderByDesc("ctime"));
         List<CauseReportVo> causeReportVos = reportPageParam.getRecords().stream()
                 .map(
                         a -> {
                             CauseReportVo causeReportVo = new CauseReportVo();
                             User user = userDao.selectOne(new QueryWrapper<User>().eq("id", a.getUserId()));
                             BeanUtils.copyProperties(a, causeReportVo);
-                            causeReportVo.setUserIdcard(user.getUserIdcard());
-                            causeReportVo.setUserMobile(user.getUserMobile());
-                            causeReportVo.setUserIdcard(causeReportVo.getUserIdcard().replaceAll("(?<=[\\d]{3})\\d(?=[\\d]{4})", "*"));
-                            causeReportVo.setUserName(user.getRealName());
-                            if (groupUserDao.selectOne(new QueryWrapper<GroupUser>().eq("user_id", a.getId())) == null) {
-                                causeReportVo.setIsIntoGroup("0");
-                            } else {
-                                causeReportVo.setIsIntoGroup("1");
+                            causeReportVo.setMobile(user.getUserMobile());
+                            causeReportVo.setIdcard(user.getUserIdcard().replaceAll("(?<=[\\d]{3})\\d(?=[\\d]{4})", "*"));
+                            causeReportVo.setReporterName(user.getRealName());
+                            if (causeReportVo.getIsInGroup()==1) {
                                 causeReportVo.setGroupId(groupDao.selectOne(new QueryWrapper<Group>().eq("cause_id",causeId)).getId());
                             }
                             return causeReportVo;
@@ -234,21 +238,25 @@
             // 濡傛灉鐢ㄦ埛涓嶅瓨鍦� 鍒欐坊鍔犵敤鎴�
             user = new User().setUserIdcard(addReportDto.getIdcard()).setUserMobile(addReportDto.getMobile()).setRealName(addReportDto.getReporterName())
                     .setModifyTime(new Date()).setUserRegtime(new Date()).setPic(addReportDto.getPic());
-            userDao.insert(user);
+            userService.save(user);
         }
+        Group group = groupDao.selectOne(new QueryWrapper<Group>().eq("cause_id", addReportDto.getCauseId()));
         // 娣诲姞浜哄憳杩涚兢缁�
-        groupUserDao.insert(new GroupUser().setGroupId(addReportDto.getGroupId()).setUserId(user.getId()).setCtime(new Date()).setBanSpeech(0));
+       // groupUserDao.insert(new GroupUser().setGroupId(group.getId()).setUserId(user.getId()).setCtime(new Date()).setBanSpeech(0));
         // 娣诲姞鎶ユ淇℃伅
         Report report = new Report();
         BeanUtils.copyProperties(addReportDto, report);
         report
+                .setIsInGroup(1)
+                .setCreator(userDao.selectOne(new QueryWrapper<User>().eq("login_username",  SecurityContextHolder.getContext().getAuthentication().getPrincipal())).getId())
                 .setUserId(user.getId())
                 .setCtime(new Date())
                 .setStatus(0)
                 .setReportMethod("鐜板満褰曞叆")
                 .setIsCommission("0").setReportTime(new Date())
-                .setCauseId(groupDao.selectOne(new QueryWrapper<Group>().eq("id", addReportDto.getGroupId())).getCauseId());
-        return reportDao.insert(report) > 0;
+                .setCauseId(addReportDto.getCauseId());
+        reportService.save(report);
+        return  groupUserDao.insert(new GroupUser().setGroupId(group.getId()).setUserId(report.getId()).setCtime(new Date()).setBanSpeech(0))> 0;
     }
 
     @Override
@@ -262,4 +270,28 @@
         });
         return maps;
     }
+
+    @Override
+    @SneakyThrows
+    public void loadFileReport(MultipartFile multipartFile,Integer causeId) {
+        EasyExcel.read(multipartFile.getInputStream(), AddReportLoadDto.class, new AnalysisEventListener<AddReportLoadDto>() {
+                    @Override
+                    public void invoke(AddReportLoadDto data, AnalysisContext context) {
+                        if (StringUtils.isNotBlank(data.getReporterName())&&StringUtils.isNotBlank(data.getIdcard())){
+                            AddReportDto addReportDto = new AddReportDto();
+                            BeanUtils.copyProperties(data,addReportDto);
+                            addReportDto.setCauseId(causeId);
+                            addReportPeople(addReportDto);
+                        }
+
+                    }
+
+                    @Override
+                    public void doAfterAllAnalysed(AnalysisContext context) {
+
+                    }
+                })
+                .autoCloseStream(true)
+                .doReadAll();
+    }
 }
\ No newline at end of file
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 a4cfab5..65be7a4 100644
--- a/src/main/java/com/example/jz/service/impl/GroupServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/GroupServiceImpl.java
@@ -1,22 +1,22 @@
 package com.example.jz.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 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.dao.*;
+import com.example.jz.modle.entity.*;
 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.security.core.context.SecurityContextHolder;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 缇よ〃
@@ -27,9 +27,16 @@
  */
 @Service("groupService")
 public class GroupServiceImpl extends ServiceImpl<GroupDao, Group> implements GroupService {
+    @Resource
     private MessageDao messageDao;
+    @Resource
     private AnnouncementDao announcementDao;
+    @Resource
     private GroupDao groupDao;
+    @Resource
+    private UserDao userDao;
+    @Resource
+    private ReportDao reportDao;
 
     @Autowired
     public void setMessageDao(MessageDao messageDao) {
@@ -48,7 +55,27 @@
 
     @Override
     public List<GroupMessageVo> getAllMessage(Integer id) {
-        return messageDao.getAllMessageByGroup(id);
+        List<GroupMessageVo> list = messageDao.selectList(new QueryWrapper<Message>().eq("group_id", id).orderByAsc("ctime")).stream().map(item -> {
+            String username;
+            String pic = null;
+            if (item.getUserId() == null) {
+                username = userDao.selectOne(new QueryWrapper<User>().eq("id", item.getCopId())).getRealName();
+            } else {
+                Report report = reportDao.selectOne(new QueryWrapper<Report>().eq("id", item.getUserId()));
+                username = userDao.selectOne(new QueryWrapper<User>().eq("id", report.getUserId())).getRealName();
+                pic = report.getPic();
+                Message message = new Message();
+                message.setReportName(username);
+                messageDao.update(message,new QueryWrapper<Message>().eq("user_id",item.getUserId()));
+            }
+            GroupMessageVo groupMessageVo = new GroupMessageVo();
+            groupMessageVo.setUserName(username);
+            groupMessageVo.setText(item.getText());
+            groupMessageVo.setCtime(item.getCtime());
+            groupMessageVo.setPic(pic);
+            return groupMessageVo;
+        }).collect(Collectors.toList());
+        return list;
     }
 
     @Override
@@ -58,8 +85,8 @@
 
     @Override
     public Boolean sendMessage(Integer id, String text) {
-        // todo 鍔ㄦ�佽幏鍙栧綋鍓嶇櫥褰曠敤鎴风殑id
-        Message message = new Message().setUserId(1).setText(text).setGroupId(id).setCtime(new Date());
+        Message message = new Message().setCopId(userDao.selectOne(new QueryWrapper<User>().eq("login_username", SecurityContextHolder.getContext().getAuthentication().getPrincipal())).getId())
+                .setText(text).setGroupId(id).setCtime(new Date());
         return messageDao.insert(message) > 0;
     }
 
@@ -67,4 +94,39 @@
     public List<GroupUserVo> getAllUser(Integer id) {
         return groupDao.getAllUser(id);
     }
+
+    @Override
+    public List<GroupMessageVo> getByCondition(String name, String text,Integer groupId) {
+        List<GroupMessageVo> groupUserVoList;
+        if (StringUtils.isBlank(name)) {
+          groupUserVoList = messageDao.selectList(new QueryWrapper<Message>().like(StringUtils.isNotBlank(text), "text", text).eq("group_id",groupId).orderByAsc("ctime")).stream().map(item -> {
+                String username;
+                String pic = null;
+                if (item.getUserId() == null) {
+                    username = userDao.selectOne(new QueryWrapper<User>().eq("cop_id", item.getCopId())).getRealName();
+                } else {
+                    Report report = reportDao.selectOne(new QueryWrapper<Report>().eq("id", item.getUserId()));
+                    username = userDao.selectOne(new QueryWrapper<User>().eq("id", report.getUserId())).getRealName();
+                    pic = report.getPic();
+                }
+                GroupMessageVo groupMessageVo = new GroupMessageVo();
+                groupMessageVo.setUserName(username);
+                groupMessageVo.setText(item.getText());
+                groupMessageVo.setCtime(item.getCtime());
+                groupMessageVo.setPic(pic);
+                return groupMessageVo;
+            }).collect(Collectors.toList());
+        } else {
+             groupUserVoList = messageDao.selectList(new QueryWrapper<Message>().eq("report_Name", name).eq("group_id",groupId).orderByAsc("ctime")).stream().map(item -> {
+                Report report = reportDao.selectOne(new QueryWrapper<Report>().eq("id", item.getUserId()));
+                GroupMessageVo groupMessageVo = new GroupMessageVo();
+                groupMessageVo.setUserName(item.getReportName());
+                groupMessageVo.setText(item.getText());
+                groupMessageVo.setCtime(item.getCtime());
+                groupMessageVo.setPic(report.getPic());
+                return groupMessageVo;
+            }).collect(Collectors.toList());
+        }
+        return groupUserVoList;
+    }
 }
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 7ee12e4..659c1f2 100644
--- a/src/main/java/com/example/jz/service/impl/ReportServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/ReportServiceImpl.java
@@ -3,7 +3,6 @@
 import com.alibaba.excel.EasyExcel;
 import com.alibaba.excel.metadata.data.ImageData;
 import com.alibaba.excel.metadata.data.WriteCellData;
-import com.alibaba.excel.support.ExcelTypeEnum;
 import com.alibaba.excel.util.IoUtils;
 import com.alibaba.excel.util.StringUtils;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -11,23 +10,19 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.example.jz.dao.*;
+import com.example.jz.modle.PageParam;
 import com.example.jz.modle.dto.AddReportDto;
 import com.example.jz.modle.dto.ReportParamDto;
-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.modle.entity.User;
-import com.example.jz.modle.vo.ReportListVo;
-import com.example.jz.dao.*;
 import com.example.jz.modle.entity.*;
 import com.example.jz.modle.vo.ExportExcelReportVo;
 import com.example.jz.modle.vo.ReportListVo;
 import com.example.jz.service.MinIOService;
 import com.example.jz.service.ReportService;
+import com.example.jz.service.UserService;
 import lombok.SneakyThrows;
 import org.springframework.beans.BeanUtils;
-import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -36,11 +31,10 @@
 import java.io.Serializable;
 import java.net.URL;
 import java.net.URLEncoder;
-import java.nio.charset.StandardCharsets;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
-import java.io.Serializable;
+import java.util.Comparator;
 import java.util.Date;
 import java.util.List;
 
@@ -65,6 +59,10 @@
 
     @Resource
     UserDao userDao;
+    @Resource
+    UserService userService;
+    @Resource
+    ReportService reportService;
 
     @Resource
     MinIOService minIOService;
@@ -84,13 +82,17 @@
         // 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);
+        GroupUser groupUser = new GroupUser().setGroupId(group.getId()).setUserId(report.getId()).setCtime(new Date()).setBanSpeech(0);
         groupUserDao.insert(groupUser);
         return true;
     }
 
     @Override
     public void leaveGroup(Integer id, Integer groupId) {
+        Report report = new Report();
+        report.setIsInGroup(0);
+        report.setId(id);
+        reportDao.updateById(report);
         groupUserDao.delete(new QueryWrapper<GroupUser>().eq("user_id", id).eq("group_id", groupId));
     }
 
@@ -152,7 +154,8 @@
     @Override
     public Page<ReportListVo> getPage(Page<ReportListVo> page, ReportParamDto reportParamDto) {
         Page<ReportListVo> aaa = reportDao.getPage(page, reportParamDto);
-        aaa.getRecords().stream().forEach(x -> x.setIdcard(x.getIdcard().replaceAll("(?<=[\\d]{3})\\d(?=[\\d]{4})", "*")));
+        aaa.getRecords().stream()
+                .forEach(x -> x.setIdcard(x.getIdcard().replaceAll("(?<=[\\d]{3})\\d(?=[\\d]{4})", "*")));
         return aaa;
     }
 
@@ -162,8 +165,19 @@
     }
 
     @Override
-    public Page<ReportListVo> getPageByGroupId(Page<ReportListVo> page, ReportParamDto reportParamDto, Integer groupId) {
-        Page<ReportListVo> aaa = reportDao.getPageByGroupId(page, reportParamDto, groupId);
+    public Page<ReportListVo> getPageByGroupId(Page<ReportListVo> page, ReportParamDto reportParamDto, Integer causeId) {
+        Long size = (page.getCurrent() - 1) * page.getSize();
+        Long current = page.getSize();
+        Page<ReportListVo> aaa = new PageParam<>();
+        List<ReportListVo> list = reportDao.getPageByGroupId(reportParamDto, causeId, size, current);
+        list.forEach(item -> {
+            if (item.getIsInGroup() == 1) {
+                item.setGroupId(groupDao.selectOne(new QueryWrapper<Group>().eq("cause_id", causeId)).getId());
+            }
+        });
+        aaa.setRecords(list);
+        Integer pageByGroupIdCount = reportDao.getPageByGroupIdCount(reportParamDto, causeId);
+        aaa.setTotal(pageByGroupIdCount);
         aaa.getRecords().stream().forEach(x -> x.setIdcard(x.getIdcard().replaceAll("(?<=[\\d]{3})\\d(?=[\\d]{4})", "*")));
         return aaa;
     }
@@ -175,25 +189,26 @@
         if (user == null) {
             // 濡傛灉鐢ㄦ埛涓嶅瓨鍦� 鍒欐坊鍔犵敤鎴�
             user = new User().setUserIdcard(addReportDto.getIdcard()).setUserMobile(addReportDto.getMobile()).setRealName(addReportDto.getReporterName())
-                    .setModifyTime(new Date()).setUserRegtime(new Date()).setPic(addReportDto.getPic());
-            userDao.insert(user);
+                    .setModifyTime(new Date()).setUserRegtime(new Date()).setPic(addReportDto.getPic()).setCtime(new Date());
+            userService.save(user);
         }
         // 娣诲姞浜哄憳杩涚兢缁�
-        groupUserDao.insert(new GroupUser()
-                .setGroupId(groupDao.selectOne(new QueryWrapper<Group>().eq("cause_id", addReportDto.getCauseId())).getId())
-                .setUserId(user.getId()).setCtime(new Date())
-                .setBanSpeech(0));
+//        groupUserDao.insert(new GroupUser()
+//                .setGroupId(groupDao.selectOne(new QueryWrapper<Group>().eq("cause_id", addReportDto.getCauseId())).getId())
+//                .setUserId(user.getId()).setCtime(new Date())
+//                .setBanSpeech(0));
         // 娣诲姞鎶ユ淇℃伅
         Report report = new Report();
         BeanUtils.copyProperties(addReportDto, report);
         report
+                .setCreator(userDao.selectOne(new QueryWrapper<User>().eq("login_username", SecurityContextHolder.getContext().getAuthentication().getPrincipal())).getId())
                 .setUserId(user.getId())
                 .setCtime(new Date())
-                .setStatus(1)
+                .setStatus(0)
+                .setIsInGroup(0)
                 .setReportMethod("鐜板満褰曞叆")
                 .setIsCommission("0").setReportTime(new Date())
                 .setCauseId(addReportDto.getCauseId());
-        return reportDao.insert(report) > 0;
+        return reportService.save(report);
     }
-}
-
+}
\ No newline at end of file
diff --git a/src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java b/src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java
index 6f23222..0ed9841 100644
--- a/src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java
@@ -85,12 +85,12 @@
     @Override
     public List<MessageVo> getGroupMessage() {
         ArrayList<MessageVo> messageVos = new ArrayList<>();
-        messageDao.selectList(new QueryWrapper<Message>().orderByDesc("ctime").last("limit 5"))
-                .forEach(a -> {
+        messageDao.selectList(new QueryWrapper<Message>().orderByDesc("ctime")).stream()
+                .filter(item->item.getUserId()!=null).limit(5).forEach(a -> {
                     MessageVo messageVo = new MessageVo();
                     messageVo.setGroupName(groupDao.selectOne(new QueryWrapper<Group>().eq("id", a.getGroupId())).getGroupName());
                     BeanUtils.copyProperties(a, messageVo);
-                    messageVo.setUserName(userDao.selectOne(new QueryWrapper<User>().eq("id", a.getUserId())).getRealName());
+                    messageVo.setUserName(a.getReportName());
                     messageVos.add(messageVo);
                 });
         return messageVos;
diff --git a/src/main/resources/mapper/GroupDao.xml b/src/main/resources/mapper/GroupDao.xml
index 14923e0..9cb2fd2 100644
--- a/src/main/resources/mapper/GroupDao.xml
+++ b/src/main/resources/mapper/GroupDao.xml
@@ -3,15 +3,17 @@
 <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" />
+        <result property="userId" column="user_id"/>
+        <result property="groupId" column="group_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
+    <select id="getAllUser" resultMap="GroupUserVoMap">
+        select group_user.user_id,group_user.group_id, group_user.ban_speech, user.real_name
+        FROM group_user
+                 JOIN report ON report.id = group_user.user_id
+                 JOIN `user` ON `user`.id = report.user_id
         where group_id = #{groupId}
     </select>
 
diff --git a/src/main/resources/mapper/MessageDao.xml b/src/main/resources/mapper/MessageDao.xml
index f3e16e6..d79041f 100644
--- a/src/main/resources/mapper/MessageDao.xml
+++ b/src/main/resources/mapper/MessageDao.xml
@@ -9,11 +9,12 @@
     </resultMap>
 
     <select id="getAllMessageByGroup" resultMap="GroupMessageVoMap">
-        select u.real_name, m.text, m.ctime
+        select `user`.real_name, m.text, m.ctime
         from message m
-        join user u on m.user_id = u.id
+                 JOIN report ON report.id = m.user_id
+                 JOIN `user` ON `user`.id = report.user_id
         where m.group_id = #{groupId}
-        order by m.ctime desc
+        order by m.ctime asc
     </select>
 
 
diff --git a/src/main/resources/mapper/ReportDao.xml b/src/main/resources/mapper/ReportDao.xml
index 9242398..a11e47b 100644
--- a/src/main/resources/mapper/ReportDao.xml
+++ b/src/main/resources/mapper/ReportDao.xml
@@ -12,7 +12,7 @@
                 and (u.real_name like '%${reportParamDto.people}%' or u.user_idcard like '%${reportParamDto.people}%')
             </if>
             <if test="reportParamDto.phoneNumber != ''">
-                and u.user_mobile = ${reportParamDto.phoneNumber}
+                and u.user_mobile like '%${reportParamDto.phoneNumber}%'
             </if>
             <if test="reportParamDto.havaMaterial != ''">
                 <if test="reportParamDto.havaMaterial == 1">
@@ -22,10 +22,11 @@
                     and r.report_materials is null
                 </if>
             </if>
-            <if test="reportParamDto.isInGroup != ''">
-                and r.status = ${reportParamDto.isInGroup}
+            <if test="reportParamDto.isInGroup != null">
+                and r.is_in_group = ${reportParamDto.isInGroup}
             </if>
         </where>
+        order by  r.ctime DESC
     </select>
     <select id="getReportListVoById" resultType="com.example.jz.modle.vo.ReportListVo">
         select u.user_mobile mobile, u.user_idcard idcard, u.real_name reporterName, r.*
@@ -37,16 +38,18 @@
         select u.user_mobile mobile,u.user_idcard idcard,u.real_name reporterName,r.*
         from report r
         join user u on r.user_id = u.id
-        join group_user gu on gu.user_id = u.id
         <where>
             1=1
             <if test="reportParamDto.people != ''">
                 and (u.real_name like '%${reportParamDto.people}%' or u.user_idcard like '%${reportParamDto.people}%')
             </if>
             <if test="reportParamDto.phoneNumber != ''">
-                and u.user_mobile = ${reportParamDto.phoneNumber}
+                and u.user_mobile like '%${reportParamDto.phoneNumber}%'
             </if>
-            <if test="reportParamDto.havaMaterial != ''">
+            <if test="reportParamDto.isInGroup != null">
+                and r.is_in_group = ${reportParamDto.isInGroup}
+            </if>
+            <if test="reportParamDto.havaMaterial !=null">
                 <if test="reportParamDto.havaMaterial == 1">
                     and r.report_materials is not null
                 </if>
@@ -54,10 +57,37 @@
                     and r.report_materials is null
                 </if>
             </if>
-            <if test="reportParamDto.isInGroup != ''">
-                and r.status = ${reportParamDto.isInGroup}
+        </where>
+        and r.cause_id = #{causeId}   order by  r.ctime DESC limit #{size},#{current}
+    </select>
+
+    <select id="getPageByGroupIdCount" resultType="Integer">
+select count(1) from (
+        select u.user_mobile mobile,u.user_idcard idcard,u.real_name reporterName,r.*
+        from report r
+        join user u on r.user_id = u.id
+        <where>
+            1=1
+            <if test="reportParamDto.people != ''">
+                and (u.real_name like '%${reportParamDto.people}%' or u.user_idcard like '%${reportParamDto.people}%')
+            </if>
+            <if test="reportParamDto.phoneNumber != ''">
+                and u.user_mobile like '%${reportParamDto.phoneNumber}%'
+            </if>
+            <if test="reportParamDto.isInGroup != null">
+                and r.is_in_group = ${reportParamDto.isInGroup}
+            </if>
+            <if test="reportParamDto.havaMaterial !=null">
+                <if test="reportParamDto.havaMaterial == 1">
+                    and r.report_materials is not null
+                </if>
+                <if test="reportParamDto.havaMaterial == 0">
+                    and r.report_materials is null
+                </if>
             </if>
         </where>
-        and gu.group_id = #{groupId}
+        and r.cause_id = #{causeId}
+        ) as reporter
     </select>
+
 </mapper>
diff --git a/src/test/java/com/example/jz/JzApplicationTests.java b/src/test/java/com/example/jz/JzApplicationTests.java
index 8d887ac..a033531 100644
--- a/src/test/java/com/example/jz/JzApplicationTests.java
+++ b/src/test/java/com/example/jz/JzApplicationTests.java
@@ -1,5 +1,6 @@
 package com.example.jz;
 
+import com.example.jz.auth.DefaultPwdEncoder;
 import com.example.jz.config.MinIOConfig;
 import com.example.jz.service.MinIOService;
 import org.junit.jupiter.api.Test;
@@ -10,6 +11,8 @@
 class JzApplicationTests {
     @Autowired
     MinIOService minIOService;
+    @Autowired
+    DefaultPwdEncoder defaultPwdEncoder;
 
     @Test
     void contextLoads() {
@@ -19,7 +22,7 @@
 
     @Test
     void test() {
-
+        System.out.println(defaultPwdEncoder.encode("123456"));
     }
 
 }

--
Gitblit v1.8.0