@since2006/pages 2026.4.0 → 2026.4.2
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/dist/es/index.js +11 -9
- package/dist/es/src/app/org/OrgIndex.vue.js +7 -0
- package/dist/es/src/app/org/OrgIndex.vue2.js +278 -0
- package/dist/es/src/app/org/OrgTree.vue.js +182 -0
- package/dist/es/src/app/org/OrgTree.vue2.js +4 -0
- package/dist/es/src/app/org/RolePanel.vue.js +7 -0
- package/dist/es/src/app/org/RolePanel.vue2.js +157 -0
- package/dist/es/src/app/org/UserTableList.vue.js +7 -0
- package/dist/es/src/app/org/UserTableList.vue2.js +246 -0
- package/dist/es/src/app/org/api.js +175 -0
- package/dist/es/src/app/org/assets/cube.svg.js +4 -0
- package/dist/es/src/app/org/assets/division.svg.js +4 -0
- package/dist/es/src/app/org/assets/nopos.svg.js +4 -0
- package/dist/es/src/app/org/assets/plugin.svg.js +4 -0
- package/dist/es/src/app/org/assets/unit.svg.js +4 -0
- package/dist/es/src/app/org/assets/user.svg.js +4 -0
- package/dist/es/src/app/org/index.js +6 -0
- package/dist/es/src/app/org/menu/DeptMenu.vue.js +54 -0
- package/dist/es/src/app/org/menu/DeptMenu.vue2.js +4 -0
- package/dist/es/src/app/org/menu/OrgMenu.vue.js +73 -0
- package/dist/es/src/app/org/menu/OrgMenu.vue2.js +4 -0
- package/dist/es/src/app/org/menu/PermMenu.vue.js +55 -0
- package/dist/es/src/app/org/menu/PermMenu.vue2.js +4 -0
- package/dist/es/src/app/org/menu/PosMenu.vue.js +45 -0
- package/dist/es/src/app/org/menu/PosMenu.vue2.js +4 -0
- package/dist/es/src/app/org/menu/RoleMenu.vue.js +55 -0
- package/dist/es/src/app/org/menu/RoleMenu.vue2.js +4 -0
- package/dist/es/src/app/org/menu/TreeNodeMenu.js +15 -0
- package/dist/es/src/app/org/modal/DeptAddModal.vue.js +143 -0
- package/dist/es/src/app/org/modal/DeptAddModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/DeptEditModal.vue.js +133 -0
- package/dist/es/src/app/org/modal/DeptEditModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/OrgAddModal.vue.js +171 -0
- package/dist/es/src/app/org/modal/OrgAddModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/OrgEditModal.vue.js +161 -0
- package/dist/es/src/app/org/modal/OrgEditModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/OrgModals.vue.js +274 -0
- package/dist/es/src/app/org/modal/OrgModals.vue2.js +4 -0
- package/dist/es/src/app/org/modal/PermAddModal.vue.js +145 -0
- package/dist/es/src/app/org/modal/PermAddModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/PermEditModal.vue.js +135 -0
- package/dist/es/src/app/org/modal/PermEditModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/PosAddModal.vue.js +131 -0
- package/dist/es/src/app/org/modal/PosAddModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/PosEditModal.vue.js +122 -0
- package/dist/es/src/app/org/modal/PosEditModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/RoleAddModal.vue.js +145 -0
- package/dist/es/src/app/org/modal/RoleAddModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/RoleAddUserModal.vue.js +7 -0
- package/dist/es/src/app/org/modal/RoleAddUserModal.vue2.js +129 -0
- package/dist/es/src/app/org/modal/RoleEditModal.vue.js +161 -0
- package/dist/es/src/app/org/modal/RoleEditModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/UserAddModal.vue.js +570 -0
- package/dist/es/src/app/org/modal/UserAddModal.vue3.js +5 -0
- package/dist/es/src/app/org/modal/UserEditModal.vue.js +726 -0
- package/dist/es/src/app/org/modal/UserEditModal.vue3.js +5 -0
- package/dist/es/src/app/org/modal/UserPermModal.vue.js +72 -0
- package/dist/es/src/app/org/modal/UserPermModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/UserPosAddModal.vue.js +136 -0
- package/dist/es/src/app/org/modal/UserPosAddModal.vue2.js +4 -0
- package/dist/es/src/app/org/modal/UserPosMoveModal.vue.js +108 -0
- package/dist/es/src/app/org/modal/UserPosMoveModal.vue2.js +4 -0
- package/dist/es/src/app/system/StatusIndex.vue.js +2 -2
- package/dist/es/src/app/system/StatusIndex.vue2.js +134 -127
- package/dist/es/src/index.js +9 -7
- package/dist/es/style.css +1 -1
- package/dist/lib/index.js +1 -1
- package/dist/lib/src/app/org/OrgIndex.vue.js +1 -0
- package/dist/lib/src/app/org/OrgIndex.vue2.js +2 -0
- package/dist/lib/src/app/org/OrgTree.vue.js +1 -0
- package/dist/lib/src/app/org/OrgTree.vue2.js +1 -0
- package/dist/lib/src/app/org/RolePanel.vue.js +1 -0
- package/dist/lib/src/app/org/RolePanel.vue2.js +1 -0
- package/dist/lib/src/app/org/UserTableList.vue.js +1 -0
- package/dist/lib/src/app/org/UserTableList.vue2.js +1 -0
- package/dist/lib/src/app/org/api.js +1 -0
- package/dist/lib/src/app/org/assets/cube.svg.js +1 -0
- package/dist/lib/src/app/org/assets/division.svg.js +1 -0
- package/dist/lib/src/app/org/assets/nopos.svg.js +1 -0
- package/dist/lib/src/app/org/assets/plugin.svg.js +1 -0
- package/dist/lib/src/app/org/assets/unit.svg.js +1 -0
- package/dist/lib/src/app/org/assets/user.svg.js +1 -0
- package/dist/lib/src/app/org/index.js +1 -0
- package/dist/lib/src/app/org/menu/DeptMenu.vue.js +1 -0
- package/dist/lib/src/app/org/menu/DeptMenu.vue2.js +1 -0
- package/dist/lib/src/app/org/menu/OrgMenu.vue.js +1 -0
- package/dist/lib/src/app/org/menu/OrgMenu.vue2.js +1 -0
- package/dist/lib/src/app/org/menu/PermMenu.vue.js +1 -0
- package/dist/lib/src/app/org/menu/PermMenu.vue2.js +1 -0
- package/dist/lib/src/app/org/menu/PosMenu.vue.js +1 -0
- package/dist/lib/src/app/org/menu/PosMenu.vue2.js +1 -0
- package/dist/lib/src/app/org/menu/RoleMenu.vue.js +1 -0
- package/dist/lib/src/app/org/menu/RoleMenu.vue2.js +1 -0
- package/dist/lib/src/app/org/menu/TreeNodeMenu.js +1 -0
- package/dist/lib/src/app/org/modal/DeptAddModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/DeptAddModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/DeptEditModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/DeptEditModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/OrgAddModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/OrgAddModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/OrgEditModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/OrgEditModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/OrgModals.vue.js +1 -0
- package/dist/lib/src/app/org/modal/OrgModals.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/PermAddModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/PermAddModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/PermEditModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/PermEditModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/PosAddModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/PosAddModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/PosEditModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/PosEditModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/RoleAddModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/RoleAddModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/RoleAddUserModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/RoleAddUserModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/RoleEditModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/RoleEditModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/UserAddModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/UserAddModal.vue3.js +1 -0
- package/dist/lib/src/app/org/modal/UserEditModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/UserEditModal.vue3.js +1 -0
- package/dist/lib/src/app/org/modal/UserPermModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/UserPermModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/UserPosAddModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/UserPosAddModal.vue2.js +1 -0
- package/dist/lib/src/app/org/modal/UserPosMoveModal.vue.js +1 -0
- package/dist/lib/src/app/org/modal/UserPosMoveModal.vue2.js +1 -0
- package/dist/lib/src/app/system/StatusIndex.vue.js +1 -1
- package/dist/lib/src/app/system/StatusIndex.vue2.js +1 -1
- package/dist/lib/src/index.js +1 -1
- package/dist/lib/style.css +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { defineComponent as i, resolveComponent as l, openBlock as u, createElementBlock as m, createVNode as t, withCtx as o, createTextVNode as d, unref as r } from "vue";
|
|
2
|
+
import { EditOutlined as s, DeleteOutlined as p, UserAddOutlined as f } from "@ant-design/icons-vue";
|
|
3
|
+
const c = /* @__PURE__ */ i({
|
|
4
|
+
__name: "PosMenu",
|
|
5
|
+
props: {
|
|
6
|
+
treeNode: {}
|
|
7
|
+
},
|
|
8
|
+
setup(_) {
|
|
9
|
+
return (a, e) => {
|
|
10
|
+
const n = l("a-menu-item");
|
|
11
|
+
return u(), m("div", null, [
|
|
12
|
+
t(n, { key: "editPos" }, {
|
|
13
|
+
icon: o(() => [
|
|
14
|
+
t(r(s))
|
|
15
|
+
]),
|
|
16
|
+
default: o(() => [
|
|
17
|
+
e[0] || (e[0] = d(" 修改岗位 ", -1))
|
|
18
|
+
]),
|
|
19
|
+
_: 1
|
|
20
|
+
}),
|
|
21
|
+
t(n, { key: "delPos" }, {
|
|
22
|
+
icon: o(() => [
|
|
23
|
+
t(r(p))
|
|
24
|
+
]),
|
|
25
|
+
default: o(() => [
|
|
26
|
+
e[1] || (e[1] = d(" 删除岗位 ", -1))
|
|
27
|
+
]),
|
|
28
|
+
_: 1
|
|
29
|
+
}),
|
|
30
|
+
t(n, { key: "addUser" }, {
|
|
31
|
+
icon: o(() => [
|
|
32
|
+
t(r(f))
|
|
33
|
+
]),
|
|
34
|
+
default: o(() => [
|
|
35
|
+
e[2] || (e[2] = d(" 增加用户 ", -1))
|
|
36
|
+
]),
|
|
37
|
+
_: 1
|
|
38
|
+
})
|
|
39
|
+
]);
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
export {
|
|
44
|
+
c as default
|
|
45
|
+
};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { defineComponent as k, computed as c, resolveComponent as y, openBlock as o, createElementBlock as _, createBlock as r, withCtx as t, createTextVNode as u, createVNode as d, unref as i, createCommentVNode as m } from "vue";
|
|
2
|
+
import { PlusOutlined as a, EditOutlined as v, DeleteOutlined as N } from "@ant-design/icons-vue";
|
|
3
|
+
const C = /* @__PURE__ */ k({
|
|
4
|
+
__name: "RoleMenu",
|
|
5
|
+
props: {
|
|
6
|
+
treeNode: {}
|
|
7
|
+
},
|
|
8
|
+
setup(p) {
|
|
9
|
+
const s = p, n = c(() => s.treeNode.key === "role_0");
|
|
10
|
+
return (f, e) => {
|
|
11
|
+
const l = y("a-menu-item");
|
|
12
|
+
return o(), _("div", null, [
|
|
13
|
+
n.value ? (o(), r(l, { key: "addRole" }, {
|
|
14
|
+
icon: t(() => [
|
|
15
|
+
d(i(a))
|
|
16
|
+
]),
|
|
17
|
+
default: t(() => [
|
|
18
|
+
e[0] || (e[0] = u(" 增加角色 ", -1))
|
|
19
|
+
]),
|
|
20
|
+
_: 1
|
|
21
|
+
})) : m("", !0),
|
|
22
|
+
n.value ? m("", !0) : (o(), r(l, { key: "editRole" }, {
|
|
23
|
+
icon: t(() => [
|
|
24
|
+
d(i(v))
|
|
25
|
+
]),
|
|
26
|
+
default: t(() => [
|
|
27
|
+
e[1] || (e[1] = u(" 修改角色 ", -1))
|
|
28
|
+
]),
|
|
29
|
+
_: 1
|
|
30
|
+
})),
|
|
31
|
+
n.value ? m("", !0) : (o(), r(l, { key: "delRole" }, {
|
|
32
|
+
icon: t(() => [
|
|
33
|
+
d(i(N))
|
|
34
|
+
]),
|
|
35
|
+
default: t(() => [
|
|
36
|
+
e[2] || (e[2] = u(" 删除角色 ", -1))
|
|
37
|
+
]),
|
|
38
|
+
_: 1
|
|
39
|
+
})),
|
|
40
|
+
n.value ? m("", !0) : (o(), r(l, { key: "addRole" }, {
|
|
41
|
+
icon: t(() => [
|
|
42
|
+
d(i(a))
|
|
43
|
+
]),
|
|
44
|
+
default: t(() => [
|
|
45
|
+
e[3] || (e[3] = u(" 增加子角色 ", -1))
|
|
46
|
+
]),
|
|
47
|
+
_: 1
|
|
48
|
+
}))
|
|
49
|
+
]);
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
export {
|
|
54
|
+
C as default
|
|
55
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import m from "./OrgMenu.vue.js";
|
|
2
|
+
import o from "./DeptMenu.vue.js";
|
|
3
|
+
import r from "./PosMenu.vue.js";
|
|
4
|
+
import f from "./PermMenu.vue.js";
|
|
5
|
+
import i from "./RoleMenu.vue.js";
|
|
6
|
+
const a = {
|
|
7
|
+
org: m,
|
|
8
|
+
dept: o,
|
|
9
|
+
pos: r,
|
|
10
|
+
perm: f,
|
|
11
|
+
role: i
|
|
12
|
+
};
|
|
13
|
+
export {
|
|
14
|
+
a as default
|
|
15
|
+
};
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { defineComponent as B, ref as f, reactive as L, computed as _, watch as V, resolveComponent as r, openBlock as g, createBlock as b, withCtx as l, createVNode as t, createTextVNode as R, toDisplayString as S, createCommentVNode as T } from "vue";
|
|
2
|
+
import { message as $ } from "ant-design-vue";
|
|
3
|
+
import { getOrgInfo as j, createDept as A } from "../api.js";
|
|
4
|
+
const z = /* @__PURE__ */ B({
|
|
5
|
+
__name: "DeptAddModal",
|
|
6
|
+
props: {
|
|
7
|
+
open: { type: Boolean },
|
|
8
|
+
orgId: {}
|
|
9
|
+
},
|
|
10
|
+
emits: ["update:open", "success"],
|
|
11
|
+
setup(y, { emit: N }) {
|
|
12
|
+
const d = f(null), a = f({}), m = L({}), k = {
|
|
13
|
+
name: [{ required: !0, message: "请输入部门名称" }],
|
|
14
|
+
seqNo: [{ required: !0, message: "请输入排序号", type: "number" }]
|
|
15
|
+
}, s = y, w = _(() => m.name ? `为「${m.name}」添加部门` : "添加部门"), p = N, c = _({
|
|
16
|
+
get: () => s.open,
|
|
17
|
+
set: (n) => p("update:open", n)
|
|
18
|
+
}), i = f(!1);
|
|
19
|
+
V(
|
|
20
|
+
() => c.value,
|
|
21
|
+
(n) => {
|
|
22
|
+
var e;
|
|
23
|
+
n ? s.orgId && I(s.orgId) : ((e = d.value) == null || e.resetFields(), a.value = {});
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
const I = async (n) => {
|
|
27
|
+
try {
|
|
28
|
+
const e = await j(n);
|
|
29
|
+
e.code === 200 && Object.assign(m, e.data);
|
|
30
|
+
} catch (e) {
|
|
31
|
+
console.error("加载所属机构信息失败:", e);
|
|
32
|
+
}
|
|
33
|
+
}, x = async () => {
|
|
34
|
+
try {
|
|
35
|
+
await d.value.validate();
|
|
36
|
+
const n = {
|
|
37
|
+
...a.value,
|
|
38
|
+
orgId: s.orgId
|
|
39
|
+
};
|
|
40
|
+
i.value = !0;
|
|
41
|
+
const e = await A(n);
|
|
42
|
+
e.code === 200 && ($.success("操作成功"), p("success", `org_${e.data.parentId}`), p("update:open", !1));
|
|
43
|
+
} finally {
|
|
44
|
+
i.value = !1;
|
|
45
|
+
}
|
|
46
|
+
}, q = () => {
|
|
47
|
+
p("update:open", !1);
|
|
48
|
+
};
|
|
49
|
+
return (n, e) => {
|
|
50
|
+
const u = r("a-form-item"), v = r("a-input"), C = r("a-input-number"), O = r("a-textarea"), U = r("a-form"), D = r("a-modal");
|
|
51
|
+
return g(), b(D, {
|
|
52
|
+
open: c.value,
|
|
53
|
+
"onUpdate:open": e[4] || (e[4] = (o) => c.value = o),
|
|
54
|
+
title: w.value,
|
|
55
|
+
maskClosable: !1,
|
|
56
|
+
confirmLoading: i.value,
|
|
57
|
+
onOk: x,
|
|
58
|
+
onCancel: q,
|
|
59
|
+
width: "800px"
|
|
60
|
+
}, {
|
|
61
|
+
default: l(() => [
|
|
62
|
+
t(U, {
|
|
63
|
+
model: a.value,
|
|
64
|
+
rules: k,
|
|
65
|
+
ref_key: "formRef",
|
|
66
|
+
ref: d,
|
|
67
|
+
"label-col": { span: 6 },
|
|
68
|
+
"wrapper-col": { span: 12 }
|
|
69
|
+
}, {
|
|
70
|
+
default: l(() => [
|
|
71
|
+
s.orgId ? (g(), b(u, {
|
|
72
|
+
key: 0,
|
|
73
|
+
label: "所属机构"
|
|
74
|
+
}, {
|
|
75
|
+
default: l(() => [
|
|
76
|
+
R(S(m.name), 1)
|
|
77
|
+
]),
|
|
78
|
+
_: 1
|
|
79
|
+
})) : T("", !0),
|
|
80
|
+
t(u, {
|
|
81
|
+
label: "部门名称",
|
|
82
|
+
name: "name"
|
|
83
|
+
}, {
|
|
84
|
+
default: l(() => [
|
|
85
|
+
t(v, {
|
|
86
|
+
value: a.value.name,
|
|
87
|
+
"onUpdate:value": e[0] || (e[0] = (o) => a.value.name = o),
|
|
88
|
+
placeholder: "部门名称"
|
|
89
|
+
}, null, 8, ["value"])
|
|
90
|
+
]),
|
|
91
|
+
_: 1
|
|
92
|
+
}),
|
|
93
|
+
t(u, {
|
|
94
|
+
label: "排序号",
|
|
95
|
+
name: "seqNo"
|
|
96
|
+
}, {
|
|
97
|
+
default: l(() => [
|
|
98
|
+
t(C, {
|
|
99
|
+
value: a.value.seqNo,
|
|
100
|
+
"onUpdate:value": e[1] || (e[1] = (o) => a.value.seqNo = o),
|
|
101
|
+
min: 0,
|
|
102
|
+
precision: 0,
|
|
103
|
+
placeholder: "排序号"
|
|
104
|
+
}, null, 8, ["value"])
|
|
105
|
+
]),
|
|
106
|
+
_: 1
|
|
107
|
+
}),
|
|
108
|
+
t(u, {
|
|
109
|
+
label: "部门别名",
|
|
110
|
+
name: "aliasName"
|
|
111
|
+
}, {
|
|
112
|
+
default: l(() => [
|
|
113
|
+
t(v, {
|
|
114
|
+
value: a.value.aliasName,
|
|
115
|
+
"onUpdate:value": e[2] || (e[2] = (o) => a.value.aliasName = o),
|
|
116
|
+
placeholder: "部门别名"
|
|
117
|
+
}, null, 8, ["value"])
|
|
118
|
+
]),
|
|
119
|
+
_: 1
|
|
120
|
+
}),
|
|
121
|
+
t(u, { label: "备注" }, {
|
|
122
|
+
default: l(() => [
|
|
123
|
+
t(O, {
|
|
124
|
+
value: a.value.remark,
|
|
125
|
+
"onUpdate:value": e[3] || (e[3] = (o) => a.value.remark = o),
|
|
126
|
+
placeholder: "备注",
|
|
127
|
+
rows: 3
|
|
128
|
+
}, null, 8, ["value"])
|
|
129
|
+
]),
|
|
130
|
+
_: 1
|
|
131
|
+
})
|
|
132
|
+
]),
|
|
133
|
+
_: 1
|
|
134
|
+
}, 8, ["model"])
|
|
135
|
+
]),
|
|
136
|
+
_: 1
|
|
137
|
+
}, 8, ["open", "title", "confirmLoading"]);
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
});
|
|
141
|
+
export {
|
|
142
|
+
z as default
|
|
143
|
+
};
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { defineComponent as I, ref as c, computed as C, watch as D, resolveComponent as n, openBlock as U, createBlock as B, withCtx as s, createVNode as t } from "vue";
|
|
2
|
+
import { getDeptInfo as L, updateDept as O } from "../api.js";
|
|
3
|
+
import { message as R } from "ant-design-vue";
|
|
4
|
+
const S = /* @__PURE__ */ I({
|
|
5
|
+
__name: "DeptEditModal",
|
|
6
|
+
props: {
|
|
7
|
+
open: { type: Boolean },
|
|
8
|
+
deptId: {}
|
|
9
|
+
},
|
|
10
|
+
emits: ["update:open", "success"],
|
|
11
|
+
setup(v, { emit: _ }) {
|
|
12
|
+
const p = c(null), a = c({}), b = {
|
|
13
|
+
name: [{ required: !0, message: "请输入部门名称" }],
|
|
14
|
+
seqNo: [{ required: !0, message: "请输入排序号", type: "number" }]
|
|
15
|
+
}, m = v, u = _, d = C({
|
|
16
|
+
get: () => m.open,
|
|
17
|
+
set: (l) => u("update:open", l)
|
|
18
|
+
}), i = c(!1);
|
|
19
|
+
D(
|
|
20
|
+
() => d.value,
|
|
21
|
+
(l) => {
|
|
22
|
+
var e;
|
|
23
|
+
l ? m.deptId && g(m.deptId) : ((e = p.value) == null || e.resetFields(), a.value = {});
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
const g = async (l) => {
|
|
27
|
+
try {
|
|
28
|
+
const e = await L(l);
|
|
29
|
+
e.code === 200 && (a.value = e.data);
|
|
30
|
+
} catch (e) {
|
|
31
|
+
console.error("加载部门信息失败:", e);
|
|
32
|
+
}
|
|
33
|
+
}, w = async () => {
|
|
34
|
+
try {
|
|
35
|
+
await p.value.validate();
|
|
36
|
+
const l = {
|
|
37
|
+
...a.value
|
|
38
|
+
};
|
|
39
|
+
i.value = !0;
|
|
40
|
+
const e = await O(l);
|
|
41
|
+
e.code === 200 && (R.success("操作成功"), u("success", `org_${e.data.parentId}`), u("update:open", !1));
|
|
42
|
+
} finally {
|
|
43
|
+
i.value = !1;
|
|
44
|
+
}
|
|
45
|
+
}, y = () => {
|
|
46
|
+
u("update:open", !1);
|
|
47
|
+
};
|
|
48
|
+
return (l, e) => {
|
|
49
|
+
const f = n("a-input"), r = n("a-form-item"), N = n("a-input-number"), k = n("a-textarea"), q = n("a-form"), x = n("a-modal");
|
|
50
|
+
return U(), B(x, {
|
|
51
|
+
open: d.value,
|
|
52
|
+
"onUpdate:open": e[4] || (e[4] = (o) => d.value = o),
|
|
53
|
+
title: "编辑部门信息",
|
|
54
|
+
maskClosable: !1,
|
|
55
|
+
confirmLoading: i.value,
|
|
56
|
+
onOk: w,
|
|
57
|
+
onCancel: y,
|
|
58
|
+
width: "800px"
|
|
59
|
+
}, {
|
|
60
|
+
default: s(() => [
|
|
61
|
+
t(q, {
|
|
62
|
+
model: a.value,
|
|
63
|
+
rules: b,
|
|
64
|
+
ref_key: "formRef",
|
|
65
|
+
ref: p,
|
|
66
|
+
"label-col": { span: 6 },
|
|
67
|
+
"wrapper-col": { span: 12 }
|
|
68
|
+
}, {
|
|
69
|
+
default: s(() => [
|
|
70
|
+
t(r, {
|
|
71
|
+
label: "部门名称",
|
|
72
|
+
name: "name"
|
|
73
|
+
}, {
|
|
74
|
+
default: s(() => [
|
|
75
|
+
t(f, {
|
|
76
|
+
value: a.value.name,
|
|
77
|
+
"onUpdate:value": e[0] || (e[0] = (o) => a.value.name = o),
|
|
78
|
+
placeholder: "部门名称"
|
|
79
|
+
}, null, 8, ["value"])
|
|
80
|
+
]),
|
|
81
|
+
_: 1
|
|
82
|
+
}),
|
|
83
|
+
t(r, {
|
|
84
|
+
label: "部门别名",
|
|
85
|
+
name: "aliasName"
|
|
86
|
+
}, {
|
|
87
|
+
default: s(() => [
|
|
88
|
+
t(f, {
|
|
89
|
+
value: a.value.aliasName,
|
|
90
|
+
"onUpdate:value": e[1] || (e[1] = (o) => a.value.aliasName = o),
|
|
91
|
+
placeholder: "部门别名"
|
|
92
|
+
}, null, 8, ["value"])
|
|
93
|
+
]),
|
|
94
|
+
_: 1
|
|
95
|
+
}),
|
|
96
|
+
t(r, {
|
|
97
|
+
label: "排序号",
|
|
98
|
+
name: "seqNo"
|
|
99
|
+
}, {
|
|
100
|
+
default: s(() => [
|
|
101
|
+
t(N, {
|
|
102
|
+
value: a.value.seqNo,
|
|
103
|
+
"onUpdate:value": e[2] || (e[2] = (o) => a.value.seqNo = o),
|
|
104
|
+
min: 0,
|
|
105
|
+
precision: 0,
|
|
106
|
+
placeholder: "排序号"
|
|
107
|
+
}, null, 8, ["value"])
|
|
108
|
+
]),
|
|
109
|
+
_: 1
|
|
110
|
+
}),
|
|
111
|
+
t(r, { label: "备注" }, {
|
|
112
|
+
default: s(() => [
|
|
113
|
+
t(k, {
|
|
114
|
+
value: a.value.remark,
|
|
115
|
+
"onUpdate:value": e[3] || (e[3] = (o) => a.value.remark = o),
|
|
116
|
+
placeholder: "备注",
|
|
117
|
+
rows: 3
|
|
118
|
+
}, null, 8, ["value"])
|
|
119
|
+
]),
|
|
120
|
+
_: 1
|
|
121
|
+
})
|
|
122
|
+
]),
|
|
123
|
+
_: 1
|
|
124
|
+
}, 8, ["model"])
|
|
125
|
+
]),
|
|
126
|
+
_: 1
|
|
127
|
+
}, 8, ["open", "confirmLoading"]);
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
export {
|
|
132
|
+
S as default
|
|
133
|
+
};
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import { defineComponent as B, ref as c, reactive as L, computed as _, watch as V, resolveComponent as p, openBlock as g, createBlock as b, withCtx as n, createVNode as o, createTextVNode as D, toDisplayString as R, createCommentVNode as S } from "vue";
|
|
2
|
+
import { message as T } from "ant-design-vue";
|
|
3
|
+
import { getOrgInfo as $, createOrg as j } from "../api.js";
|
|
4
|
+
const P = /* @__PURE__ */ B({
|
|
5
|
+
__name: "OrgAddModal",
|
|
6
|
+
props: {
|
|
7
|
+
open: { type: Boolean },
|
|
8
|
+
parentId: {}
|
|
9
|
+
},
|
|
10
|
+
emits: ["update:open", "success"],
|
|
11
|
+
setup(N, { emit: y }) {
|
|
12
|
+
const v = c(null), a = c({}), d = L({}), I = {
|
|
13
|
+
name: [{ required: !0, message: "请输入机构名称" }],
|
|
14
|
+
seqNo: [{ required: !0, message: "请输入顺序号" }]
|
|
15
|
+
}, u = N, k = _(() => d.name ? `添加「${d.name}」的子机构` : "添加「根」机构"), m = y, i = _({
|
|
16
|
+
get: () => u.open,
|
|
17
|
+
set: (t) => m("update:open", t)
|
|
18
|
+
}), f = c(!1);
|
|
19
|
+
V(
|
|
20
|
+
() => i.value,
|
|
21
|
+
(t) => {
|
|
22
|
+
var e;
|
|
23
|
+
t ? u.parentId ? O(u.parentId) : d.value = {} : ((e = v.value) == null || e.resetFields(), a.value = {});
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
const O = async (t) => {
|
|
27
|
+
try {
|
|
28
|
+
const e = await $(t);
|
|
29
|
+
e.code === 200 && Object.assign(d, e.data);
|
|
30
|
+
} catch (e) {
|
|
31
|
+
console.error("加载上级机构信息失败:", e);
|
|
32
|
+
}
|
|
33
|
+
}, U = async () => {
|
|
34
|
+
try {
|
|
35
|
+
await v.value.validate();
|
|
36
|
+
const t = {
|
|
37
|
+
...a.value,
|
|
38
|
+
parentId: u.parentId
|
|
39
|
+
};
|
|
40
|
+
f.value = !0;
|
|
41
|
+
const e = await j(t);
|
|
42
|
+
e.code === 200 && (T.success("操作成功"), m("success", `org_${e.data.parentId}`), m("update:open", !1));
|
|
43
|
+
} catch (t) {
|
|
44
|
+
console.error("保存机构失败:", t);
|
|
45
|
+
} finally {
|
|
46
|
+
f.value = !1;
|
|
47
|
+
}
|
|
48
|
+
}, w = () => {
|
|
49
|
+
m("update:open", !1);
|
|
50
|
+
};
|
|
51
|
+
return (t, e) => {
|
|
52
|
+
const r = p("a-form-item"), s = p("a-input"), q = p("a-input-number"), C = p("a-form"), x = p("a-modal");
|
|
53
|
+
return g(), b(x, {
|
|
54
|
+
open: i.value,
|
|
55
|
+
"onUpdate:open": e[7] || (e[7] = (l) => i.value = l),
|
|
56
|
+
title: k.value,
|
|
57
|
+
maskClosable: !1,
|
|
58
|
+
confirmLoading: f.value,
|
|
59
|
+
onOk: U,
|
|
60
|
+
onCancel: w,
|
|
61
|
+
width: "800px"
|
|
62
|
+
}, {
|
|
63
|
+
default: n(() => [
|
|
64
|
+
o(C, {
|
|
65
|
+
model: a.value,
|
|
66
|
+
rules: I,
|
|
67
|
+
ref_key: "formRef",
|
|
68
|
+
ref: v,
|
|
69
|
+
"label-col": { span: 6 },
|
|
70
|
+
"wrapper-col": { span: 12 }
|
|
71
|
+
}, {
|
|
72
|
+
default: n(() => [
|
|
73
|
+
u.parentId && u.parentId !== "" ? (g(), b(r, {
|
|
74
|
+
key: 0,
|
|
75
|
+
label: "上级机构"
|
|
76
|
+
}, {
|
|
77
|
+
default: n(() => [
|
|
78
|
+
D(R(d.name), 1)
|
|
79
|
+
]),
|
|
80
|
+
_: 1
|
|
81
|
+
})) : S("", !0),
|
|
82
|
+
o(r, {
|
|
83
|
+
label: "机构名称",
|
|
84
|
+
name: "name"
|
|
85
|
+
}, {
|
|
86
|
+
default: n(() => [
|
|
87
|
+
o(s, {
|
|
88
|
+
value: a.value.name,
|
|
89
|
+
"onUpdate:value": e[0] || (e[0] = (l) => a.value.name = l),
|
|
90
|
+
placeholder: "机构名称"
|
|
91
|
+
}, null, 8, ["value"])
|
|
92
|
+
]),
|
|
93
|
+
_: 1
|
|
94
|
+
}),
|
|
95
|
+
o(r, {
|
|
96
|
+
label: "顺序号",
|
|
97
|
+
name: "seqNo"
|
|
98
|
+
}, {
|
|
99
|
+
default: n(() => [
|
|
100
|
+
o(q, {
|
|
101
|
+
value: a.value.seqNo,
|
|
102
|
+
"onUpdate:value": e[1] || (e[1] = (l) => a.value.seqNo = l),
|
|
103
|
+
min: 0,
|
|
104
|
+
precision: 0,
|
|
105
|
+
placeholder: "顺序号"
|
|
106
|
+
}, null, 8, ["value"])
|
|
107
|
+
]),
|
|
108
|
+
_: 1
|
|
109
|
+
}),
|
|
110
|
+
o(r, { label: "单位地址" }, {
|
|
111
|
+
default: n(() => [
|
|
112
|
+
o(s, {
|
|
113
|
+
value: a.value.address,
|
|
114
|
+
"onUpdate:value": e[2] || (e[2] = (l) => a.value.address = l),
|
|
115
|
+
placeholder: "单位地址"
|
|
116
|
+
}, null, 8, ["value"])
|
|
117
|
+
]),
|
|
118
|
+
_: 1
|
|
119
|
+
}),
|
|
120
|
+
o(r, { label: "别名" }, {
|
|
121
|
+
default: n(() => [
|
|
122
|
+
o(s, {
|
|
123
|
+
value: a.value.aliasName,
|
|
124
|
+
"onUpdate:value": e[3] || (e[3] = (l) => a.value.aliasName = l),
|
|
125
|
+
placeholder: "别名"
|
|
126
|
+
}, null, 8, ["value"])
|
|
127
|
+
]),
|
|
128
|
+
_: 1
|
|
129
|
+
}),
|
|
130
|
+
o(r, { label: "简称" }, {
|
|
131
|
+
default: n(() => [
|
|
132
|
+
o(s, {
|
|
133
|
+
value: a.value.shortName,
|
|
134
|
+
"onUpdate:value": e[4] || (e[4] = (l) => a.value.shortName = l),
|
|
135
|
+
placeholder: "简称"
|
|
136
|
+
}, null, 8, ["value"])
|
|
137
|
+
]),
|
|
138
|
+
_: 1
|
|
139
|
+
}),
|
|
140
|
+
o(r, { label: "机构编码" }, {
|
|
141
|
+
default: n(() => [
|
|
142
|
+
o(s, {
|
|
143
|
+
value: a.value.code,
|
|
144
|
+
"onUpdate:value": e[5] || (e[5] = (l) => a.value.code = l),
|
|
145
|
+
placeholder: "机构编码"
|
|
146
|
+
}, null, 8, ["value"])
|
|
147
|
+
]),
|
|
148
|
+
_: 1
|
|
149
|
+
}),
|
|
150
|
+
o(r, { label: "备注" }, {
|
|
151
|
+
default: n(() => [
|
|
152
|
+
o(s, {
|
|
153
|
+
value: a.value.remark,
|
|
154
|
+
"onUpdate:value": e[6] || (e[6] = (l) => a.value.remark = l),
|
|
155
|
+
placeholder: "备注"
|
|
156
|
+
}, null, 8, ["value"])
|
|
157
|
+
]),
|
|
158
|
+
_: 1
|
|
159
|
+
})
|
|
160
|
+
]),
|
|
161
|
+
_: 1
|
|
162
|
+
}, 8, ["model"])
|
|
163
|
+
]),
|
|
164
|
+
_: 1
|
|
165
|
+
}, 8, ["open", "title", "confirmLoading"]);
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
export {
|
|
170
|
+
P as default
|
|
171
|
+
};
|