system-phone 3.1.91 → 3.1.93

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