imatrix-ui 2.8.21 → 2.8.22-boe10

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 (177) hide show
  1. package/lib/super-ui.css +1 -1
  2. package/lib/super-ui.umd.min.js +5 -5
  3. package/package.json +2 -2
  4. package/src/api/sso-service.js +19 -1
  5. package/src/i18n/langs/cn.js +13 -3
  6. package/src/i18n/langs/en.js +15 -4
  7. package/src/router/index.js +10 -0
  8. package/src/store/modules/tab-content.js +6 -0
  9. package/src/store/modules/user.js +19 -0
  10. package/src/styles/index.scss +72 -2
  11. package/src/styles/theme/black/font-style.scss +70 -0
  12. package/src/styles/theme/black/index.scss +6 -30
  13. package/src/styles/theme/blue/font-style.scss +37 -0
  14. package/src/styles/theme/blue/index.scss +2 -18
  15. package/src/styles/theme/blue2/font-style.scss +70 -0
  16. package/src/styles/theme/blue2/index.scss +3 -13
  17. package/src/styles/theme/dark-blue/index.scss +27 -5
  18. package/src/styles/theme/dark-blue/message.scss +8 -0
  19. package/src/styles/theme/dark-blue/sidebar.scss +7 -37
  20. package/src/styles/theme/dark-blue/table.scss +1 -1
  21. package/src/styles/theme/gray/card-style.scss +13 -1
  22. package/src/styles/theme/gray/font-style.scss +38 -0
  23. package/src/styles/theme/gray/index.scss +13 -25
  24. package/src/styles/theme/gray/scrollbar-style.scss +32 -0
  25. package/src/styles/theme/gray/sidebar.scss +5 -0
  26. package/src/utils/auth-api.js +45 -1
  27. package/src/utils/common-util.js +28 -0
  28. package/src/utils/range-selector.js +185 -0
  29. package/src/utils/request.js +5 -2
  30. package/src/utils/util.js +7 -5
  31. package/src/views/dsc-component/Sidebar/Item.vue +4 -2
  32. package/src/views/dsc-component/Sidebar/SidebarItem.vue +1 -2
  33. package/src/views/dsc-component/Sidebar/index.vue +12 -20
  34. package/src/views/dsc-component/tabs/tab-content.vue +1 -5
  35. package/src/views/layout/NewLayout.vue +6 -65
  36. package/src/views/layout/components/Menubar/Item.vue +23 -7
  37. package/src/views/layout/components/Menubar/Link.vue +11 -2
  38. package/src/views/layout/components/Menubar/SidebarItem.vue +50 -7
  39. package/src/views/layout/components/Menubar/index.vue +51 -16
  40. package/src/views/layout/components/tabs/tab-content.vue +160 -0
  41. package/src/views/layout/tab-content-iframe-index.vue +31 -0
  42. package/src/views/layout/tab-content-index.vue +85 -0
  43. package/packages/breadcrumb/index.js +0 -6
  44. package/packages/breadcrumb/src/breadcrumb.vue +0 -71
  45. package/packages/department-tree/index.js +0 -6
  46. package/packages/department-tree/src/department-tree.vue +0 -108
  47. package/packages/department-tree-inline/index.js +0 -6
  48. package/packages/department-tree-inline/src/department-multi-tree-inline.vue +0 -402
  49. package/packages/department-tree-inline/src/department-single-tree-inline.vue +0 -284
  50. package/packages/department-tree-inline/src/department-tree-inline.vue +0 -86
  51. package/packages/department-tree-inline/src/department-tree-service.js +0 -245
  52. package/packages/department-tree-inline/src/search-result.vue +0 -176
  53. package/packages/department-user-tree/index.js +0 -6
  54. package/packages/department-user-tree/src/department-user-multiple-tree.vue +0 -116
  55. package/packages/department-user-tree/src/department-user-single-tree.vue +0 -76
  56. package/packages/department-user-tree/src/department-user-tree.vue +0 -101
  57. package/packages/department-user-tree-inline/index.js +0 -6
  58. package/packages/department-user-tree-inline/src/department-user-multiple-tree-inline.vue +0 -626
  59. package/packages/department-user-tree-inline/src/department-user-single-tree-inline.vue +0 -269
  60. package/packages/department-user-tree-inline/src/department-user-tree-inline.vue +0 -79
  61. package/packages/department-user-tree-inline/src/department-user-tree-multi-service.js +0 -230
  62. package/packages/department-user-tree-inline/src/department-user-tree-single-service.js +0 -122
  63. package/packages/department-user-tree-inline/src/search-result.vue +0 -197
  64. package/packages/directives/prevent-reclick.js +0 -19
  65. package/packages/dynamic-source-select/index.js +0 -6
  66. package/packages/dynamic-source-select/src/dynamic-source-select-service.js +0 -70
  67. package/packages/dynamic-source-select/src/dynamic-source-select.vue +0 -440
  68. package/packages/dynamic-source-select/src/events.js +0 -55
  69. package/packages/fs-preview/index.js +0 -6
  70. package/packages/fs-preview/src/fs-preview.vue +0 -226
  71. package/packages/fs-upload/index.js +0 -6
  72. package/packages/fs-upload/src/fs-upload-multi.vue +0 -420
  73. package/packages/fs-upload/src/fs-upload-single.vue +0 -312
  74. package/packages/fs-upload/src/fs-upload.vue +0 -189
  75. package/packages/fs-upload/src/see-big-picture.vue +0 -55
  76. package/packages/fs-upload-list/index.js +0 -6
  77. package/packages/fs-upload-list/src/fs-upload-list.vue +0 -287
  78. package/packages/hamburger/index.js +0 -6
  79. package/packages/hamburger/src/hamburger.vue +0 -38
  80. package/packages/index.js +0 -121
  81. package/packages/multipart-upload/index.js +0 -6
  82. package/packages/multipart-upload/src/index.vue +0 -73
  83. package/packages/multipart-upload/src/multipart-upload-form.vue +0 -297
  84. package/packages/multipart-upload/src/multipart-upload-list.vue +0 -378
  85. package/packages/organization-input/index.js +0 -6
  86. package/packages/organization-input/src/organization-input.vue +0 -542
  87. package/packages/plugins/export-data-new.js +0 -453
  88. package/packages/plugins/export-data.js +0 -361
  89. package/packages/plugins/index.js +0 -15
  90. package/packages/plugins/public-method.js +0 -43
  91. package/packages/remove-department/index.js +0 -6
  92. package/packages/remove-department/src/remove-department.vue +0 -172
  93. package/packages/remove-department/src/remove-dept-service.js +0 -20
  94. package/packages/remove-user/index.js +0 -6
  95. package/packages/remove-user/src/remove-user-service.js +0 -20
  96. package/packages/remove-user/src/remove-user.vue +0 -195
  97. package/packages/remove-workgroup/index.js +0 -6
  98. package/packages/remove-workgroup/src/remove-workgroup-service.js +0 -20
  99. package/packages/remove-workgroup/src/remove-workgroup.vue +0 -159
  100. package/packages/rich-editor/index.js +0 -7
  101. package/packages/rich-editor/index.vue +0 -278
  102. package/packages/rich-editor/langs/zh-Hans.js +0 -1
  103. package/packages/rich-editor/viewer.vue +0 -103
  104. package/packages/scan-code-input/index.js +0 -6
  105. package/packages/scan-code-input/src/events.js +0 -33
  106. package/packages/scan-code-input/src/scan-code-input-colse.vue +0 -131
  107. package/packages/scan-code-input/src/scan-code-input.vue +0 -116
  108. package/packages/secret-info/index.js +0 -7
  109. package/packages/secret-info/index.vue +0 -90
  110. package/packages/super-grid/index.js +0 -7
  111. package/packages/super-grid/src/apis.js +0 -763
  112. package/packages/super-grid/src/columns-config.vue +0 -335
  113. package/packages/super-grid/src/custom-formatter.js +0 -250
  114. package/packages/super-grid/src/dynamic-input.vue +0 -1279
  115. package/packages/super-grid/src/eventBus.js +0 -2
  116. package/packages/super-grid/src/events.js +0 -55
  117. package/packages/super-grid/src/formValidatorUtil.js +0 -226
  118. package/packages/super-grid/src/formatter.js +0 -181
  119. package/packages/super-grid/src/group-column.vue +0 -100
  120. package/packages/super-grid/src/header-context-menu.vue +0 -87
  121. package/packages/super-grid/src/index-column.vue +0 -51
  122. package/packages/super-grid/src/normal-column.vue +0 -769
  123. package/packages/super-grid/src/public-methods.js +0 -31
  124. package/packages/super-grid/src/row-operation.vue +0 -161
  125. package/packages/super-grid/src/search-button.vue +0 -66
  126. package/packages/super-grid/src/search-condition-input.vue +0 -61
  127. package/packages/super-grid/src/search-condition-list.vue +0 -59
  128. package/packages/super-grid/src/search-form-advancedQuery.vue +0 -653
  129. package/packages/super-grid/src/search-form-dialog.vue +0 -79
  130. package/packages/super-grid/src/search-form-item.vue +0 -386
  131. package/packages/super-grid/src/search-form-number.vue +0 -38
  132. package/packages/super-grid/src/search-form-open.vue +0 -162
  133. package/packages/super-grid/src/search-form-ordinarySearch.vue +0 -188
  134. package/packages/super-grid/src/search-form.vue +0 -634
  135. package/packages/super-grid/src/search-methods.js +0 -387
  136. package/packages/super-grid/src/selection-column.vue +0 -43
  137. package/packages/super-grid/src/store.js +0 -3
  138. package/packages/super-grid/src/super-grid-service.js +0 -561
  139. package/packages/super-grid/src/super-grid.vue +0 -2793
  140. package/packages/super-grid/src/utils.js +0 -763
  141. package/packages/super-grid/src/view-image-dialog.vue +0 -130
  142. package/packages/super-nine-grid/index.js +0 -7
  143. package/packages/super-nine-grid/src/apis.js +0 -103
  144. package/packages/super-nine-grid/src/custom-formatter.js +0 -66
  145. package/packages/super-nine-grid/src/formatter.js +0 -132
  146. package/packages/super-nine-grid/src/search-form-number.vue +0 -38
  147. package/packages/super-nine-grid/src/search-form.vue +0 -430
  148. package/packages/super-nine-grid/src/search-methods.js +0 -134
  149. package/packages/super-nine-grid/src/store.js +0 -3
  150. package/packages/super-nine-grid/src/super-grid-service.js +0 -91
  151. package/packages/super-nine-grid/src/super-nine-grid.vue +0 -872
  152. package/packages/super-nine-grid/src/utils.js +0 -261
  153. package/packages/svg-icon/index.js +0 -6
  154. package/packages/svg-icon/src/svg-icon.vue +0 -43
  155. package/packages/utils/utils.js +0 -152
  156. package/packages/utils/value-set.js +0 -86
  157. package/packages/valid-code/index.js +0 -7
  158. package/packages/valid-code/src/valid-code.vue +0 -95
  159. package/packages/workflow-button/index.js +0 -6
  160. package/packages/workflow-button/src/workflow-button.vue +0 -325
  161. package/packages/workflow-history-list/index.js +0 -6
  162. package/packages/workflow-history-list/src/api.js +0 -7
  163. package/packages/workflow-history-list/src/workflow-history-list.vue +0 -185
  164. package/packages/workgroup-tree/index.js +0 -6
  165. package/packages/workgroup-tree/src/workgroup-tree.vue +0 -76
  166. package/packages/workgroup-tree-inline/index.js +0 -6
  167. package/packages/workgroup-tree-inline/src/workgroup-tree-inline.vue +0 -317
  168. package/packages/workgroup-tree-inline/src/workgroup-tree-service.js +0 -43
  169. package/packages/workgroup-user-tree/index.js +0 -6
  170. package/packages/workgroup-user-tree/src/workgroup-user-tree.vue +0 -100
  171. package/packages/workgroup-user-tree-inline/index.js +0 -6
  172. package/packages/workgroup-user-tree-inline/src/workgroup-tree-inline-service.js +0 -163
  173. package/packages/workgroup-user-tree-inline/src/workgroup-user-tree-inline.vue +0 -436
  174. package/packages/year-range-picker/index.js +0 -6
  175. package/packages/year-range-picker/src/year-range-picker.vue +0 -51
  176. package/src/index.js +0 -93
  177. package/src/styles/theme/gray/form-style.scss +0 -41
@@ -6,30 +6,26 @@
6
6
  .main-container {
7
7
  height: 100%;
8
8
  transition: margin-left .28s;
9
- margin-left: 210px;
9
+ margin-left: 224px;
10
10
  // padding-left: 24px;
11
11
  position: relative;
12
12
  background: #F8F9FA;
13
13
 
14
14
  .nav-tab {
15
- padding-top: 0px;
16
- padding-left: 0px;
17
- .el-tabs__header{
18
- padding-left: 24px;
19
- }
15
+ padding-top: 5px;
16
+ padding-left: 5px;
20
17
  }
21
18
  }
22
19
 
23
20
  // 侧边栏
24
21
  .sidebar-container {
25
22
  transition: width 0.28s;
26
- width: 210px !important;
23
+ width: 224px !important;
27
24
  height: 100%;
28
25
  position: fixed;
29
26
  top: 0;
30
27
  bottom: 0;
31
28
  left: 0;
32
- padding-top: 16px;
33
29
  z-index: 1001;
34
30
  overflow: hidden;
35
31
  font-weight: medium;
@@ -173,11 +169,11 @@
173
169
 
174
170
  .sidebar-container .nest-menu .el-submenu>.el-submenu__title,
175
171
  .sidebar-container .el-submenu .el-menu-item {
176
- min-width: 180px !important;
172
+ min-width: 224px !important;
177
173
  }
178
174
 
179
175
  .sidebar-container .el-menu--collapse .el-menu .el-submenu {
180
- min-width: 180px !important;
176
+ min-width: 224px !important;
181
177
  }
182
178
 
183
179
  .sidebar-container .el-menu--collapse .el-submenu.is-active>.el-submenu__title,
@@ -185,7 +181,7 @@
185
181
  background-color: #FFFFFF !important;
186
182
  color: #1A6BF3;
187
183
  font-weight: medium;
188
- border-left: 4px solid #1A6BF3
184
+ border-right: 2px solid #3D4CF2
189
185
  }
190
186
 
191
187
  .sidebar-container .el-menu--collapse .el-submenu__title:not(.is-disabled):hover,
@@ -227,10 +223,6 @@
227
223
  }
228
224
  }
229
225
 
230
- .sidebar-container-popper {
231
- width: 180px;
232
- }
233
-
234
226
  .sidebar-container-popper .el-submenu__title:not(.is-disabled):hover {
235
227
  background: #F7F7F8;
236
228
  color: rgba(0, 13, 31, 0.85);
@@ -259,33 +251,11 @@
259
251
  text-align: left;
260
252
  }
261
253
 
262
- //侧边弹出菜单样式
263
- .sidebar-container-popper .el-menu-item {
264
- height: 46px;
265
- line-height: 46px;
266
- font-weight: medium;
267
- color: #A4ABB8;
268
- min-width: 164px;
269
- }
270
-
271
- .sidebar-container-popper .el-submenu__title {
272
- height: 46px;
273
- line-height: 46px;
274
- color: #A4ABB8;
275
- font-weight: medium;
276
- }
277
254
 
278
255
  .sidebar-container-popper .el-menu--collapse {
279
256
  text-align: left;
280
257
  }
281
258
 
282
- .sidebar-container-popper .el-menu--popup {
283
- min-width: 180px;
284
- padding: 12px 8px 12px 8px;
285
- }
286
-
287
-
288
-
289
259
  .el-menu--vertical {
290
260
  &>.el-menu {
291
261
  .svg-icon {
@@ -22,6 +22,7 @@
22
22
  // }
23
23
 
24
24
  .el-table .el-table__cell {
25
+ color: $table-cell-font-color;
25
26
  padding: 0;
26
27
  }
27
28
 
@@ -38,7 +39,6 @@
38
39
 
39
40
  // 表格内容颜色
40
41
  .el-table .cell {
41
- color: $table-cell-font-color;
42
42
  font-family: Source Han Sans CN;
43
43
  font-weight: regular;
44
44
  font-size: 14px;
@@ -38,5 +38,17 @@
38
38
 
39
39
 
40
40
  }
41
-
41
+ .gray_card_box {
42
+ border-radius: 6px;
43
+ background: #FFFFFF;
44
+ padding: 20px;
45
+ box-shadow: 0px 1px 8px 0px #00000019;
46
+ box-sizing: border-box;
47
+ overflow-y: scroll;
48
+ }
49
+ .gray_buttomBtn_box{
50
+ position: fixed;
51
+ bottom: 0;
52
+ right: 4%;
53
+ }
42
54
  }
@@ -29,4 +29,42 @@
29
29
  color: rgba(0, 13, 31, 0.85);
30
30
  }
31
31
  }
32
+
33
+ .page-layout__title {
34
+ width: 46px;
35
+ height: 16px;
36
+ font-size: 11px;
37
+ font-weight: 500;
38
+ color: #333333;
39
+ line-height: 13px;
40
+ }
41
+
42
+ .component-type-name__title {
43
+ width: 40px;
44
+ height: 14px;
45
+ font-size: 10px;
46
+ font-weight: 500;
47
+ color: #333333;
48
+ line-height: 12px;
49
+ // -webkit-background-clip: text;
50
+ // -webkit-text-fill-color: transparent;
51
+ }
52
+
53
+ .page-layout__title::before {
54
+ content: "";
55
+ text-align: center;
56
+ background: #1A6BF3;
57
+ float: left;
58
+ position: relative;
59
+ border-radius: 3px;
60
+ /** 定义成 block 元素 **/
61
+ display: block;
62
+ // height: 21px;
63
+ // width: 4px;
64
+ margin-right: 12px;
65
+
66
+ width: 2px;
67
+ height: 16px;
68
+
69
+ }
32
70
  }
@@ -3,7 +3,7 @@
3
3
  @import './card-style.scss';
4
4
  @import './tab-style.scss';
5
5
  @import './input-style.scss';
6
- @import './form-style.scss';
6
+ @import './scrollbar-style.scss';
7
7
 
8
8
  .gray {
9
9
  font-family: microsoft yahei, Arial, Helvetica, sans-serif;
@@ -76,8 +76,9 @@
76
76
  }
77
77
 
78
78
  .app-container {
79
- // padding: 20px;
80
- padding: 0px;
79
+ padding: 20px;
80
+ border-radius: 6px;
81
+ box-shadow: 0px 1px 8px 0px #00000019;
81
82
 
82
83
  .box-card {
83
84
  margin: 16px 24px;
@@ -95,26 +96,6 @@
95
96
  }
96
97
 
97
98
 
98
- .form-container {
99
- height: calc(100vh - 82px);
100
- overflow: auto;
101
- }
102
-
103
- .form-container .el-form .el-card {
104
- margin-bottom: 10px;
105
- }
106
-
107
- .form-container .el-form .el-card:last-child {
108
- margin-bottom: 0;
109
- }
110
-
111
- // 带有tab页签的表单高度
112
- .tab-form-container {
113
- height: calc(100vh - 190px);
114
- overflow: auto;
115
- }
116
-
117
-
118
99
  // 解决tab页签中内容多时没有滚动条问题
119
100
  .el-tabs__content {
120
101
  flex-grow: 1;
@@ -173,12 +154,19 @@
173
154
  .el-table th {
174
155
  padding: 0;
175
156
  }
157
+
176
158
  /**表格内容纵向分隔线去掉**/
177
- .el-table--border td, .el-table--border th, .el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed {
159
+ .el-table--border td,
160
+ .el-table--border th,
161
+ .el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed {
178
162
  border-right: 0px
179
163
  }
164
+
180
165
  /**表格标题纵向分隔线颜色调浅点儿**/
181
- .el-table--border td, .el-table--border th,.el-table--border th.is-leaf, .el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed {
166
+ .el-table--border td,
167
+ .el-table--border th,
168
+ .el-table--border th.is-leaf,
169
+ .el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed {
182
170
  border-right: 1px solid #fefefe;
183
171
  }
184
172
  }
@@ -0,0 +1,32 @@
1
+ .dark-blue {
2
+
3
+ // 滚动条基础样式
4
+ ::-webkit-scrollbar {
5
+ width: 6px; // 纵向的宽度
6
+ height: 8px; // 横向的高度
7
+ }
8
+
9
+ // 默认下滚动条的样式
10
+ ::-webkit-scrollbar-thumb {
11
+ background: #eaeaea;
12
+ border: none;
13
+ border-radius: 4px;
14
+ }
15
+
16
+ // 鼠标悬停在滚动条时的样式
17
+ ::-webkit-scrollbar-thumb:hover {
18
+ background: rgba(157, 165, 183, 0.7)
19
+ }
20
+
21
+ // 滚动条区域 空白地方的样式
22
+ ::-webkit-scrollbar-track {
23
+ background-color: transparent;
24
+ border: none;
25
+ }
26
+
27
+ // 鼠标悬停在滚动条时 滚动条区域 空白地方的样式
28
+ ::-webkit-scrollbar-track:hover {
29
+ background-color: #eaeaea;
30
+ border: none;
31
+ }
32
+ }
@@ -8,6 +8,11 @@
8
8
  transition: margin-left .28s;
9
9
  margin-left: 224px;
10
10
  position: relative;
11
+
12
+ .nav-tab {
13
+ padding-top: 5px;
14
+ padding-left: 5px;
15
+ }
11
16
  }
12
17
 
13
18
  // 侧边栏
@@ -4,6 +4,7 @@ import Vue from 'vue'
4
4
  const jwtKey = 'JWT'
5
5
  const currentUserNameKey = 'USERNAME'
6
6
  const currentUserInfoKey = 'CURRENT_USER'
7
+ const currentSystemUrlKey = 'CURRENT_SYSTEM_URL_'
7
8
 
8
9
  function getToken() {
9
10
  let token = getCookieCache(jwtKey)
@@ -96,6 +97,45 @@ function setSessionCache(key, value) {
96
97
  function removeSessionCache(key) {
97
98
  sessionStorage.removeItem(key)
98
99
  }
100
+
101
+ function getSystemCacheUrlByCode(systemCode) {
102
+ if (!systemCode) {
103
+ systemCode = Vue.prototype.customSystem
104
+ }
105
+ if (!systemCode) {
106
+ systemCode = Vue.prototype.systemCode
107
+ }
108
+ if (systemCode) {
109
+ const systemUrls = getSystemCacheUrl()
110
+ if (systemUrls) {
111
+ return systemUrls[systemCode]
112
+ }
113
+ }
114
+ }
115
+
116
+ function getSystemCacheUrl() {
117
+ let systemUrlJson = getCookieCache(currentSystemUrlKey)
118
+ if (!systemUrlJson) {
119
+ systemUrlJson = getSessionCache(currentSystemUrlKey)
120
+ }
121
+ if (systemUrlJson) {
122
+ return JSON.parse(systemUrlJson)
123
+ }
124
+ }
125
+
126
+ function setSystemCacheUrl(systemUrlObj) {
127
+ if (systemUrlObj) {
128
+ const systemUrlStr = JSON.stringify(systemUrlObj)
129
+ setSessionCache(currentSystemUrlKey, systemUrlStr)
130
+ setCookieCache(currentSystemUrlKey, systemUrlStr)
131
+ }
132
+ }
133
+
134
+ function removeSystemCacheUrl() {
135
+ removeSessionCache(currentSystemUrlKey)
136
+ removeCookieCache(currentSystemUrlKey)
137
+ }
138
+
99
139
  export default {
100
140
  getToken,
101
141
  setToken,
@@ -111,5 +151,9 @@ export default {
111
151
  removeCookieCache,
112
152
  getSessionCache,
113
153
  setSessionCache,
114
- removeSessionCache
154
+ removeSessionCache,
155
+ getSystemCacheUrlByCode,
156
+ getSystemCacheUrl,
157
+ setSystemCacheUrl,
158
+ removeSystemCacheUrl
115
159
  }
@@ -223,3 +223,31 @@ export function getTimeZone() {
223
223
  }
224
224
  return timeZone
225
225
  }
226
+
227
+ export function setCustomSystemBackendUrl(customSystem) {
228
+ // 重新缓存系统后台路径
229
+ if (!Vue.prototype.projectModel || Vue.prototype.projectModel !== 'developing.model') {
230
+ // 表示是生产环境时,需要根据数据库配置获得对应的后端地址
231
+ const backendUrl = window.$authApi.getSystemCacheUrlByCode(customSystem)
232
+ if (backendUrl) {
233
+ Vue.prototype.baseURL = getRelativeBaseUrl(backendUrl)
234
+ }
235
+ }
236
+ }
237
+
238
+ export function pushCustomControlValidatorRef(pageCode, refName, ref) {
239
+ if (!window.customValidatorRef) {
240
+ window.customValidatorRef = new Map()
241
+ }
242
+ let pageCustomControlRef = window.customValidatorRef.get(pageCode)
243
+ if (!pageCustomControlRef) {
244
+ pageCustomControlRef = new Map()
245
+ window.customValidatorRef.set(pageCode, pageCustomControlRef)
246
+ }
247
+ pageCustomControlRef.set(refName, ref)
248
+ }
249
+
250
+ export function removeCustomControlValidatorRef(pageCode, refName) {
251
+ const pageCustomControlRef = window.customValidatorRef.get(pageCode)
252
+ pageCustomControlRef.delete(refName)
253
+ }
@@ -0,0 +1,185 @@
1
+ export function getFirstDayOfSeason(date) {
2
+ var month = new Date(date).getMonth()
3
+ if (month < 3) {
4
+ date.setMonth(0)
5
+ } else if (month > 2 && month < 6) {
6
+ date.setMonth(3)
7
+ } else if (month > 5 && month < 9) {
8
+ date.setMonth(6)
9
+ } else if (month > 8 && month < 11) {
10
+ date.setMonth(9)
11
+ }
12
+ date.setDate(1)
13
+ return formatDate(date)
14
+ }
15
+ export function getWeekOfSeason(date) {
16
+ const weekTime = date.getDay() - 1
17
+ if (weekTime === -1) {
18
+ return date.getTime() - 6 * 24 * 60 * 60 * 1000
19
+ } else {
20
+ return date.getTime() - weekTime * 24 * 60 * 60 * 1000
21
+ }
22
+ }
23
+
24
+ function formatDate(time) {
25
+ const date = new Date(time) // 创建Date对象
26
+ const year = date.getFullYear() // 获取年份
27
+ const month = date.getMonth() + 1 // 获取月份,记得+1
28
+ const day = date.getDate() // 获取日期
29
+ return `${year}-${month}-${day}` // 返回格式化后的日期字符串
30
+ }
31
+
32
+ export function formatTimefn(format, dateTime) {
33
+ if (format === undefined || format === null || format === '') { return dateTime }
34
+ const nowTime = new Date(dateTime)
35
+ const year = nowTime.getFullYear()
36
+ const month = nowTime.getMonth() + 1
37
+ const date = nowTime.getDate()
38
+ const hour = nowTime.getHours()
39
+ const minute = nowTime.getMinutes()
40
+ const second = nowTime.getSeconds()
41
+
42
+ function getCharCount(char) {
43
+ var regex = new RegExp(char, 'g') // 使用g表示整个字符串都要匹配
44
+ var result = format.match(regex) // match方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
45
+ var count = !result ? 0 : result.length
46
+ return count
47
+ }
48
+ function setDateItem(oneUnit, twoUnit, itemDate) {
49
+ if (getCharCount(oneUnit) === 1) {
50
+ format = format.replace(oneUnit, itemDate)
51
+ } else if (getCharCount(oneUnit) === 2 && itemDate < 10) {
52
+ format = format.replace(twoUnit, '0' + itemDate)
53
+ } else {
54
+ format = format.replace(twoUnit, itemDate)
55
+ }
56
+ }
57
+ // 获取第几周
58
+ function getYearWeek(a, b, c) { // a为年 b为月 c为日
59
+ var date1 = new Date(a, parseInt(b) - 1, c)
60
+ var date2 = new Date(a, 0, 1)
61
+ var d = Math.round((date1.valueOf() - date2.valueOf()) / 86400000)
62
+ return Math.ceil((d + ((date2.getDay() + 1) - 1)) / 7)
63
+ }
64
+
65
+ if (format.indexOf('y') !== -1) {
66
+ format = format.replace('yyyy', year)
67
+ }
68
+
69
+ if (format.indexOf('M') !== -1) {
70
+ setDateItem('M', 'MM', month)
71
+ }
72
+
73
+ if (format.indexOf('W') !== -1) {
74
+ const week = getYearWeek(year, month, date)
75
+ setDateItem('W', 'WW', week)
76
+ }
77
+ if (format.indexOf('d') !== -1) {
78
+ setDateItem('d', 'dd', date)
79
+ }
80
+
81
+ if (format.indexOf('H') !== -1) {
82
+ setDateItem('H', 'HH', hour)
83
+ }
84
+
85
+ if (format.indexOf('m') !== -1) {
86
+ setDateItem('m', 'mm', minute)
87
+ }
88
+
89
+ if (format.indexOf('s') !== -1) {
90
+ setDateItem('s', 'ss', second)
91
+ }
92
+ return format
93
+ }
94
+
95
+ export function getDateRangeSelectorDefaultValue(stareScopeTimeType, format) {
96
+ let Staretime = ''
97
+ const endTime = new Date()
98
+ const computeTime = new Date()
99
+ if (stareScopeTimeType === 'oneYear') {
100
+ // 近一年
101
+ const yearTime = endTime.getFullYear()
102
+ computeTime.setFullYear(yearTime)
103
+ computeTime.setMonth(0)
104
+ Staretime = computeTime.setDate(1)
105
+ } else if (stareScopeTimeType === 'twoYear') {
106
+ // 近两年
107
+ const yearTime = endTime.getFullYear() - 1
108
+ computeTime.setFullYear(yearTime)
109
+ computeTime.setMonth(0)
110
+ Staretime = computeTime.setDate(1)
111
+ } else if (stareScopeTimeType === 'oneQuarter') {
112
+ // 近一个季度
113
+ Staretime = new Date(getFirstDayOfSeason(computeTime))
114
+ } else if (stareScopeTimeType === 'twoQuarter') {
115
+ // 近两个季度
116
+ const timeMonth = computeTime.getMonth()
117
+ if (endTime.getMonth < 3) {
118
+ const yeaNum = computeTime.getFullYear() - 1
119
+ computeTime.setFullYear(yeaNum)
120
+ computeTime.setMonth(10)
121
+ } else {
122
+ computeTime.setMonth(timeMonth - 3)
123
+ }
124
+ Staretime = new Date(getFirstDayOfSeason(computeTime))
125
+ } else if (stareScopeTimeType === 'threeQuarter') {
126
+ // 近三个季度
127
+ const timeMonth = computeTime.getMonth()
128
+ if (endTime.getMonth < 8 && endTime.getMonth > 2) {
129
+ const yeaNum = computeTime.getFullYear() - 1
130
+ computeTime.setFullYear(yeaNum)
131
+ computeTime.setMonth(8)
132
+ } else if (endTime.getMonth < 3) {
133
+ const yeaNum = computeTime.getFullYear() - 1
134
+ computeTime.setFullYear(yeaNum)
135
+ computeTime.setMonth(5)
136
+ } else {
137
+ computeTime.setMonth(timeMonth - 6)
138
+ }
139
+ Staretime = new Date(getFirstDayOfSeason(computeTime))
140
+ } else if (stareScopeTimeType === 'oneMonth') {
141
+ // 近一个月
142
+ Staretime = computeTime.setDate(1)
143
+ } else if (stareScopeTimeType === 'twoMonth') {
144
+ // 近两个月
145
+ const monthNum = endTime.getMonth() - 1
146
+ if (monthNum > -1) {
147
+ computeTime.setMonth(monthNum)
148
+ } else {
149
+ const yeartime = endTime.getFullYear() - 1
150
+ computeTime.setFullYear(yeartime)
151
+ computeTime.setMonth(11)
152
+ }
153
+ Staretime = computeTime.setDate(1)
154
+ } else if (stareScopeTimeType === 'threeMonth') {
155
+ // 近三个月
156
+ const monthTime = endTime.getMonth() - 2
157
+ if (monthTime > -1) {
158
+ computeTime.setMonth(monthTime)
159
+ } else {
160
+ const yeartime = endTime.getFullYear() - 1
161
+ computeTime.setFullYear(yeartime)
162
+ computeTime.setMonth(10)
163
+ }
164
+ Staretime = computeTime.setDate(1)
165
+ } else if (stareScopeTimeType === 'oneWeek') {
166
+ // 近一周
167
+ const MondayTime = getWeekOfSeason(computeTime)
168
+ Staretime = new Date(MondayTime)
169
+ } else if (stareScopeTimeType === 'twoWeek') {
170
+ // 近两周
171
+ const MondayTime = getWeekOfSeason(computeTime)
172
+ Staretime = new Date(MondayTime - 7 * 24 * 60 * 60 * 1000)
173
+ } else if (stareScopeTimeType === 'threeWeek') {
174
+ // 近三周
175
+ const MondayTime = getWeekOfSeason(computeTime)
176
+ Staretime = new Date(MondayTime - 14 * 24 * 60 * 60 * 1000)
177
+ }
178
+ if (Staretime) {
179
+ const startTimeTemp = new Date(Staretime).getTime()
180
+ const endTimeTemp = endTime.getTime()
181
+ const startDate = formatTimefn(format, startTimeTemp)
182
+ const endDate = formatTimefn(format, endTimeTemp)
183
+ return { startTimeTemp, endTimeTemp, startDate, endDate }
184
+ }
185
+ }
@@ -14,12 +14,13 @@ import {
14
14
  } from './util'
15
15
  import {
16
16
  getRelativeBaseUrl,
17
- getTimeZone
17
+ getTimeZone,
18
+ setCustomSystemBackendUrl
18
19
  } from './common-util'
19
20
  // 创建axios实例
20
21
  const service = axios.create({
21
22
  // baseURL: process.env.VUE_APP_BASE_API, // api 的 base_url
22
- timeout: 150000, // 请求超时时间
23
+ timeout: 300000, // 请求超时时间
23
24
  withCredentials: true
24
25
  })
25
26
 
@@ -38,6 +39,8 @@ service.interceptors.request.use(
38
39
  const customSystem = Vue.prototype.customSystem
39
40
  if (customSystem) {
40
41
  config.headers['customSystem'] = customSystem
42
+ // 重新缓存系统后台路径
43
+ setCustomSystemBackendUrl(customSystem)
41
44
  }
42
45
  if (Vue.prototype.baseURL) {
43
46
  config.baseURL = getRelativeBaseUrl(Vue.prototype.baseURL)
package/src/utils/util.js CHANGED
@@ -274,12 +274,14 @@ function getValueByField(entityData, fieldName) {
274
274
  // 表示是子表字段
275
275
  value = getSubEntityValue(entityData, fieldName)
276
276
  } else {
277
- value = entityData[fieldName]
277
+ value = entityData[fieldName.toUpperCase()]
278
+ if (value === undefined) {
279
+ value = entityData[fieldName.toLowerCase()]
280
+ }
278
281
  }
279
282
  return value
280
283
  }
281
284
  }
282
-
283
285
  function getSubEntityValue(entityData, fieldName) {
284
286
  let value = null
285
287
  let subEntityData = entityData
@@ -452,11 +454,11 @@ export function getEntityFieldValueWithOutCase(entity, prop) {
452
454
  */
453
455
  export function getEntityFieldValue(entity, prop, isLowerCase) {
454
456
  let value = getEntityFieldValueWithCase(entity, prop)
455
- if (value === undefined) {
457
+ if (value === undefined || value === null) {
456
458
  // 兼容mysql数据库
457
459
  value = getEntityFieldValueWithCase(entity, prop.toLowerCase())
458
460
  }
459
- if (value === undefined && isLowerCase === undefined) {
461
+ if (value === undefined || value === null && isLowerCase === undefined) {
460
462
  // 兼容oracle数据库
461
463
  value = getEntityFieldValueWithCase(entity, prop.toUpperCase())
462
464
  }
@@ -509,7 +511,7 @@ function getParentModelPropWithCase(prop, parentObj) {
509
511
  if (!parentObj) {
510
512
  parentObj = {}
511
513
  }
512
- if (!parentObj[prop]) {
514
+ if (!parentObj[prop] && !parentObj[prop.toUpperCase()]) {
513
515
  parentObj[prop] = {}
514
516
  }
515
517
  return parentObj[prop]
@@ -43,7 +43,9 @@ export default {
43
43
  let width = '130px'
44
44
  if (hasChildren) {
45
45
  // 当是父菜单时,为了使后面的三角能显示出来,需要将宽度设小点
46
- width = '100px'
46
+ // width = '100px'
47
+ // boe 反应左侧菜单栏无法展示全部文字,调整
48
+ width = '130px'
47
49
  }
48
50
  if (isRoot) {
49
51
  // 是否是根目录,没有子菜单时
@@ -52,7 +54,7 @@ export default {
52
54
  </div>)
53
55
  } else {
54
56
  // 有子菜单时
55
- vnodes.push(<div v-slot:title style='display: inline-block'>
57
+ vnodes.push(<div slot='title' style='display: inline-block'>
56
58
  <div title={title} style={'display: inline-block;width:' + width + ';overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:keep-all;'}>{(title)}</div>
57
59
  </div>)
58
60
  }
@@ -9,7 +9,7 @@
9
9
  </template>
10
10
 
11
11
  <el-submenu v-else :index="resolvePath(item.code,item.path,item.pageType)" :show-timeout="0" :hide-timeout="50" popper-class="sidebar-container-popper">
12
- <template v-slot:title>
12
+ <template slot="title">
13
13
  <item :icon="item.iconName" :title="getI18nName(item)" :has-children="item.children.length > 0?true:false" />
14
14
  </template>
15
15
 
@@ -38,7 +38,6 @@ import AppLink from './Link'
38
38
  import Vue from 'vue'
39
39
  import tabJs from '../../../api/tab'
40
40
  import { getI18nName } from '../../../utils/menu'
41
- // import { SidebarItemChild } from './SidebarItemChild.vue'
42
41
  export default {
43
42
  name: 'SidebarItem',
44
43
  components: { Item, AppLink },