@utogether/udp-core 1.0.1-beta.15 → 1.0.1-beta.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/build/plugins.ts +39 -39
  2. package/dist/{403-DpJevH-h.js → 403-C3cfjZIT.js} +1 -1
  3. package/dist/{404-BpqJK3YD.js → 404-Bg3j7QIo.js} +1 -1
  4. package/dist/{500-DyvRbMD_.js → 500-CMT7Zyy7.js} +1 -1
  5. package/dist/{AuthorityInfo-Cyu4XHXx.js → AuthorityInfo-B1mvqs4x.js} +1 -1
  6. package/dist/{AuthorityInfo.vue_vue_type_style_index_0_lang-BxmnEEFq.js → AuthorityInfo.vue_vue_type_style_index_0_lang-DwoW7QWO.js} +3 -3
  7. package/dist/{Company-BLygcYrI.js → Company-qTguidK8.js} +3 -3
  8. package/dist/{CompanyPanel-D5Tgw6LF.js → CompanyPanel-BBC-o-k3.js} +17 -17
  9. package/dist/{Department-qI9OninZ.js → Department-C3mKZOnK.js} +3 -3
  10. package/dist/{DepartmentPanel-P-P8fPZQ.js → DepartmentPanel-CNdpOHBT.js} +25 -25
  11. package/dist/{DesignPanel-BxjD0AZi.js → DesignPanel-D9jrRCoG.js} +1 -1
  12. package/dist/{DesignPanel.vue_vue_type_style_index_0_lang-DN_OKxCu.js → DesignPanel.vue_vue_type_style_index_0_lang-A-Aj1Hl0.js} +6 -6
  13. package/dist/{DictView-PWL_Vf0T.js → DictView-CgdVkSiP.js} +15 -16
  14. package/dist/{InvOrganization-JXBXyn3G.js → InvOrganization-RE7s3vBq.js} +1 -1
  15. package/dist/{Org-DcTJn6YQ.js → Org-wXDGvTrS.js} +3 -3
  16. package/dist/{Preview-IKvbHI8a.js → Preview-Pvt1__BV.js} +1 -1
  17. package/dist/{ReportDefine-_G7ts7Ch.js → ReportDefine-xEQsgFyv.js} +1 -1
  18. package/dist/{ReportDesign-7h5oFklh.js → ReportDesign-jOSuEFH9.js} +9 -9
  19. package/dist/{ReportQuery-dj0BQUyi.js → ReportQuery-DxEmmGiN.js} +1 -1
  20. package/dist/{ReportQueryFrom-6WaZPg9i.js → ReportQueryFrom-CFlxfS5M.js} +1 -1
  21. package/dist/{ReportQueryFrom.vue_vue_type_style_index_0_lang-ChhcBPqa.js → ReportQueryFrom.vue_vue_type_style_index_0_lang-iHpiYz8f.js} +1 -1
  22. package/dist/{ReportTemplate-DIvJ3RrB.js → ReportTemplate-Dtz3aet7.js} +11 -11
  23. package/dist/{Role-ia_3qAZU.js → Role-B_NsHIyE.js} +3 -3
  24. package/dist/{RoleAssign-D0zVl4y3.js → RoleAssign-C9wm4zq4.js} +8 -8
  25. package/dist/{RolePanel-CQxOiAzj.js → RolePanel-BlHidBR0.js} +1 -1
  26. package/dist/{RolePanel-BiGGmP2w.js → RolePanel-DWM9mfNs.js} +1 -1
  27. package/dist/{RolePanel.vue_vue_type_script_setup_true_lang-BYDLRS_x.js → RolePanel.vue_vue_type_script_setup_true_lang-Cn4RRzXm.js} +1 -1
  28. package/dist/{RolePanel.vue_vue_type_script_setup_true_lang-Dwv5LFbf.js → RolePanel.vue_vue_type_script_setup_true_lang-DVQ9aqb1.js} +9 -9
  29. package/dist/{ScrollPanel.vue_vue_type_style_index_0_lang-gPP4duO8.js → ScrollPanel.vue_vue_type_style_index_0_lang-CCm-_i8O.js} +8 -8
  30. package/dist/{Staff-Bf_oUqF6.js → Staff-BfDc61QS.js} +3 -3
  31. package/dist/{StaffInfo-D5aisjx2.js → StaffInfo-BaJFo4mg.js} +1 -1
  32. package/dist/{StaffInfo.vue_vue_type_script_setup_true_lang-6PX7Bx6A.js → StaffInfo.vue_vue_type_script_setup_true_lang-Bwj4x1wu.js} +7 -7
  33. package/dist/{StaffPanel--zKzd4rt.js → StaffPanel-B6I2ZS6A.js} +1 -1
  34. package/dist/{StaffPanel.vue_vue_type_script_setup_true_lang-BWZSIFpq.js → StaffPanel.vue_vue_type_script_setup_true_lang-vbyS4w3V.js} +2 -2
  35. package/dist/{SysUser-BelbESLR.js → SysUser-B_r9LYc5.js} +2 -2
  36. package/dist/{SysUserPanel-BixKqQcA.js → SysUserPanel-C4ajcHPV.js} +1 -1
  37. package/dist/{SysUserPanel.vue_vue_type_script_setup_true_lang-BhaWZEfo.js → SysUserPanel.vue_vue_type_script_setup_true_lang-8Q0VvC9B.js} +41 -37
  38. package/dist/{SystemMenu-D40tzcSj.js → SystemMenu-CyPG23uP.js} +10 -10
  39. package/dist/{UserInfo-DTyk071j.js → UserInfo-BkoGt4ib.js} +1 -1
  40. package/dist/{UserInfo.vue_vue_type_style_index_0_lang-p9MByikC.js → UserInfo.vue_vue_type_style_index_0_lang-DrzF1YYG.js} +10 -10
  41. package/dist/{childView-so5qSxr0.js → childView-9vEO8ymO.js} +1 -1
  42. package/dist/{childView-xL3iE1yN.js → childView-Dh0NyiQe.js} +1 -1
  43. package/dist/{childView.vue_vue_type_style_index_0_lang-CKcXpSqa.js → childView.vue_vue_type_style_index_0_lang-BOeoZuAK.js} +7 -7
  44. package/dist/{childView.vue_vue_type_style_index_0_lang-DK1ei5uM.js → childView.vue_vue_type_style_index_0_lang-CMOjfXBX.js} +1 -1
  45. package/dist/{code-rule-DC35y76w.js → code-rule-C7jI_1gJ.js} +6 -6
  46. package/dist/core.es.js +17 -12
  47. package/dist/{cron-task-BhjQ4S68.js → cron-task-Dg9DJXvv.js} +11 -11
  48. package/dist/{frameView-G_zhG9pf.js → frameView-CeR-_hjB.js} +1 -1
  49. package/dist/{index-C6ehxLLO.js → index-Bb7gIEvu.js} +739 -496
  50. package/dist/{layoutView-CO2U8qCQ.js → layoutView-wsLHrEeX.js} +1347 -1346
  51. package/dist/login-CluzzdqH.js +249 -0
  52. package/dist/{lov-view-Cr929NMD.js → lov-view-BvQCvwbW.js} +5 -5
  53. package/dist/{menuInfo-BWuROp7u.js → menuInfo-B8RLelIC.js} +1 -1
  54. package/dist/{menuInfo.vue_vue_type_style_index_0_lang-9nouHUjO.js → menuInfo.vue_vue_type_style_index_0_lang-DvkapEZr.js} +7 -7
  55. package/dist/{pda-app-CQP1sMAI.js → pda-app-D3LNmD9a.js} +19 -19
  56. package/dist/{resource-BDQLrMpK.js → resource-D8JA_03-.js} +7 -7
  57. package/dist/{su-welcome-CZysrZQ1.js → su-welcome-BjxeEKSo.js} +88 -88
  58. package/dist/{sys-config-BiGNMYSA.js → sys-config-sbeLk9bP.js} +6 -6
  59. package/dist/udp-core.css +1 -9
  60. package/dist/utogether-MlnyYtNS.js +4 -0
  61. package/index.ts +48 -40
  62. package/package.json +1 -1
  63. package/src/App.vue +65 -65
  64. package/src/components/SuCharts/src/UserInfo.vue +78 -78
  65. package/src/components/SuScrollTree/ScrollPanel.vue +170 -175
  66. package/src/components/udp/{grid.vue → grid/index.vue} +27 -24
  67. package/src/components/udp/index.ts +2 -9
  68. package/src/components/udp/utils.ts +60 -107
  69. package/src/layout/components/lay-navbar/index.vue +239 -239
  70. package/src/layout/components/lay-panel/index.vue +150 -150
  71. package/src/layout/components/lay-search/index.vue +25 -25
  72. package/src/layout/components/lay-select-org/index.vue +64 -64
  73. package/src/layout/components/lay-sidebar/horizontal.vue +190 -190
  74. package/src/layout/components/lay-sidebar/mixNav.vue +260 -260
  75. package/src/layout/components/lay-sidebar/sidebar-logo.vue +92 -92
  76. package/src/layout/components/lay-tag/index.vue +20 -48
  77. package/src/layout/hooks/useNav.ts +173 -173
  78. package/src/layout/hooks/useTag.ts +223 -233
  79. package/src/layout/types.ts +3 -2
  80. package/src/main.ts +117 -113
  81. package/src/plugins/i18n/en.ts +302 -302
  82. package/src/plugins/i18n/zh.ts +356 -354
  83. package/src/plugins/vxe-table/index.ts +116 -53
  84. package/src/plugins/vxe-table/render.tsx +956 -956
  85. package/src/router/index.ts +186 -177
  86. package/src/router/modules/remaining.ts +58 -58
  87. package/src/router/utils.ts +393 -377
  88. package/src/store/modules/app.ts +1 -3
  89. package/src/store/modules/multiTags.ts +110 -109
  90. package/src/store/modules/permission.ts +113 -100
  91. package/src/style/button.scss +85 -85
  92. package/src/style/login.css +1 -1
  93. package/src/style/vxetable.scss +25 -2
  94. package/src/utils/index.ts +3 -1
  95. package/src/views/organization/company/CompanyPanel.vue +259 -259
  96. package/src/views/organization/department/DepartmentPanel.vue +269 -283
  97. package/src/views/system/menu/SystemMenu.vue +183 -183
  98. package/src/views/system/menu/menuInfo.vue +363 -363
  99. package/src/views/system/role/UserInfo.vue +195 -195
  100. package/src/views/system/role-assign/RoleAssign.vue +57 -57
  101. package/src/views/system/role-assign/RolePanel.vue +139 -139
  102. package/src/views/system/sys/sys-config.vue +336 -336
  103. package/src/views/system/sysUser/SysUserPanel.vue +279 -278
  104. package/src/views/uapp/pda/pda-app.vue +208 -208
  105. package/src/views/udev/dict/DictView.vue +118 -118
  106. package/src/views/udev/dict/childView.vue +1 -1
  107. package/src/views/udev/lov/lov-view.vue +91 -91
  108. package/src/views/ulogin/login.vue +2 -2
  109. package/src/views/upms/interface/log-out.vue +101 -101
  110. package/src/views/urpt/design/DesignPanel.vue +507 -507
  111. package/types/global.d.ts +2 -8
  112. package/dist/login-DzyK2soP.js +0 -278
  113. package/dist/utogether-BRirriOz.js +0 -182
  114. package/src/components/udp/count-down.vue +0 -536
  115. package/src/components/udp/flip-down/FlipCard/flip-card.vue +0 -251
  116. package/src/components/udp/flip-down/FlipCard/interfaces.ts +0 -4
  117. package/src/components/udp/flip-down/FlipClock/flip-clock.vue +0 -113
  118. package/src/components/udp/form-upload.vue +0 -482
  119. package/src/components/udp/form.vue +0 -112
  120. package/src/components/udp/lov.vue +0 -388
  121. package/src/components/udp/modal-form.vue +0 -190
  122. package/src/components/udp/modal-grid.vue +0 -298
  123. package/src/components/udp/upload.vue +0 -423
  124. package/src/utils/udp/http/index.ts +0 -294
  125. package/src/utils/udp/http/types.d.ts +0 -49
  126. package/src/utils/udp/useRender.ts +0 -431
@@ -1,91 +1,91 @@
1
- <!--
2
- * @Author: wei.li
3
- * @Date: 2022-08-10 09:10:39
4
- * @LastEditors: levi7754 levi7754@163.com
5
- * @LastEditTime: 2025-04-08 15:31:20
6
- * @Description: 值集视图
7
- -->
8
- <template>
9
- <div>
10
- <ut-grid ref="xgrid" :items="formItems" :columns="columns" :url="url" :events="onEvents" />
11
- <child-view v-if="shouDrawer" :show="shouDrawer" :record="record" @onClose="handleClose" />
12
- </div>
13
- </template>
14
-
15
- <script setup lang="tsx">
16
- import { ref, nextTick } from 'vue';
17
- // import { VxeGridInstance } from 'vxe-table';
18
- import to from 'await-to-js';
19
- import { getServiceApi } from '../../../api';
20
- import childView from './childView.vue';
21
- import { useRender } from '@utogether/utils';
22
-
23
- defineOptions({ name: 'LovView' });
24
-
25
- const xgrid = ref(null);
26
-
27
- const formItems = [{ field: 'lovCode' }, { field: 'lovName' }];
28
-
29
- const renderHook = useRender();
30
-
31
- const url = '/upfm/v1/lovViewHeader';
32
-
33
- // 列字段
34
- const columns = [
35
- { type: 'checkbox', width: 50, align: 'center' },
36
- {
37
- field: 'lovCode',
38
- required: true,
39
- editRender: renderHook.renderInput()
40
- },
41
- { field: 'lovName', required: true, editRender: renderHook.renderInput() },
42
- { field: 'valueField', required: true, editRender: renderHook.renderInput() },
43
- { field: 'lovTitle', editRender: renderHook.renderInput() },
44
- {
45
- field: 'lovType',
46
- editRender: renderHook.renderDict('SU.LOV.TYPE'),
47
- required: true,
48
- formatter: ['formatDict', 'SU.LOV.TYPE']
49
- },
50
- { field: 'remarks', title: 'message.remark', editRender: renderHook.renderInput() },
51
- { field: 'enabled', width: 80, cellRender: renderHook.renderEnabled(handleClick) },
52
- {
53
- field: 'operate',
54
- width: 100,
55
- fixed: 'right',
56
- slots: {
57
- default: ({ row }) => {
58
- if (!row.id) return null;
59
- return [<ut-button content="config" icon="ri-edit-box-line" onTap={() => hanldeDipose(row)} />];
60
- }
61
- }
62
- }
63
- ];
64
-
65
- const shouDrawer = ref(false);
66
- const record = ref(null);
67
- const hanldeDipose = row => {
68
- nextTick(() => {
69
- shouDrawer.value = true;
70
- record.value = row;
71
- // record.value.total = row.children.length;
72
- });
73
- };
74
- const handleClose = () => {
75
- xgrid.value.refreshData();
76
- shouDrawer.value = false;
77
- };
78
-
79
- // 启用/禁用
80
- async function handleClick(row) {
81
- const [err] = await to(getServiceApi().put(url, [row]));
82
- !err && xgrid.value.refreshData();
83
- }
84
-
85
- const onEvents = {
86
- editActived({ row }) {
87
- columns[1].editRender.props.disabled = !!row.id;
88
- xgrid.value.refreshColumn();
89
- }
90
- };
91
- </script>
1
+ <!--
2
+ * @Author: wei.li
3
+ * @Date: 2022-08-10 09:10:39
4
+ * @LastEditors: levi7754 levi7754@163.com
5
+ * @LastEditTime: 2025-04-08 15:31:20
6
+ * @Description: 值集视图
7
+ -->
8
+ <template>
9
+ <div>
10
+ <ut-grid ref="xgrid" :items="formItems" :columns="columns" :url="url" :events="onEvents" />
11
+ <child-view v-if="shouDrawer" :show="shouDrawer" :record="record" @onClose="handleClose" />
12
+ </div>
13
+ </template>
14
+
15
+ <script setup lang="tsx">
16
+ import { ref, nextTick } from 'vue';
17
+ // import { VxeGridInstance } from 'vxe-table';
18
+ import to from 'await-to-js';
19
+ import { getServiceApi } from '../../../api';
20
+ import childView from './childView.vue';
21
+ import { useRender } from '@utogether/utils';
22
+
23
+ defineOptions({ name: 'LovView' });
24
+
25
+ const xgrid = ref(null);
26
+
27
+ const formItems = [{ field: 'lovCode' }, { field: 'lovName' }];
28
+
29
+ const renderHook = useRender();
30
+
31
+ const url = '/upfm/v1/lovViewHeader';
32
+
33
+ // 列字段
34
+ const columns = [
35
+ { type: 'checkbox', width: 50, align: 'center' },
36
+ {
37
+ field: 'lovCode',
38
+ required: true,
39
+ editRender: renderHook.renderInput()
40
+ },
41
+ { field: 'lovName', required: true, editRender: renderHook.renderInput() },
42
+ { field: 'valueField', required: true, editRender: renderHook.renderInput() },
43
+ { field: 'lovTitle', editRender: renderHook.renderInput() },
44
+ {
45
+ field: 'lovType',
46
+ editRender: renderHook.renderDict('SU.LOV.TYPE'),
47
+ required: true,
48
+ formatter: ['formatDict', 'SU.LOV.TYPE']
49
+ },
50
+ { field: 'remarks', title: 'message.remark', editRender: renderHook.renderInput() },
51
+ { field: 'enabled', width: 80, cellRender: renderHook.renderEnabled(handleClick) },
52
+ {
53
+ field: 'operate',
54
+ width: 100,
55
+ fixed: 'right',
56
+ slots: {
57
+ default: ({ row }) => {
58
+ if (!row.id) return null;
59
+ return [<ut-button content="config" icon="ri-edit-box-line" onTap={() => hanldeDipose(row)} />];
60
+ }
61
+ }
62
+ }
63
+ ];
64
+
65
+ const shouDrawer = ref(false);
66
+ const record = ref(null);
67
+ const hanldeDipose = row => {
68
+ nextTick(() => {
69
+ shouDrawer.value = true;
70
+ record.value = row;
71
+ // record.value.total = row.children.length;
72
+ });
73
+ };
74
+ const handleClose = () => {
75
+ xgrid.value.refreshData();
76
+ shouDrawer.value = false;
77
+ };
78
+
79
+ // 启用/禁用
80
+ async function handleClick(row) {
81
+ const [err] = await to(getServiceApi().put(url, [row]));
82
+ !err && xgrid.value.refreshData();
83
+ }
84
+
85
+ const onEvents = {
86
+ editActived({ row }) {
87
+ columns[1].editRender.props.disabled = !!row.id;
88
+ xgrid.value.refreshColumn();
89
+ }
90
+ };
91
+ </script>
@@ -2,7 +2,6 @@
2
2
  <!-- <img :src="bg" class="wave" /> -->
3
3
  <div :key="refreshKey" class="login-container" :style="bgStyle">
4
4
  <div v-if="!bgStyle.backgroundImage" class="img pr-24">
5
- <!-- <bg /> -->
6
5
  <img :src="welcome" />
7
6
  </div>
8
7
  <div class="login-box">
@@ -299,7 +298,8 @@ const getSysConfig = async () => {
299
298
  config['title'] = title || 'U-DP';
300
299
  sysConfig.value = config;
301
300
  bgStyle.value = {
302
- backgroundImage: config['backgroundImg'] ? `url(${config['backgroundImg']})` : '',
301
+ backgroundImage: config['backgroundImg'] ? `url(${config['backgroundImg']})` : ``,
302
+ // backgroundImage: config['backgroundImg'] ? `url(${config['backgroundImg']})` : `url1(${welcome})`,
303
303
  backgroundRepeat: 'no-repeat',
304
304
  backgroundPosition: 'center'
305
305
  };
@@ -1,101 +1,101 @@
1
- <!--
2
- * @Author: wei.li
3
- * @Date: 2021-12-23 11:22:51
4
- * @LastEditors: levi7754 levi7754@163.com
5
- * @LastEditTime: 2025-04-08 15:36:36
6
- * @Description: 出站接口日志
7
- -->
8
-
9
- <template>
10
- <div>
11
- <ut-grid ref="SuGridRef" :items="formItems" :columns="columns" url="/upms/v1/invokeOutbound" :editable="false" />
12
-
13
- <ut-modal-form
14
- v-if="data.showModal"
15
- ref="suModalRef"
16
- :record="data.record"
17
- :items="items"
18
- :width="640"
19
- :height="480"
20
- :title="data.title"
21
- @close="data.showModal = false"
22
- />
23
- </div>
24
- </template>
25
- <script lang="tsx">
26
- export default {
27
- name: 'LogoutLog'
28
- };
29
- </script>
30
- <script setup lang="tsx">
31
- import { ref, reactive } from 'vue';
32
- // import { useRouter } from 'vue-router';
33
- // import to from 'await-to-js';
34
- // import { clone } from 'xe-utils';
35
- import { useRender } from '@utogether/utils';
36
-
37
- const renderHook = useRender();
38
- // const renderOption = renderOptions();
39
-
40
- // const router = useRouter();
41
-
42
- const data = reactive({
43
- showModal: false,
44
- record: {},
45
- title: ''
46
- });
47
-
48
- const formItems = [
49
- { field: 'interfaceName' },
50
- { field: 'interfaceUrl' },
51
- { field: 'requestParameter' },
52
- { field: 'responseContent' },
53
- // { field: 'ip', },
54
- { field: 'requestDate', itemRender: { name: '#SuDateRange', props: { type: 'daterange' } } },
55
- { field: 'requestStatus', itemRender: renderHook.renderDict('SU.REQUEST.STATUS') }
56
- ];
57
-
58
- const items = [
59
- { field: 'requestParameter', itemRender: { name: '$textarea', props: { rows: 5 } } },
60
- {
61
- field: 'responseContent',
62
- itemRender: { name: '$textarea', props: { rows: 10 } }
63
- },
64
- { field: 'stacktrace', itemRender: { name: '$textarea', props: { rows: 3 } } }
65
- ];
66
-
67
- const SuGridRef = ref(null);
68
- // 列字段
69
- const columns = [
70
- { field: 'interfaceName', minWidth: 120 },
71
- { field: 'interfaceUrl', minWidth: 150 },
72
- // { field: 'ip', width: 120 },
73
- { field: 'requestDate', width: 160 },
74
- { field: 'responseTimeConsume', width: 120 },
75
- { field: 'requestStatus', width: 90, formatter: ['formatDict', 'SU.REQUEST.STATUS'] },
76
- {
77
- field: 'operate',
78
- width: 70,
79
- slots: {
80
- default: ({ row }) => {
81
- if (!row.id) return null;
82
- return [
83
- <>
84
- <ut-button content="detail" icon="ri-eye-line ri-1x" onTap={() => handleShowDetail(row)} />
85
- </>
86
- ];
87
- }
88
- }
89
- }
90
- ];
91
- // 详情
92
- const handleShowDetail = record => {
93
- // const resContent = JSON.parse(record.responseContent);
94
- // console.log(resContent);
95
- // record.resContent = resContent?.data?.list || resContent?.data;
96
- // record.resContent = record.resContent ? JSON.stringify(record.resContent) : '';
97
- data.record = record;
98
- data.showModal = true;
99
- data.title = `【${record.interfaceName}】接口明细`;
100
- };
101
- </script>
1
+ <!--
2
+ * @Author: wei.li
3
+ * @Date: 2021-12-23 11:22:51
4
+ * @LastEditors: levi7754 levi7754@163.com
5
+ * @LastEditTime: 2025-04-08 15:36:36
6
+ * @Description: 出站接口日志
7
+ -->
8
+
9
+ <template>
10
+ <div>
11
+ <ut-grid ref="SuGridRef" :items="formItems" :columns="columns" url="/upms/v1/invokeOutbound" :editable="false" />
12
+
13
+ <ut-modal-form
14
+ v-if="data.showModal"
15
+ ref="suModalRef"
16
+ :record="data.record"
17
+ :items="items"
18
+ :width="640"
19
+ :height="480"
20
+ :title="data.title"
21
+ @close="data.showModal = false"
22
+ />
23
+ </div>
24
+ </template>
25
+ <script lang="tsx">
26
+ export default {
27
+ name: 'LogoutLog'
28
+ };
29
+ </script>
30
+ <script setup lang="tsx">
31
+ import { ref, reactive } from 'vue';
32
+ // import { useRouter } from 'vue-router';
33
+ // import to from 'await-to-js';
34
+ // import { clone } from 'xe-utils';
35
+ import { useRender } from '@utogether/utils';
36
+
37
+ const renderHook = useRender();
38
+ // const renderOption = renderOptions();
39
+
40
+ // const router = useRouter();
41
+
42
+ const data = reactive({
43
+ showModal: false,
44
+ record: {},
45
+ title: ''
46
+ });
47
+
48
+ const formItems = [
49
+ { field: 'interfaceName' },
50
+ { field: 'interfaceUrl' },
51
+ { field: 'requestParameter' },
52
+ { field: 'responseContent' },
53
+ // { field: 'ip', },
54
+ { field: 'requestDate', itemRender: { name: '#SuDateRange', props: { type: 'daterange' } } },
55
+ { field: 'requestStatus', itemRender: renderHook.renderDict('SU.REQUEST.STATUS') }
56
+ ];
57
+
58
+ const items = [
59
+ { field: 'requestParameter', itemRender: { name: '$textarea', props: { rows: 5 } } },
60
+ {
61
+ field: 'responseContent',
62
+ itemRender: { name: '$textarea', props: { rows: 10 } }
63
+ },
64
+ { field: 'stacktrace', itemRender: { name: '$textarea', props: { rows: 3 } } }
65
+ ];
66
+
67
+ const SuGridRef = ref(null);
68
+ // 列字段
69
+ const columns = [
70
+ { field: 'interfaceName', minWidth: 120 },
71
+ { field: 'interfaceUrl', minWidth: 150 },
72
+ // { field: 'ip', width: 120 },
73
+ { field: 'requestDate', width: 160 },
74
+ { field: 'responseTimeConsume', width: 120 },
75
+ { field: 'requestStatus', width: 90, formatter: ['formatDict', 'SU.REQUEST.STATUS'] },
76
+ {
77
+ field: 'operate',
78
+ width: 70,
79
+ slots: {
80
+ default: ({ row }) => {
81
+ if (!row.id) return null;
82
+ return [
83
+ <>
84
+ <ut-button content="detail" icon="ri-eye-line ri-1x" onTap={() => handleShowDetail(row)} />
85
+ </>
86
+ ];
87
+ }
88
+ }
89
+ }
90
+ ];
91
+ // 详情
92
+ const handleShowDetail = record => {
93
+ // const resContent = JSON.parse(record.responseContent);
94
+ // console.log(resContent);
95
+ // record.resContent = resContent?.data?.list || resContent?.data;
96
+ // record.resContent = record.resContent ? JSON.stringify(record.resContent) : '';
97
+ data.record = record;
98
+ data.showModal = true;
99
+ data.title = `【${record.interfaceName}】接口明细`;
100
+ };
101
+ </script>