joy-admin-components 0.2.9 → 0.2.11
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.
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ElForm as bt, ElRow as yt, ElCol as Ct, ElInputNumber as xt, ElText as wt, ElLink as Ze } from "element-plus";
|
|
2
|
-
import { defineComponent as Qe, ref as q, onMounted as Xe, h as Le, mergeModels as Ge, useAttrs as kt, useModel as _t, computed as ne, watch as Pe, resolveComponent as
|
|
2
|
+
import { defineComponent as Qe, ref as q, onMounted as Xe, h as Le, mergeModels as Ge, useAttrs as kt, useModel as _t, computed as ne, watch as Pe, resolveComponent as M, unref as G, openBlock as D, createBlock as Y, mergeProps as he, createSlots as St, withCtx as j, createElementVNode as oe, toDisplayString as le, renderSlot as re, createVNode as R, createTextVNode as se, createCommentVNode as fe, createElementBlock as de, Fragment as De, renderList as et, withModifiers as ze, nextTick as _e, resolveDynamicComponent as tt, withKeys as $t, normalizeStyle as It, normalizeClass as Oe, reactive as ke, onUpdated as Ft, onUnmounted as Lt, isVNode as Tt } from "vue";
|
|
3
3
|
import { saveAs as Et } from "file-saver";
|
|
4
4
|
import nt from "exceljs";
|
|
5
5
|
import Se from "dayjs";
|
|
@@ -79,7 +79,7 @@ var it = { exports: {} };
|
|
|
79
79
|
var W = I.match(o);
|
|
80
80
|
if (!W)
|
|
81
81
|
return null;
|
|
82
|
-
var
|
|
82
|
+
var V = ("" + W[0]).match(a) || ["-", 0, 0], i = V[0], p = 60 * +V[1] + +V[2];
|
|
83
83
|
return p === 0 ? 0 : i === "+" ? p : -p;
|
|
84
84
|
}(f), f === null))
|
|
85
85
|
return this;
|
|
@@ -142,8 +142,8 @@ var ct = { exports: {} };
|
|
|
142
142
|
var _ = g[h], w = _.type, S = _.value, z = t[w];
|
|
143
143
|
z >= 0 && (f[z] = parseInt(S, 10));
|
|
144
144
|
}
|
|
145
|
-
var I = f[3], W = I === 24 ? 0 : I,
|
|
146
|
-
return (l.utc(
|
|
145
|
+
var I = f[3], W = I === 24 ? 0 : I, V = f[0] + "-" + f[1] + "-" + f[2] + " " + W + ":" + f[4] + ":" + f[5] + ":000", i = +v;
|
|
146
|
+
return (l.utc(V).valueOf() - (i -= i % 1e3)) / 6e4;
|
|
147
147
|
}, x = r.prototype;
|
|
148
148
|
x.tz = function(v, b) {
|
|
149
149
|
v === void 0 && (v = u);
|
|
@@ -171,11 +171,11 @@ var ct = { exports: {} };
|
|
|
171
171
|
var f = g && b, h = g || b || u, _ = k(+l(), h);
|
|
172
172
|
if (typeof v != "string")
|
|
173
173
|
return l(v).tz(h);
|
|
174
|
-
var w = function(W,
|
|
175
|
-
var p = W - 60 *
|
|
176
|
-
if (
|
|
177
|
-
return [p,
|
|
178
|
-
var O = k(p -= 60 * (L -
|
|
174
|
+
var w = function(W, V, i) {
|
|
175
|
+
var p = W - 60 * V * 1e3, L = k(p, i);
|
|
176
|
+
if (V === L)
|
|
177
|
+
return [p, V];
|
|
178
|
+
var O = k(p -= 60 * (L - V) * 1e3, i);
|
|
179
179
|
return L === O ? [p, L] : [W - 60 * Math.min(L, O) * 1e3, Math.max(L, O)];
|
|
180
180
|
}(l.utc(v, f).valueOf(), _, h), S = w[0], z = w[1], I = l(S).utcOffset(z);
|
|
181
181
|
return I.$x.$timezone = h, I;
|
|
@@ -616,12 +616,12 @@ const we = (n, e) => {
|
|
|
616
616
|
},
|
|
617
617
|
{ deep: !0 }
|
|
618
618
|
);
|
|
619
|
-
const
|
|
619
|
+
const V = ne(() => I.value);
|
|
620
620
|
return (i, p) => {
|
|
621
|
-
const L =
|
|
621
|
+
const L = M("el-checkbox"), O = M("el-select-v2"), ee = M("el-option"), ie = M("el-select");
|
|
622
622
|
return G(o).v2 != null ? (D(), Y(O, he({
|
|
623
623
|
key: 0,
|
|
624
|
-
options:
|
|
624
|
+
options: V.value,
|
|
625
625
|
modelValue: l.value,
|
|
626
626
|
"onUpdate:modelValue": p[1] || (p[1] = (m) => l.value = m)
|
|
627
627
|
}, G(o), {
|
|
@@ -632,7 +632,7 @@ const we = (n, e) => {
|
|
|
632
632
|
onChange: g,
|
|
633
633
|
onClear: g
|
|
634
634
|
}), St({
|
|
635
|
-
default:
|
|
635
|
+
default: j(({ item: m }) => [
|
|
636
636
|
oe("div", {
|
|
637
637
|
onClick: (ge) => w(m)
|
|
638
638
|
}, le(m.label), 9, Qt)
|
|
@@ -641,15 +641,15 @@ const we = (n, e) => {
|
|
|
641
641
|
}, [
|
|
642
642
|
G(o).multiple != null ? {
|
|
643
643
|
name: "header",
|
|
644
|
-
fn:
|
|
644
|
+
fn: j(() => [
|
|
645
645
|
re(i.$slots, "header", {}, () => [
|
|
646
|
-
|
|
646
|
+
R(L, {
|
|
647
647
|
class: "mgl20",
|
|
648
648
|
modelValue: x.value,
|
|
649
649
|
"onUpdate:modelValue": p[0] || (p[0] = (m) => x.value = m),
|
|
650
650
|
onChange: _
|
|
651
651
|
}, {
|
|
652
|
-
default:
|
|
652
|
+
default: j(() => [
|
|
653
653
|
se(le(i.$t("quan-xuan")), 1)
|
|
654
654
|
]),
|
|
655
655
|
_: 1
|
|
@@ -668,15 +668,15 @@ const we = (n, e) => {
|
|
|
668
668
|
"filter-method": G(o).remote != null ? void 0 : (m) => d.value = m,
|
|
669
669
|
clearable: ""
|
|
670
670
|
}, G(o), { onClear: n.optionClick }), {
|
|
671
|
-
default:
|
|
671
|
+
default: j(() => [
|
|
672
672
|
G(o).multiple != null && n.showCheckAll && n.maxLimit == null ? re(i.$slots, "header", { key: 0 }, () => [
|
|
673
|
-
|
|
673
|
+
R(L, {
|
|
674
674
|
class: "mgl20",
|
|
675
675
|
modelValue: x.value,
|
|
676
676
|
"onUpdate:modelValue": p[2] || (p[2] = (m) => x.value = m),
|
|
677
677
|
onChange: _
|
|
678
678
|
}, {
|
|
679
|
-
default:
|
|
679
|
+
default: j(() => [
|
|
680
680
|
se(le(i.$t("quan-xuan")), 1)
|
|
681
681
|
]),
|
|
682
682
|
_: 1
|
|
@@ -704,9 +704,9 @@ const tn = Qe({
|
|
|
704
704
|
}
|
|
705
705
|
});
|
|
706
706
|
function nn(n, e, t, o, a, r) {
|
|
707
|
-
const l =
|
|
707
|
+
const l = M("el-icon");
|
|
708
708
|
return D(), Y(l, { class: "cmp-icon" }, {
|
|
709
|
-
default:
|
|
709
|
+
default: j(() => [
|
|
710
710
|
(D(), Y(tt(n.name)))
|
|
711
711
|
]),
|
|
712
712
|
_: 1
|
|
@@ -723,21 +723,13 @@ const dt = /* @__PURE__ */ we(tn, [["render", nn], ["__scopeId", "data-v-733f9da
|
|
|
723
723
|
t("no");
|
|
724
724
|
}
|
|
725
725
|
return (r, l) => {
|
|
726
|
-
const u =
|
|
727
|
-
return D(), Y(
|
|
726
|
+
const u = M("el-popconfirm");
|
|
727
|
+
return D(), Y(u, he(r.$attrs, {
|
|
728
728
|
onConfirm: G(o),
|
|
729
729
|
onCancel: a
|
|
730
730
|
}), {
|
|
731
|
-
reference:
|
|
732
|
-
|
|
733
|
-
underline: "never",
|
|
734
|
-
type: r.$attrs.type
|
|
735
|
-
}, {
|
|
736
|
-
default: U(() => [
|
|
737
|
-
re(r.$slots, "default")
|
|
738
|
-
]),
|
|
739
|
-
_: 3
|
|
740
|
-
}, 8, ["type"])
|
|
731
|
+
reference: j(() => [
|
|
732
|
+
re(r.$slots, "default")
|
|
741
733
|
]),
|
|
742
734
|
_: 3
|
|
743
735
|
}, 16, ["onConfirm"]);
|
|
@@ -764,14 +756,14 @@ const on = ["accept"], ln = {
|
|
|
764
756
|
t("fileChange", l), o.value.value = null;
|
|
765
757
|
}
|
|
766
758
|
return (r, l) => {
|
|
767
|
-
const u =
|
|
759
|
+
const u = M("el-button");
|
|
768
760
|
return D(), de("span", null, [
|
|
769
|
-
|
|
761
|
+
R(u, {
|
|
770
762
|
loading: n.loading,
|
|
771
763
|
class: "mgr10",
|
|
772
764
|
onClick: l[0] || (l[0] = (d) => o.value.click())
|
|
773
765
|
}, {
|
|
774
|
-
default:
|
|
766
|
+
default: j(() => [
|
|
775
767
|
se(le(r.$t("dao-ru")), 1)
|
|
776
768
|
]),
|
|
777
769
|
_: 1
|
|
@@ -840,7 +832,7 @@ const an = { key: 0 }, rn = { class: "btns" }, sn = { class: "left" }, cn = { cl
|
|
|
840
832
|
});
|
|
841
833
|
}
|
|
842
834
|
return e({ getPrm: b, reset: f }), (h, _) => {
|
|
843
|
-
const w =
|
|
835
|
+
const w = M("el-input"), S = M("el-date-picker"), z = M("el-form-item"), I = M("el-form"), W = M("el-link"), V = M("el-button");
|
|
844
836
|
return D(), de("div", {
|
|
845
837
|
class: "searchBar-container mgt10 mgb10",
|
|
846
838
|
onKeydown: $t(k, ["enter"])
|
|
@@ -849,11 +841,11 @@ const an = { key: 0 }, rn = { class: "btns" }, sn = { class: "left" }, cn = { cl
|
|
|
849
841
|
class: "searchBar",
|
|
850
842
|
style: It({ height: r.value ? "auto" : "42px" })
|
|
851
843
|
}, [
|
|
852
|
-
|
|
844
|
+
R(I, {
|
|
853
845
|
inline: "",
|
|
854
846
|
model: n.form.data
|
|
855
847
|
}, {
|
|
856
|
-
default:
|
|
848
|
+
default: j(() => [
|
|
857
849
|
(D(!0), de(De, null, et(n.form.items.filter((i) => !i.hidden), (i) => (D(), de(De, {
|
|
858
850
|
key: i.key
|
|
859
851
|
}, [
|
|
@@ -861,7 +853,7 @@ const an = { key: 0 }, rn = { class: "btns" }, sn = { class: "left" }, cn = { cl
|
|
|
861
853
|
key: 1,
|
|
862
854
|
label: i.name
|
|
863
855
|
}, {
|
|
864
|
-
default:
|
|
856
|
+
default: j(() => {
|
|
865
857
|
var p, L;
|
|
866
858
|
return [
|
|
867
859
|
i.type === "input" ? (D(), Y(w, {
|
|
@@ -908,35 +900,35 @@ const an = { key: 0 }, rn = { class: "btns" }, sn = { class: "left" }, cn = { cl
|
|
|
908
900
|
re(h.$slots, "table-header-left", {}, void 0, !0)
|
|
909
901
|
]),
|
|
910
902
|
oe("div", cn, [
|
|
911
|
-
|
|
903
|
+
R(W, {
|
|
912
904
|
underline: "never",
|
|
913
905
|
class: "mgr10",
|
|
914
906
|
onClick: _[0] || (_[0] = () => {
|
|
915
907
|
a("visibleChange", !r.value), r.value = !r.value;
|
|
916
908
|
})
|
|
917
909
|
}, {
|
|
918
|
-
default:
|
|
919
|
-
|
|
910
|
+
default: j(() => [
|
|
911
|
+
R(dt, {
|
|
920
912
|
name: r.value ? "ArrowUp" : "ArrowDown"
|
|
921
913
|
}, null, 8, ["name"]),
|
|
922
914
|
se(" " + le(d.value), 1)
|
|
923
915
|
]),
|
|
924
916
|
_: 1
|
|
925
917
|
}),
|
|
926
|
-
|
|
918
|
+
R(V, {
|
|
927
919
|
type: "primary",
|
|
928
920
|
onClick: k
|
|
929
921
|
}, {
|
|
930
|
-
default:
|
|
922
|
+
default: j(() => [
|
|
931
923
|
se(le(h.$t("shai-xuan")), 1)
|
|
932
924
|
]),
|
|
933
925
|
_: 1
|
|
934
926
|
}),
|
|
935
|
-
|
|
927
|
+
R(V, {
|
|
936
928
|
type: "primary",
|
|
937
929
|
onClick: C
|
|
938
930
|
}, {
|
|
939
|
-
default:
|
|
931
|
+
default: j(() => [
|
|
940
932
|
se(le(h.$t("chong-zhi")), 1)
|
|
941
933
|
]),
|
|
942
934
|
_: 1
|
|
@@ -1044,7 +1036,7 @@ const hn = { class: "center" }, gn = {
|
|
|
1044
1036
|
_e(() => {
|
|
1045
1037
|
if (!f.value)
|
|
1046
1038
|
return;
|
|
1047
|
-
const s = f.value.getBoundingClientRect(), y = window.innerHeight, F = s.top,
|
|
1039
|
+
const s = f.value.getBoundingClientRect(), y = window.innerHeight, F = s.top, P = 100, H = y - F - P, T = 200;
|
|
1048
1040
|
h.value = Math.max(H, T);
|
|
1049
1041
|
});
|
|
1050
1042
|
}, 100), w = () => {
|
|
@@ -1085,10 +1077,10 @@ const hn = { class: "center" }, gn = {
|
|
|
1085
1077
|
u.value = !1, l.searchForm.selections = [];
|
|
1086
1078
|
});
|
|
1087
1079
|
if (y == 200) {
|
|
1088
|
-
let
|
|
1080
|
+
let P = [];
|
|
1089
1081
|
for (const T of r.responseDataKeys.rows)
|
|
1090
1082
|
if (F[T]) {
|
|
1091
|
-
|
|
1083
|
+
P = F[T];
|
|
1092
1084
|
break;
|
|
1093
1085
|
}
|
|
1094
1086
|
let H = 0;
|
|
@@ -1097,14 +1089,14 @@ const hn = { class: "center" }, gn = {
|
|
|
1097
1089
|
H = F[T];
|
|
1098
1090
|
break;
|
|
1099
1091
|
}
|
|
1100
|
-
d.value = s ? s(
|
|
1092
|
+
d.value = s ? s(P) : P, b.total = H, I = F.nextSearchAfter, l.searchForm.enableCellCopy && _e(() => {
|
|
1101
1093
|
setTimeout(() => {
|
|
1102
1094
|
S();
|
|
1103
1095
|
}, 100);
|
|
1104
1096
|
});
|
|
1105
1097
|
}
|
|
1106
1098
|
}
|
|
1107
|
-
function
|
|
1099
|
+
function V(c = {}) {
|
|
1108
1100
|
const { searchData: s = () => ({}) } = l.tableConfig, y = s();
|
|
1109
1101
|
W({ ...b, ...Ae(l.searchForm.items), ...c, ...y });
|
|
1110
1102
|
}
|
|
@@ -1113,9 +1105,9 @@ const hn = { class: "center" }, gn = {
|
|
|
1113
1105
|
c && c(), l.searchForm.items.forEach((s) => {
|
|
1114
1106
|
const y = x.find((F) => We(s.key) && We(F.key) ? s.key.join(",") == F.key.join(",") : F.key == s.key);
|
|
1115
1107
|
y && (s.value = y.value);
|
|
1116
|
-
}),
|
|
1108
|
+
}), V();
|
|
1117
1109
|
}
|
|
1118
|
-
l.api && l.immediate &&
|
|
1110
|
+
l.api && l.immediate && V();
|
|
1119
1111
|
function p() {
|
|
1120
1112
|
return { ...b, ...Ae(l.searchForm.items) };
|
|
1121
1113
|
}
|
|
@@ -1163,32 +1155,32 @@ const hn = { class: "center" }, gn = {
|
|
|
1163
1155
|
const F = g.value;
|
|
1164
1156
|
if (!F)
|
|
1165
1157
|
return null;
|
|
1166
|
-
let
|
|
1158
|
+
let P = -1;
|
|
1167
1159
|
const H = y.getAttribute("data-rowid");
|
|
1168
1160
|
if (H != null)
|
|
1169
|
-
|
|
1161
|
+
P = parseInt(H, 10);
|
|
1170
1162
|
else {
|
|
1171
1163
|
const E = y.parentElement;
|
|
1172
|
-
|
|
1164
|
+
P = Array.from(E.querySelectorAll(".vxe-body--row")).indexOf(y);
|
|
1173
1165
|
}
|
|
1174
|
-
if (
|
|
1166
|
+
if (P < 0)
|
|
1175
1167
|
return null;
|
|
1176
1168
|
let T = -1;
|
|
1177
1169
|
const te = s.getAttribute("data-colid");
|
|
1178
1170
|
if (te && (T = F.getColumns().findIndex(($) => $.id === te)), T < 0) {
|
|
1179
|
-
const $ = Array.from(y.querySelectorAll(".vxe-body--column")).indexOf(s), B = !!s.closest(".vxe-table--fixed-left-wrapper"), N = !!s.closest(".vxe-table--fixed-right-wrapper"),
|
|
1171
|
+
const $ = Array.from(y.querySelectorAll(".vxe-body--column")).indexOf(s), B = !!s.closest(".vxe-table--fixed-left-wrapper"), N = !!s.closest(".vxe-table--fixed-right-wrapper"), U = F.getColumns();
|
|
1180
1172
|
if (B) {
|
|
1181
|
-
const Z =
|
|
1182
|
-
$ < Z.length && (T =
|
|
1173
|
+
const Z = U.filter((K) => K.fixed === "left");
|
|
1174
|
+
$ < Z.length && (T = U.indexOf(Z[$]));
|
|
1183
1175
|
} else if (N) {
|
|
1184
|
-
const Z =
|
|
1185
|
-
$ < Z.length && (T =
|
|
1176
|
+
const Z = U.filter((K) => K.fixed === "right");
|
|
1177
|
+
$ < Z.length && (T = U.indexOf(Z[$]));
|
|
1186
1178
|
} else {
|
|
1187
1179
|
const Z = l.searchForm.showCheckBox ? 1 : 0;
|
|
1188
|
-
T =
|
|
1180
|
+
T = U.filter((J) => J.fixed === "left").length + $ - Z;
|
|
1189
1181
|
}
|
|
1190
1182
|
}
|
|
1191
|
-
return T < 0 ? null : { rowIndex:
|
|
1183
|
+
return T < 0 ? null : { rowIndex: P, colIndex: T, cell: s };
|
|
1192
1184
|
}, ae = (c) => {
|
|
1193
1185
|
const s = ge(c.target);
|
|
1194
1186
|
if (!s) {
|
|
@@ -1230,9 +1222,9 @@ const hn = { class: "center" }, gn = {
|
|
|
1230
1222
|
m.selectedCells = [];
|
|
1231
1223
|
return;
|
|
1232
1224
|
}
|
|
1233
|
-
const c = m.startCell.rowIndex, s = m.endCell.rowIndex, y = m.startCell.colIndex, F = m.endCell.colIndex,
|
|
1225
|
+
const c = m.startCell.rowIndex, s = m.endCell.rowIndex, y = m.startCell.colIndex, F = m.endCell.colIndex, P = Math.min(c, s), H = Math.max(c, s), T = Math.min(y, F), te = Math.max(y, F);
|
|
1234
1226
|
m.selectedCells = [];
|
|
1235
|
-
for (let E =
|
|
1227
|
+
for (let E = P; E <= H; E++)
|
|
1236
1228
|
for (let $ = T; $ <= te; $++)
|
|
1237
1229
|
m.selectedCells.push({
|
|
1238
1230
|
rowIndex: E,
|
|
@@ -1256,16 +1248,16 @@ const hn = { class: "center" }, gn = {
|
|
|
1256
1248
|
);
|
|
1257
1249
|
}), m.selectedCells.length === 0)
|
|
1258
1250
|
return;
|
|
1259
|
-
const y = c.getColumns(), F = m.selectedCells.map((B) => B.rowIndex),
|
|
1251
|
+
const y = c.getColumns(), F = m.selectedCells.map((B) => B.rowIndex), P = m.selectedCells.map((B) => B.colIndex), H = Math.min(...F), T = Math.max(...F), te = Math.min(...P), E = Math.max(...P), $ = [
|
|
1260
1252
|
s.querySelector(".vxe-table--body-wrapper tbody"),
|
|
1261
1253
|
s.querySelector(".vxe-table--fixed-left-wrapper tbody"),
|
|
1262
1254
|
s.querySelector(".vxe-table--fixed-right-wrapper tbody")
|
|
1263
1255
|
].filter(Boolean);
|
|
1264
1256
|
m.selectedCells.forEach(({ rowIndex: B, colIndex: N }) => {
|
|
1265
|
-
const
|
|
1266
|
-
if (!
|
|
1257
|
+
const U = y[N];
|
|
1258
|
+
if (!U)
|
|
1267
1259
|
return;
|
|
1268
|
-
const Z =
|
|
1260
|
+
const Z = U.fixed === "left", K = U.fixed === "right";
|
|
1269
1261
|
for (const J of $) {
|
|
1270
1262
|
const ye = J.querySelectorAll(".vxe-body--row")[B];
|
|
1271
1263
|
if (!ye)
|
|
@@ -1273,10 +1265,10 @@ const hn = { class: "center" }, gn = {
|
|
|
1273
1265
|
const ce = Array.from(ye.querySelectorAll(".vxe-body--column"));
|
|
1274
1266
|
let A = null;
|
|
1275
1267
|
if (Z && J.closest(".vxe-table--fixed-left-wrapper")) {
|
|
1276
|
-
const Q = y.filter((X) => X.fixed === "left").indexOf(
|
|
1268
|
+
const Q = y.filter((X) => X.fixed === "left").indexOf(U);
|
|
1277
1269
|
A = ce[Q];
|
|
1278
1270
|
} else if (K && J.closest(".vxe-table--fixed-right-wrapper")) {
|
|
1279
|
-
const Q = y.filter((X) => X.fixed === "right").indexOf(
|
|
1271
|
+
const Q = y.filter((X) => X.fixed === "right").indexOf(U);
|
|
1280
1272
|
A = ce[Q];
|
|
1281
1273
|
} else if (!Z && !K && J.closest(".vxe-table--body-wrapper")) {
|
|
1282
1274
|
const ue = l.searchForm.showCheckBox ? 1 : 0, Q = y.filter((Fe) => Fe.fixed === "left").length, X = N - Q;
|
|
@@ -1297,7 +1289,7 @@ const hn = { class: "center" }, gn = {
|
|
|
1297
1289
|
return;
|
|
1298
1290
|
const s = c.$el, y = c.getColumns(), F = [...new Set(m.selectedCells.map((E) => E.rowIndex))].sort(
|
|
1299
1291
|
(E, $) => E - $
|
|
1300
|
-
),
|
|
1292
|
+
), P = [...new Set(m.selectedCells.map((E) => E.colIndex))].sort(
|
|
1301
1293
|
(E, $) => E - $
|
|
1302
1294
|
), H = [
|
|
1303
1295
|
s.querySelector(".vxe-table--body-wrapper tbody"),
|
|
@@ -1306,13 +1298,13 @@ const hn = { class: "center" }, gn = {
|
|
|
1306
1298
|
].filter(Boolean), T = [];
|
|
1307
1299
|
F.forEach((E) => {
|
|
1308
1300
|
const $ = [];
|
|
1309
|
-
|
|
1301
|
+
P.forEach((B) => {
|
|
1310
1302
|
const N = y[B];
|
|
1311
1303
|
if (!N) {
|
|
1312
1304
|
$.push("");
|
|
1313
1305
|
return;
|
|
1314
1306
|
}
|
|
1315
|
-
const
|
|
1307
|
+
const U = N.fixed === "left", Z = N.fixed === "right";
|
|
1316
1308
|
let K = "";
|
|
1317
1309
|
for (const J of H) {
|
|
1318
1310
|
const ye = J.querySelectorAll(".vxe-body--row")[E];
|
|
@@ -1320,13 +1312,13 @@ const hn = { class: "center" }, gn = {
|
|
|
1320
1312
|
continue;
|
|
1321
1313
|
const ce = Array.from(ye.querySelectorAll(".vxe-body--column"));
|
|
1322
1314
|
let A = null;
|
|
1323
|
-
if (
|
|
1315
|
+
if (U && J.closest(".vxe-table--fixed-left-wrapper")) {
|
|
1324
1316
|
const Q = y.filter((X) => X.fixed === "left").indexOf(N);
|
|
1325
1317
|
A = ce[Q];
|
|
1326
1318
|
} else if (Z && J.closest(".vxe-table--fixed-right-wrapper")) {
|
|
1327
1319
|
const Q = y.filter((X) => X.fixed === "right").indexOf(N);
|
|
1328
1320
|
A = ce[Q];
|
|
1329
|
-
} else if (!
|
|
1321
|
+
} else if (!U && !Z && J.closest(".vxe-table--body-wrapper")) {
|
|
1330
1322
|
const ue = l.searchForm.showCheckBox ? 1 : 0, Q = y.filter((Fe) => Fe.fixed === "left").length, X = B - Q;
|
|
1331
1323
|
A = ce[X + ue];
|
|
1332
1324
|
}
|
|
@@ -1355,9 +1347,9 @@ const hn = { class: "center" }, gn = {
|
|
|
1355
1347
|
return;
|
|
1356
1348
|
s.$el.contains(c.target) || $e();
|
|
1357
1349
|
}, mt = (c) => {
|
|
1358
|
-
b[C] = c,
|
|
1350
|
+
b[C] = c, V();
|
|
1359
1351
|
}, pt = (c) => {
|
|
1360
|
-
b[v] = c, b[C] = 1,
|
|
1352
|
+
b[v] = c, b[C] = 1, V();
|
|
1361
1353
|
};
|
|
1362
1354
|
function He() {
|
|
1363
1355
|
const c = g.value.getCheckboxRecords();
|
|
@@ -1371,9 +1363,9 @@ const hn = { class: "center" }, gn = {
|
|
|
1371
1363
|
l.searchForm.selections = y;
|
|
1372
1364
|
}
|
|
1373
1365
|
};
|
|
1374
|
-
return e({ tableRef: g, getList:
|
|
1366
|
+
return e({ tableRef: g, getList: V, getPrm: p, clearSort: L, calculateTableHeight: _ }), (c, s) => {
|
|
1375
1367
|
var E;
|
|
1376
|
-
const y =
|
|
1368
|
+
const y = M("el-button"), F = M("el-checkbox"), P = M("el-text"), H = M("vxe-column"), T = M("VxeTable"), te = M("el-pagination");
|
|
1377
1369
|
return D(), de("div", {
|
|
1378
1370
|
class: Oe({ box: n.searchForm.showShadow })
|
|
1379
1371
|
}, [
|
|
@@ -1381,19 +1373,19 @@ const hn = { class: "center" }, gn = {
|
|
|
1381
1373
|
key: 0,
|
|
1382
1374
|
form: n.searchForm,
|
|
1383
1375
|
onReset: i,
|
|
1384
|
-
onConfirm: s[1] || (s[1] = ($) =>
|
|
1376
|
+
onConfirm: s[1] || (s[1] = ($) => V()),
|
|
1385
1377
|
onVisibleChange: G(_)
|
|
1386
1378
|
}, {
|
|
1387
|
-
btn:
|
|
1379
|
+
btn: j(() => [
|
|
1388
1380
|
s[3] || (s[3] = oe("span", { class: "mgr10" }, null, -1)),
|
|
1389
1381
|
re(c.$slots, "search-bar-btn", {}, void 0, !0),
|
|
1390
|
-
|
|
1382
|
+
R(y, {
|
|
1391
1383
|
class: "mgl10",
|
|
1392
1384
|
round: "",
|
|
1393
1385
|
onClick: s[0] || (s[0] = ($) => g.value.openCustom())
|
|
1394
1386
|
}, {
|
|
1395
|
-
default:
|
|
1396
|
-
|
|
1387
|
+
default: j(() => [
|
|
1388
|
+
R(dt, { name: "Tools" })
|
|
1397
1389
|
]),
|
|
1398
1390
|
_: 1
|
|
1399
1391
|
})
|
|
@@ -1405,7 +1397,7 @@ const hn = { class: "center" }, gn = {
|
|
|
1405
1397
|
ref_key: "tableContentRef",
|
|
1406
1398
|
ref: f
|
|
1407
1399
|
}, [
|
|
1408
|
-
|
|
1400
|
+
R(T, he({
|
|
1409
1401
|
id: k.value,
|
|
1410
1402
|
ref_key: "tableRef",
|
|
1411
1403
|
ref: g,
|
|
@@ -1418,7 +1410,7 @@ const hn = { class: "center" }, gn = {
|
|
|
1418
1410
|
onCheckboxAll: He,
|
|
1419
1411
|
onSortChange: (E = ie.value["sort-config"]) == null ? void 0 : E.sortChange
|
|
1420
1412
|
}), {
|
|
1421
|
-
default:
|
|
1413
|
+
default: j(() => [
|
|
1422
1414
|
n.searchForm.showCheckBox == null || n.searchForm.showCheckBox ? (D(), Y(H, {
|
|
1423
1415
|
key: 0,
|
|
1424
1416
|
type: "checkbox",
|
|
@@ -1426,26 +1418,26 @@ const hn = { class: "center" }, gn = {
|
|
|
1426
1418
|
title: c.$t("xu-hao"),
|
|
1427
1419
|
fixed: "left"
|
|
1428
1420
|
}, {
|
|
1429
|
-
checkbox:
|
|
1421
|
+
checkbox: j(({ rowIndex: $, row: B, checked: N, disabled: U, indeterminate: Z }) => [
|
|
1430
1422
|
oe("div", hn, [
|
|
1431
1423
|
N ? (D(), Y(F, {
|
|
1432
1424
|
key: 0,
|
|
1433
1425
|
checked: !0,
|
|
1434
|
-
disabled:
|
|
1426
|
+
disabled: U,
|
|
1435
1427
|
size: "default",
|
|
1436
|
-
onClick: ze((K) => !
|
|
1428
|
+
onClick: ze((K) => !U && Ne(B), ["stop"])
|
|
1437
1429
|
}, null, 8, ["disabled", "onClick"])) : (D(), Y(F, {
|
|
1438
1430
|
key: 1,
|
|
1439
|
-
disabled:
|
|
1431
|
+
disabled: U,
|
|
1440
1432
|
checked: !1,
|
|
1441
1433
|
size: "default",
|
|
1442
|
-
onClick: ze((K) => !
|
|
1434
|
+
onClick: ze((K) => !U && Ne(B), ["stop"])
|
|
1443
1435
|
}, null, 8, ["disabled", "onClick"])),
|
|
1444
|
-
P
|
|
1436
|
+
R(P, {
|
|
1445
1437
|
type: "info",
|
|
1446
1438
|
class: "mgl5"
|
|
1447
1439
|
}, {
|
|
1448
|
-
default:
|
|
1440
|
+
default: j(() => [
|
|
1449
1441
|
se(le($ + 1), 1)
|
|
1450
1442
|
]),
|
|
1451
1443
|
_: 2
|
|
@@ -1493,12 +1485,12 @@ const hn = { class: "center" }, gn = {
|
|
|
1493
1485
|
Kt(e.fileName, e.sheetsConfig);
|
|
1494
1486
|
}
|
|
1495
1487
|
return (o, a) => {
|
|
1496
|
-
const r =
|
|
1488
|
+
const r = M("el-link");
|
|
1497
1489
|
return D(), Y(r, he({
|
|
1498
1490
|
type: "primary",
|
|
1499
1491
|
underline: "never"
|
|
1500
1492
|
}, o.$attrs, { onClick: t }), {
|
|
1501
|
-
default:
|
|
1493
|
+
default: j(() => [
|
|
1502
1494
|
se(le(o.$t("xia-zai-dao-ru-mo-ban")), 1)
|
|
1503
1495
|
]),
|
|
1504
1496
|
_: 1
|
|
@@ -1836,20 +1828,20 @@ function eo() {
|
|
|
1836
1828
|
const o = e.row[e.column.field];
|
|
1837
1829
|
if (n.type == "tag") {
|
|
1838
1830
|
let a;
|
|
1839
|
-
return
|
|
1831
|
+
return R(M("el-text"), {
|
|
1840
1832
|
type: n.enum.getTag(o)
|
|
1841
1833
|
}, Ee(a = n.enum.getName(o)) ? a : {
|
|
1842
1834
|
default: () => [a]
|
|
1843
1835
|
});
|
|
1844
1836
|
}
|
|
1845
|
-
return
|
|
1837
|
+
return R(M("el-text"), null, Ee(t = n.enum.getName(o)) ? t : {
|
|
1846
1838
|
default: () => [t]
|
|
1847
1839
|
});
|
|
1848
1840
|
}
|
|
1849
1841
|
}), Ce.renderer.add("InputNumber", {
|
|
1850
1842
|
// 默认显示模板
|
|
1851
1843
|
renderTableDefault(n, e) {
|
|
1852
|
-
return
|
|
1844
|
+
return R(xt, he({
|
|
1853
1845
|
modelValue: e.row[e.column.field],
|
|
1854
1846
|
"onUpdate:modelValue": (t) => e.row[e.column.field] = t
|
|
1855
1847
|
}, n.props, {
|
|
@@ -1864,7 +1856,7 @@ function eo() {
|
|
|
1864
1856
|
locale: t
|
|
1865
1857
|
} = ve();
|
|
1866
1858
|
let o = t.value == "zh_cn";
|
|
1867
|
-
return
|
|
1859
|
+
return R(wt, {
|
|
1868
1860
|
type: e.row[e.column.field] ? "success" : "danger"
|
|
1869
1861
|
}, {
|
|
1870
1862
|
default: () => [e.row[e.column.field] ? o ? "是" : "YES" : o ? "否" : "NO"]
|
|
@@ -1889,7 +1881,7 @@ function eo() {
|
|
|
1889
1881
|
to: r
|
|
1890
1882
|
} = n;
|
|
1891
1883
|
if (!a)
|
|
1892
|
-
return
|
|
1884
|
+
return R(Ze, {
|
|
1893
1885
|
underline: "never",
|
|
1894
1886
|
type: "primary",
|
|
1895
1887
|
onclick: () => o.push({
|
|
@@ -1902,7 +1894,7 @@ function eo() {
|
|
|
1902
1894
|
default: () => [e.row[t]]
|
|
1903
1895
|
});
|
|
1904
1896
|
const l = ((u = e.row[t]) == null ? void 0 : u.split(",")) || [];
|
|
1905
|
-
return l.map((d, k) =>
|
|
1897
|
+
return l.map((d, k) => R("span", null, [R(Ze, {
|
|
1906
1898
|
underline: "never",
|
|
1907
1899
|
type: "primary",
|
|
1908
1900
|
onclick: () => o.push({
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(m,K){typeof exports=="object"&&typeof module<"u"?K(exports,require("element-plus"),require("vue"),require("file-saver"),require("exceljs"),require("dayjs"),require("vue-i18n"),require("lodash"),require("vue-router"),require("vuex"),require("vxe-pc-ui")):typeof define=="function"&&define.amd?define(["exports","element-plus","vue","file-saver","exceljs","dayjs","vue-i18n","lodash","vue-router","vuex","vxe-pc-ui"],K):(m=typeof globalThis<"u"?globalThis:m||self,K(m.JoyAdminComponents={},m.ElementPlus,m.Vue,m.fileSaver,m.ExcelJS,m.dayjs,m.VueI18n,m._,m.VueRouter,m.Vuex,m.VxeUI))})(this,function(m,K,e,He,Ie,he,ee,le,Te,Q,ie){"use strict";const Ze=e.defineComponent({name:"LayOutForm",setup(o,{slots:t,attrs:n,emit:l}){const a=e.ref(null),s=()=>t.default?t.default().filter(d=>d.type!==Symbol.for("v-cmt")).map(d=>d.type===Symbol.for("v-fgt")?d.children:d).flat().map(d=>{var f;return e.h(K.ElCol,{span:((f=d.props)==null?void 0:f.span)||24},{default:()=>d})}):null;e.onMounted(()=>{l("ref",a.value)});function r(){return e.h(K.ElForm,{...n,ref:a},()=>e.h(K.ElRow,{gutter:n.gutter??20},{default:()=>s()}))}return r}});var ve=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ee(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}var Le={exports:{}};(function(o,t){(function(n,l){o.exports=l()})(ve,function(){var n="minute",l=/[+-]\d\d(?::?\d\d)?/g,a=/([+-]|\d\d)/g;return function(s,r,d){var f=r.prototype;d.utc=function(h){var g={date:h,utc:!0,args:arguments};return new r(g)},f.utc=function(h){var g=d(this.toDate(),{locale:this.$L,utc:!0});return h?g.add(this.utcOffset(),n):g},f.local=function(){return d(this.toDate(),{locale:this.$L,utc:!1})};var $=f.parse;f.parse=function(h){h.utc&&(this.$u=!0),this.$utils().u(h.$offset)||(this.$offset=h.$offset),$.call(this,h)};var S=f.init;f.init=function(){if(this.$u){var h=this.$d;this.$y=h.getUTCFullYear(),this.$M=h.getUTCMonth(),this.$D=h.getUTCDate(),this.$W=h.getUTCDay(),this.$H=h.getUTCHours(),this.$m=h.getUTCMinutes(),this.$s=h.getUTCSeconds(),this.$ms=h.getUTCMilliseconds()}else S.call(this)};var x=f.utcOffset;f.utcOffset=function(h,g){var V=this.$utils().u;if(V(h))return this.$u?0:V(this.$offset)?x.call(this):this.$offset;if(typeof h=="string"&&(h=function(v){v===void 0&&(v="");var Y=v.match(l);if(!Y)return null;var O=(""+Y[0]).match(a)||["-",0,0],c=O[0],y=60*+O[1]+ +O[2];return y===0?0:c==="+"?y:-y}(h),h===null))return this;var _=Math.abs(h)<=16?60*h:h;if(_===0)return this.utc(g);var I=this.clone();if(g)return I.$offset=_,I.$u=!1,I;var B=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();return(I=this.local().add(_+B,n)).$offset=_,I.$x.$localOffset=B,I};var b=f.format;f.format=function(h){var g=h||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return b.call(this,g)},f.valueOf=function(){var h=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*h},f.isUTC=function(){return!!this.$u},f.toISOString=function(){return this.toDate().toISOString()},f.toString=function(){return this.toDate().toUTCString()};var w=f.toDate;f.toDate=function(h){return h==="s"&&this.$offset?d(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():w.call(this)};var p=f.diff;f.diff=function(h,g,V){if(h&&this.$u===h.$u)return p.call(this,h,g,V);var _=this.local(),I=d(h).local();return p.call(_,I,g,V)}}})})(Le);var Ge=Le.exports;const We=Ee(Ge);var Fe={exports:{}};(function(o,t){(function(n,l){o.exports=l()})(ve,function(){var n={year:0,month:1,day:2,hour:3,minute:4,second:5},l={};return function(a,s,r){var d,f=function(b,w,p){p===void 0&&(p={});var h=new Date(b),g=function(V,_){_===void 0&&(_={});var I=_.timeZoneName||"short",B=V+"|"+I,v=l[B];return v||(v=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:V,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:I}),l[B]=v),v}(w,p);return g.formatToParts(h)},$=function(b,w){for(var p=f(b,w),h=[],g=0;g<p.length;g+=1){var V=p[g],_=V.type,I=V.value,B=n[_];B>=0&&(h[B]=parseInt(I,10))}var v=h[3],Y=v===24?0:v,O=h[0]+"-"+h[1]+"-"+h[2]+" "+Y+":"+h[4]+":"+h[5]+":000",c=+b;return(r.utc(O).valueOf()-(c-=c%1e3))/6e4},S=s.prototype;S.tz=function(b,w){b===void 0&&(b=d);var p,h=this.utcOffset(),g=this.toDate(),V=g.toLocaleString("en-US",{timeZone:b}),_=Math.round((g-new Date(V))/1e3/60),I=15*-Math.round(g.getTimezoneOffset()/15)-_;if(!Number(I))p=this.utcOffset(0,w);else if(p=r(V,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(I,!0),w){var B=p.utcOffset();p=p.add(h-B,"minute")}return p.$x.$timezone=b,p},S.offsetName=function(b){var w=this.$x.$timezone||r.tz.guess(),p=f(this.valueOf(),w,{timeZoneName:b}).find(function(h){return h.type.toLowerCase()==="timezonename"});return p&&p.value};var x=S.startOf;S.startOf=function(b,w){if(!this.$x||!this.$x.$timezone)return x.call(this,b,w);var p=r(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return x.call(p,b,w).tz(this.$x.$timezone,!0)},r.tz=function(b,w,p){var h=p&&w,g=p||w||d,V=$(+r(),g);if(typeof b!="string")return r(b).tz(g);var _=function(Y,O,c){var y=Y-60*O*1e3,L=$(y,c);if(O===L)return[y,O];var z=$(y-=60*(L-O)*1e3,c);return L===z?[y,L]:[Y-60*Math.min(L,z)*1e3,Math.max(L,z)]}(r.utc(b,h).valueOf(),V,g),I=_[0],B=_[1],v=r(I).utcOffset(B);return v.$x.$timezone=g,v},r.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},r.tz.setDefault=function(b){d=b}}})})(Fe);var Je=Fe.exports;const Qe=Ee(Je),me={"dao-ru":"导入","quan-xuan":"全选","xia-zai-dao-ru-mo-ban":"下载导入模板","xu-hao":"序号","qing-shu-ru":"请输入","qing-xuan-ze":"请选择","kai-shi-shi-jian":"开始时间","jie-shu-shi-jian":"结束时间","shai-xuan":"筛选","chong-zhi":"重置","guan-bi":"关闭","zhan-kai":"展开",excel:{fieldsMappingRequired:"请输入列字段映射",invalidInput:"非法输入",invalidOption:"请输入有效选项!",copyFailed:"复制失败",sheetNameTooLong:'Sheet名称 "{0}" 长度超过31个字符,已自动截断为 "{1}"'},validate:{invalidInput:"请输入正确内容"},tools:{keysLengthError:"keys 长度必须大于2 默认前两位为 label value"}},ge={"dao-ru":"Import","quan-xuan":"Select All","xia-zai-dao-ru-mo-ban":"Download Import Template","xu-hao":"No.","qing-shu-ru":"Please enter","qing-xuan-ze":"Please select","kai-shi-shi-jian":"Start Time","jie-shu-shi-jian":"End Time","shai-xuan":"Filter","chong-zhi":"Reset","guan-bi":"Collapse","zhan-kai":"Expand",excel:{fieldsMappingRequired:"Please enter column field mapping",invalidInput:"Invalid input",invalidOption:"Please enter a valid option!",copyFailed:"Copy failed",sheetNameTooLong:'Sheet name "{0}" exceeds 31 characters, automatically truncated to "{1}"'},validate:{invalidInput:"Please enter valid content"},tools:{keysLengthError:"Keys length must be greater than 2, default first two are label and value"}},De={zh_cn:me,en_us:ge};let re=null;function Be(o=null){if(o){const{global:t}=o;return t.messages.value.zh_cn?t.mergeLocaleMessage("zh_cn",me):t.setLocaleMessage("zh_cn",me),t.messages.value.en_us?t.mergeLocaleMessage("en_us",ge):t.setLocaleMessage("en_us",ge),re=o,o}return re||(re=ee.createI18n({legacy:!1,locale:"zh_cn",fallbackLocale:"zh_cn",messages:De})),re}function pe(){return re||Be()}function Ce(){return pe().global.t}he.extend(We),he.extend(Qe);async function Xe(o,t){const{fields:n,range:l=1}=t;if(!n){const r=Ce();throw new Error(r("excel.fieldsMappingRequired"))}let a=new Ie.Workbook;await a.xlsx.load(o);const s={};return a.eachSheet(function(r,d){const f=[];r.eachRow(function($,S){if(S>l){let x={},b=!0;Object.keys(n).forEach(w=>{const p=$.getCell(n[w]).value;x[w]=p,p&&(b=!1)}),b||f.push(x)}}),s[r._name]=f}),a=null,s}const et={columnWidth:30};async function ze(o,t,n=[],l={}){if(!o||!t)return;const{columnStyle:a}=l,{columnWidth:s}=et;t.forEach(f=>{f.width=f.width?f.width:s});const{workbook:r,worksheet:d}=tt();d.columns=t,d.addRows(n),a&&await nt(r,d,a);try{const f=await r.xlsx.writeBuffer(),$=new File([f],o,{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});He.saveAs($)}catch(f){console.log(f)}}function tt(){const o=new Ie.Workbook;o.creator="distributor System",o.lastModifiedBy="distributor System",o.created=new Date,o.modified=new Date,o.lastPrinted=new Date;const t=o.addWorksheet("Sheet1");return{workbook:o,worksheet:t}}async function nt(o,t,n){const l=Object.keys(n);for(const a of l){const s=n[a],{type:r}=s;switch(r){case"IMG":await ot(o,t,a);break}}}async function ot(o,t,n,l){const a=t.getColumn(n),s=a.values;t.getColumn(n).width=20,t.eachRow((r,d)=>{d>1&&(r.height=40)});for(let r=0,d=s.length;r<d;r++){if(r<2)continue;let f=s[r];f&&(t.getCell(a.letter+r).value="",await lt(o,t,f,{width:100,height:50,col:a._number-1,row:r-1}))}}async function lt(o,t,n,l){const{col:a,row:s,width:r,height:d}=l,{success:f,base64:$}=await rt(n,.3);if(f){const S=o.addImage({base64:$,extension:"jpeg"});t.addImage(S,{tl:{col:a,row:s},ext:{width:r,height:d}})}}function rt(o,t=1){const n=new Image;return n.setAttribute("crossOrigin","anonymous"),n.crossOrigin="anonymous",n.src=o,new Promise((l,a)=>{n.onload=()=>{const s=document.createElement("canvas");s.width=n.width,s.height=n.height,s.getContext("2d").drawImage(n,0,0,s.width,s.height),l({success:!0,base64:s.toDataURL("image/jpeg",t)})},n.onerror=()=>{l({success:!1})}})}function at(o){if(o<26)return String.fromCharCode(65+o);{const t=String.fromCharCode(65+Math.floor((o-26)/26)),n=String.fromCharCode(65+(o-26)%26);return t+n}}function st(o){return new Promise(t=>{setTimeout(()=>{t()},o)})}function it(o){return JSON.parse(JSON.stringify(o))}function ct(o){let t=[],n={},l=(a,s)=>Object.prototype.hasOwnProperty.call(a,s);for(const a of o){n[a.id]={...a,children:l(n,a.id)?n[a.id].children:[]};const s=n[a.id];a.pid==-1?t.push(s):(l(n,a.pid)||(n[a.pid]={children:[]}),n[a.pid].children.push(s))}return t}function ye(o,t=" "){return o?o.split(t).filter(n=>n.trim()):[]}class be{constructor(t,n=["label","value","labelEn"]){this.list=t.map(l=>({...l,label:l[n[0]],labelEn:l[n[2]]||l[n[0]]||"",value:l[n[1]]})),this.map=new Map(this.list.map(l=>[l[n[1]],l]))}getName(t){if(!this.has(t))return"-";const n=pe().global.locale,{label:l,labelEn:a}=this.map.get(t);return(n.value=="zh_cn"?l:a)||l||"-"}getTag(t){if(!this.has(t))return"info";const{tag:n="info"}=this.map.get(t);return n}getItem(t){return this.has(t)?this.map.get(t):null}getColor(t){if(!this.has(t))return null;const{color:n}=this.map.get(t);return n}has(t){return this.map.has(t)}}function ut(o,t=[],n="i18nName"){if(o.length==0)return new be([]);if(t.length<2){const a=Ce();throw new Error(a("tools.keysLengthError"))}let l=o.map(a=>{let s={};return n&&(s.labelEn=a[n]),t.forEach((r,d)=>{d===0?s.label=a[r]:d===1?s.value=a[r]:s[r]=a[r]}),s});return new be(l)}function dt(o){return o?o.replace(/<[^>]+>/g,""):""}function ft(o){return o?(o.includes("\\\\u")&&(o=o.replace(/\\/g,"")),o.replace(/\\u[\dA-F]{4}/gi,t=>String.fromCharCode(parseInt(t.replace(/\\u/g,""),16)))):""}function ht(o,t=10){let n=1048576*t;return!(o.size>n)}function mt(o){return Array.from(10).fill(0).map((n,l)=>o+"_"+l)}function gt(o){let t={};return o.map((n,l)=>{let{key:a,option:s,type:r}=n,d=at(l);s?t[a]=`${d}---option`:r==="image"?t[a]=`${d}---image`:t[a]=d}),t}function pt(o,t){return t.split(".").reduce((n,l)=>n&&n[l],o)}const Zt="",ce=(o,t)=>{const n=o.__vccOpts||o;for(const[l,a]of t)n[l]=a;return n},Ct=["onClick"],Oe=ce({__name:"index",props:e.mergeModels({api:{type:Function},showCheckAll:{type:Boolean,default:!0},maxLimit:{type:Number,default:void 0},optionClick:{type:Function,default:()=>{}},data:{type:Array},labelValue:{type:Object,default:()=>({label:"label",labelEn:"labelEn",value:"value"})},changeLocal:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["success","change","changeAll"],["update:modelValue"]),setup(o,{emit:t}){const n=o,l=e.useAttrs(),{t:a,locale:s}=ee.useI18n(),r=e.useModel(o,"modelValue"),d=e.computed(()=>l["value-key"]!=null),f=e.ref(""),$=e.computed(()=>{if(l.remote!==void 0)return n.data;const c=ye(f.value),{data:y,labelValue:L}=n,z=y||b.value;if(c.length==0)return z;const{label:W,labelEn:te}=L;let C=s.value=="en_us"?te||"i18nName":W;return c.length==1?z.filter(X=>X[C].toLowerCase().includes(c[0].toLowerCase())):z.filter(X=>{let se=!1;return se=c.some(de=>X[C].toLowerCase()==de.toLowerCase()),se})}),S=e.computed({get(){return l.multiple==null||r.value==null?!1:r.value.length==$.value.length},set(c){return c}}),x=t,b=e.ref([]),w=async()=>{const{data:c}=await n.api();b.value=[...c],x("success",b)};n.api&&w();function p(c){x("change",c)}const h=n.labelValue.label.split("-"),g=c=>{if(h.length==1){if(n.changeLocal)return a(c[n.labelValue.label]);let y=s.value=="en_us"?c[n.labelValue.labelEn||"i18nName"]:c[n.labelValue.label];return y=y||c[n.labelValue.label],y}else{let y=[];return h.forEach(L=>{y.push(c[L])}),y.join("-")}};function V(c){let y=n.data?n.data:b.value;r.value=c?y.map(L=>d.value?L:L[n.labelValue.value]):[],e.nextTick(()=>{x("change",r.value),x("changeAll",r.value,y)})}function _(c){n.optionClick&&n.optionClick(c),x("change",d.value?c:c[n.labelValue.value])}function I(c){return r.value.length>=n.maxLimit&&!r.value.includes(c[n.labelValue.value])}function B(c){return c.map(y=>({...y,label:g(y),value:d.value?y:y[n.labelValue.value]}))}const v=e.ref([]),Y=n.data?n.data:b.value;v.value=B(Y),e.watch(()=>n.data?n.data:b.value,c=>{var L;const y=B(c);if(y.length!==v.value.length)v.value=y;else{let z=!1;for(let W=0;W<y.length;W++)if(y[W].value!==((L=v.value[W])==null?void 0:L.value)){z=!0;break}z&&(v.value=y)}},{deep:!0});const O=e.computed(()=>v.value);return(c,y)=>{const L=e.resolveComponent("el-checkbox"),z=e.resolveComponent("el-select-v2"),W=e.resolveComponent("el-option"),te=e.resolveComponent("el-select");return e.unref(l).v2!=null?(e.openBlock(),e.createBlock(z,e.mergeProps({key:0,options:O.value,modelValue:r.value,"onUpdate:modelValue":y[1]||(y[1]=C=>r.value=C)},e.unref(l),{filterable:"","collapse-tags":"","collapse-tags-tooltip":"",clearable:"",onChange:p,onClear:p}),e.createSlots({default:e.withCtx(({item:C})=>[e.createElementVNode("div",{onClick:ae=>_(C)},e.toDisplayString(C.label),9,Ct)]),_:2},[e.unref(l).multiple!=null?{name:"header",fn:e.withCtx(()=>[e.renderSlot(c.$slots,"header",{},()=>[e.createVNode(L,{class:"mgl20",modelValue:S.value,"onUpdate:modelValue":y[0]||(y[0]=C=>S.value=C),onChange:V},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.$t("quan-xuan")),1)]),_:1},8,["modelValue"])],!0)]),key:"0"}:void 0]),1040,["options","modelValue"])):(e.openBlock(),e.createBlock(te,e.mergeProps({key:1,modelValue:r.value,"onUpdate:modelValue":y[3]||(y[3]=C=>r.value=C),filterable:"","collapse-tags":"","collapse-tags-tooltip":"","filter-method":e.unref(l).remote!=null?void 0:C=>f.value=C,clearable:""},e.unref(l),{onClear:o.optionClick}),{default:e.withCtx(()=>[e.unref(l).multiple!=null&&o.showCheckAll&&o.maxLimit==null?e.renderSlot(c.$slots,"header",{key:0},()=>[e.createVNode(L,{class:"mgl20",modelValue:S.value,"onUpdate:modelValue":y[2]||(y[2]=C=>S.value=C),onChange:V},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.$t("quan-xuan")),1)]),_:1},8,["modelValue"])],!0):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList($.value,(C,ae)=>(e.openBlock(),e.createBlock(W,{key:ae,label:g(C),disabled:e.unref(l).multiple!=null&&o.maxLimit>0?I(C):!1,onClick:e.withModifiers(X=>_(C),["stop"]),value:d.value?C:C[o.labelValue.value]},null,8,["label","disabled","onClick","value"]))),128))]),_:3},16,["modelValue","filter-method","onClear"]))}}},[["__scopeId","data-v-d12f3c20"]]),Wt="",yt=e.defineComponent({props:{name:{tyepe:String,required:!0}}});function bt(o,t,n,l,a,s){const r=e.resolveComponent("el-icon");return e.openBlock(),e.createBlock(r,{class:"cmp-icon"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.name)))]),_:1})}const we=ce(yt,[["render",bt],["__scopeId","data-v-733f9daa"]]),wt={__name:"index",emits:["ok","no"],setup(o,{emit:t}){const n=t,l=le.debounce(()=>{n("ok")},500);function a(){n("no")}return(s,r)=>{const d=e.resolveComponent("el-link"),f=e.resolveComponent("el-popconfirm");return e.openBlock(),e.createBlock(f,e.mergeProps(s.$attrs,{onConfirm:e.unref(l),onCancel:a}),{reference:e.withCtx(()=>[e.createVNode(d,{underline:"never",type:s.$attrs.type},{default:e.withCtx(()=>[e.renderSlot(s.$slots,"default")]),_:3},8,["type"])]),_:3},16,["onConfirm"])}}},Jt="",kt=["accept"],xt=ce({__name:"index",props:{accept:{type:String,default:".xlsx,.xls"},loading:{type:Boolean,default:!1}},emits:["fileChange"],setup(o,{emit:t}){const n=t,l=e.ref(null);function a(s){let r=s.target.files[0];n("fileChange",r),l.value.value=null}return(s,r)=>{const d=e.resolveComponent("el-button");return e.openBlock(),e.createElementBlock("span",null,[e.createVNode(d,{loading:o.loading,class:"mgr10",onClick:r[0]||(r[0]=f=>l.value.click())},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.$t("dao-ru")),1)]),_:1},8,["loading"]),e.createElementVNode("input",{onChange:a,ref_key:"input",ref:l,accept:o.accept,style:{position:"absolute",width:"0px",height:"0px",opacity:"0"},type:"file"},null,40,kt)])}}},[["__scopeId","data-v-5f1449ad"]]);function ke(o){let t={};return o.forEach(n=>{const{key:l,type:a,option:s={},value:r,dateType:d="date"}=n;if(l)if(a=="input"&&(s!=null&&s.multiple))t[l]=ye(r);else if(a=="date")if(d.includes("range")){const[f,$]=l;let[S,x]=r||[];S&&d=="daterange"&&(S=he(S).format("YYYY-MM-DD 00:00:00"),x=he(x).format("YYYY-MM-DD 23:59:59")),t[f]=S,t[$]=x}else t[l]=r;else t[l]=r}),t}const Xt="",St={key:0},_t={class:"btns"},$t={class:"left"},Vt={class:"right"},Ne=ce({__name:"index",props:{form:{type:Object,required:!0}},emits:["confirm","reset","visibleChange"],setup(o,{expose:t,emit:n}){const l=o,a=n,s=e.ref(!0),r=e.ref(null),{t:d}=ee.useI18n(),f=e.computed(()=>s.value?d("guan-bi"):d("zhan-kai"));function $(){a("confirm")}function S(g){g.option.onClear&&g.option.onClear(),a("confirm")}function x(){a("reset")}function b(){a("confirm")}function w(){return ke(l.form.items)}const p=le.cloneDeep(l.form.items);function h(){l.form.items.forEach(g=>{const V=p.find(_=>_.key==g.key);V&&(g.value=V.value)})}return t({getPrm:w,reset:h}),(g,V)=>{const _=e.resolveComponent("el-input"),I=e.resolveComponent("el-date-picker"),B=e.resolveComponent("el-form-item"),v=e.resolveComponent("el-form"),Y=e.resolveComponent("el-link"),O=e.resolveComponent("el-button");return e.openBlock(),e.createElementBlock("div",{class:"searchBar-container mgt10 mgb10",onKeydown:e.withKeys($,["enter"])},[e.createElementVNode("div",{class:"searchBar",style:e.normalizeStyle({height:s.value?"auto":"42px"})},[e.createVNode(v,{inline:"",model:o.form.data},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.form.items.filter(c=>!c.hidden),c=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:c.key},[c.type=="br"?(e.openBlock(),e.createElementBlock("br",St)):(e.openBlock(),e.createBlock(B,{key:1,label:c.name},{default:e.withCtx(()=>{var y,L;return[c.type==="input"?(e.openBlock(),e.createBlock(_,{key:0,modelValue:c.value,"onUpdate:modelValue":z=>c.value=z,class:e.normalizeClass(((y=c.option)==null?void 0:y.class)||"w150"),placeholder:g.$t("qing-shu-ru"),clearable:""},null,8,["modelValue","onUpdate:modelValue","class","placeholder"])):c.type==="custom"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.render),{key:1})):e.createCommentVNode("",!0),c.type==="select"?(e.openBlock(),e.createBlock(Oe,e.mergeProps({key:2,class:((L=c.option)==null?void 0:L.class)||"w150",modelValue:c.value,"onUpdate:modelValue":z=>c.value=z},{ref_for:!0},c.option,{onChange:$,onClear:z=>S(c)}),null,16,["class","modelValue","onUpdate:modelValue","onClear"])):e.createCommentVNode("",!0),c.type==="date"?(e.openBlock(),e.createBlock(I,{key:3,class:e.normalizeClass({datetimerange:"w300",daterange:"w200"}[c.dateType]||"w100"),modelValue:c.value,"onUpdate:modelValue":z=>c.value=z,"value-format":{datetimerange:"YYYY-MM-DD HH:mm:ss",daterange:"YYYY-MM-DD"}[c.dateType]||"YYYY-MM-DD",type:c.dateType||"date",onFocus:z=>r.value=c,onChange:z=>b(),placeholder:g.$t("qing-xuan-ze"),"start-placeholder":g.$t("kai-shi-shi-jian"),"end-placeholder":g.$t("jie-shu-shi-jian")},null,8,["class","modelValue","onUpdate:modelValue","value-format","type","onFocus","onChange","placeholder","start-placeholder","end-placeholder"])):e.createCommentVNode("",!0)]}),_:2},1032,["label"]))],64))),128))]),_:1},8,["model"])],4),e.createElementVNode("div",_t,[e.createElementVNode("div",$t,[e.renderSlot(g.$slots,"table-header-left",{},void 0,!0)]),e.createElementVNode("div",Vt,[e.createVNode(Y,{underline:"never",class:"mgr10",onClick:V[0]||(V[0]=()=>{a("visibleChange",!s.value),s.value=!s.value})},{default:e.withCtx(()=>[e.createVNode(we,{name:s.value?"ArrowUp":"ArrowDown"},null,8,["name"]),e.createTextVNode(" "+e.toDisplayString(f.value),1)]),_:1}),e.createVNode(O,{type:"primary",onClick:$},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.$t("shai-xuan")),1)]),_:1}),e.createVNode(O,{type:"primary",onClick:x},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.$t("chong-zhi")),1)]),_:1}),e.renderSlot(g.$slots,"btn",{},void 0,!0)])])],32)}}},[["__scopeId","data-v-3c0a6716"]]),Me={pageNoKey:"pageNo",pageSizeKey:"pageSize",totalKey:"total",defaultPageSize:10,pageSizes:[10,50,100,500],responseDataKeys:{rows:["rows","records"],total:["totalRows","total"]},showSearch:!1,showPage:!1,showShadow:!1,showCheckBox:!1,enableCellCopy:!0};let ue={...Me};function It(o){ue={...ue,...o,responseDataKeys:{...ue.responseDataKeys,...o.responseDataKeys||{}}}}function Ae(){return ue}function Tt(){ue={...Me}}const tn="",vt={class:"center"},Et=ce({__name:"index",props:{id:{type:String,required:!1},loading:{type:Boolean,default:!1},immediate:{type:Boolean,default:!0},searchForm:{type:Object,default:()=>({items:[],selections:[]})},api:{type:Function},data:{type:Array},tableConfig:{type:Object,default:()=>({})}},setup(o,{expose:t}){const{t:n,locale:l}=ee.useI18n(),a=Te.useRoute(),s=Ae(),r=o,d=e.ref(!1),f=e.ref([]);r.searchForm.showSearch===void 0&&(r.searchForm.showSearch=s.showSearch),r.searchForm.showPage===void 0&&(r.searchForm.showPage=s.showPage),r.searchForm.showShadow===void 0&&(r.searchForm.showShadow=s.showShadow),r.searchForm.showCheckBox===void 0&&(r.searchForm.showCheckBox=s.showCheckBox),r.searchForm.enableCellCopy===void 0&&(r.searchForm.enableCellCopy=s.enableCellCopy),r.searchForm.selections||(r.searchForm.selections=[]);const $=e.computed(()=>{const u=a.path.replace(/\//g,"-").replace(/^-/,"")||"default-table";return r.id?`listPageId-${u}-${r.id}`:`listPageId-${u}`}),S=le.cloneDeep(r.searchForm.items),x=r.searchForm.pageNoKey||s.pageNoKey,b=r.searchForm.pageSizeKey||s.pageSizeKey,w=e.reactive({[x]:1,[b]:r.searchForm.defaultPageSize||s.defaultPageSize,total:0}),p=e.ref(null),h=e.ref(null),g=e.ref(450),V=le.debounce(()=>{e.nextTick(()=>{if(!h.value)return;const i=h.value.getBoundingClientRect(),k=window.innerHeight,E=i.top,M=100,R=k-E-M,F=200;g.value=Math.max(R,F)})},100),_=()=>{V()},I=()=>{if(!r.searchForm.enableCellCopy)return!1;const u=p.value;if(!u||!u.$el)return!1;const i=u.$el;return i.classList.add("cell-copy-enabled"),i.setAttribute("tabindex","-1"),i.removeEventListener("mousedown",X),i.removeEventListener("mousemove",se),i.removeEventListener("mouseup",de),i.removeEventListener("keydown",$e),i.addEventListener("mousedown",X),i.addEventListener("mousemove",se),i.addEventListener("mouseup",de),i.addEventListener("keydown",$e),!0};e.onMounted(()=>{V(),window.addEventListener("resize",_),r.searchForm.enableCellCopy&&(document.addEventListener("mouseup",je),document.addEventListener("mousedown",Ue),setTimeout(()=>{I()},500))}),e.onUpdated(()=>{r.searchForm.enableCellCopy&&setTimeout(()=>{I()},500)}),e.onUnmounted(()=>{if(window.removeEventListener("resize",_),r.searchForm.enableCellCopy){document.removeEventListener("mouseup",je),document.removeEventListener("mousedown",Ue);const u=p.value;if(u&&u.$el){const i=u.$el;i.removeEventListener("mousedown",X),i.removeEventListener("mousemove",se),i.removeEventListener("mouseup",de),i.removeEventListener("keydown",$e)}}});const B=e.computed(()=>te.value.height||g.value);let v;async function Y(u){const{dataFormat:i}=r.tableConfig;u[x]!=1&&(u.nextSearchAfter=v),d.value=!0;const{code:k,data:E={}}=await r.api(u).finally(()=>{d.value=!1,r.searchForm.selections=[]});if(k==200){let M=[];for(const F of s.responseDataKeys.rows)if(E[F]){M=E[F];break}let R=0;for(const F of s.responseDataKeys.total)if(E[F]!==void 0){R=E[F];break}f.value=i?i(M):M,w.total=R,v=E.nextSearchAfter,r.searchForm.enableCellCopy&&e.nextTick(()=>{setTimeout(()=>{I()},100)})}}function O(u={}){const{searchData:i=()=>({})}=r.tableConfig,k=i();Y({...w,...ke(r.searchForm.items),...u,...k})}function c(){const{reset:u}=r.tableConfig;u&&u(),r.searchForm.items.forEach(i=>{const k=S.find(E=>le.isArray(i.key)&&le.isArray(E.key)?i.key.join(",")==E.key.join(","):E.key==i.key);k&&(i.value=k.value)}),O()}r.api&&r.immediate&&O();function y(){return{...w,...ke(r.searchForm.items)}}const L=()=>{const u=p.value;u&&u.clearSort()},z=e.reactive({storage:!0}),W=e.reactive({drag:!0,resizable:!0,maxFixedSize:0}),te=e.computed(()=>{const{customConfig:u,columnConfig:i,...k}=r.tableConfig;return{headerAlign:"left",align:"center",customConfig:{...z,...u},columnConfig:{...W,...i},"virtual-x-config":{enabled:!1,scrollToLeftOnChange:!1},"virtual-y-config":{enabled:!0,gt:100},...k}}),C=e.reactive({isSelecting:!1,startCell:null,endCell:null,selectedCells:[]}),ae=u=>{const i=u.closest(".vxe-body--column");if(!i||i.classList.contains("col--checkbox")||i.classList.contains("col--seq"))return null;const k=i.closest(".vxe-body--row");if(!k)return null;const E=p.value;if(!E)return null;let M=-1;const R=k.getAttribute("data-rowid");if(R!=null)M=parseInt(R,10);else{const D=k.parentElement;M=Array.from(D.querySelectorAll(".vxe-body--row")).indexOf(k)}if(M<0)return null;let F=-1;const J=i.getAttribute("data-colid");if(J&&(F=E.getColumns().findIndex(T=>T.id===J)),F<0){const T=Array.from(k.querySelectorAll(".vxe-body--column")).indexOf(i),q=!!i.closest(".vxe-table--fixed-left-wrapper"),j=!!i.closest(".vxe-table--fixed-right-wrapper"),A=E.getColumns();if(q){const U=A.filter(P=>P.fixed==="left");T<U.length&&(F=A.indexOf(U[T]))}else if(j){const U=A.filter(P=>P.fixed==="right");T<U.length&&(F=A.indexOf(U[T]))}else{const U=r.searchForm.showCheckBox?1:0;F=A.filter(H=>H.fixed==="left").length+T-U}}return F<0?null:{rowIndex:M,colIndex:F,cell:i}},X=u=>{const i=ae(u.target);if(!i){_e();return}C.isSelecting=!0,C.startCell={rowIndex:i.rowIndex,colIndex:i.colIndex},C.endCell={...C.startCell},Pe(),Re()},se=u=>{if(!C.isSelecting)return;const i=ae(u.target);i&&(C.endCell={rowIndex:i.rowIndex,colIndex:i.colIndex},Pe(),Re())},de=()=>{C.isSelecting=!1},_e=()=>{C.selectedCells=[],C.startCell=null,C.endCell=null;const u=p.value;if(!u)return;u.$el.querySelectorAll(".cell-selected, .cell-border-top, .cell-border-right, .cell-border-bottom, .cell-border-left").forEach(k=>{k.classList.remove("cell-selected","cell-border-top","cell-border-right","cell-border-bottom","cell-border-left")})},Pe=()=>{if(!C.startCell||!C.endCell){C.selectedCells=[];return}const u=C.startCell.rowIndex,i=C.endCell.rowIndex,k=C.startCell.colIndex,E=C.endCell.colIndex,M=Math.min(u,i),R=Math.max(u,i),F=Math.min(k,E),J=Math.max(k,E);C.selectedCells=[];for(let D=M;D<=R;D++)for(let T=F;T<=J;T++)C.selectedCells.push({rowIndex:D,colIndex:T})},Re=()=>{e.nextTick(()=>{const u=p.value;if(!u)return;const i=u.$el;if(i.querySelectorAll(".cell-selected, .cell-border-top, .cell-border-right, .cell-border-bottom, .cell-border-left").forEach(q=>{q.classList.remove("cell-selected","cell-border-top","cell-border-right","cell-border-bottom","cell-border-left")}),C.selectedCells.length===0)return;const k=u.getColumns(),E=C.selectedCells.map(q=>q.rowIndex),M=C.selectedCells.map(q=>q.colIndex),R=Math.min(...E),F=Math.max(...E),J=Math.min(...M),D=Math.max(...M),T=[i.querySelector(".vxe-table--body-wrapper tbody"),i.querySelector(".vxe-table--fixed-left-wrapper tbody"),i.querySelector(".vxe-table--fixed-right-wrapper tbody")].filter(Boolean);C.selectedCells.forEach(({rowIndex:q,colIndex:j})=>{const A=k[j];if(!A)return;const U=A.fixed==="left",P=A.fixed==="right";for(const H of T){const fe=H.querySelectorAll(".vxe-body--row")[q];if(!fe)continue;const ne=Array.from(fe.querySelectorAll(".vxe-body--column"));let N=null;if(U&&H.closest(".vxe-table--fixed-left-wrapper")){const Z=k.filter(G=>G.fixed==="left").indexOf(A);N=ne[Z]}else if(P&&H.closest(".vxe-table--fixed-right-wrapper")){const Z=k.filter(G=>G.fixed==="right").indexOf(A);N=ne[Z]}else if(!U&&!P&&H.closest(".vxe-table--body-wrapper")){const oe=r.searchForm.showCheckBox?1:0,Z=k.filter(Ve=>Ve.fixed==="left").length,G=j-Z;N=ne[G+oe]}if(N&&!N.classList.contains("col--checkbox")&&!N.classList.contains("col--seq")){N.classList.add("cell-selected"),q===R&&N.classList.add("cell-border-top"),q===F&&N.classList.add("cell-border-bottom"),j===J&&N.classList.add("cell-border-left"),j===D&&N.classList.add("cell-border-right");break}}})})},Ut=async()=>{if(C.selectedCells.length===0)return;const u=p.value;if(!u)return;const i=u.$el,k=u.getColumns(),E=[...new Set(C.selectedCells.map(D=>D.rowIndex))].sort((D,T)=>D-T),M=[...new Set(C.selectedCells.map(D=>D.colIndex))].sort((D,T)=>D-T),R=[i.querySelector(".vxe-table--body-wrapper tbody"),i.querySelector(".vxe-table--fixed-left-wrapper tbody"),i.querySelector(".vxe-table--fixed-right-wrapper tbody")].filter(Boolean),F=[];E.forEach(D=>{const T=[];M.forEach(q=>{const j=k[q];if(!j){T.push("");return}const A=j.fixed==="left",U=j.fixed==="right";let P="";for(const H of R){const fe=H.querySelectorAll(".vxe-body--row")[D];if(!fe)continue;const ne=Array.from(fe.querySelectorAll(".vxe-body--column"));let N=null;if(A&&H.closest(".vxe-table--fixed-left-wrapper")){const Z=k.filter(G=>G.fixed==="left").indexOf(j);N=ne[Z]}else if(U&&H.closest(".vxe-table--fixed-right-wrapper")){const Z=k.filter(G=>G.fixed==="right").indexOf(j);N=ne[Z]}else if(!A&&!U&&H.closest(".vxe-table--body-wrapper")){const oe=r.searchForm.showCheckBox?1:0,Z=k.filter(Ve=>Ve.fixed==="left").length,G=q-Z;N=ne[G+oe]}if(N&&!N.classList.contains("col--checkbox")&&!N.classList.contains("col--seq")){P=N.innerText||N.textContent||"",P=P.trim(),P=P.replace(/\n/g," ").replace(/\s+/g," ");break}}T.push(P)}),F.push(T.join(" "))});const J=F.join(`
|
|
1
|
+
(function(m,K){typeof exports=="object"&&typeof module<"u"?K(exports,require("element-plus"),require("vue"),require("file-saver"),require("exceljs"),require("dayjs"),require("vue-i18n"),require("lodash"),require("vue-router"),require("vuex"),require("vxe-pc-ui")):typeof define=="function"&&define.amd?define(["exports","element-plus","vue","file-saver","exceljs","dayjs","vue-i18n","lodash","vue-router","vuex","vxe-pc-ui"],K):(m=typeof globalThis<"u"?globalThis:m||self,K(m.JoyAdminComponents={},m.ElementPlus,m.Vue,m.fileSaver,m.ExcelJS,m.dayjs,m.VueI18n,m._,m.VueRouter,m.Vuex,m.VxeUI))})(this,function(m,K,e,He,Ie,he,ee,le,Te,Q,ie){"use strict";const Ze=e.defineComponent({name:"LayOutForm",setup(o,{slots:t,attrs:n,emit:l}){const a=e.ref(null),s=()=>t.default?t.default().filter(d=>d.type!==Symbol.for("v-cmt")).map(d=>d.type===Symbol.for("v-fgt")?d.children:d).flat().map(d=>{var f;return e.h(K.ElCol,{span:((f=d.props)==null?void 0:f.span)||24},{default:()=>d})}):null;e.onMounted(()=>{l("ref",a.value)});function r(){return e.h(K.ElForm,{...n,ref:a},()=>e.h(K.ElRow,{gutter:n.gutter??20},{default:()=>s()}))}return r}});var ve=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ee(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}var Le={exports:{}};(function(o,t){(function(n,l){o.exports=l()})(ve,function(){var n="minute",l=/[+-]\d\d(?::?\d\d)?/g,a=/([+-]|\d\d)/g;return function(s,r,d){var f=r.prototype;d.utc=function(h){var g={date:h,utc:!0,args:arguments};return new r(g)},f.utc=function(h){var g=d(this.toDate(),{locale:this.$L,utc:!0});return h?g.add(this.utcOffset(),n):g},f.local=function(){return d(this.toDate(),{locale:this.$L,utc:!1})};var $=f.parse;f.parse=function(h){h.utc&&(this.$u=!0),this.$utils().u(h.$offset)||(this.$offset=h.$offset),$.call(this,h)};var S=f.init;f.init=function(){if(this.$u){var h=this.$d;this.$y=h.getUTCFullYear(),this.$M=h.getUTCMonth(),this.$D=h.getUTCDate(),this.$W=h.getUTCDay(),this.$H=h.getUTCHours(),this.$m=h.getUTCMinutes(),this.$s=h.getUTCSeconds(),this.$ms=h.getUTCMilliseconds()}else S.call(this)};var x=f.utcOffset;f.utcOffset=function(h,g){var V=this.$utils().u;if(V(h))return this.$u?0:V(this.$offset)?x.call(this):this.$offset;if(typeof h=="string"&&(h=function(v){v===void 0&&(v="");var Y=v.match(l);if(!Y)return null;var O=(""+Y[0]).match(a)||["-",0,0],c=O[0],y=60*+O[1]+ +O[2];return y===0?0:c==="+"?y:-y}(h),h===null))return this;var _=Math.abs(h)<=16?60*h:h;if(_===0)return this.utc(g);var I=this.clone();if(g)return I.$offset=_,I.$u=!1,I;var B=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();return(I=this.local().add(_+B,n)).$offset=_,I.$x.$localOffset=B,I};var b=f.format;f.format=function(h){var g=h||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return b.call(this,g)},f.valueOf=function(){var h=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*h},f.isUTC=function(){return!!this.$u},f.toISOString=function(){return this.toDate().toISOString()},f.toString=function(){return this.toDate().toUTCString()};var w=f.toDate;f.toDate=function(h){return h==="s"&&this.$offset?d(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():w.call(this)};var p=f.diff;f.diff=function(h,g,V){if(h&&this.$u===h.$u)return p.call(this,h,g,V);var _=this.local(),I=d(h).local();return p.call(_,I,g,V)}}})})(Le);var Ge=Le.exports;const We=Ee(Ge);var Fe={exports:{}};(function(o,t){(function(n,l){o.exports=l()})(ve,function(){var n={year:0,month:1,day:2,hour:3,minute:4,second:5},l={};return function(a,s,r){var d,f=function(b,w,p){p===void 0&&(p={});var h=new Date(b),g=function(V,_){_===void 0&&(_={});var I=_.timeZoneName||"short",B=V+"|"+I,v=l[B];return v||(v=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:V,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:I}),l[B]=v),v}(w,p);return g.formatToParts(h)},$=function(b,w){for(var p=f(b,w),h=[],g=0;g<p.length;g+=1){var V=p[g],_=V.type,I=V.value,B=n[_];B>=0&&(h[B]=parseInt(I,10))}var v=h[3],Y=v===24?0:v,O=h[0]+"-"+h[1]+"-"+h[2]+" "+Y+":"+h[4]+":"+h[5]+":000",c=+b;return(r.utc(O).valueOf()-(c-=c%1e3))/6e4},S=s.prototype;S.tz=function(b,w){b===void 0&&(b=d);var p,h=this.utcOffset(),g=this.toDate(),V=g.toLocaleString("en-US",{timeZone:b}),_=Math.round((g-new Date(V))/1e3/60),I=15*-Math.round(g.getTimezoneOffset()/15)-_;if(!Number(I))p=this.utcOffset(0,w);else if(p=r(V,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(I,!0),w){var B=p.utcOffset();p=p.add(h-B,"minute")}return p.$x.$timezone=b,p},S.offsetName=function(b){var w=this.$x.$timezone||r.tz.guess(),p=f(this.valueOf(),w,{timeZoneName:b}).find(function(h){return h.type.toLowerCase()==="timezonename"});return p&&p.value};var x=S.startOf;S.startOf=function(b,w){if(!this.$x||!this.$x.$timezone)return x.call(this,b,w);var p=r(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return x.call(p,b,w).tz(this.$x.$timezone,!0)},r.tz=function(b,w,p){var h=p&&w,g=p||w||d,V=$(+r(),g);if(typeof b!="string")return r(b).tz(g);var _=function(Y,O,c){var y=Y-60*O*1e3,L=$(y,c);if(O===L)return[y,O];var z=$(y-=60*(L-O)*1e3,c);return L===z?[y,L]:[Y-60*Math.min(L,z)*1e3,Math.max(L,z)]}(r.utc(b,h).valueOf(),V,g),I=_[0],B=_[1],v=r(I).utcOffset(B);return v.$x.$timezone=g,v},r.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},r.tz.setDefault=function(b){d=b}}})})(Fe);var Je=Fe.exports;const Qe=Ee(Je),me={"dao-ru":"导入","quan-xuan":"全选","xia-zai-dao-ru-mo-ban":"下载导入模板","xu-hao":"序号","qing-shu-ru":"请输入","qing-xuan-ze":"请选择","kai-shi-shi-jian":"开始时间","jie-shu-shi-jian":"结束时间","shai-xuan":"筛选","chong-zhi":"重置","guan-bi":"关闭","zhan-kai":"展开",excel:{fieldsMappingRequired:"请输入列字段映射",invalidInput:"非法输入",invalidOption:"请输入有效选项!",copyFailed:"复制失败",sheetNameTooLong:'Sheet名称 "{0}" 长度超过31个字符,已自动截断为 "{1}"'},validate:{invalidInput:"请输入正确内容"},tools:{keysLengthError:"keys 长度必须大于2 默认前两位为 label value"}},ge={"dao-ru":"Import","quan-xuan":"Select All","xia-zai-dao-ru-mo-ban":"Download Import Template","xu-hao":"No.","qing-shu-ru":"Please enter","qing-xuan-ze":"Please select","kai-shi-shi-jian":"Start Time","jie-shu-shi-jian":"End Time","shai-xuan":"Filter","chong-zhi":"Reset","guan-bi":"Collapse","zhan-kai":"Expand",excel:{fieldsMappingRequired:"Please enter column field mapping",invalidInput:"Invalid input",invalidOption:"Please enter a valid option!",copyFailed:"Copy failed",sheetNameTooLong:'Sheet name "{0}" exceeds 31 characters, automatically truncated to "{1}"'},validate:{invalidInput:"Please enter valid content"},tools:{keysLengthError:"Keys length must be greater than 2, default first two are label and value"}},De={zh_cn:me,en_us:ge};let re=null;function Be(o=null){if(o){const{global:t}=o;return t.messages.value.zh_cn?t.mergeLocaleMessage("zh_cn",me):t.setLocaleMessage("zh_cn",me),t.messages.value.en_us?t.mergeLocaleMessage("en_us",ge):t.setLocaleMessage("en_us",ge),re=o,o}return re||(re=ee.createI18n({legacy:!1,locale:"zh_cn",fallbackLocale:"zh_cn",messages:De})),re}function pe(){return re||Be()}function Ce(){return pe().global.t}he.extend(We),he.extend(Qe);async function Xe(o,t){const{fields:n,range:l=1}=t;if(!n){const r=Ce();throw new Error(r("excel.fieldsMappingRequired"))}let a=new Ie.Workbook;await a.xlsx.load(o);const s={};return a.eachSheet(function(r,d){const f=[];r.eachRow(function($,S){if(S>l){let x={},b=!0;Object.keys(n).forEach(w=>{const p=$.getCell(n[w]).value;x[w]=p,p&&(b=!1)}),b||f.push(x)}}),s[r._name]=f}),a=null,s}const et={columnWidth:30};async function ze(o,t,n=[],l={}){if(!o||!t)return;const{columnStyle:a}=l,{columnWidth:s}=et;t.forEach(f=>{f.width=f.width?f.width:s});const{workbook:r,worksheet:d}=tt();d.columns=t,d.addRows(n),a&&await nt(r,d,a);try{const f=await r.xlsx.writeBuffer(),$=new File([f],o,{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});He.saveAs($)}catch(f){console.log(f)}}function tt(){const o=new Ie.Workbook;o.creator="distributor System",o.lastModifiedBy="distributor System",o.created=new Date,o.modified=new Date,o.lastPrinted=new Date;const t=o.addWorksheet("Sheet1");return{workbook:o,worksheet:t}}async function nt(o,t,n){const l=Object.keys(n);for(const a of l){const s=n[a],{type:r}=s;switch(r){case"IMG":await ot(o,t,a);break}}}async function ot(o,t,n,l){const a=t.getColumn(n),s=a.values;t.getColumn(n).width=20,t.eachRow((r,d)=>{d>1&&(r.height=40)});for(let r=0,d=s.length;r<d;r++){if(r<2)continue;let f=s[r];f&&(t.getCell(a.letter+r).value="",await lt(o,t,f,{width:100,height:50,col:a._number-1,row:r-1}))}}async function lt(o,t,n,l){const{col:a,row:s,width:r,height:d}=l,{success:f,base64:$}=await rt(n,.3);if(f){const S=o.addImage({base64:$,extension:"jpeg"});t.addImage(S,{tl:{col:a,row:s},ext:{width:r,height:d}})}}function rt(o,t=1){const n=new Image;return n.setAttribute("crossOrigin","anonymous"),n.crossOrigin="anonymous",n.src=o,new Promise((l,a)=>{n.onload=()=>{const s=document.createElement("canvas");s.width=n.width,s.height=n.height,s.getContext("2d").drawImage(n,0,0,s.width,s.height),l({success:!0,base64:s.toDataURL("image/jpeg",t)})},n.onerror=()=>{l({success:!1})}})}function at(o){if(o<26)return String.fromCharCode(65+o);{const t=String.fromCharCode(65+Math.floor((o-26)/26)),n=String.fromCharCode(65+(o-26)%26);return t+n}}function st(o){return new Promise(t=>{setTimeout(()=>{t()},o)})}function it(o){return JSON.parse(JSON.stringify(o))}function ct(o){let t=[],n={},l=(a,s)=>Object.prototype.hasOwnProperty.call(a,s);for(const a of o){n[a.id]={...a,children:l(n,a.id)?n[a.id].children:[]};const s=n[a.id];a.pid==-1?t.push(s):(l(n,a.pid)||(n[a.pid]={children:[]}),n[a.pid].children.push(s))}return t}function ye(o,t=" "){return o?o.split(t).filter(n=>n.trim()):[]}class be{constructor(t,n=["label","value","labelEn"]){this.list=t.map(l=>({...l,label:l[n[0]],labelEn:l[n[2]]||l[n[0]]||"",value:l[n[1]]})),this.map=new Map(this.list.map(l=>[l[n[1]],l]))}getName(t){if(!this.has(t))return"-";const n=pe().global.locale,{label:l,labelEn:a}=this.map.get(t);return(n.value=="zh_cn"?l:a)||l||"-"}getTag(t){if(!this.has(t))return"info";const{tag:n="info"}=this.map.get(t);return n}getItem(t){return this.has(t)?this.map.get(t):null}getColor(t){if(!this.has(t))return null;const{color:n}=this.map.get(t);return n}has(t){return this.map.has(t)}}function ut(o,t=[],n="i18nName"){if(o.length==0)return new be([]);if(t.length<2){const a=Ce();throw new Error(a("tools.keysLengthError"))}let l=o.map(a=>{let s={};return n&&(s.labelEn=a[n]),t.forEach((r,d)=>{d===0?s.label=a[r]:d===1?s.value=a[r]:s[r]=a[r]}),s});return new be(l)}function dt(o){return o?o.replace(/<[^>]+>/g,""):""}function ft(o){return o?(o.includes("\\\\u")&&(o=o.replace(/\\/g,"")),o.replace(/\\u[\dA-F]{4}/gi,t=>String.fromCharCode(parseInt(t.replace(/\\u/g,""),16)))):""}function ht(o,t=10){let n=1048576*t;return!(o.size>n)}function mt(o){return Array.from(10).fill(0).map((n,l)=>o+"_"+l)}function gt(o){let t={};return o.map((n,l)=>{let{key:a,option:s,type:r}=n,d=at(l);s?t[a]=`${d}---option`:r==="image"?t[a]=`${d}---image`:t[a]=d}),t}function pt(o,t){return t.split(".").reduce((n,l)=>n&&n[l],o)}const Zt="",ce=(o,t)=>{const n=o.__vccOpts||o;for(const[l,a]of t)n[l]=a;return n},Ct=["onClick"],Oe=ce({__name:"index",props:e.mergeModels({api:{type:Function},showCheckAll:{type:Boolean,default:!0},maxLimit:{type:Number,default:void 0},optionClick:{type:Function,default:()=>{}},data:{type:Array},labelValue:{type:Object,default:()=>({label:"label",labelEn:"labelEn",value:"value"})},changeLocal:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["success","change","changeAll"],["update:modelValue"]),setup(o,{emit:t}){const n=o,l=e.useAttrs(),{t:a,locale:s}=ee.useI18n(),r=e.useModel(o,"modelValue"),d=e.computed(()=>l["value-key"]!=null),f=e.ref(""),$=e.computed(()=>{if(l.remote!==void 0)return n.data;const c=ye(f.value),{data:y,labelValue:L}=n,z=y||b.value;if(c.length==0)return z;const{label:W,labelEn:te}=L;let C=s.value=="en_us"?te||"i18nName":W;return c.length==1?z.filter(X=>X[C].toLowerCase().includes(c[0].toLowerCase())):z.filter(X=>{let se=!1;return se=c.some(de=>X[C].toLowerCase()==de.toLowerCase()),se})}),S=e.computed({get(){return l.multiple==null||r.value==null?!1:r.value.length==$.value.length},set(c){return c}}),x=t,b=e.ref([]),w=async()=>{const{data:c}=await n.api();b.value=[...c],x("success",b)};n.api&&w();function p(c){x("change",c)}const h=n.labelValue.label.split("-"),g=c=>{if(h.length==1){if(n.changeLocal)return a(c[n.labelValue.label]);let y=s.value=="en_us"?c[n.labelValue.labelEn||"i18nName"]:c[n.labelValue.label];return y=y||c[n.labelValue.label],y}else{let y=[];return h.forEach(L=>{y.push(c[L])}),y.join("-")}};function V(c){let y=n.data?n.data:b.value;r.value=c?y.map(L=>d.value?L:L[n.labelValue.value]):[],e.nextTick(()=>{x("change",r.value),x("changeAll",r.value,y)})}function _(c){n.optionClick&&n.optionClick(c),x("change",d.value?c:c[n.labelValue.value])}function I(c){return r.value.length>=n.maxLimit&&!r.value.includes(c[n.labelValue.value])}function B(c){return c.map(y=>({...y,label:g(y),value:d.value?y:y[n.labelValue.value]}))}const v=e.ref([]),Y=n.data?n.data:b.value;v.value=B(Y),e.watch(()=>n.data?n.data:b.value,c=>{var L;const y=B(c);if(y.length!==v.value.length)v.value=y;else{let z=!1;for(let W=0;W<y.length;W++)if(y[W].value!==((L=v.value[W])==null?void 0:L.value)){z=!0;break}z&&(v.value=y)}},{deep:!0});const O=e.computed(()=>v.value);return(c,y)=>{const L=e.resolveComponent("el-checkbox"),z=e.resolveComponent("el-select-v2"),W=e.resolveComponent("el-option"),te=e.resolveComponent("el-select");return e.unref(l).v2!=null?(e.openBlock(),e.createBlock(z,e.mergeProps({key:0,options:O.value,modelValue:r.value,"onUpdate:modelValue":y[1]||(y[1]=C=>r.value=C)},e.unref(l),{filterable:"","collapse-tags":"","collapse-tags-tooltip":"",clearable:"",onChange:p,onClear:p}),e.createSlots({default:e.withCtx(({item:C})=>[e.createElementVNode("div",{onClick:ae=>_(C)},e.toDisplayString(C.label),9,Ct)]),_:2},[e.unref(l).multiple!=null?{name:"header",fn:e.withCtx(()=>[e.renderSlot(c.$slots,"header",{},()=>[e.createVNode(L,{class:"mgl20",modelValue:S.value,"onUpdate:modelValue":y[0]||(y[0]=C=>S.value=C),onChange:V},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.$t("quan-xuan")),1)]),_:1},8,["modelValue"])],!0)]),key:"0"}:void 0]),1040,["options","modelValue"])):(e.openBlock(),e.createBlock(te,e.mergeProps({key:1,modelValue:r.value,"onUpdate:modelValue":y[3]||(y[3]=C=>r.value=C),filterable:"","collapse-tags":"","collapse-tags-tooltip":"","filter-method":e.unref(l).remote!=null?void 0:C=>f.value=C,clearable:""},e.unref(l),{onClear:o.optionClick}),{default:e.withCtx(()=>[e.unref(l).multiple!=null&&o.showCheckAll&&o.maxLimit==null?e.renderSlot(c.$slots,"header",{key:0},()=>[e.createVNode(L,{class:"mgl20",modelValue:S.value,"onUpdate:modelValue":y[2]||(y[2]=C=>S.value=C),onChange:V},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.$t("quan-xuan")),1)]),_:1},8,["modelValue"])],!0):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList($.value,(C,ae)=>(e.openBlock(),e.createBlock(W,{key:ae,label:g(C),disabled:e.unref(l).multiple!=null&&o.maxLimit>0?I(C):!1,onClick:e.withModifiers(X=>_(C),["stop"]),value:d.value?C:C[o.labelValue.value]},null,8,["label","disabled","onClick","value"]))),128))]),_:3},16,["modelValue","filter-method","onClear"]))}}},[["__scopeId","data-v-d12f3c20"]]),Wt="",yt=e.defineComponent({props:{name:{tyepe:String,required:!0}}});function bt(o,t,n,l,a,s){const r=e.resolveComponent("el-icon");return e.openBlock(),e.createBlock(r,{class:"cmp-icon"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.name)))]),_:1})}const we=ce(yt,[["render",bt],["__scopeId","data-v-733f9daa"]]),wt={__name:"index",emits:["ok","no"],setup(o,{emit:t}){const n=t,l=le.debounce(()=>{n("ok")},500);function a(){n("no")}return(s,r)=>{const d=e.resolveComponent("el-popconfirm");return e.openBlock(),e.createBlock(d,e.mergeProps(s.$attrs,{onConfirm:e.unref(l),onCancel:a}),{reference:e.withCtx(()=>[e.renderSlot(s.$slots,"default")]),_:3},16,["onConfirm"])}}},Jt="",kt=["accept"],xt=ce({__name:"index",props:{accept:{type:String,default:".xlsx,.xls"},loading:{type:Boolean,default:!1}},emits:["fileChange"],setup(o,{emit:t}){const n=t,l=e.ref(null);function a(s){let r=s.target.files[0];n("fileChange",r),l.value.value=null}return(s,r)=>{const d=e.resolveComponent("el-button");return e.openBlock(),e.createElementBlock("span",null,[e.createVNode(d,{loading:o.loading,class:"mgr10",onClick:r[0]||(r[0]=f=>l.value.click())},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.$t("dao-ru")),1)]),_:1},8,["loading"]),e.createElementVNode("input",{onChange:a,ref_key:"input",ref:l,accept:o.accept,style:{position:"absolute",width:"0px",height:"0px",opacity:"0"},type:"file"},null,40,kt)])}}},[["__scopeId","data-v-5f1449ad"]]);function ke(o){let t={};return o.forEach(n=>{const{key:l,type:a,option:s={},value:r,dateType:d="date"}=n;if(l)if(a=="input"&&(s!=null&&s.multiple))t[l]=ye(r);else if(a=="date")if(d.includes("range")){const[f,$]=l;let[S,x]=r||[];S&&d=="daterange"&&(S=he(S).format("YYYY-MM-DD 00:00:00"),x=he(x).format("YYYY-MM-DD 23:59:59")),t[f]=S,t[$]=x}else t[l]=r;else t[l]=r}),t}const Xt="",St={key:0},_t={class:"btns"},$t={class:"left"},Vt={class:"right"},Ne=ce({__name:"index",props:{form:{type:Object,required:!0}},emits:["confirm","reset","visibleChange"],setup(o,{expose:t,emit:n}){const l=o,a=n,s=e.ref(!0),r=e.ref(null),{t:d}=ee.useI18n(),f=e.computed(()=>s.value?d("guan-bi"):d("zhan-kai"));function $(){a("confirm")}function S(g){g.option.onClear&&g.option.onClear(),a("confirm")}function x(){a("reset")}function b(){a("confirm")}function w(){return ke(l.form.items)}const p=le.cloneDeep(l.form.items);function h(){l.form.items.forEach(g=>{const V=p.find(_=>_.key==g.key);V&&(g.value=V.value)})}return t({getPrm:w,reset:h}),(g,V)=>{const _=e.resolveComponent("el-input"),I=e.resolveComponent("el-date-picker"),B=e.resolveComponent("el-form-item"),v=e.resolveComponent("el-form"),Y=e.resolveComponent("el-link"),O=e.resolveComponent("el-button");return e.openBlock(),e.createElementBlock("div",{class:"searchBar-container mgt10 mgb10",onKeydown:e.withKeys($,["enter"])},[e.createElementVNode("div",{class:"searchBar",style:e.normalizeStyle({height:s.value?"auto":"42px"})},[e.createVNode(v,{inline:"",model:o.form.data},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.form.items.filter(c=>!c.hidden),c=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:c.key},[c.type=="br"?(e.openBlock(),e.createElementBlock("br",St)):(e.openBlock(),e.createBlock(B,{key:1,label:c.name},{default:e.withCtx(()=>{var y,L;return[c.type==="input"?(e.openBlock(),e.createBlock(_,{key:0,modelValue:c.value,"onUpdate:modelValue":z=>c.value=z,class:e.normalizeClass(((y=c.option)==null?void 0:y.class)||"w150"),placeholder:g.$t("qing-shu-ru"),clearable:""},null,8,["modelValue","onUpdate:modelValue","class","placeholder"])):c.type==="custom"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.render),{key:1})):e.createCommentVNode("",!0),c.type==="select"?(e.openBlock(),e.createBlock(Oe,e.mergeProps({key:2,class:((L=c.option)==null?void 0:L.class)||"w150",modelValue:c.value,"onUpdate:modelValue":z=>c.value=z},{ref_for:!0},c.option,{onChange:$,onClear:z=>S(c)}),null,16,["class","modelValue","onUpdate:modelValue","onClear"])):e.createCommentVNode("",!0),c.type==="date"?(e.openBlock(),e.createBlock(I,{key:3,class:e.normalizeClass({datetimerange:"w300",daterange:"w200"}[c.dateType]||"w100"),modelValue:c.value,"onUpdate:modelValue":z=>c.value=z,"value-format":{datetimerange:"YYYY-MM-DD HH:mm:ss",daterange:"YYYY-MM-DD"}[c.dateType]||"YYYY-MM-DD",type:c.dateType||"date",onFocus:z=>r.value=c,onChange:z=>b(),placeholder:g.$t("qing-xuan-ze"),"start-placeholder":g.$t("kai-shi-shi-jian"),"end-placeholder":g.$t("jie-shu-shi-jian")},null,8,["class","modelValue","onUpdate:modelValue","value-format","type","onFocus","onChange","placeholder","start-placeholder","end-placeholder"])):e.createCommentVNode("",!0)]}),_:2},1032,["label"]))],64))),128))]),_:1},8,["model"])],4),e.createElementVNode("div",_t,[e.createElementVNode("div",$t,[e.renderSlot(g.$slots,"table-header-left",{},void 0,!0)]),e.createElementVNode("div",Vt,[e.createVNode(Y,{underline:"never",class:"mgr10",onClick:V[0]||(V[0]=()=>{a("visibleChange",!s.value),s.value=!s.value})},{default:e.withCtx(()=>[e.createVNode(we,{name:s.value?"ArrowUp":"ArrowDown"},null,8,["name"]),e.createTextVNode(" "+e.toDisplayString(f.value),1)]),_:1}),e.createVNode(O,{type:"primary",onClick:$},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.$t("shai-xuan")),1)]),_:1}),e.createVNode(O,{type:"primary",onClick:x},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.$t("chong-zhi")),1)]),_:1}),e.renderSlot(g.$slots,"btn",{},void 0,!0)])])],32)}}},[["__scopeId","data-v-3c0a6716"]]),Me={pageNoKey:"pageNo",pageSizeKey:"pageSize",totalKey:"total",defaultPageSize:10,pageSizes:[10,50,100,500],responseDataKeys:{rows:["rows","records"],total:["totalRows","total"]},showSearch:!1,showPage:!1,showShadow:!1,showCheckBox:!1,enableCellCopy:!0};let ue={...Me};function It(o){ue={...ue,...o,responseDataKeys:{...ue.responseDataKeys,...o.responseDataKeys||{}}}}function Ae(){return ue}function Tt(){ue={...Me}}const tn="",vt={class:"center"},Et=ce({__name:"index",props:{id:{type:String,required:!1},loading:{type:Boolean,default:!1},immediate:{type:Boolean,default:!0},searchForm:{type:Object,default:()=>({items:[],selections:[]})},api:{type:Function},data:{type:Array},tableConfig:{type:Object,default:()=>({})}},setup(o,{expose:t}){const{t:n,locale:l}=ee.useI18n(),a=Te.useRoute(),s=Ae(),r=o,d=e.ref(!1),f=e.ref([]);r.searchForm.showSearch===void 0&&(r.searchForm.showSearch=s.showSearch),r.searchForm.showPage===void 0&&(r.searchForm.showPage=s.showPage),r.searchForm.showShadow===void 0&&(r.searchForm.showShadow=s.showShadow),r.searchForm.showCheckBox===void 0&&(r.searchForm.showCheckBox=s.showCheckBox),r.searchForm.enableCellCopy===void 0&&(r.searchForm.enableCellCopy=s.enableCellCopy),r.searchForm.selections||(r.searchForm.selections=[]);const $=e.computed(()=>{const u=a.path.replace(/\//g,"-").replace(/^-/,"")||"default-table";return r.id?`listPageId-${u}-${r.id}`:`listPageId-${u}`}),S=le.cloneDeep(r.searchForm.items),x=r.searchForm.pageNoKey||s.pageNoKey,b=r.searchForm.pageSizeKey||s.pageSizeKey,w=e.reactive({[x]:1,[b]:r.searchForm.defaultPageSize||s.defaultPageSize,total:0}),p=e.ref(null),h=e.ref(null),g=e.ref(450),V=le.debounce(()=>{e.nextTick(()=>{if(!h.value)return;const i=h.value.getBoundingClientRect(),k=window.innerHeight,E=i.top,M=100,R=k-E-M,F=200;g.value=Math.max(R,F)})},100),_=()=>{V()},I=()=>{if(!r.searchForm.enableCellCopy)return!1;const u=p.value;if(!u||!u.$el)return!1;const i=u.$el;return i.classList.add("cell-copy-enabled"),i.setAttribute("tabindex","-1"),i.removeEventListener("mousedown",X),i.removeEventListener("mousemove",se),i.removeEventListener("mouseup",de),i.removeEventListener("keydown",$e),i.addEventListener("mousedown",X),i.addEventListener("mousemove",se),i.addEventListener("mouseup",de),i.addEventListener("keydown",$e),!0};e.onMounted(()=>{V(),window.addEventListener("resize",_),r.searchForm.enableCellCopy&&(document.addEventListener("mouseup",je),document.addEventListener("mousedown",Ue),setTimeout(()=>{I()},500))}),e.onUpdated(()=>{r.searchForm.enableCellCopy&&setTimeout(()=>{I()},500)}),e.onUnmounted(()=>{if(window.removeEventListener("resize",_),r.searchForm.enableCellCopy){document.removeEventListener("mouseup",je),document.removeEventListener("mousedown",Ue);const u=p.value;if(u&&u.$el){const i=u.$el;i.removeEventListener("mousedown",X),i.removeEventListener("mousemove",se),i.removeEventListener("mouseup",de),i.removeEventListener("keydown",$e)}}});const B=e.computed(()=>te.value.height||g.value);let v;async function Y(u){const{dataFormat:i}=r.tableConfig;u[x]!=1&&(u.nextSearchAfter=v),d.value=!0;const{code:k,data:E={}}=await r.api(u).finally(()=>{d.value=!1,r.searchForm.selections=[]});if(k==200){let M=[];for(const F of s.responseDataKeys.rows)if(E[F]){M=E[F];break}let R=0;for(const F of s.responseDataKeys.total)if(E[F]!==void 0){R=E[F];break}f.value=i?i(M):M,w.total=R,v=E.nextSearchAfter,r.searchForm.enableCellCopy&&e.nextTick(()=>{setTimeout(()=>{I()},100)})}}function O(u={}){const{searchData:i=()=>({})}=r.tableConfig,k=i();Y({...w,...ke(r.searchForm.items),...u,...k})}function c(){const{reset:u}=r.tableConfig;u&&u(),r.searchForm.items.forEach(i=>{const k=S.find(E=>le.isArray(i.key)&&le.isArray(E.key)?i.key.join(",")==E.key.join(","):E.key==i.key);k&&(i.value=k.value)}),O()}r.api&&r.immediate&&O();function y(){return{...w,...ke(r.searchForm.items)}}const L=()=>{const u=p.value;u&&u.clearSort()},z=e.reactive({storage:!0}),W=e.reactive({drag:!0,resizable:!0,maxFixedSize:0}),te=e.computed(()=>{const{customConfig:u,columnConfig:i,...k}=r.tableConfig;return{headerAlign:"left",align:"center",customConfig:{...z,...u},columnConfig:{...W,...i},"virtual-x-config":{enabled:!1,scrollToLeftOnChange:!1},"virtual-y-config":{enabled:!0,gt:100},...k}}),C=e.reactive({isSelecting:!1,startCell:null,endCell:null,selectedCells:[]}),ae=u=>{const i=u.closest(".vxe-body--column");if(!i||i.classList.contains("col--checkbox")||i.classList.contains("col--seq"))return null;const k=i.closest(".vxe-body--row");if(!k)return null;const E=p.value;if(!E)return null;let M=-1;const R=k.getAttribute("data-rowid");if(R!=null)M=parseInt(R,10);else{const D=k.parentElement;M=Array.from(D.querySelectorAll(".vxe-body--row")).indexOf(k)}if(M<0)return null;let F=-1;const J=i.getAttribute("data-colid");if(J&&(F=E.getColumns().findIndex(T=>T.id===J)),F<0){const T=Array.from(k.querySelectorAll(".vxe-body--column")).indexOf(i),q=!!i.closest(".vxe-table--fixed-left-wrapper"),j=!!i.closest(".vxe-table--fixed-right-wrapper"),A=E.getColumns();if(q){const U=A.filter(P=>P.fixed==="left");T<U.length&&(F=A.indexOf(U[T]))}else if(j){const U=A.filter(P=>P.fixed==="right");T<U.length&&(F=A.indexOf(U[T]))}else{const U=r.searchForm.showCheckBox?1:0;F=A.filter(H=>H.fixed==="left").length+T-U}}return F<0?null:{rowIndex:M,colIndex:F,cell:i}},X=u=>{const i=ae(u.target);if(!i){_e();return}C.isSelecting=!0,C.startCell={rowIndex:i.rowIndex,colIndex:i.colIndex},C.endCell={...C.startCell},Pe(),Re()},se=u=>{if(!C.isSelecting)return;const i=ae(u.target);i&&(C.endCell={rowIndex:i.rowIndex,colIndex:i.colIndex},Pe(),Re())},de=()=>{C.isSelecting=!1},_e=()=>{C.selectedCells=[],C.startCell=null,C.endCell=null;const u=p.value;if(!u)return;u.$el.querySelectorAll(".cell-selected, .cell-border-top, .cell-border-right, .cell-border-bottom, .cell-border-left").forEach(k=>{k.classList.remove("cell-selected","cell-border-top","cell-border-right","cell-border-bottom","cell-border-left")})},Pe=()=>{if(!C.startCell||!C.endCell){C.selectedCells=[];return}const u=C.startCell.rowIndex,i=C.endCell.rowIndex,k=C.startCell.colIndex,E=C.endCell.colIndex,M=Math.min(u,i),R=Math.max(u,i),F=Math.min(k,E),J=Math.max(k,E);C.selectedCells=[];for(let D=M;D<=R;D++)for(let T=F;T<=J;T++)C.selectedCells.push({rowIndex:D,colIndex:T})},Re=()=>{e.nextTick(()=>{const u=p.value;if(!u)return;const i=u.$el;if(i.querySelectorAll(".cell-selected, .cell-border-top, .cell-border-right, .cell-border-bottom, .cell-border-left").forEach(q=>{q.classList.remove("cell-selected","cell-border-top","cell-border-right","cell-border-bottom","cell-border-left")}),C.selectedCells.length===0)return;const k=u.getColumns(),E=C.selectedCells.map(q=>q.rowIndex),M=C.selectedCells.map(q=>q.colIndex),R=Math.min(...E),F=Math.max(...E),J=Math.min(...M),D=Math.max(...M),T=[i.querySelector(".vxe-table--body-wrapper tbody"),i.querySelector(".vxe-table--fixed-left-wrapper tbody"),i.querySelector(".vxe-table--fixed-right-wrapper tbody")].filter(Boolean);C.selectedCells.forEach(({rowIndex:q,colIndex:j})=>{const A=k[j];if(!A)return;const U=A.fixed==="left",P=A.fixed==="right";for(const H of T){const fe=H.querySelectorAll(".vxe-body--row")[q];if(!fe)continue;const ne=Array.from(fe.querySelectorAll(".vxe-body--column"));let N=null;if(U&&H.closest(".vxe-table--fixed-left-wrapper")){const Z=k.filter(G=>G.fixed==="left").indexOf(A);N=ne[Z]}else if(P&&H.closest(".vxe-table--fixed-right-wrapper")){const Z=k.filter(G=>G.fixed==="right").indexOf(A);N=ne[Z]}else if(!U&&!P&&H.closest(".vxe-table--body-wrapper")){const oe=r.searchForm.showCheckBox?1:0,Z=k.filter(Ve=>Ve.fixed==="left").length,G=j-Z;N=ne[G+oe]}if(N&&!N.classList.contains("col--checkbox")&&!N.classList.contains("col--seq")){N.classList.add("cell-selected"),q===R&&N.classList.add("cell-border-top"),q===F&&N.classList.add("cell-border-bottom"),j===J&&N.classList.add("cell-border-left"),j===D&&N.classList.add("cell-border-right");break}}})})},Ut=async()=>{if(C.selectedCells.length===0)return;const u=p.value;if(!u)return;const i=u.$el,k=u.getColumns(),E=[...new Set(C.selectedCells.map(D=>D.rowIndex))].sort((D,T)=>D-T),M=[...new Set(C.selectedCells.map(D=>D.colIndex))].sort((D,T)=>D-T),R=[i.querySelector(".vxe-table--body-wrapper tbody"),i.querySelector(".vxe-table--fixed-left-wrapper tbody"),i.querySelector(".vxe-table--fixed-right-wrapper tbody")].filter(Boolean),F=[];E.forEach(D=>{const T=[];M.forEach(q=>{const j=k[q];if(!j){T.push("");return}const A=j.fixed==="left",U=j.fixed==="right";let P="";for(const H of R){const fe=H.querySelectorAll(".vxe-body--row")[D];if(!fe)continue;const ne=Array.from(fe.querySelectorAll(".vxe-body--column"));let N=null;if(A&&H.closest(".vxe-table--fixed-left-wrapper")){const Z=k.filter(G=>G.fixed==="left").indexOf(j);N=ne[Z]}else if(U&&H.closest(".vxe-table--fixed-right-wrapper")){const Z=k.filter(G=>G.fixed==="right").indexOf(j);N=ne[Z]}else if(!A&&!U&&H.closest(".vxe-table--body-wrapper")){const oe=r.searchForm.showCheckBox?1:0,Z=k.filter(Ve=>Ve.fixed==="left").length,G=q-Z;N=ne[G+oe]}if(N&&!N.classList.contains("col--checkbox")&&!N.classList.contains("col--seq")){P=N.innerText||N.textContent||"",P=P.trim(),P=P.replace(/\n/g," ").replace(/\s+/g," ");break}}T.push(P)}),F.push(T.join(" "))});const J=F.join(`
|
|
2
2
|
`);try{await navigator.clipboard.writeText(J)}catch(D){console.error("复制失败:",D)}},$e=u=>{r.searchForm.enableCellCopy&&((u.ctrlKey||u.metaKey)&&u.key==="c"?C.selectedCells.length>0&&(u.preventDefault(),u.stopPropagation(),Ut()):u.key==="Escape"&&_e())},je=()=>{C.isSelecting=!1},Ue=u=>{const i=p.value;if(!i||!i.$el)return;i.$el.contains(u.target)||_e()},Yt=u=>{w[x]=u,O()},Kt=u=>{w[b]=u,w[x]=1,O()};function Ye(){const u=p.value.getCheckboxRecords();r.searchForm.selections=u}const Ke=u=>{const i=p.value;if(i){i.toggleCheckboxRow(u);const k=p.value.getCheckboxRecords();r.searchForm.selections=k}};return t({tableRef:p,getList:O,getPrm:y,clearSort:L,calculateTableHeight:V}),(u,i)=>{var D;const k=e.resolveComponent("el-button"),E=e.resolveComponent("el-checkbox"),M=e.resolveComponent("el-text"),R=e.resolveComponent("vxe-column"),F=e.resolveComponent("VxeTable"),J=e.resolveComponent("el-pagination");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({box:o.searchForm.showShadow})},[o.searchForm.showSearch?(e.openBlock(),e.createBlock(Ne,{key:0,form:o.searchForm,onReset:c,onConfirm:i[1]||(i[1]=T=>O()),onVisibleChange:e.unref(V)},{btn:e.withCtx(()=>[i[3]||(i[3]=e.createElementVNode("span",{class:"mgr10"},null,-1)),e.renderSlot(u.$slots,"search-bar-btn",{},void 0,!0),e.createVNode(k,{class:"mgl10",round:"",onClick:i[0]||(i[0]=T=>p.value.openCustom())},{default:e.withCtx(()=>[e.createVNode(we,{name:"Tools"})]),_:1})]),_:3},8,["form","onVisibleChange"])):e.createCommentVNode("",!0),e.renderSlot(u.$slots,"table-header-left",{},void 0,!0),e.createElementVNode("div",{ref_key:"tableContentRef",ref:h},[e.createVNode(F,e.mergeProps({id:$.value,ref_key:"tableRef",ref:p,loading:o.loading||d.value,data:o.api?f.value:o.data,border:""},te.value,{height:B.value,onCheckboxChange:Ye,onCheckboxAll:Ye,onSortChange:(D=te.value["sort-config"])==null?void 0:D.sortChange}),{default:e.withCtx(()=>[o.searchForm.showCheckBox==null||o.searchForm.showCheckBox?(e.openBlock(),e.createBlock(R,{key:0,type:"checkbox",width:e.unref(l)=="zh_cn"?80:150,title:u.$t("xu-hao"),fixed:"left"},{checkbox:e.withCtx(({rowIndex:T,row:q,checked:j,disabled:A,indeterminate:U})=>[e.createElementVNode("div",vt,[j?(e.openBlock(),e.createBlock(E,{key:0,checked:!0,disabled:A,size:"default",onClick:e.withModifiers(P=>!A&&Ke(q),["stop"])},null,8,["disabled","onClick"])):(e.openBlock(),e.createBlock(E,{key:1,disabled:A,checked:!1,size:"default",onClick:e.withModifiers(P=>!A&&Ke(q),["stop"])},null,8,["disabled","onClick"])),e.createVNode(M,{type:"info",class:"mgl5"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(T+1),1)]),_:2},1024)])]),_:1},8,["width","title"])):e.createCommentVNode("",!0),e.renderSlot(u.$slots,"default",{},void 0,!0)]),_:3},16,["id","loading","data","height","onSortChange"])],512),o.searchForm.showPage?(e.openBlock(),e.createBlock(J,{key:1,"current-page":w[e.unref(x)],"onUpdate:currentPage":i[2]||(i[2]=T=>w[e.unref(x)]=T),class:"myPagination mgt10",background:"",layout:"total, sizes, prev, pager, next",total:w.total,"page-size":w[e.unref(b)],"page-sizes":o.searchForm.pageSizes||e.unref(s).pageSizes,onCurrentChange:Yt,onSizeChange:Kt},null,8,["current-page","total","page-size","page-sizes"])):e.createCommentVNode("",!0)],2)}}},[["__scopeId","data-v-d93cad32"]]),Lt={__name:"index",props:{sheetsConfig:{type:Object,required:!0},fileName:{type:String,required:!0}},setup(o){const t=o;function n(){ze(t.fileName,t.sheetsConfig)}return(l,a)=>{const s=e.resolveComponent("el-link");return e.openBlock(),e.createBlock(s,e.mergeProps({type:"primary",underline:"never"},l.$attrs,{onClick:n}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.$t("xia-zai-dao-ru-mo-ban")),1)]),_:1},16)}}};function Ft(o,t={}){const n=Ce(),l={inForm:!0,required:!0,...t},a={phone:/^1(3[0-9]|4[01456879]|5[0-35-9]|6[2567]|7[0-8]|8[0-9]|9[0-35-9])\d{8}$/,password:/(?=.*\d)(?=.*[a-zA-Z])(?=.*[^a-zA-Z0-9]).{8,12}/,email:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/}[o],{inForm:s,value:r,required:d,msg:f=n("validate.invalidInput")}=l;return s?function($,S,x){if(d){a.test(S)?x():x(new Error(f));return}S&&!a.test(S)?x(new Error(f)):x()}:a.test(r)}class Dt{constructor(t={}){this.config={clientCode:t.clientCode||"one-portal",casServerUrl:`https://one-portal${t.isTest?"-test":""}.joy-group.com/api`,casPortalUrl:`https://one-portal${t.isTest?"-test":""}.joy-group.com`,serviceUrl:t.serviceUrl||window.location.origin+"/cas/callback",tokenKey:t.tokenKey||"one_portal_token",userKey:t.userKey||"one_portal_user",debug:t.debug||!1,autoLogin:t.autoLogin!==!1,loginCallback:t.loginCallback||null,logoutCallback:t.logoutCallback||null,errorCallback:t.errorCallback||null},this.token=null,this.user=null,this.init()}init(){this.log("OnePortal CAS SDK 初始化中..."),this.loadFromStorage();const n=new URLSearchParams(window.location.search).get("ticket");this.isLoggedIn()&&this.config.loginCallback?this.config.loginCallback(this.user,this.token):n?(this.log("检测到ST票据:",n),this.validateTicket(n)):this.config.autoLogin&&!this.isLoggedIn()&&(this.log("用户未登录,准备跳转到CAS登录页面"),this.login())}loadFromStorage(){try{this.token=localStorage.getItem(this.config.tokenKey);const t=localStorage.getItem(this.config.userKey);t&&(this.user=JSON.parse(t)),this.log("从本地存储加载数据:",{token:!!this.token,user:!!this.user})}catch(t){this.log("加载本地存储数据失败:",t)}}saveToStorage(){try{this.token&&localStorage.setItem(this.config.tokenKey,this.token),this.user&&localStorage.setItem(this.config.userKey,JSON.stringify(this.user)),this.log("数据已保存到本地存储")}catch(t){this.log("保存到本地存储失败:",t)}}clearStorage(){try{localStorage.removeItem(this.config.tokenKey),localStorage.removeItem(this.config.userKey),this.log("本地存储已清除")}catch(t){this.log("清除本地存储失败:",t)}}isLoggedIn(){return!!(this.token&&this.user)}getUser(){return this.user}getToken(){return this.token}login(){const t=`${this.config.casPortalUrl}?appCode=${this.config.clientCode}&redirectUrl=${encodeURIComponent(this.config.serviceUrl)}`;this.log("跳转到CAS登录页面:",t),window.location.href=t}async validateTicket(t){try{this.log("验证ST票据:",t);const n=await fetch(`${this.config.casServerUrl}/auth/validateST?ticket=${t}`,{method:"GET",headers:{"Content-Type":"application/json"}});if(!n.ok)throw new Error(`HTTP ${n.status}: ${n.statusText}`);const l=await n.json();if(l.success&&l.data)return this.token=l.data.token,this.user=l.data.user,this.saveToStorage(),this.clearTicketFromUrl(),this.log("ST票据验证成功,用户登录成功:",this.user),this.config.loginCallback&&this.config.loginCallback(this.user,this.token),!0;throw new Error(l.message||"ST票据验证失败")}catch(n){return this.log("ST票据验证失败:",n),this.handleError(n),!1}}clearTicketFromUrl(){const t=new URL(window.location);t.searchParams.delete("ticket"),window.history.replaceState({},document.title,t.toString())}async logout(t=!0){try{if(this.log("用户登出"),this.token)try{await fetch(`${this.config.casServerUrl}/auth/logout`,{method:"POST",headers:{AppId:this.config.clientCode,Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"}})}catch(n){this.log("调用服务端登出接口失败:",n)}this.token=null,this.user=null,this.clearStorage(),this.config.logoutCallback&&this.config.logoutCallback(),t&&this.login()}catch(n){this.log("登出失败:",n),this.handleError(n)}}async request(t,n={}){const l={headers:{"Content-Type":"application/json",...n.headers},...n};l.headers.appId=this.config.clientCode,this.token&&(l.headers.Authorization=`Bearer ${this.token}`);try{const a=await fetch(t,l);return a.status===401?(this.log("Token已过期,需要重新登录"),this.logout(),null):a}catch(a){throw this.log("请求失败:",a),a}}async fetchUserInfo(){try{const t=await this.request(`${this.config.casServerUrl}/auth/user`);if(t&&t.ok){const n=await t.json();if(n.success&&n.data)return this.user=n.data,this.saveToStorage(),this.user}return null}catch(t){return this.log("获取用户信息失败:",t),null}}async refreshToken(){this.log("Token刷新功能暂未实现")}handleError(t){this.log("发生错误:",t),this.config.errorCallback&&this.config.errorCallback(t)}log(...t){this.config.debug&&console.log("[OnePortal CAS SDK]",...t)}checkLoginStatus(){return!this.isLoggedIn()&&this.config.autoLogin?(this.login(),!1):this.isLoggedIn()}setConfig(t,n){this.config[t]=n}getConfig(t){return this.config[t]}}function Bt(o,t={}){const l=Object.assign({manual:!1,log:!1,params:null,format:null},t),{manual:a,log:s,params:r={},cb:d,format:f}=l,$=e.ref([]),S=e.ref(!1),x=b=>{const w=b||r;S.value=!0,o(w).then(p=>{const{code:h,data:g,msg:V}=p;if(d){const{records:_,rows:I}=g||{},B=_||I?_||I:g;$.value=xe(B,f),d(p)}if(g){if(g.records!=null||g.rows!=null){const{records:_,rows:I,total:B=0}=g||{};w&&w.total!=null&&(r.total=parseInt(B)),$.value=xe(_||I||[],f)}else $.value=xe(g,f);s&&console.log("useRequest-res",$.value)}}).catch(p=>{d&&(console.log("useRequestErr",p),d({code:500}))}).finally(()=>{S.value=!1})};return a||x(),[S,$,x]}function zt(o){const t=e.ref(o),n=e.ref(""),l=e.ref("");return e.watch(t,a=>{const s=a||["",""];n.value=s[0],l.value=s[1]}),[t,n,l]}function Ot(o){return Object.prototype.toString.call(o).slice(8,-1).toLowerCase()}function xe(o,t){if(!t)return o;if(o instanceof Array)return o.map(l=>{let a={};return t.forEach(s=>a[s]=l[s]),a});let n={};return t.forEach(l=>n[l]=o[l]),n}function Nt(o,t=[]){const{locale:n}=ee.useI18n(),l=e.ref(o());return e.watch([n,...t],()=>{l.value=o()},{immediate:!0}),l}function Mt(o,t="zh_cn",n="en_us"){if(!o)return"-";const l={en_us:n,zh_cn:t},s=pe().global.locale.value;return o[l[s]]||o[t]||"-"}function At(o,t){let n=Q.mapState;return typeof o=="string"&&o.length>0&&(n=Q.createNamespacedHelpers(o).mapState),qe(t,n)}function qt(o,t){let n=Q.mapGetters;return typeof o=="string"&&o.length>0&&(n=Q.createNamespacedHelpers(o).mapGetters),qe(t,n)}function Pt(o,t){let n=Q.mapActions;return typeof o=="string"&&o.length>0&&(n=Q.createNamespacedHelpers(o).mapActions),Rt(t,n)}function qe(o,t){const n=Q.useStore(),l=t(o),a={};return Object.keys(l).forEach(s=>{const r=l[s].bind({$store:n});a[s]=e.computed(r)}),a}function Rt(o,t){const n=Q.useStore(),l=t(o),a={};return Object.keys(l).forEach(s=>{a[s]=l[s].bind({$store:n})}),a}function Se(o){return typeof o=="function"||Object.prototype.toString.call(o)==="[object Object]"&&!e.isVNode(o)}function jt(){ie.VxeUI.renderer.add("Enum",{renderTableDefault(o,t){let n;if([null,void 0].includes(t.row[t.column.field]))return"-";const l=t.row[t.column.field];if(o.type=="tag"){let a;return e.createVNode(e.resolveComponent("el-text"),{type:o.enum.getTag(l)},Se(a=o.enum.getName(l))?a:{default:()=>[a]})}return e.createVNode(e.resolveComponent("el-text"),null,Se(n=o.enum.getName(l))?n:{default:()=>[n]})}}),ie.VxeUI.renderer.add("InputNumber",{renderTableDefault(o,t){return e.createVNode(K.ElInputNumber,e.mergeProps({modelValue:t.row[t.column.field],"onUpdate:modelValue":n=>t.row[t.column.field]=n},o.props,{"step-strictly":!0,"value-on-clear":0}),null)}}),ie.VxeUI.renderer.add("TrueFalse",{renderTableDefault(o,t){const{locale:n}=ee.useI18n();let l=n.value=="zh_cn";return e.createVNode(K.ElText,{type:t.row[t.column.field]?"success":"danger"},{default:()=>[t.row[t.column.field]?l?"是":"YES":l?"否":"NO"]})}}),ie.VxeUI.renderer.add("I18n",{renderTableDefault(o,t){const{locale:n}=ee.useI18n();let l=n.value=="zh_cn"?t.column.field:o.fieldEn;return t.row[l]||t.row[t.column.field]}}),ie.VxeUI.renderer.add("Link",{renderTableDefault(o,t){var d;let n=t.column.field;const l=Te.useRouter(),{multiple:a,to:s}=o;if(!a)return e.createVNode(K.ElLink,{underline:"never",type:"primary",onclick:()=>l.push({path:s,query:{[n]:t.row[n]}})},{default:()=>[t.row[n]]});const r=((d=t.row[n])==null?void 0:d.split(","))||[];return r.map((f,$)=>e.createVNode("span",null,[e.createVNode(K.ElLink,{underline:"never",type:"primary",onclick:()=>l.push({path:s,query:{[n]:f}})},Se(f)?f:{default:()=>[f]}),$<r.length-1?",":""]))}})}m.CmpDictionary=Oe,m.CmpIcon=we,m.ConfrimButton=wt,m.DownExcelTemp=Lt,m.ImportButton=xt,m.LayOutForm=Ze,m.ListPage=Et,m.OnePortalCasSDK=Dt,m.SearchBar=Ne,m.StatusMap=be,m._toRaw=it,m._typeOf=Ot,m.arrToStatusMap=ut,m.arrayToTree=ct,m.checkFileSize=ht,m.creatValidator=Ft,m.createImportFields=gt,m.createListPageId=mt,m.en_us=ge,m.exportExcel=ze,m.getI18n=pe,m.getI18nT=Ce,m.getListPageConfig=Ae,m.getLocaleValue=Mt,m.getValueBykey=pt,m.importExcel=Xe,m.messages=De,m.registerVxeRenderers=jt,m.resetListPageConfig=Tt,m.setListPageConfig=It,m.setupI18n=Be,m.sleep=st,m.stringToArray=ye,m.stripHtmlTags=dt,m.unicode2Str=ft,m.useActions=Pt,m.useDatePicker=zt,m.useGetters=qt,m.useI18nReState=Nt,m.useRequest=Bt,m.useState=At,m.zh_cn=me,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})});
|
package/package.json
CHANGED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { DefineComponent } from 'vue';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Layer 组件 - 弹层组件(支持 Dialog 和 Drawer 两种模式)
|
|
5
|
+
* 基于 Element Plus 的 Dialog 和 Drawer 封装
|
|
6
|
+
*/
|
|
7
|
+
export interface LayerConfig {
|
|
8
|
+
/** 是否显示弹层 */
|
|
9
|
+
show: boolean;
|
|
10
|
+
/** 弹层类型:'layer' 为 Dialog,'drawer' 为 Drawer */
|
|
11
|
+
type?: 'layer' | 'drawer';
|
|
12
|
+
/** 弹层标题 */
|
|
13
|
+
title?: string;
|
|
14
|
+
/** 弹层宽度,Dialog 默认 500,Drawer 默认 '100%' */
|
|
15
|
+
width?: string | number;
|
|
16
|
+
/** 是否显示底部按钮 */
|
|
17
|
+
showButton?: boolean;
|
|
18
|
+
/** 自定义关闭回调(仅 Drawer 模式有效) */
|
|
19
|
+
onClose?: () => void;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export interface LayerProps {
|
|
23
|
+
/** 弹层配置对象 */
|
|
24
|
+
layer: LayerConfig;
|
|
25
|
+
/** 确认按钮加载状态 */
|
|
26
|
+
loading?: boolean;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export interface LayerEmits {
|
|
30
|
+
/** 点击确认按钮时触发(已防抖 300ms) */
|
|
31
|
+
(e: 'confirm'): void;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
declare const Layer: DefineComponent<LayerProps, {}, any, {}, {}, {}, {}, LayerEmits>;
|
|
35
|
+
export default Layer;
|
package/src/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export * from './components/ImportButton/index';
|
|
|
7
7
|
export * from './components/ListPage/index';
|
|
8
8
|
export * from './components/SearchBar/index';
|
|
9
9
|
export * from './components/DownExcelTemp/index';
|
|
10
|
+
export * from './components/layer/index';
|
|
10
11
|
|
|
11
12
|
// 导出工具函数类型
|
|
12
13
|
export * from './utils/index';
|
|
@@ -23,3 +24,4 @@ export { default as ImportButton } from './components/ImportButton/index.vue';
|
|
|
23
24
|
export { default as ListPage } from './components/ListPage/index.vue';
|
|
24
25
|
export { default as SearchBar } from './components/SearchBar/index.vue';
|
|
25
26
|
export { default as DownExcelTemp } from './components/DownExcelTemp/index.vue';
|
|
27
|
+
export { default as Layer } from './components/layer/index.vue';
|