@utogether/udp-core 1.0.4 → 2.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{403-DASI6Pwz.js → 403-CTJDBjz7.js} +1 -1
- package/dist/{404-YhBA92cb.js → 404-BFYkWIkQ.js} +1 -1
- package/dist/{500-ywbFF5MX.js → 500-DGG3qadg.js} +1 -1
- package/dist/{AuthorityInfo-tCSX2Fh7.js → AuthorityInfo-ozZIo1Te.js} +1 -1
- package/dist/{AuthorityInfo.vue_vue_type_style_index_0_lang-Cwd6UT2i.js → AuthorityInfo.vue_vue_type_style_index_0_lang-DujerENw.js} +1 -1
- package/dist/{AuthorityPanel-BeBNiwqc.js → AuthorityPanel-CRlAwbaI.js} +1 -1
- package/dist/{AuthorityPanel.vue_vue_type_style_index_0_lang-CIYmnP9-.js → AuthorityPanel.vue_vue_type_style_index_0_lang-DxhZjp1S.js} +31 -24
- package/dist/{Company-l23MEzdM.js → Company-6VJtwh23.js} +3 -3
- package/dist/{CompanyPanel-D_s0rh6h.js → CompanyPanel-B2P488mq.js} +1 -1
- package/dist/{Department-DSEvORLg.js → Department-BnwoLEOC.js} +3 -3
- package/dist/{DepartmentPanel-WN8nOgCV.js → DepartmentPanel-CRrrmxtv.js} +1 -1
- package/dist/{DesignPanel-DirEGh9M.js → DesignPanel-CvbccgX2.js} +1 -1
- package/dist/{DesignPanel.vue_vue_type_style_index_0_lang-D02hXSrN.js → DesignPanel.vue_vue_type_style_index_0_lang-Dz2tUszs.js} +2 -2
- package/dist/{DictView-DiIQdiek.js → DictView-Ce1LoVHh.js} +17 -16
- package/dist/{InvOrganization-b7v3g9EJ.js → InvOrganization-BwCFZO1X.js} +1 -1
- package/dist/{Org-BORfx1PL.js → Org-0hzs6b0R.js} +1 -1
- package/dist/{Preview-DkRn_TSc.js → Preview--DnEAhwh.js} +1 -1
- package/dist/{ReportDefine-Cd0QeaWA.js → ReportDefine-Cu983bTN.js} +1 -1
- package/dist/{ReportDesign-4qNqyeEW.js → ReportDesign-QsWXXgvo.js} +2 -2
- package/dist/{ReportQuery-BJfTFpec.js → ReportQuery-BjKIIhPu.js} +1 -1
- package/dist/{ReportQueryFrom-CB7sExZx.js → ReportQueryFrom-DIjBO6Fx.js} +1 -1
- package/dist/{ReportQueryFrom.vue_vue_type_style_index_0_lang-CqO_2Ier.js → ReportQueryFrom.vue_vue_type_style_index_0_lang-0T62cUMK.js} +1 -1
- package/dist/{ReportTemplate-B69muSgT.js → ReportTemplate-2uk9tJcy.js} +1 -1
- package/dist/{Role-Bo4YrNDC.js → Role-_QP8QEaI.js} +3 -3
- package/dist/{RoleAssign-kOMYJ4s3.js → RoleAssign-C2gkcmEQ.js} +3 -3
- package/dist/{RolePanel-BSJmjyqc.js → RolePanel-B8FPNGaA.js} +1 -1
- package/dist/{RolePanel-B1d4e6uk.js → RolePanel-vnl_lXNY.js} +1 -1
- package/dist/{RolePanel.vue_vue_type_script_setup_true_lang-DCzX-ZP_.js → RolePanel.vue_vue_type_script_setup_true_lang-BuQbYEEI.js} +1 -1
- package/dist/{RolePanel.vue_vue_type_script_setup_true_lang-DgQpfjaU.js → RolePanel.vue_vue_type_script_setup_true_lang-bxHXrBYl.js} +3 -3
- package/dist/{ScrollPanel.vue_vue_type_style_index_0_lang-WNOYFxJ1.js → ScrollPanel.vue_vue_type_style_index_0_lang-C6yZXBqB.js} +1 -1
- package/dist/{Staff-BFp3zNNR.js → Staff-CHWrMIEb.js} +3 -3
- package/dist/{StaffInfo-DcU9_40C.js → StaffInfo-Cpq2eayz.js} +1 -1
- package/dist/{StaffInfo.vue_vue_type_script_setup_true_lang-CtfN2CAr.js → StaffInfo.vue_vue_type_script_setup_true_lang-BVCjF2i1.js} +1 -1
- package/dist/{StaffPanel-7exWkZd9.js → StaffPanel-D2BMXt5p.js} +1 -1
- package/dist/{StaffPanel.vue_vue_type_script_setup_true_lang-v5xOXKRS.js → StaffPanel.vue_vue_type_script_setup_true_lang-B6jAGo-g.js} +2 -2
- package/dist/{SysUser-B3uB_cp2.js → SysUser-om6H1BeC.js} +2 -2
- package/dist/{SysUserPanel-B0CLp5AO.js → SysUserPanel-CH0HPP7h.js} +1 -1
- package/dist/{SysUserPanel.vue_vue_type_script_setup_true_lang-Cwea_4dY.js → SysUserPanel.vue_vue_type_script_setup_true_lang-Dpl13ee0.js} +126 -111
- package/dist/{SystemMenu-a59l4hTk.js → SystemMenu-BkG_DKxA.js} +52 -49
- package/dist/{UserInfo-D1IA2oLt.js → UserInfo-D9croxUe.js} +1 -1
- package/dist/{UserInfo.vue_vue_type_style_index_0_lang-DDVgYRD5.js → UserInfo.vue_vue_type_style_index_0_lang-DLIP8xpN.js} +1 -1
- package/dist/{childView-6rCeLcsx.js → childView-BY_Ip-l1.js} +1 -1
- package/dist/{childView-JdrkroL5.js → childView-CHp_TueS.js} +1 -1
- package/dist/{childView.vue_vue_type_style_index_0_lang-BfcnWnx9.js → childView.vue_vue_type_style_index_0_lang-BNHbDRjt.js} +25 -22
- package/dist/{childView.vue_vue_type_style_index_0_lang-B8x99f1B.js → childView.vue_vue_type_style_index_0_lang-CbjGf7Z7.js} +1 -1
- package/dist/{code-rule-2lkPF547.js → code-rule-Ce6yWqCq.js} +1 -1
- package/dist/core.es.js +1 -1
- package/dist/{cron-task-DV1pGO1m.js → cron-task-DziaH0rI.js} +1 -1
- package/dist/{frameView-C0bzSB8c.js → frameView-DNeCVQaY.js} +1 -1
- package/dist/index-BabfUVv_.js +7241 -0
- package/dist/layout-home-Cis1KlEr.js +195 -0
- package/dist/{layoutView-CTV-E4Cj.js → layoutView-12Mlp9A2.js} +144 -145
- package/dist/{log-in-CoBP2x6u.js → log-in-1NGaA5OM.js} +1 -1
- package/dist/{log-out-KX8FiRVf.js → log-out-B8_atGcQ.js} +1 -1
- package/dist/{login-CtCoGWzD.js → login-5dydO6GR.js} +124 -134
- package/dist/{lov-view-Bm0JEzzg.js → lov-view-DPvGUu3h.js} +2 -2
- package/dist/{menuInfo-D2qPoRwz.js → menuInfo-DVADYfEK.js} +1 -1
- package/dist/{menuInfo.vue_vue_type_style_index_0_lang-DoQjX9Ly.js → menuInfo.vue_vue_type_style_index_0_lang-DgsifDrm.js} +37 -35
- package/dist/{pda-app-SbcIclbH.js → pda-app-BZXs-2BQ.js} +1 -1
- package/dist/{resource-Cdq1UKGI.js → resource-BZA9NFKc.js} +1 -1
- package/dist/su-welcome-BXe6Cdp3.js +580 -0
- package/dist/{sys-config-CCOf4xbj.js → sys-config-DQmNjWH4.js} +1 -1
- package/dist/udp-core.css +1 -1
- package/package.json +1 -1
- package/src/App.vue +71 -65
- package/src/components/udp/form-upload/form-upload.vue +492 -0
- package/src/components/udp/index.ts +2 -1
- package/src/layout/components/lay-content/index.vue +136 -143
- package/src/layout/components/lay-sidebar/sidebar-logo.vue +1 -1
- package/src/layout/layoutView.vue +7 -6
- package/src/main.ts +4 -7
- package/src/plugins/i18n/zh.ts +16 -3
- package/src/plugins/vxe-table/render.tsx +19 -1
- package/src/style/vxetable.scss +356 -348
- package/src/views/system/layout/layout-home.vue +199 -0
- package/src/views/system/menu/AuthorityPanel.vue +141 -140
- package/src/views/system/menu/SystemMenu.vue +10 -1
- package/src/views/system/menu/menuInfo.vue +384 -384
- package/src/views/system/sysUser/SysUserPanel.vue +22 -6
- package/src/views/udev/dict/DictView.vue +2 -2
- package/src/views/udev/dict/childView.vue +1 -0
- package/src/views/uhome/dynamic-card.vue +32 -0
- package/src/views/uhome/su-welcome.vue +10 -5
- package/src/views/ulogin/login.vue +34 -23
- package/types/global.d.ts +1 -0
- package/dist/index-BbtbEMCH.js +0 -4649
- package/dist/su-welcome-BHDsjqqV.js +0 -524
|
@@ -1,143 +1,136 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
* @Author: wei.li
|
|
3
|
-
* @Date: 2021-12-23 17:33:20
|
|
4
|
-
* @LastEditors: levi7754 levi7754@163.com
|
|
5
|
-
* @LastEditTime: 2025-
|
|
6
|
-
* @Description: 主页面
|
|
7
|
-
-->
|
|
8
|
-
<script setup lang="ts">
|
|
9
|
-
import { h, computed, Transition, defineComponent } from 'vue';
|
|
10
|
-
import { useGlobal } from '@utogether/utils';
|
|
11
|
-
import { useI18n } from 'vue-i18n';
|
|
12
|
-
import { useTags } from '../../hooks/useTag';
|
|
13
|
-
import backTop from '../../../assets/svg/back_top.svg?component';
|
|
14
|
-
import { usePermissionStoreHook } from '../../../store/modules/permission';
|
|
15
|
-
|
|
16
|
-
const props = defineProps({
|
|
17
|
-
fixedHeader: Boolean
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
const { showModel } = useTags();
|
|
21
|
-
const { t } = useI18n();
|
|
22
|
-
const { $storage, $config } = useGlobal();
|
|
23
|
-
|
|
24
|
-
const keepAlive = computed(() => {
|
|
25
|
-
return $config?.KeepAlive;
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
const transitions = computed(() => {
|
|
29
|
-
return route => {
|
|
30
|
-
return route.meta.transition;
|
|
31
|
-
};
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
const hideTabs = computed(() => {
|
|
35
|
-
return $storage?.configure.hideTabs;
|
|
36
|
-
});
|
|
37
|
-
const layout = computed(() => {
|
|
38
|
-
return $storage?.layout.layout === 'vertical';
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
const getSectionStyle = computed(() => {
|
|
42
|
-
// 在iframe中默认就是审批
|
|
43
|
-
return window.top === window.self
|
|
44
|
-
? [
|
|
45
|
-
hideTabs.value && layout ? 'padding-top: 48px;' : '',
|
|
46
|
-
!hideTabs.value && layout
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
<
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
</
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
.app-main {
|
|
127
|
-
position: relative;
|
|
128
|
-
width: 100%;
|
|
129
|
-
height: 100vh;
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
.main-content {
|
|
140
|
-
/* padding: 6px; */
|
|
141
|
-
height: 100%;
|
|
142
|
-
}
|
|
143
|
-
</style>
|
|
1
|
+
<!--
|
|
2
|
+
* @Author: wei.li
|
|
3
|
+
* @Date: 2021-12-23 17:33:20
|
|
4
|
+
* @LastEditors: levi7754 levi7754@163.com
|
|
5
|
+
* @LastEditTime: 2025-12-18 09:35:26
|
|
6
|
+
* @Description: 主页面
|
|
7
|
+
-->
|
|
8
|
+
<script setup lang="ts">
|
|
9
|
+
import { h, computed, Transition, defineComponent } from 'vue';
|
|
10
|
+
import { useGlobal } from '@utogether/utils';
|
|
11
|
+
import { useI18n } from 'vue-i18n';
|
|
12
|
+
import { useTags } from '../../hooks/useTag';
|
|
13
|
+
import backTop from '../../../assets/svg/back_top.svg?component';
|
|
14
|
+
import { usePermissionStoreHook } from '../../../store/modules/permission';
|
|
15
|
+
|
|
16
|
+
const props = defineProps({
|
|
17
|
+
fixedHeader: Boolean
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
const { showModel } = useTags();
|
|
21
|
+
const { t } = useI18n();
|
|
22
|
+
const { $storage, $config } = useGlobal();
|
|
23
|
+
|
|
24
|
+
const keepAlive = computed(() => {
|
|
25
|
+
return $config?.KeepAlive;
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
const transitions = computed(() => {
|
|
29
|
+
return route => {
|
|
30
|
+
return route.meta.transition;
|
|
31
|
+
};
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
const hideTabs = computed(() => {
|
|
35
|
+
return $storage?.configure.hideTabs;
|
|
36
|
+
});
|
|
37
|
+
const layout = computed(() => {
|
|
38
|
+
return $storage?.layout.layout === 'vertical';
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
const getSectionStyle = computed(() => {
|
|
42
|
+
// 在iframe中默认就是审批
|
|
43
|
+
return window.top === window.self
|
|
44
|
+
? [
|
|
45
|
+
hideTabs.value && layout ? 'padding-top: 48px;' : '',
|
|
46
|
+
!hideTabs.value && layout ? (showModel.value == 'chrome' ? 'padding-top: 85px;' : 'padding-top: 81px;') : '',
|
|
47
|
+
hideTabs.value && !layout.value ? 'padding-top: 48px' : '',
|
|
48
|
+
!hideTabs.value && !layout.value
|
|
49
|
+
? showModel.value == 'chrome'
|
|
50
|
+
? 'padding-top: 85px;'
|
|
51
|
+
: 'padding-top: 81px;'
|
|
52
|
+
: '',
|
|
53
|
+
props.fixedHeader ? '' : 'padding-top: 0;'
|
|
54
|
+
]
|
|
55
|
+
: 'padding-top: 0';
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
const transitionMain = defineComponent({
|
|
59
|
+
props: {
|
|
60
|
+
route: {
|
|
61
|
+
type: undefined,
|
|
62
|
+
required: true
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
render() {
|
|
66
|
+
const transitionName = transitions.value(this.route)?.name || 'fade-transform';
|
|
67
|
+
const enterTransition = transitions.value(this.route)?.enterTransition;
|
|
68
|
+
const leaveTransition = transitions.value(this.route)?.leaveTransition;
|
|
69
|
+
return h(
|
|
70
|
+
Transition,
|
|
71
|
+
{
|
|
72
|
+
name: enterTransition ? 'pure-classes-transition' : transitionName,
|
|
73
|
+
enterActiveClass: enterTransition ? `animate__animated ${enterTransition}` : undefined,
|
|
74
|
+
leaveActiveClass: leaveTransition ? `animate__animated ${leaveTransition}` : undefined,
|
|
75
|
+
mode: 'out-in',
|
|
76
|
+
appear: true
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
default: () => [this.$slots.default()]
|
|
80
|
+
}
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
</script>
|
|
85
|
+
|
|
86
|
+
<template>
|
|
87
|
+
<section :class="[props.fixedHeader ? 'app-main' : 'app-main-nofixed-header']" :style="getSectionStyle">
|
|
88
|
+
<router-view>
|
|
89
|
+
<template #default="{ Component, route }">
|
|
90
|
+
<el-scrollbar v-if="props.fixedHeader">
|
|
91
|
+
<template #default>
|
|
92
|
+
<div class="h-full">
|
|
93
|
+
<el-backtop :title="t('message.udp.backtop')" style="z-index: 100" target=".app-main .el-scrollbar__wrap">
|
|
94
|
+
<backTop />
|
|
95
|
+
</el-backtop>
|
|
96
|
+
<transitionMain :route="route">
|
|
97
|
+
<keep-alive v-if="keepAlive" :include="usePermissionStoreHook().cachePageList">
|
|
98
|
+
<component :is="Component" :key="route.fullPath" class="main-content" />
|
|
99
|
+
</keep-alive>
|
|
100
|
+
<component :is="Component" v-else :key="route.fullPath" class="main-content" />
|
|
101
|
+
</transitionMain>
|
|
102
|
+
</div>
|
|
103
|
+
</template>
|
|
104
|
+
</el-scrollbar>
|
|
105
|
+
<div v-else>
|
|
106
|
+
<transitionMain :route="route">
|
|
107
|
+
<keep-alive v-if="keepAlive" :include="usePermissionStoreHook().cachePageList">
|
|
108
|
+
<component :is="Component" :key="route.fullPath" class="main-content" />
|
|
109
|
+
</keep-alive>
|
|
110
|
+
<component :is="Component" v-else :key="route.fullPath" class="main-content" />
|
|
111
|
+
</transitionMain>
|
|
112
|
+
</div>
|
|
113
|
+
</template>
|
|
114
|
+
</router-view>
|
|
115
|
+
</section>
|
|
116
|
+
</template>
|
|
117
|
+
|
|
118
|
+
<style scoped>
|
|
119
|
+
.app-main {
|
|
120
|
+
position: relative;
|
|
121
|
+
width: 100%;
|
|
122
|
+
height: 100vh;
|
|
123
|
+
overflow-x: hidden;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.app-main-nofixed-header {
|
|
127
|
+
position: relative;
|
|
128
|
+
width: 100%;
|
|
129
|
+
min-height: 100vh;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.main-content {
|
|
133
|
+
/* padding: 6px; */
|
|
134
|
+
height: 100%;
|
|
135
|
+
}
|
|
136
|
+
</style>
|
|
@@ -19,7 +19,7 @@ const props = defineProps({
|
|
|
19
19
|
const sysConfig = storageLocal.getItem(kSYSCONFIG) || {};
|
|
20
20
|
|
|
21
21
|
const title = sysConfig['title'];
|
|
22
|
-
const showTitle = sysConfig['showTitle'];
|
|
22
|
+
const showTitle = ref(sysConfig['showTitle']);
|
|
23
23
|
const logo = ref(sysConfig['logo'] || utogether);
|
|
24
24
|
</script>
|
|
25
25
|
|
|
@@ -132,8 +132,7 @@ const layoutHeader = defineComponent({
|
|
|
132
132
|
},
|
|
133
133
|
{
|
|
134
134
|
default: () => [
|
|
135
|
-
!settingHook.hiddenSideBar &&
|
|
136
|
-
(layout.value.includes('vertical') || layout.value.includes('mix'))
|
|
135
|
+
!settingHook.hiddenSideBar && (layout.value.includes('vertical') || layout.value.includes('mix'))
|
|
137
136
|
? h(navbar)
|
|
138
137
|
: null,
|
|
139
138
|
!settingHook.hiddenSideBar && layout.value.includes('horizontal') ? h(Horizontal) : null,
|
|
@@ -153,9 +152,7 @@ const layoutHeader = defineComponent({
|
|
|
153
152
|
@click="useAppStoreHook().toggleSideBar()"
|
|
154
153
|
/>
|
|
155
154
|
<Vertical
|
|
156
|
-
v-show="
|
|
157
|
-
inIframe && !settingHook.hiddenSideBar && (layout.includes('vertical') || layout.includes('mix'))
|
|
158
|
-
"
|
|
155
|
+
v-show="inIframe && !settingHook.hiddenSideBar && (layout.includes('vertical') || layout.includes('mix'))"
|
|
159
156
|
/>
|
|
160
157
|
<div :class="['main-container', settingHook.hiddenSideBar ? 'main-hidden' : '']">
|
|
161
158
|
<div v-if="set.fixedHeader">
|
|
@@ -166,7 +163,11 @@ const layoutHeader = defineComponent({
|
|
|
166
163
|
<el-scrollbar v-else>
|
|
167
164
|
<template #default>
|
|
168
165
|
<div class="h-full">
|
|
169
|
-
<el-backtop
|
|
166
|
+
<el-backtop
|
|
167
|
+
:title="t('message.udp.backtop')"
|
|
168
|
+
style="z-index: 100"
|
|
169
|
+
target=".main-container .el-scrollbar__wrap"
|
|
170
|
+
>
|
|
170
171
|
<backTop />
|
|
171
172
|
</el-backtop>
|
|
172
173
|
<layout-header v-if="inIframe" />
|
package/src/main.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: levi7754 levi7754@163.com
|
|
3
3
|
* @Date: 2025-07-25 13:38:20
|
|
4
4
|
* @LastEditors: levi7754 levi7754@163.com
|
|
5
|
-
* @LastEditTime: 2025-
|
|
5
|
+
* @LastEditTime: 2025-12-26 14:35:03
|
|
6
6
|
* @FilePath: \udp-front\packages\udp-core\src\main.ts
|
|
7
7
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
|
8
8
|
*/
|
|
@@ -26,17 +26,13 @@ import './style/reset.scss';
|
|
|
26
26
|
// 导入公共样式
|
|
27
27
|
import './style/index.scss';
|
|
28
28
|
|
|
29
|
-
// import 'viewerjs/dist/viewer.css';
|
|
30
|
-
|
|
31
|
-
// import VueViewer from 'v-viewer';
|
|
32
|
-
|
|
33
29
|
// import SuTable from './components/SuTable/SuTable.vue';
|
|
34
30
|
|
|
35
31
|
import {
|
|
36
32
|
// utLov2,
|
|
37
33
|
// UtDivider,
|
|
38
34
|
// UtModalForm2
|
|
39
|
-
|
|
35
|
+
FormUpload2,
|
|
40
36
|
// UtForm2,
|
|
41
37
|
UtGrid2
|
|
42
38
|
// UtContent2
|
|
@@ -78,6 +74,7 @@ const setGlobalDirective = app => {
|
|
|
78
74
|
};
|
|
79
75
|
|
|
80
76
|
const init = ({ router, config, lang, views, env, tableConfig }) => {
|
|
77
|
+
console.log('view', views);
|
|
81
78
|
setViews(views, router);
|
|
82
79
|
app.use(router);
|
|
83
80
|
setRouter(router);
|
|
@@ -95,7 +92,7 @@ const init = ({ router, config, lang, views, env, tableConfig }) => {
|
|
|
95
92
|
// app.component('UtForm2', UtForm2);
|
|
96
93
|
// app.component('UtModalGrid2', UtModalGrid2);
|
|
97
94
|
// .component('UtIconSelect', UtIconSelect)
|
|
98
|
-
|
|
95
|
+
app.component('FormUpload2', FormUpload2);
|
|
99
96
|
// .component('UtCalendar', UtCalendar)
|
|
100
97
|
// app.component('UtContent2', UtContent2);
|
|
101
98
|
// app.component('UtStampBadge2', UtStampBadge2);
|
package/src/plugins/i18n/zh.ts
CHANGED
|
@@ -58,6 +58,7 @@ export default {
|
|
|
58
58
|
browser: '浏览器',
|
|
59
59
|
dictCode: '字典编码',
|
|
60
60
|
dictName: '字典名称',
|
|
61
|
+
dictDesc: '字典描述',
|
|
61
62
|
dictType: '字典类型',
|
|
62
63
|
|
|
63
64
|
ruleCode: '规则代码',
|
|
@@ -70,6 +71,7 @@ export default {
|
|
|
70
71
|
startValue: '开始值',
|
|
71
72
|
currentValue: '当前值',
|
|
72
73
|
haveBeenUsed: '使用中',
|
|
74
|
+
description: '描述',
|
|
73
75
|
|
|
74
76
|
unitName: '单位名称',
|
|
75
77
|
unitCode: '单位编码',
|
|
@@ -112,7 +114,14 @@ export default {
|
|
|
112
114
|
appupper: '已上架',
|
|
113
115
|
applower: '已下架',
|
|
114
116
|
isApprovalPage: '审批页面',
|
|
115
|
-
showLink: '菜单可见'
|
|
117
|
+
showLink: '菜单可见',
|
|
118
|
+
|
|
119
|
+
componentCode: '组件编码',
|
|
120
|
+
componentTitle: '组件标题',
|
|
121
|
+
componentSpan: '栅格列数(24等分)',
|
|
122
|
+
componentHeight: '组件高度',
|
|
123
|
+
componentPath: '组件路径',
|
|
124
|
+
componentRole: '角色'
|
|
116
125
|
},
|
|
117
126
|
btn: {
|
|
118
127
|
passwordReset: '密码重置',
|
|
@@ -176,6 +185,7 @@ export default {
|
|
|
176
185
|
disabled: '禁用',
|
|
177
186
|
enable: '启用',
|
|
178
187
|
flowDesign: '流程设计',
|
|
188
|
+
resetPassword: '重置密码',
|
|
179
189
|
|
|
180
190
|
bankinfo: '银行账号'
|
|
181
191
|
},
|
|
@@ -339,10 +349,12 @@ export default {
|
|
|
339
349
|
emptyAuth: '无系统权限, 请先给用户分配角色重试',
|
|
340
350
|
initPassword: `初始密码为:【{code}】,请及时修改密码`,
|
|
341
351
|
loginFailure: '用户名或密码不能为空',
|
|
352
|
+
selectRole: '请先勾选角色数据',
|
|
342
353
|
confirmSync: '确认同步数据吗?',
|
|
343
354
|
updatenow: '立即更新',
|
|
344
355
|
newVersion: '检测到新版本',
|
|
345
|
-
updateLater: '稍后更新'
|
|
356
|
+
updateLater: '稍后更新',
|
|
357
|
+
confirmResetPassword: '确认重置密码吗?'
|
|
346
358
|
},
|
|
347
359
|
title: {
|
|
348
360
|
employeeInfo: '员工信息',
|
|
@@ -358,6 +370,7 @@ export default {
|
|
|
358
370
|
lovView: '值集视图',
|
|
359
371
|
lovColConfig: '值集列配置',
|
|
360
372
|
sequenceInfo: '{name}单据序列配置',
|
|
361
|
-
userInfo: '用户信息'
|
|
373
|
+
userInfo: '用户信息',
|
|
374
|
+
layoutRole: '【{name}】角色列表'
|
|
362
375
|
}
|
|
363
376
|
};
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: wei.li
|
|
3
3
|
* @Date: 2021-12-01 09:18:50
|
|
4
4
|
* @LastEditors: levi7754 levi7754@163.com
|
|
5
|
-
* @LastEditTime: 2025-12-
|
|
5
|
+
* @LastEditTime: 2025-12-15 16:03:35
|
|
6
6
|
* @Description: file content
|
|
7
7
|
*/
|
|
8
8
|
|
|
@@ -605,6 +605,7 @@ export const VxetableRender = (VXETable, { serviceApi, i18n }) => {
|
|
|
605
605
|
renderTableEdit(renderOpts: VxeColumnPropTypes.EditRender, params) {
|
|
606
606
|
const { row, column } = params;
|
|
607
607
|
const { props, events } = renderOpts;
|
|
608
|
+
debugger;
|
|
608
609
|
|
|
609
610
|
/**
|
|
610
611
|
* @description: 点击清空按钮时触发
|
|
@@ -629,6 +630,23 @@ export const VxetableRender = (VXETable, { serviceApi, i18n }) => {
|
|
|
629
630
|
|
|
630
631
|
// 可编辑显示模板
|
|
631
632
|
renderTableCell(renderOpts, params) {
|
|
633
|
+
const { row, column } = params;
|
|
634
|
+
const { props } = renderOpts;
|
|
635
|
+
debugger;
|
|
636
|
+
return [
|
|
637
|
+
<form-upload2
|
|
638
|
+
record={row}
|
|
639
|
+
field={column.field}
|
|
640
|
+
size="mini"
|
|
641
|
+
{...props}
|
|
642
|
+
mode="image"
|
|
643
|
+
render-mode="column"
|
|
644
|
+
data-status="detail"
|
|
645
|
+
/>
|
|
646
|
+
];
|
|
647
|
+
},
|
|
648
|
+
// 默认显示模板
|
|
649
|
+
renderDefault(renderOpts, params) {
|
|
632
650
|
const { row, column } = params;
|
|
633
651
|
const { props } = renderOpts;
|
|
634
652
|
return [
|