@jeecg/online 1.0.1 → 3.4.3
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/AuthButtonConfig.js +15 -9
- package/AuthButtonTree.js +4 -7
- package/AuthDataConfig.js +10 -8
- package/AuthDataTree.js +4 -7
- package/AuthFieldConfig.js +16 -14
- package/AuthFieldTree.js +25 -20
- package/AuthManagerDrawer.js +2 -3
- package/AuthSetterModal.js +2 -2
- package/CgformCopyList.js +34 -24
- package/CgformModal.js +57 -50
- package/CgreportModal.js +32 -39
- package/CheckDictTable.js +146 -26
- package/CodeFileListModal.js +174 -0
- package/CodeFileViewModal.js +324 -0
- package/CodeGeneratorModal.js +42 -40
- package/CustomButtonList.js +19 -23
- package/DBAttributeTable.js +250 -14
- package/DbToOnlineModal.js +28 -27
- package/DetailForm.js +607 -0
- package/EnhanceJavaModal.js +12 -19
- package/EnhanceJsHistory.js +6 -8
- package/EnhanceJsModal.js +17 -18
- package/EnhanceSqlModal.js +12 -19
- package/ExtendConfigModal.js +26 -17
- package/FileSelectModal.js +1 -2
- package/ForeignKeyTable.js +6 -5
- package/FormSchemaFactory.js +163 -30
- package/IndexTable.js +8 -7
- package/JModalTip.js +54 -0
- package/LeftDepart.js +3 -3
- package/LeftRole.js +8 -6
- package/LeftUser.js +8 -6
- package/LinkTableConfigModal.js +288 -0
- package/LinkTableFieldConfigModal.js +217 -0
- package/LinkTableListPiece.js +36 -0
- package/ModalFormDemo.js +4 -4
- package/OnlCgReportList.js +34 -0
- package/OnlineAutoList.js +155 -58
- package/OnlineAutoModal.js +91 -132
- package/OnlineAutoTreeList.js +92 -54
- package/OnlineCustomModal.js +31 -17
- package/OnlineDetailModal.js +182 -0
- package/OnlineForm.js +272 -141
- package/OnlineFormDetail.js +324 -0
- package/OnlineQueryForm.js +72 -42
- package/OnlineSearchFormItem.js +28 -23
- package/OnlineSubFormDetail.js +165 -0
- package/OnlineSuperQuery.js +72 -76
- package/OnlineSuperQueryValComponent.js +1 -0
- package/OnlineSuperQueryValComponent.vue_vue_type_script_lang.js +1 -17
- package/PageAttributeTable.js +233 -31
- package/ProcessOnlineForm.js +41 -18
- package/QueryTable.js +6 -5
- package/README.md +3 -8
- package/_arrayPush.js +5 -3
- package/{cloneDeep.js → _baseClone.js} +5 -9
- package/_baseSlice.js +18 -0
- package/_commonjsHelpers.js +5 -0
- package/_flatRest.js +174 -0
- package/auth.data.js +1 -3
- package/cgform.data.js +18 -9
- package/enhance.api.js +27 -18
- package/index.js +358 -34
- package/index2.js +49 -48
- package/index3.js +29 -26
- package/isArray.js +1 -1
- package/main.index.js +3 -3
- package/omit.js +60 -0
- package/package.json +1 -1
- package/pick.js +3 -173
- package/style.css +1 -1
- package/toString.js +2 -2
- package/useAutoForm.js +3457 -3792
- package/useCgformList.js +44 -31
- package/{useTableColumns.js → useListButton.js} +218 -409
- package/useOnlineTest.js +5 -26827
- package/useSchemas.js +382 -234
- package/useTableSync.js +19 -7
- package/ChartAutoRender.js +0 -69
- package/ChartDoubleRender.js +0 -154
- package/ChartSingleRender.js +0 -132
- package/ChartTabsRender.js +0 -218
- package/ErrorTip.js +0 -21
- package/FieldTable.js +0 -185
- package/GraphreportAutoChart.js +0 -352
- package/GraphreportList.js +0 -239
- package/GraphreportModal.js +0 -559
- package/JOnlineSearchSelect.js +0 -107
- package/LICENSE +0 -7
- package/OnlineSelectCascade.js +0 -217
- package/OnlineSubForm.js +0 -200
- package/ParamsTable.js +0 -71
- package/graphreport.api.js +0 -23
- package/useChartRender.js +0 -405
- package/useMessageOnline.js +0 -71
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
3
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
4
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __spreadValues = (a, b) => {
|
|
7
|
+
for (var prop in b || (b = {}))
|
|
8
|
+
if (__hasOwnProp.call(b, prop))
|
|
9
|
+
__defNormalProp(a, prop, b[prop]);
|
|
10
|
+
if (__getOwnPropSymbols)
|
|
11
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
12
|
+
if (__propIsEnum.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
}
|
|
15
|
+
return a;
|
|
16
|
+
};
|
|
17
|
+
var __async = (__this, __arguments, generator) => {
|
|
18
|
+
return new Promise((resolve, reject) => {
|
|
19
|
+
var fulfilled = (value) => {
|
|
20
|
+
try {
|
|
21
|
+
step(generator.next(value));
|
|
22
|
+
} catch (e) {
|
|
23
|
+
reject(e);
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
var rejected = (value) => {
|
|
27
|
+
try {
|
|
28
|
+
step(generator.throw(value));
|
|
29
|
+
} catch (e) {
|
|
30
|
+
reject(e);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
34
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
import { BasicModal, useModalInner } from "/@/components/Modal";
|
|
38
|
+
import { ref, computed, resolveComponent, openBlock, createBlock, mergeProps, withCtx, createVNode } from "vue";
|
|
39
|
+
import { BasicForm, useForm } from "/@/components/Form/index";
|
|
40
|
+
import { defHttp } from "/@/utils/http/axios";
|
|
41
|
+
import { _ as _export_sfc } from "./index.js";
|
|
42
|
+
import { o as omit } from "./omit.js";
|
|
43
|
+
import "/@/hooks/web/useMessage";
|
|
44
|
+
import "@vueuse/core";
|
|
45
|
+
import "./toString.js";
|
|
46
|
+
import "./isArray.js";
|
|
47
|
+
import "./_baseClone.js";
|
|
48
|
+
import "./_arrayPush.js";
|
|
49
|
+
import "./_flatRest.js";
|
|
50
|
+
import "./_baseSlice.js";
|
|
51
|
+
const _sfc_main = {
|
|
52
|
+
name: "LinkTableConfigModal",
|
|
53
|
+
emits: ["success", "register"],
|
|
54
|
+
components: {
|
|
55
|
+
BasicModal,
|
|
56
|
+
BasicForm
|
|
57
|
+
},
|
|
58
|
+
setup(_p, { emit }) {
|
|
59
|
+
const spinningLoading = ref(false);
|
|
60
|
+
const fieldName = ref("");
|
|
61
|
+
let oldValue = {};
|
|
62
|
+
const [registerModal, { closeModal }] = useModalInner((data) => __async(this, null, function* () {
|
|
63
|
+
console.log("data", data);
|
|
64
|
+
oldValue = __spreadValues({}, data.record);
|
|
65
|
+
yield setFieldsValue({ dictTable: data.record.dictTable });
|
|
66
|
+
setTimeout(() => __async(this, null, function* () {
|
|
67
|
+
let otherValue = omit(data.record, "dictTable");
|
|
68
|
+
yield setFieldsValue(otherValue);
|
|
69
|
+
yield clearValidate();
|
|
70
|
+
}), 200);
|
|
71
|
+
fieldName.value = data.fieldName;
|
|
72
|
+
}));
|
|
73
|
+
const titleFieldName = ref("");
|
|
74
|
+
const imageFieldName = ref("");
|
|
75
|
+
const fieldOptions = ref([]);
|
|
76
|
+
const imageFieldOptions = ref([]);
|
|
77
|
+
function getFieldOptions(tableName) {
|
|
78
|
+
return __async(this, null, function* () {
|
|
79
|
+
if (tableName) {
|
|
80
|
+
const url = "/online/cgform/field/listByHeadCode";
|
|
81
|
+
const dataList = yield defHttp.get({ url, params: { headCode: tableName } });
|
|
82
|
+
if (dataList && dataList.length > 0) {
|
|
83
|
+
let arr1 = dataList.filter((item) => item.dbFieldName != "id" && item.dbIsPersist == 1);
|
|
84
|
+
console.log("\u5B57\u6BB5\u5B57\u5178", arr1);
|
|
85
|
+
if (arr1.length > 0) {
|
|
86
|
+
fieldOptions.value = arr1.map((item) => {
|
|
87
|
+
return {
|
|
88
|
+
text: item.dbFieldTxt,
|
|
89
|
+
value: item.dbFieldName
|
|
90
|
+
};
|
|
91
|
+
});
|
|
92
|
+
} else {
|
|
93
|
+
fieldOptions.value = [];
|
|
94
|
+
}
|
|
95
|
+
let arr2 = dataList.filter((item) => item.dbFieldName != "id" && item.fieldShowType == "image" && item.dbIsPersist == 1);
|
|
96
|
+
console.log("\u56FE\u7247\u5B57\u6BB5", arr2);
|
|
97
|
+
if (arr2.length > 0) {
|
|
98
|
+
imageFieldOptions.value = arr2.map((item) => {
|
|
99
|
+
return {
|
|
100
|
+
text: item.dbFieldTxt,
|
|
101
|
+
value: item.dbFieldName
|
|
102
|
+
};
|
|
103
|
+
});
|
|
104
|
+
} else {
|
|
105
|
+
imageFieldOptions.value = [{ text: "\u65E0\u56FE\u7247\u5B57\u6BB5\u53EF\u4EE5\u9009\u62E9", value: "", key: "", disabled: true }];
|
|
106
|
+
}
|
|
107
|
+
} else {
|
|
108
|
+
fieldOptions.value = [];
|
|
109
|
+
imageFieldOptions.value = [{ text: "\u65E0\u56FE\u7247\u5B57\u6BB5\u53EF\u4EE5\u9009\u62E9", value: "", key: "", disabled: true }];
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
function handleTableChange(tableName) {
|
|
115
|
+
return __async(this, null, function* () {
|
|
116
|
+
titleFieldName.value = "";
|
|
117
|
+
imageFieldName.value = "";
|
|
118
|
+
yield getFieldOptions(tableName);
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
const otherFieldOptions = computed(() => {
|
|
122
|
+
let arr = fieldOptions.value;
|
|
123
|
+
let titleField = titleFieldName.value;
|
|
124
|
+
let imageField = imageFieldName.value;
|
|
125
|
+
return arr.filter((item) => item.value != titleField && item.value != imageField);
|
|
126
|
+
});
|
|
127
|
+
const formSchemas = [
|
|
128
|
+
{
|
|
129
|
+
label: "rowKey",
|
|
130
|
+
field: "rowKey",
|
|
131
|
+
component: "Input",
|
|
132
|
+
show: false
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
label: "dictField",
|
|
136
|
+
field: "dictField",
|
|
137
|
+
component: "Input",
|
|
138
|
+
defaultValue: "id",
|
|
139
|
+
show: false
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
label: "\u5B57\u6BB5\u63CF\u8FF0",
|
|
143
|
+
field: "dbFieldTxt",
|
|
144
|
+
component: "Input",
|
|
145
|
+
required: true
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
label: "\u5173\u8054\u8868",
|
|
149
|
+
field: "dictTable",
|
|
150
|
+
component: "JSearchSelect",
|
|
151
|
+
required: true,
|
|
152
|
+
componentProps: ({ formActionType }) => {
|
|
153
|
+
return {
|
|
154
|
+
dict: "onl_cgform_head where copy_type = 0,table_txt,table_name",
|
|
155
|
+
pageSize: 10,
|
|
156
|
+
async: true,
|
|
157
|
+
immediateChange: true,
|
|
158
|
+
popContainer: ".link-table-config-modal",
|
|
159
|
+
params: { order: "desc", column: "create_time" },
|
|
160
|
+
onChange: (name) => __async(this, null, function* () {
|
|
161
|
+
if (oldValue.titleField || oldValue.otherFields) {
|
|
162
|
+
yield formActionType.setFieldsValue({
|
|
163
|
+
titleField: "",
|
|
164
|
+
otherFields: "",
|
|
165
|
+
imageField: ""
|
|
166
|
+
});
|
|
167
|
+
yield formActionType.clearValidate();
|
|
168
|
+
}
|
|
169
|
+
yield handleTableChange(name);
|
|
170
|
+
})
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
label: "\u6807\u9898\u5B57\u6BB5",
|
|
176
|
+
field: "titleField",
|
|
177
|
+
component: "JSearchSelect",
|
|
178
|
+
required: true,
|
|
179
|
+
componentProps: {
|
|
180
|
+
async: false,
|
|
181
|
+
popContainer: ".link-table-config-modal",
|
|
182
|
+
dictOptions: fieldOptions,
|
|
183
|
+
immediateChange: true,
|
|
184
|
+
onChange: (str) => {
|
|
185
|
+
titleFieldName.value = str;
|
|
186
|
+
oldValue["titleField"] = str;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
label: "\u5C01\u9762\u56FE\u7247",
|
|
192
|
+
field: "imageField",
|
|
193
|
+
component: "JSearchSelect",
|
|
194
|
+
componentProps: {
|
|
195
|
+
async: false,
|
|
196
|
+
popContainer: ".link-table-config-modal",
|
|
197
|
+
dictOptions: imageFieldOptions,
|
|
198
|
+
immediateChange: true,
|
|
199
|
+
onChange: (str) => {
|
|
200
|
+
imageFieldName.value = str;
|
|
201
|
+
oldValue["imageFieldName"] = str;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
label: "\u5176\u4ED6\u5B57\u6BB5",
|
|
207
|
+
field: "otherFields",
|
|
208
|
+
component: "JSelectMultiple",
|
|
209
|
+
componentProps: {
|
|
210
|
+
popContainer: ".link-table-config-modal",
|
|
211
|
+
options: otherFieldOptions,
|
|
212
|
+
onChange: (str) => {
|
|
213
|
+
oldValue["otherFields"] = str;
|
|
214
|
+
console.error("oldValue", oldValue);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
label: "\u663E\u793A\u65B9\u5F0F",
|
|
220
|
+
field: "showType",
|
|
221
|
+
component: "Select",
|
|
222
|
+
defaultValue: "card",
|
|
223
|
+
componentProps: {
|
|
224
|
+
options: [
|
|
225
|
+
{ label: "\u5361\u7247", value: "card" },
|
|
226
|
+
{ label: "\u4E0B\u62C9\u6846", value: "select" }
|
|
227
|
+
]
|
|
228
|
+
}
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
label: "\u662F\u5426\u591A\u9009",
|
|
232
|
+
field: "multiSelect",
|
|
233
|
+
component: "RadioGroup",
|
|
234
|
+
defaultValue: false,
|
|
235
|
+
componentProps: {
|
|
236
|
+
options: [
|
|
237
|
+
{ label: "\u5426", value: false },
|
|
238
|
+
{ label: "\u662F", value: true }
|
|
239
|
+
]
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
];
|
|
243
|
+
const [registerForm, { validate, setFieldsValue, clearValidate, resetFields }] = useForm({
|
|
244
|
+
schemas: formSchemas,
|
|
245
|
+
showActionButtonGroup: false,
|
|
246
|
+
labelAlign: "right"
|
|
247
|
+
});
|
|
248
|
+
function handleSubmit() {
|
|
249
|
+
return __async(this, null, function* () {
|
|
250
|
+
let data = yield validate();
|
|
251
|
+
data["fieldName"] = fieldName.value;
|
|
252
|
+
emit("success", data);
|
|
253
|
+
closeModal();
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
return {
|
|
257
|
+
registerModal,
|
|
258
|
+
spinningLoading,
|
|
259
|
+
registerForm,
|
|
260
|
+
handleSubmit
|
|
261
|
+
};
|
|
262
|
+
}
|
|
263
|
+
};
|
|
264
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
265
|
+
const _component_BasicForm = resolveComponent("BasicForm");
|
|
266
|
+
const _component_a_spin = resolveComponent("a-spin");
|
|
267
|
+
const _component_BasicModal = resolveComponent("BasicModal");
|
|
268
|
+
return openBlock(), createBlock(_component_BasicModal, mergeProps({ wrapClassName: "link-table-config-modal" }, _ctx.$attrs, {
|
|
269
|
+
title: "\u5173\u8054\u8BB0\u5F55\u914D\u7F6E",
|
|
270
|
+
onRegister: $setup.registerModal,
|
|
271
|
+
keyboard: "",
|
|
272
|
+
canFullscreen: false,
|
|
273
|
+
cancelText: "\u5173\u95ED",
|
|
274
|
+
onOk: $setup.handleSubmit
|
|
275
|
+
}), {
|
|
276
|
+
default: withCtx(() => [
|
|
277
|
+
createVNode(_component_a_spin, { spinning: $setup.spinningLoading }, {
|
|
278
|
+
default: withCtx(() => [
|
|
279
|
+
createVNode(_component_BasicForm, { onRegister: $setup.registerForm }, null, 8, ["onRegister"])
|
|
280
|
+
]),
|
|
281
|
+
_: 1
|
|
282
|
+
}, 8, ["spinning"])
|
|
283
|
+
]),
|
|
284
|
+
_: 1
|
|
285
|
+
}, 16, ["onRegister", "onOk"]);
|
|
286
|
+
}
|
|
287
|
+
var LinkTableConfigModal = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
288
|
+
export { LinkTableConfigModal as default };
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
3
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
4
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __spreadValues = (a, b) => {
|
|
7
|
+
for (var prop in b || (b = {}))
|
|
8
|
+
if (__hasOwnProp.call(b, prop))
|
|
9
|
+
__defNormalProp(a, prop, b[prop]);
|
|
10
|
+
if (__getOwnPropSymbols)
|
|
11
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
12
|
+
if (__propIsEnum.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
}
|
|
15
|
+
return a;
|
|
16
|
+
};
|
|
17
|
+
var __async = (__this, __arguments, generator) => {
|
|
18
|
+
return new Promise((resolve, reject) => {
|
|
19
|
+
var fulfilled = (value) => {
|
|
20
|
+
try {
|
|
21
|
+
step(generator.next(value));
|
|
22
|
+
} catch (e) {
|
|
23
|
+
reject(e);
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
var rejected = (value) => {
|
|
27
|
+
try {
|
|
28
|
+
step(generator.throw(value));
|
|
29
|
+
} catch (e) {
|
|
30
|
+
reject(e);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
34
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
import { BasicModal, useModalInner } from "/@/components/Modal";
|
|
38
|
+
import { ref, resolveComponent, openBlock, createBlock, mergeProps, withCtx, createVNode } from "vue";
|
|
39
|
+
import { BasicForm, useForm } from "/@/components/Form/index";
|
|
40
|
+
import { defHttp } from "/@/utils/http/axios";
|
|
41
|
+
import { useMessage } from "/@/hooks/web/useMessage";
|
|
42
|
+
import { _ as _export_sfc } from "./index.js";
|
|
43
|
+
import { o as omit } from "./omit.js";
|
|
44
|
+
import "@vueuse/core";
|
|
45
|
+
import "./toString.js";
|
|
46
|
+
import "./isArray.js";
|
|
47
|
+
import "./_baseClone.js";
|
|
48
|
+
import "./_arrayPush.js";
|
|
49
|
+
import "./_flatRest.js";
|
|
50
|
+
import "./_baseSlice.js";
|
|
51
|
+
const _sfc_main = {
|
|
52
|
+
name: "LinkTableFieldConfigModal",
|
|
53
|
+
emits: ["success", "register"],
|
|
54
|
+
components: {
|
|
55
|
+
BasicModal,
|
|
56
|
+
BasicForm
|
|
57
|
+
},
|
|
58
|
+
setup(_p, { emit }) {
|
|
59
|
+
const spinningLoading = ref(false);
|
|
60
|
+
const linkTableOptions = ref([]);
|
|
61
|
+
const fieldOptions = ref([]);
|
|
62
|
+
let tableAndFieldsMap = {};
|
|
63
|
+
let oldValue = {};
|
|
64
|
+
const { createMessage: $message } = useMessage();
|
|
65
|
+
const [registerModal, { closeModal }] = useModalInner((data) => __async(this, null, function* () {
|
|
66
|
+
console.log("data", data);
|
|
67
|
+
oldValue = __spreadValues({}, data.record);
|
|
68
|
+
tableAndFieldsMap = data.tableAndFieldsMap;
|
|
69
|
+
yield initLinkTableOptions();
|
|
70
|
+
yield setFieldsValue({ dictTable: data.record.dictTable });
|
|
71
|
+
setTimeout(() => __async(this, null, function* () {
|
|
72
|
+
let otherValue = omit(data.record, "dictTable");
|
|
73
|
+
yield setFieldsValue(otherValue);
|
|
74
|
+
yield clearValidate();
|
|
75
|
+
}), 200);
|
|
76
|
+
}));
|
|
77
|
+
function initLinkTableOptions() {
|
|
78
|
+
return __async(this, null, function* () {
|
|
79
|
+
let fieldNames = Object.keys(tableAndFieldsMap);
|
|
80
|
+
if (!fieldNames || fieldNames.length == 0) {
|
|
81
|
+
linkTableOptions.value = [];
|
|
82
|
+
} else {
|
|
83
|
+
let arr = [];
|
|
84
|
+
for (let name of fieldNames) {
|
|
85
|
+
arr.push({
|
|
86
|
+
text: tableAndFieldsMap[name].title,
|
|
87
|
+
value: name
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
linkTableOptions.value = arr;
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
function handleChange(fieldName) {
|
|
95
|
+
return __async(this, null, function* () {
|
|
96
|
+
if (fieldName) {
|
|
97
|
+
const { table, fields } = tableAndFieldsMap[fieldName];
|
|
98
|
+
if (!table) {
|
|
99
|
+
$message.warning("\u8BF7\u5148\u5B8C\u5584\u5B57\u6BB5[" + fieldName + "]\u5173\u8054\u8BB0\u5F55\u7684\u914D\u7F6E");
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
const url = "/online/cgform/field/listByHeadCode";
|
|
103
|
+
const dataList = yield defHttp.get({ url, params: { headCode: table } });
|
|
104
|
+
if (dataList && dataList.length > 0) {
|
|
105
|
+
let arr = dataList.map((item) => {
|
|
106
|
+
return {
|
|
107
|
+
text: item.dbFieldTxt,
|
|
108
|
+
value: item.dbFieldName
|
|
109
|
+
};
|
|
110
|
+
});
|
|
111
|
+
console.log("\u5B57\u6BB5\u5B57\u5178", arr);
|
|
112
|
+
let fieldArray = fields.split(",");
|
|
113
|
+
fieldOptions.value = arr.filter((item) => fieldArray.indexOf(item.value) > 0);
|
|
114
|
+
} else {
|
|
115
|
+
fieldOptions.value = [];
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
const formSchemas = [
|
|
121
|
+
{
|
|
122
|
+
label: "rowKey",
|
|
123
|
+
field: "rowKey",
|
|
124
|
+
component: "Input",
|
|
125
|
+
show: false
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
label: "\u5B57\u6BB5\u63CF\u8FF0",
|
|
129
|
+
field: "dbFieldTxt",
|
|
130
|
+
component: "Input",
|
|
131
|
+
required: true
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
label: "\u5173\u8054\u8BB0\u5F55",
|
|
135
|
+
field: "dictTable",
|
|
136
|
+
component: "JSearchSelect",
|
|
137
|
+
required: true,
|
|
138
|
+
componentProps: ({ formActionType }) => {
|
|
139
|
+
let tempOptions = linkTableOptions.value;
|
|
140
|
+
return {
|
|
141
|
+
async: false,
|
|
142
|
+
popContainer: ".link-table-field-config-modal",
|
|
143
|
+
dictOptions: tempOptions,
|
|
144
|
+
immediateChange: true,
|
|
145
|
+
onChange: (name) => __async(this, null, function* () {
|
|
146
|
+
if (oldValue.dictText) {
|
|
147
|
+
yield formActionType.setFieldsValue({
|
|
148
|
+
dictText: ""
|
|
149
|
+
});
|
|
150
|
+
yield formActionType.clearValidate();
|
|
151
|
+
}
|
|
152
|
+
handleChange(name);
|
|
153
|
+
})
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
label: "\u663E\u793A\u5B57\u6BB5",
|
|
159
|
+
field: "dictText",
|
|
160
|
+
component: "JSearchSelect",
|
|
161
|
+
required: true,
|
|
162
|
+
componentProps: {
|
|
163
|
+
async: false,
|
|
164
|
+
popContainer: ".link-table-field-config-modal",
|
|
165
|
+
dictOptions: fieldOptions,
|
|
166
|
+
onChange: (value) => {
|
|
167
|
+
oldValue["dictText"] = value;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
];
|
|
172
|
+
const [registerForm, { validate, setFieldsValue, clearValidate }] = useForm({
|
|
173
|
+
schemas: formSchemas,
|
|
174
|
+
showActionButtonGroup: false,
|
|
175
|
+
labelAlign: "right"
|
|
176
|
+
});
|
|
177
|
+
function handleSubmit() {
|
|
178
|
+
return __async(this, null, function* () {
|
|
179
|
+
const data = yield validate();
|
|
180
|
+
console.log("handlesub", data);
|
|
181
|
+
emit("success", data);
|
|
182
|
+
closeModal();
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
return {
|
|
186
|
+
registerModal,
|
|
187
|
+
spinningLoading,
|
|
188
|
+
registerForm,
|
|
189
|
+
handleSubmit
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
};
|
|
193
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
194
|
+
const _component_BasicForm = resolveComponent("BasicForm");
|
|
195
|
+
const _component_a_spin = resolveComponent("a-spin");
|
|
196
|
+
const _component_BasicModal = resolveComponent("BasicModal");
|
|
197
|
+
return openBlock(), createBlock(_component_BasicModal, mergeProps({ wrapClassName: "link-table-field-config-modal" }, _ctx.$attrs, {
|
|
198
|
+
title: "\u4ED6\u8868\u5B57\u6BB5\u914D\u7F6E",
|
|
199
|
+
onRegister: $setup.registerModal,
|
|
200
|
+
keyboard: "",
|
|
201
|
+
canFullscreen: false,
|
|
202
|
+
cancelText: "\u5173\u95ED",
|
|
203
|
+
onOk: $setup.handleSubmit
|
|
204
|
+
}), {
|
|
205
|
+
default: withCtx(() => [
|
|
206
|
+
createVNode(_component_a_spin, { spinning: $setup.spinningLoading }, {
|
|
207
|
+
default: withCtx(() => [
|
|
208
|
+
createVNode(_component_BasicForm, { onRegister: $setup.registerForm }, null, 8, ["onRegister"])
|
|
209
|
+
]),
|
|
210
|
+
_: 1
|
|
211
|
+
}, 8, ["spinning"])
|
|
212
|
+
]),
|
|
213
|
+
_: 1
|
|
214
|
+
}, 16, ["onRegister", "onOk"]);
|
|
215
|
+
}
|
|
216
|
+
var LinkTableFieldConfigModal = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
217
|
+
export { LinkTableFieldConfigModal as default };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { propTypes } from "/@/utils/propTypes";
|
|
2
|
+
import { openBlock, createElementBlock, createElementVNode, toDisplayString } from "vue";
|
|
3
|
+
import { _ as _export_sfc } from "./index.js";
|
|
4
|
+
import "/@/utils/http/axios";
|
|
5
|
+
import "/@/hooks/web/useMessage";
|
|
6
|
+
import "@vueuse/core";
|
|
7
|
+
var LinkTableListPiece_vue_vue_type_style_index_0_scoped_true_lang = "";
|
|
8
|
+
const _sfc_main = {
|
|
9
|
+
name: "LinkTableListPiece",
|
|
10
|
+
props: {
|
|
11
|
+
text: propTypes.string.def(""),
|
|
12
|
+
id: propTypes.string.def("")
|
|
13
|
+
},
|
|
14
|
+
emits: ["tab"],
|
|
15
|
+
setup(props, { emit }) {
|
|
16
|
+
function handleClick(e) {
|
|
17
|
+
e == null ? void 0 : e.stopPropagation();
|
|
18
|
+
e == null ? void 0 : e.preventDefault();
|
|
19
|
+
console.log(props.id);
|
|
20
|
+
emit("tab", props.id);
|
|
21
|
+
}
|
|
22
|
+
return {
|
|
23
|
+
handleClick
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
28
|
+
return openBlock(), createElementBlock("div", {
|
|
29
|
+
class: "link-table-piece",
|
|
30
|
+
onClick: _cache[0] || (_cache[0] = (...args) => $setup.handleClick && $setup.handleClick(...args))
|
|
31
|
+
}, [
|
|
32
|
+
createElementVNode("span", null, toDisplayString($props.text), 1)
|
|
33
|
+
]);
|
|
34
|
+
}
|
|
35
|
+
var LinkTableListPiece = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-33745cde"]]);
|
|
36
|
+
export { LinkTableListPiece as default };
|
package/ModalFormDemo.js
CHANGED
|
@@ -3,9 +3,9 @@ import { BasicForm, useForm } from "/@/components/Form/index";
|
|
|
3
3
|
import { defHttp } from "/@/utils/http/axios";
|
|
4
4
|
import { _ as _export_sfc } from "./index.js";
|
|
5
5
|
import { p as pick } from "./pick.js";
|
|
6
|
-
import "/@/components/jeecg/OnLine/JPopupOnlReport.vue";
|
|
7
6
|
import "/@/hooks/web/useMessage";
|
|
8
|
-
import "
|
|
7
|
+
import "@vueuse/core";
|
|
8
|
+
import "./_flatRest.js";
|
|
9
9
|
import "./isArray.js";
|
|
10
10
|
import "./toString.js";
|
|
11
11
|
import "./_arrayPush.js";
|
|
@@ -22,7 +22,7 @@ const getSchemas = () => {
|
|
|
22
22
|
label: "\u5E74\u9F84",
|
|
23
23
|
componentProps: {
|
|
24
24
|
style: {
|
|
25
|
-
|
|
25
|
+
width: "100%"
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
},
|
|
@@ -41,7 +41,7 @@ const getSchemas = () => {
|
|
|
41
41
|
componentProps: {
|
|
42
42
|
valueFormat: "YYYY-MM-DD",
|
|
43
43
|
style: {
|
|
44
|
-
|
|
44
|
+
width: "100%"
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
},
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import JPopupOnlReport from "/@/components/jeecg/OnLine/JPopupOnlReport.vue";
|
|
2
|
+
import { defineComponent, resolveComponent, openBlock, createElementBlock, createVNode } from "vue";
|
|
3
|
+
import { useMessage } from "/@/hooks/web/useMessage";
|
|
4
|
+
import { useRoute } from "vue-router";
|
|
5
|
+
import { _ as _export_sfc } from "./index.js";
|
|
6
|
+
import "/@/utils/http/axios";
|
|
7
|
+
import "@vueuse/core";
|
|
8
|
+
const _sfc_main = defineComponent({
|
|
9
|
+
name: "OnlCgReportList",
|
|
10
|
+
components: {
|
|
11
|
+
JPopupOnlReport
|
|
12
|
+
},
|
|
13
|
+
setup(props, { emit, refs }) {
|
|
14
|
+
useMessage();
|
|
15
|
+
const route = useRoute();
|
|
16
|
+
const path = route.path;
|
|
17
|
+
const id = path.substr(path.lastIndexOf("/") + 1);
|
|
18
|
+
return {
|
|
19
|
+
id
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
const _hoisted_1 = { class: "p-2" };
|
|
24
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
25
|
+
const _component_JPopupOnlReport = resolveComponent("JPopupOnlReport");
|
|
26
|
+
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
27
|
+
createVNode(_component_JPopupOnlReport, {
|
|
28
|
+
id: _ctx.id,
|
|
29
|
+
clickToRowSelect: false
|
|
30
|
+
}, null, 8, ["id"])
|
|
31
|
+
]);
|
|
32
|
+
}
|
|
33
|
+
var OnlCgReportList = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
34
|
+
export { OnlCgReportList as default };
|