eoss-ui 0.7.52 → 0.7.54

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 (320) hide show
  1. package/lib/button-group.js +288 -277
  2. package/lib/button.js +288 -278
  3. package/lib/calendar.js +2 -2
  4. package/lib/calogin.js +521 -510
  5. package/lib/card.js +2 -2
  6. package/lib/cascader.js +2 -2
  7. package/lib/checkbox-group.js +292 -281
  8. package/lib/clients.js +2 -2
  9. package/lib/config/api.js +2 -0
  10. package/lib/data-table-form.js +291 -280
  11. package/lib/data-table.js +290 -279
  12. package/lib/date-picker.js +288 -278
  13. package/lib/dialog.js +291 -280
  14. package/lib/enable-drag.js +2 -2
  15. package/lib/enterprise.js +2 -2
  16. package/lib/eoss-ui.common.js +5543 -5701
  17. package/lib/error-page.js +2 -2
  18. package/lib/flow-group.js +352 -360
  19. package/lib/flow-list.js +433 -410
  20. package/lib/flow.js +618 -607
  21. package/lib/form.js +293 -282
  22. package/lib/handle-user.js +382 -390
  23. package/lib/handler.js +288 -278
  24. package/lib/icon.js +289 -279
  25. package/lib/icons.js +5 -5
  26. package/lib/index.js +1 -1
  27. package/lib/input-number.js +288 -278
  28. package/lib/input.js +292 -282
  29. package/lib/label.js +2 -2
  30. package/lib/layout.js +4 -4
  31. package/lib/login.js +301 -290
  32. package/lib/main.js +464 -453
  33. package/lib/menu.js +4 -4
  34. package/lib/nav.js +290 -280
  35. package/lib/notify.js +72 -69
  36. package/lib/page.js +288 -278
  37. package/lib/pagination.js +288 -278
  38. package/lib/player.js +371 -383
  39. package/lib/qr-code.js +303 -293
  40. package/lib/radio-group.js +299 -289
  41. package/lib/retrial-auth.js +292 -282
  42. package/lib/select-ganged.js +290 -280
  43. package/lib/select.js +297 -287
  44. package/lib/selector-panel.js +293 -282
  45. package/lib/selector.js +290 -280
  46. package/lib/sizer.js +288 -278
  47. package/lib/steps.js +290 -280
  48. package/lib/switch.js +288 -278
  49. package/lib/table-form.js +295 -285
  50. package/lib/tabs-panel.js +2 -2
  51. package/lib/tabs.js +288 -278
  52. package/lib/theme-chalk/base.css +1 -1
  53. package/lib/theme-chalk/fonts/iconfont.ttf +0 -0
  54. package/lib/theme-chalk/fonts/iconfont.woff +0 -0
  55. package/lib/theme-chalk/icon.css +1 -1
  56. package/lib/theme-chalk/index.css +1 -1
  57. package/lib/theme-chalk/main.css +1 -1
  58. package/lib/theme-chalk/menu.css +1 -1
  59. package/lib/theme-chalk/simplicity.css +1 -1
  60. package/lib/theme-chalk/sizer.css +1 -1
  61. package/lib/theme-chalk/upload.css +1 -1
  62. package/lib/tips.js +290 -280
  63. package/lib/toolbar.js +2 -2
  64. package/lib/tree-group.js +288 -278
  65. package/lib/tree.js +290 -280
  66. package/lib/upload.js +315 -304
  67. package/lib/utils/util.js +8 -12
  68. package/lib/wujie.js +288 -278
  69. package/lib/wxlogin.js +288 -278
  70. package/package.json +160 -160
  71. package/packages/button/index.js +5 -5
  72. package/packages/button/src/main.vue +418 -418
  73. package/packages/button-group/index.js +5 -5
  74. package/packages/button-group/src/main.vue +346 -346
  75. package/packages/calendar/index.js +5 -5
  76. package/packages/calogin/index.js +5 -5
  77. package/packages/calogin/src/main.vue +412 -412
  78. package/packages/calogin/src/plugin.js +915 -915
  79. package/packages/card/index.js +5 -5
  80. package/packages/card/src/main.vue +156 -156
  81. package/packages/cascader/index.js +5 -5
  82. package/packages/cascader/src/main.vue +168 -168
  83. package/packages/checkbox-group/index.js +5 -5
  84. package/packages/checkbox-group/src/main.vue +333 -333
  85. package/packages/clients/index.js +5 -5
  86. package/packages/clients/src/main.vue +151 -151
  87. package/packages/data-table/index.js +5 -5
  88. package/packages/data-table/src/children.vue +39 -39
  89. package/packages/data-table/src/column.vue +992 -992
  90. package/packages/data-table/src/main.vue +1840 -1840
  91. package/packages/data-table/src/sizer.vue +195 -195
  92. package/packages/data-table-form/index.js +5 -5
  93. package/packages/data-table-form/src/checkbox.vue +101 -101
  94. package/packages/data-table-form/src/colgroup.vue +17 -17
  95. package/packages/data-table-form/src/main.vue +181 -181
  96. package/packages/data-table-form/src/radio.vue +65 -65
  97. package/packages/data-table-form/src/table.vue +233 -233
  98. package/packages/data-table-form/src/tbody.vue +336 -336
  99. package/packages/data-table-form/src/thead.vue +68 -68
  100. package/packages/date-picker/index.js +5 -5
  101. package/packages/date-picker/src/main.vue +236 -236
  102. package/packages/dialog/index.js +5 -5
  103. package/packages/enable-drag/index.js +5 -5
  104. package/packages/enterprise/index.js +5 -5
  105. package/packages/enterprise/src/main.vue +66 -66
  106. package/packages/error-page/index.js +5 -5
  107. package/packages/error-page/src/main.vue +44 -44
  108. package/packages/flow/index.js +5 -5
  109. package/packages/flow/src/component/Circulate.vue +413 -413
  110. package/packages/flow/src/component/CommonOpinions.vue +373 -373
  111. package/packages/flow/src/component/CustomPreset.vue +322 -322
  112. package/packages/flow/src/component/FileList.vue +97 -97
  113. package/packages/flow/src/component/FreeCirculation.vue +241 -240
  114. package/packages/flow/src/component/Preset.vue +255 -255
  115. package/packages/flow/src/component/SendMsg.vue +242 -242
  116. package/packages/flow/src/component/TimeLimit.vue +190 -190
  117. package/packages/flow/src/component/taskUnionExamine.vue +756 -756
  118. package/packages/flow/src/form.vue +121 -121
  119. package/packages/flow/src/freeStartFlow.vue +2846 -2846
  120. package/packages/flow/src/main.vue +3878 -3879
  121. package/packages/flow/src/processForm.vue +1365 -1365
  122. package/packages/flow/src/processReject.vue +309 -309
  123. package/packages/flow/src/reset.vue +942 -942
  124. package/packages/flow/src/startTaskRead.vue +692 -692
  125. package/packages/flow/src/supervise.vue +159 -159
  126. package/packages/flow/src/table.vue +58 -58
  127. package/packages/flow-group/index.js +5 -5
  128. package/packages/flow-group/src/main.vue +717 -717
  129. package/packages/flow-list/index.js +5 -5
  130. package/packages/flow-list/src/main.vue +1801 -1787
  131. package/packages/form/index.js +5 -5
  132. package/packages/form/src/main.vue +3901 -3901
  133. package/packages/form/src/table.vue +1512 -1512
  134. package/packages/handle-user/index.js +5 -5
  135. package/packages/handle-user/src/main.vue +137 -137
  136. package/packages/handler/index.js +5 -5
  137. package/packages/handler/src/main.vue +496 -496
  138. package/packages/icon/index.js +5 -5
  139. package/packages/icon/src/main.vue +104 -104
  140. package/packages/icons/index.js +5 -5
  141. package/packages/icons/src/icon.json +1 -1
  142. package/packages/icons/src/main.vue +81 -81
  143. package/packages/input/index.js +5 -5
  144. package/packages/input/src/main.vue +356 -356
  145. package/packages/input-number/index.js +5 -5
  146. package/packages/input-number/src/main.vue +106 -106
  147. package/packages/label/index.js +5 -5
  148. package/packages/label/src/main.vue +457 -457
  149. package/packages/layout/index.js +5 -5
  150. package/packages/layout/src/item.vue +152 -152
  151. package/packages/layout/src/main.vue +31 -31
  152. package/packages/login/index.js +5 -5
  153. package/packages/login/src/main.vue +2082 -2082
  154. package/packages/login/src/resetPassword.vue +557 -557
  155. package/packages/main/index.js +5 -5
  156. package/packages/main/src/default/message.vue +249 -249
  157. package/packages/main/src/default/notice.vue +157 -157
  158. package/packages/main/src/default/userinfo.vue +503 -503
  159. package/packages/main/src/public/online.vue +89 -89
  160. package/packages/main/src/public/search.vue +464 -464
  161. package/packages/main/src/public/settings.vue +227 -227
  162. package/packages/main/src/simplicity/apps.vue +388 -388
  163. package/packages/main/src/simplicity/avatar.vue +82 -82
  164. package/packages/main/src/simplicity/handler.vue +160 -160
  165. package/packages/main/src/simplicity/index.vue +2277 -2277
  166. package/packages/main/src/simplicity/lists.vue +84 -84
  167. package/packages/main/src/simplicity/menu-list.vue +135 -135
  168. package/packages/main/src/simplicity/message.vue +293 -293
  169. package/packages/main/src/simplicity/notice.vue +222 -222
  170. package/packages/main/src/simplicity/router-page.vue +45 -45
  171. package/packages/main/src/simplicity/sub-menu.vue +274 -274
  172. package/packages/main/src/simplicity/user.vue +259 -259
  173. package/packages/main/src/simplicity/userinfo.vue +401 -401
  174. package/packages/menu/index.js +5 -5
  175. package/packages/menu/src/main.vue +595 -595
  176. package/packages/nav/index.js +5 -5
  177. package/packages/nav/src/main.vue +351 -351
  178. package/packages/notify/index.js +5 -5
  179. package/packages/notify/src/main.vue +538 -538
  180. package/packages/page/index.js +5 -5
  181. package/packages/page/src/main.vue +167 -167
  182. package/packages/pagination/index.js +5 -5
  183. package/packages/pagination/src/main.vue +96 -96
  184. package/packages/player/index.js +5 -5
  185. package/packages/player/src/main.vue +194 -194
  186. package/packages/qr-code/index.js +5 -5
  187. package/packages/qr-code/src/main.vue +170 -170
  188. package/packages/radio-group/index.js +6 -6
  189. package/packages/radio-group/src/main.vue +319 -319
  190. package/packages/retrial-auth/index.js +5 -5
  191. package/packages/retrial-auth/src/main.vue +280 -280
  192. package/packages/select/index.js +5 -5
  193. package/packages/select/src/main.vue +782 -782
  194. package/packages/select-ganged/index.js +5 -5
  195. package/packages/select-ganged/src/main.vue +724 -724
  196. package/packages/selector/index.js +5 -5
  197. package/packages/selector/src/main.vue +761 -761
  198. package/packages/selector-panel/index.js +5 -5
  199. package/packages/selector-panel/src/main.vue +1027 -1027
  200. package/packages/selector-panel/src/selection.vue +170 -170
  201. package/packages/selector-panel/src/tree.vue +129 -129
  202. package/packages/sizer/index.js +5 -5
  203. package/packages/sizer/src/main.vue +254 -254
  204. package/packages/steps/index.js +5 -5
  205. package/packages/steps/src/main.vue +181 -181
  206. package/packages/switch/index.js +5 -5
  207. package/packages/switch/src/main.vue +170 -170
  208. package/packages/table-form/index.js +5 -5
  209. package/packages/tabs/index.js +5 -5
  210. package/packages/tabs/src/main.vue +788 -788
  211. package/packages/tabs-panel/index.js +5 -5
  212. package/packages/tabs-panel/src/main.vue +29 -29
  213. package/packages/theme-chalk/lib/base.css +1 -1
  214. package/packages/theme-chalk/lib/fonts/iconfont.ttf +0 -0
  215. package/packages/theme-chalk/lib/fonts/iconfont.woff +0 -0
  216. package/packages/theme-chalk/lib/icon.css +1 -1
  217. package/packages/theme-chalk/lib/index.css +1 -1
  218. package/packages/theme-chalk/lib/main.css +1 -1
  219. package/packages/theme-chalk/lib/menu.css +1 -1
  220. package/packages/theme-chalk/lib/simplicity.css +1 -1
  221. package/packages/theme-chalk/lib/sizer.css +1 -1
  222. package/packages/theme-chalk/lib/upload.css +1 -1
  223. package/packages/theme-chalk/src/base.scss +261 -261
  224. package/packages/theme-chalk/src/button-group.scss +176 -176
  225. package/packages/theme-chalk/src/button.scss +24 -24
  226. package/packages/theme-chalk/src/calendar.scss +113 -113
  227. package/packages/theme-chalk/src/card.scss +99 -99
  228. package/packages/theme-chalk/src/checkbox-group.scss +8 -8
  229. package/packages/theme-chalk/src/clients.scss +87 -87
  230. package/packages/theme-chalk/src/data-table-form.scss +67 -67
  231. package/packages/theme-chalk/src/data-table.scss +297 -297
  232. package/packages/theme-chalk/src/date-picker.scss +7 -7
  233. package/packages/theme-chalk/src/dialog.scss +77 -77
  234. package/packages/theme-chalk/src/enable-drag.scss +181 -181
  235. package/packages/theme-chalk/src/enterprise.scss +5 -5
  236. package/packages/theme-chalk/src/error-page.scss +18 -18
  237. package/packages/theme-chalk/src/flow-group.scss +110 -110
  238. package/packages/theme-chalk/src/flow-list.scss +39 -39
  239. package/packages/theme-chalk/src/flow.scss +351 -351
  240. package/packages/theme-chalk/src/fonts/iconfont.ttf +0 -0
  241. package/packages/theme-chalk/src/fonts/iconfont.woff +0 -0
  242. package/packages/theme-chalk/src/form.scss +501 -501
  243. package/packages/theme-chalk/src/handle-user.scss +40 -40
  244. package/packages/theme-chalk/src/handler.scss +148 -148
  245. package/packages/theme-chalk/src/icon.scss +1540 -1456
  246. package/packages/theme-chalk/src/icons.scss +99 -99
  247. package/packages/theme-chalk/src/input.scss +9 -9
  248. package/packages/theme-chalk/src/label.scss +24 -24
  249. package/packages/theme-chalk/src/layout.scss +46 -46
  250. package/packages/theme-chalk/src/login.scss +1006 -1006
  251. package/packages/theme-chalk/src/main.scss +663 -663
  252. package/packages/theme-chalk/src/menu.scss +224 -224
  253. package/packages/theme-chalk/src/mixins/color.scss +117 -117
  254. package/packages/theme-chalk/src/nav.scss +111 -111
  255. package/packages/theme-chalk/src/page.scss +3 -3
  256. package/packages/theme-chalk/src/pagination.scss +29 -29
  257. package/packages/theme-chalk/src/player.scss +9 -9
  258. package/packages/theme-chalk/src/qr-code.scss +17 -17
  259. package/packages/theme-chalk/src/radio-group.scss +9 -9
  260. package/packages/theme-chalk/src/retrial-auth.scss +38 -38
  261. package/packages/theme-chalk/src/select-ganged.scss +8 -8
  262. package/packages/theme-chalk/src/select.scss +8 -8
  263. package/packages/theme-chalk/src/selector-panel.scss +204 -204
  264. package/packages/theme-chalk/src/selector.scss +114 -114
  265. package/packages/theme-chalk/src/simplicity.scss +1395 -1395
  266. package/packages/theme-chalk/src/sizer.scss +36 -36
  267. package/packages/theme-chalk/src/steps.scss +88 -88
  268. package/packages/theme-chalk/src/switch.scss +3 -3
  269. package/packages/theme-chalk/src/table-form.scss +1 -1
  270. package/packages/theme-chalk/src/tabs.scss +87 -87
  271. package/packages/theme-chalk/src/tips.scss +7 -7
  272. package/packages/theme-chalk/src/toolbar.scss +179 -179
  273. package/packages/theme-chalk/src/tree-group.scss +72 -72
  274. package/packages/theme-chalk/src/tree.scss +165 -165
  275. package/packages/theme-chalk/src/upload.scss +172 -172
  276. package/packages/theme-chalk/src/wxlogin.scss +3 -3
  277. package/packages/tips/index.js +5 -5
  278. package/packages/tips/src/main.vue +141 -141
  279. package/packages/toolbar/index.js +5 -5
  280. package/packages/toolbar/src/main.vue +430 -430
  281. package/packages/tree/index.js +5 -5
  282. package/packages/tree-group/index.js +5 -5
  283. package/packages/upload/index.js +5 -5
  284. package/packages/upload/src/main.vue +1344 -1344
  285. package/packages/upload/src/picture.js +15 -15
  286. package/packages/wujie/index.js +5 -5
  287. package/packages/wujie/src/main.vue +145 -145
  288. package/packages/wxlogin/index.js +5 -5
  289. package/packages/wxlogin/src/main.vue +128 -128
  290. package/src/config/api.js +317 -315
  291. package/src/config/image.js +2 -2
  292. package/src/index.js +163 -163
  293. package/src/utils/bus.js +3 -3
  294. package/src/utils/date-util.js +312 -312
  295. package/src/utils/http.js +50 -50
  296. package/src/utils/rules.js +18 -18
  297. package/src/utils/store.js +21 -21
  298. package/src/utils/util.js +7 -10
  299. package/src/utils/webSocket.js +107 -107
  300. package/packages/.DS_Store +0 -0
  301. package/packages/calogin/.DS_Store +0 -0
  302. package/packages/date-picker/.DS_Store +0 -0
  303. package/packages/date-picker/src/.DS_Store +0 -0
  304. package/packages/dialog/.DS_Store +0 -0
  305. package/packages/flow/.DS_Store +0 -0
  306. package/packages/flow/src/.DS_Store +0 -0
  307. package/packages/flow-list/.DS_Store +0 -0
  308. package/packages/form/.DS_Store +0 -0
  309. package/packages/icon/.DS_Store +0 -0
  310. package/packages/login/.DS_Store +0 -0
  311. package/packages/main/.DS_Store +0 -0
  312. package/packages/main/src/.DS_Store +0 -0
  313. package/packages/menu/.DS_Store +0 -0
  314. package/packages/select/.DS_Store +0 -0
  315. package/packages/selector/.DS_Store +0 -0
  316. package/packages/selector-panel/.DS_Store +0 -0
  317. package/packages/theme-chalk/src/.DS_Store +0 -0
  318. package/packages/upload/.DS_Store +0 -0
  319. package/src/.DS_Store +0 -0
  320. package/src/utils/.DS_Store +0 -0
@@ -1,557 +1,557 @@
1
- <!--
2
- /**
3
- * 忘记密码
4
- *@desc 忘记密码填写表单(通过手机号获取验证码)
5
- *
6
- **/
7
- -->
8
- <template>
9
- <div class="rest-password-box" :class="{ 'rest-password-cut': show }">
10
- <el-menu
11
- v-if="show"
12
- :default-active="activeIndex"
13
- class="rest-menu-cut"
14
- mode="horizontal"
15
- @select="handleSelect"
16
- >
17
- <el-menu-item index="6">短信验证</el-menu-item>
18
- <el-menu-item index="11">邮箱验证</el-menu-item>
19
- <el-menu-item index="0" v-if="this.operationCheckCode"
20
- >原密码验证</el-menu-item
21
- >
22
- </el-menu>
23
- <es-form
24
- ref="pwdForm"
25
- v-loading.fullscreen.lock="submit"
26
- element-loading-text="修改中..."
27
- element-loading-spinner="el-icon-loading"
28
- element-loading-background="rgba(0, 0, 0, 0.65)"
29
- class="es-rest-password"
30
- :model="formData"
31
- :contents="page"
32
- :autocomplete="false"
33
- @submit="handleSubmit"
34
- >
35
- </es-form>
36
- </div>
37
- </template>
38
-
39
- <script>
40
- import {
41
- initModifyPassword,
42
- getModifyPassCode,
43
- codeModifyPass,
44
- loginModifyPassword
45
- } from 'eoss-ui/src/config/api.js';
46
- import rules from 'eoss-ui/src/utils/rules.js';
47
- import util from 'eoss-ui/src/utils/util';
48
- export default {
49
- name: 'resetPassword',
50
- props: {
51
- secret: String,
52
- isEncrypt: Boolean,
53
- type: String,
54
- operationCheckCode: String,
55
- username: String
56
- },
57
- computed: {
58
- page() {
59
- switch (this.activeIndex) {
60
- case '6':
61
- return [
62
- {
63
- type: 'text',
64
- name: 'target',
65
- label: '手机号',
66
- placeholder: '请输入手机号',
67
- rules: [
68
- {
69
- required: true,
70
- message: '请输入手机号',
71
- trigger: 'blur'
72
- },
73
- {
74
- ...rules.phone,
75
- trigger: 'blur'
76
- }
77
- ]
78
- },
79
- {
80
- type: 'password',
81
- name: 'password',
82
- label: '新密码',
83
- placeholder: '请输入新密码',
84
- showPassword: true,
85
- rules: [
86
- this.checkPassword
87
- ? {
88
- pattern: this.checkPassword,
89
- message: this.checkPasswordMsg
90
- ? this.checkPasswordMsg
91
- : '密码格式不合法',
92
- trigger: 'blur'
93
- }
94
- : {},
95
- {
96
- required: true,
97
- message: '请输入新密码',
98
- trigger: 'blur'
99
- }
100
- ]
101
- },
102
- {
103
- type: 'password',
104
- name: 'repassword',
105
- placeholder: '请确认新密码',
106
- label: '确认新密码',
107
- showPassword: true,
108
- rules: [
109
- this.checkPassword
110
- ? {
111
- pattern: this.checkPassword,
112
- message: this.checkPasswordMsg
113
- ? this.checkPasswordMsg
114
- : '密码格式不合法',
115
- trigger: 'blur'
116
- }
117
- : {},
118
- {
119
- required: true,
120
- message: '请输入新密码',
121
- trigger: 'blur'
122
- },
123
- { validator: this.reregExpValidate, trigger: 'blur' }
124
- ]
125
- },
126
- {
127
- type: 'text',
128
- name: 'verificationCode',
129
- placeholder: '请输入验证码',
130
- label: '验证码',
131
- append: {
132
- text: this.btnText,
133
- attrs: { disabled: this.disabled },
134
- event: this.getVerificationCode
135
- },
136
- rules: [
137
- {
138
- required: true,
139
- message: '请输入验证码',
140
- trigger: 'blur'
141
- }
142
- ]
143
- },
144
- {
145
- type: 'submit',
146
- contents: [
147
- {
148
- type: 'primary',
149
- text: '提交',
150
- event: 'confirm'
151
- }
152
- ]
153
- }
154
- ];
155
- case '11':
156
- return [
157
- {
158
- type: 'text',
159
- name: 'target',
160
- label: '邮箱地址',
161
- placeholder: '请输入邮箱地址',
162
- rules: [
163
- {
164
- required: true,
165
- message: '请输入邮箱地址',
166
- trigger: 'blur'
167
- },
168
- {
169
- type: 'email',
170
- message: '请输入正确的邮箱地址',
171
- trigger: 'blur'
172
- }
173
- ]
174
- },
175
- {
176
- type: 'password',
177
- name: 'password',
178
- label: '新密码',
179
- placeholder: '请输入新密码',
180
- showPassword: true,
181
- rules: [
182
- this.checkPassword
183
- ? {
184
- pattern: this.checkPassword,
185
- message: this.checkPasswordMsg
186
- ? this.checkPasswordMsg
187
- : '密码格式不合法',
188
- trigger: 'blur'
189
- }
190
- : {},
191
- {
192
- required: true,
193
- message: '请输入新密码',
194
- trigger: 'blur'
195
- }
196
- ]
197
- },
198
- {
199
- type: 'password',
200
- name: 'repassword',
201
- placeholder: '请确认新密码',
202
- label: '确认新密码',
203
- showPassword: true,
204
- rules: [
205
- this.checkPassword
206
- ? {
207
- pattern: this.checkPassword,
208
- message: this.checkPasswordMsg
209
- ? this.checkPasswordMsg
210
- : '密码格式不合法',
211
- trigger: 'blur'
212
- }
213
- : {},
214
- {
215
- required: true,
216
- message: '请输入新密码',
217
- trigger: 'blur'
218
- },
219
- { validator: this.reregExpValidate, trigger: 'blur' }
220
- ]
221
- },
222
- {
223
- type: 'text',
224
- name: 'verificationCode',
225
- placeholder: '请输入验证码',
226
- label: '验证码',
227
- append: {
228
- text: this.btnText,
229
- attrs: { disabled: this.disabled },
230
- event: this.getVerificationCode
231
- },
232
- rules: [
233
- {
234
- required: true,
235
- message: '请输入验证码',
236
- trigger: 'blur'
237
- }
238
- ]
239
- },
240
- {
241
- type: 'submit',
242
- contents: [
243
- {
244
- type: 'primary',
245
- text: '提交',
246
- event: 'confirm'
247
- }
248
- ]
249
- }
250
- ];
251
- case '0':
252
- this.$set(
253
- this.formData,
254
- 'username',
255
- this.username ? this.username : ''
256
- );
257
- return [
258
- {
259
- type: 'text',
260
- name: 'userName',
261
- label: '用户名',
262
- placeholder: '请输入用户名',
263
- rules: [
264
- {
265
- required: true,
266
- message: '请输入用户名',
267
- trigger: 'blur'
268
- }
269
- ]
270
- },
271
- {
272
- type: 'password',
273
- name: 'oldPassword',
274
- label: '旧密码',
275
- placeholder: '请输入旧密码',
276
- showPassword: true,
277
- rules: [
278
- {
279
- required: true,
280
- message: '请输入旧密码',
281
- trigger: 'blur'
282
- }
283
- ]
284
- },
285
- {
286
- type: 'password',
287
- name: 'password',
288
- label: '新密码',
289
- placeholder: '请输入新密码',
290
- showPassword: true,
291
- rules: [
292
- this.checkPassword
293
- ? {
294
- pattern: this.checkPassword,
295
- message: this.checkPasswordMsg
296
- ? this.checkPasswordMsg
297
- : '密码格式不合法',
298
- trigger: 'blur'
299
- }
300
- : {},
301
- {
302
- required: true,
303
- message: '请输入新密码',
304
- trigger: 'blur'
305
- }
306
- ]
307
- },
308
- {
309
- type: 'password',
310
- name: 'repassword',
311
- placeholder: '请确认新密码',
312
- label: '确认新密码',
313
- showPassword: true,
314
- rules: [
315
- this.checkPassword
316
- ? {
317
- pattern: this.checkPassword,
318
- message: this.checkPasswordMsg
319
- ? this.checkPasswordMsg
320
- : '密码格式不合法',
321
- trigger: 'blur'
322
- }
323
- : {},
324
- {
325
- required: true,
326
- message: '请确认新密码',
327
- trigger: 'blur'
328
- },
329
- { validator: this.reregExpValidate, trigger: 'blur' }
330
- ]
331
- },
332
- {
333
- type: 'submit',
334
- contents: [
335
- {
336
- type: 'primary',
337
- text: '提交',
338
- event: 'confirm'
339
- }
340
- ]
341
- }
342
- ];
343
- }
344
- },
345
- show() {
346
- if (this.type) {
347
- let types = this.type.split(',');
348
- return types.length > 1;
349
- }
350
- return false;
351
- }
352
- },
353
- data() {
354
- return {
355
- activeIndex: '0',
356
- checkPassword: null,
357
- checkPasswordMsg: null,
358
- btnText: '获取验证码',
359
- timer: '',
360
- countdown: 0,
361
- disabled: false,
362
- submit: false,
363
- formData: {}
364
- };
365
- },
366
- created() {
367
- this.getInitModifyPassword();
368
- if (this.type) {
369
- let types = this.type.split(',');
370
- if (types.length) {
371
- this.activeIndex = types[0];
372
- }
373
- } else {
374
- this.activeIndex = '0';
375
- }
376
- },
377
- destroyed() {
378
- clearInterval(this.timer);
379
- },
380
- methods: {
381
- // 密码再次验证
382
- reregExpValidate(rule, value, callback) {
383
- if (value != this.formData.password) {
384
- callback(new Error('两次密码不一致'));
385
- } else {
386
- callback();
387
- }
388
- },
389
- getInitModifyPassword() {
390
- util
391
- .ajax({
392
- url: initModifyPassword
393
- })
394
- .then((res) => {
395
- if (res.rCode === 0) {
396
- const results = JSON.parse(JSON.stringify(res.results));
397
- if (results.checkPassword) {
398
- this.checkPassword = new RegExp(results.checkPassword);
399
- }
400
- if (results.checkPasswordMsg) {
401
- this.checkPasswordMsg = results.checkPasswordMsg;
402
- }
403
- } else {
404
- let msg = res.msg || '系统错误,请联系管理员!';
405
- this.$message.error(msg);
406
- }
407
- })
408
- .catch((err) => {
409
- if (err.message && err.message !== 'canceled') {
410
- this.$message.error(err.message);
411
- }
412
- });
413
- },
414
- getVerificationCode() {
415
- if (this.countdown) {
416
- return false;
417
- }
418
- if (!this.formData.target) {
419
- this.$refs.pwdForm.validateField('target');
420
- return false;
421
- } else {
422
- let flag = false;
423
- this.$refs.pwdForm.validateField('target', (res) => {
424
- flag = res != '';
425
- });
426
- if (flag) {
427
- return false;
428
- }
429
- let data = {
430
- target: this.formData.target,
431
- targetType: this.activeIndex == '6' ? 'SMS' : 'EMAIL'
432
- };
433
- this.countdown = 60;
434
- this.getCode(data);
435
- this.timer = setInterval(() => {
436
- if (this.countdown > 0) {
437
- this.countdown--;
438
- this.disabled = true;
439
- this.btnText = '重新获取' + this.countdown + 's';
440
- } else {
441
- this.btnText = '获取验证码';
442
- this.disabled = false;
443
- clearInterval(this.timer);
444
- }
445
- }, 1000);
446
- }
447
- },
448
- getCode(params) {
449
- util
450
- .ajax({
451
- url: getModifyPassCode,
452
- params: params
453
- })
454
- .then((res) => {
455
- if (res.rCode === 0) {
456
- this.$message.success(res.msg);
457
- } else {
458
- let msg = res.msg || '系统错误,请联系管理员!';
459
- if (res.rCode === 2) {
460
- this.btnText = '获取验证码';
461
- this.disabled = false;
462
- this.countdown = 0;
463
- clearInterval(this.timer);
464
- }
465
- this.$message.error(msg);
466
- }
467
- })
468
- .catch((err) => {
469
- if (err.message && err.message !== 'canceled') {
470
- this.$message.error(err.message);
471
- }
472
- });
473
- },
474
- handleSubmit(res) {
475
- this.submit = true;
476
- let { repassword, ...data } = res;
477
- if (this.secret && this.isEncrypt) {
478
- data.password = util.esmEncrypt({
479
- data: data.password,
480
- key: this.secret
481
- });
482
- if (data.oldPassword) {
483
- data.oldPassword = util.esmEncrypt({
484
- data: data.oldPassword,
485
- key: this.secret
486
- });
487
- }
488
- }
489
- if (this.activeIndex == '0') {
490
- data.operationCheckCode = this.operationCheckCode;
491
- util
492
- .ajax({
493
- method: 'post',
494
- url: loginModifyPassword,
495
- data: data
496
- })
497
- .then((res) => {
498
- this.submit = false;
499
- if (res.rCode === 0) {
500
- this.$message.success(res.msg);
501
- this.$emit('success');
502
- } else {
503
- let msg = res.msg || '系统错误,请联系管理员!';
504
- this.$message.error(msg);
505
- this.disabled = false;
506
- delete this.formData.verificationCode;
507
- clearInterval(this.timer);
508
- }
509
- })
510
- .catch((err) => {
511
- if (err.message && err.message !== 'canceled') {
512
- this.$message.error(err.message);
513
- }
514
- });
515
- } else {
516
- if (this.activeIndex == '6') {
517
- data.targetType = 'SMS';
518
- } else {
519
- data.targetType = 'EMAIL';
520
- }
521
- util
522
- .ajax({
523
- method: 'post',
524
- url: codeModifyPass,
525
- data: data
526
- })
527
- .then((res) => {
528
- this.submit = false;
529
- if (res.rCode === 0) {
530
- this.$message.success(res.msg);
531
- this.$emit('success');
532
- } else {
533
- let msg = res.msg || '系统错误,请联系管理员!';
534
- this.btnText = '获取验证码';
535
- this.disabled = false;
536
- clearInterval(this.timer);
537
- delete this.formData.verificationCode;
538
- this.$message.error(msg);
539
- }
540
- })
541
- .catch((err) => {
542
- if (err.message && err.message !== 'canceled') {
543
- this.$message.error(err.message);
544
- }
545
- });
546
- }
547
- },
548
- handleSelect(res) {
549
- this.$refs.pwdForm.resetFields();
550
- this.activeIndex = res;
551
- this.btnText = '获取验证码';
552
- this.disabled = false;
553
- clearInterval(this.timer);
554
- }
555
- }
556
- };
557
- </script>
1
+ <!--
2
+ /**
3
+ * 忘记密码
4
+ *@desc 忘记密码填写表单(通过手机号获取验证码)
5
+ *
6
+ **/
7
+ -->
8
+ <template>
9
+ <div class="rest-password-box" :class="{ 'rest-password-cut': show }">
10
+ <el-menu
11
+ v-if="show"
12
+ :default-active="activeIndex"
13
+ class="rest-menu-cut"
14
+ mode="horizontal"
15
+ @select="handleSelect"
16
+ >
17
+ <el-menu-item index="6">短信验证</el-menu-item>
18
+ <el-menu-item index="11">邮箱验证</el-menu-item>
19
+ <el-menu-item index="0" v-if="this.operationCheckCode"
20
+ >原密码验证</el-menu-item
21
+ >
22
+ </el-menu>
23
+ <es-form
24
+ ref="pwdForm"
25
+ v-loading.fullscreen.lock="submit"
26
+ element-loading-text="修改中..."
27
+ element-loading-spinner="el-icon-loading"
28
+ element-loading-background="rgba(0, 0, 0, 0.65)"
29
+ class="es-rest-password"
30
+ :model="formData"
31
+ :contents="page"
32
+ :autocomplete="false"
33
+ @submit="handleSubmit"
34
+ >
35
+ </es-form>
36
+ </div>
37
+ </template>
38
+
39
+ <script>
40
+ import {
41
+ initModifyPassword,
42
+ getModifyPassCode,
43
+ codeModifyPass,
44
+ loginModifyPassword
45
+ } from 'eoss-ui/src/config/api.js';
46
+ import rules from 'eoss-ui/src/utils/rules.js';
47
+ import util from 'eoss-ui/src/utils/util';
48
+ export default {
49
+ name: 'resetPassword',
50
+ props: {
51
+ secret: String,
52
+ isEncrypt: Boolean,
53
+ type: String,
54
+ operationCheckCode: String,
55
+ username: String
56
+ },
57
+ computed: {
58
+ page() {
59
+ switch (this.activeIndex) {
60
+ case '6':
61
+ return [
62
+ {
63
+ type: 'text',
64
+ name: 'target',
65
+ label: '手机号',
66
+ placeholder: '请输入手机号',
67
+ rules: [
68
+ {
69
+ required: true,
70
+ message: '请输入手机号',
71
+ trigger: 'blur'
72
+ },
73
+ {
74
+ ...rules.phone,
75
+ trigger: 'blur'
76
+ }
77
+ ]
78
+ },
79
+ {
80
+ type: 'password',
81
+ name: 'password',
82
+ label: '新密码',
83
+ placeholder: '请输入新密码',
84
+ showPassword: true,
85
+ rules: [
86
+ this.checkPassword
87
+ ? {
88
+ pattern: this.checkPassword,
89
+ message: this.checkPasswordMsg
90
+ ? this.checkPasswordMsg
91
+ : '密码格式不合法',
92
+ trigger: 'blur'
93
+ }
94
+ : {},
95
+ {
96
+ required: true,
97
+ message: '请输入新密码',
98
+ trigger: 'blur'
99
+ }
100
+ ]
101
+ },
102
+ {
103
+ type: 'password',
104
+ name: 'repassword',
105
+ placeholder: '请确认新密码',
106
+ label: '确认新密码',
107
+ showPassword: true,
108
+ rules: [
109
+ this.checkPassword
110
+ ? {
111
+ pattern: this.checkPassword,
112
+ message: this.checkPasswordMsg
113
+ ? this.checkPasswordMsg
114
+ : '密码格式不合法',
115
+ trigger: 'blur'
116
+ }
117
+ : {},
118
+ {
119
+ required: true,
120
+ message: '请输入新密码',
121
+ trigger: 'blur'
122
+ },
123
+ { validator: this.reregExpValidate, trigger: 'blur' }
124
+ ]
125
+ },
126
+ {
127
+ type: 'text',
128
+ name: 'verificationCode',
129
+ placeholder: '请输入验证码',
130
+ label: '验证码',
131
+ append: {
132
+ text: this.btnText,
133
+ attrs: { disabled: this.disabled },
134
+ event: this.getVerificationCode
135
+ },
136
+ rules: [
137
+ {
138
+ required: true,
139
+ message: '请输入验证码',
140
+ trigger: 'blur'
141
+ }
142
+ ]
143
+ },
144
+ {
145
+ type: 'submit',
146
+ contents: [
147
+ {
148
+ type: 'primary',
149
+ text: '提交',
150
+ event: 'confirm'
151
+ }
152
+ ]
153
+ }
154
+ ];
155
+ case '11':
156
+ return [
157
+ {
158
+ type: 'text',
159
+ name: 'target',
160
+ label: '邮箱地址',
161
+ placeholder: '请输入邮箱地址',
162
+ rules: [
163
+ {
164
+ required: true,
165
+ message: '请输入邮箱地址',
166
+ trigger: 'blur'
167
+ },
168
+ {
169
+ type: 'email',
170
+ message: '请输入正确的邮箱地址',
171
+ trigger: 'blur'
172
+ }
173
+ ]
174
+ },
175
+ {
176
+ type: 'password',
177
+ name: 'password',
178
+ label: '新密码',
179
+ placeholder: '请输入新密码',
180
+ showPassword: true,
181
+ rules: [
182
+ this.checkPassword
183
+ ? {
184
+ pattern: this.checkPassword,
185
+ message: this.checkPasswordMsg
186
+ ? this.checkPasswordMsg
187
+ : '密码格式不合法',
188
+ trigger: 'blur'
189
+ }
190
+ : {},
191
+ {
192
+ required: true,
193
+ message: '请输入新密码',
194
+ trigger: 'blur'
195
+ }
196
+ ]
197
+ },
198
+ {
199
+ type: 'password',
200
+ name: 'repassword',
201
+ placeholder: '请确认新密码',
202
+ label: '确认新密码',
203
+ showPassword: true,
204
+ rules: [
205
+ this.checkPassword
206
+ ? {
207
+ pattern: this.checkPassword,
208
+ message: this.checkPasswordMsg
209
+ ? this.checkPasswordMsg
210
+ : '密码格式不合法',
211
+ trigger: 'blur'
212
+ }
213
+ : {},
214
+ {
215
+ required: true,
216
+ message: '请输入新密码',
217
+ trigger: 'blur'
218
+ },
219
+ { validator: this.reregExpValidate, trigger: 'blur' }
220
+ ]
221
+ },
222
+ {
223
+ type: 'text',
224
+ name: 'verificationCode',
225
+ placeholder: '请输入验证码',
226
+ label: '验证码',
227
+ append: {
228
+ text: this.btnText,
229
+ attrs: { disabled: this.disabled },
230
+ event: this.getVerificationCode
231
+ },
232
+ rules: [
233
+ {
234
+ required: true,
235
+ message: '请输入验证码',
236
+ trigger: 'blur'
237
+ }
238
+ ]
239
+ },
240
+ {
241
+ type: 'submit',
242
+ contents: [
243
+ {
244
+ type: 'primary',
245
+ text: '提交',
246
+ event: 'confirm'
247
+ }
248
+ ]
249
+ }
250
+ ];
251
+ case '0':
252
+ this.$set(
253
+ this.formData,
254
+ 'username',
255
+ this.username ? this.username : ''
256
+ );
257
+ return [
258
+ {
259
+ type: 'text',
260
+ name: 'userName',
261
+ label: '用户名',
262
+ placeholder: '请输入用户名',
263
+ rules: [
264
+ {
265
+ required: true,
266
+ message: '请输入用户名',
267
+ trigger: 'blur'
268
+ }
269
+ ]
270
+ },
271
+ {
272
+ type: 'password',
273
+ name: 'oldPassword',
274
+ label: '旧密码',
275
+ placeholder: '请输入旧密码',
276
+ showPassword: true,
277
+ rules: [
278
+ {
279
+ required: true,
280
+ message: '请输入旧密码',
281
+ trigger: 'blur'
282
+ }
283
+ ]
284
+ },
285
+ {
286
+ type: 'password',
287
+ name: 'password',
288
+ label: '新密码',
289
+ placeholder: '请输入新密码',
290
+ showPassword: true,
291
+ rules: [
292
+ this.checkPassword
293
+ ? {
294
+ pattern: this.checkPassword,
295
+ message: this.checkPasswordMsg
296
+ ? this.checkPasswordMsg
297
+ : '密码格式不合法',
298
+ trigger: 'blur'
299
+ }
300
+ : {},
301
+ {
302
+ required: true,
303
+ message: '请输入新密码',
304
+ trigger: 'blur'
305
+ }
306
+ ]
307
+ },
308
+ {
309
+ type: 'password',
310
+ name: 'repassword',
311
+ placeholder: '请确认新密码',
312
+ label: '确认新密码',
313
+ showPassword: true,
314
+ rules: [
315
+ this.checkPassword
316
+ ? {
317
+ pattern: this.checkPassword,
318
+ message: this.checkPasswordMsg
319
+ ? this.checkPasswordMsg
320
+ : '密码格式不合法',
321
+ trigger: 'blur'
322
+ }
323
+ : {},
324
+ {
325
+ required: true,
326
+ message: '请确认新密码',
327
+ trigger: 'blur'
328
+ },
329
+ { validator: this.reregExpValidate, trigger: 'blur' }
330
+ ]
331
+ },
332
+ {
333
+ type: 'submit',
334
+ contents: [
335
+ {
336
+ type: 'primary',
337
+ text: '提交',
338
+ event: 'confirm'
339
+ }
340
+ ]
341
+ }
342
+ ];
343
+ }
344
+ },
345
+ show() {
346
+ if (this.type) {
347
+ let types = this.type.split(',');
348
+ return types.length > 1;
349
+ }
350
+ return false;
351
+ }
352
+ },
353
+ data() {
354
+ return {
355
+ activeIndex: '0',
356
+ checkPassword: null,
357
+ checkPasswordMsg: null,
358
+ btnText: '获取验证码',
359
+ timer: '',
360
+ countdown: 0,
361
+ disabled: false,
362
+ submit: false,
363
+ formData: {}
364
+ };
365
+ },
366
+ created() {
367
+ this.getInitModifyPassword();
368
+ if (this.type) {
369
+ let types = this.type.split(',');
370
+ if (types.length) {
371
+ this.activeIndex = types[0];
372
+ }
373
+ } else {
374
+ this.activeIndex = '0';
375
+ }
376
+ },
377
+ destroyed() {
378
+ clearInterval(this.timer);
379
+ },
380
+ methods: {
381
+ // 密码再次验证
382
+ reregExpValidate(rule, value, callback) {
383
+ if (value != this.formData.password) {
384
+ callback(new Error('两次密码不一致'));
385
+ } else {
386
+ callback();
387
+ }
388
+ },
389
+ getInitModifyPassword() {
390
+ util
391
+ .ajax({
392
+ url: initModifyPassword
393
+ })
394
+ .then((res) => {
395
+ if (res.rCode === 0) {
396
+ const results = JSON.parse(JSON.stringify(res.results));
397
+ if (results.checkPassword) {
398
+ this.checkPassword = new RegExp(results.checkPassword);
399
+ }
400
+ if (results.checkPasswordMsg) {
401
+ this.checkPasswordMsg = results.checkPasswordMsg;
402
+ }
403
+ } else {
404
+ let msg = res.msg || '系统错误,请联系管理员!';
405
+ this.$message.error(msg);
406
+ }
407
+ })
408
+ .catch((err) => {
409
+ if (err.message && err.message !== 'canceled') {
410
+ this.$message.error(err.message);
411
+ }
412
+ });
413
+ },
414
+ getVerificationCode() {
415
+ if (this.countdown) {
416
+ return false;
417
+ }
418
+ if (!this.formData.target) {
419
+ this.$refs.pwdForm.validateField('target');
420
+ return false;
421
+ } else {
422
+ let flag = false;
423
+ this.$refs.pwdForm.validateField('target', (res) => {
424
+ flag = res != '';
425
+ });
426
+ if (flag) {
427
+ return false;
428
+ }
429
+ let data = {
430
+ target: this.formData.target,
431
+ targetType: this.activeIndex == '6' ? 'SMS' : 'EMAIL'
432
+ };
433
+ this.countdown = 60;
434
+ this.getCode(data);
435
+ this.timer = setInterval(() => {
436
+ if (this.countdown > 0) {
437
+ this.countdown--;
438
+ this.disabled = true;
439
+ this.btnText = '重新获取' + this.countdown + 's';
440
+ } else {
441
+ this.btnText = '获取验证码';
442
+ this.disabled = false;
443
+ clearInterval(this.timer);
444
+ }
445
+ }, 1000);
446
+ }
447
+ },
448
+ getCode(params) {
449
+ util
450
+ .ajax({
451
+ url: getModifyPassCode,
452
+ params: params
453
+ })
454
+ .then((res) => {
455
+ if (res.rCode === 0) {
456
+ this.$message.success(res.msg);
457
+ } else {
458
+ let msg = res.msg || '系统错误,请联系管理员!';
459
+ if (res.rCode === 2) {
460
+ this.btnText = '获取验证码';
461
+ this.disabled = false;
462
+ this.countdown = 0;
463
+ clearInterval(this.timer);
464
+ }
465
+ this.$message.error(msg);
466
+ }
467
+ })
468
+ .catch((err) => {
469
+ if (err.message && err.message !== 'canceled') {
470
+ this.$message.error(err.message);
471
+ }
472
+ });
473
+ },
474
+ handleSubmit(res) {
475
+ this.submit = true;
476
+ let { repassword, ...data } = res;
477
+ if (this.secret && this.isEncrypt) {
478
+ data.password = util.esmEncrypt({
479
+ data: data.password,
480
+ key: this.secret
481
+ });
482
+ if (data.oldPassword) {
483
+ data.oldPassword = util.esmEncrypt({
484
+ data: data.oldPassword,
485
+ key: this.secret
486
+ });
487
+ }
488
+ }
489
+ if (this.activeIndex == '0') {
490
+ data.operationCheckCode = this.operationCheckCode;
491
+ util
492
+ .ajax({
493
+ method: 'post',
494
+ url: loginModifyPassword,
495
+ data: data
496
+ })
497
+ .then((res) => {
498
+ this.submit = false;
499
+ if (res.rCode === 0) {
500
+ this.$message.success(res.msg);
501
+ this.$emit('success');
502
+ } else {
503
+ let msg = res.msg || '系统错误,请联系管理员!';
504
+ this.$message.error(msg);
505
+ this.disabled = false;
506
+ delete this.formData.verificationCode;
507
+ clearInterval(this.timer);
508
+ }
509
+ })
510
+ .catch((err) => {
511
+ if (err.message && err.message !== 'canceled') {
512
+ this.$message.error(err.message);
513
+ }
514
+ });
515
+ } else {
516
+ if (this.activeIndex == '6') {
517
+ data.targetType = 'SMS';
518
+ } else {
519
+ data.targetType = 'EMAIL';
520
+ }
521
+ util
522
+ .ajax({
523
+ method: 'post',
524
+ url: codeModifyPass,
525
+ data: data
526
+ })
527
+ .then((res) => {
528
+ this.submit = false;
529
+ if (res.rCode === 0) {
530
+ this.$message.success(res.msg);
531
+ this.$emit('success');
532
+ } else {
533
+ let msg = res.msg || '系统错误,请联系管理员!';
534
+ this.btnText = '获取验证码';
535
+ this.disabled = false;
536
+ clearInterval(this.timer);
537
+ delete this.formData.verificationCode;
538
+ this.$message.error(msg);
539
+ }
540
+ })
541
+ .catch((err) => {
542
+ if (err.message && err.message !== 'canceled') {
543
+ this.$message.error(err.message);
544
+ }
545
+ });
546
+ }
547
+ },
548
+ handleSelect(res) {
549
+ this.$refs.pwdForm.resetFields();
550
+ this.activeIndex = res;
551
+ this.btnText = '获取验证码';
552
+ this.disabled = false;
553
+ clearInterval(this.timer);
554
+ }
555
+ }
556
+ };
557
+ </script>