From f6f5a8af7e6c5359e13d7c75172adb0bc6cac555 Mon Sep 17 00:00:00 2001
From: hyb <kk_huangyangbo@163.com>
Date: Fri, 23 Jan 2026 01:53:11 +0000
Subject: [PATCH] feat: 添加用户登录功能、添加注册功能、注册审批功能,参考:注册审批功能测试指南.md、驱动代码模块增加插入其他项目代码功能,驱动代码模块增加插入其他项目代码功能,优化测试报告模块前端布局和美化 - 实现超级用户管理系统用户,可进行增删改查,其他用户只可查看本人的数据,不可进行增删改 - 将Django后台管理中的用户配置相关功能迁移到系统中进行适配、可配置禁用、是否管理员、是否超级用户 - 增加用户管理的分组字段、可直接进行分组操作,实现用户管理即可通过分组配置实现各项目的访问权限 - 实现登录页面注册 - 实现管理员首页点击注册用户审批可实现通过不通过 - 实现未审核用户的登录提示与审核未通过的用户登录提示 - 实现一键插入其他本人可访问项目的脚本代码
---
测试组/Test_platform/Interface_automation/frontend/src/restful/api.js | 59 +++++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 45 insertions(+), 14 deletions(-)
diff --git "a/\346\265\213\350\257\225\347\273\204/Test_platform/Interface_automation/frontend/src/restful/api.js" "b/\346\265\213\350\257\225\347\273\204/Test_platform/Interface_automation/frontend/src/restful/api.js"
index 5ccd8e1..9e4ced7 100644
--- "a/\346\265\213\350\257\225\347\273\204/Test_platform/Interface_automation/frontend/src/restful/api.js"
+++ "b/\346\265\213\350\257\225\347\273\204/Test_platform/Interface_automation/frontend/src/restful/api.js"
@@ -10,15 +10,14 @@
axios.interceptors.request.use(
function(config) {
- if (
- !config.url.startsWith("/api/user") ||
- config.url === "/api/user/list" ||
- config.url === "/api/user/login_log"
- ) {
- // 在请求拦截中,每次请求,都会加上一个Authorization头
+ const noAuthUrls = [
+ '/api/user/login',
+ '/api/user/register',
+ '/api/user/groups'
+ ];
+
+ if (!noAuthUrls.includes(config.url)) {
config.headers.Authorization = store.token;
-
- // 取url地址的第四位作为projectId, 如果不存在,默认设置为0
let projectId = window.location.pathname.split("/")[3];
projectId = projectId ? projectId : 0;
config.headers["Project"] = projectId;
@@ -58,12 +57,6 @@
duration: 2000
});
}
- if (status === 403) {
- Message.error({
- message: error.response.data.detail,
- duration: 2000
- });
- }
} catch (e) {
Message.error({
message: "服务器连接超时, 请重试",
@@ -77,6 +70,10 @@
export const login = params => {
return axios.post("/api/user/login", params).then(res => res.data);
+};
+
+export const register = params => {
+ return axios.post("/api/user/register", params).then(res => res.data);
};
export const addProject = params => {
@@ -138,6 +135,12 @@
export const getProjectYapiInfo = pk => {
return axios
.get("/api/lunarlink/project/yapi/" + pk)
+ .then(res => res.data);
+};
+
+export const getGroupList = () => {
+ return axios
+ .get("/api/user/groups")
.then(res => res.data);
};
@@ -521,3 +524,31 @@
}).then(res => res.data);
};
+export const getUserManagementList = (params) => {
+ return axios.get("/api/user/management/", { params }).then(res => res.data);
+};
+
+export const createUser = (data) => {
+ return axios.post("/api/user/management/", data).then(res => res.data);
+};
+
+export const updateUser = (userId, data) => {
+ return axios.patch(`/api/user/management/${userId}/`, data).then(res => res.data);
+};
+
+export const deleteUser = (userId) => {
+ return axios.delete(`/api/user/management/${userId}/`).then(res => res.data);
+};
+
+export const getUserDetail = (userId) => {
+ return axios.get(`/api/user/management/${userId}/`).then(res => res.data);
+};
+
+export const getUserApprovalList = (params) => {
+ return axios.get("/api/user/approval/", { params }).then(res => res.data);
+};
+
+export const approveUser = (userId, data) => {
+ return axios.post(`/api/user/approval/${userId}/approve/`, data).then(res => res.data);
+};
+
--
Gitblit v1.9.1