yh-report 1.2.21 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/StatementDesign-fa7f4a9e.mjs +27564 -0
- package/StatementDesign-fa7f4a9e.mjs.map +1 -0
- package/{StatementDetail-8066afdc.mjs → StatementDetail-b9ae83e7.mjs} +10 -9
- package/StatementDetail-b9ae83e7.mjs.map +1 -0
- package/{StatementList-80f0ada2.mjs → StatementList-d3110f6d.mjs} +79 -84
- package/StatementList-d3110f6d.mjs.map +1 -0
- package/index.es.js +43 -8
- package/index.es.js.map +1 -1
- package/package.json +4 -5
- package/report-run.vue_vue_type_style_index_0_lang-edf7216b.mjs +2281 -0
- package/report-run.vue_vue_type_style_index_0_lang-edf7216b.mjs.map +1 -0
- package/style.css +1 -1
- package/util-53adc03c.mjs +962 -0
- package/util-53adc03c.mjs.map +1 -0
- package/StatementDesign-cb9675c6.mjs +0 -38621
- package/StatementDesign-cb9675c6.mjs.map +0 -1
- package/StatementDetail-8066afdc.mjs.map +0 -1
- package/StatementList-80f0ada2.mjs.map +0 -1
- package/index-02d04dcb.mjs +0 -60611
- package/index-02d04dcb.mjs.map +0 -1
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { defineComponent as o, ref as a, onActivated as i, onDeactivated as r, onMounted as m, openBlock as s, createElementBlock as c, createVNode as d } from "vue";
|
|
2
|
-
import { useRoute as
|
|
3
|
-
import {
|
|
2
|
+
import { useRoute as _ } from "vue-router";
|
|
3
|
+
import { d as l } from "./report-run.vue_vue_type_style_index_0_lang-edf7216b.mjs";
|
|
4
4
|
import "element-plus";
|
|
5
|
+
import "./util-53adc03c.mjs";
|
|
5
6
|
import "@/libs/api.request.js";
|
|
6
7
|
import "lodash-es";
|
|
7
8
|
import "echarts";
|
|
8
|
-
const
|
|
9
|
+
const u = { class: "statement-detail-container" }, q = /* @__PURE__ */ o({
|
|
9
10
|
__name: "StatementDetail",
|
|
10
|
-
setup(
|
|
11
|
-
const n =
|
|
11
|
+
setup(p) {
|
|
12
|
+
const n = _(), t = a();
|
|
12
13
|
return i(() => {
|
|
13
14
|
var e;
|
|
14
15
|
(e = document.querySelector(".main-container")) == null || e.classList.add("statement-design-main");
|
|
@@ -17,12 +18,12 @@ const p = { class: "statement-detail-container" }, y = /* @__PURE__ */ o({
|
|
|
17
18
|
(e = document.querySelector(".main-container")) == null || e.classList.remove("statement-design-main");
|
|
18
19
|
}), m(() => {
|
|
19
20
|
t.value = n.params.id;
|
|
20
|
-
}), (e, f) => (s(), c("section",
|
|
21
|
-
d(
|
|
21
|
+
}), (e, f) => (s(), c("section", u, [
|
|
22
|
+
d(l, { id: t.value }, null, 8, ["id"])
|
|
22
23
|
]));
|
|
23
24
|
}
|
|
24
25
|
});
|
|
25
26
|
export {
|
|
26
|
-
|
|
27
|
+
q as default
|
|
27
28
|
};
|
|
28
|
-
//# sourceMappingURL=StatementDetail-
|
|
29
|
+
//# sourceMappingURL=StatementDetail-b9ae83e7.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatementDetail-b9ae83e7.mjs","sources":["../StatementDetail.vue"],"sourcesContent":["<template>\n <section class=\"statement-detail-container\">\n <report-run :id=\"id\"></report-run>\n </section>\n</template>\n<script setup lang=\"ts\">\nimport {ref, onMounted, onActivated, onDeactivated} from 'vue';\nimport {useRoute} from 'vue-router';\nimport reportRun from './component/report-run.vue';\nconst route = useRoute();\nconst id = ref();\n\nonActivated(() => {\n document.querySelector('.main-container')?.classList.add('statement-design-main');\n});\n\nonDeactivated(() => {\n document.querySelector('.main-container')?.classList.remove('statement-design-main');\n});\n\nonMounted(() => {\n id.value = route.params.id;\n});\n</script>\n<style lang=\"scss\">\n.statement-detail-container {\n width: 100%;\n height: 100%;\n overflow: hidden;\n background-color: var(--el-bg-color-page);\n display: flex;\n flex-direction: column;\n .yh-statement-table-title {\n background-color: #fff;\n position: relative;\n z-index: 10;\n padding: 6px 16px;\n box-sizing: border-box;\n line-height: 24px;\n font-weight: bold;\n box-shadow: 0 0 5px 0 #ccc;\n }\n}\n\n.main-container {\n &.statement-design-main {\n overflow: hidden !important;\n padding: 0;\n }\n}\n</style>\n"],"names":["route","useRoute","id","ref","onActivated","_a","onDeactivated","onMounted"],"mappings":";;;;;;;;;;;AASA,UAAMA,IAAQC,KACRC,IAAKC;AAEX,WAAAC,EAAY,MAAM;;AAChB,OAAAC,IAAA,SAAS,cAAc,iBAAiB,MAAxC,QAAAA,EAA2C,UAAU,IAAI;AAAA,IAAuB,CACjF,GAEDC,EAAc,MAAM;;AAClB,OAAAD,IAAA,SAAS,cAAc,iBAAiB,MAAxC,QAAAA,EAA2C,UAAU,OAAO;AAAA,IAAuB,CACpF,GAEDE,EAAU,MAAM;AACX,MAAAL,EAAA,QAAQF,EAAM,OAAO;AAAA,IAAA,CACzB;;;;;"}
|
|
@@ -1,71 +1,70 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { useRouter as
|
|
3
|
-
import { g as
|
|
4
|
-
import { ElButton as u, ElForm as
|
|
1
|
+
import { defineComponent as L, reactive as C, ref as b, onMounted as T, watch as V, openBlock as q, createElementBlock as D, createElementVNode as p, createVNode as e, unref as t, withCtx as l, createTextVNode as r } from "vue";
|
|
2
|
+
import { useRouter as M } from "vue-router";
|
|
3
|
+
import { g as I, c as P, d as R, s as j } from "./util-53adc03c.mjs";
|
|
4
|
+
import { ElButton as u, ElForm as $, ElFormItem as g, ElInput as _, ElTable as A, ElTableColumn as f, ElPagination as G, ElDialog as H, ElMessage as x, ElMessageBox as J } from "element-plus";
|
|
5
5
|
import "@/libs/api.request.js";
|
|
6
6
|
import "lodash-es";
|
|
7
|
-
|
|
8
|
-
const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /* @__PURE__ */ p("i", { class: "iconfont icon-antdesign" }, null, -1), X = /* @__PURE__ */ p("i", { class: "iconfont icon-view" }, null, -1), Y = /* @__PURE__ */ p("i", { class: "iconfont icon-edit-outline" }, null, -1), Z = /* @__PURE__ */ p("i", { class: "iconfont icon-delete" }, null, -1), ee = { class: "dialog-footer" }, ue = /* @__PURE__ */ R({
|
|
7
|
+
const K = { class: "statement-list-container" }, O = { class: "actions" }, Q = /* @__PURE__ */ p("i", { class: "iconfont icon-antdesign" }, null, -1), W = /* @__PURE__ */ p("i", { class: "iconfont icon-view" }, null, -1), X = /* @__PURE__ */ p("i", { class: "iconfont icon-edit-outline" }, null, -1), Y = /* @__PURE__ */ p("i", { class: "iconfont icon-delete" }, null, -1), Z = { class: "dialog-footer" }, de = /* @__PURE__ */ L({
|
|
9
8
|
__name: "StatementList",
|
|
10
|
-
setup(
|
|
11
|
-
const v =
|
|
9
|
+
setup(ee) {
|
|
10
|
+
const v = M(), d = C({
|
|
12
11
|
name: "",
|
|
13
12
|
pageSize: 10,
|
|
14
13
|
total: 0,
|
|
15
14
|
pageNumber: 1
|
|
16
|
-
}),
|
|
17
|
-
function
|
|
15
|
+
}), y = b([]);
|
|
16
|
+
function E(a) {
|
|
18
17
|
v.push(`/admin/statement/design/${a.id}`);
|
|
19
18
|
}
|
|
20
|
-
function
|
|
19
|
+
function S(a) {
|
|
21
20
|
v.push(`/admin/statement/detail/${a.id}`);
|
|
22
21
|
}
|
|
23
22
|
async function m() {
|
|
24
|
-
const a = await
|
|
25
|
-
|
|
23
|
+
const a = await I(d);
|
|
24
|
+
y.value = a.data.list, d.total = d.pageSize = a.data.list.length;
|
|
26
25
|
}
|
|
27
|
-
function
|
|
26
|
+
function w(a, o) {
|
|
28
27
|
let n = "", s = "链接";
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
o === "inner" ? (n = `${window.location.pathname}#/statementdetail/${a.id}`, s = "内部链接") : (n = `${window.location.origin}${window.location.pathname}#/statementdetail/${a.id}`, s = "外部链接"), P(n).then(() => {
|
|
29
|
+
x.success(s + "复制成功");
|
|
31
30
|
}).catch(() => {
|
|
32
|
-
|
|
31
|
+
x.error(s + "复制遇到问题");
|
|
33
32
|
});
|
|
34
33
|
}
|
|
35
|
-
|
|
34
|
+
T(() => {
|
|
36
35
|
m();
|
|
37
36
|
});
|
|
38
|
-
const c =
|
|
37
|
+
const c = b(!1), i = C({
|
|
39
38
|
id: void 0,
|
|
40
39
|
name: "",
|
|
41
40
|
code: "",
|
|
42
41
|
description: ""
|
|
43
42
|
});
|
|
44
|
-
function
|
|
43
|
+
function z() {
|
|
45
44
|
c.value = !0;
|
|
46
45
|
}
|
|
47
|
-
function
|
|
46
|
+
function N(a) {
|
|
48
47
|
c.value = !0, i.id = a.id, i.name = a.name, i.code = a.code, i.description = a.description;
|
|
49
48
|
}
|
|
50
|
-
function
|
|
51
|
-
|
|
49
|
+
function h(a) {
|
|
50
|
+
J.confirm("当前操作会删除选定的报表,确认继续吗?", "警告", {
|
|
52
51
|
confirmButtonText: "删除",
|
|
53
52
|
cancelButtonText: "取消",
|
|
54
53
|
type: "warning"
|
|
55
54
|
}).then(async () => {
|
|
56
|
-
(await
|
|
55
|
+
(await R(a.id)).data && m();
|
|
57
56
|
});
|
|
58
57
|
}
|
|
59
58
|
function k() {
|
|
60
59
|
c.value = !1, i.id = void 0, i.name = "", i.code = "", i.description = "";
|
|
61
60
|
}
|
|
62
|
-
async function
|
|
63
|
-
await
|
|
61
|
+
async function F() {
|
|
62
|
+
await j(i), m(), k();
|
|
64
63
|
}
|
|
65
|
-
function
|
|
64
|
+
function U() {
|
|
66
65
|
d.pageNumber = 1, m();
|
|
67
66
|
}
|
|
68
|
-
function
|
|
67
|
+
function B() {
|
|
69
68
|
d.pageNumber = 1, d.name = "", m();
|
|
70
69
|
}
|
|
71
70
|
return V(
|
|
@@ -78,24 +77,24 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
78
77
|
() => {
|
|
79
78
|
m();
|
|
80
79
|
}
|
|
81
|
-
), (a,
|
|
82
|
-
p("div",
|
|
80
|
+
), (a, o) => (q(), D("section", K, [
|
|
81
|
+
p("div", O, [
|
|
83
82
|
e(t(u), {
|
|
84
83
|
type: "primary",
|
|
85
|
-
onClick:
|
|
84
|
+
onClick: z
|
|
86
85
|
}, {
|
|
87
|
-
default:
|
|
86
|
+
default: l(() => [
|
|
88
87
|
r(" 新增 ")
|
|
89
88
|
]),
|
|
90
89
|
_: 1
|
|
91
90
|
}),
|
|
92
|
-
e(t(
|
|
93
|
-
default:
|
|
91
|
+
e(t($), { inline: "" }, {
|
|
92
|
+
default: l(() => [
|
|
94
93
|
e(t(g), { label: "报表名称" }, {
|
|
95
|
-
default:
|
|
94
|
+
default: l(() => [
|
|
96
95
|
e(t(_), {
|
|
97
96
|
modelValue: d.name,
|
|
98
|
-
"onUpdate:modelValue":
|
|
97
|
+
"onUpdate:modelValue": o[0] || (o[0] = (n) => d.name = n),
|
|
99
98
|
placeholder: "键入关键字搜索报表"
|
|
100
99
|
}, null, 8, ["modelValue"])
|
|
101
100
|
]),
|
|
@@ -106,28 +105,24 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
106
105
|
}),
|
|
107
106
|
e(t(u), {
|
|
108
107
|
type: "primary",
|
|
109
|
-
onClick:
|
|
108
|
+
onClick: o[1] || (o[1] = (n) => U())
|
|
110
109
|
}, {
|
|
111
|
-
default:
|
|
110
|
+
default: l(() => [
|
|
112
111
|
r(" 搜索 ")
|
|
113
112
|
]),
|
|
114
113
|
_: 1
|
|
115
114
|
}),
|
|
116
115
|
e(t(u), {
|
|
117
|
-
onClick:
|
|
116
|
+
onClick: o[2] || (o[2] = (n) => B())
|
|
118
117
|
}, {
|
|
119
|
-
default:
|
|
118
|
+
default: l(() => [
|
|
120
119
|
r("重置")
|
|
121
120
|
]),
|
|
122
121
|
_: 1
|
|
123
122
|
})
|
|
124
123
|
]),
|
|
125
|
-
e(t(
|
|
126
|
-
|
|
127
|
-
ref: S,
|
|
128
|
-
data: b.value
|
|
129
|
-
}, {
|
|
130
|
-
default: o(() => [
|
|
124
|
+
e(t(A), { data: y.value }, {
|
|
125
|
+
default: l(() => [
|
|
131
126
|
e(t(f), {
|
|
132
127
|
label: "#",
|
|
133
128
|
type: "index",
|
|
@@ -154,13 +149,13 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
154
149
|
width: "500",
|
|
155
150
|
fixed: "right"
|
|
156
151
|
}, {
|
|
157
|
-
default:
|
|
152
|
+
default: l((n) => [
|
|
158
153
|
e(t(u), {
|
|
159
154
|
link: "",
|
|
160
155
|
title: "本系统前台页面嵌入地址",
|
|
161
|
-
onClick: (s) =>
|
|
156
|
+
onClick: (s) => w(n.row, "inner")
|
|
162
157
|
}, {
|
|
163
|
-
default:
|
|
158
|
+
default: l(() => [
|
|
164
159
|
r(" 内部链接 ")
|
|
165
160
|
]),
|
|
166
161
|
_: 2
|
|
@@ -168,9 +163,9 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
168
163
|
e(t(u), {
|
|
169
164
|
link: "",
|
|
170
165
|
title: "其他系统嵌入地址",
|
|
171
|
-
onClick: (s) =>
|
|
166
|
+
onClick: (s) => w(n.row, "outside")
|
|
172
167
|
}, {
|
|
173
|
-
default:
|
|
168
|
+
default: l(() => [
|
|
174
169
|
r(" 外部链接 ")
|
|
175
170
|
]),
|
|
176
171
|
_: 2
|
|
@@ -178,10 +173,10 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
178
173
|
e(t(u), {
|
|
179
174
|
type: "primary",
|
|
180
175
|
link: "",
|
|
181
|
-
onClick: (s) =>
|
|
176
|
+
onClick: (s) => E(n.row)
|
|
182
177
|
}, {
|
|
183
|
-
default:
|
|
184
|
-
|
|
178
|
+
default: l(() => [
|
|
179
|
+
Q,
|
|
185
180
|
r(" 设计 ")
|
|
186
181
|
]),
|
|
187
182
|
_: 2
|
|
@@ -189,10 +184,10 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
189
184
|
e(t(u), {
|
|
190
185
|
type: "primary",
|
|
191
186
|
link: "",
|
|
192
|
-
onClick: (s) =>
|
|
187
|
+
onClick: (s) => S(n.row)
|
|
193
188
|
}, {
|
|
194
|
-
default:
|
|
195
|
-
|
|
189
|
+
default: l(() => [
|
|
190
|
+
W,
|
|
196
191
|
r(" 查看 ")
|
|
197
192
|
]),
|
|
198
193
|
_: 2
|
|
@@ -200,10 +195,10 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
200
195
|
e(t(u), {
|
|
201
196
|
type: "primary",
|
|
202
197
|
link: "",
|
|
203
|
-
onClick: (s) =>
|
|
198
|
+
onClick: (s) => N(n.row)
|
|
204
199
|
}, {
|
|
205
|
-
default:
|
|
206
|
-
|
|
200
|
+
default: l(() => [
|
|
201
|
+
X,
|
|
207
202
|
r(" 编辑 ")
|
|
208
203
|
]),
|
|
209
204
|
_: 2
|
|
@@ -211,10 +206,10 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
211
206
|
e(t(u), {
|
|
212
207
|
type: "danger",
|
|
213
208
|
link: "",
|
|
214
|
-
onClick: (s) =>
|
|
209
|
+
onClick: (s) => h(n.row)
|
|
215
210
|
}, {
|
|
216
|
-
default:
|
|
217
|
-
|
|
211
|
+
default: l(() => [
|
|
212
|
+
Y,
|
|
218
213
|
r(" 删除 ")
|
|
219
214
|
]),
|
|
220
215
|
_: 2
|
|
@@ -225,56 +220,56 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
225
220
|
]),
|
|
226
221
|
_: 1
|
|
227
222
|
}, 8, ["data"]),
|
|
228
|
-
e(t(
|
|
223
|
+
e(t(G), {
|
|
229
224
|
background: "",
|
|
230
225
|
style: { "padding-top": "30px", "justify-content": "flex-end" },
|
|
231
226
|
"page-sizes": [10, 20, 50, 100],
|
|
232
227
|
"page-size": d.pageSize,
|
|
233
|
-
"onUpdate:pageSize":
|
|
228
|
+
"onUpdate:pageSize": o[3] || (o[3] = (n) => d.pageSize = n),
|
|
234
229
|
total: d.total,
|
|
235
230
|
"current-page": d.pageNumber,
|
|
236
|
-
"onUpdate:currentPage":
|
|
231
|
+
"onUpdate:currentPage": o[4] || (o[4] = (n) => d.pageNumber = n),
|
|
237
232
|
layout: "sizes,prev,pager,next,total"
|
|
238
233
|
}, null, 8, ["page-size", "total", "current-page"]),
|
|
239
|
-
e(t(
|
|
234
|
+
e(t(H), {
|
|
240
235
|
modelValue: c.value,
|
|
241
|
-
"onUpdate:modelValue":
|
|
236
|
+
"onUpdate:modelValue": o[9] || (o[9] = (n) => c.value = n),
|
|
242
237
|
onClose: k,
|
|
243
238
|
title: i.id ? "编辑报表" : "新建报表"
|
|
244
239
|
}, {
|
|
245
|
-
footer:
|
|
246
|
-
p("span",
|
|
240
|
+
footer: l(() => [
|
|
241
|
+
p("span", Z, [
|
|
247
242
|
e(t(u), { onClick: k }, {
|
|
248
|
-
default:
|
|
243
|
+
default: l(() => [
|
|
249
244
|
r("取消")
|
|
250
245
|
]),
|
|
251
246
|
_: 1
|
|
252
247
|
}),
|
|
253
248
|
e(t(u), {
|
|
254
249
|
type: "primary",
|
|
255
|
-
onClick:
|
|
250
|
+
onClick: o[8] || (o[8] = (n) => F())
|
|
256
251
|
}, {
|
|
257
|
-
default:
|
|
252
|
+
default: l(() => [
|
|
258
253
|
r(" 保存 ")
|
|
259
254
|
]),
|
|
260
255
|
_: 1
|
|
261
256
|
})
|
|
262
257
|
])
|
|
263
258
|
]),
|
|
264
|
-
default:
|
|
265
|
-
e(t(
|
|
259
|
+
default: l(() => [
|
|
260
|
+
e(t($), {
|
|
266
261
|
model: i,
|
|
267
262
|
"label-width": "120"
|
|
268
263
|
}, {
|
|
269
|
-
default:
|
|
264
|
+
default: l(() => [
|
|
270
265
|
e(t(g), {
|
|
271
266
|
label: "报表代码",
|
|
272
267
|
required: ""
|
|
273
268
|
}, {
|
|
274
|
-
default:
|
|
269
|
+
default: l(() => [
|
|
275
270
|
e(t(_), {
|
|
276
271
|
modelValue: i.code,
|
|
277
|
-
"onUpdate:modelValue":
|
|
272
|
+
"onUpdate:modelValue": o[5] || (o[5] = (n) => i.code = n),
|
|
278
273
|
autocomplete: "off"
|
|
279
274
|
}, null, 8, ["modelValue"])
|
|
280
275
|
]),
|
|
@@ -284,10 +279,10 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
284
279
|
label: "报表名称",
|
|
285
280
|
required: ""
|
|
286
281
|
}, {
|
|
287
|
-
default:
|
|
282
|
+
default: l(() => [
|
|
288
283
|
e(t(_), {
|
|
289
284
|
modelValue: i.name,
|
|
290
|
-
"onUpdate:modelValue":
|
|
285
|
+
"onUpdate:modelValue": o[6] || (o[6] = (n) => i.name = n),
|
|
291
286
|
autocomplete: "off"
|
|
292
287
|
}, null, 8, ["modelValue"])
|
|
293
288
|
]),
|
|
@@ -297,10 +292,10 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
297
292
|
label: "描述",
|
|
298
293
|
required: ""
|
|
299
294
|
}, {
|
|
300
|
-
default:
|
|
295
|
+
default: l(() => [
|
|
301
296
|
e(t(_), {
|
|
302
297
|
modelValue: i.description,
|
|
303
|
-
"onUpdate:modelValue":
|
|
298
|
+
"onUpdate:modelValue": o[7] || (o[7] = (n) => i.description = n),
|
|
304
299
|
type: "textarea",
|
|
305
300
|
autocomplete: "off"
|
|
306
301
|
}, null, 8, ["modelValue"])
|
|
@@ -317,6 +312,6 @@ const O = { class: "statement-list-container" }, Q = { class: "actions" }, W = /
|
|
|
317
312
|
}
|
|
318
313
|
});
|
|
319
314
|
export {
|
|
320
|
-
|
|
315
|
+
de as default
|
|
321
316
|
};
|
|
322
|
-
//# sourceMappingURL=StatementList-
|
|
317
|
+
//# sourceMappingURL=StatementList-d3110f6d.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatementList-d3110f6d.mjs","sources":["../StatementList.vue"],"sourcesContent":["<template>\n <section class=\"statement-list-container\">\n <div class=\"actions\">\n <el-button\n type=\"primary\"\n @click=\"toAddForm\">\n 新增\n </el-button>\n <el-form inline>\n <el-form-item label=\"报表名称\">\n <el-input\n v-model=\"listForm.name\"\n placeholder=\"键入关键字搜索报表\"></el-input>\n </el-form-item>\n </el-form>\n <el-button\n type=\"primary\"\n @click=\"onSearch()\">\n 搜索\n </el-button>\n <el-button @click=\"onReset()\">重置</el-button>\n </div>\n <el-table :data=\"data\">\n <el-table-column\n label=\"#\"\n type=\"index\"\n width=\"66\"\n left></el-table-column>\n <el-table-column\n label=\"表单编码\"\n min-width=\"100\"\n prop=\"code\"></el-table-column>\n <el-table-column\n label=\"表单名称\"\n min-width=\"100\"\n prop=\"name\"></el-table-column>\n <el-table-column\n label=\"描述\"\n min-width=\"200\"\n prop=\"description\"></el-table-column>\n <el-table-column\n label=\"操作\"\n width=\"500\"\n fixed=\"right\">\n <template #default=\"scope\">\n <el-button\n link\n title=\"本系统前台页面嵌入地址\"\n @click=\"copyLink(scope.row, 'inner')\">\n 内部链接\n </el-button>\n <el-button\n link\n title=\"其他系统嵌入地址\"\n @click=\"copyLink(scope.row, 'outside')\">\n 外部链接\n </el-button>\n <el-button\n type=\"primary\"\n link\n @click=\"toDesign(scope.row)\">\n <i class=\"iconfont icon-antdesign\"></i>\n 设计\n </el-button>\n <el-button\n type=\"primary\"\n link\n @click=\"toView(scope.row)\">\n <i class=\"iconfont icon-view\"></i>\n 查看\n </el-button>\n <el-button\n type=\"primary\"\n link\n @click=\"toEditor(scope.row)\">\n <i class=\"iconfont icon-edit-outline\"></i>\n 编辑\n </el-button>\n <el-button\n type=\"danger\"\n link\n @click=\"toDelete(scope.row)\">\n <i class=\"iconfont icon-delete\"></i>\n 删除\n </el-button>\n </template>\n </el-table-column>\n </el-table>\n <el-pagination\n background\n style=\"padding-top: 30px; justify-content: flex-end\"\n :page-sizes=\"[10, 20, 50, 100]\"\n v-model:page-size=\"listForm.pageSize\"\n :total=\"listForm.total\"\n v-model:current-page=\"listForm.pageNumber\"\n layout=\"sizes,prev,pager,next,total\"></el-pagination>\n <!-- 新增报表对话框 -->\n <el-dialog\n v-model=\"dialogFormVisible\"\n @close=\"cancelForm\"\n :title=\"form.id ? '编辑报表' : '新建报表'\">\n <el-form\n :model=\"form\"\n label-width=\"120\">\n <el-form-item\n label=\"报表代码\"\n required>\n <el-input\n v-model=\"form.code\"\n autocomplete=\"off\" />\n </el-form-item>\n <el-form-item\n label=\"报表名称\"\n required>\n <el-input\n v-model=\"form.name\"\n autocomplete=\"off\" />\n </el-form-item>\n <el-form-item\n label=\"描述\"\n required>\n <el-input\n v-model=\"form.description\"\n type=\"textarea\"\n autocomplete=\"off\" />\n </el-form-item>\n </el-form>\n <template #footer>\n <span class=\"dialog-footer\">\n <el-button @click=\"cancelForm\">取消</el-button>\n <el-button\n type=\"primary\"\n @click=\"saveForm()\">\n 保存\n </el-button>\n </span>\n </template>\n </el-dialog>\n </section>\n</template>\n<script setup lang=\"ts\">\nimport {ref, reactive, watch, onMounted} from 'vue';\nimport {useRouter} from 'vue-router';\nimport {Statement} from './types';\nimport {getList, save, del} from './api/form';\nimport {ElMessageBox, ElMessage, ElButton, ElForm, ElFormItem, ElInput, ElTable, ElTableColumn, ElPagination, ElDialog} from 'element-plus';\nimport {copyString} from './libs/util';\n\nconst router = useRouter();\n\n// @ts-ignore\nconst listForm = reactive({\n name: '',\n pageSize: 10,\n total: 0,\n pageNumber: 1,\n});\nconst data = ref<Statement[]>([]);\n\nfunction toDesign(row) {\n router.push(`/admin/statement/design/${row.id}`);\n}\n\nfunction toView(row) {\n router.push(`/admin/statement/detail/${row.id}`);\n}\n\n//获取报表列表\nasync function getStatementList() {\n const res = await getList(listForm);\n data.value = res.data.list;\n listForm.total = listForm.pageSize = res.data.list.length;\n}\n\nfunction copyLink(row, type) {\n let href = '';\n let hrefName = '链接';\n if (type === 'inner') {\n href = `${window.location.pathname}#/statementdetail/${row.id}`;\n hrefName = '内部链接';\n } else {\n href = `${window.location.origin}${window.location.pathname}#/statementdetail/${row.id}`;\n hrefName = '外部链接';\n }\n copyString(href)\n .then(() => {\n ElMessage.success(hrefName + '复制成功');\n })\n .catch(() => {\n ElMessage.error(hrefName + '复制遇到问题');\n });\n}\n\nonMounted(() => {\n getStatementList();\n});\n\n//新增报表\nconst dialogFormVisible = ref(false);\nconst form = reactive({\n id: undefined,\n name: '',\n code: '',\n description: '',\n});\n\nfunction toAddForm() {\n dialogFormVisible.value = true;\n}\n\nfunction toEditor(row) {\n dialogFormVisible.value = true;\n form.id = row.id;\n form.name = row.name;\n form.code = row.code;\n form.description = row.description;\n}\n\nfunction toDelete(row) {\n ElMessageBox.confirm('当前操作会删除选定的报表,确认继续吗?', '警告', {\n confirmButtonText: '删除',\n cancelButtonText: '取消',\n type: 'warning',\n }).then(async () => {\n let res = await del(row.id);\n if (res.data) {\n getStatementList();\n }\n });\n}\n\nfunction cancelForm() {\n dialogFormVisible.value = false;\n form.id = undefined;\n form.name = '';\n form.code = '';\n form.description = '';\n}\nasync function saveForm() {\n await save(form);\n getStatementList();\n cancelForm();\n}\n\n//搜索报表\nfunction onSearch() {\n listForm.pageNumber = 1;\n getStatementList();\n}\n\n//重置\nfunction onReset() {\n listForm.pageNumber = 1;\n listForm.name = '';\n getStatementList();\n}\n\n//删除表单\n// function toDel(id) {\n// ElMessageBox.confirm(\"您确定要删除该表单吗\", \"警告\", {\n// confirmButtonText: \"确认\",\n// cancelButtonText: \"取消\",\n// type: \"warning\",\n// })\n// .then(() => {\n// delListForm(id);\n// })\n// .then(() => {\n// getFormList();\n// });\n// }\n\n//分页功能\nwatch(\n () => listForm.pageNumber,\n () => {\n getStatementList();\n }\n);\nwatch(\n () => listForm.pageSize,\n () => {\n getStatementList();\n }\n);\n</script>\n\n<style lang=\"scss\">\n.statement-list-container {\n width: 100%;\n height: 100%;\n padding: 10px 0;\n box-sizing: border-box;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n\n .actions {\n display: flex;\n align-items: center;\n\n .el-form {\n flex: 1;\n margin: 0 10px;\n }\n\n .el-form-item {\n margin-bottom: 0;\n margin-right: 10px;\n }\n }\n\n .el-table {\n flex: 1;\n }\n\n .el-dialog {\n .el-button--text {\n margin-right: 15px;\n }\n\n .el-form-item {\n width: 100%;\n }\n\n .el-select {\n width: 100%;\n }\n\n .el-input {\n width: 100%;\n }\n\n .dialog-footer button:first-child {\n margin-right: 10px;\n }\n }\n}\n</style>\n"],"names":["router","useRouter","listForm","reactive","data","ref","toDesign","row","toView","getStatementList","res","getList","copyLink","type","href","hrefName","copyString","ElMessage","onMounted","dialogFormVisible","form","toAddForm","toEditor","toDelete","ElMessageBox","del","cancelForm","saveForm","save","onSearch","onReset","watch"],"mappings":"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"}
|
package/index.es.js
CHANGED
|
@@ -1,11 +1,46 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
const a = {
|
|
2
|
+
install(i, e) {
|
|
3
|
+
let { router: t, pinia: o, isAdmin: n = !1 } = e;
|
|
4
|
+
n && (t.addRoute("Index", {
|
|
5
|
+
path: "statement/list",
|
|
6
|
+
name: "报表列表",
|
|
7
|
+
meta: {
|
|
8
|
+
id: "Statement",
|
|
9
|
+
title: "报表列表",
|
|
10
|
+
icon: "iconfont icon-s-grid"
|
|
11
|
+
},
|
|
12
|
+
component: () => import("./StatementList-d3110f6d.mjs")
|
|
13
|
+
}), t.addRoute("Index", {
|
|
14
|
+
path: "statement/design/:id",
|
|
15
|
+
name: "报表设计",
|
|
16
|
+
meta: {
|
|
17
|
+
id: "StatementDesign",
|
|
18
|
+
title: "报表设计",
|
|
19
|
+
icon: "iconfont icon-s-grid"
|
|
20
|
+
},
|
|
21
|
+
component: () => import("./StatementDesign-fa7f4a9e.mjs")
|
|
22
|
+
})), t.addRoute("Index", {
|
|
23
|
+
path: "statement/detail/:id",
|
|
24
|
+
name: "后台报表查看",
|
|
25
|
+
meta: {
|
|
26
|
+
id: "StatementDetail",
|
|
27
|
+
title: "后台报表查看",
|
|
28
|
+
icon: "iconfont icon-s-grid"
|
|
29
|
+
},
|
|
30
|
+
component: () => import("./StatementDetail-b9ae83e7.mjs")
|
|
31
|
+
}), t.addRoute({
|
|
32
|
+
path: "/statementdetail/:id",
|
|
33
|
+
name: "报表查看",
|
|
34
|
+
meta: {
|
|
35
|
+
id: "StatementDetail",
|
|
36
|
+
title: "报表查看",
|
|
37
|
+
icon: "iconfont icon-s-grid"
|
|
38
|
+
},
|
|
39
|
+
component: () => import("./StatementDetail-b9ae83e7.mjs")
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
};
|
|
7
43
|
export {
|
|
8
|
-
|
|
9
|
-
d as dynamicReportView
|
|
44
|
+
a as default
|
|
10
45
|
};
|
|
11
46
|
//# sourceMappingURL=index.es.js.map
|
package/index.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.es.js","sources":["../index.ts"],"sourcesContent":["import {Router} from 'vue-router';\nimport {Pinia} from 'pinia';\n\nexport default {\n install(\n app,\n config: {\n router: Router;\n pinia: Pinia;\n isAdmin?: boolean;\n }\n ) {\n let {router, pinia, isAdmin = false} = config;\n // 管理后台才添加报表管理的,要不然只提供预览的详情页\n if (isAdmin) {\n router.addRoute('Index', {\n path: 'statement/list',\n name: '报表列表',\n meta: {\n id: 'Statement',\n title: '报表列表',\n icon: 'iconfont icon-s-grid',\n },\n component: () => import('./StatementList.vue'),\n });\n router.addRoute('Index', {\n path: 'statement/design/:id',\n name: '报表设计',\n meta: {\n id: 'StatementDesign',\n title: '报表设计',\n icon: 'iconfont icon-s-grid',\n },\n component: () => import('./StatementDesign.vue'),\n });\n }\n router.addRoute('Index', {\n path: 'statement/detail/:id',\n name: '后台报表查看',\n meta: {\n id: 'StatementDetail',\n title: '后台报表查看',\n icon: 'iconfont icon-s-grid',\n },\n component: () => import('./StatementDetail.vue'),\n });\n router.addRoute({\n path: '/statementdetail/:id',\n name: '报表查看',\n meta: {\n id: 'StatementDetail',\n title: '报表查看',\n icon: 'iconfont icon-s-grid',\n },\n component: () => import('./StatementDetail.vue'),\n });\n },\n};\n"],"names":["index","app","config","router","pinia","isAdmin"],"mappings":"AAGA,MAAeA,IAAA;AAAA,EACb,QACEC,GACAC,GAKA;AACA,QAAI,EAAC,QAAAC,GAAQ,OAAAC,GAAO,SAAAC,IAAU,OAASH;AAEvC,IAAIG,MACFF,EAAO,SAAS,SAAS;AAAA,MACvB,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,OAAO;AAAA,QACP,MAAM;AAAA,MACR;AAAA,MACA,WAAW,MAAM,OAAO,8BAAqB;AAAA,IAAA,CAC9C,GACDA,EAAO,SAAS,SAAS;AAAA,MACvB,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,OAAO;AAAA,QACP,MAAM;AAAA,MACR;AAAA,MACA,WAAW,MAAM,OAAO,gCAAuB;AAAA,IAAA,CAChD,IAEHA,EAAO,SAAS,SAAS;AAAA,MACvB,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,OAAO;AAAA,QACP,MAAM;AAAA,MACR;AAAA,MACA,WAAW,MAAM,OAAO,gCAAuB;AAAA,IAAA,CAChD,GACDA,EAAO,SAAS;AAAA,MACd,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,OAAO;AAAA,QACP,MAAM;AAAA,MACR;AAAA,MACA,WAAW,MAAM,OAAO,gCAAuB;AAAA,IAAA,CAChD;AAAA,EACH;AACF;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "yh-report",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.2",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "./index.es.js",
|
|
6
6
|
"type": "module",
|
|
@@ -15,14 +15,13 @@
|
|
|
15
15
|
"package.json"
|
|
16
16
|
],
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@antv/s2": "2.0.0-next.25",
|
|
19
18
|
"yh-hooks": "^1.0.0",
|
|
20
|
-
"yh-codemirror": "^1.0.
|
|
21
|
-
"echarts": "5.5.0"
|
|
22
|
-
"vuedraggable": "^4.1.0"
|
|
19
|
+
"yh-codemirror": "^1.0.0",
|
|
20
|
+
"echarts": "5.5.0"
|
|
23
21
|
},
|
|
24
22
|
"peerDependencies": {
|
|
25
23
|
"vue": "^3.0.0",
|
|
24
|
+
"@vueuse/core": "^13.0.0",
|
|
26
25
|
"pinia": "^2.0.0",
|
|
27
26
|
"element-plus": "^2.3.8",
|
|
28
27
|
"dayjs": "^1.0.0"
|