94395ee8 by xukangle

Merge branch 'develop' into dev_20241202_xukangle

2 parents a277e5d1 74846114
...@@ -5,6 +5,7 @@ VITE_APP_TITLE = 数据资产管理系统 ...@@ -5,6 +5,7 @@ VITE_APP_TITLE = 数据资产管理系统
5 # VITE_API_BASEURL = https://swzl-test.csbr.cn/api 5 # VITE_API_BASEURL = https://swzl-test.csbr.cn/api
6 # VITE_API_BASEURL = http://localhost:9000 6 # VITE_API_BASEURL = http://localhost:9000
7 VITE_API_BASEURL = http://192.168.6.20:28052/ 7 VITE_API_BASEURL = http://192.168.6.20:28052/
8
8 # 平台用户 接口请地址 9 # 平台用户 接口请地址
9 VITE_APP_USER_API_BASEURL = gateway-server 10 VITE_APP_USER_API_BASEURL = gateway-server
10 11
...@@ -13,21 +14,31 @@ VITE_APP_AUTH_URL = 'ms-daop-auth-service' ...@@ -13,21 +14,31 @@ VITE_APP_AUTH_URL = 'ms-daop-auth-service'
13 14
14 # 系统管理 接口地址 15 # 系统管理 接口地址
15 VITE_APP_API_BASEURL = ms-daop-zcgl-system-manager-service 16 VITE_APP_API_BASEURL = ms-daop-zcgl-system-manager-service
17
16 # #配置服务 18 # #配置服务
17 # VITE_APP_CONFIG_URL = 'ms-daop-configure-service' 19 # VITE_APP_CONFIG_URL = 'ms-daop-configure-service'
18 20
19 # 文件上传请求地址 21 # 文件上传请求地址
20 VITE_APP_ADD_FILE = ms-daop-import-data-service 22 VITE_APP_ADD_FILE = ms-daop-import-data-service
23
21 # 调试工具,可设置 eruda 或 vconsole,如果不需要开启则留空 24 # 调试工具,可设置 eruda 或 vconsole,如果不需要开启则留空
22 VITE_APP_DEBUG_TOOL = 25 VITE_APP_DEBUG_TOOL =
26
23 # 是否开启代理 27 # 是否开启代理
24 VITE_OPEN_PROXY = true 28 VITE_OPEN_PROXY = true
29
25 # vite serve base 30 # vite serve base
26 VITE_SERVE_BASE = / 31 VITE_SERVE_BASE = /
32
27 # 流程设计访问地址 33 # 流程设计访问地址
28 VITE_BPMN_URL = https://workflow-swzl-test.csbr.cn 34 VITE_BPMN_URL = https://workflow-swzl-test.csbr.cn
35
36 #流程服务
37 VITE_APP_WORK_FLOW_URL = 'ms-daop-workflow-service'
38
29 # 数据标准、元数据、数据目录 接口地址 39 # 数据标准、元数据、数据目录 接口地址
30 VITE_APP_PLAN_BASEURL = ms-daop-zcgl-data-plan-service 40 VITE_APP_PLAN_BASEURL = ms-daop-zcgl-data-plan-service
41
31 #数据质量接口地址 42 #数据质量接口地址
32 VITE_APP_QUALITY_BASEURL = ms-daop-data-quality-service 43 VITE_APP_QUALITY_BASEURL = ms-daop-data-quality-service
33 44
...@@ -44,14 +55,18 @@ VITE_APP_CONFIG_URL = 'ms-daop-configure-service' ...@@ -44,14 +55,18 @@ VITE_APP_CONFIG_URL = 'ms-daop-configure-service'
44 # 文件上传下载接口地址 55 # 文件上传下载接口地址
45 VITE_APP_COMMON_URL = 'ms-daop-common-service' 56 VITE_APP_COMMON_URL = 'ms-daop-common-service'
46 57
58 #camunda服务
59 VITE_APP_CAMUNDA_URL = 'ms-daop-camunda-server'
47 60
48 #门户接口 61 #门户接口
49 VITE_API_PORTALURL = https://swzl-test.zgsjzc.com/portal 62 VITE_API_PORTALURL = https://swzl-test.zgsjzc.com/portal
50 63
51 #数据资产接口地址 64 #数据资产接口地址
52 VITE_API_ASSET_BASEURL = ms-swzl-data-dam-service 65 VITE_API_ASSET_BASEURL = ms-swzl-data-dam-service
66
53 #数据同步接口地址 67 #数据同步接口地址
54 VITE_API_DATA_SYNC = ms-swzl-data-sync-service 68 VITE_API_DATA_SYNC = ms-swzl-data-sync-service
69
55 #消息接口 70 #消息接口
56 VITE_API_MESSAGE = ms-swzl-message-notification-service 71 VITE_API_MESSAGE = ms-swzl-message-notification-service
57 72
......
...@@ -3,22 +3,31 @@ VITE_APP_TITLE = 数据资产管理系统 ...@@ -3,22 +3,31 @@ VITE_APP_TITLE = 数据资产管理系统
3 # 接口域名 3 # 接口域名
4 VITE_API_BASEURL = http://192.168.6.20:28052/ 4 VITE_API_BASEURL = http://192.168.6.20:28052/
5 # VITE_API_BASEURL = http://49.4.26.201:31709/ 5 # VITE_API_BASEURL = http://49.4.26.201:31709/
6
6 # # 平台用户 接口请地址 7 # # 平台用户 接口请地址
7 # VITE_APP_USER_API_BASEURL = gateway-server 8 # VITE_APP_USER_API_BASEURL = gateway-server
9
8 # # 系统管理 接口地址 10 # # 系统管理 接口地址
9 # VITE_APP_API_BASEURL = ms-daop-zcgl-system-manager-service 11 # VITE_APP_API_BASEURL = ms-daop-zcgl-system-manager-service
12
10 # # 文件上传请求地址 13 # # 文件上传请求地址
11 # VITE_APP_ADD_FILE = ms-daop-import-data-service 14 # VITE_APP_ADD_FILE = ms-daop-import-data-service
15
12 # # 调试工具,可设置 eruda 或 vconsole,如果不需要开启则留空 16 # # 调试工具,可设置 eruda 或 vconsole,如果不需要开启则留空
13 # VITE_APP_DEBUG_TOOL = 17 # VITE_APP_DEBUG_TOOL =
18
14 # # 是否开启代理 19 # # 是否开启代理
15 # VITE_OPEN_PROXY = true 20 # VITE_OPEN_PROXY = true
21
16 # # vite serve base 22 # # vite serve base
17 # VITE_SERVE_BASE = / 23 # VITE_SERVE_BASE = /
24
18 # # 流程设计访问地址 25 # # 流程设计访问地址
19 # VITE_BPMN_URL = https://workflow.zgsjzc.com 26 # VITE_BPMN_URL = https://workflow.zgsjzc.com
27
20 # # 数据标准、元数据、数据目录 接口地址 28 # # 数据标准、元数据、数据目录 接口地址
21 # VITE_APP_PLAN_BASEURL = ms-daop-jgjf-data-plan-service 29 # VITE_APP_PLAN_BASEURL = ms-daop-jgjf-data-plan-service
30
22 # #数据质量接口地址 31 # #数据质量接口地址
23 # VITE_APP_QUALITY_BASEURL = ms-daop-data-quality-service 32 # VITE_APP_QUALITY_BASEURL = ms-daop-data-quality-service
24 33
...@@ -27,10 +36,13 @@ VITE_APP_TITLE = 数据资产管理系统 ...@@ -27,10 +36,13 @@ VITE_APP_TITLE = 数据资产管理系统
27 36
28 # #数据资产接口地址 37 # #数据资产接口地址
29 # VITE_API_ASSET_BASEURL = ms-swzl-data-dam-service 38 # VITE_API_ASSET_BASEURL = ms-swzl-data-dam-service
39
30 # #数据同步接口地址 40 # #数据同步接口地址
31 # VITE_API_DATA_SYNC = ms-swzl-data-sync-service 41 # VITE_API_DATA_SYNC = ms-swzl-data-sync-service
42
32 # #消息接口 43 # #消息接口
33 # VITE_API_MESSAGE = ms-swzl-message-notification-service 44 # VITE_API_MESSAGE = ms-swzl-message-notification-service
45
34 # 平台用户 接口请地址 46 # 平台用户 接口请地址
35 VITE_APP_USER_API_BASEURL = gateway-server 47 VITE_APP_USER_API_BASEURL = gateway-server
36 48
...@@ -42,16 +54,25 @@ VITE_APP_API_BASEURL = ms-daop-zcgl-system-manager-service ...@@ -42,16 +54,25 @@ VITE_APP_API_BASEURL = ms-daop-zcgl-system-manager-service
42 54
43 # 文件上传请求地址 55 # 文件上传请求地址
44 VITE_APP_ADD_FILE = ms-daop-import-data-service 56 VITE_APP_ADD_FILE = ms-daop-import-data-service
57
45 # 调试工具,可设置 eruda 或 vconsole,如果不需要开启则留空 58 # 调试工具,可设置 eruda 或 vconsole,如果不需要开启则留空
46 VITE_APP_DEBUG_TOOL = 59 VITE_APP_DEBUG_TOOL =
60
47 # 是否开启代理 61 # 是否开启代理
48 VITE_OPEN_PROXY = true 62 VITE_OPEN_PROXY = true
63
49 # vite serve base 64 # vite serve base
50 VITE_SERVE_BASE = / 65 VITE_SERVE_BASE = /
66
51 # 流程设计访问地址 67 # 流程设计访问地址
52 VITE_BPMN_URL = https://workflow-swzl-test.csbr.cn 68 VITE_BPMN_URL = https://workflow-swzl-test.csbr.cn
69
70 #流程服务
71 VITE_APP_WORK_FLOW_URL = 'ms-daop-workflow-service'
72
53 # 数据标准、元数据、数据目录 接口地址 73 # 数据标准、元数据、数据目录 接口地址
54 VITE_APP_PLAN_BASEURL = ms-daop-zcgl-data-plan-service 74 VITE_APP_PLAN_BASEURL = ms-daop-zcgl-data-plan-service
75
55 #数据质量接口地址 76 #数据质量接口地址
56 VITE_APP_QUALITY_BASEURL = ms-daop-data-quality-service 77 VITE_APP_QUALITY_BASEURL = ms-daop-data-quality-service
57 78
...@@ -68,6 +89,9 @@ VITE_APP_DATA_SOURCE_URL = ms-daop-data-source-service ...@@ -68,6 +89,9 @@ VITE_APP_DATA_SOURCE_URL = ms-daop-data-source-service
68 # 文件上传下载接口地址 89 # 文件上传下载接口地址
69 VITE_APP_COMMON_URL = 'ms-daop-common-service' 90 VITE_APP_COMMON_URL = 'ms-daop-common-service'
70 91
92 #camunda服务
93 VITE_APP_CAMUNDA_URL = 'ms-daop-camunda-server'
94
71 #门户接口 95 #门户接口
72 VITE_API_PORTALURL = https://swzl-test.zgsjzc.com/portal 96 VITE_API_PORTALURL = https://swzl-test.zgsjzc.com/portal
73 #新门户接口 97 #新门户接口
...@@ -77,10 +101,16 @@ VITE_API_NEW_PORTAL = ms-daop-zcgl-asset-dam-service ...@@ -77,10 +101,16 @@ VITE_API_NEW_PORTAL = ms-daop-zcgl-asset-dam-service
77 VITE_APP_PERSONAL_URL = 'ms-daop-personel-service' 101 VITE_APP_PERSONAL_URL = 'ms-daop-personel-service'
78 #数据资产接口地址 102 #数据资产接口地址
79 VITE_API_ASSET_BASEURL = ms-swzl-data-dam-service 103 VITE_API_ASSET_BASEURL = ms-swzl-data-dam-service
104
80 #数据同步接口地址 105 #数据同步接口地址
81 VITE_API_DATA_SYNC = ms-swzl-data-sync-service 106 VITE_API_DATA_SYNC = ms-swzl-data-sync-service
107
82 #消息接口 108 #消息接口
83 VITE_API_MESSAGE = ms-swzl-message-notification-service 109 VITE_API_MESSAGE = ms-swzl-message-notification-service
110
111 #企业信息接口
112 VITE_APP_PERSONAL_URL = ms-daop-personel-service
113
84 # 是否在打包时生成 sourcemap 114 # 是否在打包时生成 sourcemap
85 VITE_BUILD_SOURCEMAP = false 115 VITE_BUILD_SOURCEMAP = false
86 # 是否在打包时开启压缩,支持 gzip 和 brotli 116 # 是否在打包时开启压缩,支持 gzip 和 brotli
......
...@@ -9,6 +9,7 @@ export {} ...@@ -9,6 +9,7 @@ export {}
9 9
10 declare module '@vue/runtime-core' { 10 declare module '@vue/runtime-core' {
11 export interface GlobalComponents { 11 export interface GlobalComponents {
12 ApprovalProcess: typeof import('./src/components/ApprovalProcess/src/ApprovalProcess.vue')['default']
12 Auth: typeof import('./src/components/Auth/index.vue')['default'] 13 Auth: typeof import('./src/components/Auth/index.vue')['default']
13 AuthAll: typeof import('./src/components/AuthAll/index.vue')['default'] 14 AuthAll: typeof import('./src/components/AuthAll/index.vue')['default']
14 ContentWrap: typeof import('./src/components/ContentWrap/src/ContentWrap.vue')['default'] 15 ContentWrap: typeof import('./src/components/ContentWrap/src/ContentWrap.vue')['default']
...@@ -31,6 +32,7 @@ declare module '@vue/runtime-core' { ...@@ -31,6 +32,7 @@ declare module '@vue/runtime-core' {
31 ImageUpload: typeof import('./src/components/ImageUpload/index.vue')['default'] 32 ImageUpload: typeof import('./src/components/ImageUpload/index.vue')['default']
32 LineageGraph: typeof import('./src/components/LineageGraph/index.vue')['default'] 33 LineageGraph: typeof import('./src/components/LineageGraph/index.vue')['default']
33 ListPanel: typeof import('./src/components/ListPanel/index.vue')['default'] 34 ListPanel: typeof import('./src/components/ListPanel/index.vue')['default']
35 LookBpmn: typeof import('./src/components/ApprovalProcess/src/components/LookBpmn.vue')['default']
34 Month: typeof import('./src/components/Schedule/component/month.vue')['default'] 36 Month: typeof import('./src/components/Schedule/component/month.vue')['default']
35 NotAllowed: typeof import('./src/components/NotAllowed/index.vue')['default'] 37 NotAllowed: typeof import('./src/components/NotAllowed/index.vue')['default']
36 PageHeader: typeof import('./src/components/PageHeader/index.vue')['default'] 38 PageHeader: typeof import('./src/components/PageHeader/index.vue')['default']
......
...@@ -22,7 +22,11 @@ ...@@ -22,7 +22,11 @@
22 "@vueuse/integrations": "^10.1.0", 22 "@vueuse/integrations": "^10.1.0",
23 "@wangeditor/editor": "^5.1.23", 23 "@wangeditor/editor": "^5.1.23",
24 "@wangeditor/editor-for-vue": "^5.1.12", 24 "@wangeditor/editor-for-vue": "^5.1.12",
25 "ant-design-vue": "^3.2.20",
25 "axios": "^1.4.0", 26 "axios": "^1.4.0",
27 "bpmn-js": "^8.10.0",
28 "bpmn-js-token-simulation": "^0.10.0",
29 "camunda-bpmn-moddle": "^4.4.0",
26 "crypto-js": "^4.2.0", 30 "crypto-js": "^4.2.0",
27 "dayjs": "^1.11.7", 31 "dayjs": "^1.11.7",
28 "echarts": "^5.4.3", 32 "echarts": "^5.4.3",
...@@ -32,6 +36,7 @@ ...@@ -32,6 +36,7 @@
32 "hotkeys-js": "^3.10.2", 36 "hotkeys-js": "^3.10.2",
33 "html2canvas": "^1.4.1", 37 "html2canvas": "^1.4.1",
34 "insert-css": "^2.0.0", 38 "insert-css": "^2.0.0",
39 "jquery": "^3.7.1",
35 "lodash-es": "^4.17.21", 40 "lodash-es": "^4.17.21",
36 "md5": "^2.3.0", 41 "md5": "^2.3.0",
37 "mitt": "^3.0.0", 42 "mitt": "^3.0.0",
......
...@@ -287,8 +287,8 @@ packages: ...@@ -287,8 +287,8 @@ packages:
287 eslint: '>=7.4.0' 287 eslint: '>=7.4.0'
288 dependencies: 288 dependencies:
289 eslint: 8.57.1 289 eslint: 8.57.1
290 eslint-plugin-antfu: 0.38.6(eslint@8.57.1)(typescript@5.7.2) 290 eslint-plugin-antfu: 0.38.6_6txzh3afdjfsavlpa2fczfkiua
291 eslint-plugin-eslint-comments: 3.2.0(eslint@8.57.1) 291 eslint-plugin-eslint-comments: 3.2.0_eslint@8.57.1
292 eslint-plugin-html: 7.1.0 292 eslint-plugin-html: 7.1.0
293 eslint-plugin-import: 2.31.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.1) 293 eslint-plugin-import: 2.31.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.1)
294 eslint-plugin-jsonc: 2.18.2(eslint@8.57.1) 294 eslint-plugin-jsonc: 2.18.2(eslint@8.57.1)
...@@ -304,9 +304,6 @@ packages: ...@@ -304,9 +304,6 @@ packages:
304 transitivePeerDependencies: 304 transitivePeerDependencies:
305 - '@eslint/json' 305 - '@eslint/json'
306 - '@typescript-eslint/eslint-plugin' 306 - '@typescript-eslint/eslint-plugin'
307 - '@typescript-eslint/parser'
308 - eslint-import-resolver-typescript
309 - eslint-import-resolver-webpack
310 - supports-color 307 - supports-color
311 - typescript 308 - typescript
312 dev: true 309 dev: true
...@@ -325,8 +322,6 @@ packages: ...@@ -325,8 +322,6 @@ packages:
325 typescript: 5.7.2 322 typescript: 5.7.2
326 transitivePeerDependencies: 323 transitivePeerDependencies:
327 - '@eslint/json' 324 - '@eslint/json'
328 - eslint-import-resolver-typescript
329 - eslint-import-resolver-webpack
330 - jest 325 - jest
331 - supports-color 326 - supports-color
332 dev: true 327 dev: true
...@@ -339,14 +334,11 @@ packages: ...@@ -339,14 +334,11 @@ packages:
339 '@antfu/eslint-config-basic': 0.38.6(@typescript-eslint/eslint-plugin@5.62.0)(@typescript-eslint/parser@5.62.0)(eslint@8.57.1)(typescript@5.7.2) 334 '@antfu/eslint-config-basic': 0.38.6(@typescript-eslint/eslint-plugin@5.62.0)(@typescript-eslint/parser@5.62.0)(eslint@8.57.1)(typescript@5.7.2)
340 '@antfu/eslint-config-ts': 0.38.6(eslint@8.57.1)(typescript@5.7.2) 335 '@antfu/eslint-config-ts': 0.38.6(eslint@8.57.1)(typescript@5.7.2)
341 eslint: 8.57.1 336 eslint: 8.57.1
342 eslint-plugin-vue: 9.31.0(eslint@8.57.1) 337 eslint-plugin-vue: 9.32.0_eslint@8.57.1
343 local-pkg: 0.4.3 338 local-pkg: 0.4.3
344 transitivePeerDependencies: 339 transitivePeerDependencies:
345 - '@eslint/json' 340 - '@eslint/json'
346 - '@typescript-eslint/eslint-plugin' 341 - '@typescript-eslint/eslint-plugin'
347 - '@typescript-eslint/parser'
348 - eslint-import-resolver-typescript
349 - eslint-import-resolver-webpack
350 - jest 342 - jest
351 - supports-color 343 - supports-color
352 - typescript 344 - typescript
...@@ -361,7 +353,7 @@ packages: ...@@ -361,7 +353,7 @@ packages:
361 '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.1)(typescript@5.7.2) 353 '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.1)(typescript@5.7.2)
362 '@typescript-eslint/parser': 5.62.0(eslint@8.57.1)(typescript@5.7.2) 354 '@typescript-eslint/parser': 5.62.0(eslint@8.57.1)(typescript@5.7.2)
363 eslint: 8.57.1 355 eslint: 8.57.1
364 eslint-plugin-eslint-comments: 3.2.0(eslint@8.57.1) 356 eslint-plugin-eslint-comments: 3.2.0_eslint@8.57.1
365 eslint-plugin-html: 7.1.0 357 eslint-plugin-html: 7.1.0
366 eslint-plugin-import: 2.31.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.1) 358 eslint-plugin-import: 2.31.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.1)
367 eslint-plugin-jsonc: 2.18.2(eslint@8.57.1) 359 eslint-plugin-jsonc: 2.18.2(eslint@8.57.1)
...@@ -374,8 +366,6 @@ packages: ...@@ -374,8 +366,6 @@ packages:
374 yaml-eslint-parser: 1.2.3 366 yaml-eslint-parser: 1.2.3
375 transitivePeerDependencies: 367 transitivePeerDependencies:
376 - '@eslint/json' 368 - '@eslint/json'
377 - eslint-import-resolver-typescript
378 - eslint-import-resolver-webpack
379 - jest 369 - jest
380 - supports-color 370 - supports-color
381 - typescript 371 - typescript
...@@ -539,10 +529,10 @@ packages: ...@@ -539,10 +529,10 @@ packages:
539 '@antv/g-math': 0.1.9 529 '@antv/g-math': 0.1.9
540 '@antv/g-svg': 0.5.7 530 '@antv/g-svg': 0.5.7
541 '@antv/g6-core': 0.8.24 531 '@antv/g6-core': 0.8.24
542 '@antv/g6-element': 0.8.24(@antv/g6@4.8.24) 532 '@antv/g6-element': 0.8.24_@antv+g6@4.8.24
543 '@antv/g6-plugin': 0.8.24(@antv/g6@4.8.24) 533 '@antv/g6-plugin': 0.8.24_@antv+g6@4.8.24
544 '@antv/hierarchy': 0.6.14 534 '@antv/hierarchy': 0.6.14
545 '@antv/layout': 0.3.25(dagre@0.8.5) 535 '@antv/layout': 0.3.25_dagre@0.8.5
546 '@antv/matrix-util': 3.1.0-beta.3 536 '@antv/matrix-util': 3.1.0-beta.3
547 '@antv/path-util': 2.0.15 537 '@antv/path-util': 2.0.15
548 '@antv/util': 2.0.17 538 '@antv/util': 2.0.17
...@@ -567,7 +557,7 @@ packages: ...@@ -567,7 +557,7 @@ packages:
567 '@antv/g-svg': 0.5.7 557 '@antv/g-svg': 0.5.7
568 '@antv/g6': 4.8.24 558 '@antv/g6': 4.8.24
569 '@antv/g6-core': 0.8.24 559 '@antv/g6-core': 0.8.24
570 '@antv/g6-element': 0.8.24(@antv/g6@4.8.24) 560 '@antv/g6-element': 0.8.24_@antv+g6@4.8.24
571 '@antv/matrix-util': 3.1.0-beta.3 561 '@antv/matrix-util': 3.1.0-beta.3
572 '@antv/path-util': 2.0.15 562 '@antv/path-util': 2.0.15
573 '@antv/scale': 0.3.18 563 '@antv/scale': 0.3.18
...@@ -597,7 +587,7 @@ packages: ...@@ -597,7 +587,7 @@ packages:
597 '@antv/util': 3.3.10 587 '@antv/util': 3.3.10
598 d3-force: 2.1.1 588 d3-force: 2.1.1
599 d3-quadtree: 2.0.0 589 d3-quadtree: 2.0.0
600 dagre-compound: 0.0.11(dagre@0.8.5) 590 dagre-compound: 0.0.11_dagre@0.8.5
601 ml-matrix: 6.5.0 591 ml-matrix: 6.5.0
602 transitivePeerDependencies: 592 transitivePeerDependencies:
603 - dagre 593 - dagre
...@@ -638,7 +628,7 @@ packages: ...@@ -638,7 +628,7 @@ packages:
638 '@vueuse/core': 10.11.1(vue@3.5.13) 628 '@vueuse/core': 10.11.1(vue@3.5.13)
639 ant-design-vue: 3.2.20(vue@3.5.13) 629 ant-design-vue: 3.2.20(vue@3.5.13)
640 lodash: 4.17.21 630 lodash: 4.17.21
641 vue: 3.5.13(typescript@5.7.2) 631 vue: 3.5.13_typescript@5.7.2
642 transitivePeerDependencies: 632 transitivePeerDependencies:
643 - '@vue/composition-api' 633 - '@vue/composition-api'
644 dev: false 634 dev: false
...@@ -702,7 +692,7 @@ packages: ...@@ -702,7 +692,7 @@ packages:
702 '@babel/code-frame': 7.26.2 692 '@babel/code-frame': 7.26.2
703 '@babel/generator': 7.26.2 693 '@babel/generator': 7.26.2
704 '@babel/helper-compilation-targets': 7.25.9 694 '@babel/helper-compilation-targets': 7.25.9
705 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) 695 '@babel/helper-module-transforms': 7.26.0_@babel+core@7.26.0
706 '@babel/helpers': 7.26.0 696 '@babel/helpers': 7.26.0
707 '@babel/parser': 7.26.2 697 '@babel/parser': 7.26.2
708 '@babel/template': 7.25.9 698 '@babel/template': 7.25.9
...@@ -756,7 +746,7 @@ packages: ...@@ -756,7 +746,7 @@ packages:
756 '@babel/helper-annotate-as-pure': 7.25.9 746 '@babel/helper-annotate-as-pure': 7.25.9
757 '@babel/helper-member-expression-to-functions': 7.25.9 747 '@babel/helper-member-expression-to-functions': 7.25.9
758 '@babel/helper-optimise-call-expression': 7.25.9 748 '@babel/helper-optimise-call-expression': 7.25.9
759 '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) 749 '@babel/helper-replace-supers': 7.25.9_@babel+core@7.26.0
760 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 750 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
761 '@babel/traverse': 7.25.9 751 '@babel/traverse': 7.25.9
762 semver: 6.3.1 752 semver: 6.3.1
...@@ -869,9 +859,9 @@ packages: ...@@ -869,9 +859,9 @@ packages:
869 '@babel/core': ^7.0.0-0 859 '@babel/core': ^7.0.0-0
870 dependencies: 860 dependencies:
871 '@babel/core': 7.26.0 861 '@babel/core': 7.26.0
872 '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) 862 '@babel/helper-create-class-features-plugin': 7.25.9_@babel+core@7.26.0
873 '@babel/helper-plugin-utils': 7.25.9 863 '@babel/helper-plugin-utils': 7.25.9
874 '@babel/plugin-syntax-decorators': 7.25.9(@babel/core@7.26.0) 864 '@babel/plugin-syntax-decorators': 7.25.9_@babel+core@7.26.0
875 transitivePeerDependencies: 865 transitivePeerDependencies:
876 - supports-color 866 - supports-color
877 dev: true 867 dev: true
...@@ -933,10 +923,10 @@ packages: ...@@ -933,10 +923,10 @@ packages:
933 dependencies: 923 dependencies:
934 '@babel/core': 7.26.0 924 '@babel/core': 7.26.0
935 '@babel/helper-annotate-as-pure': 7.25.9 925 '@babel/helper-annotate-as-pure': 7.25.9
936 '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) 926 '@babel/helper-create-class-features-plugin': 7.25.9_@babel+core@7.26.0
937 '@babel/helper-plugin-utils': 7.25.9 927 '@babel/helper-plugin-utils': 7.25.9
938 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 928 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
939 '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.0) 929 '@babel/plugin-syntax-typescript': 7.25.9_@babel+core@7.26.0
940 transitivePeerDependencies: 930 transitivePeerDependencies:
941 - supports-color 931 - supports-color
942 dev: true 932 dev: true
...@@ -1000,7 +990,7 @@ packages: ...@@ -1000,7 +990,7 @@ packages:
1000 '@csstools/css-parser-algorithms': ^2.7.1 990 '@csstools/css-parser-algorithms': ^2.7.1
1001 '@csstools/css-tokenizer': ^2.4.1 991 '@csstools/css-tokenizer': ^2.4.1
1002 dependencies: 992 dependencies:
1003 '@csstools/css-parser-algorithms': 2.7.1(@csstools/css-tokenizer@2.4.1) 993 '@csstools/css-parser-algorithms': 2.7.1_glesim54nkefbp5a3gko6ietcq
1004 '@csstools/css-tokenizer': 2.4.1 994 '@csstools/css-tokenizer': 2.4.1
1005 dev: true 995 dev: true
1006 996
...@@ -1574,7 +1564,7 @@ packages: ...@@ -1574,7 +1564,7 @@ packages:
1574 /@simonwep/pickr@1.8.2: 1564 /@simonwep/pickr@1.8.2:
1575 resolution: {integrity: sha512-/l5w8BIkrpP6n1xsetx9MWPWlU6OblN5YgZZphxan0Tq4BByTCETL6lyIeY8lagalS2Nbt4F2W034KHLIiunKA==} 1565 resolution: {integrity: sha512-/l5w8BIkrpP6n1xsetx9MWPWlU6OblN5YgZZphxan0Tq4BByTCETL6lyIeY8lagalS2Nbt4F2W034KHLIiunKA==}
1576 dependencies: 1566 dependencies:
1577 core-js: 3.39.0 1567 core-js: 3.40.0
1578 nanopop: 2.4.2 1568 nanopop: 2.4.2
1579 dev: false 1569 dev: false
1580 1570
...@@ -1739,10 +1729,10 @@ packages: ...@@ -1739,10 +1729,10 @@ packages:
1739 optional: true 1729 optional: true
1740 dependencies: 1730 dependencies:
1741 '@eslint-community/regexpp': 4.12.1 1731 '@eslint-community/regexpp': 4.12.1
1742 '@typescript-eslint/parser': 5.62.0(eslint@8.57.1)(typescript@5.7.2) 1732 '@typescript-eslint/parser': 5.62.0_6txzh3afdjfsavlpa2fczfkiua
1743 '@typescript-eslint/scope-manager': 5.62.0 1733 '@typescript-eslint/scope-manager': 5.62.0
1744 '@typescript-eslint/type-utils': 5.62.0(eslint@8.57.1)(typescript@5.7.2) 1734 '@typescript-eslint/type-utils': 5.62.0_6txzh3afdjfsavlpa2fczfkiua
1745 '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@5.7.2) 1735 '@typescript-eslint/utils': 5.62.0_6txzh3afdjfsavlpa2fczfkiua
1746 debug: 4.3.7 1736 debug: 4.3.7
1747 eslint: 8.57.1 1737 eslint: 8.57.1
1748 graphemer: 1.4.0 1738 graphemer: 1.4.0
...@@ -1767,7 +1757,7 @@ packages: ...@@ -1767,7 +1757,7 @@ packages:
1767 dependencies: 1757 dependencies:
1768 '@typescript-eslint/scope-manager': 5.62.0 1758 '@typescript-eslint/scope-manager': 5.62.0
1769 '@typescript-eslint/types': 5.62.0 1759 '@typescript-eslint/types': 5.62.0
1770 '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.7.2) 1760 '@typescript-eslint/typescript-estree': 5.62.0_typescript@5.7.2
1771 debug: 4.3.7 1761 debug: 4.3.7
1772 eslint: 8.57.1 1762 eslint: 8.57.1
1773 typescript: 5.7.2 1763 typescript: 5.7.2
...@@ -1793,8 +1783,8 @@ packages: ...@@ -1793,8 +1783,8 @@ packages:
1793 typescript: 1783 typescript:
1794 optional: true 1784 optional: true
1795 dependencies: 1785 dependencies:
1796 '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.7.2) 1786 '@typescript-eslint/typescript-estree': 5.62.0_typescript@5.7.2
1797 '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@5.7.2) 1787 '@typescript-eslint/utils': 5.62.0_6txzh3afdjfsavlpa2fczfkiua
1798 debug: 4.3.7 1788 debug: 4.3.7
1799 eslint: 8.57.1 1789 eslint: 8.57.1
1800 tsutils: 3.21.0(typescript@5.7.2) 1790 tsutils: 3.21.0(typescript@5.7.2)
...@@ -1835,12 +1825,12 @@ packages: ...@@ -1835,12 +1825,12 @@ packages:
1835 peerDependencies: 1825 peerDependencies:
1836 eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 1826 eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
1837 dependencies: 1827 dependencies:
1838 '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) 1828 '@eslint-community/eslint-utils': 4.4.1_eslint@8.57.1
1839 '@types/json-schema': 7.0.15 1829 '@types/json-schema': 7.0.15
1840 '@types/semver': 7.5.8 1830 '@types/semver': 7.5.8
1841 '@typescript-eslint/scope-manager': 5.62.0 1831 '@typescript-eslint/scope-manager': 5.62.0
1842 '@typescript-eslint/types': 5.62.0 1832 '@typescript-eslint/types': 5.62.0
1843 '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.7.2) 1833 '@typescript-eslint/typescript-estree': 5.62.0_typescript@5.7.2
1844 eslint: 8.57.1 1834 eslint: 8.57.1
1845 eslint-scope: 5.1.1 1835 eslint-scope: 5.1.1
1846 semver: 7.6.3 1836 semver: 7.6.3
...@@ -1979,12 +1969,12 @@ packages: ...@@ -1979,12 +1969,12 @@ packages:
1979 '@babel/core': 7.26.0 1969 '@babel/core': 7.26.0
1980 '@babel/helper-module-imports': 7.25.9 1970 '@babel/helper-module-imports': 7.25.9
1981 '@babel/helper-plugin-utils': 7.25.9 1971 '@babel/helper-plugin-utils': 7.25.9
1982 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0) 1972 '@babel/plugin-syntax-jsx': 7.25.9_@babel+core@7.26.0
1983 '@babel/template': 7.25.9 1973 '@babel/template': 7.25.9
1984 '@babel/traverse': 7.25.9 1974 '@babel/traverse': 7.25.9
1985 '@babel/types': 7.26.0 1975 '@babel/types': 7.26.0
1986 '@vue/babel-helper-vue-transform-on': 1.2.5 1976 '@vue/babel-helper-vue-transform-on': 1.2.5
1987 '@vue/babel-plugin-resolve-type': 1.2.5(@babel/core@7.26.0) 1977 '@vue/babel-plugin-resolve-type': 1.2.5_@babel+core@7.26.0
1988 html-tags: 3.3.1 1978 html-tags: 3.3.1
1989 svg-tags: 1.0.0 1979 svg-tags: 1.0.0
1990 transitivePeerDependencies: 1980 transitivePeerDependencies:
...@@ -2030,7 +2020,7 @@ packages: ...@@ -2030,7 +2020,7 @@ packages:
2030 '@vue/compiler-ssr': 3.5.13 2020 '@vue/compiler-ssr': 3.5.13
2031 '@vue/shared': 3.5.13 2021 '@vue/shared': 3.5.13
2032 estree-walker: 2.0.2 2022 estree-walker: 2.0.2
2033 magic-string: 0.30.13 2023 magic-string: 0.30.14
2034 postcss: 8.4.49 2024 postcss: 8.4.49
2035 source-map-js: 1.2.1 2025 source-map-js: 1.2.1
2036 2026
...@@ -2067,12 +2057,14 @@ packages: ...@@ -2067,12 +2057,14 @@ packages:
2067 resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==} 2057 resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==}
2068 dependencies: 2058 dependencies:
2069 '@vue/shared': 3.5.13 2059 '@vue/shared': 3.5.13
2060 dev: false
2070 2061
2071 /@vue/runtime-core@3.5.13: 2062 /@vue/runtime-core@3.5.13:
2072 resolution: {integrity: sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==} 2063 resolution: {integrity: sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==}
2073 dependencies: 2064 dependencies:
2074 '@vue/reactivity': 3.5.13 2065 '@vue/reactivity': 3.5.13
2075 '@vue/shared': 3.5.13 2066 '@vue/shared': 3.5.13
2067 dev: false
2076 2068
2077 /@vue/runtime-dom@3.5.13: 2069 /@vue/runtime-dom@3.5.13:
2078 resolution: {integrity: sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==} 2070 resolution: {integrity: sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==}
...@@ -2081,6 +2073,7 @@ packages: ...@@ -2081,6 +2073,7 @@ packages:
2081 '@vue/runtime-core': 3.5.13 2073 '@vue/runtime-core': 3.5.13
2082 '@vue/shared': 3.5.13 2074 '@vue/shared': 3.5.13
2083 csstype: 3.1.3 2075 csstype: 3.1.3
2076 dev: false
2084 2077
2085 /@vue/server-renderer@3.5.13(vue@3.5.13): 2078 /@vue/server-renderer@3.5.13(vue@3.5.13):
2086 resolution: {integrity: sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==} 2079 resolution: {integrity: sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==}
...@@ -2089,7 +2082,8 @@ packages: ...@@ -2089,7 +2082,8 @@ packages:
2089 dependencies: 2082 dependencies:
2090 '@vue/compiler-ssr': 3.5.13 2083 '@vue/compiler-ssr': 3.5.13
2091 '@vue/shared': 3.5.13 2084 '@vue/shared': 3.5.13
2092 vue: 3.5.13(typescript@5.7.2) 2085 vue: 3.5.13_typescript@5.7.2
2086 dev: false
2093 2087
2094 /@vue/shared@3.5.13: 2088 /@vue/shared@3.5.13:
2095 resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==} 2089 resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==}
...@@ -2104,6 +2098,7 @@ packages: ...@@ -2104,6 +2098,7 @@ packages:
2104 transitivePeerDependencies: 2098 transitivePeerDependencies:
2105 - '@vue/composition-api' 2099 - '@vue/composition-api'
2106 - vue 2100 - vue
2101 dev: false
2107 2102
2108 /@vueuse/core@9.13.0(vue@3.5.13): 2103 /@vueuse/core@9.13.0(vue@3.5.13):
2109 resolution: {integrity: sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==} 2104 resolution: {integrity: sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==}
...@@ -2183,6 +2178,7 @@ packages: ...@@ -2183,6 +2178,7 @@ packages:
2183 transitivePeerDependencies: 2178 transitivePeerDependencies:
2184 - '@vue/composition-api' 2179 - '@vue/composition-api'
2185 - vue 2180 - vue
2181 dev: false
2186 2182
2187 /@vueuse/shared@9.13.0(vue@3.5.13): 2183 /@vueuse/shared@9.13.0(vue@3.5.13):
2188 resolution: {integrity: sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==} 2184 resolution: {integrity: sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==}
...@@ -2207,7 +2203,7 @@ packages: ...@@ -2207,7 +2203,7 @@ packages:
2207 dom7: 3.0.0 2203 dom7: 3.0.0
2208 is-url: 1.2.4 2204 is-url: 1.2.4
2209 lodash.throttle: 4.1.1 2205 lodash.throttle: 4.1.1
2210 nanoid: 3.3.7 2206 nanoid: 3.3.8
2211 slate: 0.72.8 2207 slate: 0.72.8
2212 snabbdom: 3.6.2 2208 snabbdom: 3.6.2
2213 dev: false 2209 dev: false
...@@ -2247,7 +2243,7 @@ packages: ...@@ -2247,7 +2243,7 @@ packages:
2247 dependencies: 2243 dependencies:
2248 '@types/event-emitter': 0.3.5 2244 '@types/event-emitter': 0.3.5
2249 '@uppy/core': 2.3.4 2245 '@uppy/core': 2.3.4
2250 '@uppy/xhr-upload': 2.1.3(@uppy/core@2.3.4) 2246 '@uppy/xhr-upload': 2.1.3_@uppy+core@2.3.4
2251 dom7: 3.0.0 2247 dom7: 3.0.0
2252 event-emitter: 0.3.5 2248 event-emitter: 0.3.5
2253 html-void-elements: 2.0.1 2249 html-void-elements: 2.0.1
...@@ -2260,10 +2256,10 @@ packages: ...@@ -2260,10 +2256,10 @@ packages:
2260 lodash.isequal: 4.5.0 2256 lodash.isequal: 4.5.0
2261 lodash.throttle: 4.1.1 2257 lodash.throttle: 4.1.1
2262 lodash.toarray: 4.4.0 2258 lodash.toarray: 4.4.0
2263 nanoid: 3.3.7 2259 nanoid: 3.3.8
2264 scroll-into-view-if-needed: 2.2.31 2260 scroll-into-view-if-needed: 2.2.31
2265 slate: 0.72.8 2261 slate: 0.72.8
2266 slate-history: 0.66.0(slate@0.72.8) 2262 slate-history: 0.66.0_slate@0.72.8
2267 snabbdom: 3.6.2 2263 snabbdom: 3.6.2
2268 dev: false 2264 dev: false
2269 2265
...@@ -2298,7 +2294,7 @@ packages: ...@@ -2298,7 +2294,7 @@ packages:
2298 lodash.isequal: 4.5.0 2294 lodash.isequal: 4.5.0
2299 lodash.throttle: 4.1.1 2295 lodash.throttle: 4.1.1
2300 lodash.toarray: 4.4.0 2296 lodash.toarray: 4.4.0
2301 nanoid: 3.3.7 2297 nanoid: 3.3.8
2302 slate: 0.72.8 2298 slate: 0.72.8
2303 snabbdom: 3.6.2 2299 snabbdom: 3.6.2
2304 dev: false 2300 dev: false
...@@ -2332,7 +2328,7 @@ packages: ...@@ -2332,7 +2328,7 @@ packages:
2332 dom7: 3.0.0 2328 dom7: 3.0.0
2333 lodash.isequal: 4.5.0 2329 lodash.isequal: 4.5.0
2334 lodash.throttle: 4.1.1 2330 lodash.throttle: 4.1.1
2335 nanoid: 3.3.7 2331 nanoid: 3.3.8
2336 slate: 0.72.8 2332 slate: 0.72.8
2337 snabbdom: 3.6.2 2333 snabbdom: 3.6.2
2338 dev: false 2334 dev: false
...@@ -2374,7 +2370,7 @@ packages: ...@@ -2374,7 +2370,7 @@ packages:
2374 '@uppy/xhr-upload': 2.1.3(@uppy/core@2.3.4) 2370 '@uppy/xhr-upload': 2.1.3(@uppy/core@2.3.4)
2375 '@wangeditor/core': 1.1.19(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3)(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.isequal@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.7)(slate@0.72.8)(snabbdom@3.6.2) 2371 '@wangeditor/core': 1.1.19(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3)(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.isequal@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.7)(slate@0.72.8)(snabbdom@3.6.2)
2376 dom7: 3.0.0 2372 dom7: 3.0.0
2377 nanoid: 3.3.7 2373 nanoid: 3.3.8
2378 slate: 0.72.8 2374 slate: 0.72.8
2379 snabbdom: 3.6.2 2375 snabbdom: 3.6.2
2380 dev: false 2376 dev: false
...@@ -2686,7 +2682,7 @@ packages: ...@@ -2686,7 +2682,7 @@ packages:
2686 postcss: ^8.1.0 2682 postcss: ^8.1.0
2687 dependencies: 2683 dependencies:
2688 browserslist: 4.24.2 2684 browserslist: 4.24.2
2689 caniuse-lite: 1.0.30001684 2685 caniuse-lite: 1.0.30001686
2690 fraction.js: 4.3.7 2686 fraction.js: 4.3.7
2691 normalize-range: 0.1.2 2687 normalize-range: 0.1.2
2692 picocolors: 1.1.1 2688 picocolors: 1.1.1
...@@ -2842,8 +2838,8 @@ packages: ...@@ -2842,8 +2838,8 @@ packages:
2842 engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 2838 engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
2843 hasBin: true 2839 hasBin: true
2844 dependencies: 2840 dependencies:
2845 caniuse-lite: 1.0.30001684 2841 caniuse-lite: 1.0.30001686
2846 electron-to-chromium: 1.5.64 2842 electron-to-chromium: 1.5.68
2847 node-releases: 2.0.18 2843 node-releases: 2.0.18
2848 update-browserslist-db: 1.1.1(browserslist@4.24.2) 2844 update-browserslist-db: 1.1.1(browserslist@4.24.2)
2849 dev: true 2845 dev: true
...@@ -3647,7 +3643,7 @@ packages: ...@@ -3647,7 +3643,7 @@ packages:
3647 is-arguments: 1.1.1 3643 is-arguments: 1.1.1
3648 is-array-buffer: 3.0.4 3644 is-array-buffer: 3.0.4
3649 is-date-object: 1.0.5 3645 is-date-object: 1.0.5
3650 is-regex: 1.1.4 3646 is-regex: 1.2.0
3651 is-shared-array-buffer: 1.0.3 3647 is-shared-array-buffer: 1.0.3
3652 isarray: 2.0.5 3648 isarray: 2.0.5
3653 object-is: 1.1.6 3649 object-is: 1.1.6
...@@ -3655,7 +3651,7 @@ packages: ...@@ -3655,7 +3651,7 @@ packages:
3655 object.assign: 4.1.5 3651 object.assign: 4.1.5
3656 regexp.prototype.flags: 1.5.3 3652 regexp.prototype.flags: 1.5.3
3657 side-channel: 1.0.6 3653 side-channel: 1.0.6
3658 which-boxed-primitive: 1.0.2 3654 which-boxed-primitive: 1.1.0
3659 which-collection: 1.0.2 3655 which-collection: 1.0.2
3660 which-typed-array: 1.1.15 3656 which-typed-array: 1.1.15
3661 dev: true 3657 dev: true
...@@ -3676,7 +3672,7 @@ packages: ...@@ -3676,7 +3672,7 @@ packages:
3676 dependencies: 3672 dependencies:
3677 es-define-property: 1.0.0 3673 es-define-property: 1.0.0
3678 es-errors: 1.3.0 3674 es-errors: 1.3.0
3679 gopd: 1.0.1 3675 gopd: 1.1.0
3680 3676
3681 /define-properties@1.2.1: 3677 /define-properties@1.2.1:
3682 resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} 3678 resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
...@@ -3903,10 +3899,10 @@ packages: ...@@ -3903,10 +3899,10 @@ packages:
3903 escape-html: 1.0.3 3899 escape-html: 1.0.3
3904 lodash: 4.17.21 3900 lodash: 4.17.21
3905 lodash-es: 4.17.21 3901 lodash-es: 4.17.21
3906 lodash-unified: 1.0.3(@types/lodash-es@4.17.12)(lodash-es@4.17.21)(lodash@4.17.21) 3902 lodash-unified: 1.0.3_vpgwo5v3ie2bia5ss74pgoa5ly
3907 memoize-one: 6.0.0 3903 memoize-one: 6.0.0
3908 normalize-wheel-es: 1.2.0 3904 normalize-wheel-es: 1.2.0
3909 vue: 3.5.13(typescript@5.7.2) 3905 vue: 3.5.13_typescript@5.7.2
3910 transitivePeerDependencies: 3906 transitivePeerDependencies:
3911 - '@vue/composition-api' 3907 - '@vue/composition-api'
3912 dev: false 3908 dev: false
...@@ -3966,24 +3962,24 @@ packages: ...@@ -3966,24 +3962,24 @@ packages:
3966 es-errors: 1.3.0 3962 es-errors: 1.3.0
3967 es-object-atoms: 1.0.0 3963 es-object-atoms: 1.0.0
3968 es-set-tostringtag: 2.0.3 3964 es-set-tostringtag: 2.0.3
3969 es-to-primitive: 1.2.1 3965 es-to-primitive: 1.3.0
3970 function.prototype.name: 1.1.6 3966 function.prototype.name: 1.1.6
3971 get-intrinsic: 1.2.4 3967 get-intrinsic: 1.2.4
3972 get-symbol-description: 1.0.2 3968 get-symbol-description: 1.0.2
3973 globalthis: 1.0.4 3969 globalthis: 1.0.4
3974 gopd: 1.0.1 3970 gopd: 1.1.0
3975 has-property-descriptors: 1.0.2 3971 has-property-descriptors: 1.0.2
3976 has-proto: 1.0.3 3972 has-proto: 1.1.0
3977 has-symbols: 1.0.3 3973 has-symbols: 1.1.0
3978 hasown: 2.0.2 3974 hasown: 2.0.2
3979 internal-slot: 1.0.7 3975 internal-slot: 1.0.7
3980 is-array-buffer: 3.0.4 3976 is-array-buffer: 3.0.4
3981 is-callable: 1.2.7 3977 is-callable: 1.2.7
3982 is-data-view: 1.0.1 3978 is-data-view: 1.0.1
3983 is-negative-zero: 2.0.3 3979 is-negative-zero: 2.0.3
3984 is-regex: 1.1.4 3980 is-regex: 1.2.0
3985 is-shared-array-buffer: 1.0.3 3981 is-shared-array-buffer: 1.0.3
3986 is-string: 1.0.7 3982 is-string: 1.1.0
3987 is-typed-array: 1.1.13 3983 is-typed-array: 1.1.13
3988 is-weakref: 1.0.2 3984 is-weakref: 1.0.2
3989 object-inspect: 1.13.3 3985 object-inspect: 1.13.3
...@@ -4018,11 +4014,11 @@ packages: ...@@ -4018,11 +4014,11 @@ packages:
4018 dependencies: 4014 dependencies:
4019 call-bind: 1.0.7 4015 call-bind: 1.0.7
4020 get-intrinsic: 1.2.4 4016 get-intrinsic: 1.2.4
4021 has-symbols: 1.0.3 4017 has-symbols: 1.1.0
4022 is-arguments: 1.1.1 4018 is-arguments: 1.1.1
4023 is-map: 2.0.3 4019 is-map: 2.0.3
4024 is-set: 2.0.3 4020 is-set: 2.0.3
4025 is-string: 1.0.7 4021 is-string: 1.1.0
4026 isarray: 2.0.5 4022 isarray: 2.0.5
4027 stop-iteration-iterator: 1.0.0 4023 stop-iteration-iterator: 1.0.0
4028 dev: true 4024 dev: true
...@@ -4425,7 +4421,7 @@ packages: ...@@ -4425,7 +4421,7 @@ packages:
4425 /eslint-plugin-antfu@0.38.6(eslint@8.57.1)(typescript@5.7.2): 4421 /eslint-plugin-antfu@0.38.6(eslint@8.57.1)(typescript@5.7.2):
4426 resolution: {integrity: sha512-oQImiNKe+iGwoznuydq70s6oJHpaUE/hCHFeu4v7oy/hfAw7oBuCNi6TCZtQ/MUr+4XyQwq9sdC3fsLZC+DF1g==} 4422 resolution: {integrity: sha512-oQImiNKe+iGwoznuydq70s6oJHpaUE/hCHFeu4v7oy/hfAw7oBuCNi6TCZtQ/MUr+4XyQwq9sdC3fsLZC+DF1g==}
4427 dependencies: 4423 dependencies:
4428 '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@5.7.2) 4424 '@typescript-eslint/utils': 5.62.0_6txzh3afdjfsavlpa2fczfkiua
4429 transitivePeerDependencies: 4425 transitivePeerDependencies:
4430 - eslint 4426 - eslint
4431 - supports-color 4427 - supports-color
...@@ -4524,10 +4520,10 @@ packages: ...@@ -4524,10 +4520,10 @@ packages:
4524 peerDependencies: 4520 peerDependencies:
4525 eslint: '>=6.0.0' 4521 eslint: '>=6.0.0'
4526 dependencies: 4522 dependencies:
4527 '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) 4523 '@eslint-community/eslint-utils': 4.4.1_eslint@8.57.1
4528 eslint: 8.57.1 4524 eslint: 8.57.1
4529 eslint-compat-utils: 0.6.3(eslint@8.57.1) 4525 eslint-compat-utils: 0.6.4_eslint@8.57.1
4530 eslint-json-compat-utils: 0.2.1(eslint@8.57.1)(jsonc-eslint-parser@2.4.0) 4526 eslint-json-compat-utils: 0.2.1_d4wlom7wv3mvgxh3hfp6lbe37e
4531 espree: 9.6.1 4527 espree: 9.6.1
4532 graphemer: 1.4.0 4528 graphemer: 1.4.0
4533 jsonc-eslint-parser: 2.4.0 4529 jsonc-eslint-parser: 2.4.0
...@@ -4557,8 +4553,8 @@ packages: ...@@ -4557,8 +4553,8 @@ packages:
4557 dependencies: 4553 dependencies:
4558 builtins: 5.1.0 4554 builtins: 5.1.0
4559 eslint: 8.57.1 4555 eslint: 8.57.1
4560 eslint-plugin-es: 4.1.0(eslint@8.57.1) 4556 eslint-plugin-es: 4.1.0_eslint@8.57.1
4561 eslint-utils: 3.0.0(eslint@8.57.1) 4557 eslint-utils: 3.0.0_eslint@8.57.1
4562 ignore: 5.3.2 4558 ignore: 5.3.2
4563 is-core-module: 2.15.1 4559 is-core-module: 2.15.1
4564 minimatch: 3.1.2 4560 minimatch: 3.1.2
...@@ -4587,7 +4583,7 @@ packages: ...@@ -4587,7 +4583,7 @@ packages:
4587 eslint: '>=8.28.0' 4583 eslint: '>=8.28.0'
4588 dependencies: 4584 dependencies:
4589 '@babel/helper-validator-identifier': 7.25.9 4585 '@babel/helper-validator-identifier': 7.25.9
4590 '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) 4586 '@eslint-community/eslint-utils': 4.4.1_eslint@8.57.1
4591 ci-info: 3.9.0 4587 ci-info: 3.9.0
4592 clean-regexp: 1.0.0 4588 clean-regexp: 1.0.0
4593 eslint: 8.57.1 4589 eslint: 8.57.1
...@@ -4626,14 +4622,14 @@ packages: ...@@ -4626,14 +4622,14 @@ packages:
4626 peerDependencies: 4622 peerDependencies:
4627 eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 4623 eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0
4628 dependencies: 4624 dependencies:
4629 '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) 4625 '@eslint-community/eslint-utils': 4.4.1_eslint@8.57.1
4630 eslint: 8.57.1 4626 eslint: 8.57.1
4631 globals: 13.24.0 4627 globals: 13.24.0
4632 natural-compare: 1.4.0 4628 natural-compare: 1.4.0
4633 nth-check: 2.1.1 4629 nth-check: 2.1.1
4634 postcss-selector-parser: 6.1.2 4630 postcss-selector-parser: 6.1.2
4635 semver: 7.6.3 4631 semver: 7.6.3
4636 vue-eslint-parser: 9.4.3(eslint@8.57.1) 4632 vue-eslint-parser: 9.4.3_eslint@8.57.1
4637 xml-name-validator: 4.0.0 4633 xml-name-validator: 4.0.0
4638 transitivePeerDependencies: 4634 transitivePeerDependencies:
4639 - supports-color 4635 - supports-color
...@@ -4647,7 +4643,7 @@ packages: ...@@ -4647,7 +4643,7 @@ packages:
4647 dependencies: 4643 dependencies:
4648 debug: 4.3.7 4644 debug: 4.3.7
4649 eslint: 8.57.1 4645 eslint: 8.57.1
4650 eslint-compat-utils: 0.5.1(eslint@8.57.1) 4646 eslint-compat-utils: 0.6.4_eslint@8.57.1
4651 lodash: 4.17.21 4647 lodash: 4.17.21
4652 natural-compare: 1.4.0 4648 natural-compare: 1.4.0
4653 yaml-eslint-parser: 1.2.3 4649 yaml-eslint-parser: 1.2.3
...@@ -4714,7 +4710,7 @@ packages: ...@@ -4714,7 +4710,7 @@ packages:
4714 deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. 4710 deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options.
4715 hasBin: true 4711 hasBin: true
4716 dependencies: 4712 dependencies:
4717 '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) 4713 '@eslint-community/eslint-utils': 4.4.1_eslint@8.57.1
4718 '@eslint-community/regexpp': 4.12.1 4714 '@eslint-community/regexpp': 4.12.1
4719 '@eslint/eslintrc': 2.1.4 4715 '@eslint/eslintrc': 2.1.4
4720 '@eslint/js': 8.57.1 4716 '@eslint/js': 8.57.1
...@@ -4778,7 +4774,7 @@ packages: ...@@ -4778,7 +4774,7 @@ packages:
4778 engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 4774 engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
4779 dependencies: 4775 dependencies:
4780 acorn: 8.14.0 4776 acorn: 8.14.0
4781 acorn-jsx: 5.3.2(acorn@8.14.0) 4777 acorn-jsx: 5.3.2_acorn@8.14.0
4782 eslint-visitor-keys: 3.4.3 4778 eslint-visitor-keys: 3.4.3
4783 dev: true 4779 dev: true
4784 4780
...@@ -5249,8 +5245,8 @@ packages: ...@@ -5249,8 +5245,8 @@ packages:
5249 dependencies: 5245 dependencies:
5250 es-errors: 1.3.0 5246 es-errors: 1.3.0
5251 function-bind: 1.1.2 5247 function-bind: 1.1.2
5252 has-proto: 1.0.3 5248 has-proto: 1.1.0
5253 has-symbols: 1.0.3 5249 has-symbols: 1.1.0
5254 hasown: 2.0.2 5250 hasown: 2.0.2
5255 5251
5256 /get-pixels@3.3.3: 5252 /get-pixels@3.3.3:
...@@ -6065,6 +6061,7 @@ packages: ...@@ -6065,6 +6061,7 @@ packages:
6065 resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} 6061 resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
6066 engines: {node: '>= 0.4'} 6062 engines: {node: '>= 0.4'}
6067 dependencies: 6063 dependencies:
6064 call-bind: 1.0.7
6068 has-tostringtag: 1.0.2 6065 has-tostringtag: 1.0.2
6069 dev: true 6066 dev: true
6070 6067
...@@ -6116,6 +6113,7 @@ packages: ...@@ -6116,6 +6113,7 @@ packages:
6116 engines: {node: '>= 0.4'} 6113 engines: {node: '>= 0.4'}
6117 dependencies: 6114 dependencies:
6118 call-bind: 1.0.7 6115 call-bind: 1.0.7
6116 gopd: 1.1.0
6119 has-tostringtag: 1.0.2 6117 has-tostringtag: 1.0.2
6120 dev: true 6118 dev: true
6121 6119
...@@ -6147,6 +6145,7 @@ packages: ...@@ -6147,6 +6145,7 @@ packages:
6147 resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} 6145 resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
6148 engines: {node: '>= 0.4'} 6146 engines: {node: '>= 0.4'}
6149 dependencies: 6147 dependencies:
6148 call-bind: 1.0.7
6150 has-tostringtag: 1.0.2 6149 has-tostringtag: 1.0.2
6151 dev: true 6150 dev: true
6152 6151
...@@ -7141,7 +7140,7 @@ packages: ...@@ -7141,7 +7140,7 @@ packages:
7141 minimatch: 3.1.2 7140 minimatch: 3.1.2
7142 pidtree: 0.3.1 7141 pidtree: 0.3.1
7143 read-pkg: 3.0.0 7142 read-pkg: 3.0.0
7144 shell-quote: 1.8.1 7143 shell-quote: 1.8.2
7145 string.prototype.padend: 3.1.6 7144 string.prototype.padend: 3.1.6
7146 dev: true 7145 dev: true
7147 7146
...@@ -7214,7 +7213,7 @@ packages: ...@@ -7214,7 +7213,7 @@ packages:
7214 dependencies: 7213 dependencies:
7215 call-bind: 1.0.7 7214 call-bind: 1.0.7
7216 define-properties: 1.2.1 7215 define-properties: 1.2.1
7217 has-symbols: 1.0.3 7216 has-symbols: 1.1.0
7218 object-keys: 1.1.1 7217 object-keys: 1.1.1
7219 dev: true 7218 dev: true
7220 7219
...@@ -7763,7 +7762,7 @@ packages: ...@@ -7763,7 +7762,7 @@ packages:
7763 resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} 7762 resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==}
7764 engines: {node: ^10 || ^12 || >=14} 7763 engines: {node: ^10 || ^12 || >=14}
7765 dependencies: 7764 dependencies:
7766 nanoid: 3.3.7 7765 nanoid: 3.3.8
7767 picocolors: 1.1.1 7766 picocolors: 1.1.1
7768 source-map-js: 1.2.1 7767 source-map-js: 1.2.1
7769 7768
...@@ -8015,7 +8014,7 @@ packages: ...@@ -8015,7 +8014,7 @@ packages:
8015 es-abstract: 1.23.5 8014 es-abstract: 1.23.5
8016 es-errors: 1.3.0 8015 es-errors: 1.3.0
8017 get-intrinsic: 1.2.4 8016 get-intrinsic: 1.2.4
8018 gopd: 1.0.1 8017 gopd: 1.1.0
8019 which-builtin-type: 1.2.0 8018 which-builtin-type: 1.2.0
8020 dev: true 8019 dev: true
8021 8020
...@@ -8222,7 +8221,7 @@ packages: ...@@ -8222,7 +8221,7 @@ packages:
8222 dependencies: 8221 dependencies:
8223 call-bind: 1.0.7 8222 call-bind: 1.0.7
8224 get-intrinsic: 1.2.4 8223 get-intrinsic: 1.2.4
8225 has-symbols: 1.0.3 8224 has-symbols: 1.1.0
8226 isarray: 2.0.5 8225 isarray: 2.0.5
8227 dev: true 8226 dev: true
8228 8227
...@@ -8329,7 +8328,7 @@ packages: ...@@ -8329,7 +8328,7 @@ packages:
8329 es-errors: 1.3.0 8328 es-errors: 1.3.0
8330 function-bind: 1.1.2 8329 function-bind: 1.1.2
8331 get-intrinsic: 1.2.4 8330 get-intrinsic: 1.2.4
8332 gopd: 1.0.1 8331 gopd: 1.1.0
8333 has-property-descriptors: 1.0.2 8332 has-property-descriptors: 1.0.2
8334 8333
8335 /set-function-name@2.0.2: 8334 /set-function-name@2.0.2:
...@@ -8958,13 +8957,13 @@ packages: ...@@ -8958,13 +8957,13 @@ packages:
8958 engines: {node: ^14.13.1 || >=16.0.0} 8957 engines: {node: ^14.13.1 || >=16.0.0}
8959 hasBin: true 8958 hasBin: true
8960 dependencies: 8959 dependencies:
8961 '@csstools/css-parser-algorithms': 2.7.1(@csstools/css-tokenizer@2.4.1) 8960 '@csstools/css-parser-algorithms': 2.7.1_glesim54nkefbp5a3gko6ietcq
8962 '@csstools/css-tokenizer': 2.4.1 8961 '@csstools/css-tokenizer': 2.4.1
8963 '@csstools/media-query-list-parser': 2.1.13(@csstools/css-parser-algorithms@2.7.1)(@csstools/css-tokenizer@2.4.1) 8962 '@csstools/media-query-list-parser': 2.1.13(@csstools/css-parser-algorithms@2.7.1)(@csstools/css-tokenizer@2.4.1)
8964 '@csstools/selector-specificity': 3.1.1(postcss-selector-parser@6.1.2) 8963 '@csstools/selector-specificity': 3.1.1(postcss-selector-parser@6.1.2)
8965 balanced-match: 2.0.0 8964 balanced-match: 2.0.0
8966 colord: 2.9.3 8965 colord: 2.9.3
8967 cosmiconfig: 8.3.6(typescript@5.7.2) 8966 cosmiconfig: 8.3.6_typescript@5.7.2
8968 css-functions-list: 3.2.3 8967 css-functions-list: 3.2.3
8969 css-tree: 2.3.1 8968 css-tree: 2.3.1
8970 debug: 4.3.7 8969 debug: 4.3.7
...@@ -8987,7 +8986,7 @@ packages: ...@@ -8987,7 +8986,7 @@ packages:
8987 picocolors: 1.1.1 8986 picocolors: 1.1.1
8988 postcss: 8.4.49 8987 postcss: 8.4.49
8989 postcss-resolve-nested-selector: 0.1.6 8988 postcss-resolve-nested-selector: 0.1.6
8990 postcss-safe-parser: 6.0.0(postcss@8.4.49) 8989 postcss-safe-parser: 6.0.0_postcss@8.4.49
8991 postcss-selector-parser: 6.1.2 8990 postcss-selector-parser: 6.1.2
8992 postcss-value-parser: 4.2.0 8991 postcss-value-parser: 4.2.0
8993 resolve-from: 5.0.0 8992 resolve-from: 5.0.0
...@@ -8996,7 +8995,7 @@ packages: ...@@ -8996,7 +8995,7 @@ packages:
8996 style-search: 0.1.0 8995 style-search: 0.1.0
8997 supports-hyperlinks: 3.1.0 8996 supports-hyperlinks: 3.1.0
8998 svg-tags: 1.0.0 8997 svg-tags: 1.0.0
8999 table: 6.8.2 8998 table: 6.9.0
9000 write-file-atomic: 5.0.1 8999 write-file-atomic: 5.0.1
9001 transitivePeerDependencies: 9000 transitivePeerDependencies:
9002 - supports-color 9001 - supports-color
...@@ -9053,7 +9052,7 @@ packages: ...@@ -9053,7 +9052,7 @@ packages:
9053 merge-options: 1.0.1 9052 merge-options: 1.0.1
9054 micromatch: 3.1.0 9053 micromatch: 3.1.0
9055 postcss: 5.2.18 9054 postcss: 5.2.18
9056 postcss-prefix-selector: 1.16.1(postcss@5.2.18) 9055 postcss-prefix-selector: 1.16.1_postcss@5.2.18
9057 posthtml-rename-id: 1.0.12 9056 posthtml-rename-id: 1.0.12
9058 posthtml-svg-mode: 1.0.3 9057 posthtml-svg-mode: 1.0.3
9059 query-string: 4.3.4 9058 query-string: 4.3.4
...@@ -9201,7 +9200,7 @@ packages: ...@@ -9201,7 +9200,7 @@ packages:
9201 resolution: {integrity: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==} 9200 resolution: {integrity: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==}
9202 engines: {node: '>=0.8'} 9201 engines: {node: '>=0.8'}
9203 dependencies: 9202 dependencies:
9204 psl: 1.13.0 9203 psl: 1.15.0
9205 punycode: 2.3.1 9204 punycode: 2.3.1
9206 dev: true 9205 dev: true
9207 9206
...@@ -9209,7 +9208,7 @@ packages: ...@@ -9209,7 +9208,7 @@ packages:
9209 resolution: {integrity: sha512-hN4uFRxbK+PX56DxYiGHsTn2dME3TVr9vbNqlQGcGcPhJAn+tdP126iA+TArMpI4YSgnTkMWyoLl5bf81Hi5TA==} 9208 resolution: {integrity: sha512-hN4uFRxbK+PX56DxYiGHsTn2dME3TVr9vbNqlQGcGcPhJAn+tdP126iA+TArMpI4YSgnTkMWyoLl5bf81Hi5TA==}
9210 engines: {node: '>= 0.4'} 9209 engines: {node: '>= 0.4'}
9211 dependencies: 9210 dependencies:
9212 gopd: 1.0.1 9211 gopd: 1.1.0
9213 typedarray.prototype.slice: 1.0.3 9212 typedarray.prototype.slice: 1.0.3
9214 which-typed-array: 1.1.15 9213 which-typed-array: 1.1.15
9215 dev: true 9214 dev: true
...@@ -9321,8 +9320,8 @@ packages: ...@@ -9321,8 +9320,8 @@ packages:
9321 dependencies: 9320 dependencies:
9322 call-bind: 1.0.7 9321 call-bind: 1.0.7
9323 for-each: 0.3.3 9322 for-each: 0.3.3
9324 gopd: 1.0.1 9323 gopd: 1.1.0
9325 has-proto: 1.0.3 9324 has-proto: 1.1.0
9326 is-typed-array: 1.1.13 9325 is-typed-array: 1.1.13
9327 dev: true 9326 dev: true
9328 9327
...@@ -9333,8 +9332,8 @@ packages: ...@@ -9333,8 +9332,8 @@ packages:
9333 available-typed-arrays: 1.0.7 9332 available-typed-arrays: 1.0.7
9334 call-bind: 1.0.7 9333 call-bind: 1.0.7
9335 for-each: 0.3.3 9334 for-each: 0.3.3
9336 gopd: 1.0.1 9335 gopd: 1.1.0
9337 has-proto: 1.0.3 9336 has-proto: 1.1.0
9338 is-typed-array: 1.1.13 9337 is-typed-array: 1.1.13
9339 reflect.getprototypeof: 1.0.7 9338 reflect.getprototypeof: 1.0.7
9340 dev: true 9339 dev: true
...@@ -9345,7 +9344,7 @@ packages: ...@@ -9345,7 +9344,7 @@ packages:
9345 dependencies: 9344 dependencies:
9346 call-bind: 1.0.7 9345 call-bind: 1.0.7
9347 for-each: 0.3.3 9346 for-each: 0.3.3
9348 gopd: 1.0.1 9347 gopd: 1.1.0
9349 is-typed-array: 1.1.13 9348 is-typed-array: 1.1.13
9350 possible-typed-array-names: 1.0.0 9349 possible-typed-array-names: 1.0.0
9351 reflect.getprototypeof: 1.0.7 9350 reflect.getprototypeof: 1.0.7
...@@ -9420,14 +9419,15 @@ packages: ...@@ -9420,14 +9419,15 @@ packages:
9420 acorn: 8.14.0 9419 acorn: 8.14.0
9421 escape-string-regexp: 5.0.0 9420 escape-string-regexp: 5.0.0
9422 estree-walker: 3.0.3 9421 estree-walker: 3.0.3
9423 fast-glob: 3.3.2
9424 local-pkg: 0.5.1 9422 local-pkg: 0.5.1
9425 magic-string: 0.30.13 9423 magic-string: 0.30.14
9426 mlly: 1.7.3 9424 mlly: 1.7.3
9427 pathe: 1.1.2 9425 pathe: 1.1.2
9426 picomatch: 4.0.2
9428 pkg-types: 1.2.1 9427 pkg-types: 1.2.1
9429 scule: 1.3.0 9428 scule: 1.3.0
9430 strip-literal: 2.1.1 9429 strip-literal: 2.1.1
9430 tinyglobby: 0.2.10
9431 unplugin: 1.16.0 9431 unplugin: 1.16.0
9432 transitivePeerDependencies: 9432 transitivePeerDependencies:
9433 - rollup 9433 - rollup
...@@ -9486,7 +9486,7 @@ packages: ...@@ -9486,7 +9486,7 @@ packages:
9486 '@rollup/pluginutils': 5.1.3 9486 '@rollup/pluginutils': 5.1.3
9487 '@vueuse/core': 10.11.1(vue@3.5.13) 9487 '@vueuse/core': 10.11.1(vue@3.5.13)
9488 local-pkg: 0.4.3 9488 local-pkg: 0.4.3
9489 magic-string: 0.30.13 9489 magic-string: 0.30.14
9490 minimatch: 9.0.5 9490 minimatch: 9.0.5
9491 unimport: 3.13.3 9491 unimport: 3.13.3
9492 unplugin: 1.16.0 9492 unplugin: 1.16.0
...@@ -9513,7 +9513,7 @@ packages: ...@@ -9513,7 +9513,7 @@ packages:
9513 debug: 4.3.7 9513 debug: 4.3.7
9514 fast-glob: 3.3.2 9514 fast-glob: 3.3.2
9515 local-pkg: 0.4.3 9515 local-pkg: 0.4.3
9516 magic-string: 0.30.13 9516 magic-string: 0.30.14
9517 minimatch: 7.4.6 9517 minimatch: 7.4.6
9518 resolve: 1.22.8 9518 resolve: 1.22.8
9519 unplugin: 1.16.0 9519 unplugin: 1.16.0
...@@ -9763,11 +9763,11 @@ packages: ...@@ -9763,11 +9763,11 @@ packages:
9763 vite: ^3.0.0-0 || ^4.0.0-0 9763 vite: ^3.0.0-0 || ^4.0.0-0
9764 dependencies: 9764 dependencies:
9765 '@babel/core': 7.26.0 9765 '@babel/core': 7.26.0
9766 '@babel/plugin-proposal-decorators': 7.25.9(@babel/core@7.26.0) 9766 '@babel/plugin-proposal-decorators': 7.25.9_@babel+core@7.26.0
9767 '@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.0) 9767 '@babel/plugin-syntax-import-attributes': 7.26.0_@babel+core@7.26.0
9768 '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.26.0) 9768 '@babel/plugin-syntax-import-meta': 7.10.4_@babel+core@7.26.0
9769 '@babel/plugin-transform-typescript': 7.25.9(@babel/core@7.26.0) 9769 '@babel/plugin-transform-typescript': 7.25.9_@babel+core@7.26.0
9770 '@vue/babel-plugin-jsx': 1.2.5(@babel/core@7.26.0) 9770 '@vue/babel-plugin-jsx': 1.2.5_@babel+core@7.26.0
9771 '@vue/compiler-dom': 3.5.13 9771 '@vue/compiler-dom': 3.5.13
9772 kolorist: 1.8.0 9772 kolorist: 1.8.0
9773 magic-string: 0.30.13 9773 magic-string: 0.30.13
...@@ -9836,7 +9836,8 @@ packages: ...@@ -9836,7 +9836,8 @@ packages:
9836 '@vue/composition-api': 9836 '@vue/composition-api':
9837 optional: true 9837 optional: true
9838 dependencies: 9838 dependencies:
9839 vue: 3.5.13(typescript@5.7.2) 9839 vue: 3.5.13_typescript@5.7.2
9840 dev: false
9840 9841
9841 /vue-eslint-parser@9.4.3(eslint@8.57.1): 9842 /vue-eslint-parser@9.4.3(eslint@8.57.1):
9842 resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==} 9843 resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==}
...@@ -9862,7 +9863,8 @@ packages: ...@@ -9862,7 +9863,8 @@ packages:
9862 vue: ^3.2.0 9863 vue: ^3.2.0
9863 dependencies: 9864 dependencies:
9864 '@vue/devtools-api': 6.6.4 9865 '@vue/devtools-api': 6.6.4
9865 vue: 3.5.13(typescript@5.7.2) 9866 vue: 3.5.13_typescript@5.7.2
9867 dev: false
9866 9868
9867 /vue-template-compiler@2.7.16: 9869 /vue-template-compiler@2.7.16:
9868 resolution: {integrity: sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==} 9870 resolution: {integrity: sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==}
...@@ -9878,7 +9880,7 @@ packages: ...@@ -9878,7 +9880,7 @@ packages:
9878 typescript: '*' 9880 typescript: '*'
9879 dependencies: 9881 dependencies:
9880 '@volar/typescript': 1.11.1 9882 '@volar/typescript': 1.11.1
9881 '@vue/language-core': 1.8.27(typescript@5.7.2) 9883 '@vue/language-core': 1.8.27_typescript@5.7.2
9882 semver: 7.6.3 9884 semver: 7.6.3
9883 typescript: 5.7.2 9885 typescript: 5.7.2
9884 dev: true 9886 dev: true
...@@ -9907,6 +9909,7 @@ packages: ...@@ -9907,6 +9909,7 @@ packages:
9907 '@vue/server-renderer': 3.5.13(vue@3.5.13) 9909 '@vue/server-renderer': 3.5.13(vue@3.5.13)
9908 '@vue/shared': 3.5.13 9910 '@vue/shared': 3.5.13
9909 typescript: 5.7.2 9911 typescript: 5.7.2
9912 dev: false
9910 9913
9911 /warning@4.0.3: 9914 /warning@4.0.3:
9912 resolution: {integrity: sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==} 9915 resolution: {integrity: sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==}
...@@ -9952,10 +9955,10 @@ packages: ...@@ -9952,10 +9955,10 @@ packages:
9952 is-date-object: 1.0.5 9955 is-date-object: 1.0.5
9953 is-finalizationregistry: 1.1.0 9956 is-finalizationregistry: 1.1.0
9954 is-generator-function: 1.0.10 9957 is-generator-function: 1.0.10
9955 is-regex: 1.1.4 9958 is-regex: 1.2.0
9956 is-weakref: 1.0.2 9959 is-weakref: 1.0.2
9957 isarray: 2.0.5 9960 isarray: 2.0.5
9958 which-boxed-primitive: 1.0.2 9961 which-boxed-primitive: 1.1.0
9959 which-collection: 1.0.2 9962 which-collection: 1.0.2
9960 which-typed-array: 1.1.15 9963 which-typed-array: 1.1.15
9961 dev: true 9964 dev: true
...@@ -9977,7 +9980,7 @@ packages: ...@@ -9977,7 +9980,7 @@ packages:
9977 available-typed-arrays: 1.0.7 9980 available-typed-arrays: 1.0.7
9978 call-bind: 1.0.7 9981 call-bind: 1.0.7
9979 for-each: 0.3.3 9982 for-each: 0.3.3
9980 gopd: 1.0.1 9983 gopd: 1.1.0
9981 has-tostringtag: 1.0.2 9984 has-tostringtag: 1.0.2
9982 dev: true 9985 dev: true
9983 9986
......
...@@ -2,201 +2,201 @@ import request from "@/utils/request"; ...@@ -2,201 +2,201 @@ import request from "@/utils/request";
2 2
3 /** 获取登记列表。 */ 3 /** 获取登记列表。 */
4 export const getRegisterList = (params) => request({ 4 export const getRegisterList = (params) => request({
5 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/page-list`, 5 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/page-list`,
6 method: 'post', 6 method: 'post',
7 data: params 7 data: params
8 }) 8 })
9 9
10 /** 获取登记详情 */ 10 /** 获取登记详情 */
11 export const getRegiaterDetail = (params) => request({ 11 export const getRegiaterDetail = (params) => request({
12 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/detail`, 12 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/detail`,
13 method: 'get', 13 method: 'get',
14 params 14 params
15 }) 15 })
16 16
17 /** 提交登记信息。 */ 17 /** 提交登记信息。 */
18 export const registerSave = (params) => request({ 18 export const registerSave = (params) => request({
19 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/save`, 19 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/save`,
20 method: 'post', 20 method: 'post',
21 data: params 21 data: params
22 }); 22 });
23 23
24 /** 更新登记信息 */ 24 /** 更新登记信息 */
25 export const registerUpdate = (params) => request({ 25 export const registerUpdate = (params) => request({
26 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/update`, 26 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/update`,
27 method: 'post', 27 method: 'post',
28 data: params 28 data: params
29 }); 29 });
30 30
31 /** 删除登记信息 */ 31 /** 删除登记信息 */
32 export const registerDelete = (params) => request({ 32 export const registerDelete = (params) => request({
33 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/delete`, 33 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/delete`,
34 method: 'delete', 34 method: 'delete',
35 data: params 35 data: params
36 }); 36 });
37 37
38 /** 获取当前会员审批流程信息 */ 38 /** 获取当前会员审批流程信息 */
39 export const getTenantApprove = (params={}) => request({ 39 export const getTenantApprove = (params = {}) => request({
40 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/get-node`, 40 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/get-node`,
41 method: 'get', 41 method: 'get',
42 params 42 params
43 }); 43 });
44 44
45 /** 获取资产登记,审批列表。 */ 45 /** 获取资产登记,审批列表。 */
46 export const getApproveList = (bizGuid) => request({ 46 export const getApproveList = (bizGuid) => request({
47 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/biz-arppove-list?biz_guid=${bizGuid}`, 47 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/biz-arppove-list?biz_guid=${bizGuid}`,
48 method: 'get' 48 method: 'get'
49 }); 49 });
50 50
51 /** 撤销审批流程 */ 51 /** 撤销审批流程 */
52 export const registerApproveCancel = (params) => request({ 52 export const registerApproveCancel = (params) => request({
53 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/canal`, 53 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/canal`,
54 method: 'post', 54 method: 'post',
55 data: params 55 data: params
56 }); 56 });
57 57
58 /** 重新提交审批流程 */ 58 /** 重新提交审批流程 */
59 export const registerApproveReSubmit = (params) => request({ 59 export const registerApproveReSubmit = (params) => request({
60 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/resubmit`, 60 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/resubmit`,
61 method: 'post', 61 method: 'post',
62 data: params 62 data: params
63 }); 63 });
64 64
65 /** 通过资产登记流程 */ 65 /** 通过资产登记流程 */
66 export const registerApproveAllow = (params) => request({ 66 export const registerApproveAllow = (params) => request({
67 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/allow`, 67 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/allow`,
68 method: 'post', 68 method: 'post',
69 data: params 69 data: params
70 }); 70 });
71 71
72 /** 驳回资产登记流程 */ 72 /** 驳回资产登记流程 */
73 export const registerApproveBackup = (params) => request({ 73 export const registerApproveBackup = (params) => request({
74 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/backup`, 74 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-approve/backup`,
75 method: 'post', 75 method: 'post',
76 data: params 76 data: params
77 }); 77 });
78 78
79 /** 获取企业名称列表,用于搜索 */ 79 /** 获取企业名称列表,用于搜索 */
80 export const getRegisterTenant = () => request({ 80 export const getRegisterTenant = () => request({
81 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/get-tenant-list`, 81 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/get-tenant-list`,
82 method: 'get' 82 method: 'get'
83 }); 83 });
84 84
85 /** 资产质量评价相关接口 */ 85 /** 资产质量评价相关接口 */
86 86
87 /** 获取资产质量评价列表。 */ 87 /** 获取资产质量评价列表。 */
88 export const getQualityEvaList = (params) => request({ 88 export const getQualityEvaList = (params) => request({
89 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/page-list`, 89 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/page-list`,
90 method: 'post', 90 method: 'post',
91 data: params 91 data: params
92 }) 92 })
93 93
94 /** 发起数据质量评价 */ 94 /** 发起数据质量评价 */
95 export const saveQuality = (params) => request({ 95 export const saveQuality = (params) => request({
96 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/save`, 96 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/save`,
97 method: 'post', 97 method: 'post',
98 data: params 98 data: params
99 }) 99 })
100 100
101 /** 再次提交数据质量评价 */ 101 /** 再次提交数据质量评价 */
102 export const updatQuality = (params) => request({ 102 export const updatQuality = (params) => request({
103 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/update`, 103 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/update`,
104 method: 'post', 104 method: 'post',
105 data: params 105 data: params
106 }) 106 })
107 107
108 /** 获取可以发起资产质量评价的选项列表。 */ 108 /** 获取可以发起资产质量评价的选项列表。 */
109 /** type: 1 质量评价;2 资产评估 */ 109 /** type: 1 质量评价;2 资产评估 */
110 export const getRegisteredList = (type) => request({ 110 export const getRegisteredList = (type) => request({
111 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/get-valid-list?type=${type}`, 111 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/get-valid-list?type=${type}`,
112 method: 'get' 112 method: 'get'
113 }) 113 })
114 114
115 /** 质量评价审批通过 */ 115 /** 质量评价审批通过 */
116 export const qualityAllow = (params) => request({ 116 export const qualityAllow = (params) => request({
117 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/allow`, 117 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/allow`,
118 method: 'post', 118 method: 'post',
119 data: params 119 data: params
120 }); 120 });
121 121
122 /** 删除质量评价 */ 122 /** 删除质量评价 */
123 export const deleteQuality = (params) => request({ 123 export const deleteQuality = (params) => request({
124 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/delete`, 124 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/delete`,
125 method: 'delete', 125 method: 'delete',
126 data: params 126 data: params
127 }); 127 });
128 128
129 /** 获取资产质量评价详情 */ 129 /** 获取资产质量评价详情 */
130 export const getEvaDetail = (params) => request({ 130 export const getEvaDetail = (params) => request({
131 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/detail`, 131 url: `${import.meta.env.VITE_API_NEW_PORTAL}/quality-evaluation/detail`,
132 method: 'get', 132 method: 'get',
133 params 133 params
134 }) 134 })
135 135
136 /** 资产价值评估相关接口 */ 136 /** 资产价值评估相关接口 */
137 137
138 /** 获取资产价值评估分页列表。 */ 138 /** 获取资产价值评估分页列表。 */
139 export const getCostAssessList = (params) => request({ 139 export const getCostAssessList = (params) => request({
140 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/page-list`, 140 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/page-list`,
141 method: 'post', 141 method: 'post',
142 data: params 142 data: params
143 }) 143 })
144 144
145 /** 发起数据价值评估 */ 145 /** 发起数据价值评估 */
146 export const saveCostAssess = (params) => request({ 146 export const saveCostAssess = (params) => request({
147 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/save`, 147 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/save`,
148 method: 'post', 148 method: 'post',
149 data: params 149 data: params
150 }) 150 })
151 151
152 /** 再次提交数据价值评估 */ 152 /** 再次提交数据价值评估 */
153 export const updateCostAssess = (params) => request({ 153 export const updateCostAssess = (params) => request({
154 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/update`, 154 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/update`,
155 method: 'post', 155 method: 'post',
156 data: params 156 data: params
157 }) 157 })
158 158
159 /** 删除数据价值评估 */ 159 /** 删除数据价值评估 */
160 export const deleteCostAssess = (params) => request({ 160 export const deleteCostAssess = (params) => request({
161 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/delete`, 161 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/delete`,
162 method: 'delete', 162 method: 'delete',
163 data: params 163 data: params
164 }); 164 });
165 165
166 /** 通过价值评估审批 */ 166 /** 通过价值评估审批 */
167 export const costAssessAllow = (params) => request({ 167 export const costAssessAllow = (params) => request({
168 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/allow`, 168 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/allow`,
169 method: 'post', 169 method: 'post',
170 data: params 170 data: params
171 }); 171 });
172 172
173 /** 获取价值评估详情 */ 173 /** 获取价值评估详情 */
174 export const getCostAssessDetail = (params) => request({ 174 export const getCostAssessDetail = (params) => request({
175 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/detail`, 175 url: `${import.meta.env.VITE_API_NEW_PORTAL}/cost-assessment/detail`,
176 method: 'get', 176 method: 'get',
177 params 177 params
178 }) 178 })
179 179
180 /** ------- 证件管理--------- */ 180 /** ------- 证件管理--------- */
181 /** 获取证件管理分页列表数据 */ 181 /** 获取证件管理分页列表数据 */
182 export const getRegistDocumentList = (params) => request({ 182 export const getRegistDocumentList = (params) => request({
183 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-document/page-list`, 183 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-document/page-list`,
184 method: 'post', 184 method: 'post',
185 data: params 185 data: params
186 }) 186 })
187 187
188 /** 获取证件详情 */ 188 /** 获取证件详情 */
189 export const getCertificateDetail = (params) => request({ 189 export const getCertificateDetail = (params) => request({
190 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-document/detail`, 190 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-document/detail`,
191 method: 'get', 191 method: 'get',
192 params 192 params
193 }) 193 })
194 194
195 /** 发证确认 */ 195 /** 发证确认 */
196 export const updateCertificate = (params) => request({ 196 export const updateCertificate = (params) => request({
197 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-document/update-state`, 197 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-document/update-state`,
198 method: 'post', 198 method: 'post',
199 data: params 199 data: params
200 }) 200 })
201 201
202 /** 获取当前会员分配的交易所 */ 202 /** 获取当前会员分配的交易所 */
...@@ -208,30 +208,30 @@ export const getServiceDetail = (params) => request({ ...@@ -208,30 +208,30 @@ export const getServiceDetail = (params) => request({
208 208
209 /** 获取可使用的资产目录列表 */ 209 /** 获取可使用的资产目录列表 */
210 export const getRegisterCatalogList = () => request({ 210 export const getRegisterCatalogList = () => request({
211 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/dam-list?isRegister=${'Y'}`, 211 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/dam-list?isRegister=${'Y'}`,
212 method: 'get' 212 method: 'get'
213 }) 213 })
214 214
215 /*** -------------------- 资产目录管理 ------------------------ */ 215 /*** -------------------- 资产目录管理 ------------------------ */
216 216
217 /** 数据来源列表 */ 217 /** 数据来源列表 */
218 export const dataSourcesList = [ 218 export const dataSourcesList = [
219 { 219 {
220 value: 1, 220 value: 1,
221 label: '授权数据', 221 label: '授权数据',
222 }, 222 },
223 { 223 {
224 value: 2, 224 value: 2,
225 label: '自有数据', 225 label: '自有数据',
226 }, 226 },
227 { 227 {
228 value: 3, 228 value: 3,
229 label: '购买数据', 229 label: '购买数据',
230 }, 230 },
231 { 231 {
232 value: 4, 232 value: 4,
233 label: '其他来源', 233 label: '其他来源',
234 } 234 }
235 ] 235 ]
236 236
237 //获取参数字典列表。 这个是主系统的所有字典 237 //获取参数字典列表。 这个是主系统的所有字典
...@@ -241,8 +241,9 @@ export const dataSourcesList = [ ...@@ -241,8 +241,9 @@ export const dataSourcesList = [
241 // data 241 // data
242 // }) 242 // })
243 export const getParamsList = (params) => request({ 243 export const getParamsList = (params) => request({
244 url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType?dictType=${params.dictType}`, 244 url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType`,
245 method: 'get', 245 method: 'get',
246 params
246 }) 247 })
247 248
248 /** 获取参数类型列表 */ 249 /** 获取参数类型列表 */
...@@ -251,10 +252,11 @@ export const getParamsList = (params) => request({ ...@@ -251,10 +252,11 @@ export const getParamsList = (params) => request({
251 // method: 'post', 252 // method: 'post',
252 // data: { paramCode: "DAM-TYPE" } 253 // data: { paramCode: "DAM-TYPE" }
253 // }) 254 // })
254 export const getDamTypesList = (params) => request({ 255 // export const getDamTypesList = (params) => request({
255 url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType?dictType=${params.dictType}`, 256 // url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType`,
256 method: 'get', 257 // method: 'get',
257 }) 258 // params
259 // })
258 260
259 /** 获取所属主题的四级参数类型列表 */ 261 /** 获取所属主题的四级参数类型列表 */
260 // export const getSubjectDoaminList = () => request({ 262 // export const getSubjectDoaminList = () => request({
...@@ -262,10 +264,11 @@ export const getDamTypesList = (params) => request({ ...@@ -262,10 +264,11 @@ export const getDamTypesList = (params) => request({
262 // method: 'post', 264 // method: 'post',
263 // data: { paramCode: "SUBJECT-DOMAIN" } 265 // data: { paramCode: "SUBJECT-DOMAIN" }
264 // }) 266 // })
265 export const getSubjectDoaminList = (params) => request({ 267 // export const getSubjectDoaminList = (params) => request({
266 url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType?dictType=${params.dictType}`, 268 // url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType`,
267 method: 'get', 269 // method: 'get',
268 }) 270 // params
271 // })
269 272
270 // 获取数据类型的接口 273 // 获取数据类型的接口
271 // export const getDataTypeList = () => request({ 274 // export const getDataTypeList = () => request({
...@@ -273,109 +276,116 @@ export const getSubjectDoaminList = (params) => request({ ...@@ -273,109 +276,116 @@ export const getSubjectDoaminList = (params) => request({
273 // method: 'post', 276 // method: 'post',
274 // data: { paramCode: "DATA_TYPE" } 277 // data: { paramCode: "DATA_TYPE" }
275 // }) 278 // })
276 // 新获取数据类型的接口 279 // // 新获取数据类型的接口
277 export const getDataTypeList = (params) => request({ 280 // export const getDataTypeList = (params) => request({
278 url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType?dictType=${params.dictType}`, 281 // url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType`,
279 method: 'get', 282 // method: 'get',
280 }) 283 // params
284 // })
281 285
282 286
283 export const getDamCatalogTable = (params) => request({ 287 export const getDamCatalogTable = (params) => request({
284 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/page-list`, 288 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/page-list`,
285 method: 'post', 289 method: 'post',
286 data: params 290 data: params
287 }) 291 })
288 292
289 /** 删除数据资产目录 */ 293 /** 删除数据资产目录 */
290 export const registerCatalogDelete = (params) => request({ 294 export const registerCatalogDelete = (params) => request({
291 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/delete`, 295 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/delete`,
292 method: 'delete', 296 method: 'delete',
293 data: params 297 data: params
294 }); 298 });
295 299
296 /** 保存数据资产目录 */ 300 /** 保存数据资产目录 */
297 export const registerCatalogSave = (params) => request({ 301 export const registerCatalogSave = (params) => request({
298 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/save`, 302 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/save`,
299 method: 'post', 303 method: 'post',
300 data: params 304 data: params
301 }); 305 });
302 306
303 /** 验证资产名称是否存在 */ 307 /** 验证资产名称是否存在 */
304 export const existDamName = (params) => request({ 308 export const existDamName = (params) => request({
305 url:`${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/exists?damName=${params}`, 309 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/exists?damName=${params}`,
306 method: 'get' 310 method: 'get'
307 }); 311 });
308 312
309 /** 获取资产目录基本信息的详情 */ 313 /** 获取资产目录基本信息的详情 */
310 export const getRegisterCatalogDetail = (guid) => request({ 314 export const getRegisterCatalogDetail = (guid) => request({
311 url:`${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/detail?guid=${guid}`, 315 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/detail?guid=${guid}`,
312 method: 'get' 316 method: 'get'
313 }); 317 });
314 318
315 /** 获取资产目录表的详情 */ 319 /** 获取资产目录表的详情 */
316 export const getRegisterCatalogTableDetail = (subjectGuid) => request({ 320 export const getRegisterCatalogTableDetail = (subjectGuid) => request({
317 url:`${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/get-table-detail?subjectGuid=${subjectGuid}`, 321 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/get-table-detail?subjectGuid=${subjectGuid}`,
318 method: 'get' 322 method: 'get'
319 }); 323 });
320 324
321 /** 编辑资产目录基本信息 */ 325 /** 编辑资产目录基本信息 */
322 export const registerCatalogUpdate = (params) => request({ 326 export const registerCatalogUpdate = (params) => request({
323 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/update`, 327 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/update`,
324 method: 'post', 328 method: 'post',
325 data: params 329 data: params
326 }); 330 });
327 331
328 /** 新增资产目录表 */ 332 /** 新增资产目录表 */
329 export const registerCatalogTableSave = (params) => request({ 333 export const registerCatalogTableSave = (params) => request({
330 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/add-table`, 334 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/add-table`,
331 method: 'post', 335 method: 'post',
332 data: params 336 data: params
333 }); 337 });
334 338
335 /** 编辑资产目录表 */ 339 /** 编辑资产目录表 */
336 export const registerCatalogTableUpdate = (params) => request({ 340 export const registerCatalogTableUpdate = (params) => request({
337 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/update-table`, 341 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/update-table`,
338 method: 'post', 342 method: 'post',
339 data: params 343 data: params
340 }); 344 });
341 345
342 /** 删除资产目录表 */ 346 /** 删除资产目录表 */
343 export const registerCatalogTableDelete = (params) => request({ 347 export const registerCatalogTableDelete = (params) => request({
344 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/remove-table?damGuid=${params.damGuid}&subjectGuid=${params.subjectGuid}`, 348 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/remove-table?damGuid=${params.damGuid}&subjectGuid=${params.subjectGuid}`,
345 method: 'post' 349 method: 'post'
346 }); 350 });
347 351
348 /** 获取资产目录表 */ 352 /** 获取资产目录表 */
349 export const getRegisterCatalogTableList = (damGuid) => request({ 353 export const getRegisterCatalogTableList = (damGuid) => request({
350 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/get-table-list?damGuid=${damGuid}`, 354 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/get-table-list?damGuid=${damGuid}`,
351 method: 'get' 355 method: 'get'
352 }); 356 });
353 357
354 /** 查看资产表数据 */ 358 /** 查看资产表数据 */
355 export const queryData = (subjectGuid) => request({ 359 export const queryData = (subjectGuid) => request({
356 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/preview-data/${subjectGuid}`, 360 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/preview-data/${subjectGuid}`,
357 method: 'get' 361 method: 'get'
358 }); 362 });
359 363
360 /** 验证新增和编辑资产表 */ 364 /** 验证新增和编辑资产表 */
361 export const checkDamTableChange = (params) => request({ 365 export const checkDamTableChange = (params) => request({
362 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/check-table-change`, 366 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/check-table-change`,
363 method: 'post', 367 method: 'post',
364 data: params 368 data: params
365 }); 369 });
366 370
367 371
368 /** ------------------ 公示异议处理 -------------------------------- */ 372 /** ------------------ 公示异议处理 -------------------------------- */
369 /** 获取异议列表数据 */ 373 /** 获取异议列表数据 */
370 export const getDissentList = (params) => request({ 374 export const getDissentList = (params) => request({
371 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-dissent-handle/page-list`, 375 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-dissent-handle/page-list`,
372 method: 'post', 376 method: 'post',
373 data: params 377 data: params
374 }) 378 })
375 379
376 /** 更新异议处理 */ 380 /** 更新异议处理 */
377 export const updateDissentState = (params) => request({ 381 export const updateDissentState = (params) => request({
378 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-dissent-handle/update-state`, 382 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-dissent-handle/update-state`,
379 method: 'post', 383 method: 'post',
380 data: params 384 data: params
385 })
386
387 // 获取数交所数据
388 export const getExchangeList = () => request({
389 url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/register-num`,
390 method: 'post'
381 }) 391 })
......
...@@ -64,8 +64,7 @@ export const getQualityTableRule = (params) => request({ ...@@ -64,8 +64,7 @@ export const getQualityTableRule = (params) => request({
64 /** 删除质检表规则 */ 64 /** 删除质检表规则 */
65 export const deleteQualityTableRule = (params) => request({ 65 export const deleteQualityTableRule = (params) => request({
66 url: `${import.meta.env.VITE_APP_QUALITY_BASEURL}/quality-model/conf/del?ruleConfGuid=${params}`, 66 url: `${import.meta.env.VITE_APP_QUALITY_BASEURL}/quality-model/conf/del?ruleConfGuid=${params}`,
67 method: 'delete', 67 method: 'delete'
68 data: params
69 }) 68 })
70 69
71 /** 更新质检表规则的禁用和启用状态 */ 70 /** 更新质检表规则的禁用和启用状态 */
......
...@@ -33,13 +33,6 @@ export const getSystemMenu = (params) => { ...@@ -33,13 +33,6 @@ export const getSystemMenu = (params) => {
33 }); 33 });
34 }; 34 };
35 35
36 export const getCurrentUserInfo = (tenantGuid) => {
37 return request({
38 url: `${import.meta.env.VITE_APP_PERSONAL_URL}/staff/data/get-current-staff?tenantGuid=${tenantGuid}`,
39 method: "post",
40 });
41 };
42
43 // 获取当前用户对应的产品和菜单 36 // 获取当前用户对应的产品和菜单
44 export const getUserInfo = () => { 37 export const getUserInfo = () => {
45 return request({ 38 return request({
...@@ -275,3 +268,17 @@ export const getAllFlowData = (params) => request({ ...@@ -275,3 +268,17 @@ export const getAllFlowData = (params) => request({
275 method: 'get', 268 method: 'get',
276 params 269 params
277 }) 270 })
271 // 获取资产/价值评估机构数据
272 export const getSingleList = (params) => request({
273 url: `${import.meta.env.VITE_APP_PERSONAL_URL}/tenant/singlePage`,
274 method: 'post',
275 data: params
276 })
277 // 获取当前登录人信息
278 export const getCurrentUserInfo = (params) => {
279 return request({
280 url: `${import.meta.env.VITE_APP_PERSONAL_URL}/staff/data/get-current-staff`,
281 method: "post",
282 params
283 });
284 };
......
1 import request from "@/utils/request";
2 import useUserStore from "@/store/modules/user";
3 const userStore = useUserStore()
4 const userData = JSON.parse(userStore.userData)
5
6 // 获取流程详情。
7 export const getProcessFlowDetail = (params) => request({
8 url: `${import.meta.env.VITE_APP_WORK_FLOW_URL}/work-flow/detail/?approvalGuid=${params}`,
9 method: 'post',
10 })
11 // 审批通过
12 export const passFlowData = (params) => request({
13 url: `${import.meta.env.VITE_APP_WORK_FLOW_URL}/work-flow/data/allow-flow`,
14 method: 'post',
15 data: params
16 })
17 // 审批驳回
18 export const rejectFlowData = (params) => request({
19 url: `${import.meta.env.VITE_APP_WORK_FLOW_URL}/work-flow/data/backup-flow`,
20 method: 'post',
21 data: params
22 })
23 // 审批撤销
24 export const revokeFlowData = (params) => request({
25 url: `${import.meta.env.VITE_APP_WORK_FLOW_URL}/work-flow/data/canal-flow`,
26 method: 'post',
27 data: params
28 })
29 // 删除流程
30 export const deleteFlowData = (params) => request({
31 url: `${import.meta.env.VITE_APP_WORK_FLOW_URL}/work-flow/data/del`,
32 method: 'post',
33 params
34 })
35
36 export const getFlowData = (params) => request({
37 url: `${import.meta.env.VITE_APP_WORK_FLOW_URL}/work-flow/data/page-list`,
38 method: 'post',
39 data: params
40 })
41 export const getCamundaDeploymentId = (flowType) => request({
42 url: `${import.meta.env.VITE_APP_WORK_FLOW_URL}/work-flow/data/get-camunda-deployment-id`,
43 method: 'post',
44 data: {
45 tenantGuid: userData.tenantGuid,
46 flowType:flowType,
47 staffGuid: userData.staffGuid,
48 }
49 })
50
51 export const getDetailDataPromise = (deploymentId)=> request({
52 url: `${import.meta.env.VITE_APP_CAMUNDA_URL}/process-definition/get-detail?deploymentId=${deploymentId}`,
53 method: 'get',
54 })
55
56 export const getProcessNodesPromise = (params)=>request({
57 url: `${import.meta.env.VITE_APP_CAMUNDA_URL}/process-definition/get-process-nodes`,
58 method: 'post',
59 data: params
60 })
1 import ApprovalProcess from './src/ApprovalProcess.vue'
2
3 export { ApprovalProcess }
1 <script setup lang="tsx">
2 import LookBpmn from "./components/LookBpmn.vue";
3 import useProcessStore from '@/store/modules/process'
4 import { cloneDeep } from 'lodash-es';
5 import { getProcessNodesPromise } from "@/api/modules/workFlowService"
6 const processStore = useProcessStore()
7 const props = defineProps({
8 deploymentId: {
9 type: String,
10 default: ''
11 },
12 processInstanceId: {
13 type: String,
14 default: ''
15 },
16 });
17 const tableData = ref<any>([])
18 const lookBpmnRef = ref()
19 // const contentRef = ref();
20 // const { height: contentHeight } = useElementSize(contentRef);
21 const renderProcessNodes = () => {
22 let param = {
23 deploymentId: props.deploymentId || null,
24 processInstanceId: props.processInstanceId || null,
25 };
26 getProcessNodesPromise(param).then((res:any) => {
27 if (res.code === "00000") {
28 let data = res.data;
29 if (data) {
30 data.forEach((i, index) => {
31 i.id = i.activityId;
32 i.staffName = "";
33 if (i.staffVOS && i.staffVOS.length > 1) {
34 i.staffVOS.forEach((j) => {
35 j.id = j.staffGuid;
36 j.processName = i.processName;
37 if (j.approvalState) {
38 i.approvalState = j.approvalState;
39 i.approvalSuggest = j.approvalSuggest;
40 i.approvalTime = j.approvalTime;
41 i.staffName = j.staffName;
42 }
43 });
44
45 i.children = i.staffVOS;
46 } else {
47 if (i.staffVOS) {
48 i.approvalState = i.staffVOS[i.staffVOS.length - 1].approvalState;
49 i.approvalSuggest =
50 i.staffVOS[i.staffVOS.length - 1].approvalSuggest;
51 i.approvalTime = i.staffVOS[i.staffVOS.length - 1].approvalTime;
52 i.staffName = i.staffVOS[i.staffVOS.length - 1].staffName;
53 } else {
54 if (i.organisationVOS) {
55 i.approvalState = "";
56 i.approvalSuggest = "";
57 i.approvalTime = "";
58 if (i.organisationVOS.length > 1) {
59 i.staffName =
60 i.organisationVOS[0].organisationName +
61 "等" +
62 i.organisationVOS.length +
63 "个部门";
64 } else {
65 i.staffName = i.organisationVOS[0].organisationName;
66 }
67 } else if (i.positionVOS != null && i.positionVOS.length > 0) {
68 i.approvalState = "";
69 i.approvalSuggest = "";
70 i.approvalTime = "";
71 if (i.positionVOS.length > 1) {
72 if (i.staffName) {
73 i.staffName =
74 i.staffName +
75 "," +
76 i.positionVOS[0].positionName +
77 "等" +
78 i.positionVOS.length +
79 "个岗位";
80 } else {
81 i.staffName = i.positionVOS[0].positionName;
82 }
83 } else {
84 if (i.staffName) {
85 i.staffName =
86 i.staffName + "," + i.positionVOS[0].positionName;
87 } else {
88 i.staffName = i.positionVOS[0].positionName;
89 }
90 }
91 } else if (i.candidateUsers != null && i.candidateUsers != "") {
92 i.approvalState = "";
93 i.approvalSuggest = "";
94 i.approvalTime = "";
95 if (i.candidateUsers.length > 1) {
96 i.staffName =
97 i.candidateUsers[0].staffName +
98 "等" +
99 i.candidateUsers.length +
100 "个人员";
101 if (i.candidateUsers) {
102 i.candidateUsers.forEach((j) => {
103 j.id = j.staffGuid;
104 j.processName = i.processName;
105 });
106 }
107 i.children = i.candidateUsers;
108 } else {
109 i.staffName = i.candidateUsers[0].staffName;
110 }
111 }
112 }
113 }
114 });
115 }
116 tableData.value = data
117 processStore.processNodes = cloneDeep(tableData.value)
118 localStorage.setItem('processTableData',JSON.stringify(tableData.value));
119 nextTick(()=>{
120 setTimeout(()=>{
121 getSpecialEventUserTaskList()
122 })
123 })
124 }
125 });
126 };
127 const getApprovalState = (val: string) => {
128 if (!val) {
129 return "-";
130 } else {
131 if (val == "W") {
132 return (val = "待提交");
133 } else if (val == "N") {
134 return (val = "初始");
135 } else if (val == "A") {
136 return (val = "审批中");
137 } else if (val == "Y") {
138 return (val = "已通过");
139 } else if (val == "F") {
140 return (val = "已完成");
141 } else if (val == "R") {
142 return (val = "已驳回");
143 } else if (val == "C") {
144 return (val = "已撤销");
145 } else {
146 return (val = "");
147 }
148 }
149 }
150 const getSpecialEventUserTaskList = () => {
151 lookBpmnRef.value.getDetailData(props.deploymentId)
152 };
153
154 onBeforeRouteLeave((to, from) =>{
155 processStore.clearStore()
156 })
157 onMounted(() => {
158 renderProcessNodes()
159 });
160 defineExpose({
161 renderProcessNodes
162 })
163 </script>
164
165 <template>
166 <div>
167 <!-- <Table :columns="columns" :data="tableData" :border="false"></Table> -->
168 <el-table tooltip-effect="light" :data="tableData" :border="false" >
169 <el-table-column type="index" label="节点" :width="140" align="left" >
170 <template #default="scope">
171 {{ scope.row.processName ||'-' }}
172 </template>
173 </el-table-column>
174 <el-table-column type="index" label="处理对象" :width="140" align="left" show-overflow-tooltip>
175 <template #default="scope">
176 {{ scope.row.staffName ||'-' }}
177 </template>
178 </el-table-column>
179 <el-table-column type="index" label="操作时间" :width="180" align="left" show-overflow-tooltip >
180 <template #default="scope">
181 {{ scope.row.approvalTime||'-'}}
182 </template>
183 </el-table-column>
184
185 <!-- <el-table-column type="index" label="申请人" :width="100" align="left" >
186 <template #default="scope">
187 {{ scope.row.applyName||'-'}}
188 </template>
189 </el-table-column>
190
191 <el-table-column label="申请时间" :width="180" align="left" >
192 <template #default="scope">
193 {{ scope.row.time||'-'}}
194 </template>
195 </el-table-column> -->
196 <el-table-column label="审批状态" :width="140" align="left" show-overflow-tooltip>
197 <template #default="scope">
198 <div v-if="scope.row.approvalState === 'A'" class='state-sty'>{{ getApprovalState(scope.row.approvalState) }}</div>
199 <div v-else-if="scope.row.approvalState === 'Y'" class='state-sty1'>{{getApprovalState(scope.row.approvalState) }}</div>
200 <div v-else-if="scope.row.approvalState === 'R'" class='state-sty2'>{{ getApprovalState(scope.row.approvalState) }}</div>
201 <div v-else>{{getApprovalState(scope.row.approvalState)}}</div>
202 </template>
203 </el-table-column>
204
205 <el-table-column label="审批原因" align="left" >
206 <template #default="scope">
207 {{ scope.row.approvalSuggest||'-'}}
208 </template>
209 </el-table-column>
210 </el-table>
211 <div class="bpmn-sty pt-20px" style="margin-top: 20px">
212 <span style="font-size:16px;color:#666">{{ '审批流程' }}</span>
213 <el-divider style="margin-bottom:10px!important;margin-top:10px!important" />
214 <LookBpmn ref="lookBpmnRef"></LookBpmn>
215 </div>
216 </div>
217 </template>
218
219 <style lang="scss" scoped>
220 .iframe-sty {
221 width: 100%;
222 border: none;
223 // height: 600px;
224 }
225 :deep(.el-table) {
226 .state-sty {
227 width: 52px;
228 height: 21px;
229 text-align: center;
230 line-height: 21px;
231 background: #FFEEE3;
232 border-radius: 3px;
233 color: #FF8623;
234 }
235 .state-sty1 {
236 width: 52px;
237 height: 21px;
238 text-align: center;
239 line-height: 21px;
240 background: #E3F0F0;
241 border-radius: 3px;
242 color: #4FA1A4;
243 }
244 .state-sty2 {
245 width: 52px;
246 height: 21px;
247 text-align: center;
248 line-height: 21px;
249 background: #FFE4E2;
250 border-radius: 3px;
251 color: #FE4638;
252 }
253 .state-sty3 {
254 width: 52px;
255 height: 21px;
256 text-align: center;
257 line-height: 21px;
258 background: #E3E3E3;
259 border-radius: 3px;
260 color: #323233;
261 }
262 }
263 </style>
1 <script setup lang="ts">
2 import camundaModdleDescriptor from 'camunda-bpmn-moddle/resources/camunda';
3 import BpmnViewer from 'bpmn-js/lib/Viewer'; //查看 .bpmn 文件
4 import { append as svgAppend, attr as svgAttr, create as svgCreate } from 'tiny-svg'
5 import { query as domQuery } from 'min-dom'
6 import $ from 'jquery'
7 import { getDetailDataPromise } from "@/api/modules/workFlowService"
8 const canvasRef = ref()
9 let bpmnViewer = reactive<any>({})
10 const processScript = ref('')
11 const tenantGuid = ref('')
12 const elementRegistry = ref<any>([])
13 const form = reactive({
14 processName: '',
15 description: ''
16 })
17 const nodeList = ref<any[]>([])
18 const startList = ref<any[]>([])
19 const endList = ref<any[]>([])
20
21 const createNewDiagram = () => {
22 bpmnViewer.importXML(processScript.value, (err) => {
23 if (err) {
24 console.error(err)
25 } else {
26 //改变箭头颜色
27 const marker = svgCreate('marker')
28 svgAttr(marker, {
29 id: 'sequenceflow-arrow-normal',
30 viewBox: '0 0 20 20',
31 refX: '11',
32 refY: '10',
33 markerWidth: '10',
34 markerHeight: '10',
35 orient: 'auto'
36 })
37 const path = svgCreate('path')
38 svgAttr(path, {
39 d: 'M 1 5 L 11 10 L 1 15 Z',
40 style: ' stroke-width: 1px; stroke-linecap: round; stroke-dasharray: 10000, 1;stroke: #A8A8A8;fill:#A8A8A8; '
41 })
42 const defs: any = domQuery('defs');
43 svgAppend(marker, path);
44 svgAppend(defs, marker);
45
46 elementRegistry.value = bpmnViewer.get('elementRegistry');
47 nodeList.value = elementRegistry.value.filter(
48 (item) => item.type === 'bpmn:UserTask' || item.type === 'bpmn:ServiceTask'
49 );
50 startList.value = elementRegistry.value.filter(
51 (item) => item.type === 'bpmn:StartEvent'
52 );
53 endList.value = elementRegistry.value.filter(
54 (item) => item.type === 'bpmn:EndEvent'
55 );
56 if (localStorage.getItem("processTableData")) {
57 let processTableData = JSON.parse(localStorage.getItem("processTableData"));
58 if (nodeList) {
59 nodeList.value.forEach((i) => {
60 if (processTableData) {
61 processTableData.forEach((j) => {
62 if (i.id == j.id) {
63 i.approvalState = j.approvalState;
64 i.staffName = j.staffName;
65 }
66 })
67 }
68 })
69 }
70 changeColor();
71 }
72
73 }
74 })
75 }
76
77 const changeColor = () => {
78 if (startList) {
79 let overlaysStart = bpmnViewer.get('overlays');
80 let shapeStart = elementRegistry.value.get(startList.value[0].id);
81 if (shapeStart) {
82 const $overlayHtmlS = $('<div class="highlight-overlay-start-sty" style="">').css({
83 width: 48,
84 height: 48,
85 color: '#000000'
86 });
87 overlaysStart.add(startList.value[0].id, {
88 position: { top: -6, left: -6 },
89 html: $overlayHtmlS
90 });
91 }
92 }
93 if (endList) {
94 let overlaysEnd = bpmnViewer.get('overlays');
95 endList.value.forEach((e) => {
96 let shapeEnd = elementRegistry.value.get(e.id);
97 if (shapeEnd) {
98 const $overlayHtmlE = $('<div class="highlight-overlay-end-sty" style="">').css({
99 width: 48,
100 height: 48,
101 color: '#000000'
102 });
103 overlaysEnd.add(e.id, {
104 position: { top: -6, left: -6 },
105 html: $overlayHtmlE
106 });
107 }
108 })
109 }
110 nodeList.value.forEach(i => {
111 let overlays = bpmnViewer.get('overlays');
112 let shape = elementRegistry.value.get(i.id);
113 if (shape) {
114 let appointorNames = i.businessObject.$attrs['camunda:nodeName'];
115 let type = i.approvalState;
116 let $overlayHtml: JQuery<HTMLElement>;
117 if (type == 'Y') {
118 $overlayHtml = $('<div class="highlight-overlay" style="border: 0px solid;border-color:#f1f1f1;border-radius: 4px;"><div class="highlight-overlay-name">' + i.businessObject.name + '</div><div class="highlight-overlay-down">' + appointorNames + '</div><div class="highlight-overlay-down1">已通过</div>').css({
119 width: shape.width + 3,
120 height: shape.height + 3
121 });
122 } else if (type == 'A') {
123 $overlayHtml = $('<div class="highlight-overlay1" style="border: 0px solid;border-color:#f1f1f1;border-radius: 4px;"><div class="highlight-overlay-name">' + i.businessObject.name + '</div><div class="highlight-overlay-down">' + appointorNames + '</div><div class="highlight-overlay-down2">审批中</div>').css({
124 width: shape.width + 3,
125 height: shape.height + 3
126 });
127 } else if (type == 'R') {
128 $overlayHtml = $('<div class="highlight-overlay2" style="border: 0px solid;border-color:#f1f1f1;border-radius: 4px;"><div class="highlight-overlay-name">' + i.businessObject.name + '</div><div class="highlight-overlay-down">' + appointorNames + '</div><div class="highlight-overlay-down3">已驳回</div>').css({
129 width: shape.width + 3,
130 height: shape.height + 3
131 });
132 } else {
133 if (i.businessObject.name == '发起人') {
134 $overlayHtml = $('<div class="highlight-overlay" style="border: 0px solid;border-color:#f1f1f1;border-radius: 4px;"><div class="highlight-overlay-name">' + i.businessObject.name + '</div><div class="highlight-overlay-down">' + appointorNames + '</div><div class="highlight-overlay-down3"></div>').css({
135 width: shape.width + 3,
136 height: shape.height + 3
137 });
138 } else {
139 $overlayHtml = $('<div class="highlight-overlay3" style="border: 0px solid;border-color:#f1f1f1;border-radius: 4px;"><div class="highlight-overlay-name">' + i.businessObject.name + '</div><div class="highlight-overlay-down">' + appointorNames + '</div><div class="highlight-overlay-down4"></div>').css({
140 width: shape.width + 3,
141 height: shape.height + 3
142 });
143 }
144 }
145 overlays.add(i.id, {
146 position: { top: -1.5, left: -1.5 },
147 html: $overlayHtml
148 });
149 }
150 });
151 }
152 const getDetailData = (deploymentId) => {
153 if (!deploymentId) {
154 return
155 }
156 getDetailDataPromise(deploymentId).then((res:any) => {
157 if (res.code == '00000') {
158 // console.log('调用查看组件', res.data.data);
159 if (res.data) {
160 let data = res.data;
161 processScript.value = data.processScript;
162 tenantGuid.value = data.tenantGuid;
163 form.processName = data.processName;
164 form.description = data.description;
165 } else {
166 tenantGuid.value = '';
167 form.processName = '';
168 form.description = '';
169 processScript.value = `
170 <?xml version="1.0" encoding="UTF-8"?>
171 <bpmn2:definitions
172 xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL"
173 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
174 xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI"
175 xmlns:dc="http://www.omg.org/spec/DD/20100524/DC"
176 xmlns:di="http://www.omg.org/spec/DD/20100524/DI"
177 id="sample-diagram"
178 targetNamespace="http://bpmn.io/schema/bpmn"
179 xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
180 <bpmn2:process id="process1567044459787" name="流程1567044459787" isExecutable="true">
181 <bpmn2:documentation>描述</bpmn2:documentation>
182 <bpmn2:startEvent id="StartEvent_01ydzqe" name="开始">
183 <bpmn2:outgoing>SequenceFlow_1qw929z</bpmn2:outgoing>
184 </bpmn2:startEvent>
185 <bpmn2:sequenceFlow id="SequenceFlow_1qw929z" sourceRef="StartEvent_01ydzqe" targetRef="Task_1piqdk6" />
186 <bpmn2:userTask id="Task_1piqdk6" name="请假申请">
187 <bpmn2:incoming>SequenceFlow_1qw929z</bpmn2:incoming>
188 <bpmn2:outgoing>SequenceFlow_0axt6j6</bpmn2:outgoing>
189 </bpmn2:userTask>
190 <bpmn2:endEvent id="EndEvent_0pnmjd3">
191 <bpmn2:incoming>SequenceFlow_0axt6j6</bpmn2:incoming>
192 </bpmn2:endEvent>
193 <bpmn2:sequenceFlow id="SequenceFlow_0axt6j6" sourceRef="Task_1piqdk6" targetRef="EndEvent_0pnmjd3" />
194 </bpmn2:process>
195 <bpmndi:BPMNDiagram id="BPMNDiagram_1">
196 <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="process1567044459787">
197 <bpmndi:BPMNShape id="StartEvent_01ydzqe_di" bpmnElement="StartEvent_01ydzqe">
198 <dc:Bounds x="532" y="72" width="36" height="36" />
199 <bpmndi:BPMNLabel>
200 <dc:Bounds x="539" y="53" width="22" height="14" />
201 </bpmndi:BPMNLabel>
202 </bpmndi:BPMNShape>
203 <bpmndi:BPMNEdge id="SequenceFlow_1qw929z_di" bpmnElement="SequenceFlow_1qw929z">
204 <di:waypoint x="550" y="108" />
205 <di:waypoint x="550" y="150" />
206 </bpmndi:BPMNEdge>
207 <bpmndi:BPMNShape id="UserTask_1qxjy46_di" bpmnElement="Task_1piqdk6">
208 <dc:Bounds x="500" y="150" width="100" height="80" />
209 </bpmndi:BPMNShape>
210 <bpmndi:BPMNShape id="EndEvent_0pnmjd3_di" bpmnElement="EndEvent_0pnmjd3">
211 <dc:Bounds x="532" y="338" width="36" height="36" />
212 </bpmndi:BPMNShape>
213 <bpmndi:BPMNEdge id="SequenceFlow_0axt6j6_di" bpmnElement="SequenceFlow_0axt6j6">
214 <di:waypoint x="550" y="230" />
215 <di:waypoint x="550" y="338" />
216 </bpmndi:BPMNEdge>
217 </bpmndi:BPMNPlane>
218 </bpmndi:BPMNDiagram>
219 </bpmn2:definitions>
220 `
221 }
222 // 新增流程定义
223 createNewDiagram()
224 }
225 })
226 }
227 defineExpose({
228 getDetailData
229 })
230
231 onMounted(() => {
232 bpmnViewer = new BpmnViewer({
233 container: canvasRef.value,
234 moddleExtensions: {
235 camunda: camundaModdleDescriptor
236 }
237 })
238 })
239 </script>
240
241 <template>
242 <div class="containers">
243 <div class="canvas" ref="canvasRef"></div>
244 </div>
245 </template>
246
247 <style lang="scss" scoped>
248 .containers {
249 // position: absolute;
250 background: #E9EEF3;
251 width: 100%;
252 height: 300px;
253 overflow: auto;
254
255 // overflow-y: scroll;
256 .canvas {
257 width: 100%;
258 height: 300px
259 }
260
261 :deep(.bjs-powered-by) {
262 display: none;
263 }
264
265 :deep(.djs-palette .two-column .open) {
266 display: none;
267 }
268
269 :deep(.highlight-overlay) {
270 background: url(@/assets/images/approvalProcess/users.jpg) no-repeat;
271 background-size: 103px 83px;
272 font-size: 12px !important;
273 overflow: hidden;
274 text-overflow: ellipsis;
275 white-space: nowrap;
276 }
277
278 :deep(.highlight-overlay1) {
279 background: url(@/assets/images/approvalProcess/users2.jpg) no-repeat;
280 background-size: 103px 83px;
281 font-size: 12px !important;
282 }
283
284 :deep(.highlight-overlay2) {
285 background: url(@/assets/images/approvalProcess/users1.jpg) no-repeat;
286 background-size: 103px 83px;
287 font-size: 12px !important;
288 }
289
290 :deep(.highlight-overlay3 ){
291 background: url(@/assets/images/approvalProcess/users3.jpg) no-repeat;
292 background-size: 103px 83px;
293 font-size: 12px !important;
294 }
295
296 :deep(.highlight-overlay-name) {
297 width: 100px;
298 height: 30px;
299 text-align: left;
300 padding-left: 22px;
301 line-height: 34px;
302 color: #ffffff;
303 overflow: hidden;
304 text-overflow: ellipsis;
305 white-space: nowrap;
306 }
307
308 :deep(.highlight-overlay-down) {
309 width: 100px;
310 text-align: left;
311 height: 28px;
312 line-height: 28px;
313 padding-left: 9px;
314 overflow: hidden;
315 // padding: 10px 5px;
316 }
317
318 :deep(.highlight-overlay-down1) {
319 width: 100px;
320 text-align: left;
321 height: 20px;
322 line-height: 20px;
323 padding-left: 9px;
324 color: #4FA1A4;
325 // padding: 10px 5px;
326 }
327
328 :deep(.highlight-overlay-down2) {
329 width: 100px;
330 text-align: left;
331 height: 20px;
332 line-height: 20px;
333 padding-left: 9px;
334 color: #FF8623;
335 // padding: 10px 5px;
336 }
337
338 :deep(.highlight-overlay-down3) {
339 width: 100px;
340 text-align: left;
341 height: 20px;
342 line-height: 20px;
343 padding-left: 9px;
344 color: #FE4638;
345 // padding: 10px 5px;
346 }
347
348 :deep(.highlight-overlay-down4) {
349 width: 100px;
350 text-align: left;
351 height: 20px;
352 line-height: 20px;
353 padding-left: 9px;
354 color: #9A9A9A;
355 // padding: 10px 5px;
356 }
357
358 :deep(.highlight-overlay-start-sty) {
359 background: url(@/assets/images/approvalProcess/start.png) no-repeat;
360 background-size: 48px 48px;
361 font-size: 12px !important;
362 }
363
364 :deep(.highlight-overlay-end-sty) {
365 background: url(@/assets/images/approvalProcess/end.png) no-repeat;
366 background-size: 48px 48px;
367 font-size: 12px !important;
368 }
369
370 :deep(.djs-connection) {
371 path {
372 stroke: #A8A8A8 !important;
373 marker-end: url(#sequenceflow-arrow-normal) !important;
374 }
375 }
376 }
377 </style>
...\ No newline at end of file ...\ No newline at end of file
...@@ -3,7 +3,7 @@ function Layout() { ...@@ -3,7 +3,7 @@ function Layout() {
3 return import('@/layouts/index.vue') 3 return import('@/layouts/index.vue')
4 } 4 }
5 const routes: RouteRecordRaw[] = [ 5 const routes: RouteRecordRaw[] = [
6 { 6 {
7 path: '/data-asset-register/register-managemant', 7 path: '/data-asset-register/register-managemant',
8 component: Layout, 8 component: Layout,
9 meta: { 9 meta: {
...@@ -35,14 +35,8 @@ const routes: RouteRecordRaw[] = [ ...@@ -35,14 +35,8 @@ const routes: RouteRecordRaw[] = [
35 reuse: true 35 reuse: true
36 }, 36 },
37 beforeEnter: (to, from) => { 37 beforeEnter: (to, from) => {
38 if (to.query.type) { 38 to.meta.title = to.query.type == 'edit' ? `编辑-${to.query.name}` : '新建资产登记';
39 to.meta.title = `详情-`; 39 to.meta.editPage = true;
40 return;
41 }
42 if (to.query.guid) {
43 to.meta.title = `编辑-`;
44 to.meta.editPage = true;
45 }
46 } 40 }
47 }, 41 },
48 { 42 {
...@@ -55,11 +49,14 @@ const routes: RouteRecordRaw[] = [ ...@@ -55,11 +49,14 @@ const routes: RouteRecordRaw[] = [
55 breadcrumb: false, 49 breadcrumb: false,
56 cache: true, 50 cache: true,
57 reuse: true 51 reuse: true
52 },
53 beforeEnter: (to, from) => {
54 to.meta.title = `详情-${to.query.name}`;
58 } 55 }
59 } 56 }
60 ], 57 ],
61 }, 58 },
62 { 59 {
63 path: '/data-asset-register/quality-evaluate', 60 path: '/data-asset-register/quality-evaluate',
64 component: Layout, 61 component: Layout,
65 meta: { 62 meta: {
...@@ -92,7 +89,7 @@ const routes: RouteRecordRaw[] = [ ...@@ -92,7 +89,7 @@ const routes: RouteRecordRaw[] = [
92 } 89 }
93 ], 90 ],
94 }, 91 },
95 { 92 {
96 path: '/data-asset-register/value-evaluate', 93 path: '/data-asset-register/value-evaluate',
97 component: Layout, 94 component: Layout,
98 meta: { 95 meta: {
......
1 const useProcessStore = defineStore(
2 // 唯一ID
3 'process',
4 () => {
5 const processNodes = ref([])
6 const staffVOS = computed(() => { // 最后审批node
7 return processNodes.value.find((item:any) => item.approvalState)
8 })
9 const clearStore = () => {
10 processNodes.value = []
11 }
12 return {
13 processNodes,
14 staffVOS,
15 clearStore
16 }
17 },
18 {
19 persist:{
20 storage: sessionStorage,
21 paths: ['processNodes','staffVOS']
22 }
23 }
24 )
25
26 export default useProcessStore
27
...\ No newline at end of file ...\ No newline at end of file
...@@ -4,7 +4,7 @@ import router from '@/router' ...@@ -4,7 +4,7 @@ import router from '@/router'
4 import { ElMessage } from 'element-plus' 4 import { ElMessage } from 'element-plus'
5 import apiUser from '@/api/modules/user' 5 import apiUser from '@/api/modules/user'
6 import { getCurrentTime } from '@/utils/common' 6 import { getCurrentTime } from '@/utils/common'
7 import { getSystemMenu, getUserInfo, getTokenByCode, loginOut, refreshToken, editPasswordInterface, getCurrentUserInfo } from '@/api/modules/queryService' 7 import { getSystemMenu, getUserInfo, getTokenByCode, loginOut, refreshToken, editPasswordInterface, getCurrentUserInfo, getCurrentUserInfo } from '@/api/modules/queryService'
8 8
9 const useUserStore = defineStore( 9 const useUserStore = defineStore(
10 // 唯一ID 10 // 唯一ID
...@@ -29,7 +29,7 @@ const useUserStore = defineStore( ...@@ -29,7 +29,7 @@ const useUserStore = defineStore(
29 /* idass的登录页面url,退出登录需要跳转到登录页。*/ 29 /* idass的登录页面url,退出登录需要跳转到登录页。*/
30 const idassLoginUrl = 'https://idaas-test.csbr.cn/login'; 30 const idassLoginUrl = 'https://idaas-test.csbr.cn/login';
31 const timer: any = ref(null); 31 const timer: any = ref(null);
32 //获取token. 32 //获取token.
33 function getToken(data, state) { 33 function getToken(data, state) {
34 data.platformGuid = "7f16f697aec111ef8656fa163e60becd"; 34 data.platformGuid = "7f16f697aec111ef8656fa163e60becd";
35 data.userType = 2; 35 data.userType = 2;
...@@ -56,7 +56,7 @@ const useUserStore = defineStore( ...@@ -56,7 +56,7 @@ const useUserStore = defineStore(
56 currentTenantGuid.value = res.data.tenantInfoList && res.data.tenantInfoList.length ? res.data.tenantInfoList[0].guid : ''; 56 currentTenantGuid.value = res.data.tenantInfoList && res.data.tenantInfoList.length ? res.data.tenantInfoList[0].guid : '';
57 localStorage.setItem('currentTenantGuid', currentTenantGuid.value); 57 localStorage.setItem('currentTenantGuid', currentTenantGuid.value);
58 let currentTenant = res.data.tenantInfoList?.[0]; 58 let currentTenant = res.data.tenantInfoList?.[0];
59 getCurrentUserInfo(currentTenantGuid.value).then((res: any) => { 59 getCurrentUserInfo({tenantGuid: currentTenantGuid.value}).then((res: any) => {
60 console.log(res, 'getCurrentUserInfo'); 60 console.log(res, 'getCurrentUserInfo');
61 if (res.code == '00000') { 61 if (res.code == '00000') {
62 localStorage.setItem('userData', JSON.stringify(res.data)); 62 localStorage.setItem('userData', JSON.stringify(res.data));
...@@ -88,11 +88,11 @@ const useUserStore = defineStore( ...@@ -88,11 +88,11 @@ const useUserStore = defineStore(
88 const process = async () => { 88 const process = async () => {
89 if (parseInt(expiresIn) - Date.now() < 600000) { 89 if (parseInt(expiresIn) - Date.now() < 600000) {
90 const refreshing = localStorage.getItem('refreshing'); 90 const refreshing = localStorage.getItem('refreshing');
91 let now = new Date(); 91 let now = new Date();
92 if (!refreshing || new Date(refreshing) < now) {//确保多个页面只刷新一次。 92 if (!refreshing || new Date(refreshing) < now) {//确保多个页面只刷新一次。
93 localStorage.setItem('refreshing', now.toISOString()); 93 localStorage.setItem('refreshing', now.toISOString());
94 await refresh(); 94 await refresh();
95 localStorage.removeItem('refreshing'); 95 localStorage.removeItem('refreshing');
96 } 96 }
97 } 97 }
98 } 98 }
...@@ -108,14 +108,14 @@ const useUserStore = defineStore( ...@@ -108,14 +108,14 @@ const useUserStore = defineStore(
108 refreshToken: localStorage.getItem('refresh_token') 108 refreshToken: localStorage.getItem('refresh_token')
109 }).then((resInfo: any) => { 109 }).then((resInfo: any) => {
110 getTokenPromise.value = null; 110 getTokenPromise.value = null;
111 if (resInfo.code == '00000'){ 111 if (resInfo.code == '00000') {
112 localStorage.setItem('token',resInfo.data.accessToken); 112 localStorage.setItem('token', resInfo.data.accessToken);
113 token.value = resInfo.data.accessToken; 113 token.value = resInfo.data.accessToken;
114 localStorage.setItem('refresh_token',resInfo.data.refreshToken); 114 localStorage.setItem('refresh_token', resInfo.data.refreshToken);
115 const expiresIn = (Date.now() + 1700000) + ""; 115 const expiresIn = (Date.now() + 1700000) + "";
116 localStorage.setItem('expiresIn', expiresIn); 116 localStorage.setItem('expiresIn', expiresIn);
117 } else { 117 } else {
118 //会出现同步刷新token就退出登录的问题,去掉这个代码。 118 //会出现同步刷新token就退出登录的问题,去掉这个代码。
119 //logout(true) 119 //logout(true)
120 } 120 }
121 }).catch(() => { 121 }).catch(() => {
...@@ -159,23 +159,23 @@ const useUserStore = defineStore( ...@@ -159,23 +159,23 @@ const useUserStore = defineStore(
159 // 登出 159 // 登出
160 async function logout(isErrorReturn = false, redirect = router.currentRoute.value.fullPath) { 160 async function logout(isErrorReturn = false, redirect = router.currentRoute.value.fullPath) {
161 if (!isErrorReturn && localStorage.getItem('code')) { 161 if (!isErrorReturn && localStorage.getItem('code')) {
162 isLoginOut.value = true; 162 isLoginOut.value = true;
163 loginOut().then(() => { 163 loginOut().then(() => {
164 localStorage.clear() 164 localStorage.clear()
165 account.value = '' 165 account.value = ''
166 userId.value = '' 166 userId.value = ''
167 userName.value = '' 167 userName.value = ''
168 userData.value = '' 168 userData.value = ''
169 token.value = ''; 169 token.value = '';
170 timer.value && clearInterval(timer.value); 170 timer.value && clearInterval(timer.value);
171 isLogin.value = false; 171 isLogin.value = false;
172 userInfoData.value = []; 172 userInfoData.value = [];
173 routeStore.removeRoutes() 173 routeStore.removeRoutes()
174 menuStore.setActived(0) 174 menuStore.setActived(0)
175 tabbar.value = [] 175 tabbar.value = []
176 tabbarMap.value = {} 176 tabbarMap.value = {}
177 window.location.href = idassLoginUrl + '?logout=1'; 177 window.location.href = idassLoginUrl + '?logout=1';
178 }); 178 });
179 } else { 179 } else {
180 let hasCode = localStorage.getItem('code'); 180 let hasCode = localStorage.getItem('code');
181 isLoginOut.value = true; 181 isLoginOut.value = true;
...@@ -236,7 +236,7 @@ const useUserStore = defineStore( ...@@ -236,7 +236,7 @@ const useUserStore = defineStore(
236 mark = 'data-sync' 236 mark = 'data-sync'
237 } else if (item.meta.title == '数据质量') { 237 } else if (item.meta.title == '数据质量') {
238 mark = 'data-quality' 238 mark = 'data-quality'
239 } else if (item.meta.title == '数据盘点') { 239 } else if (item.meta.title == '数据盘点') {
240 mark = 'data-inventory' 240 mark = 'data-inventory'
241 } else if (item.meta.title == '首页') { 241 } else if (item.meta.title == '首页') {
242 mark = 'data-asset-index' 242 mark = 'data-asset-index'
......
...@@ -9,6 +9,7 @@ export {} ...@@ -9,6 +9,7 @@ export {}
9 9
10 declare module '@vue/runtime-core' { 10 declare module '@vue/runtime-core' {
11 export interface GlobalComponents { 11 export interface GlobalComponents {
12 ApprovalProcess: typeof import('./../components/ApprovalProcess/src/ApprovalProcess.vue')['default']
12 Auth: typeof import('./../components/Auth/index.vue')['default'] 13 Auth: typeof import('./../components/Auth/index.vue')['default']
13 AuthAll: typeof import('./../components/AuthAll/index.vue')['default'] 14 AuthAll: typeof import('./../components/AuthAll/index.vue')['default']
14 ContentWrap: typeof import('./../components/ContentWrap/src/ContentWrap.vue')['default'] 15 ContentWrap: typeof import('./../components/ContentWrap/src/ContentWrap.vue')['default']
...@@ -31,6 +32,7 @@ declare module '@vue/runtime-core' { ...@@ -31,6 +32,7 @@ declare module '@vue/runtime-core' {
31 ImageUpload: typeof import('./../components/ImageUpload/index.vue')['default'] 32 ImageUpload: typeof import('./../components/ImageUpload/index.vue')['default']
32 LineageGraph: typeof import('./../components/LineageGraph/index.vue')['default'] 33 LineageGraph: typeof import('./../components/LineageGraph/index.vue')['default']
33 ListPanel: typeof import('./../components/ListPanel/index.vue')['default'] 34 ListPanel: typeof import('./../components/ListPanel/index.vue')['default']
35 LookBpmn: typeof import('./../components/ApprovalProcess/src/components/LookBpmn.vue')['default']
34 Month: typeof import('./../components/Schedule/component/month.vue')['default'] 36 Month: typeof import('./../components/Schedule/component/month.vue')['default']
35 NotAllowed: typeof import('./../components/NotAllowed/index.vue')['default'] 37 NotAllowed: typeof import('./../components/NotAllowed/index.vue')['default']
36 PageHeader: typeof import('./../components/PageHeader/index.vue')['default'] 38 PageHeader: typeof import('./../components/PageHeader/index.vue')['default']
......
...@@ -5,7 +5,6 @@ ...@@ -5,7 +5,6 @@
5 <script lang="ts" setup name="importTableField"> 5 <script lang="ts" setup name="importTableField">
6 import { ref } from 'vue'; 6 import { ref } from 'vue';
7 import { 7 import {
8 getDataTypeList,
9 getParamsList 8 getParamsList
10 } from "@/api/modules/dataAsset"; 9 } from "@/api/modules/dataAsset";
11 import { pinyin } from 'pinyin-pro'; 10 import { pinyin } from 'pinyin-pro';
...@@ -80,7 +79,7 @@ const handleFileDataChange = (fileFields, files, sheetName, data) => { ...@@ -80,7 +79,7 @@ const handleFileDataChange = (fileFields, files, sheetName, data) => {
80 } 79 }
81 80
82 const getFieldTypeList = () => { 81 const getFieldTypeList = () => {
83 getDataTypeList({ 82 getParamsList({
84 dictType: "字段类型" 83 dictType: "字段类型"
85 }).then((res: any) => { 84 }).then((res: any) => {
86 fieldTypes.value = []; 85 fieldTypes.value = [];
......
...@@ -11,8 +11,7 @@ import { ...@@ -11,8 +11,7 @@ import {
11 getCurrentUserInfo 11 getCurrentUserInfo
12 } from "@/api/modules/queryService"; 12 } from "@/api/modules/queryService";
13 import { 13 import {
14 getDamTypesList, 14 getParamsList,
15 getSubjectDoaminList,
16 dataSourcesList, 15 dataSourcesList,
17 registerCatalogSave, 16 registerCatalogSave,
18 existDamName, 17 existDamName,
...@@ -495,7 +494,7 @@ const addAssetTable = () => { ...@@ -495,7 +494,7 @@ const addAssetTable = () => {
495 494
496 onBeforeMount(() => { 495 onBeforeMount(() => {
497 // const currentTenantGuid = localStorage.getItem('currentTenantGuid'); 496 // const currentTenantGuid = localStorage.getItem('currentTenantGuid');
498 // getCurrentUserInfo(currentTenantGuid).then((res: any) => { 497 // getCurrentUserInfo({tenantGuid: currentTenantGuid}).then((res: any) => {
499 // console.log(res, 'getCurrentUserInfo'); 498 // console.log(res, 'getCurrentUserInfo');
500 // if (res.code == '00000') { 499 // if (res.code == '00000') {
501 // localStorage.setItem('userData', JSON.stringify(res.data)); 500 // localStorage.setItem('userData', JSON.stringify(res.data));
...@@ -581,7 +580,7 @@ onBeforeMount(() => { ...@@ -581,7 +580,7 @@ onBeforeMount(() => {
581 } 580 }
582 return data; 581 return data;
583 } 582 }
584 getDamTypesList({ 583 getParamsList({
585 dictType: "资产类型", 584 dictType: "资产类型",
586 }).then((res: any) => { 585 }).then((res: any) => {
587 if (res.code == proxy.$passCode) { 586 if (res.code == proxy.$passCode) {
...@@ -592,7 +591,7 @@ onBeforeMount(() => { ...@@ -592,7 +591,7 @@ onBeforeMount(() => {
592 proxy.$ElMessage.error(res.msg); 591 proxy.$ElMessage.error(res.msg);
593 } 592 }
594 }) 593 })
595 getSubjectDoaminList({ 594 getParamsList({
596 dictType: "数据资产目录主题名称", 595 dictType: "数据资产目录主题名称",
597 }).then((res: any) => { 596 }).then((res: any) => {
598 if (res.code == proxy.$passCode) { 597 if (res.code == proxy.$passCode) {
......
...@@ -9,8 +9,7 @@ import { ElMessageBox } from "element-plus"; ...@@ -9,8 +9,7 @@ import { ElMessageBox } from "element-plus";
9 import { useRouter, useRoute } from "vue-router"; 9 import { useRouter, useRoute } from "vue-router";
10 import { MoreFilled } from "@element-plus/icons-vue"; 10 import { MoreFilled } from "@element-plus/icons-vue";
11 import { 11 import {
12 getSubjectDoaminList, 12 getParamsList,
13 getDamTypesList,
14 getDamCatalogTable, 13 getDamCatalogTable,
15 registerCatalogDelete 14 registerCatalogDelete
16 } from "@/api/modules/dataAsset"; 15 } from "@/api/modules/dataAsset";
...@@ -260,7 +259,7 @@ onBeforeMount(() => { ...@@ -260,7 +259,7 @@ onBeforeMount(() => {
260 proxy.$ElMessage.error(res.msg); 259 proxy.$ElMessage.error(res.msg);
261 } 260 }
262 }) 261 })
263 getSubjectDoaminList({ 262 getParamsList({
264 dictType: "数据资产目录主题名称", 263 dictType: "数据资产目录主题名称",
265 }).then((res: any) => { 264 }).then((res: any) => {
266 if (res.code == proxy.$passCode) { 265 if (res.code == proxy.$passCode) {
......
...@@ -258,13 +258,14 @@ const getDetailInfo = () => { ...@@ -258,13 +258,14 @@ const getDetailInfo = () => {
258 const data = res.data || {}; 258 const data = res.data || {};
259 detailInfo.value = data; 259 detailInfo.value = data;
260 assetDetailInfo.value = data; 260 assetDetailInfo.value = data;
261 if (fullPath === route.fullPath) { 261 deploymentId.value = data.camundaDeploymentId;
262 document.title = `详情-${data.daName}`; 262 // if (fullPath === route.fullPath) {
263 } 263 // document.title = `详情-${data.daName}`;
264 let tab: any = userStore.tabbar.find((tab: any) => tab.fullPath === fullPath); 264 // }
265 if (tab) { 265 // let tab: any = userStore.tabbar.find((tab: any) => tab.fullPath === fullPath);
266 tab.meta.title = `详情-${data.daName}`; 266 // if (tab) {
267 } 267 // tab.meta.title = `详情-${data.daName}`;
268 // }
268 isTextTruncated(); 269 isTextTruncated();
269 } else { 270 } else {
270 ElMessage.error(res.msg); 271 ElMessage.error(res.msg);
...@@ -293,11 +294,11 @@ onBeforeMount(() => { ...@@ -293,11 +294,11 @@ onBeforeMount(() => {
293 }); 294 });
294 295
295 onActivated(() => { 296 onActivated(() => {
296 if (assetDetailInfo.value?.daName) { 297 // if (assetDetailInfo.value?.daName) {
297 if (fullPath === route.fullPath) { 298 // if (fullPath === route.fullPath) {
298 document.title = `详情-${assetDetailInfo.value?.daName}`; 299 // document.title = `详情-${assetDetailInfo.value?.daName}`;
299 } 300 // }
300 } 301 // }
301 }); 302 });
302 303
303 onMounted(() => { 304 onMounted(() => {
...@@ -399,7 +400,7 @@ const approveTableInfo: any = ref({ ...@@ -399,7 +400,7 @@ const approveTableInfo: any = ref({
399 show: false 400 show: false
400 } 401 }
401 }); 402 });
402 403 const deploymentId = ref('');
403 const tenantDetail: any = ref({}); 404 const tenantDetail: any = ref({});
404 405
405 /** 获取当前登录会员,服务商,企业等详情。 */ 406 /** 获取当前登录会员,服务商,企业等详情。 */
...@@ -490,7 +491,7 @@ const btnClick = (btn) => { ...@@ -490,7 +491,7 @@ const btnClick = (btn) => {
490 qualityEvaluateFormItems.value[1].disabled = true; 491 qualityEvaluateFormItems.value[1].disabled = true;
491 } else { 492 } else {
492 qualityEvaluateFormItems.value[1].default = null; 493 qualityEvaluateFormItems.value[1].default = null;
493 qualityEvaluateFormItems.value[1].disabled = false; 494 qualityEvaluateFormItems.value[1].disabled = false;
494 } 495 }
495 } else if (type == 'reject') { 496 } else if (type == 'reject') {
496 rejectDialogInfo.value.visible = true; 497 rejectDialogInfo.value.visible = true;
...@@ -1593,7 +1594,9 @@ const handleClickDamCatalogDetail = () => { ...@@ -1593,7 +1594,9 @@ const handleClickDamCatalogDetail = () => {
1593 </ContentWrap> 1594 </ContentWrap>
1594 <ContentWrap id="id-approveInfo" title="审批信息" expandSwicth style="margin-top: 15px" 1595 <ContentWrap id="id-approveInfo" title="审批信息" expandSwicth style="margin-top: 15px"
1595 :isExpand="approveInfoExpand" @expand="(v) => approveInfoExpand = v"> 1596 :isExpand="approveInfoExpand" @expand="(v) => approveInfoExpand = v">
1596 <Table :tableInfo="approveTableInfo" /> 1597 <!-- <Table :tableInfo="approveTableInfo" /> -->
1598 <ApprovalProcess v-if="deploymentId" :deploymentId="deploymentId" :definitionId="''">
1599 </ApprovalProcess>
1597 </ContentWrap> 1600 </ContentWrap>
1598 <ContentWrap id="id-certificate" v-if="tabsInfo.tabs.find(t => t.name == 'certificate')" title="证件信息" 1601 <ContentWrap id="id-certificate" v-if="tabsInfo.tabs.find(t => t.name == 'certificate')" title="证件信息"
1599 expandSwicth style="margin-top: 15px" :isExpand="certificateExpand" @expand="(v) => certificateExpand = v"> 1602 expandSwicth style="margin-top: 15px" :isExpand="certificateExpand" @expand="(v) => certificateExpand = v">
...@@ -2065,4 +2068,4 @@ const handleClickDamCatalogDetail = () => { ...@@ -2065,4 +2068,4 @@ const handleClickDamCatalogDetail = () => {
2065 } 2068 }
2066 } 2069 }
2067 } 2070 }
2068 </style>
...\ No newline at end of file ...\ No newline at end of file
2071 </style>
......
...@@ -20,7 +20,8 @@ import { ...@@ -20,7 +20,8 @@ import {
20 registerApproveReSubmit, 20 registerApproveReSubmit,
21 registerApproveAllow, 21 registerApproveAllow,
22 registerApproveBackup, 22 registerApproveBackup,
23 getRegisterTenant 23 getRegisterTenant,
24 getExchangeList
24 } from "@/api/modules/dataAsset"; 25 } from "@/api/modules/dataAsset";
25 import useDataAssetStore from "@/store/modules/dataAsset"; 26 import useDataAssetStore from "@/store/modules/dataAsset";
26 import useUserStore from "@/store/modules/user"; 27 import useUserStore from "@/store/modules/user";
...@@ -37,11 +38,8 @@ const path = route.path; ...@@ -37,11 +38,8 @@ const path = route.path;
37 38
38 const loading = ref(false); 39 const loading = ref(false);
39 const defaultItemLogo = new URL('@/assets/images/home-finance-product.png', import.meta.url).href 40 const defaultItemLogo = new URL('@/assets/images/home-finance-product.png', import.meta.url).href
40 const demandListData: any = ref([ 41 const exchangeList: any = ref([]);
41 { companyName: '北数所', listedNum: 16, processNum: 1235 }, 42 const exchangGuid = ref('');
42 { companyName: '深数所', listedNum: 16, processNum: 1235 },
43 { companyName: '苏数所', listedNum: 16, processNum: 1235 },
44 ]);
45 const searchItemList = ref([ 43 const searchItemList = ref([
46 { 44 {
47 type: "input", 45 type: "input",
...@@ -51,21 +49,21 @@ const searchItemList = ref([ ...@@ -51,21 +49,21 @@ const searchItemList = ref([
51 placeholder: "资产名称", 49 placeholder: "资产名称",
52 clearable: true, 50 clearable: true,
53 }, 51 },
54 { 52 // {
55 type: "select", 53 // type: "select",
56 label: "", 54 // label: "",
57 field: "tenantGuid", 55 // field: "tenantGuid",
58 default: "", 56 // default: "",
59 placeholder: "企业名称", 57 // placeholder: "企业名称",
60 clearable: true, 58 // clearable: true,
61 filterable: true, 59 // filterable: true,
62 options: [], 60 // options: [],
63 props: { 61 // props: {
64 value: 'guid', 62 // value: 'guid',
65 label: 'tenantName' 63 // label: 'tenantName'
66 }, 64 // },
67 visible: false, 65 // visible: false,
68 }, 66 // },
69 { 67 {
70 type: 'select', 68 type: 'select',
71 label: '', 69 label: '',
...@@ -118,7 +116,7 @@ const isCompanyPlatform = ref(userData.tenantType == 1); ...@@ -118,7 +116,7 @@ const isCompanyPlatform = ref(userData.tenantType == 1);
118 116
119 const listDataLoading = ref(false); 117 const listDataLoading = ref(false);
120 118
121 const activeListType = ref('card'); 119 const activeListType = ref('list');
122 120
123 const listData: any = ref([]); 121 const listData: any = ref([]);
124 122
...@@ -144,9 +142,11 @@ const tableInfo = ref({ ...@@ -144,9 +142,11 @@ const tableInfo = ref({
144 }); 142 });
145 143
146 const getTableBtns = (row, includeDetail = true) => { 144 const getTableBtns = (row, includeDetail = true) => {
145 console.log(userData)
147 let btnsArr: any[] = []; 146 let btnsArr: any[] = [];
148 if (row.approveState == 'N') {//只有草稿中的详情是可以编辑的 147 if (row.approveState == 'N') {//只有草稿中的详情是可以编辑的
149 includeDetail && btnsArr.push({ label: "详情", value: "path_detail" }) 148 includeDetail && btnsArr.push({ label: "详情", value: "path_detail" })
149 includeDetail && btnsArr.push({ label: "编辑", value: "edit" })
150 if (row.tenantGuid == userData.tenantGuid) { 150 if (row.tenantGuid == userData.tenantGuid) {
151 btnsArr.push({ label: "删除", value: "delete" }); 151 btnsArr.push({ label: "删除", value: "delete" });
152 } 152 }
...@@ -162,7 +162,7 @@ const getTableBtns = (row, includeDetail = true) => { ...@@ -162,7 +162,7 @@ const getTableBtns = (row, includeDetail = true) => {
162 } else if (row.approveState == 'Y') {//已通过的不能删除。 162 } else if (row.approveState == 'Y') {//已通过的不能删除。
163 includeDetail && btnsArr.push({ label: "详情", value: "path_detail" }) 163 includeDetail && btnsArr.push({ label: "详情", value: "path_detail" })
164 } else if (row.approveState == 'R' || row.approveState == 'C') {//已驳回或已撤销 164 } else if (row.approveState == 'R' || row.approveState == 'C') {//已驳回或已撤销
165 includeDetail && btnsArr.push({ label: "详情", value: "path_detail" }); 165 includeDetail && btnsArr.push({ label: "编辑", value: "edit" });
166 if (row.tenantGuid == userData.tenantGuid) { 166 if (row.tenantGuid == userData.tenantGuid) {
167 btnsArr.push({ label: "重新提交", value: "edit", disabled: false }) 167 btnsArr.push({ label: "重新提交", value: "edit", disabled: false })
168 } 168 }
...@@ -176,6 +176,18 @@ const getTableBtns = (row, includeDetail = true) => { ...@@ -176,6 +176,18 @@ const getTableBtns = (row, includeDetail = true) => {
176 const currTableData: any = ref({}); 176 const currTableData: any = ref({});
177 177
178 const btnClick = (btn) => { 178 const btnClick = (btn) => {
179 const type = btn.value;
180 if (type == 'create') {
181 router.push({
182 name: 'registerStart',
183 query: { exchangeGuid: btn.exchangeGuid, type }
184 });
185 } else if (type == 'search') {
186 exchangGuid.value = btn.exchangeGuid;
187 pageInfo.value.curr = 1;
188 pageInfo.value.limit = 50;
189 getTableData();
190 }
179 } 191 }
180 192
181 const tableBtnClick = (scope, btn) => { 193 const tableBtnClick = (scope, btn) => {
...@@ -185,7 +197,7 @@ const tableBtnClick = (scope, btn) => { ...@@ -185,7 +197,7 @@ const tableBtnClick = (scope, btn) => {
185 if (type === "edit") { //草稿中\已驳回\已撤销\已通过 状态,才可以编辑。 197 if (type === "edit") { //草稿中\已驳回\已撤销\已通过 状态,才可以编辑。
186 router.push({ 198 router.push({
187 name: 'registerStart', 199 name: 'registerStart',
188 query: { guid: row.guid } 200 query: { guid: row.guid, damGuid: row.damGuid, name: row.daName, type }
189 }); 201 });
190 } else if (type == "delete") { 202 } else if (type == "delete") {
191 delTableOpen("此操作将永久删除该资产登记,是否继续?", "warning"); 203 delTableOpen("此操作将永久删除该资产登记,是否继续?", "warning");
...@@ -220,17 +232,21 @@ const tableBtnClick = (scope, btn) => { ...@@ -220,17 +232,21 @@ const tableBtnClick = (scope, btn) => {
220 }); 232 });
221 }); 233 });
222 } else if (type === 'path_detail') { // 详情, 若是草稿中,详情就是编辑, 234 } else if (type === 'path_detail') { // 详情, 若是草稿中,详情就是编辑,
223 if (row.approveState === 'N') { 235 // if (row.approveState === 'N') {
224 router.push({ 236 // router.push({
225 name: 'registerStart', 237 // name: 'registerStart',
226 query: { guid: row.guid } 238 // query: { guid: row.guid, name: row.daName, type: 'detail' }
227 }); 239 // });
228 } else { 240 // } else {
229 router.push({ 241 // router.push({
230 name: 'registerInfoDetail', 242 // name: 'registerInfoDetail',
231 query: { guid: row.guid, type: 'asset', daTenantGuid: row.tenantGuid } 243 // query: { guid: row.guid, type: 'asset', daTenantGuid: row.tenantGuid }
232 }); 244 // });
233 } 245 // }
246 router.push({
247 name: 'registerInfoDetail',
248 query: { guid: row.guid, name: row.daName, type: 'asset' }
249 });
234 } else if (type === 'pass') { 250 } else if (type === 'pass') {
235 passDialogInfo.value.visible = true; 251 passDialogInfo.value.visible = true;
236 } else if (type == 'backup') { 252 } else if (type == 'backup') {
...@@ -291,7 +307,8 @@ const getTableData = () => { ...@@ -291,7 +307,8 @@ const getTableData = () => {
291 pageIndex: pageInfo.value.curr, 307 pageIndex: pageInfo.value.curr,
292 daName: pageInfo.value.daName, 308 daName: pageInfo.value.daName,
293 approveState: pageInfo.value.approveState, 309 approveState: pageInfo.value.approveState,
294 tenantGuid: pageInfo.value.tenantGuid 310 tenantGuid: pageInfo.value.tenantGuid,
311 exchangGuid: exchangGuid.value
295 }).then((res: any) => { 312 }).then((res: any) => {
296 listDataLoading.value = false; 313 listDataLoading.value = false;
297 tableInfo.value.loading = false; 314 tableInfo.value.loading = false;
...@@ -307,13 +324,24 @@ const getTableData = () => { ...@@ -307,13 +324,24 @@ const getTableData = () => {
307 }) 324 })
308 } 325 }
309 326
327 const getExchangeData = () => {
328 getExchangeList().then((res: any) => {
329 if (res.code == proxy.$passCode) {
330 exchangeList.value = res.data || [];
331 } else {
332 ElMessage.error(res.msg);
333 }
334 })
335 }
336
310 const toSearch = (val: any, clear: boolean = false) => { 337 const toSearch = (val: any, clear: boolean = false) => {
311 pageInfo.value.curr = 1; 338 pageInfo.value.curr = 1;
312 if (clear) { 339 if (clear) {
313 searchItemList.value.map((item) => (item.default = "")); 340 searchItemList.value.map((item) => item.default = "");
314 pageInfo.value.daName = ''; 341 pageInfo.value.daName = '';
315 pageInfo.value.approveState = ""; 342 pageInfo.value.approveState = "";
316 pageInfo.value.tenantGuid = ""; 343 pageInfo.value.tenantGuid = "";
344 val && (exchangGuid.value = '');
317 } else { 345 } else {
318 pageInfo.value.daName = val.daName; 346 pageInfo.value.daName = val.daName;
319 pageInfo.value.approveState = val.approveState; 347 pageInfo.value.approveState = val.approveState;
...@@ -332,34 +360,30 @@ onActivated(() => { ...@@ -332,34 +360,30 @@ onActivated(() => {
332 if (assetStore.isRefresh) {//如果是首次加载,则不需要调用 360 if (assetStore.isRefresh) {//如果是首次加载,则不需要调用
333 pageInfo.value.curr = 1; 361 pageInfo.value.curr = 1;
334 getTableData(); 362 getTableData();
363 getExchangeData();
335 assetStore.set(false); 364 assetStore.set(false);
336 } 365 }
337 }) 366 })
338 367
339 onBeforeMount(() => { 368 onBeforeMount(() => {
340 if (isCompanyPlatform.value) { 369 // if (isCompanyPlatform.value) {
341 tableInfo.value.fields = tableFields.value; 370 // tableInfo.value.fields = tableFields.value;
342 searchItemList.value[1].visible = false; 371 // searchItemList.value[1].visible = false;
343 } else { 372 // } else {
344 tableFields.value.splice(2, 0, { label: "企业名称", field: "tenantName", width: 240, align: "left" }); 373 // tableFields.value.splice(2, 0, { label: "企业名称", field: "tenantName", width: 240, align: "left" });
345 tableInfo.value.fields = tableFields.value; 374 // tableInfo.value.fields = tableFields.value;
346 searchItemList.value[1].visible = true; 375 // searchItemList.value[1].visible = true;
347 getRegisterTenant().then((res: any) => { 376 // getRegisterTenant().then((res: any) => {
348 if (res.code == proxy.$passCode) { 377 // if (res.code == proxy.$passCode) {
349 searchItemList.value[1].options = res.data || []; 378 // searchItemList.value[1].options = res.data || [];
350 } else { 379 // } else {
351 ElMessage.error(res.msg); 380 // ElMessage.error(res.msg);
352 } 381 // }
353 }); 382 // });
354 } 383 // }
384 getExchangeData();
355 }) 385 })
356 386
357 const handleCreate = () => {
358 router.push({
359 name: 'registerStart'
360 });
361 }
362
363 const passDialogInfo = ref({ 387 const passDialogInfo = ref({
364 visible: false, 388 visible: false,
365 size: 460, 389 size: 460,
...@@ -498,50 +522,35 @@ const createBtnVisible = computed(() => { ...@@ -498,50 +522,35 @@ const createBtnVisible = computed(() => {
498 522
499 <template> 523 <template>
500 <div class="container_wrap" v-loading="loading"> 524 <div class="container_wrap" v-loading="loading">
501 <div class="list-content"> 525 <div class="table_tool_wrap">
502 <div class="card-content" v-for="item in demandListData" :key="item.guid"> 526 <TableTools :searchItems="searchItemList" :searchId="'register-data-search'" @search="toSearch" />
503 <div class="header">
504 <img class="left-img" :src="(item.picUrl && typeof item.picUrl == 'string') ? item.picUrl : defaultItemLogo"
505 alt="" />
506 <div class="right-main">
507 <div class="title">{{ item.companyName ?? '--' }}</div>
508 <div class="count-group">
509 <div class="count-item">
510 <div class="item-label">已上架产品数</div>
511 <div class="item-num">{{ changeNum(item.listedNum) }}</div>
512 </div>
513 <div class="count-item">
514 <div class="item-label">审批中产品数</div>
515 <div class="item-num">{{ changeNum(item.processNum) }}</div>
516 </div>
517 </div>
518 </div>
519 </div>
520 <div class="operator-btn">
521 <div class="left-btn borderRight" @click="btnClick(item)">更新模板</div>
522 <div class="left-btn" @click="btnClick(item)">资产登记</div>
523 </div>
524 </div>
525 </div> 527 </div>
526 <div class="content_main_wrap"> 528 <div class="content_main_wrap">
527 <div class="table_tool_wrap"> 529 <div class="list-content">
528 <TableTools :searchItems="searchItemList" :searchId="'register-data-search'" @search="toSearch" /> 530 <div class="card-content" :class="{ active: exchangGuid == item.exchangeGuid }" v-for="item in exchangeList"
529 <div class="tools_btns"> 531 :key="item.exchangeGuid">
530 <el-button type="primary" @click="handleCreate" v-if="createBtnVisible" v-preReClick>新建</el-button> 532 <div class="header">
531 <div class="view-change"> 533 <img class="left-img" :src="(item.picUrl && typeof item.picUrl == 'string') ? item.picUrl : defaultItemLogo"
532 <div class="list-btn" :class="[activeListType === 'list' ? 'active' : '']" @click="activeListType = 'list'"> 534 alt="" />
533 <el-icon style="width: 12px;height: 12px;"> 535 <div class="right-main">
534 <svg-icon style="width: 12px;height: 12px;" 536 <div class="title" :class="{ active: exchangGuid == item.exchangeGuid }"
535 :name="activeListType === 'list' ? 'btn-list-white' : 'btn-list'" /> 537 @click="btnClick({ value: 'search', ...item })" v-preReClick>{{ item.exchangeName ?? '--' }}</div>
536 </el-icon> 538 <div class="count-group">
537 </div> 539 <div class="count-item">
538 <div class="card-btn" :class="[activeListType === 'card' ? 'active' : '']" @click="activeListType = 'card'"> 540 <div class="item-label">已上架产品数</div>
539 <el-icon style="width: 12px;height: 12px;"> 541 <div class="item-num">{{ changeNum(item.listingNum || 0) }}</div>
540 <svg-icon style="width: 12px;height: 12px;" 542 </div>
541 :name="activeListType === 'card' ? 'btn-card-white' : 'btn-card'" /> 543 <div class="count-item">
542 </el-icon> 544 <div class="item-label">审批中产品数</div>
545 <div class="item-num">{{ changeNum(item.underReviewNum || 0) }}</div>
546 </div>
547 </div>
543 </div> 548 </div>
544 </div> 549 </div>
550 <div class="operator-btn">
551 <!-- <div class="left-btn borderRight" @click="btnClick(item)">更新模板</div> -->
552 <div class="left-btn is_block" @click="btnClick({ value: 'create', ...item })">资产登记</div>
553 </div>
545 </div> 554 </div>
546 </div> 555 </div>
547 <div class="table_panel_wrap" :style="{ height: createBtnVisible ? 'calc(100% - 89px)' : 'calc(100% - 40px)' }"> 556 <div class="table_panel_wrap" :style="{ height: createBtnVisible ? 'calc(100% - 89px)' : 'calc(100% - 40px)' }">
...@@ -554,7 +563,7 @@ const createBtnVisible = computed(() => { ...@@ -554,7 +563,7 @@ const createBtnVisible = computed(() => {
554 </div> 563 </div>
555 <el-tag :type="(tagType(item, 'approveState') as any)">{{ 564 <el-tag :type="(tagType(item, 'approveState') as any)">{{
556 tagMethod(item, 'approveState') 565 tagMethod(item, 'approveState')
557 }}</el-tag> 566 }}</el-tag>
558 </div> 567 </div>
559 <div v-if="!isCompanyPlatform" class="desc">{{ item.tenantName ?? '深圳传世般若有限公司' }}</div> 568 <div v-if="!isCompanyPlatform" class="desc">{{ item.tenantName ?? '深圳传世般若有限公司' }}</div>
560 <div class="desc">{{ item.updateTime }}</div> 569 <div class="desc">{{ item.updateTime }}</div>
...@@ -599,13 +608,23 @@ const createBtnVisible = computed(() => { ...@@ -599,13 +608,23 @@ const createBtnVisible = computed(() => {
599 608
600 <style scoped lang="scss"> 609 <style scoped lang="scss">
601 .container_wrap { 610 .container_wrap {
602 padding: 16px 16px 0; 611 padding: 0 16px;
603 display: flex; 612
604 flex-direction: column; 613 .table_tool_wrap {
614 height: 44px;
615 margin-bottom: 4px;
616 }
617
618 .table_panel_wrap {
619 flex: 1;
620 }
605 } 621 }
606 622
607 .content_main_wrap { 623 .content_main_wrap {
608 flex: 1; 624 display: flex;
625 flex-direction: column;
626 height: calc(100% - 48px);
627
609 } 628 }
610 629
611 .table_panel { 630 .table_panel {
...@@ -752,6 +771,10 @@ const createBtnVisible = computed(() => { ...@@ -752,6 +771,10 @@ const createBtnVisible = computed(() => {
752 padding: 16px; 771 padding: 16px;
753 box-shadow: 0 0 0 1px #d9d9d9; 772 box-shadow: 0 0 0 1px #d9d9d9;
754 773
774 &.active {
775 box-shadow: 0 0 0 1px var(--el-color-primary);
776 }
777
755 .header { 778 .header {
756 display: flex; 779 display: flex;
757 margin-bottom: 16px; 780 margin-bottom: 16px;
...@@ -766,6 +789,12 @@ const createBtnVisible = computed(() => { ...@@ -766,6 +789,12 @@ const createBtnVisible = computed(() => {
766 color: #212121; 789 color: #212121;
767 font-weight: 600; 790 font-weight: 600;
768 margin-bottom: 8px; 791 margin-bottom: 8px;
792 cursor: pointer;
793
794 &:hover,
795 &.active {
796 color: var(--el-color-primary);
797 }
769 } 798 }
770 799
771 .right-main { 800 .right-main {
...@@ -792,29 +821,35 @@ const createBtnVisible = computed(() => { ...@@ -792,29 +821,35 @@ const createBtnVisible = computed(() => {
792 display: flex; 821 display: flex;
793 justify-content: space-between; 822 justify-content: space-between;
794 align-items: center; 823 align-items: center;
795 box-shadow: 0 0 0 1px #d9d9d9; 824 box-shadow: 0 0 0 1px #4fa1a4;
796 position: relative; 825 position: relative;
797 826
798 &::after { 827 // &::after {
799 content: ''; 828 // content: '';
800 width: 0; 829 // width: 0;
801 height: 100%; 830 // height: 100%;
802 border-left: 1px solid #d9d9d9; 831 // border-left: 1px solid #d9d9d9;
803 position: absolute; 832 // position: absolute;
804 left: 50%; 833 // left: 50%;
805 transform: translateX(-50%); 834 // transform: translateX(-50%);
806 } 835 // }
807 836
808 >.left-btn { 837 >.left-btn {
809 width: 50%; 838 width: 50%;
810 height: 40px; 839 height: 40px;
811 line-height: 40px; 840 line-height: 40px;
812 text-align: center; 841 text-align: center;
842 background: #4fa1a4;
843 color: #fff;
813 cursor: pointer; 844 cursor: pointer;
814 845
815 &:hover { 846 &.is_block {
816 color: #4fa1a4; 847 width: 100%;
817 } 848 }
849
850 // &:hover {
851 // color: #4fa1a4;
852 // }
818 } 853 }
819 } 854 }
820 } 855 }
......
...@@ -13,12 +13,12 @@ import { ...@@ -13,12 +13,12 @@ import {
13 getAreaData, 13 getAreaData,
14 getTenantDetailInfo, 14 getTenantDetailInfo,
15 getServiceTenants, 15 getServiceTenants,
16 getTenantAttach 16 getTenantAttach,
17 getSingleList
17 } from "@/api/modules/queryService"; 18 } from "@/api/modules/queryService";
18 import { ElMessage, ElMessageBox } from "element-plus"; 19 import { ElMessage, ElMessageBox } from "element-plus";
19 import { 20 import {
20 getSubjectDoaminList, 21 getParamsList,
21 getDamTypesList,
22 registerSave, 22 registerSave,
23 registerUpdate, 23 registerUpdate,
24 getRegiaterDetail, 24 getRegiaterDetail,
...@@ -27,6 +27,7 @@ import { ...@@ -27,6 +27,7 @@ import {
27 getServiceDetail, 27 getServiceDetail,
28 getRegisterCatalogList 28 getRegisterCatalogList
29 } from '@/api/modules/dataAsset'; 29 } from '@/api/modules/dataAsset';
30 import { getCamundaDeploymentId } from "@/api/modules/workFlowService"
30 import useDataAssetStore from "@/store/modules/dataAsset"; 31 import useDataAssetStore from "@/store/modules/dataAsset";
31 import { useValidator } from '@/hooks/useValidator'; 32 import { useValidator } from '@/hooks/useValidator';
32 33
...@@ -50,6 +51,8 @@ const editType = route.query.type; ...@@ -50,6 +51,8 @@ const editType = route.query.type;
50 const registerCatalogList: any = ref([]); 51 const registerCatalogList: any = ref([]);
51 const damTypes: any = ref([]); 52 const damTypes: any = ref([]);
52 const subjectDomainListData: any = ref([]); 53 const subjectDomainListData: any = ref([]);
54 const qualityEvaluationData: any = ref([]);
55 const costAssessmentData: any = ref([]);
53 56
54 const getParentAreaPromise: any = ref(null); 57 const getParentAreaPromise: any = ref(null);
55 const getAreaDataPromise: any = ref({}); 58 const getAreaDataPromise: any = ref({});
...@@ -154,8 +157,22 @@ const getArea = (node, resolve) => { ...@@ -154,8 +157,22 @@ const getArea = (node, resolve) => {
154 } 157 }
155 } 158 }
156 159
157 const serviceTenants: any = ref([]); 160 const serviceTenants: any = ref([
158 const currTenantChanged: any = ref([]); 161 {
162 "exchangeGuid": "07c11603a8bc4d8f8bee2e3a34ab4d8a",
163 "exchangeName": "测试数交所",
164 "listingNum": 0,
165 "underReviewNum": 0
166 }
167 ]);
168 const currTenantChanged: any = ref([
169 {
170 "exchangeGuid": "07c11603a8bc4d8f8bee2e3a34ab4d8a",
171 "exchangeName": "测试数交所",
172 "listingNum": 0,
173 "underReviewNum": 0
174 }
175 ]);
159 176
160 const tenantDetail: any = ref({}); 177 const tenantDetail: any = ref({});
161 178
...@@ -193,8 +210,7 @@ const setBaseFormItemsValue = (info) => { ...@@ -193,8 +210,7 @@ const setBaseFormItemsValue = (info) => {
193 item.default = info.coverageArea; 210 item.default = info.coverageArea;
194 item.children[0].default = info.coverageAreas; 211 item.children[0].default = info.coverageAreas;
195 item.children[0].visible = info.coverageArea != 'all'; 212 item.children[0].visible = info.coverageArea != 'all';
196 } 213 } else if (item.field == 'dataSensitivityLevel') {
197 else if (item.field == 'dataSensitivityLevel') {
198 item.default = info[item.field] || []; 214 item.default = info[item.field] || [];
199 item.inputOptions.default = info['dataSensitivityLevelOther']; 215 item.inputOptions.default = info['dataSensitivityLevelOther'];
200 if (info['dataSensitivityLevel']?.includes(5)) { 216 if (info['dataSensitivityLevel']?.includes(5)) {
...@@ -250,14 +266,34 @@ const setBaseFormItemsValue = (info) => { ...@@ -250,14 +266,34 @@ const setBaseFormItemsValue = (info) => {
250 } else { 266 } else {
251 item.children[1].visible = false; 267 item.children[1].visible = false;
252 } 268 }
253 } else if (item.field == 'isEvaluationAssessment') { 269 }
270 // else if (item.field == 'isEvaluationAssessment') {
271 // item.default = info[item.field];
272 // if (info['isEvaluationAssessment'] === 'Y') {
273 // uploadFormItems.value[2].visible = true;
274 // uploadFormItems.value[3].visible = true
275 // } else {
276 // uploadFormItems.value[2].visible = false;
277 // uploadFormItems.value[3].visible = false
278 // }
279 // }
280 else if (item.field == 'isQualityAssessment') {
254 item.default = info[item.field]; 281 item.default = info[item.field];
255 if (info['isEvaluationAssessment'] === 'Y') { 282 if (info['isQualityAssessment'] === 'Y') {
256 uploadFormItems.value[2].visible = true; 283 uploadFormItems.value[2].visible = true;
257 uploadFormItems.value[3].visible = true 284 uploadFormItems.value[3].visible = true;
258 } else { 285 } else {
259 uploadFormItems.value[2].visible = false; 286 uploadFormItems.value[2].visible = false;
260 uploadFormItems.value[3].visible = false 287 uploadFormItems.value[3].visible = false;
288 }
289 } else if (item.field == 'isCostAssessment') {
290 item.default = info[item.field];
291 if (info['isCostAssessment'] === 'Y') {
292 uploadFormItems.value[4].visible = true;
293 uploadFormItems.value[5].visible = true;
294 } else {
295 uploadFormItems.value[4].visible = false;
296 uploadFormItems.value[5].visible = false;
261 } 297 }
262 } else { 298 } else {
263 item.default = info[item.field]; 299 item.default = info[item.field];
...@@ -271,8 +307,7 @@ const setUploadFormItemsValue = (info) => { ...@@ -271,8 +307,7 @@ const setUploadFormItemsValue = (info) => {
271 if (item.field == 'registerLetter') { 307 if (item.field == 'registerLetter') {
272 item.default = attach.registerLetter || []; 308 item.default = attach.registerLetter || [];
273 item.templateUrl = attachDataInfo.value.register_letter; 309 item.templateUrl = attachDataInfo.value.register_letter;
274 } 310 } else if (item.field == 'qualityEvaluationFile') {
275 else if (item.field == 'qualityEvaluationFile') {
276 item.default = attach.qualityEvaluationFile || []; 311 item.default = attach.qualityEvaluationFile || [];
277 item.templateUrl = attachDataInfo.value.quality_evaluation_file; 312 item.templateUrl = attachDataInfo.value.quality_evaluation_file;
278 } else if (item.field == 'costAssessmentFile') { 313 } else if (item.field == 'costAssessmentFile') {
...@@ -281,6 +316,10 @@ const setUploadFormItemsValue = (info) => { ...@@ -281,6 +316,10 @@ const setUploadFormItemsValue = (info) => {
281 } else if (item.field === 'commitmentLetter') { 316 } else if (item.field === 'commitmentLetter') {
282 item.default = attach.commitmentLetter || []; 317 item.default = attach.commitmentLetter || [];
283 item.templateUrl = attachDataInfo.value['commitment-letter']; 318 item.templateUrl = attachDataInfo.value['commitment-letter'];
319 } else if (item.field === 'costAssessmentInstitution') {
320 item.default = attach.costAssessmentInstitution || '';
321 } else if (item.field === 'qualityEvaluationInstitution') {
322 item.default = attach.qualityEvaluationInstitution || '';
284 } 323 }
285 }); 324 });
286 } 325 }
...@@ -336,6 +375,18 @@ const getRegisterCatalogListData = () => { ...@@ -336,6 +375,18 @@ const getRegisterCatalogListData = () => {
336 dataScaleItem.disabled = false; 375 dataScaleItem.disabled = false;
337 } 376 }
338 } 377 }
378 if (draftDetailInfo.value.damGuid) {
379 let da = registerCatalogList.value.find(r => r.guid == draftDetailInfo.value.damGuid);
380 if (da && da.dataCount != null) {
381 dataScaleItem.disabled = true;
382 if (draftDetailInfo.value.dataScale == null) {
383 draftDetailInfo.value.dataScale = da.dataCount;
384 setBaseFormItemsValue(draftDetailInfo.value);
385 }
386 } else {
387 dataScaleItem.disabled = false;
388 }
389 }
339 } else { 390 } else {
340 ElMessage.error(res.msg); 391 ElMessage.error(res.msg);
341 } 392 }
...@@ -348,12 +399,15 @@ onActivated(() => { ...@@ -348,12 +399,15 @@ onActivated(() => {
348 399
349 onBeforeMount(() => { 400 onBeforeMount(() => {
350 if (guid) { 401 if (guid) {
402 baseFormItems.value[7].default = guid;
351 fullscreenLoading.value = true; 403 fullscreenLoading.value = true;
352 getRegiaterDetail({ guid: guid }).then((res: any) => { 404 getRegiaterDetail({ guid: guid }).then((res: any) => {
353 fullscreenLoading.value = false; 405 fullscreenLoading.value = false;
354 if (res.code == proxy.$passCode) { 406 if (res.code == proxy.$passCode) {
355 const data = res.data || {} 407 const data = res.data || {}
356 draftDetailInfo.value = data; 408 draftDetailInfo.value = data;
409 deploymentId.value = data.camundaDeploymentId;
410 processInstanceId.value = data.camundaInstanceId
357 let coverageArea = ''; 411 let coverageArea = '';
358 let coverageAreas = []; 412 let coverageAreas = [];
359 let damTypeItem = baseFormItems.value.find(item => item.field == 'damType'); 413 let damTypeItem = baseFormItems.value.find(item => item.field == 'damType');
...@@ -401,17 +455,18 @@ onBeforeMount(() => { ...@@ -401,17 +455,18 @@ onBeforeMount(() => {
401 }); 455 });
402 } 456 }
403 if (data.exchangeGuid) { 457 if (data.exchangeGuid) {
404 getTenantAttach(data.exchangeGuid).then((res: any) => { 458 // getTenantAttach(data.exchangeGuid).then((res: any) => {
405 if (res?.code == proxy.$passCode) { 459 // if (res?.code == proxy.$passCode) {
406 Object.assign(attachDataInfo.value, res.data || {}); 460 // Object.assign(attachDataInfo.value, res.data || {});
407 uploadFormItems.value[0].templateUrl = attachDataInfo.value.register_letter; 461 // uploadFormItems.value[0].templateUrl = attachDataInfo.value.register_letter;
408 uploadFormItems.value[1].templateUrl = attachDataInfo.value['commitment-letter']; 462 // uploadFormItems.value[1].templateUrl = attachDataInfo.value['commitment-letter'];
409 setUploadFormItemsValue(draftDetailInfo.value); 463 // setUploadFormItemsValue(draftDetailInfo.value);
410 } else { 464 // } else {
411 ElMessage.error(res.msg); 465 // ElMessage.error(res.msg);
412 setUploadFormItemsValue(draftDetailInfo.value); 466 // setUploadFormItemsValue(draftDetailInfo.value);
413 } 467 // }
414 }) 468 // })
469 setUploadFormItemsValue(draftDetailInfo.value);
415 } else { 470 } else {
416 setUploadFormItemsValue(draftDetailInfo.value); 471 setUploadFormItemsValue(draftDetailInfo.value);
417 } 472 }
...@@ -435,13 +490,13 @@ onBeforeMount(() => { ...@@ -435,13 +490,13 @@ onBeforeMount(() => {
435 } else { 490 } else {
436 setPropertyFormItemsValue(draftDetailInfo.value); 491 setPropertyFormItemsValue(draftDetailInfo.value);
437 } 492 }
438 if (fullPath === route.fullPath) { 493 // if (fullPath === route.fullPath) {
439 document.title = editType ? `详情-${data.daName}` : `编辑-${data.daName}`; 494 // document.title = editType ? `详情-${data.daName}` : `编辑-${data.daName}`;
440 } 495 // }
441 let tab: any = userStore.tabbar.find((tab: any) => tab.fullPath === fullPath); 496 // let tab: any = userStore.tabbar.find((tab: any) => tab.fullPath === fullPath);
442 if (tab) { 497 // if (tab) {
443 tab.meta.title = editType ? `详情-${data.daName}` : `编辑-${data.daName}`; 498 // tab.meta.title = editType ? `详情-${data.daName}` : `编辑-${data.daName}`;
444 } 499 // }
445 if (data.approveGuid != null) { 500 if (data.approveGuid != null) {
446 approveTableInfo.value.loading = true; 501 approveTableInfo.value.loading = true;
447 getApproveList(guid).then((res: any) => { 502 getApproveList(guid).then((res: any) => {
...@@ -473,61 +528,68 @@ onBeforeMount(() => { ...@@ -473,61 +528,68 @@ onBeforeMount(() => {
473 } 528 }
474 }); 529 });
475 } else { 530 } else {
476 //新建无guid的时候显示这个审批信息,有guid调用另一个接口。 531 getCamundaDeploymentId('10017').then((res: any) => {
477 getTenantApprove().then((res: any) => {
478 if (res.code == proxy.$passCode) { 532 if (res.code == proxy.$passCode) {
479 approveTableInfo.value.data = res.data?.map(d => { 533 deploymentId.value = res.data;
480 return {
481 tenantType: d.substring(4)
482 }
483 }) || [];
484 } else { 534 } else {
485 ElMessage.error(res.msg); 535 ElMessage.error(res.msg);
486 } 536 }
487 }); 537 })
538 // //新建无guid的时候显示这个审批信息,有guid调用另一个接口。
539 // getTenantApprove().then((res: any) => {
540 // if (res.code == proxy.$passCode) {
541 // approveTableInfo.value.data = res.data?.map(d => {
542 // return {
543 // tenantType: d.substring(4)
544 // }
545 // }) || [];
546 // } else {
547 // ElMessage.error(res.msg);
548 // }
549 // });
488 } 550 }
489 getTenantDetail(); 551 let exchangeItem = baseFormItems.value.find(f => f.field === 'exchangeGuid');
490 getServiceTenants({ 552 exchangeItem.default = route.query.exchangeGuid;
491 tenantType: 3 553 // getTenantDetail();
492 }).then((res: any) => { 554 // getServiceTenants({
493 if (res.code == proxy.$passCode) { 555 // tenantType: 3
494 const data = res.data ?? {}; 556 // }).then((res: any) => {
495 serviceTenants.value = data['3'] || []; 557 // if (res.code == proxy.$passCode) {
496 let item2 = baseFormItems.value.find(f => f.field === 'rules'); 558 // const data = res.data ?? {};
497 item2.children[1].options = serviceTenants.value; 559 // serviceTenants.value = data['3'] || [];
498 } else { 560 // let item2 = baseFormItems.value.find(f => f.field === 'rules');
499 ElMessage.error(res.msg); 561 // item2.children[1].options = serviceTenants.value;
500 } 562 // } else {
501 }); 563 // ElMessage.error(res.msg);
502 getServiceDetail(userData.tenantGuid).then((res: any) => { 564 // }
503 if (res.code == proxy.$passCode) { 565 // });
504 const data = res.data ?? {}; 566 // getServiceDetail(userData.tenantGuid).then((res: any) => {
505 currTenantChanged.value = data.filter(d => d.serviceType == 4); 567 // if (res.code == proxy.$passCode) {
506 let formItem = baseFormItems.value.find(f => f.field === 'exchangeGuid'); 568 // const data = res.data ?? {};
507 formItem.options = currTenantChanged.value; 569 // currTenantChanged.value = data.filter(d => d.serviceType == 4);
508 } else { 570 // let formItem = baseFormItems.value.find(f => f.field === 'exchangeGuid');
509 ElMessage.error(res.msg); 571 // formItem.options = currTenantChanged.value;
510 } 572 // } else {
511 }); 573 // ElMessage.error(res.msg);
574 // }
575 // });
512 getParentAreaPromise.value = getAreaData({ parentId: null }).then((res: any) => { 576 getParentAreaPromise.value = getAreaData({ parentId: null }).then((res: any) => {
513 if (res?.code == proxy.$passCode) { 577 if (res?.code == proxy.$passCode) {
514 parentAreaData.value = res.data ?? []; 578 parentAreaData.value = res.data ?? [];
515 return parentAreaData.value; 579 return parentAreaData.value;
516 } 580 }
517 }) 581 })
518 getTenantAttach(userData.tenantGuid).then((res: any) => { 582 // getTenantAttach(userData.tenantGuid).then((res: any) => {
519 if (res?.code == proxy.$passCode) { 583 // if (res?.code == proxy.$passCode) {
520 console.log(res.data); 584 // console.log(res.data);
521 Object.assign(attachDataInfo.value, res.data || {}); 585 // Object.assign(attachDataInfo.value, res.data || {});
522 uploadFormItems.value[2].templateUrl = attachDataInfo.value.quality_evaluation_file; 586 // uploadFormItems.value[2].templateUrl = attachDataInfo.value.quality_evaluation_file;
523 uploadFormItems.value[3].templateUrl = attachDataInfo.value.cost_assessment_file; 587 // uploadFormItems.value[3].templateUrl = attachDataInfo.value.cost_assessment_file;
524 } else { 588 // } else {
525 ElMessage.error(res.msg); 589 // ElMessage.error(res.msg);
526 } 590 // }
527 }) 591 // })
528 getDamTypesList({ 592 getParamsList({ dictType: '资产类型' }).then((res: any) => {
529 dictType: "资产类型",
530 }).then((res: any) => {
531 if (res.code == proxy.$passCode) { 593 if (res.code == proxy.$passCode) {
532 damTypes.value = res.data || []; 594 damTypes.value = res.data || [];
533 let item = baseFormItems.value.find(item => item.field == 'damType'); 595 let item = baseFormItems.value.find(item => item.field == 'damType');
...@@ -544,9 +606,7 @@ onBeforeMount(() => { ...@@ -544,9 +606,7 @@ onBeforeMount(() => {
544 proxy.$ElMessage.error(res.msg); 606 proxy.$ElMessage.error(res.msg);
545 } 607 }
546 }) 608 })
547 getSubjectDoaminList({ 609 getParamsList({ dictType: '数据资产目录主题名称' }).then((res: any) => {
548 dictType: "数据资产目录主题名称",
549 }).then((res: any) => {
550 if (res.code == proxy.$passCode) { 610 if (res.code == proxy.$passCode) {
551 subjectDomainListData.value = replaceChildDictListKey(res.data) || []; 611 subjectDomainListData.value = replaceChildDictListKey(res.data) || [];
552 let item = baseFormItems.value.find(item => item.field == 'subjectDomain'); 612 let item = baseFormItems.value.find(item => item.field == 'subjectDomain');
...@@ -555,20 +615,28 @@ onBeforeMount(() => { ...@@ -555,20 +615,28 @@ onBeforeMount(() => {
555 proxy.$ElMessage.error(res.msg); 615 proxy.$ElMessage.error(res.msg);
556 } 616 }
557 }) 617 })
618 // 获取质量评估机构
619 getSingleList({ pageIndex: -1, pageSize: -1, tenantType: "12505" }).then((res: any) => {
620 if (res.code == proxy.$passCode) {
621 qualityEvaluationData.value = res.data.records || [];
622 let item = uploadFormItems.value.find(item => item.field == 'qualityEvaluationInstitution');
623 item && (item.options = qualityEvaluationData.value);
624 } else {
625 proxy.$ElMessage.error(res.msg);
626 }
627 })
628 // 获取价值评估机构
629 getSingleList({ pageIndex: -1, pageSize: -1, tenantType: "12504" }).then((res: any) => {
630 if (res.code == proxy.$passCode) {
631 costAssessmentData.value = res.data.records || [];
632 let item = uploadFormItems.value.find(item => item.field == 'costAssessmentInstitution');
633 item && (item.options = costAssessmentData.value);
634 } else {
635 proxy.$ElMessage.error(res.msg);
636 }
637 })
558 }); 638 });
559 639
560 function replaceChildDictListKey(data) {
561 if (Array.isArray(data)) {
562 return data.map(item => replaceChildDictListKey(item));
563 } else if (data && typeof data === 'object') {
564 const { childDictList, ...rest } = data;
565 return {
566 ...rest,
567 children: childDictList ? replaceChildDictListKey(childDictList) : undefined,
568 };
569 }
570 return data;
571 }
572 const tabsInfo = ref({ 640 const tabsInfo = ref({
573 visible: false, 641 visible: false,
574 activeName: "baseInfo", 642 activeName: "baseInfo",
...@@ -634,8 +702,8 @@ const baseFormItems: any = ref([ ...@@ -634,8 +702,8 @@ const baseFormItems: any = ref([
634 default: '', 702 default: '',
635 options: damTypes.value, 703 options: damTypes.value,
636 props: { 704 props: {
637 label: "label", 705 // value: 'paramValue',
638 value: "value", 706 // label: 'paramName'
639 }, 707 },
640 required: true, 708 required: true,
641 visible: true 709 visible: true
...@@ -651,6 +719,7 @@ const baseFormItems: any = ref([ ...@@ -651,6 +719,7 @@ const baseFormItems: any = ref([
651 props: { 719 props: {
652 label: "label", 720 label: "label",
653 value: "value", 721 value: "value",
722 children: 'childDictList'
654 }, 723 },
655 filterable: true, 724 filterable: true,
656 clearable: true, 725 clearable: true,
...@@ -674,6 +743,14 @@ const baseFormItems: any = ref([ ...@@ -674,6 +743,14 @@ const baseFormItems: any = ref([
674 clearable: true, 743 clearable: true,
675 required: true, 744 required: true,
676 }, { 745 }, {
746 label: "数据时间范围",
747 type: "date-picker",
748 field: "dateRange",
749 default: null,
750 placeholder: "开始时间~结束时间",
751 clearable: true,
752 required: true,
753 }, {
677 label: '病例总数(例)', 754 label: '病例总数(例)',
678 type: 'input', 755 type: 'input',
679 placeholder: '请输入', 756 placeholder: '请输入',
...@@ -683,6 +760,7 @@ const baseFormItems: any = ref([ ...@@ -683,6 +760,7 @@ const baseFormItems: any = ref([
683 default: '', 760 default: '',
684 required: false 761 required: false
685 }, { 762 }, {
763 }, {
686 label: '数据覆盖地域', 764 label: '数据覆盖地域',
687 type: 'checkbox-select', 765 type: 'checkbox-select',
688 placeholder: '全国', 766 placeholder: '全国',
...@@ -726,12 +804,16 @@ const baseFormItems: any = ref([ ...@@ -726,12 +804,16 @@ const baseFormItems: any = ref([
726 field: 'exchangeGuid', 804 field: 'exchangeGuid',
727 default: '', 805 default: '',
728 // col: 'mr8', 806 // col: 'mr8',
807 // col: 'mr8',
729 options: currTenantChanged.value, 808 options: currTenantChanged.value,
730 props: { 809 props: {
731 value: 'serviceTenantGuid', 810 // value: 'serviceTenantGuid',
732 label: 'serviceTenantName' 811 // label: 'serviceTenantName'
812 value: "exchangeGuid",
813 label: "exchangeName",
733 }, 814 },
734 required: true, 815 required: true,
816 disabled: true,
735 visible: true 817 visible: true
736 }, 818 },
737 { 819 {
...@@ -767,8 +849,10 @@ const baseFormItems: any = ref([ ...@@ -767,8 +849,10 @@ const baseFormItems: any = ref([
767 default: [], 849 default: [],
768 // index: 0, 850 // index: 0,
769 props: { 851 props: {
770 value: "guid", 852 // value: "guid",
771 label: "tenantName", 853 // label: "tenantName",
854 value: "exchangeGuid",
855 label: "exchangeName",
772 }, 856 },
773 options: serviceTenants.value, 857 options: serviceTenants.value,
774 multiple: true, 858 multiple: true,
...@@ -802,24 +886,42 @@ const baseFormItems: any = ref([ ...@@ -802,24 +886,42 @@ const baseFormItems: any = ref([
802 required: true, 886 required: true,
803 }, 887 },
804 { 888 {
805 label: "是否质量及价值评估", 889 label: "是否完成质量评估",
806 type: "radio-group", 890 type: "radio-group",
807 placeholder: "", 891 placeholder: "",
808 field: "isEvaluationAssessment", 892 field: "isQualityAssessment",
809 default: 'N', 893 default: 'N',
810 col: 'no-margin-r',
811 options: [ 894 options: [
812 { 895 {
813 label: "是", 896 label: "是",
814 value: "Y", 897 value: 'Y',
815 }, 898 },
816 { 899 {
817 label: "否", 900 label: "否",
818 value: "N", 901 value: 'N',
819 } 902 },
820 ], 903 ],
821 required: true, 904 required: true,
822 }, { 905 },
906 {
907 label: "是否完成价值评估",
908 type: "radio-group",
909 placeholder: "",
910 field: "isCostAssessment",
911 default: 'N',
912 options: [
913 {
914 label: "是",
915 value: 'Y',
916 },
917 {
918 label: "否",
919 value: 'N',
920 },
921 ],
922 required: true,
923 },
924 {
823 label: "数据分类", 925 label: "数据分类",
824 type: "radio-group", 926 type: "radio-group",
825 placeholder: "", 927 placeholder: "",
...@@ -922,7 +1024,7 @@ const baseFormItems: any = ref([ ...@@ -922,7 +1024,7 @@ const baseFormItems: any = ref([
922 block: true, 1024 block: true,
923 field: "dataSensitivityLevel", 1025 field: "dataSensitivityLevel",
924 col: 'other-group-flex', 1026 col: 'other-group-flex',
925 default: [], 1027 default: [1],
926 children: [ 1028 children: [
927 { 1029 {
928 label: "公开数据", 1030 label: "公开数据",
...@@ -1008,7 +1110,7 @@ const baseFormItems: any = ref([ ...@@ -1008,7 +1110,7 @@ const baseFormItems: any = ref([
1008 type: "checkbox-group-row", 1110 type: "checkbox-group-row",
1009 placeholder: "", 1111 placeholder: "",
1010 field: "dataGetWay", 1112 field: "dataGetWay",
1011 default: [], 1113 default: [1],
1012 col: 'other-group-flex', 1114 col: 'other-group-flex',
1013 block: true, 1115 block: true,
1014 children: [ 1116 children: [
...@@ -1060,7 +1162,7 @@ const baseFormItems: any = ref([ ...@@ -1060,7 +1162,7 @@ const baseFormItems: any = ref([
1060 type: "checkbox-group-row", 1162 type: "checkbox-group-row",
1061 placeholder: "", 1163 placeholder: "",
1062 field: "updateFrequency", 1164 field: "updateFrequency",
1063 default: [], 1165 default: [3],
1064 block: true, 1166 block: true,
1065 col: 'other-group-flex', 1167 col: 'other-group-flex',
1066 children: [ 1168 children: [
...@@ -1110,7 +1212,7 @@ const baseFormItems: any = ref([ ...@@ -1110,7 +1212,7 @@ const baseFormItems: any = ref([
1110 placeholder: "", 1212 placeholder: "",
1111 col: 'other-group-flex', 1213 col: 'other-group-flex',
1112 field: "ownIndustry", 1214 field: "ownIndustry",
1113 default: [], 1215 default: [2],
1114 children: [ 1216 children: [
1115 { 1217 {
1116 label: "能源", 1218 label: "能源",
...@@ -1148,7 +1250,7 @@ const baseFormItems: any = ref([ ...@@ -1148,7 +1250,7 @@ const baseFormItems: any = ref([
1148 placeholder: "", 1250 placeholder: "",
1149 col: 'other-group-flex', 1251 col: 'other-group-flex',
1150 field: "bizOwn", 1252 field: "bizOwn",
1151 default: [], 1253 default: [1],
1152 children: [ 1254 children: [
1153 { 1255 {
1154 label: "生产类业务数据", 1256 label: "生产类业务数据",
...@@ -1365,7 +1467,7 @@ const propertyFormItems: any = ref([ ...@@ -1365,7 +1467,7 @@ const propertyFormItems: any = ref([
1365 type: "checkbox-group-row", 1467 type: "checkbox-group-row",
1366 placeholder: "", 1468 placeholder: "",
1367 field: "propertyType", 1469 field: "propertyType",
1368 default: [], 1470 default: [3],
1369 children: [ 1471 children: [
1370 { 1472 {
1371 label: "数据资源持有权", 1473 label: "数据资源持有权",
...@@ -1388,7 +1490,7 @@ const propertyFormItems: any = ref([ ...@@ -1388,7 +1490,7 @@ const propertyFormItems: any = ref([
1388 placeholder: "", 1490 placeholder: "",
1389 field: "rightsContent", 1491 field: "rightsContent",
1390 col: 'col2', 1492 col: 'col2',
1391 default: [], 1493 default: [5],
1392 children: [ 1494 children: [
1393 { 1495 {
1394 label: "可转让", 1496 label: "可转让",
...@@ -1686,53 +1788,109 @@ const propertyRadioGroupChange = (val, row, item) => { ...@@ -1686,53 +1788,109 @@ const propertyRadioGroupChange = (val, row, item) => {
1686 const uploadFormRef = ref(); 1788 const uploadFormRef = ref();
1687 1789
1688 /** 资产内容 */ 1790 /** 资产内容 */
1689 const uploadFormItems: any = ref([{ 1791 const uploadFormItems: any = ref([
1690 label: '数据登记承诺及收集函', 1792 {
1691 tip: '支持扩展名:xls .xlsx .doc .docx .rar .zip', 1793 label: '数据登记承诺及收集函',
1692 type: 'upload-file', 1794 tip: '支持扩展名:xls .xlsx .doc .docx .rar .zip',
1693 accept: '.xls, .xlsx, .doc, .docx, .rar, .zip', 1795 type: 'upload-file',
1694 required: true, 1796 accept: '.xls, .xlsx, .doc, .docx, .rar, .zip',
1695 default: [], 1797 required: true,
1696 field: 'registerLetter', 1798 default: [],
1697 visible: true, 1799 field: 'registerLetter',
1698 }, 1800 visible: true,
1699 { 1801 col: 'col2',
1700 label: '承诺函附件', 1802 },
1701 tip: '支持扩展名:doc .docx .pdf .jpg .png', 1803 {
1702 type: 'upload-file', 1804 label: '承诺函附件',
1703 accept: '.doc, .docx, .pdf, .jpg, .png', 1805 tip: '支持扩展名:doc .docx .pdf .jpg .png',
1704 required: false, 1806 type: 'upload-file',
1705 default: [], 1807 accept: '.doc, .docx, .pdf, .jpg, .png',
1706 field: 'commitmentLetter', 1808 required: false,
1707 }, 1809 default: [],
1708 // { 1810 field: 'commitmentLetter',
1709 // label: '文件hash值', 1811 col: 'col2',
1710 // type: 'input', 1812 },
1711 // placeholder: '请输入', 1813 // {
1712 // field: 'fileHash', 1814 // label: '文件hash值',
1713 // default: '', 1815 // type: 'input',
1714 // visible: true, 1816 // placeholder: '请输入',
1715 // required: true 1817 // field: 'fileHash',
1716 // }, 1818 // default: '',
1717 { 1819 // visible: true,
1718 label: '数据质量评价收集', 1820 // required: true
1719 tip: '支持扩展名:xls .xlsx .doc .docx .rar .zip', 1821 // },
1720 type: 'upload-file', 1822 // {
1721 accept: '.xls, .xlsx, .doc, .docx, .rar, .zip', 1823 // label: '数据质量评价收集',
1722 required: true, 1824 // tip: '支持扩展名:xls .xlsx .doc .docx .rar .zip',
1723 default: [], 1825 // type: 'upload-file',
1724 field: 'qualityEvaluationFile', 1826 // accept: '.xls, .xlsx, .doc, .docx, .rar, .zip',
1725 visible: false, 1827 // required: true,
1726 }, { 1828 // default: [],
1727 label: '数据价值评估', 1829 // field: 'qualityEvaluationFile',
1728 tip: '支持扩展名:xls .xlsx .doc .docx .rar .zip', 1830 // visible: false,
1729 type: 'upload-file', 1831 // }, {
1730 accept: '.xls, .xlsx, .doc, .docx, .rar, .zip', 1832 // label: '数据价值评估',
1731 required: true, 1833 // tip: '支持扩展名:xls .xlsx .doc .docx .rar .zip',
1732 visible: false, 1834 // type: 'upload-file',
1733 default: [], 1835 // accept: '.xls, .xlsx, .doc, .docx, .rar, .zip',
1734 field: 'costAssessmentFile', 1836 // required: true,
1735 }]); 1837 // visible: false,
1838 // default: [],
1839 // field: 'costAssessmentFile',
1840 // },
1841 {
1842 label: '上传质量评估报告',
1843 tip: '支持扩展名:.png, .pdf,单个文件不得大于5M',
1844 type: 'upload-file',
1845 accept: '.png, .pdf',
1846 required: true,
1847 default: [],
1848 col: 'mr8',
1849 field: 'qualityEvaluationFile',
1850 visible: false,
1851 },
1852 {
1853 label: '质量评估机构',
1854 type: 'select',
1855 placeholder: '请选择',
1856 field: 'qualityEvaluationInstitution',
1857 default: '',
1858 options: [],
1859 required: true,
1860 filterable: true,
1861 allowCreate: true,
1862 style: {
1863 width: 'calc(33.33% - 6px)!important'
1864 },
1865 visible: false,
1866 },
1867 {
1868 label: '上传价值评估报告',
1869 tip: '支持扩展名:.png, .pdf,单个文件不得大于5M',
1870 type: 'upload-file',
1871 accept: '.png, .pdf',
1872 required: true,
1873 default: [],
1874 col: 'mr8',
1875 field: 'costAssessmentFile',
1876 visible: false,
1877 },
1878 {
1879 label: '价值评估机构',
1880 type: 'select',
1881 placeholder: '请选择',
1882 field: 'costAssessmentInstitution',
1883 default: '',
1884 options: [],
1885 required: true,
1886 filterable: true,
1887 allowCreate: true,
1888 style: {
1889 width: 'calc(33.33% - 6px)!important'
1890 },
1891 visible: false,
1892 },
1893 ]);
1736 1894
1737 const uploadFormRules = ref({ 1895 const uploadFormRules = ref({
1738 registerLetter: [{ 1896 registerLetter: [{
...@@ -1747,10 +1905,13 @@ const uploadFormRules = ref({ ...@@ -1747,10 +1905,13 @@ const uploadFormRules = ref({
1747 // fileHash: [ 1905 // fileHash: [
1748 // { required: true, trigger: 'blur', message: "请填写文件hash值" } 1906 // { required: true, trigger: 'blur', message: "请填写文件hash值" }
1749 // ], 1907 // ],
1908 qualityEvaluationInstitution: [
1909 { required: true, trigger: 'change', message: "请选择质量评估机构" }
1910 ],
1750 qualityEvaluationFile: [{ 1911 qualityEvaluationFile: [{
1751 validator: (rule: any, value: any, callback: any) => { 1912 validator: (rule: any, value: any, callback: any) => {
1752 if (!value?.length) { 1913 if (!value?.length) {
1753 callback(new Error('请上传数据质量评价收集')) 1914 callback(new Error('请上传质量评估报告'))
1754 } else { 1915 } else {
1755 callback(); 1916 callback();
1756 } 1917 }
...@@ -1759,7 +1920,7 @@ const uploadFormRules = ref({ ...@@ -1759,7 +1920,7 @@ const uploadFormRules = ref({
1759 costAssessmentFile: [{ 1920 costAssessmentFile: [{
1760 validator: (rule: any, value: any, callback: any) => { 1921 validator: (rule: any, value: any, callback: any) => {
1761 if (!value?.length) { 1922 if (!value?.length) {
1762 callback(new Error('请上传数据价值评估')) 1923 callback(new Error('请上传价值评估报告'))
1763 } else { 1924 } else {
1764 callback(); 1925 callback();
1765 } 1926 }
...@@ -1811,14 +1972,17 @@ const saveDraft = () => { ...@@ -1811,14 +1972,17 @@ const saveDraft = () => {
1811 let propertyFormLine = porpertyInfoFormRef.value.formInline; 1972 let propertyFormLine = porpertyInfoFormRef.value.formInline;
1812 Object.assign(params, propertyFormLine); 1973 Object.assign(params, propertyFormLine);
1813 let uploadFormInline = uploadFormRef.value.formInline; 1974 let uploadFormInline = uploadFormRef.value.formInline;
1975 const registerAttachment = {
1976 // fileHash: uploadFormInline.fileHash,
1977 registerLetter: uploadFormInline['registerLetter']?.map(u => u.url) || [],
1978 qualityEvaluationFile: uploadFormInline['qualityEvaluationFile']?.map(u => u.url) || [],
1979 costAssessmentFile: uploadFormInline['costAssessmentFile']?.map(u => u.url) || [],
1980 commitmentLetter: uploadFormInline['commitmentLetter']?.map(u => u.url) || [],
1981 qualityEvaluationInstitution: uploadFormInline.qualityEvaluationInstitution || '',
1982 costAssessmentInstitution: uploadFormInline.costAssessmentInstitution || '',
1983 }
1814 Object.assign(params, { 1984 Object.assign(params, {
1815 registerAttachment: { 1985 registerAttachment: registerAttachment,
1816 // fileHash: uploadFormInline.fileHash,
1817 registerLetter: uploadFormInline['registerLetter']?.map(u => u.url) || [],
1818 qualityEvaluationFile: uploadFormInline['qualityEvaluationFile']?.map(u => u.url) || [],
1819 costAssessmentFile: uploadFormInline['costAssessmentFile']?.map(u => u.url) || [],
1820 commitmentLetter: uploadFormInline['commitmentLetter']?.map(u => u.url) || [],
1821 },
1822 isSubmit: false, 1986 isSubmit: false,
1823 }); 1987 });
1824 if (params.dateRange?.length) { 1988 if (params.dateRange?.length) {
...@@ -1840,6 +2004,9 @@ const saveDraft = () => { ...@@ -1840,6 +2004,9 @@ const saveDraft = () => {
1840 } else { 2004 } else {
1841 ElMessage.error(res.msg); 2005 ElMessage.error(res.msg);
1842 } 2006 }
2007 }).catch((xhr) => {
2008 ElMessage.error(xhr.response.data.msg);
2009 fullscreenLoading.value = false;
1843 }); 2010 });
1844 } else { 2011 } else {
1845 registerSave(params).then((res: any) => { 2012 registerSave(params).then((res: any) => {
...@@ -1854,6 +2021,9 @@ const saveDraft = () => { ...@@ -1854,6 +2021,9 @@ const saveDraft = () => {
1854 } else { 2021 } else {
1855 ElMessage.error(res.msg); 2022 ElMessage.error(res.msg);
1856 } 2023 }
2024 }).catch((xhr) => {
2025 ElMessage.error(xhr.response.data.msg);
2026 fullscreenLoading.value = false;
1857 }); 2027 });
1858 } 2028 }
1859 } 2029 }
...@@ -1890,6 +2060,7 @@ const save = () => { ...@@ -1890,6 +2060,7 @@ const save = () => {
1890 costAssessmentFile: uploadFormInline['costAssessmentFile']?.map(u => u.url) || [], 2060 costAssessmentFile: uploadFormInline['costAssessmentFile']?.map(u => u.url) || [],
1891 commitmentLetter: uploadFormInline['commitmentLetter']?.map(u => u.url) || [], 2061 commitmentLetter: uploadFormInline['commitmentLetter']?.map(u => u.url) || [],
1892 }, 2062 },
2063 immediateApprove: true,
1893 isSubmit: true, 2064 isSubmit: true,
1894 }); 2065 });
1895 if (params.dateRange?.length) { 2066 if (params.dateRange?.length) {
...@@ -1967,6 +2138,8 @@ onMounted(() => { ...@@ -1967,6 +2138,8 @@ onMounted(() => {
1967 // } 2138 // }
1968 // }, 100)); 2139 // }, 100));
1969 }) 2140 })
2141 const deploymentId = ref('');
2142 const processInstanceId = ref('');
1970 const approveTableInfo: any = ref({ 2143 const approveTableInfo: any = ref({
1971 id: 'approve-table', 2144 id: 'approve-table',
1972 rowKey: 'guid', 2145 rowKey: 'guid',
...@@ -2010,8 +2183,8 @@ const approveTableInfo: any = ref({ ...@@ -2010,8 +2183,8 @@ const approveTableInfo: any = ref({
2010 </ContentWrap> 2183 </ContentWrap>
2011 <ContentWrap id="id-assetContent" title="附件信息" description="" :isExpand="assetContentExpand" expandSwicth 2184 <ContentWrap id="id-assetContent" title="附件信息" description="" :isExpand="assetContentExpand" expandSwicth
2012 style="margin-top: 15px" @expand="(v) => assetContentExpand = v"> 2185 style="margin-top: 15px" @expand="(v) => assetContentExpand = v">
2013 <Form class='uploadForm' :style="{ width: '90%' }" ref="uploadFormRef" :itemList="uploadFormItems" 2186 <Form class='uploadForm' ref="uploadFormRef" :itemList="uploadFormItems" formId="upload-form"
2014 formId="upload-form" :rules="uploadFormRules" /> 2187 :rules="uploadFormRules" col="col3" />
2015 </ContentWrap> 2188 </ContentWrap>
2016 <ContentWrap id="id-propertyInfo" title="权利信息" description="申报数据资产的权利信息" expandSwicth 2189 <ContentWrap id="id-propertyInfo" title="权利信息" description="申报数据资产的权利信息" expandSwicth
2017 :isExpand="propertyInfoExpand" style="margin-top: 15px" @expand="(v) => propertyInfoExpand = v"> 2190 :isExpand="propertyInfoExpand" style="margin-top: 15px" @expand="(v) => propertyInfoExpand = v">
...@@ -2021,7 +2194,8 @@ const approveTableInfo: any = ref({ ...@@ -2021,7 +2194,8 @@ const approveTableInfo: any = ref({
2021 </ContentWrap> 2194 </ContentWrap>
2022 <ContentWrap id="id-approveInfo" title="审批信息" :isExpand="approveInfoExpand" expandSwicth 2195 <ContentWrap id="id-approveInfo" title="审批信息" :isExpand="approveInfoExpand" expandSwicth
2023 style="margin-top: 15px" @expand="(v) => approveInfoExpand = v"> 2196 style="margin-top: 15px" @expand="(v) => approveInfoExpand = v">
2024 <Table :tableInfo="approveTableInfo" /> 2197 <ApprovalProcess v-if="deploymentId" :deploymentId="deploymentId" :definitionId="''">
2198 </ApprovalProcess>
2025 </ContentWrap> 2199 </ContentWrap>
2026 </div> 2200 </div>
2027 </div> 2201 </div>
......
...@@ -1344,7 +1344,7 @@ const getDataBaseTableData = async (params = {}) => { ...@@ -1344,7 +1344,7 @@ const getDataBaseTableData = async (params = {}) => {
1344 const dataBaseParams = { 1344 const dataBaseParams = {
1345 pageIndex: dataBasePage.value.curr, 1345 pageIndex: dataBasePage.value.curr,
1346 pageSize: dataBasePage.value.limit, 1346 pageSize: dataBasePage.value.limit,
1347 isDataAsset: checked.value ? 'Y' : 'N', 1347 isDataAsset: checked.value ? 'Y' : '',
1348 execGuid: execGuidInfo.value.execGuid, 1348 execGuid: execGuidInfo.value.execGuid,
1349 tableGuid: tableGuid.value || selectedB.value || '', 1349 tableGuid: tableGuid.value || selectedB.value || '',
1350 databaseGuid: dataBaseGuid.value || selectedA.value || '', 1350 databaseGuid: dataBaseGuid.value || selectedA.value || '',
......
...@@ -49,7 +49,7 @@ const getBizRuleConfigDetailData = async () => { ...@@ -49,7 +49,7 @@ const getBizRuleConfigDetailData = async () => {
49 } 49 }
50 } 50 }
51 }) 51 })
52 52 console.log('tableData', tableData.value)
53 53
54 tableFieldsLoading.value = false 54 tableFieldsLoading.value = false
55 } else { 55 } else {
...@@ -185,12 +185,12 @@ const tempRowData = ref<any>([]); ...@@ -185,12 +185,12 @@ const tempRowData = ref<any>([]);
185 185
186 // 编辑行 186 // 编辑行
187 const editRow = (row) => { 187 const editRow = (row) => {
188 // console.log('编辑:', row); 188 console.log('编辑:', row);
189 // // 暂存编辑前的数据 用于取消编辑时恢复原始数据,先判断是否已经暂存过tempRowData通过fieldGuid 189 // 暂存编辑前的数据 用于取消编辑时恢复原始数据,先判断是否已经暂存过tempRowData通过fieldGuid
190 // if (!tempRowData.value.find((item) => item.fieldGuid === row.fieldGuid)) { 190 if (!tempRowData.value.find((item) => item.fieldGuid === row.fieldGuid)) {
191 // tempRowData.value.push({ ...row }); 191 tempRowData.value.push({ ...row });
192 // } 192 }
193 193 console.log('tempRowData:', tempRowData.value);
194 // console.log('tempRowData:', tempRowData.value); 194 // console.log('tempRowData:', tempRowData.value);
195 // if (row.fieldLengthCondition) { 195 // if (row.fieldLengthCondition) {
196 // const arr = row.fieldLengthCondition.split('#'); // 按 '#' 分割 196 // const arr = row.fieldLengthCondition.split('#'); // 按 '#' 分割
...@@ -273,7 +273,6 @@ const saveRow = (row) => { ...@@ -273,7 +273,6 @@ const saveRow = (row) => {
273 } 273 }
274 274
275 if (tableData.value.find((item: any) => item.fieldGuid === row.fieldGuid)) { 275 if (tableData.value.find((item: any) => item.fieldGuid === row.fieldGuid)) {
276 console.log('tempRowData.value')
277 tableData.value.forEach(item => { 276 tableData.value.forEach(item => {
278 if (item.fieldGuid === row.fieldGuid) { 277 if (item.fieldGuid === row.fieldGuid) {
279 item.fieldLengthCondition = fieldLengthCondition 278 item.fieldLengthCondition = fieldLengthCondition
...@@ -284,6 +283,12 @@ const saveRow = (row) => { ...@@ -284,6 +283,12 @@ const saveRow = (row) => {
284 item.notNull = tempRow.notNull 283 item.notNull = tempRow.notNull
285 } 284 }
286 }); 285 });
286 // 更新 tempRowData 中保存的数据
287 const tempRowIndex = tempRowData.value.findIndex((item) => item.fieldGuid === row.fieldGuid);
288 if (tempRowIndex !== -1) {
289 // 更新 tempRowData 为保存后的数据
290 tempRowData.value[tempRowIndex] = { ...row };
291 }
287 } 292 }
288 row.isEdit = false 293 row.isEdit = false
289 } 294 }
...@@ -404,9 +409,20 @@ const cancel = () => { ...@@ -404,9 +409,20 @@ const cancel = () => {
404 // 点击取消 409 // 点击取消
405 const cancelEdit = (row) => { 410 const cancelEdit = (row) => {
406 // console.log('取消编辑:', row, tempRowData.value); 411 // console.log('取消编辑:', row, tempRowData.value);
407 // // 可在此恢复原始数据逻辑,要查找暂存的数据 tempRowData 中 fieldGuid 与当前行的 fieldGuid 相同的数据 412 // 可在此恢复原始数据逻辑,要查找暂存的数据 tempRowData 中 fieldGuid 与当前行的 fieldGuid 相同的数据
408 // const tempRow = tempRowData.value.find((item) => item.fieldGuid === row.fieldGuid); 413 const tempRow = tempRowData.value.find((item) => item.fieldGuid === row.fieldGuid);
409 // Object.assign(row, tempRow); 414
415 // 遍历tableData.value,找到当前行并恢复原始数据
416 tableData.value.forEach((item) => {
417 if (item.fieldGuid === tempRow.fieldGuid) {
418 // 恢复原始数据
419 item.fieldLengthCondition = tempRow.fieldLengthCondition;
420 item.fieldPrecision = tempRow.fieldPrecision;
421 item.isUnique = tempRow.isUnique;
422 item.notNull = tempRow.notNull;
423 item.fieldValueRange = tempRow.fieldValueRange;
424 }
425 });
410 426
411 row.isEdit = false; // 退出编辑状态 427 row.isEdit = false; // 退出编辑状态
412 } 428 }
......
...@@ -23,7 +23,6 @@ import { ...@@ -23,7 +23,6 @@ import {
23 exportDictionary, 23 exportDictionary,
24 showDictionary, 24 showDictionary,
25 getDataBaseList, 25 getDataBaseList,
26 getDataTypeList,
27 getCoderuleList, 26 getCoderuleList,
28 saveDictionaryData, 27 saveDictionaryData,
29 getDictionaryFileds, 28 getDictionaryFileds,
...@@ -608,7 +607,7 @@ const getDataType = (type) => { ...@@ -608,7 +607,7 @@ const getDataType = (type) => {
608 let params = { 607 let params = {
609 paramCode: type 608 paramCode: type
610 } 609 }
611 getDataTypeList(params).then((res: any) => { 610 getParamsList(params).then((res: any) => {
612 if (res.code == proxy.$passCode) { 611 if (res.code == proxy.$passCode) {
613 const data = res.data 612 const data = res.data
614 if (type == 'DATA_TYPE') { 613 if (type == 'DATA_TYPE') {
......
...@@ -12,7 +12,7 @@ import Dialog from "@/components/Dialog/index.vue"; ...@@ -12,7 +12,7 @@ import Dialog from "@/components/Dialog/index.vue";
12 import useUserStore from "@/store/modules/user"; 12 import useUserStore from "@/store/modules/user";
13 import useDataAssetStore from "@/store/modules/dataAsset"; 13 import useDataAssetStore from "@/store/modules/dataAsset";
14 import { onUploadFilePreview, onUploadFileDownload } from '@/api/modules/common'; 14 import { onUploadFilePreview, onUploadFileDownload } from '@/api/modules/common';
15 import { getApproveList, getTenantApprove, registerApproveAllow, registerApproveBackup, getSubjectDoaminList } from "@/api/modules/dataAsset"; 15 import { getApproveList, getTenantApprove, registerApproveAllow, registerApproveBackup, getParamsList } from "@/api/modules/dataAsset";
16 import { getDemandDetail, demandSave, competitionSave, marketSave, demandUpdate, competitionUpdate, marketUpdate, checkDemandName, getParamsDataList, getProductTypeList } from "@/api/modules/dataProduct"; 16 import { getDemandDetail, demandSave, competitionSave, marketSave, demandUpdate, competitionUpdate, marketUpdate, checkDemandName, getParamsDataList, getProductTypeList } from "@/api/modules/dataProduct";
17 import { getMatchDetail } from "@/api/modules/dataFinance"; 17 import { getMatchDetail } from "@/api/modules/dataFinance";
18 import { useValidator } from '@/hooks/useValidator'; 18 import { useValidator } from '@/hooks/useValidator';
...@@ -353,7 +353,7 @@ const algorithmFormItem = ref([ ...@@ -353,7 +353,7 @@ const algorithmFormItem = ref([
353 block: true, 353 block: true,
354 clearable: true, 354 clearable: true,
355 required: true, 355 required: true,
356 }, 356 },
357 // { 357 // {
358 // label: '赛事图片', 358 // label: '赛事图片',
359 // tip: '支持扩展名:.jpg .png .jpeg', 359 // tip: '支持扩展名:.jpg .png .jpeg',
...@@ -431,7 +431,7 @@ const elementFormItems = ref([ ...@@ -431,7 +431,7 @@ const elementFormItems = ref([
431 clearable: true, 431 clearable: true,
432 required: true, 432 required: true,
433 }, 433 },
434 { 434 {
435 label: '产品类别', 435 label: '产品类别',
436 type: 'tree-select', 436 type: 'tree-select',
437 placeholder: '请选择', 437 placeholder: '请选择',
...@@ -464,7 +464,7 @@ const elementFormItems = ref([ ...@@ -464,7 +464,7 @@ const elementFormItems = ref([
464 clearable: true, 464 clearable: true,
465 disabled: false, 465 disabled: false,
466 required: true, 466 required: true,
467 }, 467 },
468 { 468 {
469 label: '产品预算', 469 label: '产品预算',
470 type: 'checkbox-input-item', 470 type: 'checkbox-input-item',
...@@ -860,7 +860,7 @@ const submitForm = (btn, formEl, tosub = false) => { ...@@ -860,7 +860,7 @@ const submitForm = (btn, formEl, tosub = false) => {
860 ElMessage.error(res.msg); 860 ElMessage.error(res.msg);
861 } 861 }
862 }) 862 })
863 } 863 }
864 } 864 }
865 } else { 865 } else {
866 nextTick(() => { 866 nextTick(() => {
...@@ -1112,7 +1112,7 @@ const initMethodByInterfaceType = ref({ ...@@ -1112,7 +1112,7 @@ const initMethodByInterfaceType = ref({
1112 proxy.$ElMessage.error(res.msg); 1112 proxy.$ElMessage.error(res.msg);
1113 } 1113 }
1114 }) 1114 })
1115 getSubjectDoaminList().then((res: any) => { 1115 getParamsList({dictType: 'SUBJECT-DOMAIN'}).then((res: any) => {
1116 if (res.code == proxy.$passCode) { 1116 if (res.code == proxy.$passCode) {
1117 subjectDomainListData.value = res.data || []; 1117 subjectDomainListData.value = res.data || [];
1118 let item = demandFormItems.value.find(item => item.field == 'subjectDomain'); 1118 let item = demandFormItems.value.find(item => item.field == 'subjectDomain');
......
...@@ -15,7 +15,7 @@ import { TableColumnWidth } from '@/utils/enum'; ...@@ -15,7 +15,7 @@ import { TableColumnWidth } from '@/utils/enum';
15 import TableTools from "@/components/Tools/table_tools.vue"; 15 import TableTools from "@/components/Tools/table_tools.vue";
16 import Table from "@/components/Table/index.vue"; 16 import Table from "@/components/Table/index.vue";
17 import Dialog from "@/components/Dialog/index.vue"; 17 import Dialog from "@/components/Dialog/index.vue";
18 import { getDamTypesList } from "@/api/modules/dataAsset"; 18 import { getParamsList } from "@/api/modules/dataAsset";
19 import { 19 import {
20 changeNum, 20 changeNum,
21 } from "@/utils/common"; 21 } from "@/utils/common";
...@@ -299,7 +299,7 @@ onBeforeMount(() => { ...@@ -299,7 +299,7 @@ onBeforeMount(() => {
299 // proxy.$ElMessage.error(res.msg); 299 // proxy.$ElMessage.error(res.msg);
300 // } 300 // }
301 // }) 301 // })
302 getDamTypesList({ 302 getParamsList({
303 dictType: "资产类型", 303 dictType: "资产类型",
304 }).then((res: any) => { 304 }).then((res: any) => {
305 if (res.code == proxy.$passCode) { 305 if (res.code == proxy.$passCode) {
......
...@@ -14,7 +14,7 @@ import useDataAssetStore from "@/store/modules/dataAsset"; ...@@ -14,7 +14,7 @@ import useDataAssetStore from "@/store/modules/dataAsset";
14 import { changeNum } from '@/utils/common'; 14 import { changeNum } from '@/utils/common';
15 import { onUploadFilePreview, onUploadFileDownload } from '@/api/modules/common'; 15 import { onUploadFilePreview, onUploadFileDownload } from '@/api/modules/common';
16 import { getAreaData, getServiceTenants } from "@/api/modules/queryService"; 16 import { getAreaData, getServiceTenants } from "@/api/modules/queryService";
17 import { getApproveList, getTenantApprove, registerApproveAllow, registerApproveBackup, getSubjectDoaminList, getServiceDetail } from "@/api/modules/dataAsset"; 17 import { getApproveList, getTenantApprove, registerApproveAllow, registerApproveBackup, getParamsList, getServiceDetail } from "@/api/modules/dataAsset";
18 import { getProductList, getAddedProductList, getListingDetail, listingSave, listingUpdate, listingSavePortal, getParamsDataList } from "@/api/modules/dataProduct"; 18 import { getProductList, getAddedProductList, getListingDetail, listingSave, listingUpdate, listingSavePortal, getParamsDataList } from "@/api/modules/dataProduct";
19 import { getMatchDetail } from "@/api/modules/dataFinance"; 19 import { getMatchDetail } from "@/api/modules/dataFinance";
20 import { useValidator } from '@/hooks/useValidator'; 20 import { useValidator } from '@/hooks/useValidator';
...@@ -1191,7 +1191,7 @@ onBeforeMount(() => { ...@@ -1191,7 +1191,7 @@ onBeforeMount(() => {
1191 // ElMessage.error(res.msg); 1191 // ElMessage.error(res.msg);
1192 // } 1192 // }
1193 // }); 1193 // });
1194 getSubjectDoaminList({ 1194 getParamsList({
1195 dictType: "数据资产目录主题名称", 1195 dictType: "数据资产目录主题名称",
1196 }).then((res: any) => { 1196 }).then((res: any) => {
1197 if (res.code == proxy.$passCode) { 1197 if (res.code == proxy.$passCode) {
......
...@@ -328,6 +328,20 @@ onBeforeMount(() => { ...@@ -328,6 +328,20 @@ onBeforeMount(() => {
328 }); 328 });
329 329
330 onActivated(() => { 330 onActivated(() => {
331 let tab: any = userStore.tabbar.find((tab: any) => tab.fullPath === fullPath);
332 if (tab) {
333 if (route.query.detail) {
334 tab.meta.title = `新建规则(${route.query.planName})`;
335 if (fullPath === route.fullPath) {
336 document.title = tab.meta.title;
337 }
338 } else if (route.query.planName) {
339 tab.meta.title = `方案编辑-${route.query.planName}`;
340 if (fullPath === route.fullPath) {
341 document.title = tab.meta.title;
342 }
343 }
344 }
331 if (modelGuid.value || groupGuid.value) { 345 if (modelGuid.value || groupGuid.value) {
332 return; 346 return;
333 } 347 }
...@@ -1524,10 +1538,10 @@ const batchFiltersValueChange = (value) => { ...@@ -1524,10 +1538,10 @@ const batchFiltersValueChange = (value) => {
1524 destroy-on-close align-center> 1538 destroy-on-close align-center>
1525 <div style="height:450px"> 1539 <div style="height:450px">
1526 <TreeTransfer :readOnly="isDetail" mode="transfer" :title="['可选表', '已选表']" :defaultProps="{ 1540 <TreeTransfer :readOnly="isDetail" mode="transfer" :title="['可选表', '已选表']" :defaultProps="{
1527 label: 'name', 1541 label: 'name',
1528 value: 'guid', 1542 value: 'guid',
1529 isLeaf: 'isLeaf' 1543 isLeaf: 'isLeaf'
1530 }" :from-tree-data-loading="dsFromTreeDataLoading" :from_data="dsFromTreeData" :to_data="dsToTreeData" 1544 }" :from-tree-data-loading="dsFromTreeDataLoading" :from_data="dsFromTreeData" :to_data="dsToTreeData"
1531 checkOnClickNode :from_checked_all="false" node_key="guid" :transferOpenNode="true" width="100%" 1545 checkOnClickNode :from_checked_all="false" node_key="guid" :transferOpenNode="true" width="100%"
1532 @left-check-change="handleModelLeftCheckChange" lazy :lazyFn="loadNode" height="100%"> 1546 @left-check-change="handleModelLeftCheckChange" lazy :lazyFn="loadNode" height="100%">
1533 <template v-slot:from> 1547 <template v-slot:from>
...@@ -1550,9 +1564,9 @@ const batchFiltersValueChange = (value) => { ...@@ -1550,9 +1564,9 @@ const batchFiltersValueChange = (value) => {
1550 :close-on-click-modal="false" destroy-on-close align-center> 1564 :close-on-click-modal="false" destroy-on-close align-center>
1551 <div style="height:450px"> 1565 <div style="height:450px">
1552 <TreeTransferChecked class="one-level" mode="transfer" :title="['可选表', '已选表']" :defaultProps="{ 1566 <TreeTransferChecked class="one-level" mode="transfer" :title="['可选表', '已选表']" :defaultProps="{
1553 label: 'name', 1567 label: 'name',
1554 value: 'guid' 1568 value: 'guid'
1555 }" :from-tree-data-loading="dsByGroupFromTreeDataLoading" :from_data="dsByGroupFromTreeData" checkOnClickNode 1569 }" :from-tree-data-loading="dsByGroupFromTreeDataLoading" :from_data="dsByGroupFromTreeData" checkOnClickNode
1556 :to_data="dsByGroupToTreeData" node_key="guid" :transferOpenNode="true" width="100%" 1570 :to_data="dsByGroupToTreeData" node_key="guid" :transferOpenNode="true" width="100%"
1557 :defaultCheckedKeys="dsByGroupToTreeData.map(d => d.guid)" :rootPidValue="''" 1571 :defaultCheckedKeys="dsByGroupToTreeData.map(d => d.guid)" :rootPidValue="''"
1558 @left-check-changed="handleModelByGroupLeftCheckedChange" height="100%"> 1572 @left-check-changed="handleModelByGroupLeftCheckedChange" height="100%">
......
...@@ -432,10 +432,12 @@ const open = (msg, type, isBatch = false) => { ...@@ -432,10 +432,12 @@ const open = (msg, type, isBatch = false) => {
432 if (res.code == proxy.$passCode) { 432 if (res.code == proxy.$passCode) {
433 page.value.curr = 1; 433 page.value.curr = 1;
434 getTableData(); 434 getTableData();
435 // let node = qualityModelTreeRef.value.treeRef.store.nodesMap[currTableData.value.modelGroupGuid];
436 // node.loaded = false;
437 // node.expand();
438 getQualityGroupTreeData(); 435 getQualityGroupTreeData();
436 nextTick(() => {
437 let node = qualityModelTreeRef.value.treeRef.store.nodesMap[currTableData.value.modelGroupGuid];
438 node.loaded = false;
439 node.expand();
440 })
439 ElMessage.success('删除成功'); 441 ElMessage.success('删除成功');
440 } else { 442 } else {
441 ElMessage.error(res.msg); 443 ElMessage.error(res.msg);
...@@ -599,7 +601,7 @@ const ruleTableBtnClick = (scope, btn) => { ...@@ -599,7 +601,7 @@ const ruleTableBtnClick = (scope, btn) => {
599 } 601 }
600 }); 602 });
601 } else if (type == "delete") { 603 } else if (type == "delete") {
602 ruleOpen("此操作将永久删除该质检, 是否继续?", "warning"); 604 ruleOpen("此操作将永久删除该质检规则, 是否继续?", "warning");
603 } 605 }
604 }; 606 };
605 607
...@@ -613,11 +615,10 @@ const ruleOpen = (msg, type, isBatch = false) => { ...@@ -613,11 +615,10 @@ const ruleOpen = (msg, type, isBatch = false) => {
613 deleteQualityTableRule(guids).then((res: any) => { 615 deleteQualityTableRule(guids).then((res: any) => {
614 if (res.code == proxy.$passCode) { 616 if (res.code == proxy.$passCode) {
615 getRuleTableData(); 617 getRuleTableData();
616 // let node = qualityModelTreeRef.value.treeRef.store.nodesMap[lastSelectNode.value.data.guid]; 618 let node = qualityModelTreeRef.value.treeRef.store.nodesMap[lastSelectNode.value.data.guid];
617 // node.loaded = false; 619 node.loaded = false;
618 // node.expand(); 620 node.expand();
619 getQualityGroupTreeData(); 621 ElMessage.success('删除质检规则成功');
620 ElMessage.success('删除质检表成功');
621 } else { 622 } else {
622 ElMessage.error(res.msg); 623 ElMessage.error(res.msg);
623 } 624 }
...@@ -883,9 +884,11 @@ onActivated(async () => { ...@@ -883,9 +884,11 @@ onActivated(async () => {
883 if (lastSelectNode.value && lastSelectNode.value.data.guid == dataQualityStore.modelGroupGuid) { 884 if (lastSelectNode.value && lastSelectNode.value.data.guid == dataQualityStore.modelGroupGuid) {
884 getTableData(); 885 getTableData();
885 } 886 }
886 // let node = qualityModelTreeRef.value.treeRef.store.nodesMap[dataQualityStore.modelGroupGuid];
887 // node.expand();
888 getQualityGroupTreeData(); 887 getQualityGroupTreeData();
888 nextTick(() => {
889 let node = qualityModelTreeRef.value.treeRef.store.nodesMap[dataQualityStore.modelGroupGuid];
890 node.expand();
891 })
889 dataQualityStore.set(null); 892 dataQualityStore.set(null);
890 } 893 }
891 } 894 }
...@@ -921,7 +924,7 @@ onBeforeMount(() => { ...@@ -921,7 +924,7 @@ onBeforeMount(() => {
921 d.label = d.ruleName; 924 d.label = d.ruleName;
922 d.value = d.ruleCode; 925 d.value = d.ruleCode;
923 return d; 926 return d;
924 }) || []; 927 })?.filter(d => d.ruleCode != 'rows_check' && d.ruleCode != 'volatility_check') || [];
925 searchItemList.value[2].options = ruleTypeList.value; 928 searchItemList.value[2].options = ruleTypeList.value;
926 } else { 929 } else {
927 ElMessage.error(res.msg); 930 ElMessage.error(res.msg);
......
...@@ -158,7 +158,7 @@ onBeforeMount(() => { ...@@ -158,7 +158,7 @@ onBeforeMount(() => {
158 d.label = d.ruleName; 158 d.label = d.ruleName;
159 d.value = d.ruleCode; 159 d.value = d.ruleCode;
160 return d; 160 return d;
161 }) || []; 161 })?.filter(d => d.ruleCode != 'rows_check' && d.ruleCode != 'volatility_check') || [];
162 } else { 162 } else {
163 ElMessage.error(res.msg); 163 ElMessage.error(res.msg);
164 } 164 }
......
...@@ -241,7 +241,7 @@ onBeforeMount(() => { ...@@ -241,7 +241,7 @@ onBeforeMount(() => {
241 d.label = d.ruleName; 241 d.label = d.ruleName;
242 d.value = d.ruleCode; 242 d.value = d.ruleCode;
243 return d; 243 return d;
244 }) || []; 244 })?.filter(d => d.ruleCode != 'rows_check' && d.ruleCode != 'volatility_check') || [];
245 } else { 245 } else {
246 ElMessage.error(res.msg); 246 ElMessage.error(res.msg);
247 } 247 }
...@@ -262,6 +262,16 @@ onBeforeMount(() => { ...@@ -262,6 +262,16 @@ onBeforeMount(() => {
262 }) 262 })
263 }) 263 })
264 264
265 onActivated(() => {
266 let tab: any = userStore.tabbar.find((tab: any) => tab.fullPath === fullPath);
267 if (tab && detailInfo.value?.ruleConfName) {
268 tab.meta.title = `编辑-${detailInfo.value.ruleConfName}(${detailInfo.value.subjectZhName})`
269 if (fullPath === route.fullPath) {
270 document.title = tab.meta.title;
271 }
272 }
273 });
274
265 </script> 275 </script>
266 276
267 <template> 277 <template>
......
...@@ -248,7 +248,7 @@ onBeforeMount(() => { ...@@ -248,7 +248,7 @@ onBeforeMount(() => {
248 d.label = d.ruleName; 248 d.label = d.ruleName;
249 d.value = d.ruleCode; 249 d.value = d.ruleCode;
250 return d; 250 return d;
251 }) || []; 251 })?.filter(d => d.ruleCode != 'rows_check' && d.ruleCode != 'volatility_check') || []; //先隐藏掉表行数检查和表行数波动率
252 } else { 252 } else {
253 ElMessage.error(res.msg); 253 ElMessage.error(res.msg);
254 } 254 }
...@@ -269,6 +269,16 @@ onBeforeMount(() => { ...@@ -269,6 +269,16 @@ onBeforeMount(() => {
269 }) 269 })
270 }) 270 })
271 271
272 onActivated(() => {
273 let tab: any = userStore.tabbar.find((tab: any) => tab.fullPath === fullPath);
274 if (tab && route.query.name) {
275 tab.meta.title = `新建规则(${route.query.name})`;
276 if (fullPath === route.fullPath) {
277 document.title = tab.meta.title;
278 }
279 }
280 });
281
272 const cancel = () => { 282 const cancel = () => {
273 ElMessageBox.confirm( 283 ElMessageBox.confirm(
274 "当前页面尚未保存,确定放弃修改吗?", 284 "当前页面尚未保存,确定放弃修改吗?",
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!