From 2862c3e4da3adbb4bea43151514f0c43b86476d6 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期六, 07 九月 2024 17:49:17 +0800
Subject: [PATCH] APP端冥想首页相关接口

---
 xinquan-auth/src/main/java/com/xinquan/auth/controller/TokenController.java |  127 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 119 insertions(+), 8 deletions(-)

diff --git a/xinquan-auth/src/main/java/com/xinquan/auth/controller/TokenController.java b/xinquan-auth/src/main/java/com/xinquan/auth/controller/TokenController.java
index 47e877a..7268679 100644
--- a/xinquan-auth/src/main/java/com/xinquan/auth/controller/TokenController.java
+++ b/xinquan-auth/src/main/java/com/xinquan/auth/controller/TokenController.java
@@ -1,8 +1,11 @@
 package com.xinquan.auth.controller;
 
+import com.xinquan.auth.form.AppChangePwdBody;
+import com.xinquan.auth.form.AppLoginBody;
 import com.xinquan.auth.form.AppRegisterBody;
 import com.xinquan.auth.form.LoginBody;
 import com.xinquan.auth.form.RegisterBody;
+import com.xinquan.auth.form.VerifyResultVO;
 import com.xinquan.auth.service.SysLoginService;
 import com.xinquan.common.core.domain.R;
 import com.xinquan.common.core.utils.JwtUtils;
@@ -13,16 +16,21 @@
 import com.xinquan.system.api.domain.SysRole;
 import com.xinquan.system.api.domain.SysUser;
 import com.xinquan.system.api.feignClient.SysUserClient;
+import com.xinquan.system.api.model.AppCaptchaBody;
+import com.xinquan.system.api.model.AppLoginUser;
+import com.xinquan.system.api.model.AppVerifyCellPhoneBody;
+import com.xinquan.system.api.model.AppWXLoginBody;
 import com.xinquan.system.api.model.LoginUser;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
-import java.util.Date;
+import java.time.LocalDateTime;
 import java.util.HashMap;
 import java.util.List;
 import javax.servlet.http.HttpServletRequest;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.CollectionUtils;
+import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -52,11 +60,15 @@
      * @param cellPhone 手机号码
      * @return
      */
-    @GetMapping("/app/send-captcha-code")
+    @GetMapping("/app/sendCaptchaCode")
     @ApiOperation(value = "发送验证码",tags = {"APP端"})
-    @ApiImplicitParams({@ApiImplicitParam(name = "cellPhone",value = "手机号码",required = true,dataType = "String",paramType = "query")})
-    public R<?> sendCaptchaCode(@RequestParam("cellPhone") String cellPhone) {
-        sysLoginService.sendCaptchaCode(cellPhone);
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "cellPhone", value = "手机号码", required = true, dataType = "String", paramType = "query"),
+            @ApiImplicitParam(name = "type", value = "类型 1=注册 2=验证码登录 3=找回密码 4=第三方登录后验证手机", required = true, dataType = "Integer", paramType = "query")})
+    public R<?> sendCaptchaCode(
+            @RequestParam(value = "cellPhone", required = true) String cellPhone,
+            @RequestParam("type") Integer type) {
+        sysLoginService.sendCaptchaCode(cellPhone, type);
         return R.ok();
     }
 
@@ -67,13 +79,112 @@
      */
     @ApiOperation(value = "注册账户",tags = {"APP端"})
     @PostMapping("/app/register")
-    public R<?> appRegister(@RequestBody AppRegisterBody appRegisterBody)
+    public R<AppLoginUser> appRegister(@Validated @RequestBody AppRegisterBody appRegisterBody)
     {
         // 用户注册
-        sysLoginService.appRegister(appRegisterBody);
+        AppLoginUser appLoginUser = sysLoginService.appRegister(appRegisterBody);
+        return R.ok(tokenService.createToken4AppLoginUser(appLoginUser));
+    }
+
+    /**
+     * 账号密码登录
+     *
+     * @param body
+     * @return
+     */
+    @ApiOperation(value = "账号密码登录", tags = {"APP端"})
+    @PostMapping("/app/login")
+    public R<AppLoginUser> appLogin(@Validated @RequestBody AppLoginBody body) {
+        AppLoginUser appLoginUser = sysLoginService.appLogin(body);
+        return R.ok(tokenService.createToken4AppLoginUser(appLoginUser));
+    }
+
+    /**
+     * 验证码登录
+     *
+     * @param body
+     * @return
+     */
+    @ApiOperation(value = "验证码登录", tags = {"APP端"})
+    @PostMapping("/app/captchaLogin")
+    public R<AppLoginUser> appCaptchaLogin(@Validated @RequestBody AppCaptchaBody body) {
+        AppLoginUser appLoginUser = sysLoginService.appCaptchaLogin(body);
+        return R.ok(tokenService.createToken4AppLoginUser(appLoginUser));
+    }
+
+    /**
+     * 验证手机号
+     *
+     * @param body
+     * @return
+     */
+    @ApiOperation(value = "忘记密码-验证手机号", tags = {"APP端"})
+    @PostMapping("/app/verifyPhone")
+    public R<VerifyResultVO> verifyPhone(@Validated @RequestBody AppCaptchaBody body) {
+        return R.ok(sysLoginService.verifyPhone(body));
+    }
+
+    /**
+     * 设置新密码
+     *
+     * @param body
+     * @return
+     */
+    @ApiOperation(value = "设置新密码", tags = {"APP端"})
+    @PostMapping("/app/changePassword")
+    public R<?> changePassword(@Validated @RequestBody AppChangePwdBody body) {
+        sysLoginService.changePassword(body);
         return R.ok();
     }
 
+    /**
+     * APP微信登录
+     *
+     * @param body
+     * @return
+     */
+    @ApiOperation(value = "微信登录", tags = {"APP端"})
+    @PostMapping("/app/wxLogin")
+    public R<AppLoginUser> thirdLogin(@Validated @RequestBody AppWXLoginBody body) {
+        AppLoginUser appLoginUser = sysLoginService.wxLogin(body);
+        return R.ok(tokenService.createToken4AppLoginUser(appLoginUser));
+    }
+
+    /**
+     * 苹果登录
+     *
+     * @param appleId
+     * @return
+     */
+    @ApiOperation(value = "苹果登录", tags = {"APP端"})
+    @PostMapping("/app/appleLogin")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "appleId", value = "苹果ID", required = true, dataType = "String", paramType = "query")})
+    public R<AppLoginUser> appleLogin(
+            @RequestParam(value = "appleId", required = true) String appleId) {
+        AppLoginUser appLoginUser = sysLoginService.appleLogin(appleId);
+        return R.ok(tokenService.createToken4AppLoginUser(appLoginUser));
+    }
+
+    /**
+     * 微信苹果登录-验证手机号
+     *
+     * @param body
+     * @return
+     */
+    @ApiOperation(value = "微信苹果登录-验证手机号", tags = {"APP端"})
+    @PostMapping("/app/verifyCellPhone")
+    public R<?> verifyCellPhone(@Validated @RequestBody AppVerifyCellPhoneBody body) {
+        return R.ok(tokenService.createToken4AppLoginUser(
+                sysLoginService.verifyCellPhone(body)));
+    }
+
+    /**
+     * 管理后台登录
+     *
+     * @param form
+     * @return
+     */
     @ApiOperation(value = "管理后台登录",tags = {"管理后台"})
     @PostMapping("login")
     public R<?> login(@RequestBody LoginBody form)
@@ -92,7 +203,7 @@
         // 修改用户最后登录时间
         SysUser sysUser = new SysUser();
         sysUser.setUserId(userInfo.getSysUser().getUserId());
-        sysUser.setLoginDate(new Date());
+        sysUser.setLoginDate(LocalDateTime.now());
         System.out.println("修改用户登录时间"+sysUser);
         userClient.updateSysUser(sysUser);
         // 获取登录token

--
Gitblit v1.7.1