cc1-admin-front 1.0.6 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/dist/apis/auth/ApiAuthPermission.d.ts +4 -0
- package/dist/apis/auth/ApiAuthRole.d.ts +4 -6
- package/dist/apis/auth/ApiAuthSession.d.ts +4 -0
- package/dist/apis/auth/ApiAuthUser.d.ts +2 -0
- package/dist/cc1-admin-front.css +1 -1
- package/dist/cc1-admin-front.js +25 -959
- package/dist/cc1-admin-front.umd.cjs +1 -1
- package/dist/{index-CatA5C4N.js → index-BHBDmhpM.js} +19 -15
- package/dist/{index-Aa_qAwSq.js → index-BKc52gsM.js} +69 -68
- package/dist/{index-DWmZQOPc.js → index-BNytnHfT.js} +62 -56
- package/dist/index-BbdDqL4R.js +106 -0
- package/dist/{index-D8U8yEvx.js → index-Bh99swBg.js} +9 -9
- package/dist/index-BsUQc1tS.js +72 -0
- package/dist/index-C0dTAIw4.js +182 -0
- package/dist/{index-pxgBPi_e.js → index-CEaedSLk.js} +21 -19
- package/dist/{index-DU5RPuKk.js → index-Cb9bja8p.js} +11 -11
- package/dist/index-CsUs4AR_.js +42 -0
- package/dist/{index-C8fkVOS0.js → index-CvtY70Y6.js} +16 -12
- package/dist/{index-rOyW50AB.js → index-CwyxJHDj.js} +34 -29
- package/dist/index-D3OkO10X.js +933 -0
- package/dist/{index-D6cX_pp2.js → index-DIRWVvKY.js} +27 -22
- package/dist/index-DPSZh1Ve.js +123 -0
- package/dist/{index-DzI5GwAU.js → index-E8d5Pz2_.js} +29 -25
- package/dist/{index-D47lvu37.js → index-SLpgD5v0.js} +81 -89
- package/dist/{index-DvZhYqrw.js → index-t7D_zBIH.js} +13 -12
- package/dist/index.d.ts +3 -3
- package/dist/plugins/directive.d.ts +1 -1
- package/dist/sstore/ssys.d.ts +0 -3
- package/dist/sstore/suser.d.ts +52 -9
- package/package.json +1 -1
- package/dist/apis/auth/ApiAuthApi.d.ts +0 -7
- package/dist/apis/system/ApiSystemTenant.d.ts +0 -6
- package/dist/index-BTuR22Wh.js +0 -41
- package/dist/index-CRagZR_l.js +0 -160
- package/dist/index-D7Xyt6lh.js +0 -180
- package/dist/index-DFNCjb_F.js +0 -69
- package/dist/index-Dejkixap.js +0 -181
- package/dist/index-uPQ6O40Q.js +0 -180
- package/dist/views/pages/system/tenant/index.vue.d.ts +0 -2
- /package/dist/views/pages/auth/{api → permission}/index.vue.d.ts +0 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { defineComponent as w, reactive as C, onMounted as x, resolveComponent as s, resolveDirective as k, openBlock as d, createBlock as r, withCtx as a, withDirectives as N, createVNode as l, createTextVNode as u, createCommentVNode as c, unref as S } from "vue";
|
|
2
|
+
import { h as V, f as p } from "./index-D3OkO10X.js";
|
|
3
|
+
import { TSys as A } from "cc1-form";
|
|
4
|
+
const T = /* @__PURE__ */ w({
|
|
5
|
+
__name: "index",
|
|
6
|
+
setup(B) {
|
|
7
|
+
const n = C({ loading: !1, list: [] }), m = async () => {
|
|
8
|
+
n.loading = !0;
|
|
9
|
+
try {
|
|
10
|
+
const i = await p.list();
|
|
11
|
+
n.list = i.data;
|
|
12
|
+
} finally {
|
|
13
|
+
n.loading = !1;
|
|
14
|
+
}
|
|
15
|
+
}, f = async (i, e) => {
|
|
16
|
+
await p.updateStatus({ _id: i._id, status: e }), i.status = e, A.success("权限状态已更新,受影响会话已失效");
|
|
17
|
+
};
|
|
18
|
+
return x(m), (i, e) => {
|
|
19
|
+
const o = s("el-table-column"), _ = s("el-tag"), h = s("el-switch"), b = s("el-table"), v = s("el-card"), g = k("loading");
|
|
20
|
+
return d(), r(v, { shadow: "never" }, {
|
|
21
|
+
header: a(() => e[0] || (e[0] = [
|
|
22
|
+
u("代码权限", -1)
|
|
23
|
+
])),
|
|
24
|
+
default: a(() => [
|
|
25
|
+
N((d(), r(b, {
|
|
26
|
+
data: n.list,
|
|
27
|
+
border: ""
|
|
28
|
+
}, {
|
|
29
|
+
default: a(() => [
|
|
30
|
+
l(o, {
|
|
31
|
+
prop: "group",
|
|
32
|
+
label: "分组",
|
|
33
|
+
width: "160"
|
|
34
|
+
}),
|
|
35
|
+
l(o, {
|
|
36
|
+
prop: "title",
|
|
37
|
+
label: "名称",
|
|
38
|
+
width: "180"
|
|
39
|
+
}),
|
|
40
|
+
l(o, {
|
|
41
|
+
prop: "url",
|
|
42
|
+
label: "URL",
|
|
43
|
+
"min-width": "280"
|
|
44
|
+
}),
|
|
45
|
+
l(o, {
|
|
46
|
+
prop: "method",
|
|
47
|
+
label: "Method",
|
|
48
|
+
width: "100"
|
|
49
|
+
}),
|
|
50
|
+
l(o, {
|
|
51
|
+
label: "属性",
|
|
52
|
+
width: "150"
|
|
53
|
+
}, {
|
|
54
|
+
default: a(({ row: t }) => [
|
|
55
|
+
t.system ? (d(), r(_, {
|
|
56
|
+
key: 0,
|
|
57
|
+
type: "danger"
|
|
58
|
+
}, {
|
|
59
|
+
default: a(() => e[1] || (e[1] = [
|
|
60
|
+
u("系统", -1)
|
|
61
|
+
])),
|
|
62
|
+
_: 1,
|
|
63
|
+
__: [1]
|
|
64
|
+
})) : c("", !0),
|
|
65
|
+
t.retired ? (d(), r(_, {
|
|
66
|
+
key: 1,
|
|
67
|
+
type: "info"
|
|
68
|
+
}, {
|
|
69
|
+
default: a(() => e[2] || (e[2] = [
|
|
70
|
+
u("已退役", -1)
|
|
71
|
+
])),
|
|
72
|
+
_: 1,
|
|
73
|
+
__: [2]
|
|
74
|
+
})) : c("", !0)
|
|
75
|
+
]),
|
|
76
|
+
_: 1
|
|
77
|
+
}),
|
|
78
|
+
l(o, {
|
|
79
|
+
label: "状态",
|
|
80
|
+
width: "120"
|
|
81
|
+
}, {
|
|
82
|
+
default: a(({ row: t }) => [
|
|
83
|
+
l(h, {
|
|
84
|
+
"model-value": t.status,
|
|
85
|
+
"active-value": 1,
|
|
86
|
+
"inactive-value": 2,
|
|
87
|
+
disabled: t.system || t.retired || !S(V)("/auth/permission/updateStatus"),
|
|
88
|
+
onChange: (y) => f(t, Number(y))
|
|
89
|
+
}, null, 8, ["model-value", "disabled", "onChange"])
|
|
90
|
+
]),
|
|
91
|
+
_: 1
|
|
92
|
+
})
|
|
93
|
+
]),
|
|
94
|
+
_: 1
|
|
95
|
+
}, 8, ["data"])), [
|
|
96
|
+
[g, n.loading]
|
|
97
|
+
])
|
|
98
|
+
]),
|
|
99
|
+
_: 1
|
|
100
|
+
});
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
export {
|
|
105
|
+
T as default
|
|
106
|
+
};
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { defineComponent as d, resolveComponent as s, openBlock as m, createBlock as u, withCtx as o, createVNode as
|
|
2
|
-
import {
|
|
1
|
+
import { defineComponent as d, resolveComponent as s, openBlock as m, createBlock as u, withCtx as o, createVNode as a, createElementVNode as e, unref as t, toDisplayString as r } from "vue";
|
|
2
|
+
import { S as f, a as i } from "./index-D3OkO10X.js";
|
|
3
3
|
import { _ as p } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
4
4
|
const v = { class: "user-info" }, h = ["src"], g = { class: "user-info-cont" }, x = { class: "user-info-name" }, k = /* @__PURE__ */ d({
|
|
5
5
|
__name: "index",
|
|
6
6
|
setup(w) {
|
|
7
7
|
return (C, n) => {
|
|
8
|
-
const
|
|
8
|
+
const c = s("el-card"), l = s("el-col"), _ = s("el-row");
|
|
9
9
|
return m(), u(_, { gutter: 20 }, {
|
|
10
10
|
default: o(() => [
|
|
11
|
-
|
|
11
|
+
a(l, null, {
|
|
12
12
|
default: o(() => [
|
|
13
|
-
|
|
13
|
+
a(c, {
|
|
14
14
|
shadow: "hover",
|
|
15
15
|
class: "mgb20"
|
|
16
16
|
}, {
|
|
@@ -22,8 +22,8 @@ const v = { class: "user-info" }, h = ["src"], g = { class: "user-info-cont" },
|
|
|
22
22
|
alt: ""
|
|
23
23
|
}, null, 8, h),
|
|
24
24
|
e("div", g, [
|
|
25
|
-
e("div", x,
|
|
26
|
-
e("div", null, "欢迎" +
|
|
25
|
+
e("div", x, r(t(i).userInfo.nickname), 1),
|
|
26
|
+
e("div", null, "欢迎" + r(t(i).userInfo.nickname) + "进入后台管理", 1)
|
|
27
27
|
])
|
|
28
28
|
]),
|
|
29
29
|
n[0] || (n[0] = e("div", { class: "user-info-list" }, [
|
|
@@ -43,7 +43,7 @@ const v = { class: "user-info" }, h = ["src"], g = { class: "user-info-cont" },
|
|
|
43
43
|
});
|
|
44
44
|
};
|
|
45
45
|
}
|
|
46
|
-
}),
|
|
46
|
+
}), y = /* @__PURE__ */ p(k, [["__scopeId", "data-v-28a63a57"]]);
|
|
47
47
|
export {
|
|
48
|
-
|
|
48
|
+
y as default
|
|
49
49
|
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { defineComponent as x, reactive as k, resolveComponent as y, openBlock as n, createElementBlock as C, unref as c, createBlock as a, withCtx as i, createTextVNode as p, createCommentVNode as l } from "vue";
|
|
2
|
+
import { TSys as m } from "cc1-form";
|
|
3
|
+
import { h as d } from "./index-D3OkO10X.js";
|
|
4
|
+
class u {
|
|
5
|
+
static export(e) {
|
|
6
|
+
return http.post("/db/export", e);
|
|
7
|
+
}
|
|
8
|
+
static import(e) {
|
|
9
|
+
return http.post({
|
|
10
|
+
url: "/db/import",
|
|
11
|
+
headers: {
|
|
12
|
+
"Content-Type": "multipart/form-data"
|
|
13
|
+
}
|
|
14
|
+
}, e);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
const b = { class: "row" }, B = /* @__PURE__ */ x({
|
|
18
|
+
__name: "index",
|
|
19
|
+
setup(f) {
|
|
20
|
+
const e = k({
|
|
21
|
+
import: () => {
|
|
22
|
+
const t = document.createElement("input");
|
|
23
|
+
t.type = "file", t.accept = ".json,application/json", t.onchange = async (o) => {
|
|
24
|
+
const r = o.target.files[0];
|
|
25
|
+
if (!r) return;
|
|
26
|
+
const s = new FileReader();
|
|
27
|
+
s.onload = async (h) => {
|
|
28
|
+
try {
|
|
29
|
+
await u.import({ file: r }), m.success("导入覆盖成功");
|
|
30
|
+
} catch (_) {
|
|
31
|
+
console.error("上传的文件不是合法JSON", _);
|
|
32
|
+
}
|
|
33
|
+
}, s.readAsText(r);
|
|
34
|
+
}, t.click();
|
|
35
|
+
},
|
|
36
|
+
export: async () => {
|
|
37
|
+
const { data: t } = await u.export();
|
|
38
|
+
m.success("备份成功" + t, {
|
|
39
|
+
duration: 3e3
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
return (t, o) => {
|
|
44
|
+
const r = y("el-button");
|
|
45
|
+
return n(), C("div", b, [
|
|
46
|
+
c(d)("/db/export") ? (n(), a(r, {
|
|
47
|
+
key: 0,
|
|
48
|
+
onClick: e.export
|
|
49
|
+
}, {
|
|
50
|
+
default: i(() => o[0] || (o[0] = [
|
|
51
|
+
p("备份数据", -1)
|
|
52
|
+
])),
|
|
53
|
+
_: 1,
|
|
54
|
+
__: [0]
|
|
55
|
+
}, 8, ["onClick"])) : l("", !0),
|
|
56
|
+
c(d)("/db/import") ? (n(), a(r, {
|
|
57
|
+
key: 1,
|
|
58
|
+
onClick: e.import
|
|
59
|
+
}, {
|
|
60
|
+
default: i(() => o[1] || (o[1] = [
|
|
61
|
+
p("导入覆盖", -1)
|
|
62
|
+
])),
|
|
63
|
+
_: 1,
|
|
64
|
+
__: [1]
|
|
65
|
+
}, 8, ["onClick"])) : l("", !0)
|
|
66
|
+
]);
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
export {
|
|
71
|
+
B as default
|
|
72
|
+
};
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import { defineComponent as L, reactive as B, resolveComponent as s, openBlock as o, createElementBlock as c, Fragment as m, createVNode as i, withCtx as r, unref as _, createBlock as f, createTextVNode as d, createCommentVNode as y, renderList as O } from "vue";
|
|
2
|
+
import { ElMessageBox as g } from "element-plus";
|
|
3
|
+
import { b as p, h as u, g as T, e as P, a as k } from "./index-D3OkO10X.js";
|
|
4
|
+
import { TSys as b } from "cc1-form";
|
|
5
|
+
const D = /* @__PURE__ */ L({
|
|
6
|
+
__name: "index",
|
|
7
|
+
setup(A) {
|
|
8
|
+
const e = B({
|
|
9
|
+
users: [],
|
|
10
|
+
roles: [],
|
|
11
|
+
resetLoading: {},
|
|
12
|
+
transfer: { show: !1, loading: !1, userId: "", managerId: "" },
|
|
13
|
+
managerOptions: [],
|
|
14
|
+
option: {
|
|
15
|
+
api: p,
|
|
16
|
+
data(a) {
|
|
17
|
+
return e.users = a, a;
|
|
18
|
+
},
|
|
19
|
+
form: {
|
|
20
|
+
openBefore: async () => {
|
|
21
|
+
e.roles.length || (e.roles = (await T.assignable()).data), P.setOptionsData(e.option, "roleIds", e.roles);
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
search: { show: !1 },
|
|
25
|
+
table: {
|
|
26
|
+
selectable: !0,
|
|
27
|
+
border: !0,
|
|
28
|
+
operate: { width: 270 },
|
|
29
|
+
update: () => u("/auth/user/update"),
|
|
30
|
+
delete: () => u("/auth/user/delete")
|
|
31
|
+
},
|
|
32
|
+
tools: {
|
|
33
|
+
add: () => u("/auth/user/create"),
|
|
34
|
+
delete: !1,
|
|
35
|
+
export: { fileName: () => `用户列表_${Date.now()}` }
|
|
36
|
+
},
|
|
37
|
+
column: [
|
|
38
|
+
{ key: "account", label: "账号", type: "input", value: "", rules: !0, form: { span: 12 } },
|
|
39
|
+
{
|
|
40
|
+
key: "status",
|
|
41
|
+
label: "状态",
|
|
42
|
+
type: "switch",
|
|
43
|
+
value: 1,
|
|
44
|
+
form: { span: 12 },
|
|
45
|
+
options: { switch: { activeValue: 1, activeLabel: "启用", inactiveValue: 2, inactiveLabel: "禁用" } }
|
|
46
|
+
},
|
|
47
|
+
{ key: "nickname", label: "昵称", type: "input", value: "", rules: !0, form: { span: 12 } },
|
|
48
|
+
{ key: "phone", label: "手机号", type: "input", value: "", form: { span: 12 } },
|
|
49
|
+
{ key: "desc", label: "简介", type: "input", value: "", show: { table: !1 }, form: { span: 12 } },
|
|
50
|
+
{
|
|
51
|
+
key: "roleIds",
|
|
52
|
+
label: "角色列表",
|
|
53
|
+
type: "treeSelect",
|
|
54
|
+
value: [],
|
|
55
|
+
show: { table: !1 },
|
|
56
|
+
options: { treeSelect: { data: [], multiple: !0, collapseTags: !0, checkStrictly: !0 } }
|
|
57
|
+
}
|
|
58
|
+
]
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
p.temporaryPasswordHandler = (a, t) => {
|
|
62
|
+
g.alert(t, `账号 ${a || ""} 的一次性临时密码`, {
|
|
63
|
+
confirmButtonText: "我已安全保存",
|
|
64
|
+
closeOnClickModal: !1,
|
|
65
|
+
closeOnPressEscape: !1
|
|
66
|
+
});
|
|
67
|
+
};
|
|
68
|
+
const h = async (a) => {
|
|
69
|
+
try {
|
|
70
|
+
await g.confirm(`确定重置账号“${a.account}”的密码并注销其会话吗?`, "重置密码", { type: "warning" });
|
|
71
|
+
} catch {
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
e.resetLoading[a._id] = !0;
|
|
75
|
+
try {
|
|
76
|
+
await p.resetPassword({ _id: a._id, account: a.account });
|
|
77
|
+
} finally {
|
|
78
|
+
e.resetLoading[a._id] = !1;
|
|
79
|
+
}
|
|
80
|
+
}, v = (a) => {
|
|
81
|
+
e.transfer = { show: !0, loading: !1, userId: a._id, managerId: "" };
|
|
82
|
+
const t = k.userInfo._id ? [k.userInfo] : [];
|
|
83
|
+
e.managerOptions = [...t, ...e.users].filter((l) => l._id !== a._id && !(l.ancestorIds || []).includes(a._id));
|
|
84
|
+
}, w = async () => {
|
|
85
|
+
if (!e.transfer.managerId) return b.fail("请选择新管理员");
|
|
86
|
+
e.transfer.loading = !0;
|
|
87
|
+
try {
|
|
88
|
+
await p.transfer({ _id: e.transfer.userId, managerId: e.transfer.managerId }), e.transfer.show = !1, b.success("用户及其下级已完成转移");
|
|
89
|
+
} finally {
|
|
90
|
+
e.transfer.loading = !1;
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
return (a, t) => {
|
|
94
|
+
const l = s("el-button"), I = s("t-curd"), C = s("el-option"), V = s("el-select"), x = s("el-dialog");
|
|
95
|
+
return o(), c(m, null, [
|
|
96
|
+
i(I, {
|
|
97
|
+
option: e.option
|
|
98
|
+
}, {
|
|
99
|
+
"table-op-left": r(({ row: n }) => [
|
|
100
|
+
_(u)("/auth/user/update") ? (o(), f(l, {
|
|
101
|
+
key: 0,
|
|
102
|
+
link: "",
|
|
103
|
+
type: "primary",
|
|
104
|
+
loading: e.resetLoading[n._id],
|
|
105
|
+
onClick: ($) => h(n)
|
|
106
|
+
}, {
|
|
107
|
+
default: r(() => t[3] || (t[3] = [
|
|
108
|
+
d("重置密码", -1)
|
|
109
|
+
])),
|
|
110
|
+
_: 2,
|
|
111
|
+
__: [3]
|
|
112
|
+
}, 1032, ["loading", "onClick"])) : y("", !0),
|
|
113
|
+
_(u)("/auth/user/transfer") ? (o(), f(l, {
|
|
114
|
+
key: 1,
|
|
115
|
+
link: "",
|
|
116
|
+
type: "primary",
|
|
117
|
+
onClick: ($) => v(n)
|
|
118
|
+
}, {
|
|
119
|
+
default: r(() => t[4] || (t[4] = [
|
|
120
|
+
d(" 转移 ", -1)
|
|
121
|
+
])),
|
|
122
|
+
_: 2,
|
|
123
|
+
__: [4]
|
|
124
|
+
}, 1032, ["onClick"])) : y("", !0)
|
|
125
|
+
]),
|
|
126
|
+
_: 1
|
|
127
|
+
}, 8, ["option"]),
|
|
128
|
+
i(x, {
|
|
129
|
+
modelValue: e.transfer.show,
|
|
130
|
+
"onUpdate:modelValue": t[2] || (t[2] = (n) => e.transfer.show = n),
|
|
131
|
+
title: "转移用户",
|
|
132
|
+
width: "460px"
|
|
133
|
+
}, {
|
|
134
|
+
footer: r(() => [
|
|
135
|
+
i(l, {
|
|
136
|
+
onClick: t[1] || (t[1] = (n) => e.transfer.show = !1)
|
|
137
|
+
}, {
|
|
138
|
+
default: r(() => t[5] || (t[5] = [
|
|
139
|
+
d("取消", -1)
|
|
140
|
+
])),
|
|
141
|
+
_: 1,
|
|
142
|
+
__: [5]
|
|
143
|
+
}),
|
|
144
|
+
i(l, {
|
|
145
|
+
type: "primary",
|
|
146
|
+
loading: e.transfer.loading,
|
|
147
|
+
onClick: w
|
|
148
|
+
}, {
|
|
149
|
+
default: r(() => t[6] || (t[6] = [
|
|
150
|
+
d("确认转移", -1)
|
|
151
|
+
])),
|
|
152
|
+
_: 1,
|
|
153
|
+
__: [6]
|
|
154
|
+
}, 8, ["loading"])
|
|
155
|
+
]),
|
|
156
|
+
default: r(() => [
|
|
157
|
+
i(V, {
|
|
158
|
+
modelValue: e.transfer.managerId,
|
|
159
|
+
"onUpdate:modelValue": t[0] || (t[0] = (n) => e.transfer.managerId = n),
|
|
160
|
+
filterable: "",
|
|
161
|
+
style: { width: "100%" },
|
|
162
|
+
placeholder: "选择新管理员"
|
|
163
|
+
}, {
|
|
164
|
+
default: r(() => [
|
|
165
|
+
(o(!0), c(m, null, O(e.managerOptions, (n) => (o(), f(C, {
|
|
166
|
+
key: n._id,
|
|
167
|
+
label: `${n.nickname} (${n.account})`,
|
|
168
|
+
value: n._id
|
|
169
|
+
}, null, 8, ["label", "value"]))), 128))
|
|
170
|
+
]),
|
|
171
|
+
_: 1
|
|
172
|
+
}, 8, ["modelValue"])
|
|
173
|
+
]),
|
|
174
|
+
_: 1
|
|
175
|
+
}, 8, ["modelValue"])
|
|
176
|
+
], 64);
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
export {
|
|
181
|
+
D as default
|
|
182
|
+
};
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { defineComponent as b, reactive as
|
|
2
|
-
import { ElMessageBox as
|
|
3
|
-
import {
|
|
1
|
+
import { defineComponent as b, reactive as d, resolveComponent as s, openBlock as y, createBlock as k, withCtx as t, createVNode as n, createTextVNode as i } from "vue";
|
|
2
|
+
import { ElMessageBox as v } from "element-plus";
|
|
3
|
+
import { j as f, h as u } from "./index-D3OkO10X.js";
|
|
4
4
|
import "cc1-form";
|
|
5
|
-
const
|
|
5
|
+
const g = /* @__PURE__ */ b({
|
|
6
6
|
__name: "index",
|
|
7
|
-
setup(
|
|
7
|
+
setup(h) {
|
|
8
8
|
const o = (l, e = "内容") => {
|
|
9
|
-
|
|
9
|
+
v.alert(
|
|
10
10
|
`<div style="white-space: pre-wrap; width: 1000px; word-break: break-all;">${l}</div>`,
|
|
11
11
|
e,
|
|
12
12
|
{
|
|
@@ -14,9 +14,9 @@ const T = /* @__PURE__ */ b({
|
|
|
14
14
|
dangerouslyUseHTMLString: !0
|
|
15
15
|
}
|
|
16
16
|
);
|
|
17
|
-
},
|
|
17
|
+
}, c = d({
|
|
18
18
|
option: {
|
|
19
|
-
api:
|
|
19
|
+
api: f,
|
|
20
20
|
data(l) {
|
|
21
21
|
return l.forEach((e) => {
|
|
22
22
|
e.createTime = new Date(e.createTime).Format();
|
|
@@ -24,6 +24,8 @@ const T = /* @__PURE__ */ b({
|
|
|
24
24
|
},
|
|
25
25
|
table: {
|
|
26
26
|
selectable: !0,
|
|
27
|
+
update: !1,
|
|
28
|
+
delete: () => u("/log/error/delete"),
|
|
27
29
|
column: [
|
|
28
30
|
{
|
|
29
31
|
key: "createTime",
|
|
@@ -50,7 +52,7 @@ const T = /* @__PURE__ */ b({
|
|
|
50
52
|
},
|
|
51
53
|
tools: {
|
|
52
54
|
add: !1,
|
|
53
|
-
|
|
55
|
+
delete: () => u("/log/error/delete"),
|
|
54
56
|
export: {
|
|
55
57
|
fileName: () => `错误日志_${(/* @__PURE__ */ new Date()).getTime()}`
|
|
56
58
|
}
|
|
@@ -144,18 +146,18 @@ const T = /* @__PURE__ */ b({
|
|
|
144
146
|
}
|
|
145
147
|
});
|
|
146
148
|
return (l, e) => {
|
|
147
|
-
const r =
|
|
148
|
-
return
|
|
149
|
-
option:
|
|
149
|
+
const r = s("el-button"), m = s("t-curd");
|
|
150
|
+
return y(), k(m, {
|
|
151
|
+
option: c.option
|
|
150
152
|
}, {
|
|
151
153
|
"table-params": t(({ row: a }) => [
|
|
152
154
|
n(r, {
|
|
153
155
|
type: "primary",
|
|
154
156
|
link: "",
|
|
155
|
-
onClick: (
|
|
157
|
+
onClick: (p) => o(a.params, "请求参数")
|
|
156
158
|
}, {
|
|
157
159
|
default: t(() => e[0] || (e[0] = [
|
|
158
|
-
|
|
160
|
+
i("查看", -1)
|
|
159
161
|
])),
|
|
160
162
|
_: 2,
|
|
161
163
|
__: [0]
|
|
@@ -165,10 +167,10 @@ const T = /* @__PURE__ */ b({
|
|
|
165
167
|
n(r, {
|
|
166
168
|
type: "primary",
|
|
167
169
|
link: "",
|
|
168
|
-
onClick: (
|
|
170
|
+
onClick: (p) => o(a.userAgent, "用户代理")
|
|
169
171
|
}, {
|
|
170
172
|
default: t(() => e[1] || (e[1] = [
|
|
171
|
-
|
|
173
|
+
i("查看", -1)
|
|
172
174
|
])),
|
|
173
175
|
_: 2,
|
|
174
176
|
__: [1]
|
|
@@ -178,10 +180,10 @@ const T = /* @__PURE__ */ b({
|
|
|
178
180
|
n(r, {
|
|
179
181
|
type: "primary",
|
|
180
182
|
link: "",
|
|
181
|
-
onClick: (
|
|
183
|
+
onClick: (p) => o(a.stack, "错误堆栈")
|
|
182
184
|
}, {
|
|
183
185
|
default: t(() => e[2] || (e[2] = [
|
|
184
|
-
|
|
186
|
+
i("查看", -1)
|
|
185
187
|
])),
|
|
186
188
|
_: 2,
|
|
187
189
|
__: [2]
|
|
@@ -193,5 +195,5 @@ const T = /* @__PURE__ */ b({
|
|
|
193
195
|
}
|
|
194
196
|
});
|
|
195
197
|
export {
|
|
196
|
-
|
|
198
|
+
g as default
|
|
197
199
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { defineComponent as k, reactive as w, resolveComponent as
|
|
2
|
-
import {
|
|
3
|
-
import { TSys as
|
|
4
|
-
const
|
|
1
|
+
import { defineComponent as k, reactive as w, resolveComponent as s, openBlock as m, createBlock as r, withCtx as a, createTextVNode as f, createCommentVNode as F, renderSlot as h, unref as y, watch as p } from "vue";
|
|
2
|
+
import { s as g, E } from "./index-D3OkO10X.js";
|
|
3
|
+
import { TSys as T } from "cc1-form";
|
|
4
|
+
const $ = /* @__PURE__ */ k({
|
|
5
5
|
__name: "index",
|
|
6
6
|
props: {
|
|
7
7
|
row: {
|
|
@@ -31,7 +31,7 @@ const b = /* @__PURE__ */ k({
|
|
|
31
31
|
}
|
|
32
32
|
});
|
|
33
33
|
return (l, t) => {
|
|
34
|
-
const c =
|
|
34
|
+
const c = s("el-button"), C = s("TFormList");
|
|
35
35
|
return m(), r(C, {
|
|
36
36
|
row: e.row,
|
|
37
37
|
field: e.field,
|
|
@@ -46,7 +46,7 @@ const b = /* @__PURE__ */ k({
|
|
|
46
46
|
onClick: (v) => x.upload.handler(n)
|
|
47
47
|
}, {
|
|
48
48
|
default: a(() => t[1] || (t[1] = [
|
|
49
|
-
|
|
49
|
+
f("上传图片", -1)
|
|
50
50
|
])),
|
|
51
51
|
_: 2,
|
|
52
52
|
__: [1]
|
|
@@ -62,7 +62,7 @@ const b = /* @__PURE__ */ k({
|
|
|
62
62
|
)
|
|
63
63
|
}, {
|
|
64
64
|
default: a(() => t[2] || (t[2] = [
|
|
65
|
-
|
|
65
|
+
f(" 查看图片 ", -1)
|
|
66
66
|
])),
|
|
67
67
|
_: 2,
|
|
68
68
|
__: [2]
|
|
@@ -73,19 +73,19 @@ const b = /* @__PURE__ */ k({
|
|
|
73
73
|
}, 8, ["row", "field", "itemFields"]);
|
|
74
74
|
};
|
|
75
75
|
}
|
|
76
|
-
}),
|
|
76
|
+
}), b = /* @__PURE__ */ k({
|
|
77
77
|
__name: "index",
|
|
78
78
|
setup(e) {
|
|
79
79
|
return p(
|
|
80
|
-
() =>
|
|
80
|
+
() => T.router.currentRoute.value.path,
|
|
81
81
|
(i, o) => {
|
|
82
|
-
CEvent.emit(
|
|
82
|
+
CEvent.emit(E.change, i);
|
|
83
83
|
},
|
|
84
84
|
{ immediate: !0 }
|
|
85
85
|
), (i, o) => null;
|
|
86
86
|
}
|
|
87
87
|
}), L = (e) => {
|
|
88
|
-
e.component("xRouteEvent",
|
|
88
|
+
e.component("xRouteEvent", b), e.component("xFormList", $);
|
|
89
89
|
}, S = {
|
|
90
90
|
install: L
|
|
91
91
|
};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { defineComponent as l, computed as m, resolveComponent as _, openBlock as n, createElementBlock as s, createElementVNode as t, unref as u, toDisplayString as r, createCommentVNode as a, createVNode as p, withCtx as f, createTextVNode as h } from "vue";
|
|
2
|
+
import { S as v } from "./index-D3OkO10X.js";
|
|
3
|
+
import { TSys as y } from "cc1-form";
|
|
4
|
+
import { useRoute as x } from "vue-router";
|
|
5
|
+
import { _ as g } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
6
|
+
const k = { style: { background: "#7395ff", width: "100vw", height: "100vh" } }, w = { class: "nfsystem" }, C = ["src"], b = { class: "nftitle" }, N = { key: 0 }, S = /* @__PURE__ */ l({
|
|
7
|
+
__name: "index",
|
|
8
|
+
setup(V) {
|
|
9
|
+
const i = x(), o = m(() => i.query.code === "403"), c = () => {
|
|
10
|
+
y.router.push("/");
|
|
11
|
+
};
|
|
12
|
+
return (B, e) => {
|
|
13
|
+
const d = _("el-button");
|
|
14
|
+
return n(), s("div", k, [
|
|
15
|
+
t("div", w, [
|
|
16
|
+
t("img", {
|
|
17
|
+
src: u(v).staticDir + "/images/404.png"
|
|
18
|
+
}, null, 8, C),
|
|
19
|
+
t("div", b, [
|
|
20
|
+
t("h2", null, r(o.value ? "无权访问" : "页面走丢了..."), 1),
|
|
21
|
+
t("h4", null, r(o.value ? "当前账号没有访问此页面的菜单权限。" : "非常抱歉,您所请求的页面不存在!"), 1),
|
|
22
|
+
o.value ? a("", !0) : (n(), s("h4", N, "请仔细检查您输入的网址是否正确。")),
|
|
23
|
+
p(d, {
|
|
24
|
+
type: "warning",
|
|
25
|
+
onClick: e[0] || (e[0] = (D) => c()),
|
|
26
|
+
style: { width: "220px" }
|
|
27
|
+
}, {
|
|
28
|
+
default: f(() => e[1] || (e[1] = [
|
|
29
|
+
h("返回主页", -1)
|
|
30
|
+
])),
|
|
31
|
+
_: 1,
|
|
32
|
+
__: [1]
|
|
33
|
+
})
|
|
34
|
+
])
|
|
35
|
+
])
|
|
36
|
+
]);
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
}), R = /* @__PURE__ */ g(S, [["__scopeId", "data-v-53361563"]]);
|
|
40
|
+
export {
|
|
41
|
+
R as default
|
|
42
|
+
};
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import {
|
|
1
|
+
import { defineComponent as u, reactive as n, resolveComponent as s, openBlock as c, createBlock as p } from "vue";
|
|
2
|
+
import { l as i, h as l } from "./index-D3OkO10X.js";
|
|
3
3
|
import "cc1-form";
|
|
4
|
-
const
|
|
4
|
+
const y = /* @__PURE__ */ u({
|
|
5
5
|
__name: "index",
|
|
6
|
-
setup(
|
|
7
|
-
const
|
|
6
|
+
setup(b) {
|
|
7
|
+
const r = n({
|
|
8
8
|
option: {
|
|
9
|
-
api:
|
|
9
|
+
api: i,
|
|
10
10
|
data(t) {
|
|
11
11
|
return t.forEach((e) => {
|
|
12
12
|
e.createTime = new Date(e.createTime).Format(), e.lastTime = e.lastTime ? new Date(Number(e.lastTime)).Format() : "-";
|
|
@@ -14,6 +14,8 @@ const h = /* @__PURE__ */ l({
|
|
|
14
14
|
},
|
|
15
15
|
table: {
|
|
16
16
|
selectable: !0,
|
|
17
|
+
update: () => l("/schedule/job/update"),
|
|
18
|
+
delete: () => l("/schedule/job/delete"),
|
|
17
19
|
column: [
|
|
18
20
|
{
|
|
19
21
|
key: "createTime",
|
|
@@ -39,18 +41,20 @@ const h = /* @__PURE__ */ l({
|
|
|
39
41
|
]
|
|
40
42
|
},
|
|
41
43
|
tools: {
|
|
44
|
+
add: () => l("/schedule/job/create"),
|
|
45
|
+
delete: () => l("/schedule/job/delete"),
|
|
42
46
|
export: {
|
|
43
47
|
fileName: () => `定时任务_${(/* @__PURE__ */ new Date()).getTime()}`,
|
|
44
48
|
before(t) {
|
|
45
49
|
const e = {
|
|
46
50
|
0: "正常",
|
|
47
51
|
1: "暂停"
|
|
48
|
-
},
|
|
52
|
+
}, o = {
|
|
49
53
|
0: "允许",
|
|
50
54
|
1: "禁止"
|
|
51
55
|
};
|
|
52
56
|
t.data.forEach((a) => {
|
|
53
|
-
a.status = e[a.status], a.concurrent =
|
|
57
|
+
a.status = e[a.status], a.concurrent = o[a.concurrent];
|
|
54
58
|
});
|
|
55
59
|
}
|
|
56
60
|
}
|
|
@@ -115,13 +119,13 @@ const h = /* @__PURE__ */ l({
|
|
|
115
119
|
}
|
|
116
120
|
});
|
|
117
121
|
return (t, e) => {
|
|
118
|
-
const
|
|
119
|
-
return c(),
|
|
120
|
-
option:
|
|
122
|
+
const o = s("t-curd");
|
|
123
|
+
return c(), p(o, {
|
|
124
|
+
option: r.option
|
|
121
125
|
}, null, 8, ["option"]);
|
|
122
126
|
};
|
|
123
127
|
}
|
|
124
128
|
});
|
|
125
129
|
export {
|
|
126
|
-
|
|
130
|
+
y as default
|
|
127
131
|
};
|