system-clients 3.2.1-8 → 3.2.1-aodeToV4

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 (172) hide show
  1. package/.eslintrc.js +16 -16
  2. package/.gradle/7.1/dependencies-accessors/dependencies-accessors.lock +0 -0
  3. package/.gradle/7.1/executionHistory/executionHistory.bin +0 -0
  4. package/.gradle/7.1/executionHistory/executionHistory.lock +0 -0
  5. package/.gradle/7.1/fileChanges/last-build.bin +0 -0
  6. package/.gradle/7.1/fileHashes/fileHashes.bin +0 -0
  7. package/.gradle/7.1/fileHashes/fileHashes.lock +0 -0
  8. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  9. package/.gradle/buildOutputCleanup/cache.properties +2 -2
  10. package/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  11. package/.gradle/checksums/checksums.lock +0 -0
  12. package/SystemClient.iml +11 -11
  13. package/build/webpack.base.conf.js +78 -85
  14. package/build.gradle +6 -6
  15. package/gradle/wrapper/gradle-wrapper.jar +0 -0
  16. package/gradle/wrapper/gradle-wrapper.properties +5 -0
  17. package/gradlew +185 -0
  18. package/gradlew.bat +89 -0
  19. package/index.html +21 -21
  20. package/package.json +4 -4
  21. package/src/LodopFuncs.js +123 -123
  22. package/src/components/Main.vue +515 -622
  23. package/src/components/Util.js +343 -343
  24. package/src/components/equipment/EquipmentManage.vue +65 -65
  25. package/src/components/equipment/PcAdd.vue +105 -105
  26. package/src/components/equipment/PcList.vue +119 -119
  27. package/src/components/equipment/PcManage.vue +60 -60
  28. package/src/components/equipment/PhoneAdd.vue +94 -94
  29. package/src/components/equipment/PhoneList.vue +102 -102
  30. package/src/components/equipment/PhoneManage.vue +60 -60
  31. package/src/components/equipment/PosAdd.vue +156 -323
  32. package/src/components/equipment/PosList.vue +164 -294
  33. package/src/components/equipment/PosManage.vue +68 -138
  34. package/src/components/materialManage/materialData.vue +44 -44
  35. package/src/components/materialManage/materialList.vue +255 -255
  36. package/src/components/parammanage/ParamManage.vue +42 -42
  37. package/src/components/parammanage/ParamPage.vue +314 -336
  38. package/src/components/parammanage/ParamPages.vue +222 -222
  39. package/src/components/parammanage/SinglePage.vue +235 -235
  40. package/src/components/parammanage/SinglePages.vue +167 -167
  41. package/src/components/server/AddChangeMsg.vue +66 -66
  42. package/src/components/server/ChangeDeclare.vue +45 -45
  43. package/src/components/server/LeftTree.vue +111 -111
  44. package/src/components/server/LoadData.vue +36 -55
  45. package/src/components/server/Login.vue +619 -653
  46. package/src/components/server/Menu.vue +188 -188
  47. package/src/components/server/ModifyPw.vue +112 -107
  48. package/src/components/server/NewResSelectGroup.vue +211 -0
  49. package/src/components/server/ResSelect.vue +153 -155
  50. package/src/components/server/ResSelectGroup.vue +159 -198
  51. package/src/components/server/RightTree.vue +343 -348
  52. package/src/components/server/RoleSelector.vue +90 -89
  53. package/src/components/server/TestResSelect.vue +58 -58
  54. package/src/components/server/TestResSelectGroup.vue +388 -388
  55. package/src/plugins/EncryptUtil.js +53 -0
  56. package/src/plugins/GetLoginInfoService.js +499 -518
  57. package/src/plugins/HeatGetLoginInfoService.js +491 -491
  58. package/src/plugins/validation.js +7 -15
  59. package/src/stores/AppData.js +38 -38
  60. package/src/stores/HeatAppData.js +38 -38
  61. package/src/styles/fonts/glyphicons-halflings-regular.svg +287 -287
  62. package/src/styles/less/.csscomb.json +304 -304
  63. package/src/styles/less/.csslintrc +19 -19
  64. package/src/styles/less/alerts.less +73 -73
  65. package/src/styles/less/aofeng/animate.min.css +10 -10
  66. package/src/styles/less/aofeng/expandcss.less +569 -569
  67. package/src/styles/less/aofeng/standard.less +2121 -2507
  68. package/src/styles/less/aofeng/themeOne/BinaryTemplate.less +686 -686
  69. package/src/styles/less/aofeng/themeOne/loginStyle.less +1586 -1586
  70. package/src/styles/less/aofeng/themeOne/systemStyle.less +2650 -2650
  71. package/src/styles/less/aofeng/themeOne.less +17 -17
  72. package/src/styles/less/aofeng/themeTwo/newStyle1.less +415 -415
  73. package/src/styles/less/aofeng/themeTwo.less +3 -3
  74. package/src/styles/less/badges.less +66 -66
  75. package/src/styles/less/bootstrap.less +66 -66
  76. package/src/styles/less/breadcrumbs.less +26 -26
  77. package/src/styles/less/button-groups.less +247 -247
  78. package/src/styles/less/buttons.less +172 -172
  79. package/src/styles/less/carousel.less +269 -269
  80. package/src/styles/less/close.less +34 -34
  81. package/src/styles/less/code.less +69 -69
  82. package/src/styles/less/component-animations.less +33 -33
  83. package/src/styles/less/dropdowns.less +216 -216
  84. package/src/styles/less/fonts-list.less +25 -25
  85. package/src/styles/less/forms.less +626 -626
  86. package/src/styles/less/glyphicons.less +305 -305
  87. package/src/styles/less/grid.less +84 -84
  88. package/src/styles/less/input-groups.less +167 -167
  89. package/src/styles/less/jumbotron.less +52 -52
  90. package/src/styles/less/labels.less +64 -64
  91. package/src/styles/less/list-group.less +141 -141
  92. package/src/styles/less/manageStyle/manageChile.less +180 -180
  93. package/src/styles/less/manageStyle/manageStyle.less +1102 -1102
  94. package/src/styles/less/manageStyle/safeStyle.less +498 -498
  95. package/src/styles/less/media.less +66 -66
  96. package/src/styles/less/mixins/alerts.less +14 -14
  97. package/src/styles/less/mixins/background-variant.less +9 -9
  98. package/src/styles/less/mixins/border-radius.less +18 -18
  99. package/src/styles/less/mixins/buttons.less +69 -69
  100. package/src/styles/less/mixins/center-block.less +7 -7
  101. package/src/styles/less/mixins/clearfix.less +22 -22
  102. package/src/styles/less/mixins/forms.less +90 -90
  103. package/src/styles/less/mixins/gradients.less +59 -59
  104. package/src/styles/less/mixins/grid-framework.less +92 -92
  105. package/src/styles/less/mixins/grid.less +122 -122
  106. package/src/styles/less/mixins/hide-text.less +21 -21
  107. package/src/styles/less/mixins/image.less +33 -33
  108. package/src/styles/less/mixins/labels.less +12 -12
  109. package/src/styles/less/mixins/list-group.less +30 -30
  110. package/src/styles/less/mixins/nav-divider.less +10 -10
  111. package/src/styles/less/mixins/nav-vertical-align.less +9 -9
  112. package/src/styles/less/mixins/opacity.less +8 -8
  113. package/src/styles/less/mixins/pagination.less +24 -24
  114. package/src/styles/less/mixins/panels.less +24 -24
  115. package/src/styles/less/mixins/progress-bar.less +10 -10
  116. package/src/styles/less/mixins/reset-filter.less +8 -8
  117. package/src/styles/less/mixins/reset-text.less +18 -18
  118. package/src/styles/less/mixins/resize.less +6 -6
  119. package/src/styles/less/mixins/responsive-visibility.less +15 -15
  120. package/src/styles/less/mixins/size.less +10 -10
  121. package/src/styles/less/mixins/tab-focus.less +9 -9
  122. package/src/styles/less/mixins/table-row.less +44 -44
  123. package/src/styles/less/mixins/text-emphasis.less +9 -9
  124. package/src/styles/less/mixins/text-overflow.less +8 -8
  125. package/src/styles/less/mixins/vendor-prefixes.less +227 -227
  126. package/src/styles/less/mixins.less +40 -40
  127. package/src/styles/less/modals.less +151 -151
  128. package/src/styles/less/navbar.less +660 -660
  129. package/src/styles/less/navs.less +285 -285
  130. package/src/styles/less/normalize.less +424 -424
  131. package/src/styles/less/pager.less +76 -76
  132. package/src/styles/less/pagination.less +89 -89
  133. package/src/styles/less/panels.less +275 -275
  134. package/src/styles/less/popovers.less +131 -131
  135. package/src/styles/less/print.less +101 -101
  136. package/src/styles/less/progress-bars.less +87 -87
  137. package/src/styles/less/responsive-embed.less +35 -35
  138. package/src/styles/less/responsive-utilities.less +194 -194
  139. package/src/styles/less/scaffolding.less +161 -161
  140. package/src/styles/less/stand.less +207 -207
  141. package/src/styles/less/tables.less +262 -312
  142. package/src/styles/less/theme.less +291 -291
  143. package/src/styles/less/thumbnails.less +36 -36
  144. package/src/styles/less/tooltip.less +102 -102
  145. package/src/styles/less/type.less +303 -316
  146. package/src/styles/less/utilities.less +55 -55
  147. package/src/styles/less/variables.less +896 -899
  148. package/src/styles/less/wells.less +29 -29
  149. package/src/system.js +85 -100
  150. package/static/aodelogo.png +0 -0
  151. package/static/aodenewlogo.png +0 -0
  152. package/static/ewmlogo.png +0 -0
  153. package/.gradle/buildOutputCleanup/cache.properties.lock +0 -1
  154. package/src/components/TabButton.vue +0 -201
  155. package/src/components/Tabs.vue +0 -67
  156. package/src/components/equipment/PosManageBoth.vue +0 -125
  157. package/src/components/equipment/PosParamAdd.vue +0 -236
  158. package/src/components/equipment/PosParamList.vue +0 -121
  159. package/src/components/equipment/PosParamManage.vue +0 -51
  160. package/src/components/server/ImageVieweTest.vue +0 -56
  161. package/src/components/server/ImageViewer.vue +0 -350
  162. package/src/components/server/PcdBuildingSelect.vue +0 -241
  163. package/src/filiale/qianneng/ModifyPw.vue +0 -107
  164. package/src/filiale/qianneng/sale.js +0 -7
  165. package/src/styles/less/manageStyle/manageStyle/manageChile.less +0 -180
  166. package/src/styles/less/manageStyle/manageStyle/manageStyle.less +0 -1102
  167. package/src/styles/less/manageStyle/manageStyle/safeStyle.less +0 -498
  168. package/static/logo.png +0 -0
  169. package/static/newStyle/about-us.png +0 -0
  170. package/yarn-error.log +0 -6896
  171. /package/.gradle/{5.2.1 → 7.1/dependencies-accessors}/gc.properties +0 -0
  172. /package/.gradle/{buildOutputCleanup/built.bin → 7.1/gc.properties} +0 -0
@@ -1,59 +1,52 @@
1
1
  <template>
2
2
  <div class="syslogin">
3
- <div class="login-title" >
4
- <div class="row auto">
5
- <marquee style="width:80%;margin-top:25px"><span style="font-size: 1.8rem;color: white;">{{notice}}</span></marquee>
6
- <div class="login-title-chi" style="white-space: nowrap;margin-right:-5%">
7
- <img src="../../../static/newStyle/login-info.png"/>
8
- <span @click="showus=true">关于我们</span>
9
- <!-- <img src="../../../static/newStyle/login-con.png"/>-->
10
- <!-- <span>联系我们</span>-->
11
- </div>
3
+ <div class="login-title">
4
+ <div class="login-title-chi" style="white-space: nowrap">
5
+ <img src="../../../static/newStyle/login-info.png"/>
6
+ <span>关于我们</span>
7
+ <img src="../../../static/newStyle/login-con.png"/>
8
+ <span>联系我们</span>
12
9
  </div>
13
10
  </div>
14
-
15
- <modal :show.sync="showus" backdrop="true" width="50%" style="width:auto;">
16
- <article slot="modal-body" class="modal-body" >
17
- <img style="height:100%;width:100%" src="../../../static/newStyle/about-us.png"/>
18
- </article>
19
- <footer slot="modal-footer" class="modal-footer">
20
- </footer>
21
- </modal>
22
-
23
-
24
- <div class="logoew" v-if="logoandroid" >
11
+ <div class="logopic">
12
+ <div class="aodelogo"></div>
13
+ </div>
14
+ <div class="logoew" v-if="logoandroid">
25
15
  <div v-if="logoandroid" class="imglogo"></div>
26
16
  <p class="logocontent">燃气客服系统Android版</p>
27
- <p class="logofooter">(仅浏览器扫描)</p>
17
+ <p class="logofooter">(仅浏览器扫描)</p>
28
18
  </div>
29
19
  <!--输入框-->
30
20
  <div class="loginmain">
31
21
  <!-- <img src="../../../static/login_title1.png" alt="图片加载未完成" class="img-responsive" style="margin: 0 auto; padding-top: 150px;" /> -->
32
22
  <div class="loginmain-left">
33
- <img class="loginmain-left-img" src="../../../static/newStyle/login-left.png">
23
+ <img class="loginmain-left-img" src="../../../static/newStyle/login-left.png">
34
24
  </div>
35
- <div class="loginmain-right">
25
+ <div class="loginmain-right" style="width:45%">
36
26
 
37
- <p @click="theme()" style="white-space: nowrap">{{config.title}}</p>
27
+ <p @click="theme()" style="white-space: nowrap">燃气客服系统</p>
38
28
 
39
29
  <form v-show="!login">
40
30
  <!-- <input type="text" placeholder="用户名" v-model="model.ename" class="usericon">-->
41
31
  <div class="login-input">
42
32
  <img src="../../../static/newStyle/login-user.png"/>
43
- <input type="text" style="display: inline;background-color: white!important;" placeholder="用户名" v-model="model.ename"/>
33
+ <input type="text" style="display: inline;background-color: white!important;" placeholder="用户名"
34
+ v-model="model.ename"/>
44
35
  </div>
45
36
  <div class="login-input">
46
37
  <img src="../../../static/newStyle/login-pwd.png"/>
47
- <input type="password" placeholder="密码" style="display: inline;background-color: darkgray;" v-model="model.password"
38
+ <input type="password" placeholder="密码" style="display: inline;background-color: darkgray;"
39
+ v-model="model.password"
48
40
  @keyup.enter="confirm('key')"/>
49
41
  </div>
50
42
  <div class="login-input-1">
51
43
  <img src="../../../static/newStyle/login-check.png"/>
52
- <input v-if="$login.Verification" class="login-check" type="text" placeholder="请输入验证码"
44
+ <input v-if="$login.Verification" class="login-check" type="text" placeholder="请输入验证码"
53
45
  v-model="picLyanzhengma" @keyup.enter="confirm('key')"/>
54
46
  </div>
55
- <div class="login-input-2" >
56
- <input v-if="$login.Verification" class="login-check-1" style="display: inline;background-color:#eeeeee !important;"
47
+ <div class="login-input-2">
48
+ <input v-if="$login.Verification" class="login-check-1"
49
+ style="display: inline;background-color:#eeeeee !important;"
57
50
  type="button" @click="createCode" v-model="checkCode"/>
58
51
  </div>
59
52
  <div class="login-bt">
@@ -78,7 +71,7 @@
78
71
  技术支持:西安奥枫软件有限公司
79
72
  </div>
80
73
 
81
- <modal v-if="depPromptShow" :show.sync="depPromptShow" :backdrop="false" v-ref:modal >
74
+ <modal v-if="depPromptShow" :show.sync="depPromptShow" :backdrop="false" v-ref:modal>
82
75
  <header slot="modal-header" class="modal-header">
83
76
  <h4 class="modal-title">登录信息</h4>
84
77
  </header>
@@ -88,19 +81,25 @@
88
81
  <div class="col-sm-12 form-group">
89
82
  <label class="col-sm-5 control-label">当前登录人</label>
90
83
  <div class="col-sm-7">
91
- <p class="form-control-static">{{$login.f.name}}</p>
84
+ <p class="form-control-static">{{ $login.f.name }}</p>
85
+ </div>
86
+ </div>
87
+ <div class="col-sm-12 form-group">
88
+ <label class="col-sm-5 control-label">组&nbsp;织&nbsp;编&nbsp;码</label>
89
+ <div class="col-sm-7">
90
+ <p class="form-control-static">{{ $login.f.number }}</p>
92
91
  </div>
93
92
  </div>
94
93
  <div class="col-sm-12 form-group">
95
94
  <label class="col-sm-5 control-label">所在销售点</label>
96
95
  <div class="col-sm-7">
97
- <p class="form-control-static">{{$login.f.deps}}</p>
96
+ <p class="form-control-static">{{ $login.f.deps }}</p>
98
97
  </div>
99
98
  </div>
100
99
  </div>
101
100
  </form>
102
101
  </article>
103
- <footer slot="modal-footer" class="modal-footer">
102
+ <footer slot="modal-footer" class="modal-footer">
104
103
  <button class="button_search" @click="depPromptConfirm">确认</button>
105
104
  <button class="button_clear" @click="depPromptCancel">取消</button>
106
105
  </footer>
@@ -113,648 +112,615 @@
113
112
  </template>
114
113
 
115
114
  <script>
116
- import co from 'co'
117
- import $ from 'jquery'
118
- import Vue from 'vue'
119
- import {HttpResetClass} from 'vue-client'
120
-
121
-
122
-
123
- let saveGen = function *(self) {
124
- try {
125
- if(self.$login){
126
- yield self.$login.login(self.model.ename, self.model.password)
115
+ import co from 'co'
116
+ import $ from 'jquery'
117
+ import Vue from 'vue'
118
+ import cryptJS from '../../plugins/EncryptUtil'
119
+ let saveGen = function* (self) {
120
+ try {
121
+ yield self.$login.login(self.model.ename, self.model.password)
122
+ yield self.$appdata.load()
123
+
124
+ // 热力系统登录
125
+ if (Vue.$heatCompatibility) {
126
+ try {
127
+ yield self.$loginHeat.login(self.model.ename, self.model.password)
128
+ yield self.$appdataHeat.load()
129
+ } catch (e) {
130
+ console.log('热力系统登陆失败!')
127
131
  }
128
- if(self.$appdata){
129
- yield self.$appdata.load()
130
-
131
- }
132
- if (Vue.$heatCompatibility) {
133
- try {
134
- if(self.$loginHeat){
135
- yield self.$loginHeat.login(self.model.ename, self.model.password)
136
- }
137
- if(self.$appdataHeat){
138
- yield self.$appdataHeat.load()
132
+ }
133
+
134
+ yield self.$getConfig(self, 'Login')
135
+ console.log('登录配置', self.config)
136
+ if (self.config.isMac) {
137
+ // 获取该登录人分公司下的mac配置
138
+ let getMacs = yield self.$resetpost('rs/sql/equipmentQuery', {data: {condition: `f_filialeids like '%${self.$login.f.f_orgids}%'`}}, {
139
+ resolveMsg: null,
140
+ rejectMsg: null
141
+ }).catch(() => {
142
+ throw new Error('获取mac配置失败')
143
+ })
144
+ console.log('MAC地址信息', getMacs)
145
+ // 获取本地mac地址
146
+ let getLocalMac = yield self.$resetget('http://127.0.0.1:8003/loadmac', {
147
+ resolveMsg: null,
148
+ rejectMsg: null
149
+ }).catch(() => {
150
+ throw new Error('获取本地mac配置失败')
151
+ })
152
+ console.log('本地MAC地址信息', getLocalMac)
153
+ // 对Mac地址进行匹配
154
+ let macValidate = false
155
+ for (let i = 0; i < getLocalMac.data.mac.length; i++) {
156
+ for (let j = 0; j < getMacs.data.length; j++) {
157
+ if (getMacs.data[j].f_mac_number.toLocaleUpperCase() === getLocalMac.data.mac[i]) {
158
+ macValidate = true
139
159
  }
140
- } catch (e) {
141
- console.log('热力系统登陆失败!')
142
160
  }
143
161
  }
144
- //吴小平
145
- // yield self.$getConfig(self, 'Login')
146
- console.log('登录配置', self.config)
147
- if (self.config.isMac) {
148
- // 获取该登录人分公司下的mac配置
149
- let getMacs = yield self.$resetpost('rs/sql/equipmentQuery', {data: {condition: `f_filialeids like '%${self.$login.f.f_orgids}%'`}}, {
150
- resolveMsg: null,
151
- rejectMsg: null
152
- }).catch(() => {
153
- throw new Error('获取mac配置失败')
154
- })
155
- console.log('MAC地址信息', getMacs)
156
- // 获取本地mac地址
157
- let getLocalMac = yield self.$resetget('http://127.0.0.1:8003/loadmac', {
158
- resolveMsg: null,
159
- rejectMsg: null
160
- }).catch(() => {
161
- throw new Error('获取本地mac配置失败')
162
- })
163
- console.log('本地MAC地址信息', getLocalMac)
164
- // 对Mac地址进行匹配
165
- let macValidate = false
166
- for (let i = 0; i < getLocalMac.data.mac.length; i++) {
167
- for (let j = 0; j < getMacs.data.length; j++) {
168
- if (getMacs.data[j].f_mac_number.toLocaleUpperCase() === getLocalMac.data.mac[i]) {
169
- macValidate = true
170
- }
171
- }
172
- }
173
- if (!macValidate) {
174
- throw new Error('Mac地址验证失败, 请联系管理员!!')
175
- }
162
+ if (!macValidate) {
163
+ throw new Error('Mac地址验证失败, 请联系管理员!!')
176
164
  }
177
- // 弱口令验证
178
- //跳转过来的不进行验证
179
- if ((!self.otherLogin) && self.config.weakPassword && !(/^(?:(?=.*[a-zA-Z])(?=.*[0-9])(?=.*[^A-Za-z0-9])).*$/.test(self.model.password))) {
180
- self.$showMessage('登录系统: 此账户的密码过于简单,请修改密码后重新登陆!!!', ['confirm']).then((res) => {
165
+ }
166
+ // 弱口令验证
167
+ if (self.config.weakPassword && !(/^(?:(?=.*[a-zA-Z])(?=.*[0-9])(?=.*[^A-Za-z0-9])).*$/.test(self.model.password))) {
168
+ self.$showMessage('登录系统: 此账户的密码过于简单,请修改密码后重新登陆!!!', ['confirm']).then((res) => {
181
169
  self.modifyPwShow = true
182
- })
183
- } else if ((!self.otherLogin) && self.config.depPrompt) {
184
- self.depPromptShow = true
185
- } else {
186
- self.$goto('home-page', {functions: self.$login.f})
187
- if(this.otherLogin){
188
- window.location.search=""
189
- }
190
- if (self.$login) {
191
- console.log('登录信息', self.$login.f)
192
- global.login=self.$login.f
193
- console.log('登录信息', global.login)
194
- }
195
- }
196
-
197
- } catch (ret) {
198
- console.error('登录失败', ret)
199
- let msg
200
- if (ret instanceof Error) {
201
- msg = ret
202
- }
203
- if (ret.status === 0) {
204
- msg = '服务连接错误,请确认服务状态'
205
- } else if (ret.status === 401) {
206
- msg = ret.data
207
- } else if (ret.status === 710) {
208
- msg = ret.data
170
+ })
171
+ } else if (self.config.depPrompt) {
172
+ self.depPromptShow = true
173
+ } else {
174
+ self.$goto('home-page', {functions: self.$login.f})
175
+ if (self.$login) {
176
+ console.log('登录信息', self.$login.f)
177
+ global.login = self.$login.f
178
+ console.log('登录信息', global.login)
209
179
  }
210
- self.createCode()
211
- self.picLyanzhengma = ''
212
- yield self.$showMessage(msg)
213
- self.model.ename = ''
214
- self.model.password = ''
215
- self.login = false
216
- $('form').fadeIn(500)
217
180
  }
218
- }
219
- export default {
220
- title: '登录',
221
- async ready () {
222
- try{
223
- let http = new HttpResetClass()
224
- let res = await http.load('POST', 'rs/sql/singleTable',
225
- {data:{
226
- tablename: 't_changedeclare',
227
- condition: ` f_type ='变更通知' `
228
- }
229
- }, {resolveMsg: null, rejectMsg: null})
230
- if(res.data.length>0){
231
- console.log("---------------获取通知",res.data[0].f_change_message)
232
- this.notice=res.data[0].f_change_message
233
- }
234
- }catch(e){}
235
181
 
236
- this.loginother();
237
- $('#login-button').click(function (event) {
238
- event.preventDefault()
239
- $('form').fadeOut(500)
240
- })
241
- if (window.location.search && window.location.search.indexOf('af_key') !== -1&& window.location.search.indexOf('af_n') !== -1) {
242
- const subUrl = window.location.search.replace('?af_key=','').split('&af_n=')
243
- console.log(subUrl)
244
- this.model.ename = window.atob(subUrl[0])
245
- this.model.password = window.atob(subUrl[1])
246
- console.log('this.model.ename',this.model.ename)
247
- this.otherLogin = true
248
- this.confirm()
249
- }else{
250
- //跳转不需要验证码
251
- this.createCode()
252
- }
253
- },
254
- data () {
255
- return {
256
- image:{
257
- img1: '/images/newStyle/login-info.png',
258
- img2: '/images/newStyle/login-con.png',
259
- img3: '/images/newStyle/login-left.png',
260
- img4: '/images/newStyle/login-user.png',
261
- img5: '/images/newStyle/login-pwd.png',
262
- img6: '/images/newStyle/login-check.png',
263
- img7: '/images/newStyle/login-do.png',
264
- },
265
- config: {
266
- isMac: false,
267
- depPrompt: false,
268
- weakPassword: false,
269
- title: '燃气客服系统',
270
- distanceLogin: false
271
- },
272
- otherLogin:false,
273
- login: false,
274
- depPromptShow: false,
275
- model: {},
276
- show: false,
277
- checkCode: '',
278
- login_do:true,
279
- picLyanzhengma: '',
280
- // 修改密码弹框展示
281
- modifyPwShow: false,
282
- logoandroid:false,
283
- showus:false,
284
- notice:'',
285
- loginotherflag :true
286
- }
287
- },
288
- methods: {
289
- async loginother(){
290
- if (this.config.distanceLogin) {
291
- if (this.$login && this.$login.getUrlParames('name') ) {
292
- let ename = this.$login.getUrlParames('name');
293
- let logininfo = await this.$resetpost('rs/logic/getLoginData',{data:{ename:ename}},{resolveMsg: null, rejectMsg: null});
294
- if(logininfo.data){
295
- if(logininfo.data.ename && logininfo.data.password){
296
- this.model.ename = logininfo.data.ename
297
- this.model.password =logininfo.data.password
298
- let gen = saveGen(this)
299
- return co(gen)
300
- }
301
- }
302
- }
303
- }
304
- },
305
- theme(){
306
- // var elementList = document.querySelectorAll('body');
307
- // console.log(elementList)
308
- // document.querySelectorAll('body')[0].className='themeTwo'
309
- // var elementList = document.querySelectorAll('body');
310
- // console.log(elementList)
182
+ } catch (ret) {
183
+ console.error('登录失败', ret)
184
+ let msg
185
+ if (ret instanceof Error) {
186
+ msg = ret
187
+ }
188
+ if (ret.status === 0) {
189
+ msg = '服务连接错误,请确认服务状态'
190
+ } else {
191
+ msg = ret.data
192
+ }
193
+ self.createCode()
194
+ self.picLyanzhengma = ''
195
+ yield self.$showMessage(msg)
196
+ self.model.ename = ''
197
+ self.model.password = ''
198
+ self.login = false
199
+ $('form').fadeIn(500)
200
+ }
201
+ }
202
+ export default {
203
+ title: '登录',
204
+ ready() {
205
+ if (this.$login && this.$login.getUrlCompileParames('name') && this.$login.getUrlCompileParames('password')) {
206
+ this.model.ename = this.$login.getUrlCompileParames('name')
207
+ this.model.password = this.$login.getUrlCompileParames('password')
208
+ this.confirm()
209
+ }
210
+ if(this.$login&&this.$login.getUrlParames('token')){
211
+ console.log(this.$login.getUrlParames('token'))
212
+ let param = cryptJS.AESDecrypt(this.$login.getUrlParames('token'),'3KMKqvgwR8ULbR8Z')
213
+ console.log(param)
214
+ // param = JSON.parse(param)
215
+ this.$login.Verification = false
216
+ this.model.ename = param.username
217
+ this.model.password = param.password
218
+ this.confirm()
219
+ }
220
+ $('#login-button').click(function (event) {
221
+ event.preventDefault()
222
+ $('form').fadeOut(500)
223
+ }),
224
+ this.createCode()
225
+ },
226
+ data() {
227
+ return {
228
+ image: {
229
+ img1: '/images/newStyle/login-info.png',
230
+ img2: '/images/newStyle/login-con.png',
231
+ img3: '/images/newStyle/login-left.png',
232
+ img4: '/images/newStyle/login-user.png',
233
+ img5: '/images/newStyle/login-pwd.png',
234
+ img6: '/images/newStyle/login-check.png',
235
+ img7: '/images/newStyle/login-do.png',
311
236
  },
312
- onReady () {
313
- this.$emit('ready')
237
+ config: {
238
+ isMac: false,
239
+ depPrompt: false,
240
+ weakPassword: true
314
241
  },
315
- confirm (key) {
316
- this.login_do=!this.login_do
317
- // return
318
- if (key == 'key') {
319
- $('form').fadeOut(500)
320
- }
321
- this.login = true
322
- // let gen = saveGen(this)
323
- // return co(gen)
324
- if((!this.otherLogin) && this.$login && this.$login.Verification){
325
- console.log('跳转过来的不走验证')
326
- if(this.picLyanzhengma == '') {
327
- this.$showMessage("请输入验证码!").then(()=>{
328
- this.login = false
329
- $('form').fadeIn(500)
330
- this.createCode()
331
- })
332
- }else if(this.picLyanzhengma.toUpperCase() != this.checkCode ) {
333
- //若输入的验证码与产生的验证码不一致时
334
- this.$showMessage("验证码不正确").then(()=>{
335
- this.login = false
336
- $('form').fadeIn(500)
337
- this.createCode();//刷新验证码
338
- this.picLyanzhengma = '';
339
- })
340
- }else {
341
- this.login = true
342
- let gen = saveGen(this)
343
- return co(gen)
344
- }
345
- }else {
242
+ login: false,
243
+ depPromptShow: false,
244
+ model: {},
245
+ show: false,
246
+ checkCode: '',
247
+ login_do: true,
248
+ picLyanzhengma: '',
249
+ // 修改密码弹框展示
250
+ modifyPwShow: false,
251
+ logoandroid: true
252
+ }
253
+ },
254
+ methods: {
255
+ theme() {
256
+ // var elementList = document.querySelectorAll('body');
257
+ // console.log(elementList)
258
+ // document.querySelectorAll('body')[0].className='themeTwo'
259
+ // var elementList = document.querySelectorAll('body');
260
+ // console.log(elementList)
261
+ },
262
+ onReady() {
263
+ this.$emit('ready')
264
+ },
265
+ confirm(key) {
266
+ this.login_do = !this.login_do
267
+ if (key == 'key') {
268
+ $('form').fadeOut(500)
269
+ }
270
+ this.login = true
271
+ // let gen = saveGen(this)
272
+ // return co(gen)
273
+ if (this.$login.Verification) {
274
+ if (!this.picLyanzhengma) {
275
+ this.$showMessage("请输入验证码!").then(() => {
276
+ this.login = false
277
+ $('form').fadeIn(500)
278
+ this.createCode()
279
+ })
280
+ } else if (this.picLyanzhengma.toUpperCase() != this.checkCode) {
281
+ //若输入的验证码与产生的验证码不一致时
282
+ this.$showMessage("验证码不正确").then(() => {
283
+ this.login = false
284
+ $('form').fadeIn(500)
285
+ this.createCode();//刷新验证码
286
+ this.picLyanzhengma = '';
287
+ })
288
+ } else {
346
289
  this.login = true
347
290
  let gen = saveGen(this)
348
291
  return co(gen)
349
292
  }
350
- },
351
- createCode(){
352
- let code = "";
353
- let codeLength = 4;//验证码的长度
354
- 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',
355
- 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');//随机数
356
- for (let i = 0; i < codeLength; i++) {
357
- //循环操作
358
- let index = Math.floor(Math.random() * 36);//取得随机数的索引(0~35)
359
- code += random[index];//根据索引取得随机数加到code上
360
- }
361
- this.checkCode = code;//把code值赋给验证码
362
- },
363
-
364
- async depPromptConfirm () {
365
- this.depPromptShow = false
366
- return this.$goto('home-page', {functions: this.$login.f})
367
- },
368
-
369
- depPromptCancel () {
370
- this.depPromptShow = false
371
- this.createCode()
372
- this.picLyanzhengma = ''
373
- this.model.ename = ''
374
- this.model.password = ''
375
- this.login = false
376
- $('form').fadeIn(500)
293
+ } else {
294
+ this.login = true
295
+ let gen = saveGen(this)
296
+ return co(gen)
377
297
  }
378
298
  },
379
- watch: {
380
- 'modifyPwShow' (val){
381
- if (!val) {
382
- window.location.reload()
383
- }
299
+ createCode() {
300
+ let code = "";
301
+ let codeLength = 4;//验证码的长度
302
+ 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',
303
+ 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');//随机数
304
+ for (let i = 0; i < codeLength; i++) {
305
+ //循环操作
306
+ let index = Math.floor(Math.random() * 36);//取得随机数的索引(0~35)
307
+ code += random[index];//根据索引取得随机数加到code上
384
308
  }
385
- }
386
- }
387
- </script>
388
-
389
- <style>
390
-
391
- /*输入框样式*/
392
- /*@import url(http://fonts.useso.com/css?family=Source+Sans+Pro:200,300);*/
393
- * {
394
- box-sizing: border-box;
395
- margin: 0;
396
- padding: 0;
397
- font-weight: 400;
398
- outline: none;
399
- }
400
-
401
- body {
402
- font-family: 'Source Sans Pro', sans-serif;
403
- color: white;
404
- font-weight: 400;
405
- }
406
-
407
- body ::-webkit-input-placeholder {
408
- /* WebKit browsers */
409
- font-family: 'Source Sans Pro', sans-serif;
410
- color: white;
411
- font-weight: 400;
412
- }
413
-
414
- body :-moz-placeholder {
415
- /* Mozilla Firefox 4 to 18 */
416
- font-family: 'Source Sans Pro', sans-serif;
417
- color: white;
418
- opacity: 1;
419
- font-weight: 400;
420
- }
421
-
422
- body ::-moz-placeholder {
423
- /* Mozilla Firefox 19+ */
424
- font-family: 'Source Sans Pro', sans-serif;
425
- color: white;
426
- opacity: 1;
427
- font-weight: 400;
428
- }
429
-
430
- body :-ms-input-placeholder {
431
- /* Internet Explorer 10+ */
432
- font-family: 'Source Sans Pro', sans-serif;
433
- color: white;
434
- font-weight: 400;
435
- }
436
-
437
- .wrapper {
438
- /*background: #2D83BA;
439
- background: -webkit-linear-gradient(top left, #2D83BA 0%, #2D83BA 100%);
440
- background: linear-gradient(to bottom right, #2D83BA 0%, #2D83BA 100%);
441
- opacity: 0.8;*/
442
- position: absolute;
443
- top: 50%;
444
- right: -60px;
445
- width: 40%;
446
- height: 400px;
447
- margin-top: -150px;
448
- overflow: hidden;
449
-
450
- }
451
-
452
- .wrapper.form-success .container h3 {
453
- -webkit-transform: translateY(85px);
454
- -ms-transform: translateY(85px);
455
- transform: translateY(85px);
456
- }
457
-
458
- .container {
459
- max-width: 350px;
460
- margin: 0 auto;
461
- padding: 30px 100px 50px 100px;
462
- height: 400px;
463
- text-align: center;
464
- /*以下增加*/
465
- background: #2D83BA;
466
- background: -webkit-linear-gradient(top left, #2D83BA 0%, #2D83BA 100%);
467
- background: linear-gradient(to bottom right, #2D83BA 0%, #2D83BA 100%);
468
- opacity: 0.8;
469
- }
470
-
471
- .container h3 {
472
- font-size: 40px;
473
- -webkit-transition-duration: 1s;
474
- transition-duration: 1s;
475
- -webkit-transition-timing-function: ease-in-put;
476
- transition-timing-function: ease-in-put;
477
- font-weight: 200;
478
- }
479
-
480
- .form {
481
- padding: 20px 0;
482
- position: relative;
483
- z-index: 2;
484
- }
485
-
486
- .form input {
487
- -webkit-appearance: none;
488
- -moz-appearance: none;
489
- appearance: none;
490
- outline: 0;
491
- border: 1px solid #50ABE6;
492
- background-color: #50ABE6;
493
- width: 250px;
494
- border-radius: 3px;
495
- padding: 10px 15px;
496
- margin: 0 auto 10px auto;
497
- display: block;
498
- text-align: center;
499
- font-size: 18px;
500
- color: white;
501
- -webkit-transition-duration: 0.25s;
502
- transition-duration: 0.25s;
503
- font-weight: 400;
504
- }
505
-
506
- .form input:hover {
507
- background-color: rgba(255, 255, 255, 0.4);
508
- }
509
-
510
- .form input:focus {
511
- background-color: white;
512
- width: 300px;
513
- color: #53e3a6;
514
- }
515
-
516
- .usericon {
517
- background-image: url(../../../static/usericon.png);
518
- background-repeat: no-repeat;
519
- background-size: 30px;
520
- background-position-x: 8px;
521
- background-position-y: 8px;
522
- }
523
-
524
- .psicon {
525
- background-image: url(../../../static/psicon.png);
526
- background-repeat: no-repeat;
527
- background-size: 30px;
528
- background-position-x: 8px;
529
- background-position-y: 8px;
530
- }
531
-
532
- .form button {
533
- -webkit-appearance: none;
534
- -moz-appearance: none;
535
- appearance: none;
536
- outline: 0;
537
- background-color: white;
538
- border: 0;
539
- padding: 10px 15px;
540
- color: #253830;
541
- border-radius: 3px;
542
- width: 250px;
543
- cursor: pointer;
544
- font-size: 18px;
545
- -webkit-transition-duration: 0.25s;
546
- transition-duration: 0.25s;
547
- }
548
-
549
- .form button:hover {
550
- background-color: #f5f7f9;
551
- }
552
-
553
- /*注册字体样式*/
554
- .form span {
555
- color: #fff;
556
- display: table-footer-group;
557
- position: absolute;
558
- right: 10px;
559
- margin-top: 10px;
560
- cursor: pointer;
561
- }
562
-
563
- .logotitle {
564
- color: #fff;
565
- position: absolute;
566
- top: 50px;
567
- left: 50px;
568
- font-size: 50px;
569
- }
570
-
571
- /*注册模态框界面样式*/
572
- .modifystyle {
573
- background: #FCFEEE;
574
- }
575
-
576
- .modifystyle div {
577
- height: auto;
578
- margin-bottom: 15px;
579
- /*text-align: center;*/
580
- /*margin-left: 20%;*/
581
- }
582
-
583
- /*bootstrap字体图标要手动调整,所以使用字体图标的span必须紧跟在input后面,负责会错位*/
584
- .modifystyle div input + span {
585
- top: 0 !important;
586
- right: 32%;
587
- }
588
-
589
- .modifystyle span {
590
- color: red;
591
- }
592
-
593
- /* 通告区内容 */
594
- .notice-board {
595
- height: auto;
596
- position: absolute;
597
- top: 50%;
598
- margin-top: -150px;
599
- margin-left: 100px;
600
- color: #fff;
601
- }
602
-
603
- /*修改密码底部按钮部分样式*/
604
- .footerbtn {
605
- text-align: center;
606
- padding: 15px;
607
- }
608
-
609
- .footerbtn button {
610
- width: 100px;
611
- margin-left: 20px;
612
- }
613
-
614
- .bg-bubbles {
615
- position: absolute;
616
- top: 0;
617
- left: 0;
618
- width: 100%;
619
- height: 100%;
620
- z-index: 1;
621
- }
622
-
623
- .bg-bubbles li {
624
- position: absolute;
625
- list-style: none;
626
- display: block;
627
- width: 40px;
628
- height: 40px;
629
- background-color: rgba(255, 255, 255, 0.15);
630
- bottom: -160px;
631
- -webkit-animation: square 25s infinite;
632
- animation: square 25s infinite;
633
- -webkit-transition-timing-function: linear;
634
- transition-timing-function: linear;
635
- }
636
-
637
- .bg-bubbles li:nth-child(1) {
638
- left: 10%;
639
- }
640
-
641
- .bg-bubbles li:nth-child(2) {
642
- left: 20%;
643
- width: 80px;
644
- height: 80px;
645
- -webkit-animation-delay: 2s;
646
- animation-delay: 2s;
647
- -webkit-animation-duration: 17s;
648
- animation-duration: 17s;
649
- }
650
-
651
- .bg-bubbles li:nth-child(3) {
652
- left: 25%;
653
- -webkit-animation-delay: 4s;
654
- animation-delay: 4s;
655
- }
656
-
657
- .bg-bubbles li:nth-child(4) {
658
- left: 40%;
659
- width: 60px;
660
- height: 60px;
661
- -webkit-animation-duration: 22s;
662
- animation-duration: 22s;
663
- background-color: rgba(255, 255, 255, 0.25);
664
- }
665
-
666
- .bg-bubbles li:nth-child(5) {
667
- left: 70%;
668
- }
669
-
670
- .bg-bubbles li:nth-child(6) {
671
- left: 80%;
672
- width: 120px;
673
- height: 120px;
674
- -webkit-animation-delay: 3s;
675
- animation-delay: 3s;
676
- background-color: rgba(255, 255, 255, 0.2);
677
- }
678
-
679
- .bg-bubbles li:nth-child(7) {
680
- left: 32%;
681
- width: 160px;
682
- height: 160px;
683
- -webkit-animation-delay: 7s;
684
- animation-delay: 7s;
685
- }
686
-
687
- .bg-bubbles li:nth-child(8) {
688
- left: 55%;
689
- width: 20px;
690
- height: 20px;
691
- -webkit-animation-delay: 15s;
692
- animation-delay: 15s;
693
- -webkit-animation-duration: 40s;
694
- animation-duration: 40s;
695
- }
696
-
697
- .bg-bubbles li:nth-child(9) {
698
- left: 25%;
699
- width: 10px;
700
- height: 10px;
701
- -webkit-animation-delay: 2s;
702
- animation-delay: 2s;
703
- -webkit-animation-duration: 40s;
704
- animation-duration: 40s;
705
- background-color: rgba(255, 255, 255, 0.3);
706
- }
309
+ this.checkCode = code;//把code值赋给验证码
310
+ },
707
311
 
708
- .bg-bubbles li:nth-child(10) {
709
- left: 90%;
710
- width: 160px;
711
- height: 160px;
712
- -webkit-animation-delay: 11s;
713
- animation-delay: 11s;
714
- }
715
- .logofooter{
716
- font-size: 12px;
717
- color:#fff;
718
- width:150px;
719
- margin-left: 17px;
720
- }
721
- .logocontent{
722
- font-size: 14px;
723
- color:#fff;
724
- width:150px;
725
- margin: 3px -15px;
726
- }
727
- .imglogo {
728
- background:url(../../../static/logo.png);
729
- background-size:100%;
730
- }
731
- .logoew {
732
- width:120px;
733
- height:120px;
734
- float:right;
735
- margin-right:8.5%;
736
- margin-top:10px;
737
- }
312
+ async depPromptConfirm() {
313
+ this.depPromptShow = false
314
+ return this.$goto('home-page', {functions: this.$login.f})
315
+ },
738
316
 
739
- @-webkit-keyframes square {
740
- 0% {
741
- -webkit-transform: translateY(0);
742
- transform: translateY(0);
317
+ depPromptCancel() {
318
+ this.depPromptShow = false
319
+ this.createCode()
320
+ this.picLyanzhengma = ''
321
+ this.model.ename = ''
322
+ this.model.password = ''
323
+ this.login = false
324
+ $('form').fadeIn(500)
743
325
  }
744
- 100% {
745
- -webkit-transform: translateY(-700px) rotate(600deg);
746
- transform: translateY(-700px) rotate(600deg);
326
+ },
327
+ watch: {
328
+ 'modifyPwShow'(val) {
329
+ if (!val) {
330
+ window.location.reload()
331
+ }
747
332
  }
748
333
  }
334
+ }
335
+ </script>
749
336
 
750
- @keyframes square {
751
- 0% {
752
- -webkit-transform: translateY(0);
753
- transform: translateY(0);
754
- }
755
- 100% {
756
- -webkit-transform: translateY(-700px) rotate(600deg);
757
- transform: translateY(-700px) rotate(600deg);
758
- }
759
- }
337
+ <style>
338
+
339
+ /*输入框样式*/
340
+ /*@import url(http://fonts.useso.com/css?family=Source+Sans+Pro:200,300);*/
341
+ * {
342
+ box-sizing: border-box;
343
+ margin: 0;
344
+ padding: 0;
345
+ font-weight: 300;
346
+ }
347
+
348
+ body {
349
+ font-family: 'Source Sans Pro', sans-serif;
350
+ color: white;
351
+ font-weight: 300;
352
+ }
353
+
354
+ body ::-webkit-input-placeholder {
355
+ /* WebKit browsers */
356
+ font-family: 'Source Sans Pro', sans-serif;
357
+ color: white;
358
+ font-weight: 300;
359
+ }
360
+
361
+ body :-moz-placeholder {
362
+ /* Mozilla Firefox 4 to 18 */
363
+ font-family: 'Source Sans Pro', sans-serif;
364
+ color: white;
365
+ opacity: 1;
366
+ font-weight: 300;
367
+ }
368
+
369
+ body ::-moz-placeholder {
370
+ /* Mozilla Firefox 19+ */
371
+ font-family: 'Source Sans Pro', sans-serif;
372
+ color: white;
373
+ opacity: 1;
374
+ font-weight: 300;
375
+ }
376
+
377
+ body :-ms-input-placeholder {
378
+ /* Internet Explorer 10+ */
379
+ font-family: 'Source Sans Pro', sans-serif;
380
+ color: white;
381
+ font-weight: 300;
382
+ }
383
+
384
+ .wrapper {
385
+ /*background: #2D83BA;
386
+ background: -webkit-linear-gradient(top left, #2D83BA 0%, #2D83BA 100%);
387
+ background: linear-gradient(to bottom right, #2D83BA 0%, #2D83BA 100%);
388
+ opacity: 0.8;*/
389
+ position: absolute;
390
+ top: 50%;
391
+ right: -60px;
392
+ width: 40%;
393
+ height: 400px;
394
+ margin-top: -150px;
395
+ overflow: hidden;
396
+
397
+ }
398
+
399
+ .wrapper.form-success .container h3 {
400
+ -webkit-transform: translateY(85px);
401
+ -ms-transform: translateY(85px);
402
+ transform: translateY(85px);
403
+ }
404
+
405
+ .container {
406
+ max-width: 350px;
407
+ margin: 0 auto;
408
+ padding: 30px 100px 50px 100px;
409
+ height: 400px;
410
+ text-align: center;
411
+ /*以下增加*/
412
+ background: #2D83BA;
413
+ background: -webkit-linear-gradient(top left, #2D83BA 0%, #2D83BA 100%);
414
+ background: linear-gradient(to bottom right, #2D83BA 0%, #2D83BA 100%);
415
+ opacity: 0.8;
416
+ }
417
+
418
+ .container h3 {
419
+ font-size: 40px;
420
+ -webkit-transition-duration: 1s;
421
+ transition-duration: 1s;
422
+ -webkit-transition-timing-function: ease-in-put;
423
+ transition-timing-function: ease-in-put;
424
+ font-weight: 200;
425
+ }
426
+
427
+ .form {
428
+ padding: 20px 0;
429
+ position: relative;
430
+ z-index: 2;
431
+ }
432
+
433
+ .form input {
434
+ -webkit-appearance: none;
435
+ -moz-appearance: none;
436
+ appearance: none;
437
+ outline: 0;
438
+ border: 1px solid #50ABE6;
439
+ background-color: #50ABE6;
440
+ width: 250px;
441
+ border-radius: 3px;
442
+ padding: 10px 15px;
443
+ margin: 0 auto 10px auto;
444
+ display: block;
445
+ text-align: center;
446
+ font-size: 18px;
447
+ color: white;
448
+ -webkit-transition-duration: 0.25s;
449
+ transition-duration: 0.25s;
450
+ font-weight: 300;
451
+ }
452
+
453
+ .form input:hover {
454
+ background-color: rgba(255, 255, 255, 0.4);
455
+ }
456
+
457
+ .form input:focus {
458
+ background-color: white;
459
+ width: 300px;
460
+ color: #53e3a6;
461
+ }
462
+
463
+ .usericon {
464
+ background-image: url(../../../static/usericon.png);
465
+ background-repeat: no-repeat;
466
+ background-size: 30px;
467
+ background-position-x: 8px;
468
+ background-position-y: 8px;
469
+ }
470
+
471
+ .psicon {
472
+ background-image: url(../../../static/psicon.png);
473
+ background-repeat: no-repeat;
474
+ background-size: 30px;
475
+ background-position-x: 8px;
476
+ background-position-y: 8px;
477
+ }
478
+
479
+ .form button {
480
+ -webkit-appearance: none;
481
+ -moz-appearance: none;
482
+ appearance: none;
483
+ outline: 0;
484
+ background-color: white;
485
+ border: 0;
486
+ padding: 10px 15px;
487
+ color: #253830;
488
+ border-radius: 3px;
489
+ width: 250px;
490
+ cursor: pointer;
491
+ font-size: 18px;
492
+ -webkit-transition-duration: 0.25s;
493
+ transition-duration: 0.25s;
494
+ }
495
+
496
+ .form button:hover {
497
+ background-color: #f5f7f9;
498
+ }
499
+
500
+ /*注册字体样式*/
501
+ .form span {
502
+ color: #fff;
503
+ display: table-footer-group;
504
+ position: absolute;
505
+ right: 10px;
506
+ margin-top: 10px;
507
+ cursor: pointer;
508
+ }
509
+
510
+ .logotitle {
511
+ color: #fff;
512
+ position: absolute;
513
+ top: 50px;
514
+ left: 50px;
515
+ font-size: 50px;
516
+ }
517
+
518
+ /*注册模态框界面样式*/
519
+ .modifystyle {
520
+ background: #FCFEEE;
521
+ }
522
+
523
+ .modifystyle div {
524
+ height: auto;
525
+ margin-bottom: 15px;
526
+ /*text-align: center;*/
527
+ /*margin-left: 20%;*/
528
+ }
529
+
530
+ /*bootstrap字体图标要手动调整,所以使用字体图标的span必须紧跟在input后面,负责会错位*/
531
+ .modifystyle div input + span {
532
+ top: 0 !important;
533
+ right: 32%;
534
+ }
535
+
536
+ .modifystyle span {
537
+ color: red;
538
+ }
539
+
540
+ /* 通告区内容 */
541
+ .notice-board {
542
+ height: auto;
543
+ position: absolute;
544
+ top: 50%;
545
+ margin-top: -150px;
546
+ margin-left: 100px;
547
+ color: #fff;
548
+ }
549
+
550
+ /*修改密码底部按钮部分样式*/
551
+ .footerbtn {
552
+ text-align: center;
553
+ padding: 15px;
554
+ }
555
+
556
+ .footerbtn button {
557
+ width: 100px;
558
+ margin-left: 20px;
559
+ }
560
+
561
+ .bg-bubbles {
562
+ position: absolute;
563
+ top: 0;
564
+ left: 0;
565
+ width: 100%;
566
+ height: 100%;
567
+ z-index: 1;
568
+ }
569
+
570
+ .bg-bubbles li {
571
+ position: absolute;
572
+ list-style: none;
573
+ display: block;
574
+ width: 40px;
575
+ height: 40px;
576
+ background-color: rgba(255, 255, 255, 0.15);
577
+ bottom: -160px;
578
+ -webkit-animation: square 25s infinite;
579
+ animation: square 25s infinite;
580
+ -webkit-transition-timing-function: linear;
581
+ transition-timing-function: linear;
582
+ }
583
+
584
+ .bg-bubbles li:nth-child(1) {
585
+ left: 10%;
586
+ }
587
+
588
+ .bg-bubbles li:nth-child(2) {
589
+ left: 20%;
590
+ width: 80px;
591
+ height: 80px;
592
+ -webkit-animation-delay: 2s;
593
+ animation-delay: 2s;
594
+ -webkit-animation-duration: 17s;
595
+ animation-duration: 17s;
596
+ }
597
+
598
+ .bg-bubbles li:nth-child(3) {
599
+ left: 25%;
600
+ -webkit-animation-delay: 4s;
601
+ animation-delay: 4s;
602
+ }
603
+
604
+ .bg-bubbles li:nth-child(4) {
605
+ left: 40%;
606
+ width: 60px;
607
+ height: 60px;
608
+ -webkit-animation-duration: 22s;
609
+ animation-duration: 22s;
610
+ background-color: rgba(255, 255, 255, 0.25);
611
+ }
612
+
613
+ .bg-bubbles li:nth-child(5) {
614
+ left: 70%;
615
+ }
616
+
617
+ .bg-bubbles li:nth-child(6) {
618
+ left: 80%;
619
+ width: 120px;
620
+ height: 120px;
621
+ -webkit-animation-delay: 3s;
622
+ animation-delay: 3s;
623
+ background-color: rgba(255, 255, 255, 0.2);
624
+ }
625
+
626
+ .bg-bubbles li:nth-child(7) {
627
+ left: 32%;
628
+ width: 160px;
629
+ height: 160px;
630
+ -webkit-animation-delay: 7s;
631
+ animation-delay: 7s;
632
+ }
633
+
634
+ .bg-bubbles li:nth-child(8) {
635
+ left: 55%;
636
+ width: 20px;
637
+ height: 20px;
638
+ -webkit-animation-delay: 15s;
639
+ animation-delay: 15s;
640
+ -webkit-animation-duration: 40s;
641
+ animation-duration: 40s;
642
+ }
643
+
644
+ .bg-bubbles li:nth-child(9) {
645
+ left: 25%;
646
+ width: 10px;
647
+ height: 10px;
648
+ -webkit-animation-delay: 2s;
649
+ animation-delay: 2s;
650
+ -webkit-animation-duration: 40s;
651
+ animation-duration: 40s;
652
+ background-color: rgba(255, 255, 255, 0.3);
653
+ }
654
+
655
+ .bg-bubbles li:nth-child(10) {
656
+ left: 90%;
657
+ width: 160px;
658
+ height: 160px;
659
+ -webkit-animation-delay: 11s;
660
+ animation-delay: 11s;
661
+ }
662
+
663
+ .logofooter {
664
+ font-size: 12px;
665
+ color: #fff;
666
+ width: 150px;
667
+ margin-left: 17px;
668
+ }
669
+
670
+ .logocontent {
671
+ font-size: 14px;
672
+ color: #fff;
673
+ width: 150px;
674
+ margin: 3px -15px;
675
+ }
676
+
677
+ .aodelogo {
678
+ background: url(../../../static/aodelogo.png);
679
+ background-size: 100%;
680
+ background-repeat: no-repeat;
681
+ }
682
+
683
+ .imglogo {
684
+ background: url(../../../static/ewmlogo.png);
685
+ background-size: 100%;
686
+ background-repeat: no-repeat;
687
+ }
688
+
689
+ .logoew {
690
+ width: 120px;
691
+ height: 120px;
692
+ float: right;
693
+ margin-right: 8.5%;
694
+ margin-top: 10px;
695
+ }
696
+
697
+ .logopic {
698
+ width: 23%;
699
+ height: 100px;
700
+ float: left;
701
+ margin-left: 3.5%;
702
+ margin-top: 10px;
703
+ }
704
+
705
+ @-webkit-keyframes square {
706
+ 0% {
707
+ -webkit-transform: translateY(0);
708
+ transform: translateY(0);
709
+ }
710
+ 100% {
711
+ -webkit-transform: translateY(-700px) rotate(600deg);
712
+ transform: translateY(-700px) rotate(600deg);
713
+ }
714
+ }
715
+
716
+ @keyframes square {
717
+ 0% {
718
+ -webkit-transform: translateY(0);
719
+ transform: translateY(0);
720
+ }
721
+ 100% {
722
+ -webkit-transform: translateY(-700px) rotate(600deg);
723
+ transform: translateY(-700px) rotate(600deg);
724
+ }
725
+ }
760
726
  </style>