From fe33646ee6e2d1e57f2b51812e94983a0e9efb04 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期日, 14 十二月 2025 16:51:28 +0800
Subject: [PATCH] feat: 修复统计
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java | 87 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 87 insertions(+), 0 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
index f989b8b..4bef3fb 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
@@ -2,6 +2,8 @@
import java.util.List;
import java.util.Set;
+
+import com.ruoyi.system.service.ISysUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@@ -18,8 +20,10 @@
import com.ruoyi.framework.web.service.SysLoginService;
import com.ruoyi.framework.web.service.SysPermissionService;
import com.ruoyi.framework.web.service.TokenService;
+import com.ruoyi.framework.web.service.WechatLoginService;
import com.ruoyi.system.service.ISysDeptService;
import com.ruoyi.system.service.ISysMenuService;
+import com.ruoyi.common.annotation.Anonymous;
/**
* 鐧诲綍楠岃瘉
@@ -33,6 +37,8 @@
private SysLoginService loginService;
@Autowired
+ private ISysUserService userService;
+ @Autowired
private ISysMenuService menuService;
@Autowired
@@ -43,6 +49,87 @@
@Autowired
private ISysDeptService deptService;
+
+ @Autowired
+ private WechatLoginService wechatLogin;
+
+ /**
+ * 寰俊涓�閿櫥褰� - 閫氳繃OpenID鍜孶nionID鐧诲綍
+ * 浣跨敤WechatLoginService杩涜璁よ瘉
+ *
+ * @param requestBody 鍖呭惈openId鍜寀nionId鐨勮姹備綋
+ * @return 缁撴灉
+ */
+ @Anonymous
+ @PostMapping("/wechat/login/openid")
+ public AjaxResult loginByOpenId(@RequestBody java.util.Map<String, Object> requestBody)
+ {
+ String openId = (String) requestBody.get("openId");
+ String unionId = (String) requestBody.get("unionId");
+
+ if (com.ruoyi.common.utils.StringUtils.isEmpty(openId))
+ {
+ return AjaxResult.error("缂哄皯openId鍙傛暟");
+ }
+
+ try
+ {
+ // 璋冪敤WechatLoginService杩涜璁よ瘉
+ String token = wechatLogin.loginByOpenId(openId, unionId);
+
+ AjaxResult ajax = AjaxResult.success("鐧诲綍鎴愬姛");
+ ajax.put(Constants.TOKEN, token);
+ return ajax;
+ }
+ catch (Exception e)
+ {
+ return AjaxResult.error(e.getMessage());
+ }
+ }
+
+
+ /**
+ * 寰俊鎵嬫満鍙风櫥褰�(鎺ㄨ崘浣跨敤)
+ *
+ * @param requestBody 鍖呭惈loginCode(寰俊鐧诲綍code)鍜宲honeCode(鎵嬫満鍙锋巿鏉僣ode)
+ * @return 缁撴灉
+ */
+ @Anonymous
+ @PostMapping("/wechat/login/phone")
+ public AjaxResult loginByWechatPhone(@RequestBody java.util.Map<String, Object> requestBody)
+ {
+ String loginCode = (String) requestBody.get("loginCode");
+ String phoneCode = (String) requestBody.get("phoneCode");
+
+ if (com.ruoyi.common.utils.StringUtils.isEmpty(loginCode))
+ {
+ return AjaxResult.error("缂哄皯寰俊鐧诲綍code");
+ }
+
+ if (com.ruoyi.common.utils.StringUtils.isEmpty(phoneCode))
+ {
+ return AjaxResult.error("缂哄皯鎵嬫満鍙锋巿鏉僣ode");
+ }
+
+ try
+ {
+ // 璋冪敤WechatLoginService杩涜璁よ瘉
+ java.util.Map<String, Object> loginResult = wechatLogin.loginByWechatPhone(loginCode, phoneCode);
+
+ AjaxResult ajax = AjaxResult.success("鐧诲綍鎴愬姛");
+ ajax.put(Constants.TOKEN, loginResult.get("token"));
+ ajax.put("openId", loginResult.get("openId"));
+ if (loginResult.containsKey("unionId"))
+ {
+ ajax.put("unionId", loginResult.get("unionId"));
+ }
+ return ajax;
+ }
+ catch (Exception e)
+ {
+ return AjaxResult.error(e.getMessage());
+ }
+ }
/**
* 鐧诲綍鏂规硶
--
Gitblit v1.9.1