system-phone 3.0.2 → 3.0.4-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 (271) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/.eslintrc.js +16 -16
  4. package/.gradle/6.8.3/fileChanges/last-build.bin +0 -0
  5. package/.gradle/6.8.3/fileHashes/fileHashes.lock +0 -0
  6. package/.gradle/6.8.3/gc.properties +0 -0
  7. package/.gradle/buildOutputCleanup/cache.properties +2 -2
  8. package/.gradle/checksums/checksums.lock +0 -0
  9. package/.gradle/checksums/md5-checksums.bin +0 -0
  10. package/.gradle/checksums/sha1-checksums.bin +0 -0
  11. package/.gradle/configuration-cache/gc.properties +0 -0
  12. package/CHANGELOG.md +1 -1
  13. package/Dockerfile +3 -3
  14. package/README.md +36 -36
  15. package/SystemPhone.iml +8 -8
  16. package/build/css-loaders.js +34 -34
  17. package/build/dev-client.js +8 -8
  18. package/build/dev-server.js +141 -141
  19. package/build/example-server.js +80 -80
  20. package/build/release.sh +28 -28
  21. package/build/utils.js +71 -71
  22. package/build/webpack.base.conf.js +82 -82
  23. package/build/webpack.dev.conf.js +31 -31
  24. package/build/webpack.example.conf.js +49 -49
  25. package/build/webpack.prod.conf.js +60 -60
  26. package/build/webpack.test.conf.js +31 -31
  27. package/build.gradle +27 -27
  28. package/config/dev.env.js +6 -6
  29. package/config/index.js +38 -38
  30. package/config/prod.env.js +3 -3
  31. package/config/test.env.js +6 -6
  32. package/gradle/wrapper/gradle-wrapper.properties +5 -5
  33. package/gradlew +183 -183
  34. package/gradlew.bat +100 -100
  35. package/index.html +21 -21
  36. package/nginx.conf +304 -304
  37. package/package.json +1 -1
  38. package/release.bat +5 -5
  39. package/src/App.vue +25 -25
  40. package/src/Util.js +415 -415
  41. package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  42. package/src/android-bootstrap/less/.csscomb.json +304 -304
  43. package/src/android-bootstrap/less/.csslintrc +19 -19
  44. package/src/android-bootstrap/less/alerts.less +73 -73
  45. package/src/android-bootstrap/less/badges.less +66 -66
  46. package/src/android-bootstrap/less/bootstrap.less +56 -56
  47. package/src/android-bootstrap/less/breadcrumbs.less +26 -26
  48. package/src/android-bootstrap/less/button-groups.less +247 -247
  49. package/src/android-bootstrap/less/buttons.less +173 -173
  50. package/src/android-bootstrap/less/carousel.less +269 -269
  51. package/src/android-bootstrap/less/close.less +34 -34
  52. package/src/android-bootstrap/less/code.less +69 -69
  53. package/src/android-bootstrap/less/component-animations.less +33 -33
  54. package/src/android-bootstrap/less/dropdowns.less +216 -216
  55. package/src/android-bootstrap/less/forms.less +626 -626
  56. package/src/android-bootstrap/less/glyphicons.less +305 -305
  57. package/src/android-bootstrap/less/grid.less +84 -84
  58. package/src/android-bootstrap/less/input-groups.less +167 -167
  59. package/src/android-bootstrap/less/jumbotron.less +52 -52
  60. package/src/android-bootstrap/less/labels.less +64 -64
  61. package/src/android-bootstrap/less/list-group.less +141 -141
  62. package/src/android-bootstrap/less/media.less +66 -66
  63. package/src/android-bootstrap/less/mixins/alerts.less +14 -14
  64. package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
  65. package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
  66. package/src/android-bootstrap/less/mixins/buttons.less +69 -69
  67. package/src/android-bootstrap/less/mixins/center-block.less +7 -7
  68. package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
  69. package/src/android-bootstrap/less/mixins/forms.less +90 -90
  70. package/src/android-bootstrap/less/mixins/gradients.less +59 -59
  71. package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
  72. package/src/android-bootstrap/less/mixins/grid.less +122 -122
  73. package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
  74. package/src/android-bootstrap/less/mixins/image.less +33 -33
  75. package/src/android-bootstrap/less/mixins/labels.less +12 -12
  76. package/src/android-bootstrap/less/mixins/list-group.less +30 -30
  77. package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
  78. package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
  79. package/src/android-bootstrap/less/mixins/opacity.less +8 -8
  80. package/src/android-bootstrap/less/mixins/pagination.less +24 -24
  81. package/src/android-bootstrap/less/mixins/panels.less +24 -24
  82. package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
  83. package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
  84. package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
  85. package/src/android-bootstrap/less/mixins/resize.less +6 -6
  86. package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
  87. package/src/android-bootstrap/less/mixins/size.less +10 -10
  88. package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
  89. package/src/android-bootstrap/less/mixins/table-row.less +44 -44
  90. package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
  91. package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
  92. package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
  93. package/src/android-bootstrap/less/mixins.less +40 -40
  94. package/src/android-bootstrap/less/modals.less +151 -151
  95. package/src/android-bootstrap/less/navbar.less +660 -660
  96. package/src/android-bootstrap/less/navs.less +290 -290
  97. package/src/android-bootstrap/less/normalize.less +424 -424
  98. package/src/android-bootstrap/less/pager.less +76 -76
  99. package/src/android-bootstrap/less/pagination.less +89 -89
  100. package/src/android-bootstrap/less/panels.less +274 -274
  101. package/src/android-bootstrap/less/popovers.less +131 -131
  102. package/src/android-bootstrap/less/print.less +101 -101
  103. package/src/android-bootstrap/less/progress-bars.less +87 -87
  104. package/src/android-bootstrap/less/responsive-embed.less +35 -35
  105. package/src/android-bootstrap/less/responsive-utilities.less +194 -194
  106. package/src/android-bootstrap/less/scaffolding.less +161 -161
  107. package/src/android-bootstrap/less/tables.less +262 -262
  108. package/src/android-bootstrap/less/theme.less +291 -291
  109. package/src/android-bootstrap/less/thumbnails.less +36 -36
  110. package/src/android-bootstrap/less/tooltip.less +102 -102
  111. package/src/android-bootstrap/less/type.less +303 -303
  112. package/src/android-bootstrap/less/utilities.less +55 -55
  113. package/src/android-bootstrap/less/variables.less +896 -896
  114. package/src/android-bootstrap/less/wells.less +29 -29
  115. package/src/bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  116. package/src/bootstrap/less/.csscomb.json +304 -304
  117. package/src/bootstrap/less/.csslintrc +19 -19
  118. package/src/bootstrap/less/alerts.less +73 -73
  119. package/src/bootstrap/less/badges.less +66 -66
  120. package/src/bootstrap/less/bootstrap.less +56 -56
  121. package/src/bootstrap/less/breadcrumbs.less +26 -26
  122. package/src/bootstrap/less/button-groups.less +247 -247
  123. package/src/bootstrap/less/buttons.less +172 -172
  124. package/src/bootstrap/less/carousel.less +269 -269
  125. package/src/bootstrap/less/close.less +34 -34
  126. package/src/bootstrap/less/code.less +69 -69
  127. package/src/bootstrap/less/component-animations.less +33 -33
  128. package/src/bootstrap/less/dropdowns.less +216 -216
  129. package/src/bootstrap/less/forms.less +626 -626
  130. package/src/bootstrap/less/glyphicons.less +305 -305
  131. package/src/bootstrap/less/grid.less +84 -84
  132. package/src/bootstrap/less/input-groups.less +167 -167
  133. package/src/bootstrap/less/jumbotron.less +52 -52
  134. package/src/bootstrap/less/labels.less +64 -64
  135. package/src/bootstrap/less/list-group.less +141 -141
  136. package/src/bootstrap/less/media.less +66 -66
  137. package/src/bootstrap/less/mixins/alerts.less +14 -14
  138. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  139. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  140. package/src/bootstrap/less/mixins/buttons.less +69 -69
  141. package/src/bootstrap/less/mixins/center-block.less +7 -7
  142. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  143. package/src/bootstrap/less/mixins/forms.less +90 -90
  144. package/src/bootstrap/less/mixins/gradients.less +59 -59
  145. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  146. package/src/bootstrap/less/mixins/grid.less +122 -122
  147. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  148. package/src/bootstrap/less/mixins/image.less +33 -33
  149. package/src/bootstrap/less/mixins/labels.less +12 -12
  150. package/src/bootstrap/less/mixins/list-group.less +30 -30
  151. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  152. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  153. package/src/bootstrap/less/mixins/opacity.less +8 -8
  154. package/src/bootstrap/less/mixins/pagination.less +24 -24
  155. package/src/bootstrap/less/mixins/panels.less +24 -24
  156. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  157. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  158. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  159. package/src/bootstrap/less/mixins/resize.less +6 -6
  160. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  161. package/src/bootstrap/less/mixins/size.less +10 -10
  162. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  163. package/src/bootstrap/less/mixins/table-row.less +44 -44
  164. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  165. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  166. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  167. package/src/bootstrap/less/mixins.less +40 -40
  168. package/src/bootstrap/less/modals.less +151 -151
  169. package/src/bootstrap/less/navbar.less +660 -660
  170. package/src/bootstrap/less/navs.less +286 -286
  171. package/src/bootstrap/less/normalize.less +424 -424
  172. package/src/bootstrap/less/pager.less +76 -76
  173. package/src/bootstrap/less/pagination.less +89 -89
  174. package/src/bootstrap/less/panels.less +275 -275
  175. package/src/bootstrap/less/popovers.less +131 -131
  176. package/src/bootstrap/less/print.less +101 -101
  177. package/src/bootstrap/less/progress-bars.less +87 -87
  178. package/src/bootstrap/less/responsive-embed.less +35 -35
  179. package/src/bootstrap/less/responsive-utilities.less +194 -194
  180. package/src/bootstrap/less/scaffolding.less +161 -161
  181. package/src/bootstrap/less/tables.less +262 -262
  182. package/src/bootstrap/less/theme.less +291 -291
  183. package/src/bootstrap/less/thumbnails.less +36 -36
  184. package/src/bootstrap/less/tooltip.less +102 -102
  185. package/src/bootstrap/less/type.less +303 -303
  186. package/src/bootstrap/less/utilities.less +55 -55
  187. package/src/bootstrap/less/variables.less +895 -895
  188. package/src/bootstrap/less/wells.less +29 -29
  189. package/src/components/AloneLoadParams.vue +26 -26
  190. package/src/components/AlreadyService.vue +193 -193
  191. package/src/components/AttendManage.vue +397 -397
  192. package/src/components/LoadAppdata.vue +38 -38
  193. package/src/components/LoginApp.vue +615 -560
  194. package/src/components/LoginAppNew.vue +587 -587
  195. package/src/components/ModifyPassWord.vue +140 -131
  196. package/src/components/NavBottom.vue +117 -117
  197. package/src/components/NavBottomV.vue +141 -141
  198. package/src/components/NavBottomVVV.vue +185 -185
  199. package/src/components/OnlineManage.vue +268 -198
  200. package/src/components/PhoneChangemeterInfo.vue +116 -116
  201. package/src/components/PhoneInfoTable.vue +39 -39
  202. package/src/components/PhoneRepairInfo.vue +146 -146
  203. package/src/components/PhoneSellInfo.vue +123 -123
  204. package/src/components/PhoneSellInfoLite.vue +112 -112
  205. package/src/components/PhoneUser.vue +202 -202
  206. package/src/components/PhoneUserDetil.vue +70 -70
  207. package/src/components/PhoneUserFind.vue +138 -138
  208. package/src/components/RightTree.vue +214 -214
  209. package/src/components/SystemSetUp.vue +298 -298
  210. package/src/components/TabBarPhone.vue +81 -81
  211. package/src/components/Test.vue +14 -14
  212. package/src/components/ToolsPage.vue +165 -165
  213. package/src/components/UploadManage.vue +194 -194
  214. package/src/components/gaomi/NavBottomV.vue +223 -223
  215. package/src/components/gaomi/NavBottomVVVV.vue +210 -210
  216. package/src/components/gaomi/Scroller.vue +63 -63
  217. package/src/components/gaomi/SystemSetUp.vue +186 -186
  218. package/src/components/gaomi/ToolsPage.vue +168 -168
  219. package/src/components/idea/feedBack.vue +150 -150
  220. package/src/components/idea/feedbackAdd.vue +366 -366
  221. package/src/components/iot/InstructMessage.vue +313 -313
  222. package/src/components/iot/IotBaseInfo.vue +97 -97
  223. package/src/components/iot/IotMeterInfo.vue +77 -77
  224. package/src/components/iot/iotMonitoringMain.vue +501 -501
  225. package/src/components/online/ApplyOnline.vue +581 -581
  226. package/src/components/online/BJZhongRan/ApplyOnline.vue +600 -600
  227. package/src/components/screen/ChargeContentPage.vue +656 -656
  228. package/src/components/screen/ContentPage.vue +611 -611
  229. package/src/components/screen/GongdanContentPage.vue +149 -149
  230. package/src/components/screen/ListCountItem.vue +93 -93
  231. package/src/components/screen/ModuleTitle.vue +48 -48
  232. package/src/components/screen/SafeOrderContentPage.vue +440 -440
  233. package/src/components/screen/SecurityCheckItem.vue +50 -50
  234. package/src/components/screen/TotalItem.vue +76 -76
  235. package/src/components/screen/TotalUserNumber.vue +77 -77
  236. package/src/components/screen/WorkOrderItem.vue +51 -51
  237. package/src/components/screen/WorkOrderRightDownItem.vue +103 -103
  238. package/src/components/screen/WorkOrderRightItem.vue +115 -115
  239. package/src/components/userinfo/paymentQuery.vue +189 -189
  240. package/src/components/userinfo/queryFile.vue +190 -190
  241. package/src/components/wasm.vue +18 -18
  242. package/src/expandcssAndroid.less +521 -521
  243. package/src/index.js +9 -9
  244. package/src/main.js +38 -38
  245. package/src/plugins/GetStringData.js +18 -18
  246. package/src/plugins/LoadParams.js +24 -24
  247. package/src/plugins/const.js +404 -404
  248. package/src/plugins/vue-py.js +37 -37
  249. package/src/services/ConfigService.js +24 -24
  250. package/src/stores/AppData.js +63 -63
  251. package/src/systemphone-gaomi.js +105 -105
  252. package/src/systemphone.js +58 -58
  253. package/src/systemphonegrid.js +186 -186
  254. package/src/util/LdapHelper.js +75 -75
  255. package/static/app.json +4 -4
  256. package/static/const.js +404 -404
  257. package/static/globals.txt +74 -74
  258. package/static/layui/font/iconfont.svg +554 -554
  259. package/static/vue-py.js +37 -37
  260. package/static/wasm_exec.js +465 -465
  261. package/test/unit/.eslintrc +5 -5
  262. package/test/unit/TestUtil.js +35 -35
  263. package/test/unit/context.html +20 -20
  264. package/test/unit/index.js +13 -13
  265. package/test/unit/init.js +13 -13
  266. package/test/unit/karma.conf.js +50 -50
  267. package/test/unit/specs/App.spec.js +17 -17
  268. package/test/unit/specs/Test.spec.js +28 -28
  269. package/test/unit/specs/components/LoginApp.spec.js +21 -21
  270. package/test/unit/specs/sevices/ConfigService.spec.js +23 -23
  271. package/test/unit/specs/sevices/GetDBTest.spec.js +28 -28
@@ -1,298 +1,298 @@
1
- <template>
2
- <div class="nav-bgcolor">
3
- <div class="auto">
4
- <div class="row nav-bgcolor" >
5
- <div class="col-xs-6 manbiankuang" v-for="tab in tabs" @click="gotopage(tab.link,tab.name)">
6
- <img class="imgs" :src="imgback(tab.name)">
7
- <p></p>
8
- <p class="pagesfoot">{{tab.name}}</p>
9
- <p></p>
10
- </div>
11
- </div>
12
- </div>
13
- <modal :show.sync="show" v-ref:modal backdrop="false">
14
- <header slot="modal-header" class="modal-header text-center">
15
- <h4 class="modal-title">清除项选择</h4>
16
- <input type="checkbox" class="" id="f_operator" v-model="all">
17
- <label for="f_operator" class="font-size">全选</label>
18
- </header>
19
- <article slot="modal-body" v-if="show">
20
- <div class="auto col-sm-11 col-xs-11 col-xs-offset-1 col-md-offset-1" style="margin-top: 10px;">
21
- <div class="col-sm-4 col-xs-4" v-for="f in fields">
22
- <input type="checkbox" class="" :id="'export-col-'+$index" v-model="modelval" :value="$key">
23
- <label :for="'export-col-'+$index" class="font-size">{{f}}</label>
24
- </div>
25
- </div>
26
- </article>
27
- <footer slot="modal-footer" class="modal-footer">
28
- <center>
29
- <button v-show="show" type="button" class="btn btn-default" @click='close()'>取消</button>
30
- <button v-show="show" type="button" class="btn btn-success" @click='clear()'>确定</button>
31
- </center>
32
- </footer>
33
- </modal>
34
- </div>
35
- </template>
36
-
37
- <script>
38
- import Vue from 'vue'
39
-
40
- export default {
41
- title: '系统设置',
42
- data() {
43
- return {
44
- titleName:'系统设置',
45
- all: false,
46
- flag:true,
47
- show:false,
48
- fields: {},
49
- dataclear:[],
50
- tabs: this.getTabs(),
51
- //tabs:[{name:"清空数据"}],
52
- modelval: [],
53
- text: '导航组件this',
54
- beforeName:'系统设置',
55
- }
56
- },
57
- ready(){
58
- // if(Vue.config.safecheck.clearPhone){
59
- // let cleartable=Vue.config.safecheck.clearPhone.cleardata
60
- // for (let i = 0; i < cleartable.length; i++) {
61
- // this.fields[cleartable[i].module]=cleartable[i].module
62
- // }
63
- // }
64
- },
65
- methods: {
66
- // clear(){
67
- // let cleartable=Vue.config.safecheck.clearPhone.cleardata
68
- // console.log(this.modelval)
69
- // for (let i = 0; i < cleartable.length; i++) {
70
- // for (let j = 0; j < this.modelval.length; j++) {
71
- // if (cleartable[i].module==this.modelval[i]){
72
- // this.dataclear=Object.assign([],this.dataclear,cleartable[i].tables)
73
- // }
74
- // }
75
- // }
76
- // console.log(this.dataclear)
77
- // this.cleandata()
78
- // },
79
- close(){
80
- this.show=false
81
- this.all=false
82
- this.flag=true
83
- this.modelval=[]
84
- },
85
- sortModelval () {
86
- let sortModel = []
87
- Object.keys(this.fields).forEach((key) => {
88
- if (this.modelval.includes(key)) {
89
- sortModel.push(key)
90
- }
91
- })
92
- console.log('看看选择的顺序。。。', sortModel)
93
- console.log('看看选择的顺序。。。', this.modelval)
94
- if (sortModel.length==this.modelval.length-1){
95
- this.flag=false
96
- console.log("66666666666666")
97
- this.all=false
98
- }
99
- console.log(Object.keys(this.fields).length)
100
- if (sortModel.length==Object.keys(this.fields).length){
101
- this.all=true
102
- }
103
- this.modelval = sortModel
104
- },
105
- imgback(val){
106
- return require('../assets/'+val+'.png')
107
- },
108
- getTabs(){
109
- for(let funs in Vue.user.functions){
110
- if(Vue.user.functions[funs].link == 'system-setup'){
111
- return Vue.user.functions[funs].children
112
- }
113
- }
114
- },
115
- gotopage(link,name) {
116
- if(name == '清空数据'){
117
- this.cleanalldata()
118
- }
119
- // else if (name == '清除数据'){
120
- // this.openclear()
121
- // }
122
- else if (name == '声音开关'){
123
- this.voiceSwitch()
124
- } else if(name == '导出数据'){
125
- this.outdata()
126
- }else if(name == '退出系统'){
127
- HostApp.back_home()
128
- }else if(name == '退出登录'){
129
- this.$showMessage('即将返回登陆界面!', ['confirm', 'cancel']).then((res) => {
130
- if (res === 'confirm') {
131
- this.$androidUtil.setPreference('f_repairman_id', 'x')
132
- this.$androidUtil.setPreference('f_repairman_name', 'x')
133
- this.$dispatch('gologin')
134
- }
135
- })
136
- }else{
137
- console.log('进入子组件')
138
- var prpdata = {
139
- _this:this,
140
- title:name,
141
- safe:true
142
- }
143
- this.$dispatch('gotoson',prpdata)
144
- this.$goto(link)
145
- }
146
- },
147
- cleanalldata(){
148
- this.$showMessage('此操作为清理数据,无法恢复!', ['confirm', 'cancel']).then((res) => {
149
- if (res === 'confirm') {
150
- let result = this.$androidUtil.bzLogic('clearPhoneData', {flag: 0})
151
- console.log((result.result))
152
- if(result.result == '成功'){
153
- this.$showMessage('清除数据完成!')
154
- }else{
155
- this.$showMessage('清除数据失败!')
156
- }
157
- }
158
- })
159
- },
160
- // 清空数据
161
- cleandata(){
162
- console.log("88888888888")
163
- this.$showMessage('此操作为清理数据,无法恢复!', ['confirm', 'cancel']).then((res) => {
164
- if (res === 'confirm') {
165
- let result = this.$androidUtil.bzLogic('clearPhoneDataNew', {tables: this.dataclear})
166
- console.log((result.result))
167
- if(result.result == '成功'){
168
- this.$showMessage('清除数据完成!')
169
- }else{
170
- this.$showMessage('清除数据失败!')
171
- }
172
- this.close()
173
- }
174
- })
175
- },
176
- // 导出数据
177
- openclear(){
178
- this.show=true
179
- },
180
- voiceSwitch(){
181
- console.log("进入声音开关")
182
- let voicedata=this.$androidUtil.getPreference('f_voiceSwitch')
183
- console.log(voicedata)
184
- let voicechange ='开启'
185
- if (voicedata=="true"){
186
- console.log("进入判断")
187
- voicechange = '关闭'
188
- }
189
- this.$showMessage('此操作为'+voicechange+'提示音,请再次确认!', ['confirm', 'cancel']).then((res) => {
190
- if (res=='confirm'){
191
- if (voicechange=='关闭'){
192
- this.$androidUtil.setPreference('f_voiceSwitch', "false")
193
- this.$showMessage('提示音关闭成功!')
194
- }else{
195
- this.$androidUtil.setPreference('f_voiceSwitch', "true")
196
- this.$showMessage('提示音开启成功!')
197
- }
198
- }
199
- })
200
- },
201
- outdata(){
202
- HostApp.backupDatabase()
203
- this.$showMessage('数据导出成功!')
204
- },
205
- //取消自动登录
206
- cancelAutoLogin(){
207
- let auto=this.$androidUtil.getPreference('autoLogin')
208
- if(auto){
209
- this.$androidUtil.setPreference('autoLogin', false)
210
- this.$showMessage('已取消自动登录!')
211
- }else{
212
- this.$showMessage('当前已处于非自动登录!')
213
- }
214
- }
215
- },
216
- watch: {
217
- 'all' (val) {
218
- if (val) {
219
- this.modelval = Object.keys(this.fields)
220
- } else {
221
- console.log(this.flag)
222
- if (this.flag){
223
- this.modelval = []
224
- }
225
- }
226
- this.flag=true
227
- },
228
- 'modelval.length' () {
229
- this.sortModelval()
230
- }
231
- }
232
- }
233
-
234
- </script>
235
- <style scoped>
236
- .flex-between {
237
- display: flex;
238
- justify-content: space-between;
239
- align-items: center;
240
- }
241
- .flex-between span {
242
- padding-right: 10px;
243
- }
244
- .flex-full {
245
- flex: 1;
246
- }
247
- .name{
248
- font: 15px PingFang-SC-Medium;
249
- color: #666666;
250
- }
251
- .imgs{
252
- width: 35px;
253
- margin-top: 15px;
254
- }
255
- .plan {
256
- border-bottom: 0.5px solid #EAEAEA;
257
- border-right: 0.5px solid #EAEAEA;
258
- height: 120px;
259
- }
260
- .manbiankuang{
261
- width: 44%;
262
- margin-top: 15px;
263
- margin-left: 4%;
264
- border:1px solid #e3e3e3;
265
- border-radius:10px 10px 10px 10px;
266
- text-align: center;
267
- background-color: #ffffff;
268
- }
269
- .user{
270
- border-bottom: 0.5px solid #EAEAEA;
271
- border-right: 0.5px solid #EAEAEA;
272
- border-left: 0.5px solid #EAEAEA;
273
- height: 120px;
274
- }
275
- .safecheck{
276
- border-bottom: 0.5px solid #EAEAEA;
277
- border-left: 0.5px solid #EAEAEA;
278
- height: 120px;
279
- }
280
- .appointment{
281
- border-top: 0.5px solid #EAEAEA;
282
- border-right: 0.5px solid #EAEAEA;
283
- height: 120px;
284
- }
285
- .search{
286
- border-top: 0.5px solid #EAEAEA;
287
- border-right: 0.5px solid #EAEAEA;
288
- border-left: 0.5px solid #EAEAEA;
289
- height: 120px;
290
- }
291
- .upload{
292
- border-top: 0.5px solid #EAEAEA;
293
- border-left: 0.5px solid #EAEAEA;
294
- height: 120px;
295
- }
296
-
297
-
298
- </style>
1
+ <template>
2
+ <div class="nav-bgcolor">
3
+ <div class="auto">
4
+ <div class="row nav-bgcolor" >
5
+ <div class="col-xs-6 manbiankuang" v-for="tab in tabs" @click="gotopage(tab.link,tab.name)">
6
+ <img class="imgs" :src="imgback(tab.name)">
7
+ <p></p>
8
+ <p class="pagesfoot">{{tab.name}}</p>
9
+ <p></p>
10
+ </div>
11
+ </div>
12
+ </div>
13
+ <modal :show.sync="show" v-ref:modal backdrop="false">
14
+ <header slot="modal-header" class="modal-header text-center">
15
+ <h4 class="modal-title">清除项选择</h4>
16
+ <input type="checkbox" class="" id="f_operator" v-model="all">
17
+ <label for="f_operator" class="font-size">全选</label>
18
+ </header>
19
+ <article slot="modal-body" v-if="show">
20
+ <div class="auto col-sm-11 col-xs-11 col-xs-offset-1 col-md-offset-1" style="margin-top: 10px;">
21
+ <div class="col-sm-4 col-xs-4" v-for="f in fields">
22
+ <input type="checkbox" class="" :id="'export-col-'+$index" v-model="modelval" :value="$key">
23
+ <label :for="'export-col-'+$index" class="font-size">{{f}}</label>
24
+ </div>
25
+ </div>
26
+ </article>
27
+ <footer slot="modal-footer" class="modal-footer">
28
+ <center>
29
+ <button v-show="show" type="button" class="btn btn-default" @click='close()'>取消</button>
30
+ <button v-show="show" type="button" class="btn btn-success" @click='clear()'>确定</button>
31
+ </center>
32
+ </footer>
33
+ </modal>
34
+ </div>
35
+ </template>
36
+
37
+ <script>
38
+ import Vue from 'vue'
39
+
40
+ export default {
41
+ title: '系统设置',
42
+ data() {
43
+ return {
44
+ titleName:'系统设置',
45
+ all: false,
46
+ flag:true,
47
+ show:false,
48
+ fields: {},
49
+ dataclear:[],
50
+ tabs: this.getTabs(),
51
+ //tabs:[{name:"清空数据"}],
52
+ modelval: [],
53
+ text: '导航组件this',
54
+ beforeName:'系统设置',
55
+ }
56
+ },
57
+ ready(){
58
+ // if(Vue.config.safecheck.clearPhone){
59
+ // let cleartable=Vue.config.safecheck.clearPhone.cleardata
60
+ // for (let i = 0; i < cleartable.length; i++) {
61
+ // this.fields[cleartable[i].module]=cleartable[i].module
62
+ // }
63
+ // }
64
+ },
65
+ methods: {
66
+ // clear(){
67
+ // let cleartable=Vue.config.safecheck.clearPhone.cleardata
68
+ // console.log(this.modelval)
69
+ // for (let i = 0; i < cleartable.length; i++) {
70
+ // for (let j = 0; j < this.modelval.length; j++) {
71
+ // if (cleartable[i].module==this.modelval[i]){
72
+ // this.dataclear=Object.assign([],this.dataclear,cleartable[i].tables)
73
+ // }
74
+ // }
75
+ // }
76
+ // console.log(this.dataclear)
77
+ // this.cleandata()
78
+ // },
79
+ close(){
80
+ this.show=false
81
+ this.all=false
82
+ this.flag=true
83
+ this.modelval=[]
84
+ },
85
+ sortModelval () {
86
+ let sortModel = []
87
+ Object.keys(this.fields).forEach((key) => {
88
+ if (this.modelval.includes(key)) {
89
+ sortModel.push(key)
90
+ }
91
+ })
92
+ console.log('看看选择的顺序。。。', sortModel)
93
+ console.log('看看选择的顺序。。。', this.modelval)
94
+ if (sortModel.length==this.modelval.length-1){
95
+ this.flag=false
96
+ console.log("66666666666666")
97
+ this.all=false
98
+ }
99
+ console.log(Object.keys(this.fields).length)
100
+ if (sortModel.length==Object.keys(this.fields).length){
101
+ this.all=true
102
+ }
103
+ this.modelval = sortModel
104
+ },
105
+ imgback(val){
106
+ return require('../assets/'+val+'.png')
107
+ },
108
+ getTabs(){
109
+ for(let funs in Vue.user.functions){
110
+ if(Vue.user.functions[funs].link == 'system-setup'){
111
+ return Vue.user.functions[funs].children
112
+ }
113
+ }
114
+ },
115
+ gotopage(link,name) {
116
+ if(name == '清空数据'){
117
+ this.cleanalldata()
118
+ }
119
+ // else if (name == '清除数据'){
120
+ // this.openclear()
121
+ // }
122
+ else if (name == '声音开关'){
123
+ this.voiceSwitch()
124
+ } else if(name == '导出数据'){
125
+ this.outdata()
126
+ }else if(name == '退出系统'){
127
+ HostApp.back_home()
128
+ }else if(name == '退出登录'){
129
+ this.$showMessage('即将返回登陆界面!', ['confirm', 'cancel']).then((res) => {
130
+ if (res === 'confirm') {
131
+ this.$androidUtil.setPreference('f_repairman_id', 'x')
132
+ this.$androidUtil.setPreference('f_repairman_name', 'x')
133
+ this.$dispatch('gologin')
134
+ }
135
+ })
136
+ }else{
137
+ console.log('进入子组件')
138
+ var prpdata = {
139
+ _this:this,
140
+ title:name,
141
+ safe:true
142
+ }
143
+ this.$dispatch('gotoson',prpdata)
144
+ this.$goto(link)
145
+ }
146
+ },
147
+ cleanalldata(){
148
+ this.$showMessage('此操作为清理数据,无法恢复!', ['confirm', 'cancel']).then((res) => {
149
+ if (res === 'confirm') {
150
+ let result = this.$androidUtil.bzLogic('clearPhoneData', {flag: 0})
151
+ console.log((result.result))
152
+ if(result.result == '成功'){
153
+ this.$showMessage('清除数据完成!')
154
+ }else{
155
+ this.$showMessage('清除数据失败!')
156
+ }
157
+ }
158
+ })
159
+ },
160
+ // 清空数据
161
+ cleandata(){
162
+ console.log("88888888888")
163
+ this.$showMessage('此操作为清理数据,无法恢复!', ['confirm', 'cancel']).then((res) => {
164
+ if (res === 'confirm') {
165
+ let result = this.$androidUtil.bzLogic('clearPhoneDataNew', {tables: this.dataclear})
166
+ console.log((result.result))
167
+ if(result.result == '成功'){
168
+ this.$showMessage('清除数据完成!')
169
+ }else{
170
+ this.$showMessage('清除数据失败!')
171
+ }
172
+ this.close()
173
+ }
174
+ })
175
+ },
176
+ // 导出数据
177
+ openclear(){
178
+ this.show=true
179
+ },
180
+ voiceSwitch(){
181
+ console.log("进入声音开关")
182
+ let voicedata=this.$androidUtil.getPreference('f_voiceSwitch')
183
+ console.log(voicedata)
184
+ let voicechange ='开启'
185
+ if (voicedata=="true"){
186
+ console.log("进入判断")
187
+ voicechange = '关闭'
188
+ }
189
+ this.$showMessage('此操作为'+voicechange+'提示音,请再次确认!', ['confirm', 'cancel']).then((res) => {
190
+ if (res=='confirm'){
191
+ if (voicechange=='关闭'){
192
+ this.$androidUtil.setPreference('f_voiceSwitch', "false")
193
+ this.$showMessage('提示音关闭成功!')
194
+ }else{
195
+ this.$androidUtil.setPreference('f_voiceSwitch', "true")
196
+ this.$showMessage('提示音开启成功!')
197
+ }
198
+ }
199
+ })
200
+ },
201
+ outdata(){
202
+ HostApp.backupDatabase()
203
+ this.$showMessage('数据导出成功!')
204
+ },
205
+ //取消自动登录
206
+ cancelAutoLogin(){
207
+ let auto=this.$androidUtil.getPreference('autoLogin')
208
+ if(auto){
209
+ this.$androidUtil.setPreference('autoLogin', false)
210
+ this.$showMessage('已取消自动登录!')
211
+ }else{
212
+ this.$showMessage('当前已处于非自动登录!')
213
+ }
214
+ }
215
+ },
216
+ watch: {
217
+ 'all' (val) {
218
+ if (val) {
219
+ this.modelval = Object.keys(this.fields)
220
+ } else {
221
+ console.log(this.flag)
222
+ if (this.flag){
223
+ this.modelval = []
224
+ }
225
+ }
226
+ this.flag=true
227
+ },
228
+ 'modelval.length' () {
229
+ this.sortModelval()
230
+ }
231
+ }
232
+ }
233
+
234
+ </script>
235
+ <style scoped>
236
+ .flex-between {
237
+ display: flex;
238
+ justify-content: space-between;
239
+ align-items: center;
240
+ }
241
+ .flex-between span {
242
+ padding-right: 10px;
243
+ }
244
+ .flex-full {
245
+ flex: 1;
246
+ }
247
+ .name{
248
+ font: 15px PingFang-SC-Medium;
249
+ color: #666666;
250
+ }
251
+ .imgs{
252
+ width: 35px;
253
+ margin-top: 15px;
254
+ }
255
+ .plan {
256
+ border-bottom: 0.5px solid #EAEAEA;
257
+ border-right: 0.5px solid #EAEAEA;
258
+ height: 120px;
259
+ }
260
+ .manbiankuang{
261
+ width: 44%;
262
+ margin-top: 15px;
263
+ margin-left: 4%;
264
+ border:1px solid #e3e3e3;
265
+ border-radius:10px 10px 10px 10px;
266
+ text-align: center;
267
+ background-color: #ffffff;
268
+ }
269
+ .user{
270
+ border-bottom: 0.5px solid #EAEAEA;
271
+ border-right: 0.5px solid #EAEAEA;
272
+ border-left: 0.5px solid #EAEAEA;
273
+ height: 120px;
274
+ }
275
+ .safecheck{
276
+ border-bottom: 0.5px solid #EAEAEA;
277
+ border-left: 0.5px solid #EAEAEA;
278
+ height: 120px;
279
+ }
280
+ .appointment{
281
+ border-top: 0.5px solid #EAEAEA;
282
+ border-right: 0.5px solid #EAEAEA;
283
+ height: 120px;
284
+ }
285
+ .search{
286
+ border-top: 0.5px solid #EAEAEA;
287
+ border-right: 0.5px solid #EAEAEA;
288
+ border-left: 0.5px solid #EAEAEA;
289
+ height: 120px;
290
+ }
291
+ .upload{
292
+ border-top: 0.5px solid #EAEAEA;
293
+ border-left: 0.5px solid #EAEAEA;
294
+ height: 120px;
295
+ }
296
+
297
+
298
+ </style>