API数据表更新
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
package com.mini.capi.biz.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-08-29
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/biz/apiMenus")
|
||||
public class ApiMenusController {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.mini.capi.biz.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-08-29
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/biz/apiModule")
|
||||
public class ApiModuleController {
|
||||
|
||||
}
|
||||
65
src/main/java/com/mini/capi/biz/domain/ApiMenus.java
Normal file
65
src/main/java/com/mini/capi/biz/domain/ApiMenus.java
Normal file
@@ -0,0 +1,65 @@
|
||||
package com.mini.capi.biz.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
*
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-08-29
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@TableName("biz_api_menus")
|
||||
public class ApiMenus implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableField("menu_id")
|
||||
private String menuId;
|
||||
|
||||
@TableField("menu_name")
|
||||
private String menuName;
|
||||
|
||||
@TableField("menu_code")
|
||||
private String menuCode;
|
||||
|
||||
@TableField("c_icon")
|
||||
private String cIcon;
|
||||
|
||||
@TableField("c_href")
|
||||
private String cHref;
|
||||
|
||||
@TableField("module_code")
|
||||
private String moduleCode;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("f_tenant_id")
|
||||
private String fTenantId;
|
||||
|
||||
/**
|
||||
* 流程id
|
||||
*/
|
||||
@TableField("f_flow_id")
|
||||
private String fFlowId;
|
||||
|
||||
/**
|
||||
* 流程任务主键
|
||||
*/
|
||||
@TableField("f_flow_task_id")
|
||||
private String fFlowTaskId;
|
||||
|
||||
/**
|
||||
* 流程任务状态
|
||||
*/
|
||||
@TableField("f_flow_state")
|
||||
private Integer fFlowState;
|
||||
}
|
||||
62
src/main/java/com/mini/capi/biz/domain/ApiModule.java
Normal file
62
src/main/java/com/mini/capi/biz/domain/ApiModule.java
Normal file
@@ -0,0 +1,62 @@
|
||||
package com.mini.capi.biz.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
*
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-08-29
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@TableName("biz_api_module")
|
||||
public class ApiModule implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableField("module_id")
|
||||
private String moduleId;
|
||||
|
||||
@TableField("module_name")
|
||||
private String moduleName;
|
||||
|
||||
@TableField("module_code")
|
||||
private String moduleCode;
|
||||
|
||||
@TableField("c_icon")
|
||||
private String cIcon;
|
||||
|
||||
@TableField("c_href")
|
||||
private String cHref;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("f_tenant_id")
|
||||
private String fTenantId;
|
||||
|
||||
/**
|
||||
* 流程id
|
||||
*/
|
||||
@TableField("f_flow_id")
|
||||
private String fFlowId;
|
||||
|
||||
/**
|
||||
* 流程任务主键
|
||||
*/
|
||||
@TableField("f_flow_task_id")
|
||||
private String fFlowTaskId;
|
||||
|
||||
/**
|
||||
* 流程任务状态
|
||||
*/
|
||||
@TableField("f_flow_state")
|
||||
private Integer fFlowState;
|
||||
}
|
||||
16
src/main/java/com/mini/capi/biz/mapper/ApiMenusMapper.java
Normal file
16
src/main/java/com/mini/capi/biz/mapper/ApiMenusMapper.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.mapper;
|
||||
|
||||
import com.mini.capi.biz.domain.ApiMenus;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-08-29
|
||||
*/
|
||||
public interface ApiMenusMapper extends BaseMapper<ApiMenus> {
|
||||
|
||||
}
|
||||
16
src/main/java/com/mini/capi/biz/mapper/ApiModuleMapper.java
Normal file
16
src/main/java/com/mini/capi/biz/mapper/ApiModuleMapper.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.mapper;
|
||||
|
||||
import com.mini.capi.biz.domain.ApiModule;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-08-29
|
||||
*/
|
||||
public interface ApiModuleMapper extends BaseMapper<ApiModule> {
|
||||
|
||||
}
|
||||
16
src/main/java/com/mini/capi/biz/service/ApiMenusService.java
Normal file
16
src/main/java/com/mini/capi/biz/service/ApiMenusService.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.service;
|
||||
|
||||
import com.mini.capi.biz.domain.ApiMenus;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-08-29
|
||||
*/
|
||||
public interface ApiMenusService extends IService<ApiMenus> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.service;
|
||||
|
||||
import com.mini.capi.biz.domain.ApiModule;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-08-29
|
||||
*/
|
||||
public interface ApiModuleService extends IService<ApiModule> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.mini.capi.biz.service.impl;
|
||||
|
||||
import com.mini.capi.biz.domain.ApiMenus;
|
||||
import com.mini.capi.biz.mapper.ApiMenusMapper;
|
||||
import com.mini.capi.biz.service.ApiMenusService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-08-29
|
||||
*/
|
||||
@Service
|
||||
public class ApiMenusServiceImpl extends ServiceImpl<ApiMenusMapper, ApiMenus> implements ApiMenusService {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.mini.capi.biz.service.impl;
|
||||
|
||||
import com.mini.capi.biz.domain.ApiModule;
|
||||
import com.mini.capi.biz.mapper.ApiModuleMapper;
|
||||
import com.mini.capi.biz.service.ApiModuleService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-08-29
|
||||
*/
|
||||
@Service
|
||||
public class ApiModuleServiceImpl extends ServiceImpl<ApiModuleMapper, ApiModule> implements ApiModuleService {
|
||||
|
||||
}
|
||||
@@ -29,7 +29,7 @@ public class demo {
|
||||
.pathInfo(Collections.singletonMap(OutputFile.xml, System.getProperty("user.dir") + "/src/main/resources/mapper"));
|
||||
})
|
||||
.strategyConfig(builder -> {
|
||||
builder.addInclude("biz_api_user")
|
||||
builder.addInclude("biz_api_module,biz_api_menus")
|
||||
.addTablePrefix("biz_")
|
||||
.entityBuilder()
|
||||
.enableLombok()
|
||||
|
||||
@@ -1,18 +1,20 @@
|
||||
package com.mini.capi.sys.controller;
|
||||
|
||||
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.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.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
|
||||
@@ -24,6 +26,9 @@ public class LoginController {
|
||||
@Resource
|
||||
private ApiUserService userService;
|
||||
|
||||
@Resource
|
||||
private PortalService portalService;
|
||||
|
||||
|
||||
@Data
|
||||
public static class LoginRequest implements Serializable {
|
||||
@@ -63,4 +68,20 @@ public class LoginController {
|
||||
return Result.error("登录失败,请稍后重试");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/modules")
|
||||
public List<ApiModule> modules() {
|
||||
return portalService.listModules();
|
||||
}
|
||||
|
||||
@GetMapping("/menus")
|
||||
public List<ApiMenus> menus(@RequestParam String moduleCode) {
|
||||
return portalService.listMenus(moduleCode);
|
||||
}
|
||||
|
||||
@GetMapping("/me")
|
||||
public ApiUser me(HttpServletRequest request) {
|
||||
return portalService.currentUser(request);
|
||||
}
|
||||
}
|
||||
|
||||
95
src/main/java/com/mini/capi/sys/service/PortalService.java
Normal file
95
src/main/java/com/mini/capi/sys/service/PortalService.java
Normal file
@@ -0,0 +1,95 @@
|
||||
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<ApiModule> 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<ApiMenus> 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<ApiModule> listModules() {
|
||||
return modules;
|
||||
}
|
||||
|
||||
public List<ApiMenus> 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;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user