eoss-ui 0.6.84 → 0.6.86

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 (306) hide show
  1. package/lib/button-group.js +105 -93
  2. package/lib/button.js +105 -93
  3. package/lib/calogin.js +338 -326
  4. package/lib/checkbox-group.js +105 -93
  5. package/lib/data-table-form.js +105 -93
  6. package/lib/data-table.js +105 -93
  7. package/lib/date-picker.js +105 -93
  8. package/lib/dialog.js +105 -93
  9. package/lib/eoss-ui.common.js +1169 -1185
  10. package/lib/flow-group.js +112 -95
  11. package/lib/flow-list.js +186 -174
  12. package/lib/flow.js +465 -417
  13. package/lib/form.js +227 -264
  14. package/lib/handle-user.js +105 -93
  15. package/lib/handler.js +105 -93
  16. package/lib/icon.js +105 -93
  17. package/lib/icons.js +1 -1
  18. package/lib/index.js +1 -1
  19. package/lib/input-number.js +105 -93
  20. package/lib/input.js +105 -93
  21. package/lib/login.js +112 -97
  22. package/lib/main.js +237 -225
  23. package/lib/nav.js +105 -93
  24. package/lib/page.js +105 -93
  25. package/lib/pagination.js +105 -93
  26. package/lib/player.js +105 -93
  27. package/lib/qr-code.js +118 -106
  28. package/lib/radio-group.js +105 -93
  29. package/lib/retrial-auth.js +105 -93
  30. package/lib/select-ganged.js +105 -93
  31. package/lib/select.js +105 -93
  32. package/lib/selector-panel.js +105 -93
  33. package/lib/selector.js +123 -99
  34. package/lib/sizer.js +105 -93
  35. package/lib/steps.js +105 -93
  36. package/lib/switch.js +105 -93
  37. package/lib/table-form.js +167 -190
  38. package/lib/tabs.js +105 -93
  39. package/lib/theme-chalk/base.css +1 -1
  40. package/lib/theme-chalk/fonts/iconfont.ttf +0 -0
  41. package/lib/theme-chalk/fonts/iconfont.woff +0 -0
  42. package/lib/theme-chalk/icon.css +1 -1
  43. package/lib/theme-chalk/index.css +1 -1
  44. package/lib/theme-chalk/main.css +1 -1
  45. package/lib/theme-chalk/menu.css +1 -1
  46. package/lib/theme-chalk/simplicity.css +1 -1
  47. package/lib/theme-chalk/sizer.css +1 -1
  48. package/lib/theme-chalk/upload.css +1 -1
  49. package/lib/tips.js +105 -93
  50. package/lib/tree-group.js +105 -93
  51. package/lib/tree.js +105 -93
  52. package/lib/upload.js +105 -93
  53. package/lib/utils/util.js +105 -93
  54. package/lib/wujie.js +105 -93
  55. package/lib/wxlogin.js +105 -93
  56. package/package.json +160 -160
  57. package/packages/.DS_Store +0 -0
  58. package/packages/autocomplete/.DS_Store +0 -0
  59. package/packages/button/index.js +5 -5
  60. package/packages/button/src/main.vue +418 -418
  61. package/packages/button-group/index.js +5 -5
  62. package/packages/button-group/src/main.vue +298 -298
  63. package/packages/calendar/index.js +5 -5
  64. package/packages/calogin/.DS_Store +0 -0
  65. package/packages/calogin/index.js +5 -5
  66. package/packages/calogin/src/main.vue +412 -412
  67. package/packages/calogin/src/plugin.js +915 -915
  68. package/packages/card/index.js +5 -5
  69. package/packages/card/src/main.vue +156 -156
  70. package/packages/cascader/index.js +5 -5
  71. package/packages/cascader/src/main.vue +168 -168
  72. package/packages/checkbox-group/index.js +5 -5
  73. package/packages/checkbox-group/src/main.vue +333 -333
  74. package/packages/clients/index.js +5 -5
  75. package/packages/clients/src/main.vue +151 -151
  76. package/packages/data-table/index.js +5 -5
  77. package/packages/data-table/src/children.vue +39 -39
  78. package/packages/data-table/src/column.vue +989 -989
  79. package/packages/data-table/src/main.vue +1822 -1822
  80. package/packages/data-table/src/sizer.vue +195 -195
  81. package/packages/data-table-form/index.js +5 -5
  82. package/packages/data-table-form/src/checkbox.vue +101 -101
  83. package/packages/data-table-form/src/colgroup.vue +17 -17
  84. package/packages/data-table-form/src/main.vue +181 -181
  85. package/packages/data-table-form/src/radio.vue +65 -65
  86. package/packages/data-table-form/src/table.vue +233 -233
  87. package/packages/data-table-form/src/tbody.vue +336 -336
  88. package/packages/data-table-form/src/thead.vue +68 -68
  89. package/packages/date-picker/.DS_Store +0 -0
  90. package/packages/date-picker/index.js +5 -5
  91. package/packages/date-picker/src/.DS_Store +0 -0
  92. package/packages/date-picker/src/main.vue +236 -236
  93. package/packages/dialog/index.js +5 -5
  94. package/packages/enable-drag/index.js +5 -5
  95. package/packages/enterprise/index.js +5 -5
  96. package/packages/enterprise/src/main.vue +66 -66
  97. package/packages/error-page/index.js +5 -5
  98. package/packages/error-page/src/main.vue +44 -44
  99. package/packages/flow/.DS_Store +0 -0
  100. package/packages/flow/index.js +5 -5
  101. package/packages/flow/src/.DS_Store +0 -0
  102. package/packages/flow/src/component/Circulate.vue +370 -370
  103. package/packages/flow/src/component/CommonOpinions.vue +364 -364
  104. package/packages/flow/src/component/CustomPreset.vue +322 -322
  105. package/packages/flow/src/component/FileList.vue +99 -99
  106. package/packages/flow/src/component/Preset.vue +255 -255
  107. package/packages/flow/src/component/SendMsg.vue +241 -241
  108. package/packages/flow/src/component/TimeLimit.vue +190 -190
  109. package/packages/flow/src/component/taskUnionExamine.vue +639 -627
  110. package/packages/flow/src/form.vue +121 -121
  111. package/packages/flow/src/freeStartFlow.vue +2843 -2843
  112. package/packages/flow/src/main.vue +3654 -3650
  113. package/packages/flow/src/processForm.vue +1245 -1245
  114. package/packages/flow/src/processReject.vue +295 -295
  115. package/packages/flow/src/reset.vue +918 -918
  116. package/packages/flow/src/selectUser.vue +22 -8
  117. package/packages/flow/src/startTaskRead.vue +683 -683
  118. package/packages/flow/src/supervise.vue +152 -151
  119. package/packages/flow/src/table.vue +58 -58
  120. package/packages/flow-group/index.js +5 -5
  121. package/packages/flow-group/src/main.vue +692 -688
  122. package/packages/flow-list/.DS_Store +0 -0
  123. package/packages/flow-list/index.js +5 -5
  124. package/packages/flow-list/src/main.vue +1770 -1770
  125. package/packages/form/.DS_Store +0 -0
  126. package/packages/form/index.js +5 -5
  127. package/packages/form/src/main.vue +3814 -3797
  128. package/packages/form/src/table.vue +1508 -1502
  129. package/packages/handle-user/index.js +5 -5
  130. package/packages/handle-user/src/main.vue +138 -138
  131. package/packages/handler/index.js +5 -5
  132. package/packages/handler/src/main.vue +493 -493
  133. package/packages/icon/index.js +5 -5
  134. package/packages/icon/src/main.vue +101 -101
  135. package/packages/icons/index.js +5 -5
  136. package/packages/icons/src/icon.json +1 -1
  137. package/packages/icons/src/main.vue +81 -81
  138. package/packages/input/index.js +5 -5
  139. package/packages/input/src/main.vue +356 -356
  140. package/packages/input-number/index.js +5 -5
  141. package/packages/input-number/src/main.vue +106 -106
  142. package/packages/label/index.js +5 -5
  143. package/packages/label/src/main.vue +457 -457
  144. package/packages/layout/index.js +5 -5
  145. package/packages/layout/src/item.vue +152 -152
  146. package/packages/layout/src/main.vue +31 -31
  147. package/packages/login/.DS_Store +0 -0
  148. package/packages/login/index.js +5 -5
  149. package/packages/login/src/main.vue +1998 -2001
  150. package/packages/login/src/resetPassword.vue +562 -562
  151. package/packages/main/.DS_Store +0 -0
  152. package/packages/main/index.js +5 -5
  153. package/packages/main/src/.DS_Store +0 -0
  154. package/packages/main/src/default/message.vue +249 -249
  155. package/packages/main/src/default/notice.vue +157 -157
  156. package/packages/main/src/default/userinfo.vue +503 -503
  157. package/packages/main/src/public/online.vue +89 -89
  158. package/packages/main/src/public/search.vue +458 -458
  159. package/packages/main/src/public/settings.vue +221 -221
  160. package/packages/main/src/simplicity/apps.vue +388 -388
  161. package/packages/main/src/simplicity/avatar.vue +82 -82
  162. package/packages/main/src/simplicity/handler.vue +259 -259
  163. package/packages/main/src/simplicity/index.vue +2102 -2102
  164. package/packages/main/src/simplicity/lists.vue +84 -84
  165. package/packages/main/src/simplicity/menu-list.vue +135 -135
  166. package/packages/main/src/simplicity/message.vue +259 -259
  167. package/packages/main/src/simplicity/notice.vue +190 -190
  168. package/packages/main/src/simplicity/router-page.vue +45 -45
  169. package/packages/main/src/simplicity/sub-menu.vue +264 -264
  170. package/packages/main/src/simplicity/user.vue +260 -260
  171. package/packages/main/src/simplicity/userinfo.vue +312 -312
  172. package/packages/menu/.DS_Store +0 -0
  173. package/packages/menu/index.js +5 -5
  174. package/packages/menu/src/main.vue +584 -584
  175. package/packages/nav/index.js +5 -5
  176. package/packages/nav/src/main.vue +351 -351
  177. package/packages/notify/index.js +5 -5
  178. package/packages/notify/src/main.vue +538 -538
  179. package/packages/page/index.js +5 -5
  180. package/packages/page/src/main.vue +167 -167
  181. package/packages/pagination/index.js +5 -5
  182. package/packages/pagination/src/main.vue +96 -96
  183. package/packages/player/index.js +5 -5
  184. package/packages/player/src/main.vue +194 -194
  185. package/packages/qr-code/index.js +5 -5
  186. package/packages/qr-code/src/main.vue +170 -170
  187. package/packages/radio-group/index.js +6 -6
  188. package/packages/radio-group/src/main.vue +319 -319
  189. package/packages/retrial-auth/index.js +5 -5
  190. package/packages/retrial-auth/src/main.vue +280 -280
  191. package/packages/scrollbar/.DS_Store +0 -0
  192. package/packages/select/.DS_Store +0 -0
  193. package/packages/select/index.js +5 -5
  194. package/packages/select/src/main.vue +778 -778
  195. package/packages/select-ganged/index.js +5 -5
  196. package/packages/select-ganged/src/main.vue +724 -724
  197. package/packages/selector/.DS_Store +0 -0
  198. package/packages/selector/index.js +5 -5
  199. package/packages/selector/src/main.vue +745 -729
  200. package/packages/selector-panel/.DS_Store +0 -0
  201. package/packages/selector-panel/index.js +5 -5
  202. package/packages/selector-panel/src/main.vue +1027 -1027
  203. package/packages/selector-panel/src/selection.vue +170 -170
  204. package/packages/selector-panel/src/tree.vue +129 -129
  205. package/packages/sizer/index.js +5 -5
  206. package/packages/sizer/src/main.vue +254 -254
  207. package/packages/steps/index.js +5 -5
  208. package/packages/steps/src/main.vue +181 -181
  209. package/packages/switch/index.js +5 -5
  210. package/packages/switch/src/main.vue +154 -154
  211. package/packages/table-form/index.js +5 -5
  212. package/packages/tabs/index.js +5 -5
  213. package/packages/tabs/src/main.vue +788 -788
  214. package/packages/tabs-panel/index.js +5 -5
  215. package/packages/tabs-panel/src/main.vue +29 -29
  216. package/packages/theme-chalk/lib/base.css +1 -1
  217. package/packages/theme-chalk/lib/fonts/iconfont.ttf +0 -0
  218. package/packages/theme-chalk/lib/fonts/iconfont.woff +0 -0
  219. package/packages/theme-chalk/lib/icon.css +1 -1
  220. package/packages/theme-chalk/lib/index.css +1 -1
  221. package/packages/theme-chalk/lib/main.css +1 -1
  222. package/packages/theme-chalk/lib/menu.css +1 -1
  223. package/packages/theme-chalk/lib/simplicity.css +1 -1
  224. package/packages/theme-chalk/lib/sizer.css +1 -1
  225. package/packages/theme-chalk/lib/upload.css +1 -1
  226. package/packages/theme-chalk/src/.DS_Store +0 -0
  227. package/packages/theme-chalk/src/base.scss +261 -261
  228. package/packages/theme-chalk/src/button-group.scss +176 -176
  229. package/packages/theme-chalk/src/button.scss +24 -24
  230. package/packages/theme-chalk/src/calendar.scss +113 -113
  231. package/packages/theme-chalk/src/card.scss +99 -99
  232. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  233. package/packages/theme-chalk/src/clients.scss +87 -87
  234. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  235. package/packages/theme-chalk/src/data-table.scss +293 -293
  236. package/packages/theme-chalk/src/date-picker.scss +7 -7
  237. package/packages/theme-chalk/src/dialog.scss +77 -77
  238. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  239. package/packages/theme-chalk/src/enterprise.scss +5 -5
  240. package/packages/theme-chalk/src/error-page.scss +18 -18
  241. package/packages/theme-chalk/src/flow-group.scss +110 -110
  242. package/packages/theme-chalk/src/flow-list.scss +39 -39
  243. package/packages/theme-chalk/src/flow.scss +348 -348
  244. package/packages/theme-chalk/src/fonts/iconfont.ttf +0 -0
  245. package/packages/theme-chalk/src/fonts/iconfont.woff +0 -0
  246. package/packages/theme-chalk/src/form.scss +499 -499
  247. package/packages/theme-chalk/src/handle-user.scss +40 -40
  248. package/packages/theme-chalk/src/handler.scss +143 -143
  249. package/packages/theme-chalk/src/icon.scss +1817 -1805
  250. package/packages/theme-chalk/src/icons.scss +99 -99
  251. package/packages/theme-chalk/src/input.scss +9 -9
  252. package/packages/theme-chalk/src/label.scss +24 -24
  253. package/packages/theme-chalk/src/layout.scss +46 -46
  254. package/packages/theme-chalk/src/login.scss +984 -984
  255. package/packages/theme-chalk/src/main.scss +663 -663
  256. package/packages/theme-chalk/src/menu.scss +222 -222
  257. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  258. package/packages/theme-chalk/src/nav.scss +111 -111
  259. package/packages/theme-chalk/src/page.scss +3 -3
  260. package/packages/theme-chalk/src/pagination.scss +29 -29
  261. package/packages/theme-chalk/src/player.scss +9 -9
  262. package/packages/theme-chalk/src/qr-code.scss +17 -17
  263. package/packages/theme-chalk/src/radio-group.scss +9 -9
  264. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  265. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  266. package/packages/theme-chalk/src/select.scss +8 -8
  267. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  268. package/packages/theme-chalk/src/selector.scss +91 -91
  269. package/packages/theme-chalk/src/simplicity.scss +1355 -1355
  270. package/packages/theme-chalk/src/sizer.scss +36 -36
  271. package/packages/theme-chalk/src/steps.scss +88 -88
  272. package/packages/theme-chalk/src/switch.scss +3 -3
  273. package/packages/theme-chalk/src/table-form.scss +1 -1
  274. package/packages/theme-chalk/src/tabs.scss +87 -87
  275. package/packages/theme-chalk/src/tips.scss +7 -7
  276. package/packages/theme-chalk/src/toolbar.scss +179 -179
  277. package/packages/theme-chalk/src/tree-group.scss +72 -72
  278. package/packages/theme-chalk/src/tree.scss +165 -165
  279. package/packages/theme-chalk/src/upload.scss +172 -172
  280. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  281. package/packages/tips/index.js +5 -5
  282. package/packages/tips/src/main.vue +141 -141
  283. package/packages/toolbar/index.js +5 -5
  284. package/packages/toolbar/src/main.vue +430 -430
  285. package/packages/tree/index.js +5 -5
  286. package/packages/tree-group/index.js +5 -5
  287. package/packages/upload/.DS_Store +0 -0
  288. package/packages/upload/index.js +5 -5
  289. package/packages/upload/src/main.vue +1348 -1348
  290. package/packages/upload/src/picture.js +15 -15
  291. package/packages/wujie/index.js +5 -5
  292. package/packages/wujie/src/main.vue +145 -145
  293. package/packages/wxlogin/index.js +5 -5
  294. package/packages/wxlogin/src/main.vue +128 -128
  295. package/src/.DS_Store +0 -0
  296. package/src/config/api.js +294 -294
  297. package/src/config/image.js +2 -2
  298. package/src/index.js +163 -163
  299. package/src/utils/.DS_Store +0 -0
  300. package/src/utils/bus.js +3 -3
  301. package/src/utils/date-util.js +312 -312
  302. package/src/utils/http.js +50 -50
  303. package/src/utils/rules.js +18 -18
  304. package/src/utils/store.js +21 -21
  305. package/src/utils/util.js +141 -129
  306. package/src/utils/webSocket.js +107 -107
@@ -1,312 +1,312 @@
1
- <template>
2
- <es-form
3
- ref="form"
4
- :model="model"
5
- :contents="forms"
6
- class="es-user-info"
7
- :autocomplete="false"
8
- @submit="handleFormSubmit"
9
- >
10
- <template slot="other">
11
- <slot></slot>
12
- </template>
13
- </es-form>
14
- </template>
15
- <script>
16
- import { updateUserInfo } from 'eoss-ui/src/config/api.js';
17
- import util from 'eoss-ui/src/utils/util';
18
-
19
- export default {
20
- name: 'UserInfo',
21
- props: {
22
- showNotify: {
23
- type: Boolean,
24
- default: true
25
- },
26
- secret: {
27
- type: Boolean,
28
- default: true
29
- },
30
- contents: Array,
31
- value: {
32
- type: Object,
33
- default() {
34
- return {};
35
- }
36
- }
37
- },
38
- data() {
39
- return {
40
- model: this.value
41
- };
42
- },
43
- computed: {
44
- forms() {
45
- return this.contents
46
- ? this.contents
47
- : [
48
- {
49
- name: 'orgName',
50
- label: '所属机构',
51
- type: 'text',
52
- disabled: true,
53
- col: 6
54
- },
55
- {
56
- name: 'depName',
57
- label: '所属部门',
58
- type: 'text',
59
- disabled: true,
60
- col: 6
61
- },
62
- {
63
- name: 'idCard',
64
- label: '身份证号',
65
- type: 'text',
66
- disabled: true,
67
- col: 6
68
- },
69
- {
70
- name: 'outCode',
71
- label: '工号',
72
- type: 'text',
73
- disabled: true,
74
- col: 6
75
- },
76
- {
77
- name: 'phone',
78
- placeholder: '联系电话',
79
- label: '联系电话',
80
- type: 'text',
81
- col: 6
82
- },
83
- {
84
- name: 'email',
85
- placeholder: '电子邮箱',
86
- label: '电子邮箱',
87
- type: 'text',
88
- rules: {
89
- type: 'email',
90
- message: '请输入正确的邮箱地址',
91
- trigger: 'blur'
92
- },
93
- col: 6
94
- },
95
- {
96
- name: 'officeTel',
97
- placeholder: '座机号',
98
- label: '座机号',
99
- type: 'text',
100
- rules: {
101
- type: 'telephone'
102
- //message: '请输入正确的邮箱地址',
103
- //trigger: 'blur'
104
- },
105
- col: 6
106
- },
107
- {
108
- name: 'oldpassword',
109
- placeholder: '旧密码',
110
- label: '旧密码',
111
- type: 'text',
112
- col: 6,
113
- rules:
114
- this.model.password || this.model.repassword
115
- ? {
116
- required: true,
117
- message: '请输入旧密码'
118
- }
119
- : {},
120
- events: {
121
- change: () => {
122
- if (
123
- !this.model.repassword &&
124
- !this.model.oldpassword &&
125
- !this.model.repassword
126
- ) {
127
- this.$refs.form.clearValidate();
128
- }
129
- }
130
- }
131
- },
132
- {
133
- name: 'password',
134
- placeholder: '新密码',
135
- label: '新密码',
136
- type: 'text',
137
- col: 6,
138
- rules: [
139
- this.model.repassword || this.model.oldpassword
140
- ? {
141
- required: true,
142
- message: '请输入新密码'
143
- }
144
- : {},
145
- {
146
- pattern: this.checkPassword,
147
- message: this.checkPasswordMsg
148
- ? this.checkPasswordMsg
149
- : '密码格式不合法',
150
- trigger: 'blur'
151
- }
152
- ],
153
- events: {
154
- change: () => {
155
- if (
156
- !this.model.repassword &&
157
- !this.model.oldpassword &&
158
- !this.model.repassword
159
- ) {
160
- this.$refs.form.clearValidate();
161
- }
162
- }
163
- }
164
- },
165
- {
166
- name: 'repassword',
167
- placeholder: '确认新密码',
168
- label: '确认新密码',
169
- type: 'text',
170
- col: 6,
171
- rules: [
172
- this.model.password || this.model.oldpassword
173
- ? {
174
- required: true,
175
- message: '请再次输入新密码'
176
- }
177
- : {},
178
- { validator: this.repassword, trigger: 'blur' },
179
- this.checkPassword
180
- ? {
181
- pattern: this.checkPassword,
182
- message: this.checkPasswordMsg
183
- ? this.checkPasswordMsg
184
- : '密码格式不合法',
185
- trigger: 'blur'
186
- }
187
- : {}
188
- ],
189
- events: {
190
- change: () => {
191
- if (
192
- !this.model.repassword &&
193
- !this.model.oldpassword &&
194
- !this.model.repassword
195
- ) {
196
- this.$refs.form.clearValidate();
197
- }
198
- }
199
- }
200
- }
201
- ];
202
- }
203
- },
204
- created() {},
205
- mounted() {},
206
- methods: {
207
- handleFormSubmit() {
208
- let initLogin = util.getStorage('initLogin');
209
- initLogin && (initLogin = JSON.parse(initLogin));
210
- util
211
- .ajax({
212
- url: updateUserInfo,
213
- params: {
214
- email: this.model.email,
215
- officeTel: this.model.officeTel,
216
- phone: this.model.phone,
217
- oldPassword:
218
- this.secret &&
219
- initLogin &&
220
- initLogin.secret &&
221
- this.model.oldpassword
222
- ? util.esmEncrypt({
223
- data: this.model.oldpassword,
224
- key: initLogin.secret
225
- })
226
- : this.model.oldpassword,
227
- password:
228
- this.secret &&
229
- initLogin &&
230
- initLogin.secret &&
231
- this.model.password
232
- ? util.esmEncrypt({
233
- data: this.model.password,
234
- key: initLogin.secret
235
- })
236
- : this.model.password
237
- }
238
- })
239
- .then((res) => {
240
- if (res.rCode === 0) {
241
- if (this.model.oldpassword && this.model.password) {
242
- this.$confirm('密码修改成功,请重新登录!', '提示', {
243
- confirmButtonText: '确定',
244
- cancelButtonText: '取消',
245
- closeOnClickModal: false,
246
- type: 'warning'
247
- })
248
- .then(() => {
249
- const loginPage =
250
- util.getStorage('login') || util.getStorage('loginPage');
251
- try {
252
- if (loginPage) {
253
- let src;
254
- if (!util.startWith(loginPage, ['http', '/'], true)) {
255
- let pathname = util.win.top.location.pathname;
256
- if (pathname !== '/') {
257
- pathname = pathname.split('/');
258
- pathname.splice(pathname.length - 1);
259
- pathname = pathname.join('/');
260
- src = pathname + '/' + loginPage.replace('./', '');
261
- } else {
262
- src = pathname + loginPage.replace('./', '');
263
- }
264
- } else {
265
- src = loginPage;
266
- }
267
- util.win.top.location.href = src;
268
- } else if (
269
- util.win.top.location.href.indexOf('main.html') > -1
270
- ) {
271
- util.win.top.location.href = './login.html';
272
- } else {
273
- const hash = util.win.top.location.hash;
274
- if (hash) {
275
- const len = util.win.top.location.href.indexOf(hash);
276
- util.win.top.location.href =
277
- util.win.location.href.slice(0, len) + '#/login';
278
- } else {
279
- util.win.top.location.href = '/login.html';
280
- }
281
- }
282
- } catch (error) {
283
- util.win.top.postMessage({ type: 1 }, '*');
284
- }
285
- })
286
- .catch((e) => {});
287
- } else {
288
- this.$message({
289
- message: res.msg,
290
- type: 'success',
291
- onClose: () => {
292
- this.$emit('success', this.model);
293
- }
294
- });
295
- }
296
- } else {
297
- let msg = res.msg || '系统错误,请联系管理员!';
298
- this.$message.error(msg);
299
- }
300
- });
301
- },
302
- repassword(rule, value, callback) {
303
- if (this.model.oldpassword && this.model.password && value) {
304
- util.identical({ value: [value, this.model.password], callback });
305
- } else {
306
- callback();
307
- return true;
308
- }
309
- }
310
- }
311
- };
312
- </script>
1
+ <template>
2
+ <es-form
3
+ ref="form"
4
+ :model="model"
5
+ :contents="forms"
6
+ class="es-user-info"
7
+ :autocomplete="false"
8
+ @submit="handleFormSubmit"
9
+ >
10
+ <template slot="other">
11
+ <slot></slot>
12
+ </template>
13
+ </es-form>
14
+ </template>
15
+ <script>
16
+ import { updateUserInfo } from 'eoss-ui/src/config/api.js';
17
+ import util from 'eoss-ui/src/utils/util';
18
+
19
+ export default {
20
+ name: 'UserInfo',
21
+ props: {
22
+ showNotify: {
23
+ type: Boolean,
24
+ default: true
25
+ },
26
+ secret: {
27
+ type: Boolean,
28
+ default: true
29
+ },
30
+ contents: Array,
31
+ value: {
32
+ type: Object,
33
+ default() {
34
+ return {};
35
+ }
36
+ }
37
+ },
38
+ data() {
39
+ return {
40
+ model: this.value
41
+ };
42
+ },
43
+ computed: {
44
+ forms() {
45
+ return this.contents
46
+ ? this.contents
47
+ : [
48
+ {
49
+ name: 'orgName',
50
+ label: '所属机构',
51
+ type: 'text',
52
+ disabled: true,
53
+ col: 6
54
+ },
55
+ {
56
+ name: 'depName',
57
+ label: '所属部门',
58
+ type: 'text',
59
+ disabled: true,
60
+ col: 6
61
+ },
62
+ {
63
+ name: 'idCard',
64
+ label: '身份证号',
65
+ type: 'text',
66
+ disabled: true,
67
+ col: 6
68
+ },
69
+ {
70
+ name: 'outCode',
71
+ label: '工号',
72
+ type: 'text',
73
+ disabled: true,
74
+ col: 6
75
+ },
76
+ {
77
+ name: 'phone',
78
+ placeholder: '联系电话',
79
+ label: '联系电话',
80
+ type: 'text',
81
+ col: 6
82
+ },
83
+ {
84
+ name: 'email',
85
+ placeholder: '电子邮箱',
86
+ label: '电子邮箱',
87
+ type: 'text',
88
+ rules: {
89
+ type: 'email',
90
+ message: '请输入正确的邮箱地址',
91
+ trigger: 'blur'
92
+ },
93
+ col: 6
94
+ },
95
+ {
96
+ name: 'officeTel',
97
+ placeholder: '座机号',
98
+ label: '座机号',
99
+ type: 'text',
100
+ rules: {
101
+ type: 'telephone'
102
+ //message: '请输入正确的邮箱地址',
103
+ //trigger: 'blur'
104
+ },
105
+ col: 6
106
+ },
107
+ {
108
+ name: 'oldpassword',
109
+ placeholder: '旧密码',
110
+ label: '旧密码',
111
+ type: 'text',
112
+ col: 6,
113
+ rules:
114
+ this.model.password || this.model.repassword
115
+ ? {
116
+ required: true,
117
+ message: '请输入旧密码'
118
+ }
119
+ : {},
120
+ events: {
121
+ change: () => {
122
+ if (
123
+ !this.model.repassword &&
124
+ !this.model.oldpassword &&
125
+ !this.model.repassword
126
+ ) {
127
+ this.$refs.form.clearValidate();
128
+ }
129
+ }
130
+ }
131
+ },
132
+ {
133
+ name: 'password',
134
+ placeholder: '新密码',
135
+ label: '新密码',
136
+ type: 'text',
137
+ col: 6,
138
+ rules: [
139
+ this.model.repassword || this.model.oldpassword
140
+ ? {
141
+ required: true,
142
+ message: '请输入新密码'
143
+ }
144
+ : {},
145
+ {
146
+ pattern: this.checkPassword,
147
+ message: this.checkPasswordMsg
148
+ ? this.checkPasswordMsg
149
+ : '密码格式不合法',
150
+ trigger: 'blur'
151
+ }
152
+ ],
153
+ events: {
154
+ change: () => {
155
+ if (
156
+ !this.model.repassword &&
157
+ !this.model.oldpassword &&
158
+ !this.model.repassword
159
+ ) {
160
+ this.$refs.form.clearValidate();
161
+ }
162
+ }
163
+ }
164
+ },
165
+ {
166
+ name: 'repassword',
167
+ placeholder: '确认新密码',
168
+ label: '确认新密码',
169
+ type: 'text',
170
+ col: 6,
171
+ rules: [
172
+ this.model.password || this.model.oldpassword
173
+ ? {
174
+ required: true,
175
+ message: '请再次输入新密码'
176
+ }
177
+ : {},
178
+ { validator: this.repassword, trigger: 'blur' },
179
+ this.checkPassword
180
+ ? {
181
+ pattern: this.checkPassword,
182
+ message: this.checkPasswordMsg
183
+ ? this.checkPasswordMsg
184
+ : '密码格式不合法',
185
+ trigger: 'blur'
186
+ }
187
+ : {}
188
+ ],
189
+ events: {
190
+ change: () => {
191
+ if (
192
+ !this.model.repassword &&
193
+ !this.model.oldpassword &&
194
+ !this.model.repassword
195
+ ) {
196
+ this.$refs.form.clearValidate();
197
+ }
198
+ }
199
+ }
200
+ }
201
+ ];
202
+ }
203
+ },
204
+ created() {},
205
+ mounted() {},
206
+ methods: {
207
+ handleFormSubmit() {
208
+ let initLogin = util.getStorage('initLogin');
209
+ initLogin && (initLogin = JSON.parse(initLogin));
210
+ util
211
+ .ajax({
212
+ url: updateUserInfo,
213
+ params: {
214
+ email: this.model.email,
215
+ officeTel: this.model.officeTel,
216
+ phone: this.model.phone,
217
+ oldPassword:
218
+ this.secret &&
219
+ initLogin &&
220
+ initLogin.secret &&
221
+ this.model.oldpassword
222
+ ? util.esmEncrypt({
223
+ data: this.model.oldpassword,
224
+ key: initLogin.secret
225
+ })
226
+ : this.model.oldpassword,
227
+ password:
228
+ this.secret &&
229
+ initLogin &&
230
+ initLogin.secret &&
231
+ this.model.password
232
+ ? util.esmEncrypt({
233
+ data: this.model.password,
234
+ key: initLogin.secret
235
+ })
236
+ : this.model.password
237
+ }
238
+ })
239
+ .then((res) => {
240
+ if (res.rCode === 0) {
241
+ if (this.model.oldpassword && this.model.password) {
242
+ this.$confirm('密码修改成功,请重新登录!', '提示', {
243
+ confirmButtonText: '确定',
244
+ cancelButtonText: '取消',
245
+ closeOnClickModal: false,
246
+ type: 'warning'
247
+ })
248
+ .then(() => {
249
+ const loginPage =
250
+ util.getStorage('login') || util.getStorage('loginPage');
251
+ try {
252
+ if (loginPage) {
253
+ let src;
254
+ if (!util.startWith(loginPage, ['http', '/'], true)) {
255
+ let pathname = util.win.top.location.pathname;
256
+ if (pathname !== '/') {
257
+ pathname = pathname.split('/');
258
+ pathname.splice(pathname.length - 1);
259
+ pathname = pathname.join('/');
260
+ src = pathname + '/' + loginPage.replace('./', '');
261
+ } else {
262
+ src = pathname + loginPage.replace('./', '');
263
+ }
264
+ } else {
265
+ src = loginPage;
266
+ }
267
+ util.win.top.location.href = src;
268
+ } else if (
269
+ util.win.top.location.href.indexOf('main.html') > -1
270
+ ) {
271
+ util.win.top.location.href = './login.html';
272
+ } else {
273
+ const hash = util.win.top.location.hash;
274
+ if (hash) {
275
+ const len = util.win.top.location.href.indexOf(hash);
276
+ util.win.top.location.href =
277
+ util.win.location.href.slice(0, len) + '#/login';
278
+ } else {
279
+ util.win.top.location.href = '/login.html';
280
+ }
281
+ }
282
+ } catch (error) {
283
+ util.win.top.postMessage({ type: 1 }, '*');
284
+ }
285
+ })
286
+ .catch((e) => {});
287
+ } else {
288
+ this.$message({
289
+ message: res.msg,
290
+ type: 'success',
291
+ onClose: () => {
292
+ this.$emit('success', this.model);
293
+ }
294
+ });
295
+ }
296
+ } else {
297
+ let msg = res.msg || '系统错误,请联系管理员!';
298
+ this.$message.error(msg);
299
+ }
300
+ });
301
+ },
302
+ repassword(rule, value, callback) {
303
+ if (this.model.oldpassword && this.model.password && value) {
304
+ util.identical({ value: [value, this.model.password], callback });
305
+ } else {
306
+ callback();
307
+ return true;
308
+ }
309
+ }
310
+ }
311
+ };
312
+ </script>
Binary file
@@ -1,5 +1,5 @@
1
- import EsMenu from './src/main';
2
-
3
- EsMenu.install = Vue => Vue.component(EsMenu.name, EsMenu);
4
-
5
- export default EsMenu;
1
+ import EsMenu from './src/main';
2
+
3
+ EsMenu.install = Vue => Vue.component(EsMenu.name, EsMenu);
4
+
5
+ export default EsMenu;