|
@@ -1,10 +1,8 @@
|
|
|
import { ref, createApp } from "vue";
|
|
|
-import { ElButton, ElDialog, ElInput, ElTree, ElMessage } from "element-plus";
|
|
|
+import { ElButton, ElDialog, ElInput, ElTree } from "element-plus";
|
|
|
import {
|
|
|
GetAllTablesAndViews,
|
|
|
GetAllBasicData,
|
|
|
- GetTableViewColumns,
|
|
|
- GetTableViewFieldKey,
|
|
|
} from "@shalu/service";
|
|
|
|
|
|
import type Node from "element-plus/es/components/tree/src/model/node";
|
|
@@ -35,7 +33,6 @@ type BisicData = {
|
|
|
*/
|
|
|
export const getDataOrigin = (
|
|
|
type: "table" | "view",
|
|
|
- datatype = ''
|
|
|
): Promise<{ value: string; result?: any }> => {
|
|
|
const data = ref();
|
|
|
const loading = ref(false);
|
|
@@ -97,7 +94,7 @@ export const getDataOrigin = (
|
|
|
lazy={true}
|
|
|
load={onload}
|
|
|
props={{
|
|
|
- label: (data: BisicData) =>
|
|
|
+ label: (data: any) =>
|
|
|
data.path ? `${data.path}(${data.name})` : data.name,
|
|
|
children: "children",
|
|
|
}}
|
|
@@ -106,7 +103,7 @@ export const getDataOrigin = (
|
|
|
val.value = node.path;
|
|
|
}
|
|
|
}}
|
|
|
- filterNodeMethod={(value: string, data: BisicData) => {
|
|
|
+ filterNodeMethod={(value: string, data: any) => {
|
|
|
// treeRef.value?.onload();
|
|
|
return (
|
|
|
data.path?.toUpperCase().includes(value.toUpperCase()) ||
|
|
@@ -146,75 +143,6 @@ export const getDataOrigin = (
|
|
|
style={{ height: "600px" }}
|
|
|
v-slots={{
|
|
|
footer: () => (
|
|
|
- <>
|
|
|
- {type === "view" &&
|
|
|
- ["fm-search-table", "fm-subform"].includes(datatype) ? (
|
|
|
- <ElButton
|
|
|
- disabled={!val.value}
|
|
|
- type="primary"
|
|
|
- onClick={async () => {
|
|
|
- if (valId.value) {
|
|
|
- try {
|
|
|
- const tableViewResult =
|
|
|
- await GetTableViewColumns({
|
|
|
- currentPage: 1,
|
|
|
- pageSize: 2147483647,
|
|
|
- orderByProperty: "DisplayOrder",
|
|
|
- Ascending: true,
|
|
|
- totalPage: 1,
|
|
|
- totalCount: 1,
|
|
|
- filters: [
|
|
|
- { name: "filterText" },
|
|
|
- { name: "tableId", value: valId.value },
|
|
|
- ],
|
|
|
- });
|
|
|
- if (tableViewResult.model) {
|
|
|
- tableViewResult.model =
|
|
|
- tableViewResult.model.filter(
|
|
|
- (item) => item.isDisplayEnable
|
|
|
- );
|
|
|
- const promises = tableViewResult.model.map(
|
|
|
- async (item) => {
|
|
|
- if (!item.langName) {
|
|
|
- return {
|
|
|
- ...item,
|
|
|
- enName: "",
|
|
|
- };
|
|
|
- } else {
|
|
|
- const keyResult =
|
|
|
- await GetTableViewFieldKey(
|
|
|
- { key: item.langName },
|
|
|
- token
|
|
|
- );
|
|
|
- return {
|
|
|
- ...item,
|
|
|
- enName: keyResult.en,
|
|
|
- };
|
|
|
- }
|
|
|
- }
|
|
|
- );
|
|
|
- tableViewResult.model = await Promise.all(
|
|
|
- promises
|
|
|
- );
|
|
|
- }
|
|
|
-
|
|
|
- resolve({
|
|
|
- value: val.value,
|
|
|
- result: tableViewResult,
|
|
|
- });
|
|
|
- document.body.removeChild(mountNode);
|
|
|
- } catch (error) {
|
|
|
- ElMessage.error("未知错误!");
|
|
|
- }
|
|
|
- }
|
|
|
- }}
|
|
|
- >
|
|
|
- 确定并生成表列
|
|
|
- </ElButton>
|
|
|
- ) : (
|
|
|
- ""
|
|
|
- )}
|
|
|
-
|
|
|
<ElButton
|
|
|
type="primary"
|
|
|
disabled={!val.value}
|
|
@@ -225,7 +153,6 @@ export const getDataOrigin = (
|
|
|
>
|
|
|
确定
|
|
|
</ElButton>
|
|
|
- </>
|
|
|
),
|
|
|
}}
|
|
|
onClose={() => {
|