Your Name 2 年之前
父節點
當前提交
934bb73686

+ 22
- 0
src/main/java/com/example/civilizedcity/controller/CommController.java 查看文件

@@ -0,0 +1,22 @@
1
+package com.example.civilizedcity.controller;
2
+
3
+
4
+import com.example.civilizedcity.common.BaseController;
5
+import com.example.civilizedcity.common.ResponseBean;
6
+import io.swagger.annotations.Api;
7
+import io.swagger.annotations.ApiOperation;
8
+import io.swagger.annotations.ApiParam;
9
+import org.springframework.web.bind.annotation.*;
10
+
11
+@Api(tags ="通用")
12
+@RestController
13
+@RequestMapping("/")
14
+public class CommController extends BaseController {
15
+
16
+    @GetMapping("/ma/captcha")
17
+    @ApiOperation(value="获取验证码", notes = "获取验证码", httpMethod = "GET", response = ResponseBean.class)
18
+    public ResponseBean getCaptcha(@ApiParam("手机号码") @RequestParam("phone") String phone) throws Exception {
19
+
20
+        return ResponseBean.success("success");
21
+    }
22
+}

+ 28
- 1
src/main/java/com/example/civilizedcity/controller/WxMaController.java 查看文件

@@ -11,9 +11,10 @@ import com.example.civilizedcity.common.StringUtils;
11 11
 import com.example.civilizedcity.config.WxMaUitl;
12 12
 import com.example.civilizedcity.entity.SysUser;
13 13
 import com.example.civilizedcity.entity.TaPerson;
14
-import com.example.civilizedcity.entity.TaPersonReflect;
14
+import com.example.civilizedcity.service.SysLoginService;
15 15
 import com.example.civilizedcity.service.SysUserDutyService;
16 16
 import com.example.civilizedcity.service.TaPersonReflectService;
17
+import com.example.civilizedcity.vo.WxChangePwd;
17 18
 import com.example.civilizedcity.vo.LoginParam;
18 19
 import io.swagger.annotations.Api;
19 20
 import io.swagger.annotations.ApiOperation;
@@ -40,6 +41,9 @@ public class WxMaController extends BaseController {
40 41
     @Autowired
41 42
     SysUserDutyService sysUserDutyService;
42 43
 
44
+    @Autowired
45
+    SysLoginService sysLoginService;
46
+
43 47
 
44 48
 //    private boolean checkLoginParam(LoginParam loginParam) {
45 49
 //        return !StringUtils.isEmpty(loginParam.getCode())
@@ -184,4 +188,27 @@ public class WxMaController extends BaseController {
184 188
         return ResponseBean.success(taPerson);
185 189
     }
186 190
 
191
+    @PostMapping("/change-password")
192
+    @ApiOperation(value="修改密码", notes = "修改密码", httpMethod = "POST", response = ResponseBean.class)
193
+    public ResponseBean changePassword(@ApiParam("修改密码") @RequestBody WxChangePwd wxChangePwd) throws Exception {
194
+
195
+        if (StringUtils.isEmpty(wxChangePwd.getPhone())
196
+            || StringUtils.isEmpty(wxChangePwd.getCaptcha())
197
+            || StringUtils.isEmpty(wxChangePwd.getPassword())
198
+        ) {
199
+            return ResponseBean.error("修改密码参数部分为空");
200
+        }
201
+
202
+        // TODO 校验验证码
203
+
204
+        SysUser user = sysUserService.getExistBy("phone", wxChangePwd.getPhone(), false, true);
205
+        if (null == user) {
206
+            return ResponseBean.error("当前手机号不存在");
207
+        }
208
+
209
+        sysLoginService.changePassword(user, wxChangePwd);
210
+
211
+        return ResponseBean.success("success");
212
+    }
213
+
187 214
 }

+ 2
- 0
src/main/java/com/example/civilizedcity/mapper/SysLoginMapper.java 查看文件

@@ -15,4 +15,6 @@ public interface SysLoginMapper  extends BaseMapper<SysLogin>{
15 15
     SysLogin getByAccount(@Param("account") String account);
16 16
 
17 17
      SysLogin getByUserAndPassword(@Param("userId") String userId, @Param("password") String password);
18
+
19
+     int updatePassword(@Param("userId") String userId, @Param("password") String password);
18 20
  }

+ 6
- 3
src/main/java/com/example/civilizedcity/service/SysLoginService.java 查看文件

@@ -2,12 +2,15 @@ package com.example.civilizedcity.service;
2 2
 
3 3
 import com.baomidou.mybatisplus.extension.service.IService;
4 4
 import com.example.civilizedcity.entity.SysLogin;
5
+import com.example.civilizedcity.entity.SysUser;
6
+import com.example.civilizedcity.vo.WxChangePwd;
5 7
 
6
- /**
8
+/**
7 9
  * 系统账户表;(sys_login)表服务接口
8 10
  * @author : http://njyunzhi.com
9 11
  * @date : 2022-12-12
10 12
  */
11 13
 public interface SysLoginService extends IBaseService<SysLogin> {
12
-    
13
-}
14
+
15
+     boolean changePassword(SysUser user, WxChangePwd wxChangePwd);
16
+ }

+ 15
- 2
src/main/java/com/example/civilizedcity/service/impl/SysLoginServiceImpl.java 查看文件

@@ -1,16 +1,29 @@
1 1
 package com.example.civilizedcity.service.impl;
2 2
 
3
+import com.example.civilizedcity.common.EncryptUtils;
4
+import com.example.civilizedcity.entity.SysUser;
5
+import com.example.civilizedcity.vo.WxChangePwd;
3 6
 import org.springframework.beans.factory.annotation.Autowired;
4 7
 import org.springframework.stereotype.Service;
5 8
 import com.example.civilizedcity.entity.SysLogin;
6 9
 import com.example.civilizedcity.mapper.SysLoginMapper;
7 10
 import com.example.civilizedcity.service.SysLoginService;
8
- /**
11
+
12
+/**
9 13
  * 系统账户表;(sys_login)表服务实现类
14
+ *
10 15
  * @author : http://www.chiner.pro
11 16
  * @date : 2022-12-12
12 17
  */
13 18
 @Service
14 19
 public class SysLoginServiceImpl extends BaseServiceImpl<SysLoginMapper, SysLogin> implements SysLoginService {
15
-    
20
+
21
+    @Override
22
+    public boolean changePassword(SysUser user, WxChangePwd wxChangePwd) {
23
+
24
+        String pwd = EncryptUtils.md5(wxChangePwd.getPassword(), user.getUserId());
25
+        baseMapper.updatePassword(user.getUserId(), pwd);
26
+
27
+        return false;
28
+    }
16 29
 }

+ 20
- 0
src/main/java/com/example/civilizedcity/vo/WxChangePwd.java 查看文件

@@ -0,0 +1,20 @@
1
+package com.example.civilizedcity.vo;
2
+
3
+
4
+import io.swagger.annotations.ApiModel;
5
+import io.swagger.annotations.ApiModelProperty;
6
+import lombok.Data;
7
+
8
+@ApiModel(description = "修改密码")
9
+@Data
10
+public class WxChangePwd {
11
+
12
+    @ApiModelProperty("手机号")
13
+    String phone;
14
+
15
+    @ApiModelProperty("验证码")
16
+    String captcha;
17
+
18
+    @ApiModelProperty("密码")
19
+    String password;
20
+}

+ 2
- 0
src/main/resources/application.yml 查看文件

@@ -28,6 +28,8 @@ yz:
28 28
       - "/static/**"
29 29
       - "/**/login"
30 30
       - "/**/signin"
31
+      - "/ma/captcha"
32
+      - "/ma/change-password"
31 33
 
32 34
 wx:
33 35
   miniapp:

+ 8
- 0
src/main/resources/mapper/SysLoginMapper.xml 查看文件

@@ -2,6 +2,14 @@
2 2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 3
 
4 4
 <mapper namespace="com.example.civilizedcity.mapper.SysLoginMapper">
5
+    <update id="updatePassword">
6
+        UPDATE sys_login t
7
+        SET t.`password` = #{password}
8
+        WHERE
9
+            t.user_id = #{userId}
10
+          AND t.`status` &gt; -1
11
+          AND t.`password` IS NOT NULL
12
+    </update>
5 13
 
6 14
     <select id="getByAccount" resultType="com.example.civilizedcity.entity.SysLogin">
7 15
         SELECT