system-clients 3.3.6 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/.eslintrc.js +16 -16
  2. package/SystemClient.iml +8 -8
  3. package/build/webpack.base.conf.js +85 -85
  4. package/build.gradle +6 -6
  5. package/examples/LoginPage/App.vue +21 -21
  6. package/examples/LoginPage/index.html +11 -11
  7. package/examples/LoginPage/main.js +15 -15
  8. package/index.html +21 -21
  9. package/package.json +105 -105
  10. package/src/App.vue +24 -24
  11. package/src/LodopFuncs.js +155 -155
  12. package/src/components/Main.vue +935 -935
  13. package/src/components/TabButton.vue +201 -201
  14. package/src/components/Tabs.vue +67 -67
  15. package/src/components/Util.js +343 -343
  16. package/src/components/addressManage/AddressCascadingMenu.vue +145 -145
  17. package/src/components/common/ProgressBase.vue +83 -83
  18. package/src/components/equipment/EquipmentManage.vue +83 -83
  19. package/src/components/equipment/PcAdd.vue +115 -115
  20. package/src/components/equipment/PcList.vue +119 -119
  21. package/src/components/equipment/PcManage.vue +61 -61
  22. package/src/components/equipment/PhoneAdd.vue +118 -118
  23. package/src/components/equipment/PhoneList.vue +113 -113
  24. package/src/components/equipment/PhoneManage.vue +61 -61
  25. package/src/components/equipment/PosAdd.vue +319 -319
  26. package/src/components/equipment/PosList.vue +292 -292
  27. package/src/components/equipment/PosManage.vue +138 -138
  28. package/src/components/equipment/PosManageBoth.vue +125 -125
  29. package/src/components/equipment/PosParamAdd.vue +236 -236
  30. package/src/components/equipment/PosParamList.vue +121 -121
  31. package/src/components/equipment/PosParamManage.vue +51 -51
  32. package/src/components/materialManage/materialData.vue +44 -44
  33. package/src/components/materialManage/materialList.vue +255 -255
  34. package/src/components/parammanage/ParamManage.vue +42 -42
  35. package/src/components/parammanage/ParamPage.vue +337 -337
  36. package/src/components/parammanage/ParamPages.vue +222 -222
  37. package/src/components/parammanage/SinglePage.vue +235 -235
  38. package/src/components/parammanage/SinglePages.vue +167 -167
  39. package/src/components/server/AddChangeMsg.vue +66 -66
  40. package/src/components/server/ChangeDeclare.vue +45 -45
  41. package/src/components/server/ImageVieweTest.vue +56 -56
  42. package/src/components/server/ImageViewer.vue +350 -350
  43. package/src/components/server/LeftTree.vue +111 -111
  44. package/src/components/server/LoadData.vue +55 -55
  45. package/src/components/server/Login.vue +615 -615
  46. package/src/components/server/LoginPage.vue +235 -235
  47. package/src/components/server/LoginView.vue +128 -128
  48. package/src/components/server/Menu.vue +188 -188
  49. package/src/components/server/ModifyPw.vue +126 -126
  50. package/src/components/server/PcdBuildingSelect.vue +243 -243
  51. package/src/components/server/ResSelect.vue +172 -172
  52. package/src/components/server/ResSelectGroup.vue +211 -211
  53. package/src/components/server/RightTree.vue +348 -348
  54. package/src/components/server/RoleSelector.vue +90 -90
  55. package/src/components/server/TestResSelect.vue +58 -58
  56. package/src/components/server/TestResSelectGroup.vue +388 -388
  57. package/src/filiale/baole/Login.vue +570 -570
  58. package/src/filiale/baole/system.js +5 -5
  59. package/src/filiale/bayan/PosAdd.vue +368 -368
  60. package/src/filiale/bayan/PosList.vue +341 -341
  61. package/src/filiale/bayan/PosManage.vue +138 -138
  62. package/src/filiale/bayan/system.js +6 -6
  63. package/src/filiale/chengtou/Login.vue +539 -539
  64. package/src/filiale/chengtou/system.js +5 -5
  65. package/src/filiale/dongguan/Login.vue +902 -902
  66. package/src/filiale/dongguan/Main.vue +717 -717
  67. package/src/filiale/dongguan/system.js +6 -6
  68. package/src/filiale/furuike/Login.vue +587 -587
  69. package/src/filiale/furuike/Main.vue +840 -840
  70. package/src/filiale/furuike/system.js +7 -7
  71. package/src/filiale/gehua/Main.vue +809 -809
  72. package/src/filiale/gehua/system.js +6 -6
  73. package/src/filiale/konggang/Login.vue +472 -472
  74. package/src/filiale/konggang/system.js +7 -7
  75. package/src/filiale/qianneng/Login.vue +584 -584
  76. package/src/filiale/qianneng/Main.vue +818 -818
  77. package/src/filiale/qianneng/ModifyPw.vue +108 -108
  78. package/src/filiale/qianneng/system.js +11 -11
  79. package/src/filiale/rizhao/LeftTree.vue +111 -111
  80. package/src/filiale/rizhao/Login.vue +793 -793
  81. package/src/filiale/rizhao/Main.vue +611 -611
  82. package/src/filiale/rizhao/system.js +14 -14
  83. package/src/filiale/ruihua/Login.vue +576 -576
  84. package/src/filiale/ruihua/system.js +5 -5
  85. package/src/filiale/shiquan/Login.vue +566 -566
  86. package/src/filiale/shiquan/system.js +8 -8
  87. package/src/filiale/tianyi/Login.vue +573 -573
  88. package/src/filiale/tianyi/system.js +5 -5
  89. package/src/filiale/tongchuan/Login.vue +563 -563
  90. package/src/filiale/tongchuan/Main.vue +1021 -1021
  91. package/src/filiale/tongchuan/system.js +7 -7
  92. package/src/filiale/weinan/Main.vue +924 -924
  93. package/src/filiale/weinan/system.js +7 -7
  94. package/src/filiale/wenxi/Login.vue +537 -537
  95. package/src/filiale/wenxi/Main.vue +787 -787
  96. package/src/filiale/wenxi/system.js +10 -10
  97. package/src/filiale/wuhai/LeftTree.vue +141 -141
  98. package/src/filiale/wuhai/Main.vue +810 -810
  99. package/src/filiale/wuhai/system.js +10 -10
  100. package/src/filiale/yuchuan/Login.vue +891 -891
  101. package/src/filiale/yuchuan/Main.vue +866 -866
  102. package/src/filiale/yuchuan/system.js +10 -10
  103. package/src/filiale/zhoukou/Main.vue +809 -809
  104. package/src/filiale/zhoukou/system.js +6 -6
  105. package/src/plugins/EncryptUtil.js +53 -53
  106. package/src/plugins/GetLoginInfoService.js +480 -480
  107. package/src/plugins/HeatGetLoginInfoService.js +491 -491
  108. package/src/plugins/validation.js +15 -15
  109. package/src/project/State.js +17 -17
  110. package/src/stores/AppData.js +38 -38
  111. package/src/stores/HeatAppData.js +38 -38
  112. package/src/styles/fonts/glyphicons-halflings-regular.svg +288 -288
  113. package/src/styles/less/.csscomb.json +304 -304
  114. package/src/styles/less/.csslintrc +19 -19
  115. package/src/styles/less/alerts.less +73 -73
  116. package/src/styles/less/aofeng/animate.min.css +10 -10
  117. package/src/styles/less/aofeng/expandcss.less +569 -569
  118. package/src/styles/less/aofeng/login.less +367 -367
  119. package/src/styles/less/aofeng/standard.less +2507 -2507
  120. package/src/styles/less/aofeng/themeOne/BinaryTemplate.less +690 -690
  121. package/src/styles/less/aofeng/themeOne/loginStyle.less +1586 -1586
  122. package/src/styles/less/aofeng/themeOne/systemStyle.less +2650 -2650
  123. package/src/styles/less/aofeng/themeOne.less +17 -17
  124. package/src/styles/less/aofeng/themeTwo/newStyle1.less +415 -415
  125. package/src/styles/less/aofeng/themeTwo.less +3 -3
  126. package/src/styles/less/badges.less +66 -66
  127. package/src/styles/less/bootstrap.less +66 -66
  128. package/src/styles/less/breadcrumbs.less +26 -26
  129. package/src/styles/less/button-groups.less +247 -247
  130. package/src/styles/less/buttons.less +172 -172
  131. package/src/styles/less/carousel.less +269 -269
  132. package/src/styles/less/close.less +34 -34
  133. package/src/styles/less/code.less +69 -69
  134. package/src/styles/less/component-animations.less +33 -33
  135. package/src/styles/less/dropdowns.less +216 -216
  136. package/src/styles/less/fonts-list.less +25 -25
  137. package/src/styles/less/forms.less +626 -626
  138. package/src/styles/less/glyphicons.less +305 -305
  139. package/src/styles/less/grid.less +84 -84
  140. package/src/styles/less/input-groups.less +167 -167
  141. package/src/styles/less/jumbotron.less +52 -52
  142. package/src/styles/less/labels.less +64 -64
  143. package/src/styles/less/list-group.less +141 -141
  144. package/src/styles/less/manageStyle/manageChile.less +180 -180
  145. package/src/styles/less/manageStyle/manageStyle/manageChile.less +180 -180
  146. package/src/styles/less/manageStyle/manageStyle/manageStyle.less +1102 -1102
  147. package/src/styles/less/manageStyle/manageStyle/safeStyle.less +498 -498
  148. package/src/styles/less/manageStyle/manageStyle.less +1102 -1102
  149. package/src/styles/less/manageStyle/safeStyle.less +498 -498
  150. package/src/styles/less/media.less +66 -66
  151. package/src/styles/less/mixins/alerts.less +14 -14
  152. package/src/styles/less/mixins/background-variant.less +9 -9
  153. package/src/styles/less/mixins/border-radius.less +18 -18
  154. package/src/styles/less/mixins/buttons.less +69 -69
  155. package/src/styles/less/mixins/center-block.less +7 -7
  156. package/src/styles/less/mixins/clearfix.less +22 -22
  157. package/src/styles/less/mixins/forms.less +90 -90
  158. package/src/styles/less/mixins/gradients.less +59 -59
  159. package/src/styles/less/mixins/grid-framework.less +92 -92
  160. package/src/styles/less/mixins/grid.less +122 -122
  161. package/src/styles/less/mixins/hide-text.less +21 -21
  162. package/src/styles/less/mixins/image.less +33 -33
  163. package/src/styles/less/mixins/labels.less +12 -12
  164. package/src/styles/less/mixins/list-group.less +30 -30
  165. package/src/styles/less/mixins/nav-divider.less +10 -10
  166. package/src/styles/less/mixins/nav-vertical-align.less +9 -9
  167. package/src/styles/less/mixins/opacity.less +8 -8
  168. package/src/styles/less/mixins/pagination.less +24 -24
  169. package/src/styles/less/mixins/panels.less +24 -24
  170. package/src/styles/less/mixins/progress-bar.less +10 -10
  171. package/src/styles/less/mixins/reset-filter.less +8 -8
  172. package/src/styles/less/mixins/reset-text.less +18 -18
  173. package/src/styles/less/mixins/resize.less +6 -6
  174. package/src/styles/less/mixins/responsive-visibility.less +15 -15
  175. package/src/styles/less/mixins/size.less +10 -10
  176. package/src/styles/less/mixins/tab-focus.less +9 -9
  177. package/src/styles/less/mixins/table-row.less +44 -44
  178. package/src/styles/less/mixins/text-emphasis.less +9 -9
  179. package/src/styles/less/mixins/text-overflow.less +8 -8
  180. package/src/styles/less/mixins/vendor-prefixes.less +227 -227
  181. package/src/styles/less/mixins.less +40 -40
  182. package/src/styles/less/modals.less +151 -151
  183. package/src/styles/less/navbar.less +660 -660
  184. package/src/styles/less/navs.less +285 -285
  185. package/src/styles/less/normalize.less +424 -424
  186. package/src/styles/less/pager.less +76 -76
  187. package/src/styles/less/pagination.less +89 -89
  188. package/src/styles/less/panels.less +275 -275
  189. package/src/styles/less/popovers.less +131 -131
  190. package/src/styles/less/print.less +101 -101
  191. package/src/styles/less/progress-bars.less +87 -87
  192. package/src/styles/less/responsive-embed.less +35 -35
  193. package/src/styles/less/responsive-utilities.less +194 -194
  194. package/src/styles/less/scaffolding.less +161 -161
  195. package/src/styles/less/stand.less +207 -207
  196. package/src/styles/less/tables.less +312 -312
  197. package/src/styles/less/theme.less +291 -291
  198. package/src/styles/less/thumbnails.less +36 -36
  199. package/src/styles/less/tooltip.less +102 -102
  200. package/src/styles/less/type.less +316 -316
  201. package/src/styles/less/utilities.less +55 -55
  202. package/src/styles/less/variables.less +899 -899
  203. package/src/styles/less/wells.less +29 -29
  204. package/src/system.js +122 -122
  205. package/src/util/Daiban.json +12 -12
  206. package/yarn-error.log +6896 -6896
  207. package/.gradle/8.5/checksums/checksums.lock +0 -0
  208. package/.gradle/8.5/dependencies-accessors/dependencies-accessors.lock +0 -0
  209. package/.gradle/8.5/dependencies-accessors/gc.properties +0 -0
  210. package/.gradle/8.5/executionHistory/executionHistory.bin +0 -0
  211. package/.gradle/8.5/executionHistory/executionHistory.lock +0 -0
  212. package/.gradle/8.5/fileChanges/last-build.bin +0 -0
  213. package/.gradle/8.5/fileHashes/fileHashes.bin +0 -0
  214. package/.gradle/8.5/fileHashes/fileHashes.lock +0 -0
  215. package/.gradle/8.5/gc.properties +0 -0
  216. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  217. package/.gradle/buildOutputCleanup/cache.properties +0 -2
  218. package/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  219. package/.gradle/file-system.probe +0 -0
  220. package/.gradle/vcs-1/gc.properties +0 -0
  221. package/gradle/wrapper/gradle-wrapper.jar +0 -0
  222. package/gradle/wrapper/gradle-wrapper.properties +0 -7
  223. package/gradlew +0 -249
  224. package/gradlew.bat +0 -92
@@ -1,235 +1,235 @@
1
- <template>
2
- <div class="login-box">
3
- <div class="login-title" style="height: 100vh;">
4
- <div class="row auto">
5
- <div style="margin-top: 6vh;float: right;padding-right: 20vh">
6
- <span style="font-size: 1.2rem;color: white;"><b>关于我们</b></span>
7
- </div>
8
- </div>
9
-
10
- <div class="row auto">
11
- <div style="width: 60vh;float: right;margin-top: 18vh;margin-right: 18vh;">
12
-
13
- <div style="color: white;font-size: 2.5rem;text-align: center;">
14
- <span>智 慧 燃 气 SaaS 云 平 台</span>
15
- </div>
16
-
17
- <div class="pt-1" style="color: white;font-size: 1.2rem;text-align: center;">
18
- <span>燃气行业数字化解决方案</span>
19
- </div>
20
-
21
- <div style="margin-top: 2.7rem;padding-left: 7rem;">
22
-
23
- <div class="pt-1" style="width: 82%;">
24
- <div class="login_input">
25
- <div @mouseenter="changeImageSrc(1, 'hover')"
26
- @mouseleave="changeImageSrc(1, '')">
27
- <img :src="enameImg">
28
- <span :class="enameShow ? 'color2' : 'color1'">|</span>
29
- <input type="text" placeholder=" 请输入登录账号" v-model="model.ename"/>
30
- </div>
31
- </div>
32
- </div>
33
-
34
- <div class="pt-1" style="width: 82%;">
35
- <div class="login_input">
36
- <div @mouseenter="changeImageSrc(2, 'hover')"
37
- @mouseleave="changeImageSrc(2, '')">
38
- <img :src="passwordImg">
39
- <span :class="passwordShow ? 'color2' : 'color1'">|</span>
40
- <input type="text" placeholder=" 请输入登录密码" v-model="model.password"/>
41
- </div>
42
- </div>
43
- </div>
44
-
45
-
46
- <div class="pt-1" style="width: 82%;">
47
- <div class="login_input">
48
- <div @mouseenter="changeImageSrc(3, 'hover')"
49
- @mouseleave="changeImageSrc(3, '')">
50
- <img :src="verificationCodeImg">
51
- <span :class="verificationCodeShow ? 'color2' : 'color1'">|</span>
52
- <input type="text" placeholder=" 请输入验证码" v-model="model.verificationCode"/>
53
- <span class="color2" style="float: right;padding-right: 2rem;" @click.native="createCode()">{{checkCode}}</span>
54
- </div>
55
- </div>
56
- </div>
57
- <div class="pt-1" style="width: 82%;padding-left: .667rem;color: white;font-size: 1rem">
58
- <input type="checkbox" name="type" value="true" v-model="isRememberPassword" id="cb"/>&nbsp;记住密码
59
- </div>
60
- </div>
61
-
62
- <div class="pt-1" style="color: white;font-size: 1.2rem;text-align: center;">
63
- <button class="btn_login" style="width: 20rem;" @click.native="confirm()">立即登录</button>
64
- </div>
65
-
66
- </div>
67
-
68
- </div>
69
-
70
- </div>
71
- </div>
72
- </template>
73
-
74
- <script>
75
- export default {
76
- title: '登录',
77
- data () {
78
- return {
79
- enameImg: require('../../../static/guangxi/ename.png'),
80
- passwordImg: require('../../../static/guangxi/password.png'),
81
- verificationCodeImg: require('../../../static/guangxi/verificationCode.png'),
82
- enameShow: false,
83
- passwordShow: false,
84
- verificationCodeShow: false,
85
- notice: '',
86
- model: {
87
- ename: '',
88
- password: '',
89
- verificationCode: ''
90
- },
91
- isRememberPassword: false,
92
- checkCode: ''
93
- }
94
- },
95
- created () {
96
- this.createCode()
97
- let storage = window.localStorage
98
- this.model.ename = storage.getItem('ename')
99
- this.model.password = storage.getItem('password')
100
- this.isRememberPassword = storage.getItem('isRememberPassword')
101
- },
102
- methods: {
103
- changeImageSrc (key, way) {
104
- switch (key) {
105
- case 1:
106
- if (way) {
107
- this.enameShow = true
108
- this.enameImg = require(`../../../static/guangxi/enameCopy.png`)
109
- } else if (!this.model.ename){
110
- this.enameShow = false
111
- this.enameImg = require(`../../../static/guangxi/ename.png`)
112
- }
113
- break
114
- case 2:
115
- if (way) {
116
- this.passwordShow = true
117
- this.passwordImg = require(`../../../static/guangxi/passwordCopy.png`)
118
- } else if (!this.model.password){
119
- this.passwordShow = false
120
- this.passwordImg = require(`../../../static/guangxi/password.png`)
121
- }
122
- break
123
- case 3:
124
- if (way) {
125
- this.verificationCodeShow = true
126
- this.verificationCodeImg = require(`../../../static/guangxi/verificationCodeCopy.png`)
127
- } else if (!this.model.verificationCode){
128
- this.verificationCodeShow = false
129
- this.verificationCodeImg = require(`../../../static/guangxi/verificationCode.png`)
130
- }
131
- break
132
- }
133
- },
134
- createCode(){
135
- let code = "";
136
- //验证码的长度
137
- let codeLength = 4;
138
- //随机数
139
- let random = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',
140
- 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');
141
- //循环操作
142
- for (let i = 0; i < codeLength; i++) {
143
- //取得随机数的索引(0~35)
144
- let index = Math.floor(Math.random() * 36);
145
- //根据索引取得随机数加到code上
146
- code += random[index];
147
- }
148
- //把code值赋给验证码
149
- this.checkCode = code;
150
- },
151
- confirm () {
152
- console.log('点击登录' + JSON.stringify(this.model))
153
- if (!this.model.ename) {
154
- this.$showMessage("请输入登录账号!")
155
- return
156
- }
157
- if (!this.model.password) {
158
- this.$showMessage("请输入登录密码!")
159
- return
160
- }
161
- if (!this.model.verificationCode) {
162
- this.$showMessage("请输入验证码!")
163
- return
164
- }
165
- if (this.model.verificationCode.toUpperCase() !== this.checkCode) {
166
- this.$showMessage("输入的验证码有误!")
167
- this.createCode()
168
- return
169
- }
170
- if (this.model.ename === '黄群' && this.model.password === '000000') {
171
- let storage = window.localStorage
172
- if (this.isRememberPassword) {
173
- storage.setItem('ename', this.model.ename)
174
- storage.setItem('password', this.model.password)
175
- storage.setItem('isRememberPassword', this.isRememberPassword)
176
- } else {
177
- storage.removeItem('ename')
178
- storage.removeItem('password')
179
- storage.removeItem('isRememberPassword')
180
- }
181
- console.log('555555555555')
182
- this.$goto('login-view')
183
- } else{
184
- this.$showMessage("登录失败,输入的账号或密码有误!")
185
- }
186
- }
187
- }
188
- }
189
- </script>
190
-
191
- <style lang="less" scoped>
192
- .login-box{
193
- overflow: hidden;
194
- background-image: url("../../../static/guangxi/backgroundImage.png");
195
- background-size:100% 100%;
196
- background-repeat:no-repeat;
197
- font-family: PINGFANG-MEDIUM;
198
- }
199
- .pt-1 {
200
- padding-top: 1rem;
201
- }
202
- .color1 {
203
- color: #c9c9c9;
204
- }
205
- .color2 {
206
- color: #4190f6;
207
- }
208
- #cb{
209
- accent-color: #4190f6;
210
- }
211
- .btn_login {
212
- width: 100%;
213
- height: 40px;
214
- background-color: #4292f7;
215
- border-radius: 3rem;
216
- border:none;
217
- font-family: PingFang,serif;
218
- font-size: 16px;
219
- color: #ffffff;
220
- }
221
- .btn_login:hover{background-color: #3171f4;}
222
- .login_input {
223
- line-height: 4.3rem;
224
- box-sizing: border-box;
225
- border-radius: 0.8rem;
226
- background: #fff;
227
- input{
228
- border: none;
229
- outline: none;
230
- }
231
- input::-webkit-input-placeholder {
232
- color: #c9c9c9;
233
- }
234
- }
235
- </style>
1
+ <template>
2
+ <div class="login-box">
3
+ <div class="login-title" style="height: 100vh;">
4
+ <div class="row auto">
5
+ <div style="margin-top: 6vh;float: right;padding-right: 20vh">
6
+ <span style="font-size: 1.2rem;color: white;"><b>关于我们</b></span>
7
+ </div>
8
+ </div>
9
+
10
+ <div class="row auto">
11
+ <div style="width: 60vh;float: right;margin-top: 18vh;margin-right: 18vh;">
12
+
13
+ <div style="color: white;font-size: 2.5rem;text-align: center;">
14
+ <span>智 慧 燃 气 SaaS 云 平 台</span>
15
+ </div>
16
+
17
+ <div class="pt-1" style="color: white;font-size: 1.2rem;text-align: center;">
18
+ <span>燃气行业数字化解决方案</span>
19
+ </div>
20
+
21
+ <div style="margin-top: 2.7rem;padding-left: 7rem;">
22
+
23
+ <div class="pt-1" style="width: 82%;">
24
+ <div class="login_input">
25
+ <div @mouseenter="changeImageSrc(1, 'hover')"
26
+ @mouseleave="changeImageSrc(1, '')">
27
+ <img :src="enameImg">
28
+ <span :class="enameShow ? 'color2' : 'color1'">|</span>
29
+ <input type="text" placeholder=" 请输入登录账号" v-model="model.ename"/>
30
+ </div>
31
+ </div>
32
+ </div>
33
+
34
+ <div class="pt-1" style="width: 82%;">
35
+ <div class="login_input">
36
+ <div @mouseenter="changeImageSrc(2, 'hover')"
37
+ @mouseleave="changeImageSrc(2, '')">
38
+ <img :src="passwordImg">
39
+ <span :class="passwordShow ? 'color2' : 'color1'">|</span>
40
+ <input type="text" placeholder=" 请输入登录密码" v-model="model.password"/>
41
+ </div>
42
+ </div>
43
+ </div>
44
+
45
+
46
+ <div class="pt-1" style="width: 82%;">
47
+ <div class="login_input">
48
+ <div @mouseenter="changeImageSrc(3, 'hover')"
49
+ @mouseleave="changeImageSrc(3, '')">
50
+ <img :src="verificationCodeImg">
51
+ <span :class="verificationCodeShow ? 'color2' : 'color1'">|</span>
52
+ <input type="text" placeholder=" 请输入验证码" v-model="model.verificationCode"/>
53
+ <span class="color2" style="float: right;padding-right: 2rem;" @click.native="createCode()">{{checkCode}}</span>
54
+ </div>
55
+ </div>
56
+ </div>
57
+ <div class="pt-1" style="width: 82%;padding-left: .667rem;color: white;font-size: 1rem">
58
+ <input type="checkbox" name="type" value="true" v-model="isRememberPassword" id="cb"/>&nbsp;记住密码
59
+ </div>
60
+ </div>
61
+
62
+ <div class="pt-1" style="color: white;font-size: 1.2rem;text-align: center;">
63
+ <button class="btn_login" style="width: 20rem;" @click.native="confirm()">立即登录</button>
64
+ </div>
65
+
66
+ </div>
67
+
68
+ </div>
69
+
70
+ </div>
71
+ </div>
72
+ </template>
73
+
74
+ <script>
75
+ export default {
76
+ title: '登录',
77
+ data () {
78
+ return {
79
+ enameImg: require('../../../static/guangxi/ename.png'),
80
+ passwordImg: require('../../../static/guangxi/password.png'),
81
+ verificationCodeImg: require('../../../static/guangxi/verificationCode.png'),
82
+ enameShow: false,
83
+ passwordShow: false,
84
+ verificationCodeShow: false,
85
+ notice: '',
86
+ model: {
87
+ ename: '',
88
+ password: '',
89
+ verificationCode: ''
90
+ },
91
+ isRememberPassword: false,
92
+ checkCode: ''
93
+ }
94
+ },
95
+ created () {
96
+ this.createCode()
97
+ let storage = window.localStorage
98
+ this.model.ename = storage.getItem('ename')
99
+ this.model.password = storage.getItem('password')
100
+ this.isRememberPassword = storage.getItem('isRememberPassword')
101
+ },
102
+ methods: {
103
+ changeImageSrc (key, way) {
104
+ switch (key) {
105
+ case 1:
106
+ if (way) {
107
+ this.enameShow = true
108
+ this.enameImg = require(`../../../static/guangxi/enameCopy.png`)
109
+ } else if (!this.model.ename){
110
+ this.enameShow = false
111
+ this.enameImg = require(`../../../static/guangxi/ename.png`)
112
+ }
113
+ break
114
+ case 2:
115
+ if (way) {
116
+ this.passwordShow = true
117
+ this.passwordImg = require(`../../../static/guangxi/passwordCopy.png`)
118
+ } else if (!this.model.password){
119
+ this.passwordShow = false
120
+ this.passwordImg = require(`../../../static/guangxi/password.png`)
121
+ }
122
+ break
123
+ case 3:
124
+ if (way) {
125
+ this.verificationCodeShow = true
126
+ this.verificationCodeImg = require(`../../../static/guangxi/verificationCodeCopy.png`)
127
+ } else if (!this.model.verificationCode){
128
+ this.verificationCodeShow = false
129
+ this.verificationCodeImg = require(`../../../static/guangxi/verificationCode.png`)
130
+ }
131
+ break
132
+ }
133
+ },
134
+ createCode(){
135
+ let code = "";
136
+ //验证码的长度
137
+ let codeLength = 4;
138
+ //随机数
139
+ let random = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',
140
+ 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');
141
+ //循环操作
142
+ for (let i = 0; i < codeLength; i++) {
143
+ //取得随机数的索引(0~35)
144
+ let index = Math.floor(Math.random() * 36);
145
+ //根据索引取得随机数加到code上
146
+ code += random[index];
147
+ }
148
+ //把code值赋给验证码
149
+ this.checkCode = code;
150
+ },
151
+ confirm () {
152
+ console.log('点击登录' + JSON.stringify(this.model))
153
+ if (!this.model.ename) {
154
+ this.$showMessage("请输入登录账号!")
155
+ return
156
+ }
157
+ if (!this.model.password) {
158
+ this.$showMessage("请输入登录密码!")
159
+ return
160
+ }
161
+ if (!this.model.verificationCode) {
162
+ this.$showMessage("请输入验证码!")
163
+ return
164
+ }
165
+ if (this.model.verificationCode.toUpperCase() !== this.checkCode) {
166
+ this.$showMessage("输入的验证码有误!")
167
+ this.createCode()
168
+ return
169
+ }
170
+ if (this.model.ename === '黄群' && this.model.password === '000000') {
171
+ let storage = window.localStorage
172
+ if (this.isRememberPassword) {
173
+ storage.setItem('ename', this.model.ename)
174
+ storage.setItem('password', this.model.password)
175
+ storage.setItem('isRememberPassword', this.isRememberPassword)
176
+ } else {
177
+ storage.removeItem('ename')
178
+ storage.removeItem('password')
179
+ storage.removeItem('isRememberPassword')
180
+ }
181
+ console.log('555555555555')
182
+ this.$goto('login-view')
183
+ } else{
184
+ this.$showMessage("登录失败,输入的账号或密码有误!")
185
+ }
186
+ }
187
+ }
188
+ }
189
+ </script>
190
+
191
+ <style lang="less" scoped>
192
+ .login-box{
193
+ overflow: hidden;
194
+ background-image: url("../../../static/guangxi/backgroundImage.png");
195
+ background-size:100% 100%;
196
+ background-repeat:no-repeat;
197
+ font-family: PINGFANG-MEDIUM;
198
+ }
199
+ .pt-1 {
200
+ padding-top: 1rem;
201
+ }
202
+ .color1 {
203
+ color: #c9c9c9;
204
+ }
205
+ .color2 {
206
+ color: #4190f6;
207
+ }
208
+ #cb{
209
+ accent-color: #4190f6;
210
+ }
211
+ .btn_login {
212
+ width: 100%;
213
+ height: 40px;
214
+ background-color: #4292f7;
215
+ border-radius: 3rem;
216
+ border:none;
217
+ font-family: PingFang,serif;
218
+ font-size: 16px;
219
+ color: #ffffff;
220
+ }
221
+ .btn_login:hover{background-color: #3171f4;}
222
+ .login_input {
223
+ line-height: 4.3rem;
224
+ box-sizing: border-box;
225
+ border-radius: 0.8rem;
226
+ background: #fff;
227
+ input{
228
+ border: none;
229
+ outline: none;
230
+ }
231
+ input::-webkit-input-placeholder {
232
+ color: #c9c9c9;
233
+ }
234
+ }
235
+ </style>