From 13c0e173eeaede98217ecca45f09c74a863f3175 Mon Sep 17 00:00:00 2001
From: baizonghao <1719256278@qq.com>
Date: 星期二, 21 三月 2023 14:46:45 +0800
Subject: [PATCH] ok

---
 src/main/java/com/example/jz/service/impl/MinIOServiceImpl.java  |    1 
 src/main/resources/mapper/ReportDao.xml                          |    9 +
 src/main/java/com/example/jz/dao/ReportDao.java                  |    2 
 src/main/java/com/example/jz/modle/entity/Report.java            |   15 ++
 src/main/java/com/example/jz/modle/entity/User.java              |    6 +
 src/main/java/com/example/jz/controller/ReportController.java    |    7 +
 src/main/java/com/example/jz/controller/CauseController.java     |    6 +
 src/main/java/com/example/jz/controller/WxAppController.java     |  144 ++++++++++++++++++++++++++--
 src/main/java/com/example/jz/service/impl/CauseServiceImpl.java  |    5 +
 src/main/java/com/example/jz/aop/InterfaceLogHandler.java        |   29 +++++
 src/main/java/com/example/jz/modle/vo/ReportListVo.java          |    1 
 pom.xml                                                          |    4 
 src/main/java/com/example/jz/modle/vo/MessageUserInfoVO.java     |    7 +
 src/main/java/com/example/jz/auth/MyTokenSecurityConfig.java     |    2 
 src/main/java/com/example/jz/service/ReportService.java          |    2 
 src/main/java/com/example/jz/modle/vo/ReportVXVO.java            |   19 +++
 src/main/java/com/example/jz/service/impl/ReportServiceImpl.java |   12 ++
 17 files changed, 254 insertions(+), 17 deletions(-)

diff --git a/pom.xml b/pom.xml
index 94c8a10..9c9a115 100644
--- a/pom.xml
+++ b/pom.xml
@@ -94,6 +94,10 @@
             <version>1.9.6</version>
         </dependency>
         <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-aop</artifactId>
+        </dependency>
+        <dependency>
             <groupId>com.alibaba</groupId>
             <artifactId>easyexcel</artifactId>
             <version>3.0.5</version>
diff --git a/src/main/java/com/example/jz/aop/InterfaceLogHandler.java b/src/main/java/com/example/jz/aop/InterfaceLogHandler.java
new file mode 100644
index 0000000..ba4b58b
--- /dev/null
+++ b/src/main/java/com/example/jz/aop/InterfaceLogHandler.java
@@ -0,0 +1,29 @@
+package com.example.jz.aop;
+
+import lombok.extern.log4j.Log4j2;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.annotation.Aspect;
+import org.aspectj.lang.annotation.Before;
+import org.aspectj.lang.annotation.Pointcut;
+import org.springframework.stereotype.Component;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+
+import javax.servlet.http.HttpServletRequest;
+
+@Aspect
+@Component
+@Log4j2
+public class InterfaceLogHandler {
+
+    @Pointcut("execution(* com.example.jz.controller.*.*(..))")
+    public void pointcut(){};
+
+    @Before("pointcut()")
+    public void log(JoinPoint joinPoint){
+        ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
+        HttpServletRequest request = attributes.getRequest();
+        log.info("璁块棶鎺ュ彛:{}",request.getRequestURI());
+    }
+
+}
diff --git a/src/main/java/com/example/jz/auth/MyTokenSecurityConfig.java b/src/main/java/com/example/jz/auth/MyTokenSecurityConfig.java
index 0df8a6c..3b71339 100644
--- a/src/main/java/com/example/jz/auth/MyTokenSecurityConfig.java
+++ b/src/main/java/com/example/jz/auth/MyTokenSecurityConfig.java
@@ -77,7 +77,7 @@
                 .and()
                 .authorizeRequests() // 璇锋眰璁剧疆
                 .antMatchers("/user/register", "/webjars/**", "/swagger/**", "/v2/api-docs", "/doc.html", "/swagger-ui.html", "/swagger-resources/**" ).permitAll() // 閰嶇疆涓嶉渶瑕佽璇佺殑鎺ュ彛
-                .antMatchers("/wx/login").permitAll() // 寮�鏀惧皬绋嬪簭鐨勬帴鍙�
+                .antMatchers("/wx/login","/wx/isExist","/wx/checkIdentity","/wx/publicity","/minio/upload", "/minio/img/**").permitAll() // 寮�鏀惧皬绋嬪簭鐨勬帴鍙�
                 .anyRequest().authenticated() // 浠讳綍璇锋眰閮介渶瑕佽璇�
                 .and()
                 .logout() // logout璁惧畾
diff --git a/src/main/java/com/example/jz/controller/CauseController.java b/src/main/java/com/example/jz/controller/CauseController.java
index 785324d..4f3ef4a 100644
--- a/src/main/java/com/example/jz/controller/CauseController.java
+++ b/src/main/java/com/example/jz/controller/CauseController.java
@@ -6,13 +6,19 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.api.ApiController;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.example.jz.dao.GroupDao;
+import com.example.jz.dao.GroupUserDao;
+import com.example.jz.dao.MessageDao;
+import com.example.jz.dao.ReportDao;
 import com.example.jz.modle.R;
 import com.example.jz.modle.dto.AddReportDto;
 import com.example.jz.modle.dto.CauseDto;
 import com.example.jz.modle.dto.ReportParamDto;
 import com.example.jz.modle.entity.Cause;
+import com.example.jz.modle.entity.GroupUser;
 import com.example.jz.modle.vo.ReportListVo;
 import com.example.jz.service.CauseService;
+import com.example.jz.service.GroupService;
 import com.example.jz.service.ReportService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
diff --git a/src/main/java/com/example/jz/controller/ReportController.java b/src/main/java/com/example/jz/controller/ReportController.java
index 0146590..d08477d 100644
--- a/src/main/java/com/example/jz/controller/ReportController.java
+++ b/src/main/java/com/example/jz/controller/ReportController.java
@@ -30,6 +30,7 @@
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
 import java.io.Serializable;
+import java.util.Map;
 
 /**
  * 鎶ユ琛�(Report)琛ㄦ帶鍒跺眰
@@ -102,6 +103,12 @@
         return R.ok(reportService.audit(report));
     }
 
+    @PostMapping("/reject")
+    @ApiOperation(value = "椹冲洖")
+    public R<Boolean> reject(@RequestBody Map map) {
+        return R.ok(reportService.reject((Integer) map.get("id"), (String) map.get("reason")));
+    }
+
     @ApiOperation(httpMethod = "PUT", value = "妗堜欢鍙�-鎶ユ浜哄憳-缂栬緫")
     @PutMapping("/updateReport")
     @ApiResponse(message = "鎵ц鎴愬姛", code = 200)
diff --git a/src/main/java/com/example/jz/controller/WxAppController.java b/src/main/java/com/example/jz/controller/WxAppController.java
index c936a00..207acea 100644
--- a/src/main/java/com/example/jz/controller/WxAppController.java
+++ b/src/main/java/com/example/jz/controller/WxAppController.java
@@ -11,9 +11,7 @@
 import com.example.jz.dao.UserDao;
 import com.example.jz.modle.R;
 import com.example.jz.modle.entity.*;
-import com.example.jz.modle.vo.CauseVo;
-import com.example.jz.modle.vo.MemberVo;
-import com.example.jz.modle.vo.ReportVo;
+import com.example.jz.modle.vo.*;
 import com.example.jz.service.*;
 import com.example.jz.utils.HttpUtil;
 import lombok.SneakyThrows;
@@ -27,6 +25,7 @@
 import org.springframework.web.client.RestTemplate;
 
 import java.util.*;
+import java.util.function.Function;
 import java.util.stream.Collectors;
 
 @RestController
@@ -71,9 +70,8 @@
     @Autowired
     PublicityService publicityService;
 
-    @GetMapping("/login")
-    @SneakyThrows
-    public R login(@RequestParam String code, @RequestParam String phoneNumberCode) {
+    @GetMapping("/checkIdentity")
+    public R checkIdentity(@RequestParam String code, @RequestParam String phoneNumberCode) throws Exception {
         //灏忕▼搴忕櫥褰昽penid
         Map<String, Object> pathUrl = new HashMap<>();
         pathUrl.put("appid", appid);
@@ -102,14 +100,92 @@
         JSONObject entries = JSONUtil.parseObj(response.getBody());
         PhoneInFo phone_info = entries.get("phone_info", PhoneInFo.class);
         User user = userDao.selectOne(new QueryWrapper<User>().eq("user_mobile", phone_info.getPurePhoneNumber()));
+        if(Objects.isNull(user)){
+            return R.ok(2, phone_info.getPurePhoneNumber());
+        }else {
+            if (user.getRole() == 1){
+                return R.ok(1, phone_info.getPurePhoneNumber());
+            } else  {
+                return R.ok(0, phone_info.getPurePhoneNumber());
+            }
+        }
+    }
+
+//    @GetMapping("/login")
+//    @SneakyThrows
+//    public R login(@RequestParam String code, @RequestParam String phoneNumberCode) {
+//        //灏忕▼搴忕櫥褰昽penid
+//        Map<String, Object> pathUrl = new HashMap<>();
+//        pathUrl.put("appid", appid);
+//        pathUrl.put("secret", secret);
+//        pathUrl.put("js_code", code);
+//        pathUrl.put("grant_type", grant_type);
+//        JSONObject result = JSONUtil.parseObj(HttpUtil.doGet(wxApp_userCode_verify_url, pathUrl));
+//
+//        //鎵嬫満鍙风爜鐨刟ccess token
+//        Map<String, Object> accessToken = new HashMap<>();
+//        accessToken.put("appid", appid);
+//        accessToken.put("secret", secret);
+//        accessToken.put("grant_type", "client_credential");
+//        JSONObject accessTokenResult = JSONUtil.parseObj(HttpUtil.doGet(wxApp_accessToken_verify_url, accessToken));
+//
+//        //鐢佃瘽鍙风爜
+//        String url = wxApp_phoneNumber_verify_url + "?access_token=" + accessTokenResult.get("access_token");
+//        Map<String, Object> phoneNumber = new HashMap<>();
+//        phoneNumber.put("code", phoneNumberCode);
+//
+//        HttpHeaders headers = new HttpHeaders();
+//        HttpEntity httpEntity = new HttpEntity<>(phoneNumber, headers);
+//        System.out.println(httpEntity);
+//        ResponseEntity response = restTemplate.postForEntity(url, httpEntity, Object.class);
+//        response.getBody();
+//        JSONObject entries = JSONUtil.parseObj(response.getBody());
+//        PhoneInFo phone_info = entries.get("phone_info", PhoneInFo.class);
+//        User user = userDao.selectOne(new QueryWrapper<User>().eq("user_mobile", phone_info.getPurePhoneNumber()));
+//        String token;
+//        Integer role;
+//        Integer id = null;
+//        if (user == null || user.getId() == null) {
+//            User newUser = new User();
+//            newUser.setUserMobile(phone_info.getPurePhoneNumber());
+//            newUser.setUserRegtime(new Date());
+//            newUser.setOpenid(result.get("openid").toString());
+//            newUser.setStatus(1);
+//            newUser.setRole(0);
+//            newUser.setCtime(new Date());
+//            userService.save(newUser);
+//            token = tokenJwtManager.createToken(newUser);
+//            role = 0;
+//            id = newUser.getId();
+//        } else {
+//            user.setOpenid(result.get("openid").toString());
+//            user.setUserLasttime(new Date());
+//            userDao.updateById(user);
+//            token = tokenJwtManager.createToken(user);
+//            role = user.getRole();
+//            id = user.getId();
+//        }
+//        User user1 = userDao.selectOne(new QueryWrapper<User>().eq("user_mobile", phone_info.getPurePhoneNumber()));
+//        HashMap<String, Object> loginMessage = new HashMap<>();
+//        loginMessage.put("id", id);
+//        loginMessage.put("token", token);
+//        loginMessage.put("role", role);
+//        loginMessage.put("time", user1.getUserIdcard());
+//        return R.ok(loginMessage);
+//    }
+
+    @GetMapping("/login")
+    @SneakyThrows
+    public R login(@RequestParam String phone) {
+        User user = userDao.selectOne(new QueryWrapper<User>().eq("user_mobile", phone));
         String token;
         Integer role;
         Integer id = null;
         if (user == null || user.getId() == null) {
             User newUser = new User();
-            newUser.setUserMobile(phone_info.getPurePhoneNumber());
+            newUser.setUserMobile(phone);
             newUser.setUserRegtime(new Date());
-            newUser.setOpenid(result.get("openid").toString());
+            newUser.setOpenid(phone);
             newUser.setStatus(1);
             newUser.setRole(0);
             newUser.setCtime(new Date());
@@ -118,14 +194,13 @@
             role = 0;
             id = newUser.getId();
         } else {
-            user.setOpenid(result.get("openid").toString());
             user.setUserLasttime(new Date());
             userDao.updateById(user);
             token = tokenJwtManager.createToken(user);
             role = user.getRole();
             id = user.getId();
         }
-        User user1 = userDao.selectOne(new QueryWrapper<User>().eq("user_mobile", phone_info.getPurePhoneNumber()));
+        User user1 = userDao.selectOne(new QueryWrapper<User>().eq("user_mobile", phone));
         HashMap<String, Object> loginMessage = new HashMap<>();
         loginMessage.put("id", id);
         loginMessage.put("token", token);
@@ -154,12 +229,31 @@
 
     @GetMapping("/user/cause")
     public R getCause(Integer id) {
-        return R.ok(reportService.list(new QueryWrapper<Report>().eq("user_id", id)));
+        List<Report> reports = reportService.list(new QueryWrapper<Report>().eq("user_id", id));
+        List<ReportVXVO> res = reports.stream()
+                .map(item -> {
+                    ReportVXVO res1 = new ReportVXVO();
+                    BeanUtils.copyProperties(item, res1);
+                    if (!Objects.isNull(causeService.getById(item.getCauseId()))){
+                        res1.setReportDescription(causeService.getById(item.getCauseId()).getName());
+                    }
+                    return res1;
+                }).collect(Collectors.toList());
+        return R.ok(res);
     }
 
     @PostMapping("/user/addReport")
-    public R addReport(@RequestBody Report report) {
-        User user = userService.getOne(new QueryWrapper<User>().eq("id", report.getUserId()));
+    public R addReport(@RequestBody ReportVXVO reportVXVO) {
+        User user = userService.getOne(new QueryWrapper<User>().eq("id", reportVXVO.getUserId()));
+        user.setRealName(reportVXVO.getRealName());
+        user.setUserIdcard(reportVXVO.getUserIdCard());
+        user.setLocation(reportVXVO.getLocation());
+        user.setSex(reportVXVO.getSex());
+        user.setWorkingLocation(reportVXVO.getWorkingLocation());
+        userService.update(user, new LambdaQueryWrapper<User>().eq(User::getId, user.getId()));
+        Report report = new Report();
+        BeanUtils.copyProperties(reportVXVO, report);
+        report.setAmountInvolved(reportVXVO.getAmountInvolved());
         report.setPic(user.getPic());
         report.setIsInGroup(0);
         report.setCtime(new Date());
@@ -193,6 +287,27 @@
             });
         }
         return R.ok(list);
+    }
+
+    @GetMapping("/isExist")
+    public R isExist(@RequestParam String phone){
+        User one = userService.getOne(new LambdaQueryWrapper<User>().eq(User::getUserMobile, phone));
+        if(Objects.isNull(one)){
+            return R.ok(false, "璇ユ墜鏈哄彿娌℃湁琚敞鍐�");
+        }else {
+            return R.ok(true, "璇ユ墜鏈哄彿宸茶娉ㄥ唽");
+        }
+    }
+
+    /**
+     *  鏄剧ず鐢ㄦ埛淇℃伅
+     */
+    @GetMapping("/getGroupUserInfo")
+    public R getGroupUserInfo(@RequestParam Integer id){
+        User one = userService.getOne(new LambdaQueryWrapper<User>().eq(User::getId, id));
+        MessageUserInfoVO messageUserInfoVO = new MessageUserInfoVO();
+        BeanUtils.copyProperties(messageUserInfoVO, one);
+        return R.ok(messageUserInfoVO);
     }
 
     private void getMessage(HashMap<String, Object> groupMap, List<Message> message) {
@@ -250,6 +365,7 @@
                         messageMap.put("id", user.getId());
                         messageMap.put("name", item.getReportName());
                         messageMap.put("mobile", user.getUserMobile());
+                        messageMap.put("idcard", user.getUserIdcard());
                         messageMap.put("pic", user.getPic());
                         messageMap.put("role", 0);
                     } else {
@@ -400,6 +516,8 @@
         return R.ok(messageService.save(message));
     }
 
+
+
     @GetMapping("/group/user/sendMsg")
     public R sendUserMsg(@RequestParam Integer id, @RequestParam Integer groupId, @RequestParam String msg) {
         if (StringUtils.isBlank(msg)) {
diff --git a/src/main/java/com/example/jz/dao/ReportDao.java b/src/main/java/com/example/jz/dao/ReportDao.java
index d4605dd..6d78709 100644
--- a/src/main/java/com/example/jz/dao/ReportDao.java
+++ b/src/main/java/com/example/jz/dao/ReportDao.java
@@ -29,5 +29,7 @@
     Integer getPageByGroupIdCount(ReportParamDto reportParamDto, Integer causeId);
 
     List<Report> selectListGroup(Integer id);
+
+    Report selectReportByReportId(Integer id);
 }
 
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 4b4920d..a5b3f59 100644
--- a/src/main/java/com/example/jz/modle/entity/Report.java
+++ b/src/main/java/com/example/jz/modle/entity/Report.java
@@ -39,7 +39,18 @@
     //娑夋閲戦
     private Double amountInvolved;
     //鎶ユ鏉愭枡鍥剧墖鍦板潃 澶氫釜鐢�,鍒嗛殧
-    private String reportMaterials;
+//    private String reportMaterials;
+
+    //  韬唤璇�
+    private String idCardMaterials;
+    //  鍚堝悓
+    private String contractMaterials;
+    //  浜ゆ槗
+    private String transactionMaterials;
+    //  鍏朵粬
+    private String elseMaterials;
+
+
     //鎶ユ鏃堕棿
     @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private Date reportTime;
@@ -63,6 +74,8 @@
     private String reportDescription;
     //鏄惁杩涚兢
     private Integer isInGroup;
+    //椹冲洖鍘熷洜
+    private String remarks;
 
     /**
      * 鑾峰彇涓婚敭鍊�
diff --git a/src/main/java/com/example/jz/modle/entity/User.java b/src/main/java/com/example/jz/modle/entity/User.java
index b2b7109..c6323f3 100644
--- a/src/main/java/com/example/jz/modle/entity/User.java
+++ b/src/main/java/com/example/jz/modle/entity/User.java
@@ -88,5 +88,11 @@
     private Date ctime;
 
     private String openid;
+
+    private String location;
+
+    private String workingLocation;
+
+    private String sex;
 }
 
diff --git a/src/main/java/com/example/jz/modle/vo/MessageUserInfoVO.java b/src/main/java/com/example/jz/modle/vo/MessageUserInfoVO.java
new file mode 100644
index 0000000..cafda2e
--- /dev/null
+++ b/src/main/java/com/example/jz/modle/vo/MessageUserInfoVO.java
@@ -0,0 +1,7 @@
+package com.example.jz.modle.vo;
+
+public class MessageUserInfoVO {
+    private String realName;
+    private String userMobile;
+    private String userIdcard;
+}
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 cc9f2e6..5863922 100644
--- a/src/main/java/com/example/jz/modle/vo/ReportListVo.java
+++ b/src/main/java/com/example/jz/modle/vo/ReportListVo.java
@@ -23,4 +23,5 @@
     @ApiModelProperty(value = "鎶ユ浜鸿韩浠借瘉鍙�",dataType = "String")
     //鎶ユ浜鸿韩浠借瘉鍙�
     private String idcard;
+
 }
diff --git a/src/main/java/com/example/jz/modle/vo/ReportVXVO.java b/src/main/java/com/example/jz/modle/vo/ReportVXVO.java
new file mode 100644
index 0000000..80d6a9c
--- /dev/null
+++ b/src/main/java/com/example/jz/modle/vo/ReportVXVO.java
@@ -0,0 +1,19 @@
+package com.example.jz.modle.vo;
+
+import com.example.jz.modle.entity.Report;
+import lombok.Data;
+
+@Data
+public class ReportVXVO extends Report {
+    private String description;
+
+    private String Location;    //  鐜板眳鍦�
+
+    private String sex;     //  鎬у埆
+
+    private String workingLocation;     // 宸ヤ綔鍗曚綅
+
+    private String realName;    // 濮撳悕
+
+    private String userIdCard;  // 韬唤璇�
+}
diff --git a/src/main/java/com/example/jz/service/ReportService.java b/src/main/java/com/example/jz/service/ReportService.java
index 9609883..731814e 100644
--- a/src/main/java/com/example/jz/service/ReportService.java
+++ b/src/main/java/com/example/jz/service/ReportService.java
@@ -43,5 +43,7 @@
     List<Report> listGroup(Integer id);
 
     void loadFileReport(MultipartFile multipartFile, Integer causeId);
+
+    Boolean reject(Integer id, String reason);
 }
 
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 dd7b199..085d98b 100644
--- a/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java
@@ -171,6 +171,7 @@
         cause.setId(id);
         groupDao.update(null, Wrappers.lambdaUpdate(Group.class)
                 .set(Group::getGroupName, causeDto.getName())
+                        .set(Group::getUserId, causeDto.getUserId())
                 .eq(Group::getCauseId, id));
         return causeDao.updateById(cause);
     }
@@ -209,6 +210,10 @@
 
     @Override
     public void deleteCause(Integer id) {
+        List<Report> reports = reportDao.selectList(new LambdaQueryWrapper<Report>().eq(Report::getCauseId, id));
+        for (Report report : reports) {
+            reportDao.deleteById(report.getId());
+        }
         causeDao.deleteById(id);
         Group group = groupDao.selectOne(new LambdaQueryWrapper<Group>().eq(Group::getCauseId, id));
         if (group != null) {
diff --git a/src/main/java/com/example/jz/service/impl/MinIOServiceImpl.java b/src/main/java/com/example/jz/service/impl/MinIOServiceImpl.java
index 2358e28..d78868b 100644
--- a/src/main/java/com/example/jz/service/impl/MinIOServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/MinIOServiceImpl.java
@@ -6,7 +6,6 @@
 import com.example.jz.service.MinIOService;
 import io.minio.MinioClient;
 import io.minio.PutObjectOptions;
-import jdk.internal.org.objectweb.asm.tree.FieldInsnNode;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
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 5ae21e5..5bf28a8 100644
--- a/src/main/java/com/example/jz/service/impl/ReportServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/ReportServiceImpl.java
@@ -245,4 +245,16 @@
                 .autoCloseStream(true)
                 .doReadAll();
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean reject(Integer id, String reason) {
+        Report report = reportDao.selectReportByReportId(id);
+        // 1. 鏇存柊鎶ユ琛�
+        report.setStatus(2);
+        report.setIsInGroup(2);
+        report.setRemarks(reason);
+        reportDao.updateById(report);
+        return true;
+    }
 }
\ No newline at end of file
diff --git a/src/main/resources/mapper/ReportDao.xml b/src/main/resources/mapper/ReportDao.xml
index d3845e6..c5917a8 100644
--- a/src/main/resources/mapper/ReportDao.xml
+++ b/src/main/resources/mapper/ReportDao.xml
@@ -25,7 +25,7 @@
             <if test="reportParamDto.isInGroup != null">
                 and r.is_in_group = ${reportParamDto.isInGroup}
             </if>
-        and  r.status = 0
+        and  (r.status = 0 or r.status = 2)
         </where>
         order by  r.ctime DESC
     </select>
@@ -101,5 +101,12 @@
         GROUP BY
             t2.group_id
     </select>
+    <select id="selectReportByReportId" resultType="com.example.jz.modle.entity.Report">
+        SELECT
+            *
+        FROM
+            `report`
+        WHERE id =#{id}
+    </select>
 
 </mapper>

--
Gitblit v1.8.0