diff --git a/src/main/java/com/mini/capi/sys/controller/LoginController.java b/src/main/java/com/mini/capi/sys/controller/LoginController.java index 484f04b..08456eb 100644 --- a/src/main/java/com/mini/capi/sys/controller/LoginController.java +++ b/src/main/java/com/mini/capi/sys/controller/LoginController.java @@ -4,11 +4,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.mini.capi.biz.domain.ApiMenus; import com.mini.capi.biz.domain.ApiModule; import com.mini.capi.biz.domain.ApiUser; +import com.mini.capi.biz.service.ApiMenusService; +import com.mini.capi.biz.service.ApiModuleService; import com.mini.capi.biz.service.ApiUserService; import com.mini.capi.model.auth.Result; -import com.mini.capi.sys.service.PortalService; import jakarta.annotation.Resource; -import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpSession; import lombok.Data; import org.springframework.web.bind.annotation.*; @@ -27,7 +27,10 @@ public class LoginController { private ApiUserService userService; @Resource - private PortalService portalService; + private ApiModuleService moduleService; + + @Resource + private ApiMenusService menusService; @Data @@ -72,16 +75,18 @@ public class LoginController { @GetMapping("/modules") public List modules() { - return portalService.listModules(); + return moduleService.list(); } @GetMapping("/menus") public List menus(@RequestParam String moduleCode) { - return portalService.listMenus(moduleCode); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("module_code", moduleCode); + return menusService.list(queryWrapper); } @GetMapping("/me") - public ApiUser me(HttpServletRequest request) { - return portalService.currentUser(request); + public ApiUser me(HttpSession session) { + return (ApiUser) session.getAttribute("Authorization"); } } diff --git a/src/main/java/com/mini/capi/sys/controller/LoginPageController.java b/src/main/java/com/mini/capi/sys/controller/LoginPageController.java index 661f02f..fc06cd2 100644 --- a/src/main/java/com/mini/capi/sys/controller/LoginPageController.java +++ b/src/main/java/com/mini/capi/sys/controller/LoginPageController.java @@ -13,10 +13,18 @@ public class LoginPageController { /** - * 首页 + * 主页 */ @GetMapping("/welcome") public String welcomePage() { return "forward:/views/demo.html"; } + + /** + * 系统首页-控制台 + */ + @GetMapping("/home") + public String homePage() { + return "forward:/views/home.html"; + } } diff --git a/src/main/java/com/mini/capi/sys/service/PortalService.java b/src/main/java/com/mini/capi/sys/service/PortalService.java deleted file mode 100644 index cc92932..0000000 --- a/src/main/java/com/mini/capi/sys/service/PortalService.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.mini.capi.sys.service; - -import com.mini.capi.biz.domain.ApiMenus; -import com.mini.capi.biz.domain.ApiModule; -import com.mini.capi.biz.domain.ApiUser; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.servlet.http.HttpSession; -import org.springframework.stereotype.Service; - -import java.util.Arrays; -import java.util.List; -import java.util.stream.Collectors; - -@Service -public class PortalService { - - - private final List modules = Arrays.asList( - createModule("m1","API管理","API","fa-code","#api"), - createModule("m2","邮件管理","MAIL","fa-envelope","#mail"), - createModule("m3","数据管理","DATA","fa-database","#data"), - createModule("m4","系统管理","SYS","fa-cog","#system") - ); - - private final List menus = Arrays.asList( - // API - createMenu("m1-1","新增API","API_ADD","fa-plus-circle","#api/add","API"), - createMenu("m1-2","API列表","API_LIST","fa-list","#api/list","API"), - createMenu("m1-3","调用统计","API_STAT","fa-bar-chart","#api/stat","API"), - createMenu("m1-4","密钥管理","API_KEY","fa-key","#api/key","API"), - createMenu("m1-5","权限设置","API_PERM","fa-shield","#api/perm","API"), - createMenu("m1-6","调用记录","API_LOG","fa-history","#api/log","API"), - - // MAIL - createMenu("m2-1","发送邮件","MAIL_SEND","fa-pencil","#mail/send","MAIL"), - createMenu("m2-2","收件箱","MAIL_INBOX","fa-inbox","#mail/inbox","MAIL"), - createMenu("m2-3","已发送","MAIL_SENT","fa-paper-plane","#mail/sent","MAIL"), - createMenu("m2-4","垃圾箱","MAIL_TRASH","fa-trash","#mail/trash","MAIL"), - createMenu("m2-5","星标邮件","MAIL_STAR","fa-star","#mail/star","MAIL"), - createMenu("m2-6","邮件设置","MAIL_SET","fa-cog","#mail/set","MAIL"), - - // DATA - createMenu("m3-1","数据列表","DATA_LIST","fa-table","#data/list","DATA"), - createMenu("m3-2","数据筛选","DATA_FILTER","fa-filter","#data/filter","DATA"), - createMenu("m3-3","数据导出","DATA_EXPORT","fa-download","#data/export","DATA"), - createMenu("m3-4","数据导入","DATA_IMPORT","fa-upload","#data/import","DATA"), - createMenu("m3-5","数据分析","DATA_ANALYZE","fa-bar-chart","#data/analyze","DATA"), - createMenu("m3-6","操作记录","DATA_LOG","fa-history","#data/log","DATA"), - - // SYS - createMenu("m4-1","用户管理","SYS_USER","fa-user","#sys/user","SYS"), - createMenu("m4-2","角色权限","SYS_ROLE","fa-users","#sys/role","SYS"), - createMenu("m4-3","系统设置","SYS_SET","fa-sliders","#sys/set","SYS"), - createMenu("m4-4","插件管理","SYS_PLUGIN","fa-plug","#sys/plugin","SYS"), - createMenu("m4-5","安全中心","SYS_SECURE","fa-shield","#sys/secure","SYS"), - createMenu("m4-6","关于系统","SYS_ABOUT","fa-info-circle","#sys/about","SYS") - ); - - public List listModules() { - return modules; - } - - public List listMenus(String moduleCode) { - return menus.stream() - .filter(m -> m.getModuleCode().equalsIgnoreCase(moduleCode)) - .collect(Collectors.toList()); - } - - public ApiUser currentUser(HttpServletRequest request) { - HttpSession session = request.getSession(); - return (ApiUser) session.getAttribute("Authorization"); - } - - /* ---------- helper ---------- */ - private ApiModule createModule(String id, String name, String code, String icon, String href) { - ApiModule m = new ApiModule(); - m.setModuleId(id); - m.setModuleName(name); - m.setModuleCode(code); - m.setCIcon(icon); - m.setCHref(href); - return m; - } - - private ApiMenus createMenu(String id, String name, String code, String icon, String href, String moduleCode) { - ApiMenus m = new ApiMenus(); - m.setMenuId(id); - m.setMenuName(name); - m.setMenuCode(code); - m.setCIcon(icon); - m.setCHref(href); - m.setModuleCode(moduleCode); - return m; - } -} diff --git a/src/main/resources/static/views/demo.html b/src/main/resources/static/views/demo.html index f342bca..d380d7d 100644 --- a/src/main/resources/static/views/demo.html +++ b/src/main/resources/static/views/demo.html @@ -56,6 +56,14 @@ animation: fadeOut 0.3s ease-in forwards; } + .tab-active { + @apply bg-white text-primary border-b-2 border-primary; + } + + .tab-inactive { + @apply bg-gray-100 text-gray-600 hover:bg-gray-200; + } + @keyframes fadeIn { from { opacity: 0; @@ -80,9 +88,8 @@ - -
+
@@ -93,8 +100,7 @@
-
- -
-
+ +
+
+
+ +
+ 控制台 + +
+
+ +
+
+ + +
+
+
- - + + - -