n20-common-lib 2.9.13 → 2.9.14

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 (130) hide show
  1. package/nstc-g6/components/NstcCharts/NstcCharts.vue +16 -8
  2. package/package.json +8 -5
  3. package/src/assets/css/approve-card.scss +1 -1
  4. package/src/assets/css/date-quarter.scss +8 -0
  5. package/src/assets/css/expandable-pane.scss +7 -0
  6. package/src/assets/css/file-upload-table.scss +2 -3
  7. package/src/assets/css/font-icon.scss +3 -1
  8. package/src/assets/css/message.scss +6 -6
  9. package/src/assets/css/normalize.scss +4 -1
  10. package/src/assets/css/table.scss +16 -11
  11. package/src/assets/iconFont/SIMSUN.ttf +0 -0
  12. package/src/assets/iconFont/font.css +4 -0
  13. package/src/components/AIButton/index.vue +101 -0
  14. package/src/components/AdvancedFilter/formItemRender.vue +7 -4
  15. package/src/components/AdvancedFilter/index.vue +6 -7
  16. package/src/components/Anchor/index.vue +1 -0
  17. package/src/components/ApprovalButtons/index.vue +404 -82
  18. package/src/components/ApprovalButtons/indexApp.vue +1102 -0
  19. package/src/components/ApprovalButtons/selectSpr.vue +128 -0
  20. package/src/components/ApprovalButtons/setCarboncopyProp.vue +1 -1
  21. package/src/components/ApprovalButtons/setRejectToProp.vue +45 -5
  22. package/src/components/ApprovalButtons/showAppOpi.vue +265 -8
  23. package/src/components/ApprovalButtons/showOtherAttrNew.vue +161 -0
  24. package/src/components/ApprovalCard/index.vue +190 -44
  25. package/src/components/ApprovalCard/indexApp.vue +592 -0
  26. package/src/components/ApprovalRecord/approvalImgPro/child.vue +1 -1
  27. package/src/components/ApprovalRecord/approvalImgPro/index.vue +42 -5
  28. package/src/components/ApprovalRecord/index.vue +23 -6
  29. package/src/components/ApprovalRecord/indexApp.vue +79 -0
  30. package/src/components/AttachmentPass/index.vue +286 -0
  31. package/src/components/Button/button-group.vue +3 -1
  32. package/src/components/CascaderArea/index.vue +5 -6
  33. package/src/components/DatePicker/por.vue +31 -1
  34. package/src/components/DateSelect/quarterDatePicker.vue +23 -1
  35. package/src/components/Descriptions/index.vue +7 -3
  36. package/src/components/Dialog/index.vue +4 -0
  37. package/src/components/Diff/index.vue +4 -2
  38. package/src/components/DynamicField/DynamicField.vue +29 -6
  39. package/src/components/DynamicField/DynamicFieldMixin.js +13 -5
  40. package/src/components/DynamicField/DynamicFieldOptions.vue +135 -62
  41. package/src/components/DynamicField/DynamicTable.vue +11 -1
  42. package/src/components/DynamicField/contentPop.vue +110 -0
  43. package/src/components/DynamicField/tableList.vue +5 -1
  44. package/src/components/DynamicField/tableView.vue +143 -0
  45. package/src/components/ECharts/index.vue +15 -9
  46. package/src/components/Expandable/main.vue +17 -2
  47. package/src/components/FileImport/index.vue +4 -5
  48. package/src/components/FileUploadTable/FileUploadTableV3.vue +937 -0
  49. package/src/components/FileUploadTable/aiCheckDialog.vue +139 -0
  50. package/src/components/FileUploadTable/index.vue +251 -33
  51. package/src/components/FileUploadTable/jytg.svg +6 -0
  52. package/src/components/FileUploadTable/wsc.svg +3 -0
  53. package/src/components/FileUploadTable/ysc.svg +3 -0
  54. package/src/components/HandlingAdvice/index.vue +191 -0
  55. package/src/components/InputAccount/index.vue +105 -0
  56. package/src/components/InputNumber/index.vue +16 -4
  57. package/src/components/InputNumber/numberRange.vue +14 -0
  58. package/src/components/InputSearch/index.vue +8 -0
  59. package/src/components/Layout/HeaderWrap/changePwd.vue +50 -23
  60. package/src/components/Layout/HeaderWrap/index.vue +2 -2
  61. package/src/components/Layout/HeaderWrap/indexN.vue +296 -119
  62. package/src/components/Layout/SubContent/index.vue +45 -14
  63. package/src/components/Layout/indexN.vue +26 -5
  64. package/src/components/LoginTemporary/form.vue +126 -34
  65. package/src/components/LoginTemporary/index.vue +14 -3
  66. package/src/components/LoginTemporary/indexN.vue +35 -13
  67. package/src/components/Preview/index.vue +199 -0
  68. package/src/components/SelectDatePickerPro/customDatePicker.vue +7 -0
  69. package/src/components/SelectDatePickerPro/halfYearPicker.vue +165 -0
  70. package/src/components/SelectDatePickerPro/index.vue +44 -4
  71. package/src/components/SelectDatePickerPro/quarterDatePicker.vue +32 -10
  72. package/src/components/SelectTree/index.vue +10 -4
  73. package/src/components/SelectTree/pro.vue +3 -0
  74. package/src/components/ShowColumn/index copy 2.vue +545 -0
  75. package/src/components/ShowColumn/index copy.vue +566 -0
  76. package/src/components/ShowColumn/index.vue +11 -7
  77. package/src/components/Statis/statisItem.vue +8 -7
  78. package/src/components/Table/filters.js +13 -0
  79. package/src/components/Table/index.vue +4 -4
  80. package/src/components/TablePro/filterContent.vue +18 -8
  81. package/src/components/TablePro/index.js +41 -1
  82. package/src/components/TablePro/index.vue +117 -6
  83. package/src/components/TableProOperateColumn/OperateBtns.vue +11 -53
  84. package/src/components/TableProOperateColumn/OperateBtns_copy.vue +141 -0
  85. package/src/components/TableProOperateColumn/childrenOperateBtn.vue +108 -0
  86. package/src/components/TableProOperateColumn/index.vue +3 -6
  87. package/src/components/TableSetSize/index.vue +1 -1
  88. package/src/components/Tree/index.vue +21 -5
  89. package/src/components/Upload/index.vue +25 -10
  90. package/src/components/Upload/uploadMsg.vue +30 -25
  91. package/src/components/operatingStatus/index.vue +3 -4
  92. package/src/directives/VTitle/index.js +15 -5
  93. package/src/directives/watermark/index.js +140 -56
  94. package/src/i18n.json +146 -18
  95. package/src/index.js +31 -3
  96. package/src/plugins/Sign/CaMap.js +47 -8
  97. package/src/plugins/Sign/Itrus/index.js +1 -1
  98. package/src/plugins/Sign/Itrus/sign_3720.js +2 -1
  99. package/src/plugins/Sign/NetSM3/index.js +20 -11
  100. package/src/plugins/Sign/NetV3/index.js +163 -22
  101. package/src/plugins/Sign/SkfSign/index.js +55 -52
  102. package/src/plugins/Sign/bjca/index.js +229 -9
  103. package/src/plugins/Sign/hnca/index.js +5064 -0
  104. package/src/plugins/Sign/index.js +155 -103
  105. package/src/plugins/Sign/kySign/base64.js +160 -0
  106. package/src/plugins/Sign/kySign/hex.js +92 -0
  107. package/src/plugins/Sign/kySign/index.js +186 -0
  108. package/src/plugins/Sign/kySign/skf.js +937 -0
  109. package/src/plugins/Sign/kySign/test.html +463 -0
  110. package/src/plugins/Sign/sdca/index.js +73 -0
  111. package/src/plugins/Sign/sign.js +72 -52
  112. package/src/plugins/Sign/signV3/InfosecNetSignCNGAgent.min.js +1 -0
  113. package/src/plugins/Sign/signV3/sign.js +187 -0
  114. package/src/plugins/Sign/sign_back.js +172 -0
  115. package/src/utils/accountFormat.js +7 -0
  116. package/src/utils/asyncGetRelaNos.js +79 -46
  117. package/src/utils/axios.js +3 -5
  118. package/src/utils/i18n/index.js +1 -1
  119. package/src/utils/importGlobal.js +23 -12
  120. package/style/fonts/SIMSUN.5e0c362c.ttf +0 -0
  121. package/style/index.css +2 -2
  122. package/theme/blue.css +2 -2
  123. package/theme/cctcRed.css +2 -2
  124. package/theme/fonts/SIMSUN.5e0c362c.ttf +0 -0
  125. package/theme/green.css +2 -2
  126. package/theme/lightBlue.css +2 -2
  127. package/theme/orange.css +2 -2
  128. package/theme/purple.css +2 -2
  129. package/theme/red.css +2 -2
  130. package/theme/yellow.css +2 -2
@@ -5,7 +5,9 @@
5
5
  :class="show && 'header-wrap-show'"
6
6
  :style="{
7
7
  '--header-color': headerColor,
8
- background: `${headerBgUrl ? 'url(' + headerBgUrl + ') ' : ''} ${headerBgColor ? headerBgColor : ''}`
8
+ background: `${headerBgUrl ? 'url(' + headerBgUrl + ') ' : ''} ${
9
+ headerBgColor ? headerBgColor : ''
10
+ }`
9
11
  }"
10
12
  >
11
13
  <img
@@ -19,15 +21,17 @@
19
21
  />
20
22
  <!-- <el-divider class="header-wrap-logo-hr" direction="vertical" /> -->
21
23
  <div class="m-l-m"></div>
22
- <h3 :class="['header-title ', showNavigation ? 'm-r-s' : 'm-r-auto']">{{ headerTitle | $l }}</h3>
23
- <div v-if="showNavigation" class="m-r-auto p-a-ss pointer header_change_system_box" @click="handleChangeSystem">
24
- <svg class="icon" aria-hidden="true">
25
- <use xlink:href="#n20-icon-caidan"></use>
26
- </svg>
24
+ <h3 :class="['header-title ', showNavigation ? 'm-r-s' : 'm-r-auto']">
25
+ {{ headerTitle | $lc }}
26
+ </h3>
27
+ <div
28
+ v-if="showNavigation"
29
+ class="m-r-auto p-a-ss pointer header_change_system_box"
30
+ @click="handleChangeSystem"
31
+ >
32
+ <i class="n20-icon-caidan color-primary"></i>
27
33
  <span class="m-l-ss f-s-b color-primary">{{ $lc('导航') }}</span>
28
- <svg class="icon m-l-ss f-s-s" aria-hidden="true">
29
- <use xlink:href="#n20-icon-lujing"></use>
30
- </svg>
34
+ <i class="n20-icon-xiangxia1 color-primary" style="font-size: 14px"></i>
31
35
  </div>
32
36
 
33
37
  <span v-if="byLabel && !inBack" class="header-uif-by">{{ byLabel }}</span>
@@ -35,25 +39,40 @@
35
39
  <slot name="header-ectad">
36
40
  <span v-if="ectad" class="f-s-s">
37
41
  <span class="m-r-ss">
38
- {{ '用户' | $lc }}: <span class="color-666">{{ userInfo.userName }}</span>
42
+ {{ '用户' | $lc }}:
43
+ <span class="color-666">{{ userInfo.userName }}</span>
39
44
  </span>
40
45
  <span class="m-r-ss b-center">
41
46
  {{ '角色' | $lc }}:
42
- <span v-title:br="rolesList.map((el) => el.name)" class="text-ellipsis color-666" style="max-width: 150px">{{
43
- rolesList.map((el) => el.name).join(',')
44
- }}</span>
47
+ <span
48
+ v-title:br="rolesList.map((el) => el.name)"
49
+ class="text-ellipsis color-666"
50
+ style="max-width: 150px"
51
+ >{{ rolesList.map((el) => el.name).join(',') }}</span
52
+ >
45
53
  </span>
46
54
  <span>
47
- {{ '单位' | $lc }}: <span class="color-666">{{ userInfo.companyName }}</span>
55
+ {{ '单位' | $lc }}:
56
+ <span class="color-666">{{ userInfo.companyName }}</span>
48
57
  </span>
49
58
  </span>
50
59
  </slot>
51
60
  <operatingStatus v-if="operationStatus" />
52
- <el-button v-if="inBack" class="header-hdyy f-s-s" plain round size="mini" @click="toSystem">{{
53
- '回到应用' | $lc
54
- }}</el-button>
61
+ <el-button
62
+ v-if="inBack"
63
+ class="header-hdyy f-s-s"
64
+ plain
65
+ round
66
+ size="mini"
67
+ @click="toSystem"
68
+ >{{ '回到应用' | $lc }}</el-button
69
+ >
55
70
  <!-- YSCW-end -->
56
- <el-dropdown v-if="!hideLang && langMap && langMap.length > 1" class="m-l-lg" @command="setLang">
71
+ <el-dropdown
72
+ v-if="!hideLang && langMap && langMap.length > 1"
73
+ class="m-l-lg"
74
+ @command="setLang"
75
+ >
57
76
  <i
58
77
  v-if="['th', 'vi'].includes(langVal)"
59
78
  style="font-size: 20px"
@@ -74,26 +93,42 @@
74
93
 
75
94
  <el-dropdown-menu slot="dropdown">
76
95
  <el-dropdown-item v-if="langMap.includes('zh-cn')" command="zh-cn"
77
- ><i class="iconfont icon-zhongwen f-s-icon"></i>{{ '简体中文' | $lc }}</el-dropdown-item
96
+ ><i class="iconfont icon-zhongwen f-s-icon"></i
97
+ >{{ '简体中文' | $lc }}</el-dropdown-item
78
98
  >
79
99
  <el-dropdown-item v-if="langMap.includes('zh-hk')" command="zh-hk"
80
- ><i class="iconfont icon-fanti f-s-icon"></i>{{ '繁体中文' | $lc }}</el-dropdown-item
100
+ ><i class="iconfont icon-fanti f-s-icon"></i
101
+ >{{ '繁体中文' | $lc }}</el-dropdown-item
81
102
  >
82
103
  <el-dropdown-item v-if="langMap.includes('en')" command="en"
83
- ><i class="iconfont icon-yuyanqiehuan f-s-icon"></i>{{ '英文' | $lc }}</el-dropdown-item
104
+ ><i class="iconfont icon-yuyanqiehuan f-s-icon"></i
105
+ >{{ '英文' | $lc }}</el-dropdown-item
84
106
  >
85
107
  <el-dropdown-item v-if="langMap.includes('th')" command="th"
86
- ><i class="n20-icon-yuyanqiehuan f-s-icon"></i>{{ '泰文' | $lc }}</el-dropdown-item
108
+ ><i class="n20-icon-yuyanqiehuan f-s-icon"></i
109
+ >{{ '泰文' | $lc }}</el-dropdown-item
87
110
  >
88
111
  <el-dropdown-item v-if="langMap.includes('vi')" command="vi"
89
- ><i class="n20-icon-a-yuenanyuyanqiehuan_huaban1 f-s-icon"></i>{{ '越南语' | $lc }}</el-dropdown-item
112
+ ><i class="n20-icon-a-yuenanyuyanqiehuan_huaban1 f-s-icon"></i
113
+ >{{ '越南语' | $lc }}</el-dropdown-item
90
114
  >
91
115
  </el-dropdown-menu>
92
116
  </el-dropdown>
93
117
 
94
- <el-badge :hidden="noticeNum + afficheNum === 0" :value="noticeNum + afficheNum">
95
- <span v-if="!noticeDrw" v-popover:noticePop class="news-btn iconfont icon-xiaoxi header-color"></span>
96
- <span v-else class="news-btn iconfont icon-xiaoxi header-color" @click="customOpt.noticeDrawer"></span>
118
+ <el-badge
119
+ :hidden="noticeNum + afficheNum === 0"
120
+ :value="noticeNum + afficheNum"
121
+ >
122
+ <span
123
+ v-if="!noticeDrw"
124
+ v-popover:noticePop
125
+ class="news-btn iconfont icon-xiaoxi header-color"
126
+ ></span>
127
+ <span
128
+ v-else
129
+ class="news-btn iconfont icon-xiaoxi header-color"
130
+ @click="customOpt.noticeDrawer"
131
+ ></span>
97
132
  </el-badge>
98
133
 
99
134
  <el-dropdown
@@ -106,15 +141,23 @@
106
141
  @visible-change="setUserVisible"
107
142
  >
108
143
  <div class="flex-box">
109
- <img v-popover:by_popover class="user-info-btn header-color" :src="headerUserUrl" />
144
+ <img
145
+ v-popover:by_popover
146
+ class="user-info-btn header-color"
147
+ :src="headerUserUrl"
148
+ />
110
149
  <div
111
150
  v-title:br="rolesList.map((el) => el.name).join(',')"
112
- :style="{ width: (userInfo?.companyName?.length * 0.86 || 4) + 'em', overflow: 'hidden' }"
151
+ :style="{
152
+ width: (userInfo?.companyName?.length * 0.86 || 4) + 'em',
153
+ overflow: 'hidden'
154
+ }"
113
155
  class="pointer flex-column flex-c"
114
156
  @click="handleUser"
115
157
  >
116
158
  <div class="font-size-small text-ellipsis">
117
- {{ userNo }}{{ rolesList.length ? '/' : '' }}{{ rolesList.map((el) => el.name).join('/') }}
159
+ {{ userNo }}{{ rolesList.length ? '/' : ''
160
+ }}{{ rolesList.map((el) => el.name).join('/') }}
118
161
  </div>
119
162
  <div class="companyClass">{{ userInfo.companyName }}</div>
120
163
  </div>
@@ -126,7 +169,14 @@
126
169
  :class="{ 'user-info-drop_height': !inBack }"
127
170
  class="user-info-drop-menu-new"
128
171
  >
129
- <div class="uif-user-w" :style="{ backgroundImage: headerUserInfoBg ? `url(${headerUserInfoBg})` : undefined }">
172
+ <div
173
+ class="uif-user-w"
174
+ :style="{
175
+ backgroundImage: headerUserInfoBg
176
+ ? `url(${headerUserInfoBg})`
177
+ : undefined
178
+ }"
179
+ >
130
180
  <div class="uif-img-w">
131
181
  <img class="_img" :src="headerUserUrl" />
132
182
  <upload
@@ -143,16 +193,27 @@
143
193
  ><span v-if="userInfo.userName">({{ userInfo.userName }})</span>
144
194
  </div>
145
195
  <div class="uif-gs text-ellipsis">{{ userInfo.companyName }}</div>
146
- <div class="uif-js text-ellipsis">{{ rolesList.map((el) => el.name).join('/') }}</div>
196
+ <div class="uif-js text-ellipsis">
197
+ {{ rolesList.map((el) => el.name).join('/') }}
198
+ </div>
147
199
  <div class="uif-by">
148
200
  <template v-if="!byEV">
149
201
  <span>{{ byLabel }}</span>
150
202
  <span class="_edit el-icon-edit" @click="byEShow"></span>
151
203
  </template>
152
- <el-input v-else v-model="byLabel" size="mini" style="width: 92%" @blur="editByLabel" />
204
+ <el-input
205
+ v-else
206
+ v-model="byLabel"
207
+ size="mini"
208
+ style="width: 92%"
209
+ @blur="editByLabel"
210
+ />
153
211
  </div>
154
212
  </div>
155
- <el-dropdown-item v-if="customOpt.updateCert" command="updateCertificate">
213
+ <el-dropdown-item
214
+ v-if="customOpt.updateCert"
215
+ command="updateCertificate"
216
+ >
156
217
  <div class="flex-box flex-v">
157
218
  <span>{{ '更新证书' | $lc }}</span>
158
219
  <i class="el-icon-caret-right m-l-auto m-r-0"></i>
@@ -164,7 +225,10 @@
164
225
  <i class="el-icon-caret-right m-l-auto m-r-0"></i>
165
226
  </div>
166
227
  </el-dropdown-item>
167
- <el-dropdown-item v-if="customOpt.personalInfo" command="changeUserInfo">
228
+ <el-dropdown-item
229
+ v-if="customOpt.personalInfo"
230
+ command="changeUserInfo"
231
+ >
168
232
  <div class="flex-box flex-v">
169
233
  <span>{{ '修改人员信息' | $lc }} </span>
170
234
  <i class="el-icon-caret-right m-l-auto m-r-0"></i>
@@ -203,7 +267,13 @@
203
267
  </div>
204
268
  </el-dropdown-item>
205
269
  <el-dropdown-item _command="systemSet">
206
- <el-dropdown trigger="hover" size="medium" placement="left-start" style="width: 100%" @command="setUserFn">
270
+ <el-dropdown
271
+ trigger="hover"
272
+ size="medium"
273
+ placement="left-start"
274
+ style="width: 100%"
275
+ @command="setUserFn"
276
+ >
207
277
  <div class="flex-box flex-v" @click.stop>
208
278
  <span>{{ '系统设置' | $lc }}</span>
209
279
  <i class="el-icon-caret-right m-l-auto m-r-0"></i>
@@ -237,14 +307,25 @@
237
307
  </div>
238
308
  </el-dropdown-item>
239
309
  <!-- 系统切换 -->
240
- <el-dropdown-item v-if="systemChange && systemList && systemList.length">
241
- <el-dropdown trigger="hover" size="medium" placement="left-start" style="width: 100%">
310
+ <el-dropdown-item
311
+ v-if="systemChange && systemList && systemList.length"
312
+ >
313
+ <el-dropdown
314
+ trigger="hover"
315
+ size="medium"
316
+ placement="left-start"
317
+ style="width: 100%"
318
+ >
242
319
  <div class="flex-box flex-v">
243
320
  <span>{{ '系统切换' | $lc }}</span>
244
321
  <i class="el-icon-caret-right m-l-auto m-r-0"></i>
245
322
  </div>
246
323
  <el-dropdown-menu slot="dropdown">
247
- <el-dropdown-item v-for="(item, i) in systemList" :key="i" @click.native="clickSystemChange(item)">
324
+ <el-dropdown-item
325
+ v-for="(item, i) in systemList"
326
+ :key="i"
327
+ @click.native="clickSystemChange(item)"
328
+ >
248
329
  <span>{{ item.NAME }}</span>
249
330
  </el-dropdown-item>
250
331
  </el-dropdown-menu>
@@ -257,11 +338,18 @@
257
338
  <i class="el-icon-caret-right m-l-auto m-r-0"></i>
258
339
  </div>
259
340
  </el-dropdown-item>
260
- <div class="uif-ydn p-r-m">{{ '已登录' | $lc }}:{{ durationTime }}</div>
341
+ <div class="uif-ydn p-r-m">
342
+ {{ '已登录' | $lc }}:{{ durationTime }}
343
+ </div>
261
344
  </el-dropdown-menu>
262
345
  </el-dropdown>
263
346
 
264
- <dialogWrap :title="'主题设置' | $lc" :visible.sync="themeV" append-to-body width="432px">
347
+ <dialogWrap
348
+ :title="'主题设置' | $lc"
349
+ :visible.sync="themeV"
350
+ append-to-body
351
+ width="432px"
352
+ >
265
353
  <div style="min-height: 114px">
266
354
  <span
267
355
  v-for="item in themeList"
@@ -284,10 +372,25 @@
284
372
  <changePwd :visible.sync="cpwdV" />
285
373
  </dialogWrap>
286
374
  <!-- 消息/通知 -->
287
- <el-popover v-if="!noticeDrw" ref="noticePop" trigger="click" width="400" @after-enter="$refs.noticeContent.show()">
288
- <noticePop ref="noticeContent" :notice-num="noticeNum" :affiche-num="afficheNum" />
375
+ <el-popover
376
+ v-if="!noticeDrw"
377
+ ref="noticePop"
378
+ trigger="click"
379
+ width="400"
380
+ @after-enter="$refs.noticeContent.show()"
381
+ >
382
+ <noticePop
383
+ ref="noticeContent"
384
+ :notice-num="noticeNum"
385
+ :affiche-num="afficheNum"
386
+ />
289
387
  </el-popover>
290
- <el-dialog :visible.sync="scV" :title="'身份切换' | $lc" append-to-body width="600px">
388
+ <el-dialog
389
+ :visible.sync="scV"
390
+ :title="'身份切换' | $lc"
391
+ append-to-body
392
+ width="600px"
393
+ >
291
394
  <switchUser :visible.sync="scV" :user-no="userNo" />
292
395
  </el-dialog>
293
396
  </div>
@@ -315,7 +418,8 @@ dayjs.extend(duration)
315
418
 
316
419
  import { siteTree2menus } from '../../LoginTemporary/utils'
317
420
 
318
- const prefix = window.__INJECTED_PUBLIC_PATH_BY_QIANKUN__ || process.env.BASE_URL || '/'
421
+ const prefix =
422
+ window.__INJECTED_PUBLIC_PATH_BY_QIANKUN__ || process.env.BASE_URL || '/'
319
423
  const SYSTEM_LIST = [
320
424
  {
321
425
  NO: 'CSZHYW',
@@ -396,6 +500,14 @@ const SYSTEM_LIST = [
396
500
  LOGIN_MODE: [],
397
501
  LOGIN_FORGET_MODE: [],
398
502
  OPEN: false
503
+ },
504
+ {
505
+ NO: 'YFW',
506
+ NAME: $lc('云服务平台'),
507
+ ICON: undefined,
508
+ LOGIN_MODE: [],
509
+ LOGIN_FORGET_MODE: [],
510
+ OPEN: false
399
511
  }
400
512
  ]
401
513
 
@@ -485,48 +597,65 @@ export default {
485
597
  }
486
598
  },
487
599
  created() {
488
- getJsonc('/server-config.jsonc').then(({ _layoutData = {}, loginSetting }) => {
489
- let _loginSetting = loginSetting || _layoutData.loginSetting
490
- this.headerLogoUrl = realUrl(_layoutData.headerLogoUrl)
491
- this.headerLogoWidth = _layoutData.headerLogoWidth
492
- this.headerLogoHeight = _layoutData.headerLogoHeight
493
- this.headerTitle = _layoutData.headerTitle
494
- this.headerColor = _layoutData.headerColor
495
- this.headerBgUrl = realUrl(_layoutData.headerBgUrl)
496
- this.headerBgColor = _layoutData.headerBgColor
497
- this.hideHelpDoc = _layoutData.hideHelpDoc
498
- this.hideLang = _layoutData.hideLang
499
- this.langMap = _layoutData.lang
500
- this.hideDowApp = _layoutData.hideDowApp
501
- this.hideTheme = _layoutData.hideTheme
502
- this.showNavigation = _layoutData.showNavigation
503
- this.systemChange = _layoutData.systemChange
504
- if (this.langMap && this.langMap.lang && this.langMap.lang.length > 0) {
505
- window.localStorage.setItem('pageLang', this.jsonData?.lang[0])
506
- }
507
- if (_loginSetting !== 'JSON') {
508
- this.headerTitle = sessionStorage.getItem('headerTitle') || this.headerTitle
509
- }
510
- if (this.systemChange) {
511
- this.systemList = JSON.parse(localStorage.getItem('SYSTEM_LIST')) || SYSTEM_LIST
512
- }
513
- this.show = true
600
+ getJsonc('/server-config.jsonc').then(
601
+ ({ _layoutData = {}, loginSetting, langConf = {} }) => {
602
+ let _loginSetting = loginSetting || _layoutData.loginSetting
603
+ this.headerLogoUrl = realUrl(_layoutData.headerLogoUrl)
604
+ this.headerLogoWidth = _layoutData.headerLogoWidth
605
+ this.headerLogoHeight = _layoutData.headerLogoHeight
606
+ this.headerTitle = _layoutData.headerTitle
607
+ this.headerColor = _layoutData.headerColor
608
+ this.headerBgUrl = realUrl(_layoutData.headerBgUrl)
609
+ this.headerBgColor = _layoutData.headerBgColor
610
+ this.hideHelpDoc = _layoutData.hideHelpDoc
611
+ this.hideLang = (_layoutData.hideLang || langConf.hideLang) ?? false
612
+ this.langMap = _layoutData.lang ||
613
+ langConf.lang || ['zh-cn', 'zh-hk', 'en']
614
+ this.hideDowApp = _layoutData.hideDowApp
615
+ this.hideTheme = _layoutData.hideTheme
616
+ this.showNavigation = _layoutData.showNavigation
617
+ this.systemChange = _layoutData.systemChange
618
+ if (this.langMap?.lang?.length > 0) {
619
+ let pageLang = window.localStorage.getItem('pageLang')
620
+ if (!pageLang) {
621
+ window.localStorage.setItem('pageLang', this.jsonData?.lang[0])
622
+ Cookies.set(
623
+ 'language',
624
+ ['zh-cn', 'zh-hk'].includes(this.jsonData?.lang[0])
625
+ ? 'zh'
626
+ : this.jsonData?.lang[0],
627
+ {
628
+ expires: 365
629
+ }
630
+ )
631
+ }
632
+ }
633
+ if (_loginSetting !== 'JSON') {
634
+ this.headerTitle =
635
+ sessionStorage.getItem('headerTitle') || this.headerTitle
636
+ }
637
+ if (this.systemChange) {
638
+ this.systemList =
639
+ JSON.parse(localStorage.getItem('SYSTEM_LIST')) || SYSTEM_LIST
640
+ }
641
+ this.show = true
514
642
 
515
- this.getUserImg().catch(() => {
516
- this.headerUserUrl = realUrl(_layoutData.headerUserUrl)
517
- })
643
+ this.getUserImg().catch(() => {
644
+ this.headerUserUrl = realUrl(_layoutData.headerUserUrl)
645
+ })
518
646
 
519
- this.getByLabel().then(() => {
520
- let notFirstShowBy = sessionStorage.getItem('notFirstShowBy')
521
- if (!notFirstShowBy) {
522
- this.byV = true
523
- setTimeout(() => {
524
- this.byV = false
525
- }, 6000)
526
- sessionStorage.setItem('notFirstShowBy', true)
527
- }
528
- })
529
- })
647
+ this.getByLabel().then(() => {
648
+ let notFirstShowBy = sessionStorage.getItem('notFirstShowBy')
649
+ if (!notFirstShowBy) {
650
+ this.byV = true
651
+ setTimeout(() => {
652
+ this.byV = false
653
+ }, 6000)
654
+ sessionStorage.setItem('notFirstShowBy', true)
655
+ }
656
+ })
657
+ }
658
+ )
530
659
  this.getNNum()
531
660
  document.addEventListener('visibilitychange', this.getNNum)
532
661
  window.addEventListener('message', this.updateNotice)
@@ -590,7 +719,8 @@ export default {
590
719
  let { base = '/' } = this.$router.options
591
720
  if (!/\/$/.test(base)) base += '/'
592
721
 
593
- window.location.href = window.location.origin + base + 'dashboard/workplace'
722
+ window.location.href =
723
+ window.location.origin + base + 'dashboard/workplace'
594
724
  },
595
725
  async getTreeList(item) {
596
726
  let { data } = await axios.get(
@@ -615,12 +745,16 @@ export default {
615
745
  },
616
746
  // 跳转打开人员页面
617
747
  goMdmUser() {
618
- axios.get(`/bems/user/mdmWfPersonalMid/validateOne/${this.userNo}`).then(({ code, msg }) => {
619
- if (code !== 200) {
620
- return this.$message.error(msg)
621
- }
622
- linkPush(`/user-web/user/editUserInfo?uno=${this.userNo}&oneself=true`)
623
- })
748
+ axios
749
+ .get(`/bems/user/mdmWfPersonalMid/validateOne/${this.userNo}`)
750
+ .then(({ code, msg }) => {
751
+ if (code !== 200) {
752
+ return this.$message.error(msg)
753
+ }
754
+ linkPush(
755
+ `/user-web/user/editUserInfo?uno=${this.userNo}&oneself=true`
756
+ )
757
+ })
624
758
  },
625
759
  setUserVisible(v) {
626
760
  if (v) {
@@ -628,14 +762,19 @@ export default {
628
762
  let loginTime = sessionStorage.getItem('loginTime')
629
763
  if (loginTime) {
630
764
  this.setDurationTime(loginTime)
631
- this.durationTime_timeout = setInterval(() => this.setDurationTime(loginTime), 500)
765
+ this.durationTime_timeout = setInterval(
766
+ () => this.setDurationTime(loginTime),
767
+ 500
768
+ )
632
769
  }
633
770
  } else {
634
771
  clearInterval(this.durationTime_timeout)
635
772
  }
636
773
  },
637
774
  setDurationTime(loginTime) {
638
- this.durationTime = dayjs.duration(Date.now() - loginTime).format(`HH${$lc('小时')}mm${$lc('分')}ss${$lc('秒')}`)
775
+ this.durationTime = dayjs
776
+ .duration(Date.now() - loginTime)
777
+ .format(`HH${$lc('小时')}mm${$lc('分')}ss${$lc('秒')}`)
639
778
  },
640
779
  // 打开帮助文档
641
780
  openHelp() {
@@ -644,7 +783,11 @@ export default {
644
783
  return false
645
784
  }
646
785
  axios
647
- .get(`/bems/1.0/userManual`, {}, { responseType: 'blob', loading: false })
786
+ .get(
787
+ `/bems/1.0/userManual`,
788
+ {},
789
+ { responseType: 'blob', loading: false }
790
+ )
648
791
  .then((res) => {
649
792
  let url = window.URL.createObjectURL(res)
650
793
  let win = window.open(url, $lc('帮助文档'))
@@ -732,18 +875,24 @@ export default {
732
875
  this.langVal = val
733
876
 
734
877
  window.localStorage.setItem('pageLang', this.langVal)
735
- Cookies.set('language', ['zh-cn', 'zh-hk'].includes(this.langVal) ? 'zh' : this.langVal, { expires: 365 })
878
+ Cookies.set(
879
+ 'language',
880
+ ['zh-cn', 'zh-hk'].includes(this.langVal) ? 'zh' : this.langVal,
881
+ { expires: 365 }
882
+ )
736
883
  auth.setReqLang()
737
884
  let form = {
738
885
  resType: '1',
739
886
  systemNo: localStorage.getItem('pageInSystemNo') || undefined
740
887
  }
741
- axios.get('/bems/1.0/menuTree/tree', form, { loading: false }).then(({ data }) => {
742
- data || (data = [])
743
- let layoutMenus = siteTree2menus(data)
744
- sessionStorage.setItem('menuTree', JSON.stringify(layoutMenus))
745
- window.location.reload()
746
- })
888
+ axios
889
+ .get('/bems/1.0/menuTree/tree', form, { loading: false })
890
+ .then(({ data }) => {
891
+ data || (data = [])
892
+ let layoutMenus = siteTree2menus(data)
893
+ sessionStorage.setItem('menuTree', JSON.stringify(layoutMenus))
894
+ window.location.reload()
895
+ })
747
896
  },
748
897
  setTheme({ value }) {
749
898
  this.themeVal = value
@@ -793,11 +942,15 @@ export default {
793
942
  },
794
943
  logOut() {
795
944
  // alert('退出登录')
796
- this.$confirm($lc('退出将清除未保存的临时操作,请确认是否继续?'), $lc('退出提示'), {
797
- confirmButtonText: $lc('确定'),
798
- cancelButtonText: $lc('取消'),
799
- type: 'warning'
800
- }).then(() => {
945
+ this.$confirm(
946
+ $lc('退出将清除未保存的临时操作,请确认是否继续?'),
947
+ $lc('退出提示'),
948
+ {
949
+ confirmButtonText: $lc('确定'),
950
+ cancelButtonText: $lc('取消'),
951
+ type: 'warning'
952
+ }
953
+ ).then(() => {
801
954
  if (this.beforeLogout) {
802
955
  let F = this.beforeLogout(this.logoutA)
803
956
  F.then && F.then(this.logoutA)
@@ -808,7 +961,11 @@ export default {
808
961
  },
809
962
  logoutA() {
810
963
  axios
811
- .delete('/bems/prod_1.0/uas/api/authorization/logout', {}, { loading: false, noMsg: true })
964
+ .delete(
965
+ '/bems/prod_1.0/uas/api/authorization/logout',
966
+ {},
967
+ { loading: false, noMsg: true }
968
+ )
812
969
  .then(() => {
813
970
  if (this.afterLogout) {
814
971
  let After = this.afterLogout()
@@ -823,10 +980,14 @@ export default {
823
980
  },
824
981
  // 检查是否代理中
825
982
  async getProxyAuthIing() {
826
- let res = await axios.get(`/bems/prod_1.0/user/wfUserProxyAuth/check/ongoing/${this.userNo}`, null, {
827
- loading: false,
828
- noMsg: true
829
- })
983
+ let res = await axios.get(
984
+ `/bems/prod_1.0/user/wfUserProxyAuth/check/ongoing/${this.userNo}`,
985
+ null,
986
+ {
987
+ loading: false,
988
+ noMsg: true
989
+ }
990
+ )
830
991
 
831
992
  this.underway = !!res.data
832
993
  },
@@ -840,7 +1001,8 @@ export default {
840
1001
  let { base = '/' } = this.$router.options
841
1002
  if (!/\/$/.test(base)) base += '/'
842
1003
 
843
- window.location.href = window.location.origin + base + 'dashboard/workplace'
1004
+ window.location.href =
1005
+ window.location.origin + base + 'dashboard/workplace'
844
1006
  },
845
1007
  toSystem() {
846
1008
  window.sessionStorage.setItem('pageInType', 'toFront')
@@ -848,7 +1010,8 @@ export default {
848
1010
  let { base = '/' } = this.$router.options
849
1011
  if (!/\/$/.test(base)) base += '/'
850
1012
 
851
- window.location.href = window.location.origin + base + 'dashboard/workplace'
1013
+ window.location.href =
1014
+ window.location.origin + base + 'dashboard/workplace'
852
1015
  },
853
1016
  getUserImg() {
854
1017
  return this.$axios
@@ -875,7 +1038,11 @@ export default {
875
1038
  // this.byLabel = value
876
1039
 
877
1040
  this.$axios
878
- .get(`/bems/portal/portalUserIndexConfig/saveConfigSign/${this.byLabel}`, null, { loading: false })
1041
+ .get(
1042
+ `/bems/portal/portalUserIndexConfig/saveConfigSign/${this.byLabel}`,
1043
+ null,
1044
+ { loading: false }
1045
+ )
879
1046
  .then(() => {
880
1047
  this.byEV = false
881
1048
  })
@@ -885,7 +1052,9 @@ export default {
885
1052
  },
886
1053
  getByLabel() {
887
1054
  return this.$axios
888
- .get(`/bems/portal/portalUserIndexConfig/getConfigByUno`, null, { loading: false })
1055
+ .get(`/bems/portal/portalUserIndexConfig/getConfigByUno`, null, {
1056
+ loading: false
1057
+ })
889
1058
  .then((res) => {
890
1059
  let data = res.data || {}
891
1060
  data.signature && (this.byLabel = data.signature)
@@ -902,14 +1071,22 @@ export default {
902
1071
  clearTimeout(this.getNNumTimeOut)
903
1072
  if (!document.hidden) {
904
1073
  axios
905
- .get('/bems/wkb/messageCenter/getUnReadTotal/' + this.userNo, null, { loading: false, noMsg: true })
1074
+ .get('/bems/wkb/messageCenter/getUnReadTotal/' + this.userNo, null, {
1075
+ loading: false,
1076
+ noMsg: true
1077
+ })
906
1078
  .then((res) => {
907
1079
  this.noticeNum = res.data.data || 0
908
1080
  })
909
1081
 
910
- axios.get('/bems/1.0/notice/notReadCount', null, { loading: false, noMsg: true }).then((res) => {
911
- this.afficheNum = res.data || 0
912
- })
1082
+ axios
1083
+ .get('/bems/1.0/notice/notReadCount', null, {
1084
+ loading: false,
1085
+ noMsg: true
1086
+ })
1087
+ .then((res) => {
1088
+ this.afficheNum = res.data || 0
1089
+ })
913
1090
  this.getNNumTimeOut = setTimeout(this.getNNum, 1000 * 60 * 3)
914
1091
  }
915
1092
  }