From 17e4c7e3e7b3ef60d9da6de3b2a39a14a53c38a0 Mon Sep 17 00:00:00 2001
From: z8018 <1282578289@qq.com>
Date: 星期三, 12 三月 2025 14:11:33 +0800
Subject: [PATCH] 1

---
 WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_UserController.cs |   85 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 84 insertions(+), 1 deletions(-)

diff --git a/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_UserController.cs b/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_UserController.cs
index ad05229..cdb3151 100644
--- a/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_UserController.cs
+++ b/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_UserController.cs
@@ -3,11 +3,14 @@
 using Microsoft.AspNetCore.Http;
 using Microsoft.AspNetCore.Mvc;
 using Microsoft.Extensions.Caching.Memory;
+using Newtonsoft.Json;
 using StackExchange.Profiling;
 using WIDESEAWCS_Core;
 using WIDESEAWCS_Core.Authorization;
 using WIDESEAWCS_Core.BaseController;
+using WIDESEAWCS_Core.CodeGenerator;
 using WIDESEAWCS_Core.Const;
+using WIDESEAWCS_Core.Extensions;
 using WIDESEAWCS_Core.Helper;
 using WIDESEAWCS_Core.HttpContextUser;
 using WIDESEAWCS_Core.Utilities;
@@ -28,6 +31,42 @@
             _httpContextAccessor = httpContextAccessor;
         }
 
+        [HttpPost, Route("swgLogin"), AllowAnonymous]
+        public dynamic SwgLogin([FromBody] SwaggerLoginRequest loginRequest)
+        {
+            if (loginRequest is null)
+            {
+                return new { result = false };
+            }
+
+            try
+            {
+                LoginInfo loginInfo = new LoginInfo
+                {
+                    Password = loginRequest.pwd,
+                    UserName = loginRequest.name
+                };
+                var result = Service.Login(loginInfo);
+                if (result.Status)
+                {
+                    HttpContext.SuccessSwagger();
+                    Dictionary<string, object>? dict = JsonConvert.DeserializeObject<Dictionary<string, object>>(result.Data.Serialize());
+                    if (dict != null)
+                    {
+                        HttpContext.SuccessSwaggerJwt((dict.ContainsKey("token") ? dict["token"].ToString() : "") ?? "");
+                    }
+                    string str = HttpContext.GetSuccessSwaggerJwt();
+                    return new { result = true };
+                }
+            }
+            catch (Exception ex)
+            {
+
+            }
+
+            return new { result = false };
+        }
+
         [HttpPost, Route("login"), AllowAnonymous]
         public IActionResult Login([FromBody] LoginInfo loginInfo)
         {
@@ -42,7 +81,7 @@
         [HttpPost, Route("modifyPwd")]
         public IActionResult ModifyPwd(string oldPwd, string newPwd)
         {
-            return Json( Service.ModifyPwd(oldPwd, newPwd));
+            return Json(Service.ModifyPwd(oldPwd, newPwd));
         }
 
         [HttpGet, Route("getVierificationCode"), AllowAnonymous]
@@ -63,5 +102,49 @@
         {
             return WebResponseContent.Instance.OK(data: JwtHelper.SerializeJwt(code));
         }
+        [HttpPost, Route("replaceToken")]
+        public WebResponseContent ReplaceToken()
+        {
+            WebResponseContent responseContent = new WebResponseContent();
+            try
+            {
+                string token = App.User.GetToken();
+                if (string.IsNullOrEmpty(token))
+                {
+                    return responseContent = WebResponseContent.Instance.Error("token鏃犳晥锛岃閲嶆柊鐧诲綍锛�");
+                }
+                TokenModelJwt tokenModelJwt = new TokenModelJwt()
+                {
+                    RoleId = App.User.RoleId,
+                    TenantId = App.User.TenantId,
+                    UserId = App.User.UserId,
+                    UserName = App.User.UserName
+                };
+                string newToken = JwtHelper.IssueJwt(tokenModelJwt);
+                return responseContent = WebResponseContent.Instance.OK(data: newToken);
+            }
+            catch (Exception ex)
+            {
+                return responseContent.Error(ex.Message);
+            }
+
+        }
+
+        [HttpPost, Route("CreateIRepository"), AllowAnonymous]
+        public WebResponseContent CreateIRepository(string tableName, string nameSpace)
+        {
+            CodeGenertors.CreateIRepository(tableName, nameSpace);
+            CodeGenertors.CreateRepository(tableName, nameSpace);
+            CodeGenertors.CreateIService(tableName, nameSpace);
+            CodeGenertors.CreateService(tableName, nameSpace);
+            CodeGenertors.CreateController(tableName, nameSpace);
+            return WebResponseContent.Instance.OK();
+        }
+    }
+
+    public class SwaggerLoginRequest
+    {
+        public string name { get; set; }
+        public string pwd { get; set; }
     }
 }

--
Gitblit v1.9.3