From c56cb87cd2aeba4d63938910b6a78117729573a1 Mon Sep 17 00:00:00 2001
From: yangyin <1850366751@qq.com>
Date: 星期五, 30 八月 2024 14:25:17 +0800
Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/WI/Web.Admin.V1.0

---
 src/api/supervisorAdmin/index.ts                          |   12 
 vite.config.ts                                            |    6 
 src/api/login/UserMenuData.ts                             |   32 +-
 package-lock.json                                         |  500 ++++++++++++++++++++++++++++++++
 src/components/form/jsonEditor/JsonEditor.vue             |   37 ++
 src/hooks/useQueryTable.ts                                |    1 
 package.json                                              |    3 
 customer_list/yw/static/config/route.js                   |   16 
 src/utils/util.ts                                         |   10 
 src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue          |  153 +++++----
 src/views/project/yw/lowCode/sqlAmis/edit/SqlAmisEdit.vue |   95 ++++--
 11 files changed, 729 insertions(+), 136 deletions(-)

diff --git a/customer_list/yw/static/config/route.js b/customer_list/yw/static/config/route.js
index aa57a74..4086aea 100644
--- a/customer_list/yw/static/config/route.js
+++ b/customer_list/yw/static/config/route.js
@@ -13,14 +13,14 @@
 		path: '/lowCode/sqlAmis',
 		component: '/project/yw/lowCode/sqlAmis/SqlAmis.vue',
 	},
-	{
-		name: 'SqlAmisEdit',
-		isKeepAlive: true,
-		isAffix: false,
-		path: '/lowCode/sqlAmis/edit',
-		component: '/project/yw/lowCode/sqlAmis/edit/SqlAmisEdit.vue',
-	},
-	//#region ====================== 鏁版嵁涓績 ======================
+	// {
+	// 	name: 'SqlAmisEdit',
+	// 	isKeepAlive: true,
+	// 	isAffix: false,
+	// 	path: '/lowCode/sqlAmis/edit',
+	// 	component: '/project/yw/lowCode/sqlAmis/edit/SqlAmisEdit.vue',
+	// },
+	//#region ====================== 鏁版嵁绠$悊 ======================
 
 	{
 		name: 'GraphIndex',
diff --git a/package-lock.json b/package-lock.json
index a86771e..b5d147c 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -28,9 +28,11 @@
 				"echarts-liquidfill": "^3.1.0",
 				"echarts-wordcloud": "^2.1.0",
 				"element-plus": "^2.2.36",
+				"fast-xml-parser": "^4.4.1",
 				"js-cookie": "^3.0.1",
 				"js-table2excel": "^1.0.3",
 				"json-bigint": "^1.0.0",
+				"json-editor-vue3": "^1.1.1",
 				"lodash": "^4.17.21",
 				"mitt": "^3.0.0",
 				"moment": "^2.29.4",
@@ -50,6 +52,7 @@
 				"vue-router": "^4.1.6"
 			},
 			"devDependencies": {
+				"@originjs/vite-plugin-commonjs": "^1.0.3",
 				"@types/lodash": "^4.17.7",
 				"@types/node": "^18.15.0",
 				"@types/nprogress": "^0.2.0",
@@ -1136,6 +1139,67 @@
 				"node": ">= 8"
 			}
 		},
+		"node_modules/@originjs/vite-plugin-commonjs": {
+			"version": "1.0.3",
+			"resolved": "https://registry.npmmirror.com/@originjs/vite-plugin-commonjs/-/vite-plugin-commonjs-1.0.3.tgz",
+			"integrity": "sha512-KuEXeGPptM2lyxdIEJ4R11+5ztipHoE7hy8ClZt3PYaOVQ/pyngd2alaSrPnwyFeOW1UagRBaQ752aA1dTMdOQ==",
+			"dev": true,
+			"dependencies": {
+				"esbuild": "^0.14.14"
+			}
+		},
+		"node_modules/@originjs/vite-plugin-commonjs/node_modules/@esbuild/linux-loong64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.14.54.tgz",
+			"integrity": "sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw==",
+			"cpu": [
+				"loong64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"linux"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/@originjs/vite-plugin-commonjs/node_modules/esbuild": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.14.54.tgz",
+			"integrity": "sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA==",
+			"dev": true,
+			"hasInstallScript": true,
+			"bin": {
+				"esbuild": "bin/esbuild"
+			},
+			"engines": {
+				"node": ">=12"
+			},
+			"optionalDependencies": {
+				"@esbuild/linux-loong64": "0.14.54",
+				"esbuild-android-64": "0.14.54",
+				"esbuild-android-arm64": "0.14.54",
+				"esbuild-darwin-64": "0.14.54",
+				"esbuild-darwin-arm64": "0.14.54",
+				"esbuild-freebsd-64": "0.14.54",
+				"esbuild-freebsd-arm64": "0.14.54",
+				"esbuild-linux-32": "0.14.54",
+				"esbuild-linux-64": "0.14.54",
+				"esbuild-linux-arm": "0.14.54",
+				"esbuild-linux-arm64": "0.14.54",
+				"esbuild-linux-mips64le": "0.14.54",
+				"esbuild-linux-ppc64le": "0.14.54",
+				"esbuild-linux-riscv64": "0.14.54",
+				"esbuild-linux-s390x": "0.14.54",
+				"esbuild-netbsd-64": "0.14.54",
+				"esbuild-openbsd-64": "0.14.54",
+				"esbuild-sunos-64": "0.14.54",
+				"esbuild-windows-32": "0.14.54",
+				"esbuild-windows-64": "0.14.54",
+				"esbuild-windows-arm64": "0.14.54"
+			}
+		},
 		"node_modules/@pkgjs/parseargs": {
 			"version": "0.11.0",
 			"resolved": "https://registry.npmmirror.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
@@ -1372,6 +1436,11 @@
 			"os": [
 				"win32"
 			]
+		},
+		"node_modules/@sphinxxxx/color-conversion": {
+			"version": "2.2.2",
+			"resolved": "https://registry.npmmirror.com/@sphinxxxx/color-conversion/-/color-conversion-2.2.2.tgz",
+			"integrity": "sha512-XExJS3cLqgrmNBIP3bBw6+1oQ1ksGjFh0+oClDKFYpCCqx/hlqwWO5KO/S63fzUo67SxI9dMrF0y5T/Ey7h8Zw=="
 		},
 		"node_modules/@transloadit/prettier-bytes": {
 			"version": "0.0.7",
@@ -2082,6 +2151,11 @@
 				"snabbdom": "^3.1.0"
 			}
 		},
+		"node_modules/ace-builds": {
+			"version": "1.36.1",
+			"resolved": "https://registry.npmmirror.com/ace-builds/-/ace-builds-1.36.1.tgz",
+			"integrity": "sha512-/Rngkz+KgR7GFF16zO3itstku3wezjp4PTqrev3QvGfEix+Ilzsgp6X/VFSaprH9Cqd36rwT8c6eXwMKVgc+Kg=="
+		},
 		"node_modules/acorn": {
 			"version": "8.12.1",
 			"resolved": "https://registry.npmmirror.com/acorn/-/acorn-8.12.1.tgz",
@@ -2107,7 +2181,6 @@
 			"version": "6.12.6",
 			"resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz",
 			"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
-			"dev": true,
 			"dependencies": {
 				"fast-deep-equal": "^3.1.1",
 				"fast-json-stable-stringify": "^2.0.0",
@@ -2867,6 +2940,326 @@
 				"@esbuild/win32-x64": "0.21.5"
 			}
 		},
+		"node_modules/esbuild-android-64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-android-64/-/esbuild-android-64-0.14.54.tgz",
+			"integrity": "sha512-Tz2++Aqqz0rJ7kYBfz+iqyE3QMycD4vk7LBRyWaAVFgFtQ/O8EJOnVmTOiDWYZ/uYzB4kvP+bqejYdVKzE5lAQ==",
+			"cpu": [
+				"x64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"android"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-android-arm64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.54.tgz",
+			"integrity": "sha512-F9E+/QDi9sSkLaClO8SOV6etqPd+5DgJje1F9lOWoNncDdOBL2YF59IhsWATSt0TLZbYCf3pNlTHvVV5VfHdvg==",
+			"cpu": [
+				"arm64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"android"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-darwin-64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.54.tgz",
+			"integrity": "sha512-jtdKWV3nBviOd5v4hOpkVmpxsBy90CGzebpbO9beiqUYVMBtSc0AL9zGftFuBon7PNDcdvNCEuQqw2x0wP9yug==",
+			"cpu": [
+				"x64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"darwin"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-darwin-arm64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.54.tgz",
+			"integrity": "sha512-OPafJHD2oUPyvJMrsCvDGkRrVCar5aVyHfWGQzY1dWnzErjrDuSETxwA2HSsyg2jORLY8yBfzc1MIpUkXlctmw==",
+			"cpu": [
+				"arm64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"darwin"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-freebsd-64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.54.tgz",
+			"integrity": "sha512-OKwd4gmwHqOTp4mOGZKe/XUlbDJ4Q9TjX0hMPIDBUWWu/kwhBAudJdBoxnjNf9ocIB6GN6CPowYpR/hRCbSYAg==",
+			"cpu": [
+				"x64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"freebsd"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-freebsd-arm64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.54.tgz",
+			"integrity": "sha512-sFwueGr7OvIFiQT6WeG0jRLjkjdqWWSrfbVwZp8iMP+8UHEHRBvlaxL6IuKNDwAozNUmbb8nIMXa7oAOARGs1Q==",
+			"cpu": [
+				"arm64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"freebsd"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-linux-32": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-linux-32/-/esbuild-linux-32-0.14.54.tgz",
+			"integrity": "sha512-1ZuY+JDI//WmklKlBgJnglpUL1owm2OX+8E1syCD6UAxcMM/XoWd76OHSjl/0MR0LisSAXDqgjT3uJqT67O3qw==",
+			"cpu": [
+				"ia32"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"linux"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-linux-64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-linux-64/-/esbuild-linux-64-0.14.54.tgz",
+			"integrity": "sha512-EgjAgH5HwTbtNsTqQOXWApBaPVdDn7XcK+/PtJwZLT1UmpLoznPd8c5CxqsH2dQK3j05YsB3L17T8vE7cp4cCg==",
+			"cpu": [
+				"x64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"linux"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-linux-arm": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.54.tgz",
+			"integrity": "sha512-qqz/SjemQhVMTnvcLGoLOdFpCYbz4v4fUo+TfsWG+1aOu70/80RV6bgNpR2JCrppV2moUQkww+6bWxXRL9YMGw==",
+			"cpu": [
+				"arm"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"linux"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-linux-arm64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.54.tgz",
+			"integrity": "sha512-WL71L+0Rwv+Gv/HTmxTEmpv0UgmxYa5ftZILVi2QmZBgX3q7+tDeOQNqGtdXSdsL8TQi1vIaVFHUPDe0O0kdig==",
+			"cpu": [
+				"arm64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"linux"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-linux-mips64le": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.54.tgz",
+			"integrity": "sha512-qTHGQB8D1etd0u1+sB6p0ikLKRVuCWhYQhAHRPkO+OF3I/iSlTKNNS0Lh2Oc0g0UFGguaFZZiPJdJey3AGpAlw==",
+			"cpu": [
+				"mips64el"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"linux"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-linux-ppc64le": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.54.tgz",
+			"integrity": "sha512-j3OMlzHiqwZBDPRCDFKcx595XVfOfOnv68Ax3U4UKZ3MTYQB5Yz3X1mn5GnodEVYzhtZgxEBidLWeIs8FDSfrQ==",
+			"cpu": [
+				"ppc64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"linux"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-linux-riscv64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.54.tgz",
+			"integrity": "sha512-y7Vt7Wl9dkOGZjxQZnDAqqn+XOqFD7IMWiewY5SPlNlzMX39ocPQlOaoxvT4FllA5viyV26/QzHtvTjVNOxHZg==",
+			"cpu": [
+				"riscv64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"linux"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-linux-s390x": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.54.tgz",
+			"integrity": "sha512-zaHpW9dziAsi7lRcyV4r8dhfG1qBidQWUXweUjnw+lliChJqQr+6XD71K41oEIC3Mx1KStovEmlzm+MkGZHnHA==",
+			"cpu": [
+				"s390x"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"linux"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-netbsd-64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.54.tgz",
+			"integrity": "sha512-PR01lmIMnfJTgeU9VJTDY9ZerDWVFIUzAtJuDHwwceppW7cQWjBBqP48NdeRtoP04/AtO9a7w3viI+PIDr6d+w==",
+			"cpu": [
+				"x64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"netbsd"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-openbsd-64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.54.tgz",
+			"integrity": "sha512-Qyk7ikT2o7Wu76UsvvDS5q0amJvmRzDyVlL0qf5VLsLchjCa1+IAvd8kTBgUxD7VBUUVgItLkk609ZHUc1oCaw==",
+			"cpu": [
+				"x64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"openbsd"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-sunos-64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.54.tgz",
+			"integrity": "sha512-28GZ24KmMSeKi5ueWzMcco6EBHStL3B6ubM7M51RmPwXQGLe0teBGJocmWhgwccA1GeFXqxzILIxXpHbl9Q/Kw==",
+			"cpu": [
+				"x64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"sunos"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-windows-32": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-windows-32/-/esbuild-windows-32-0.14.54.tgz",
+			"integrity": "sha512-T+rdZW19ql9MjS7pixmZYVObd9G7kcaZo+sETqNH4RCkuuYSuv9AGHUVnPoP9hhuE1WM1ZimHz1CIBHBboLU7w==",
+			"cpu": [
+				"ia32"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"win32"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-windows-64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-windows-64/-/esbuild-windows-64-0.14.54.tgz",
+			"integrity": "sha512-AoHTRBUuYwXtZhjXZbA1pGfTo8cJo3vZIcWGLiUcTNgHpJJMC1rVA44ZereBHMJtotyN71S8Qw0npiCIkW96cQ==",
+			"cpu": [
+				"x64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"win32"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
+		"node_modules/esbuild-windows-arm64": {
+			"version": "0.14.54",
+			"resolved": "https://registry.npmmirror.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.54.tgz",
+			"integrity": "sha512-M0kuUvXhot1zOISQGXwWn6YtS+Y/1RT9WrVIOywZnJHo3jCDyewAc79aKNQWFCQm+xNHVTq9h8dZKvygoXQQRg==",
+			"cpu": [
+				"arm64"
+			],
+			"dev": true,
+			"optional": true,
+			"os": [
+				"win32"
+			],
+			"engines": {
+				"node": ">=12"
+			}
+		},
 		"node_modules/escalade": {
 			"version": "3.1.2",
 			"resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.1.2.tgz",
@@ -3136,8 +3529,7 @@
 		"node_modules/fast-deep-equal": {
 			"version": "3.1.3",
 			"resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
-			"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
-			"dev": true
+			"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
 		},
 		"node_modules/fast-glob": {
 			"version": "3.3.2",
@@ -3170,14 +3562,34 @@
 		"node_modules/fast-json-stable-stringify": {
 			"version": "2.1.0",
 			"resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
-			"integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
-			"dev": true
+			"integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
 		},
 		"node_modules/fast-levenshtein": {
 			"version": "2.0.6",
 			"resolved": "https://registry.npmmirror.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
 			"integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
 			"dev": true
+		},
+		"node_modules/fast-xml-parser": {
+			"version": "4.4.1",
+			"resolved": "https://registry.npmmirror.com/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz",
+			"integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==",
+			"funding": [
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/NaturalIntelligence"
+				},
+				{
+					"type": "paypal",
+					"url": "https://paypal.me/naturalintelligence"
+				}
+			],
+			"dependencies": {
+				"strnum": "^1.0.5"
+			},
+			"bin": {
+				"fxparser": "src/cli/cli.js"
+			}
 		},
 		"node_modules/fastq": {
 			"version": "1.17.1",
@@ -3732,6 +4144,11 @@
 				"@pkgjs/parseargs": "^0.11.0"
 			}
 		},
+		"node_modules/javascript-natural-sort": {
+			"version": "0.7.1",
+			"resolved": "https://registry.npmmirror.com/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz",
+			"integrity": "sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw=="
+		},
 		"node_modules/jiti": {
 			"version": "1.21.6",
 			"resolved": "https://registry.npmmirror.com/jiti/-/jiti-1.21.6.tgz",
@@ -3739,6 +4156,14 @@
 			"dev": true,
 			"bin": {
 				"jiti": "bin/jiti.js"
+			}
+		},
+		"node_modules/jmespath": {
+			"version": "0.16.0",
+			"resolved": "https://registry.npmmirror.com/jmespath/-/jmespath-0.16.0.tgz",
+			"integrity": "sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==",
+			"engines": {
+				"node": ">= 0.6.0"
 			}
 		},
 		"node_modules/js-cookie": {
@@ -3780,17 +4205,45 @@
 			"integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
 			"dev": true
 		},
+		"node_modules/json-editor-vue3": {
+			"version": "1.1.1",
+			"resolved": "https://registry.npmmirror.com/json-editor-vue3/-/json-editor-vue3-1.1.1.tgz",
+			"integrity": "sha512-3qslVNZAY+roVfL10ukuaAw1ia9YpWdLO9PnBL+4SuM5a6R3oWCSQU6dLTTPd/dVtqhIefNn4QmthAioYOBHeA==",
+			"dependencies": {
+				"jsoneditor": "^9.5.6"
+			}
+		},
 		"node_modules/json-schema-traverse": {
 			"version": "0.4.1",
 			"resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
-			"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
-			"dev": true
+			"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
+		},
+		"node_modules/json-source-map": {
+			"version": "0.6.1",
+			"resolved": "https://registry.npmmirror.com/json-source-map/-/json-source-map-0.6.1.tgz",
+			"integrity": "sha512-1QoztHPsMQqhDq0hlXY5ZqcEdUzxQEIxgFkKl4WUp2pgShObl+9ovi4kRh2TfvAfxAoHOJ9vIMEqk3k4iex7tg=="
 		},
 		"node_modules/json-stable-stringify-without-jsonify": {
 			"version": "1.0.1",
 			"resolved": "https://registry.npmmirror.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
 			"integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
 			"dev": true
+		},
+		"node_modules/jsoneditor": {
+			"version": "9.10.5",
+			"resolved": "https://registry.npmmirror.com/jsoneditor/-/jsoneditor-9.10.5.tgz",
+			"integrity": "sha512-fVZ0NMt+zm4rqTKBv2x7zPdLeaRyKo1EjJkaR1QjK4gEM1rMwICILYSW1OPxSc1qqyAoDaA/eeNrluKoxOocCA==",
+			"dependencies": {
+				"ace-builds": "^1.31.1",
+				"ajv": "^6.12.6",
+				"javascript-natural-sort": "^0.7.1",
+				"jmespath": "^0.16.0",
+				"json-source-map": "^0.6.1",
+				"jsonrepair": "3.1.0",
+				"mobius1-selectr": "^2.4.13",
+				"picomodal": "^3.0.0",
+				"vanilla-picker": "^2.12.2"
+			}
 		},
 		"node_modules/jsonfile": {
 			"version": "6.1.0",
@@ -3802,6 +4255,14 @@
 			},
 			"optionalDependencies": {
 				"graceful-fs": "^4.1.6"
+			}
+		},
+		"node_modules/jsonrepair": {
+			"version": "3.1.0",
+			"resolved": "https://registry.npmmirror.com/jsonrepair/-/jsonrepair-3.1.0.tgz",
+			"integrity": "sha512-idqReg23J0PVRAADmZMc5xQM3xeOX5bTB6OTyMnzq33IXJXmn9iJuWIEvGmrN80rQf4d7uLTMEDwpzujNcI0Rg==",
+			"bin": {
+				"jsonrepair": "bin/cli.js"
 			}
 		},
 		"node_modules/keyv": {
@@ -4015,6 +4476,11 @@
 			"version": "3.0.1",
 			"resolved": "https://registry.npmmirror.com/mitt/-/mitt-3.0.1.tgz",
 			"integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw=="
+		},
+		"node_modules/mobius1-selectr": {
+			"version": "2.4.13",
+			"resolved": "https://registry.npmmirror.com/mobius1-selectr/-/mobius1-selectr-2.4.13.tgz",
+			"integrity": "sha512-Mk9qDrvU44UUL0EBhbAA1phfQZ7aMZPjwtL7wkpiBzGh8dETGqfsh50mWoX9EkjDlkONlErWXArHCKfoxVg0Bw=="
 		},
 		"node_modules/moment": {
 			"version": "2.30.1",
@@ -4304,6 +4770,11 @@
 				"url": "https://github.com/sponsors/jonschlinkert"
 			}
 		},
+		"node_modules/picomodal": {
+			"version": "3.0.0",
+			"resolved": "https://registry.npmmirror.com/picomodal/-/picomodal-3.0.0.tgz",
+			"integrity": "sha512-FoR3TDfuLlqUvcEeK5ifpKSVVns6B4BQvc8SDF6THVMuadya6LLtji0QgUDSStw0ZR2J7I6UGi5V2V23rnPWTw=="
+		},
 		"node_modules/pify": {
 			"version": "2.3.0",
 			"resolved": "https://registry.npmmirror.com/pify/-/pify-2.3.0.tgz",
@@ -4576,7 +5047,6 @@
 			"version": "2.3.1",
 			"resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz",
 			"integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
-			"dev": true,
 			"engines": {
 				"node": ">=6"
 			}
@@ -5048,6 +5518,11 @@
 				"url": "https://github.com/sponsors/sindresorhus"
 			}
 		},
+		"node_modules/strnum": {
+			"version": "1.0.5",
+			"resolved": "https://registry.npmmirror.com/strnum/-/strnum-1.0.5.tgz",
+			"integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA=="
+		},
 		"node_modules/style-mod": {
 			"version": "4.1.2",
 			"resolved": "https://registry.npmmirror.com/style-mod/-/style-mod-4.1.2.tgz",
@@ -5360,7 +5835,6 @@
 			"version": "4.4.1",
 			"resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz",
 			"integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
-			"dev": true,
 			"dependencies": {
 				"punycode": "^2.1.0"
 			}
@@ -5383,6 +5857,14 @@
 				"uuid": "dist/bin/uuid"
 			}
 		},
+		"node_modules/vanilla-picker": {
+			"version": "2.12.3",
+			"resolved": "https://registry.npmmirror.com/vanilla-picker/-/vanilla-picker-2.12.3.tgz",
+			"integrity": "sha512-qVkT1E7yMbUsB2mmJNFmaXMWE2hF8ffqzMMwe9zdAikd8u2VfnsVY2HQcOUi2F38bgbxzlJBEdS1UUhOXdF9GQ==",
+			"dependencies": {
+				"@sphinxxxx/color-conversion": "^2.2.2"
+			}
+		},
 		"node_modules/vite": {
 			"version": "5.4.2",
 			"resolved": "https://registry.npmmirror.com/vite/-/vite-5.4.2.tgz",
diff --git a/package.json b/package.json
index 50ce82e..199c228 100644
--- a/package.json
+++ b/package.json
@@ -38,9 +38,11 @@
 		"echarts-liquidfill": "^3.1.0",
 		"echarts-wordcloud": "^2.1.0",
 		"element-plus": "^2.2.36",
+		"fast-xml-parser": "^4.4.1",
 		"js-cookie": "^3.0.1",
 		"js-table2excel": "^1.0.3",
 		"json-bigint": "^1.0.0",
+		"json-editor-vue3": "^1.1.1",
 		"lodash": "^4.17.21",
 		"mitt": "^3.0.0",
 		"moment": "^2.29.4",
@@ -60,6 +62,7 @@
 		"vue-router": "^4.1.6"
 	},
 	"devDependencies": {
+		"@originjs/vite-plugin-commonjs": "^1.0.3",
 		"@types/lodash": "^4.17.7",
 		"@types/node": "^18.15.0",
 		"@types/nprogress": "^0.2.0",
diff --git a/src/api/login/UserMenuData.ts b/src/api/login/UserMenuData.ts
index adaa400..0d97036 100644
--- a/src/api/login/UserMenuData.ts
+++ b/src/api/login/UserMenuData.ts
@@ -46,22 +46,22 @@
 				SortCode: 2,
 				Description: '',
 			},
-			{
-				Children: [],
-				ID: '2',
-				ParentID: '1742436890822447104',
-				Type: 2,
-				Name: 'SQL缂栬緫鍣�',
-				Path: '/lowCode/sqlAmis/edit',
-				Permission: '',
-				Icon: 'ywifont ywicon-a-appround15',
-				IsIframe: false,
-				OutLink: '',
-				IsHide: true,
-				Weight: 0,
-				SortCode: 2,
-				Description: '',
-			},
+			// {
+			// 	Children: [],
+			// 	ID: '2',
+			// 	ParentID: '1742436890822447104',
+			// 	Type: 2,
+			// 	Name: 'SQL缂栬緫鍣�',
+			// 	Path: '/lowCode/sqlAmis/edit',
+			// 	Permission: '',
+			// 	Icon: 'ywifont ywicon-a-appround15',
+			// 	IsIframe: false,
+			// 	OutLink: '',
+			// 	IsHide: true,
+			// 	Weight: 0,
+			// 	SortCode: 2,
+			// 	Description: '',
+			// },
 		],
 	},
 	{
diff --git a/src/api/supervisorAdmin/index.ts b/src/api/supervisorAdmin/index.ts
index 42aae31..f8a2866 100644
--- a/src/api/supervisorAdmin/index.ts
+++ b/src/api/supervisorAdmin/index.ts
@@ -9,3 +9,15 @@
 		method: 'POST',
 	});
 };
+
+
+/**
+ * @summary description
+ */
+export const getAmisXml = async (params,req: any = request) => {
+	return req({
+		url: '/admin/supervisor/get_amis_xml',
+		method: 'POST',
+		data:params
+	});
+};
diff --git a/src/components/form/jsonEditor/JsonEditor.vue b/src/components/form/jsonEditor/JsonEditor.vue
new file mode 100644
index 0000000..0cabb3b
--- /dev/null
+++ b/src/components/form/jsonEditor/JsonEditor.vue
@@ -0,0 +1,37 @@
+<template>
+	<JsonEditorVue
+		v-bind="$attrs"
+		language="zh-CN"
+		:options="{
+			search: false,
+		}"
+	/>
+</template>
+
+<script setup lang="ts">
+import { computed } from 'vue';
+import JsonEditorVue from 'json-editor-vue3';
+
+const props = defineProps({
+	showToolbar: {
+		type: Boolean,
+		default: false,
+	},
+	showChangeModes: {
+		type: Boolean,
+		default: false,
+	},
+});
+
+const editorMenuDisplay = computed(() => (props.showToolbar ? 'block' : 'none'));
+const editorModeDisplay = computed(() => (props.showChangeModes ? 'block' : 'none'));
+</script>
+<style scoped lang="scss">
+:deep(.jsoneditor-menu) {
+	display: v-bind(editorMenuDisplay);
+}
+
+:deep(.jsoneditor-modes) {
+	display: v-bind(editorModeDisplay);
+}
+</style>
diff --git a/src/hooks/useQueryTable.ts b/src/hooks/useQueryTable.ts
index f484337..34d0a6e 100644
--- a/src/hooks/useQueryTable.ts
+++ b/src/hooks/useQueryTable.ts
@@ -60,7 +60,6 @@
 				displayTableData.value = convertListToTree(deepClone(val));
 		  }
 		: (val) => {
-			console.log("馃殌 ~ val:", val)
 				displayTableData.value = val;
 		  };
 
diff --git a/src/utils/util.ts b/src/utils/util.ts
index ca816d4..b6e5e75 100644
--- a/src/utils/util.ts
+++ b/src/utils/util.ts
@@ -413,8 +413,8 @@
  */
 export const deleteCurrentRow = (
 	row: {
-		ID: string;
-		Name: string;
+		id: string;
+		title: string;
 		[key: string]: any;
 	},
 	label: String,
@@ -424,7 +424,7 @@
 	showRowName = true,
 	extraParams: Record<string, any> = {}
 ) => {
-	const tip = showRowName ? `纭畾鍒犻櫎${label}锛氥��${row.Name}銆戯紵` : `纭畾鍒犻櫎褰撳墠${label}锛焋;
+	const tip = showRowName ? `纭畾鍒犻櫎${label}锛氥��${row.title}銆戯紵` : `纭畾鍒犻櫎褰撳墠${label}锛焋;
 	ElMessageBox.confirm(tip, '鎻愮ず', {
 		confirmButtonText: '纭畾',
 		cancelButtonText: '鍙栨秷',
@@ -436,14 +436,14 @@
 		}
 		const res = await deleteApi(
 			{
-				ID: row.ID,
+				ID: row.id,
 				...rawExtraParams,
 			},
 			req
 		);
 		if (res.Data) {
 			ElMessage.success(`鍒犻櫎${label}鎴愬姛`);
-			callback(row.ID);
+			callback(row.id);
 		} else {
 			ElMessage.error(`鍒犻櫎${label}澶辫触`);
 		}
diff --git a/src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue b/src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue
index 2957131..a545bdc 100644
--- a/src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue
+++ b/src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue
@@ -1,5 +1,5 @@
 <template>
-	<HMContainer type="card">
+	<HMContainer type="card" v-if="supervisorMgrShow">
 		<template #header>
 			<el-form ref="queryFormRef" :inline="true" :model="queryParams">
 				<el-form-item label="鏍囬" prop="title">
@@ -14,19 +14,28 @@
 			</el-form>
 		</template>
 		<template #main>
+			<!-- <div class="h-screen">
+				<p>vue-json-editor</p>
+				<JsonEditorVue v-model="jsonMsg"></JsonEditorVue>
+			</div> -->
 			<el-table
 				v-loading="tableLoading"
 				ref="draggableTableRef"
 				class="h100"
 				border
-				row-key="ID"
-				:tree-props="{ children: 'Children', hasChildren: 'hasChildren' }"
-				:expand-row-keys="treeTableExpandKeys"
-				@expand-change="tableExpandChange"
 				:row-class-name="isDragStatus ? 'cursor-move' : 'cursor-pointer'"
 				:data="displayTableData"
 				highlight-current-row
 			>
+				<el-table-column type="expand" fixed="left">
+					<template #default="scope">
+						<div class="px-4">
+							<h3 class="mb-2">椤甸潰鍙傛暟</h3>
+							<JsonEditor currentMode="view" :modelValue="scope.row.args" />
+						</div>
+					</template>
+				</el-table-column>
+
 				<el-table-column prop="title" label="鏍囬" width="300" fixed="left" show-overflow-tooltip> </el-table-column>
 				<el-table-column prop="prompt" label="鎻愮ず璇�" show-overflow-tooltip> </el-table-column>
 				<el-table-column prop="published" label="鐘舵��" width="80" show-overflow-tooltip>
@@ -38,8 +47,6 @@
 				<el-table-column label="鍒涘缓鏃堕棿" prop="create_time" width="105" show-overflow-tooltip> </el-table-column>
 				<el-table-column label="鏇存柊鏃堕棿" prop="update_time" width="105" show-overflow-tooltip> </el-table-column>
 				<el-table-column label="澶囨敞" prop="note" show-overflow-tooltip> </el-table-column>
-				<!-- <el-table-column prop="Code" label="缂栫爜" show-overflow-tooltip> </el-table-column>
-				<el-table-column prop="Description" label="璇存槑" width="550" show-overflow-tooltip> </el-table-column> -->
 				<el-table-column label="鎿嶄綔" width="120" fixed="right" show-overflow-tooltip>
 					<template #default="scope">
 						<div class="space-x-2.5">
@@ -50,7 +57,17 @@
 								<i class="ywifont ywicon-bianji !text-[14px] text-blue-400 cursor-pointer" @click="openOperateDialog(scope.row)"></i>
 							</el-tooltip>
 							<el-tooltip effect="dark" content="鍒犻櫎" placement="top">
-								<i class="ywifont ywicon-shanchu !text-[17px] text-red-400 cursor-pointer" @click="openOperateDialog(scope.row)"></i>
+								<i
+									class="ywifont ywicon-shanchu !text-[17px] text-red-400 cursor-pointer"
+									@click="
+										() => {
+											deleteCurrentRow(scope.row, '椤甸潰', supervisorAdminApi.DeleteAAssetsEquipmentCostCategory, () => {
+												const foundIndex = tableData.findIndex((item) => item === scope.row);
+												foundIndex > -1 && tableData.splice(foundIndex, 1);
+											});
+										}
+									"
+								></i>
 							</el-tooltip>
 						</div>
 					</template>
@@ -61,45 +78,44 @@
 			v-model="dialogIsShow"
 			:headerIcon="dialogHeaderIcon"
 			:title="dialogTitle"
-			width="400"
+			width="680"
 			@dlgClosed="closeDialog"
 			@submit="submitFormValue"
 		>
-			<el-form :model="dialogFormValue" ref="dialogFormRef" :rules="dialogFormRules" label-width="55">
-				<el-form-item label="鐖剁骇" prop="ParentID" v-if="!isEditDialog">
-					<el-tree-select
-						filterable
-						style="width: 100%"
-						v-model="dialogFormValue.ParentID"
-						:data="tableTreeData"
-						node-key="id"
-						:clearable="true"
-						:accordion="true"
-						:expandNode="false"
-						:check-strictly="true"
-					>
-					</el-tree-select>
+			<el-form :model="dialogFormValue" ref="dialogFormRef" :rules="dialogFormRules" label-width="78">
+				<el-form-item label="鏍囬" prop="title">
+					<el-input v-model="dialogFormValue.title"></el-input>
 				</el-form-item>
-				<el-form-item label="undefined" prop="ParentID">
-					<el-input v-model="dialogFormValue.ParentID"></el-input>
+				<el-form-item label="鎻愮ず璇�" prop="prompt">
+					<el-input v-model="dialogFormValue.prompt"></el-input>
 				</el-form-item>
-				<el-form-item label="鏍囬" prop="Name">
-					<el-input v-model="dialogFormValue.Name"></el-input>
+				<el-form-item label="鐘舵��" prop="published">
+					<el-select v-model="dialogFormValue.published">
+						<el-option
+							v-for="item in Object.keys(supervisorPublishedMap)"
+							:key="item"
+							:value="item"
+							:label="supervisorPublishedMap[item]"
+						></el-option>
+					</el-select>
 				</el-form-item>
-				<el-form-item label="缂栫爜" prop="Code">
-					<el-input v-model="dialogFormValue.Code"></el-input>
+				<el-form-item label="澶囨敞" prop="note">
+					<el-input v-model="dialogFormValue.note" type="textarea" :rows="3"></el-input>
 				</el-form-item>
-				<el-form-item label="璇存槑" prop="Description">
-					<el-input v-model="dialogFormValue.Description" type="textarea" :rows="3"></el-input>
-				</el-form-item>
+				<div class="flex">
+					<span class="flex-0 ml-2.5">椤甸潰鍙傛暟</span>
+					<JsonEditor class="ml-3 h-80" :showToolbar="true" currentMode="form" v-model="dialogFormValue.args" />
+				</div>
 			</el-form>
 		</ywDialog>
 	</HMContainer>
+	<SqlAmisEdit v-else :supervisor="sqlEditMapSupervisor" @backLastPage="backLastPage"></SqlAmisEdit>
 </template>
 
 <script setup lang="ts">
 import type { FormInstance, FormRules } from 'element-plus';
 import { ElMessage } from 'element-plus';
+import { deleteCurrentRow } from '/@/utils/util';
 
 import { computed, onMounted, ref } from 'vue';
 import ywDialog from '/@/components/dialog/yw-dialog.vue';
@@ -110,11 +126,10 @@
 // import { useValidateUniqueness } from '/@/hooks/useValidateUniqueness';
 import { deepClone } from '/@/utils/other';
 
-import { supervisorPublishedMap } from './types';
+import SqlAmisEdit from './edit/SqlAmisEdit.vue';
+import { SupervisorPublished, supervisorPublishedMap } from './types';
 import * as supervisorAdminApi from '/@/api/supervisorAdmin';
-import { convertListToTree, tableCellCenterExceptColumn } from '/@/utils/util';
-import { gotoRoute } from '/@/utils/route';
-const tableTreeData = computed(() => convertListToTree(tableData.value));
+import JsonEditor from '/@/components/form/jsonEditor/JsonEditor.vue';
 
 //#region ====================== 琛ㄦ牸鏁版嵁锛宼able init ======================
 const tableLoading = ref(false);
@@ -148,7 +163,7 @@
 //#region ====================== 澧炲姞銆佷慨鏀硅褰曟搷浣�, dialog init======================
 const isEditDialog = ref(false);
 const dialogTitle = computed(() => {
-	return isEditDialog.value ? '淇敼鍒嗙粍' : '娣诲姞鍒嗙粍';
+	return isEditDialog.value ? '淇敼椤甸潰' : '娣诲姞椤甸潰';
 });
 const dialogHeaderIcon = computed(() => {
 	return isEditDialog.value ? 'ele-Edit' : 'ele-Plus';
@@ -158,19 +173,19 @@
 const dialogFormRef = ref<FormInstance>(null);
 
 const dialogFormRules = ref<FormRules>({
-	ParentID: [{ required: true, message: '璇烽�夋嫨undefined', trigger: 'change' }],
-	Name: [{ required: true, message: '璇疯緭鍏ユ爣棰�', trigger: 'blur' }],
+	title: [{ required: true, message: '璇疯緭鍏ユ爣棰�', trigger: 'change' }],
+	// prompt: [{ required: true, message: '杈撳叆鎻愮ず璇�', trigger: 'blur' }],
 });
 const openOperateDialog = (row?) => {
 	if (row) {
 		isEditDialog.value = true;
-		const { ID, ParentID, Name, Code, Description } = row;
+		const { id, note, prompt, published, title, args } = row;
 
-		dialogFormValue.value = deepClone({ ID, ParentID, Name, Code, Description });
+		dialogFormValue.value = deepClone({ id, note, prompt, published, title, args });
 	} else {
 		isEditDialog.value = false;
 
-		dialogFormValue.value = { ParentID: '', Name: '', Code: '', Description: '' };
+		dialogFormValue.value = { title: null, prompt: null, published: SupervisorPublished.Y, note: null };
 	}
 	dialogIsShow.value = true;
 };
@@ -187,22 +202,32 @@
 		const res = await supervisorAdminApi.UpdateADictGroup(dialogFormValue.value);
 		const resData = res.Data;
 		if (resData) {
-			getTableData();
+			const foundIndex = tableData.value.find((item) => item.id === dialogFormValue.value.id);
+			if (foundIndex > -1) {
+				tableData.value[foundIndex] = {
+					...tableData.value[foundIndex],
+					...dialogFormValue.value,
+				};
+			}
 			closeDialog();
-			ElMessage.success('淇敼鍒嗙粍鎴愬姛');
+			ElMessage.success('淇敼椤甸潰鎴愬姛');
 		} else {
-			ElMessage.error('淇敼鍒嗙粍澶辫触');
+			ElMessage.error('淇敼椤甸潰澶辫触');
 		}
 	} else {
 		const res = await supervisorAdminApi.InsertADictGroup(dialogFormValue.value);
 		const resData = res.Data;
 		if (resData === '0') {
-			ElMessage.error('娣诲姞鍒嗙粍澶辫触');
+			ElMessage.error('娣诲姞椤甸潰澶辫触');
 			return;
 		}
-		getTableData();
+		const newData = {
+			id: resData,
+			...dialogFormValue.value,
+		};
+		tableData.value.push(newData);
 		closeDialog();
-		ElMessage.success('娣诲姞鍒嗙粍鎴愬姛');
+		ElMessage.success('娣诲姞椤甸潰鎴愬姛');
 	}
 };
 
@@ -216,32 +241,28 @@
 };
 usePageDisplay(
 	() => {
-		queryFormRef.value.$el.addEventListener('keypress', pressEnterSearch);
+		queryFormRef.value?.$el?.addEventListener('keypress', pressEnterSearch);
 	},
 	() => {
-		queryFormRef.value?.$el.removeEventListener('keypress', pressEnterSearch);
+		queryFormRef.value?.$el?.removeEventListener('keypress', pressEnterSearch);
 	}
 );
 //#endregion
-//#region ====================== 瑙e喅鎷栨嫿灞曞紑鐘舵�佸け鏁堥棶棰� ======================
-const treeTableExpandKeys = ref([]);
-const tableExpandChange = (row, expanded) => {
-	if (expanded) {
-		treeTableExpandKeys.value.push(row.ID);
-	} else {
-		const idx = treeTableExpandKeys.value.indexOf(row.ID);
-		treeTableExpandKeys.value.splice(idx, 1);
-	}
-}; //#endregion
-
 
 //#region ====================== sql ======================
-	const editSqlClick = () => {
-		gotoRoute({
-			name:'SqlAmisEdit'
-		})
-	};
+
+const supervisorMgrShow = ref(true);
+const sqlEditMapSupervisor = ref(null);
+const editSqlClick = (item) => {
+	sqlEditMapSupervisor.value = item;
+	supervisorMgrShow.value = false;
+};
+
+const backLastPage = () => {
+	supervisorMgrShow.value = true;
+};
 //#endregion
+
 onMounted(() => {
 	getTableData();
 });
diff --git a/src/views/project/yw/lowCode/sqlAmis/edit/SqlAmisEdit.vue b/src/views/project/yw/lowCode/sqlAmis/edit/SqlAmisEdit.vue
index d4a697b..dbc68a5 100644
--- a/src/views/project/yw/lowCode/sqlAmis/edit/SqlAmisEdit.vue
+++ b/src/views/project/yw/lowCode/sqlAmis/edit/SqlAmisEdit.vue
@@ -1,6 +1,19 @@
 <template>
 	<div class="h-full flex flex-col">
-		<div class="grid grid-cols-2 gap-2 h-full flex-0">
+		<titleBox class="flex-0" style="background-color: #fff" :title="supervisor?.title">
+			<template v-slot:left>
+				<el-button
+					icon="ele-ArrowLeft"
+					text
+					style="margin-right: 10px; margin-left: 10px; width: 40px"
+					size="small"
+					@click="backLastPage"
+				>
+				</el-button>
+			</template>
+		</titleBox>
+
+		<div class="grid grid-cols-2 gap-2 h-full flex-auto">
 			<div class="h-full overflow-auto">
 				<el-table
 					:data="configList"
@@ -41,21 +54,6 @@
 				/>
 			</div>
 		</div>
-		<!-- <div class="flex-auto overflow-auto mt-3">
-			<codemirror
-				disabled
-				class="h-full overflow-auto"
-				v-model="jsonCode"
-				:style="{ height: '100%' }"
-				:autofocus="true"
-				:indent-with-tab="true"
-				:tab-size="2"
-				:extensions="jsonEditorExtensions"
-				@change="log('change', $event)"
-				@focus="log('focus', $event)"
-				@blur="log('blur', $event)"
-			/>
-		</div> -->
 	</div>
 </template>
 
@@ -64,11 +62,20 @@
 import { sql } from '@codemirror/lang-sql';
 import { xml } from '@codemirror/lang-xml';
 import { vscodeDark } from '@uiw/codemirror-theme-vscode';
-import { ref } from 'vue';
+import _ from 'lodash';
+import { onMounted, ref } from 'vue';
 import { Codemirror } from 'vue-codemirror';
 import * as codeExample from './testData';
-import _, { uniqueId } from 'lodash';
-import {v4 as uuid} from 'uuid'
+import titleBox from '/@/components/titleBox.vue';
+
+import { v4 as uuid } from 'uuid';
+import { getAmisXml } from '/@/api/supervisorAdmin';
+import { useCompRef } from '/@/utils/types';
+import { XMLParser, XMLBuilder, XMLValidator } from 'fast-xml-parser';
+import { ElMessage } from 'element-plus';
+
+const props = defineProps(['supervisor']);
+const emit = defineEmits(['backLastPage']);
 const log = console.log;
 const jsonCode = ref(codeExample.jsonCode);
 const dockCode = ref(codeExample.dockCode);
@@ -77,7 +84,17 @@
 const jsonEditorExtensions = [json(), vscodeDark];
 const sqlEditorExtensions = [sql(), vscodeDark];
 const dockEditorExtensions = [xml(), vscodeDark];
-
+const sqlCodeEditorRef = useCompRef(Codemirror);
+const resetStatus = () => {
+	configList.value = [];
+	sqlCode.value = '';
+};
+const backLastPage = () => {
+	// setTimeout(() => {
+	// 	resetStatus();
+	// }, 300);
+	emit('backLastPage');
+};
 const dockRowChange = (row) => {};
 /** @description 璺緞鍒嗛殧绗� */
 const PATH_SEPARATOR = '/';
@@ -128,10 +145,10 @@
 	value: AmisDockValue;
 };
 
-type AmisDockSQLConfig = AmisDockConfig&{
-	queryId:string;
-	recordId:string;
-}
+type AmisDockSQLConfig = AmisDockConfig & {
+	queryId: string;
+	recordId: string;
+};
 
 const configList = ref<AmisDockConfig[]>([]);
 const parseJSONData = (json: string) => {
@@ -141,20 +158,38 @@
 		if (key === 'api') {
 			const url = value.url;
 			const urlPath = path + PATH_SEPARATOR + 'url';
-			const queryId ='query_'+uuid().slice(0,12);
-			
+			const queryId = 'query_' + uuid().slice(0, 12);
+
 			// const recordId = uniqueId()
 			configList.value.push({
-				queryId:queryId,
-				recordId:queryId,
+				queryId: queryId,
+				recordId: queryId,
 				type: AmisDockType.Api,
 				path: urlPath,
 				value: url,
-				url:url,
+				url: url,
 			} as any);
 		}
 	});
 };
 
-parseJSONData(codeExample.jsonCode);
+
+const xmlParserInstance = new XMLParser();
+const xmlBuilderInstance = new XMLBuilder();
+let xmlConfig = null;
+onMounted(async () => {
+	xmlConfig = await getAmisXml({
+		agent_id: props.supervisor.id,
+	});
+	if (!xmlConfig?.amis_xml) {
+		// ElMessage.warning('鏆傛棤鏁版嵁');
+		return;
+	}
+	const jObj = xmlParserInstance.parse(xmlConfig.amis_xml);
+	if (!jObj?.AMIS_JSON) {
+		return;
+	}
+	const amisJSON = jObj.AMIS_JSON;
+	parseJSONData(amisJSON);
+});
 </script>
diff --git a/vite.config.ts b/vite.config.ts
index b355b5a..7aa7b06 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -6,6 +6,8 @@
 import { defineConfig, loadEnv } from 'vite';
 import viteCompression from 'vite-plugin-compression';
 import vueSetupExtend from 'vite-plugin-vue-setup-extend-plus';
+import { viteCommonjs } from '@originjs/vite-plugin-commonjs'
+
 const pathResolve = (dir: string) => {
 	return resolve(__dirname, '.', dir);
 };
@@ -21,6 +23,8 @@
 		plugins: [
 			vue(),
 			vueSetupExtend(),
+			viteCommonjs(),
+
 			viteCompression({
 				threshold: 1024000,
 			}),
@@ -35,7 +39,7 @@
 			host: '0.0.0.0',
 			port: env.VITE_PORT as unknown as number,
 			open: JSON.parse(env.VITE_OPEN),
-			hmr: true,
+			hmr: false,
 			proxy: {
 				'/gitee': {
 					target: 'https://gitee.com',

--
Gitblit v1.9.3