system-phone 1.2.127 → 1.2.129

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.
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "system-phone",
3
- "version": "1.2.127",
3
+ "version": "1.2.129",
4
4
  "description": "手机模块 前端组件",
5
5
  "author": "何宁社 <524395609@qq.com>",
6
6
  "license": "ISC",
@@ -1,421 +1,421 @@
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
-
7
- <img class="imgs" :src="imgback(tab.name)">
8
- <div class="badge"
9
- v-show="isshowTag&&tab.num&&tab.num>0"
10
- ><div class="badge-content">{{tab.num>99?'99+':tab.num}}</div></div>
11
-
12
- <p></p>
13
- <p class="pagesfoot">{{tab.name}}</p>
14
-
15
- <!--<p class="pagesfoot">{{tab.name}}&nbsp;{{tab.icon}}</p>-->
16
- <p></p>
17
- </div>
18
- </div>
19
- <!--<div class="row" style="overflow:auto;">-->
20
- <!--<repair-first v-show="componentName == 'repair-first'" worktype="报修单" :sourcet="sourcet" tabname="维修待办" v-on:changesum="changesum"></repair-first>-->
21
- <!--<zhihuan-first v-show="componentName == 'zhihuan-first'" worktype="置换通气单" :sourcet="sourcet" tabname="置换待办" v-on:changesum="changesum"></zhihuan-first>-->
22
- <!--</div>-->
23
- </div>
24
- <validator name="v">
25
- <modal
26
- v-if="showModal"
27
- :show.sync="showModal"
28
- backdrop="false"
29
- title="工程类型"
30
- cancel-text="取消"
31
- ok-text="确认"
32
- :callback="apply"
33
- >
34
- <div class="form-horizontal" slot="modal-body">
35
- <div class="row form-group app-input" style="margin: 10px auto">
36
- <label class="">报建类型:</label>
37
- <div class="col-sm-8">
38
- <v-select
39
- v-model="applyType"
40
- placeholder='请选择需要发起的工程类型'
41
- :value.sync="applyType"
42
- :options='applyTypes'
43
- :value-single="true"
44
- class="select select_list"
45
- :search="false"
46
- close-on-select ></v-select>
47
- </div>
48
- </div>
49
- </div>
50
- </modal>
51
- </validator>
52
- </div>
53
- </template>
54
-
55
- <script scoped>
56
- import Vue from 'vue'
57
- import * as Util from '../Util'
58
- import {HttpResetClass} from "vue-client";
59
- export default {
60
- title: '待办工作导航',
61
- data() {
62
- return {
63
- titleName: '待办工作',
64
- showModal: false,
65
- isMenu: true,
66
- isshowTag:false,
67
- tabs: [],
68
- text: '导航组件this',
69
- beforeName: '待办工作',
70
- componentName: 'repair-first',
71
- sourcet: '竖屏',
72
- applyType: '', // 报建类型
73
- // applyTypes:this.$appdata.getParam("手机报建类型"),
74
- applyTypes: [{label: '散户报建', value: '散户报建'}, {label: '工商户报建', value: '工商户报建'}, {
75
- label: '团购报建',
76
- value: '团购报建'
77
- }, {label: '改管报建', value: '改管报建'}, {label: '增容报建', value: '增容报建'}, {
78
- label: '退款报建',
79
- value: '退款报建'
80
- }, {label: '团购转散户', value: '团购转散户'}, {label: '报警器报建', value: '报警器报建'}, {label: '工商业报警器报建', value: '工商业报警器报建'}],
81
-
82
- }
83
- },
84
- ready () {
85
- // this.getModelSum()
86
- if(Vue.config.telephone&&Vue.config.telephone.TipConfig&&Vue.config.telephone.TipConfig.data){
87
- this.isshowTag = true
88
- this.getTabs()
89
- }else{
90
- this.getNoTagTabs()
91
- }
92
-
93
- },
94
-
95
- methods: {
96
- click (row) {
97
- let _this = this
98
- this.$dispatch('gotoson', {
99
- _this: _this,
100
- title: row.defname,
101
- safe: true
102
- })
103
- this.$goto('app-service-control', {selectdata: row})
104
- },
105
- async getProcessId(processname) {
106
- let data = {
107
- workname: processname
108
- }
109
- let http = new HttpResetClass()
110
- let res = await http.load(
111
- 'POST',
112
- `${this.$androidUtil.getProxyUrl()}/rs/logic/getProcessId`,
113
- {data: data},
114
- {resolveMsg: null, rejectMsg: '流程标识获取失败!!!'}
115
- )
116
-
117
- return res.data
118
- },
119
- async apply () {
120
- if (this.applyType === '' || this.applyType === null) {
121
- this.$showAlert('请选择需要发起的类型', 'warning', 3000)
122
- return
123
- }
124
- let data = {
125
- f_apply_type: this.applyType
126
- }
127
- if (this.applyType === '散户报建') {
128
- data.processname = '散户报建流程'
129
- data.defname = '报装申请'
130
- } else if (this.applyType === '工商户报建') {
131
- data.processname = '工商户报建流程'
132
- data.defname = '报装申请'
133
- } else if (this.applyType === '改管报建') {
134
- data.processname = '改管报建流程'
135
- data.defname = '报装申请'
136
- } else if (this.applyType === '增容报建') {
137
- data.processname = '增容报建流程'
138
- data.defname = '报装申请'
139
- } else if (this.applyType === '团购报建') {
140
- data.processname = '团购报建流程'
141
- data.defname = '报装申请'
142
- } else if (this.applyType === '退款报建') {
143
- data.processname = '退款报建流程'
144
- data.defname = '终止报建'
145
- } else if (this.applyType === '团购转散户') {
146
- data.processname = '团购转散户报建流程'
147
- data.defname = '信息确认'
148
- }else if (this.applyType === '报警器报建') {
149
- data.processname = '报警器报建流程'
150
- data.defname = '报装申请'
151
- }else if (this.applyType === '工商业报警器报建') {
152
- data.processname = '工商业报警器报建流程'
153
- data.defname = '报装申请'
154
- } else {
155
- this.$showMessage('暂无此类报装')
156
- return
157
- }
158
-
159
- data.f_sub_state = "新增"
160
- data.f_apply_source = "线下发起"
161
- data.f_process_id = await this.getProcessId(data.processname)
162
-
163
- // 调用ExplorationUser事件
164
-
165
- this.click(data)
166
- this.applyType = null
167
- this.showModal = false
168
- },
169
- // 查询本地所有待办
170
- getModelSum(){
171
- for(var i = 0;i<this.tabs.length;i++){
172
- if(this.tabs[i].link == 'zhihuan-first' ){
173
- this.getZhihuan()
174
- }
175
- if(this.tabs[i].link == 'repair-first' ){
176
- this.getRepair()
177
- }
178
- if(this.tabs[i].link == 'current-create' ){
179
- this.getSafeCheck()
180
- }
181
- }
182
-
183
- },
184
- getRepair(){
185
- var _this = this;
186
- this.timeoutRepair = window.setInterval(function() {
187
- let result = _this.$androidUtil.path({'alias':`getServiceMobile`,'data':{condition:'1 = 1'}})
188
- if (result.code === 200) {
189
- console.log('查询得到的代办2' + JSON.stringify(result))
190
- var crv = {
191
- title: '维修待办',
192
- sum: result.data.length
193
- }
194
- _this.changesum(crv)
195
- }
196
- }, 6000)
197
- },
198
- getSafeCheck(){
199
- var _this = this;
200
- this.timeoutRepair = window.setInterval(function() {
201
- let result = _this.$androidUtil.path({'alias':`safecheckGetServiceMobile`,'data':{condition:'1 = 1'}})
202
- if (result.code === 200) {
203
- console.log('查询得到的安检代办' + JSON.stringify(result))
204
- var crv = {
205
- title: '安检待办',
206
- sum: result.data.length
207
- }
208
- _this.changesum(crv)
209
- }
210
- }, 6000)
211
- },
212
- getZhihuan(){
213
- var _this = this;
214
- this.timeoutZhihuan = window.setInterval(function() {
215
- let result = _this.$androidUtil.path({'alias':`getSubstitMobile`,'data':{condition:'1 = 1'}})
216
- if (result.code === 200) {
217
- console.log('查询得到的代办2' + JSON.stringify(result))
218
- var crv = {
219
- title: '置换待办',
220
- sum: result.data.length
221
- }
222
- _this.changesum(crv)
223
- }
224
- }, 6000)
225
- },
226
- changesum(titdata){
227
- for(var i = 0;i<this.tabs.length;i++){
228
- if(this.tabs[i].name == titdata.title){
229
- this.tabs[i].icon = titdata.sum + '单'
230
- console.log(JSON.stringify(this.tabs[i].icon))
231
- return
232
- }
233
- }
234
- },
235
- getNoTagTabs(){
236
- for(let funs in Vue.functions){
237
- if(Vue.functions[funs].link == 'attend-manage'){
238
- this.$set('tabs',Vue.functions[funs].children)
239
- }
240
- }
241
- },
242
- async getTabs(){
243
- const config = Vue.config.telephone.TipConfig.data
244
- const user = Vue.user
245
- console.log("Vue.android"+Vue.android)
246
- if(Vue.android){
247
- const result = this.$androidUtil.syncBzLogic("TipConfig",{data:{config,user}})
248
- if(result.code === 200){
249
- for(let funs in Vue.functions){
250
- if(Vue.functions[funs].link == 'attend-manage'){
251
- Vue.functions[funs].children.forEach(res=>{
252
- console.log(res)
253
- result.result.forEach(ress=>{
254
- if(res.link === ress.link){
255
- res.num=ress.num
256
- }
257
- })
258
- })
259
- this.$set('tabs',Vue.functions[funs].children)
260
- }
261
- }
262
- }else{
263
- for(let funs in Vue.functions){
264
- if(Vue.functions[funs].link == 'attend-manage'){
265
- this.$set('tabs',Vue.functions[funs].children)
266
- }
267
- }
268
- }
269
- }else{
270
- const result = {"code":200,"result":[{"link":"repair-first","num":50},{"link":"current-create","num":30}]}
271
- if(result.code === 200){
272
- for(let funs in Vue.functions){
273
- if(Vue.functions[funs].link == 'attend-manage'){
274
- Vue.functions[funs].children.forEach(res=>{
275
- console.log(res)
276
- result.result.forEach(ress=>{
277
- if(res.link === ress.link){
278
- res.num=ress.num
279
- }
280
- })
281
- })
282
- this.$set('tabs',Vue.functions[funs].children)
283
- }
284
- }
285
- }else{
286
-
287
- }
288
-
289
- }
290
-
291
- },
292
- imgback(val){
293
- return require('../assets/'+val+'.png')
294
- },
295
- // 返回主界面
296
- back(){
297
- this.titleName = '主界面'
298
- this.isMenu = true
299
-
300
- },
301
- gotopage(param,title) {
302
- if(title === '工程发起'){
303
- this.showModal = !this.showModal
304
- }else{
305
- console.log('进入子组件')
306
- var prpdata = {
307
- _this:this,
308
- title:title,
309
- safe:false
310
- }
311
- this.$dispatch('gotoson',prpdata)
312
- this.$goto(param,{sourcet:'竖屏',tabname:title})
313
- }
314
- },
315
- mute () {
316
- HostApp.mute()
317
- }
318
- },
319
- }
320
- </script>
321
- <style lang="less">
322
- .badge-content{
323
- color: #fff;
324
- box-sizing: border-box;
325
- min-width: 8px;
326
- font-size: 9px;
327
- line-height: 12px;
328
- white-space: nowrap;
329
- font-weight: 400;
330
- text-align: center;
331
- }
332
- .badge{
333
- top: 6px;
334
- position: absolute;
335
- max-height: 13px;
336
- min-height: 8px;
337
- //transform: translate(50%,-50%);
338
- right:0;
339
- display: inline-flex;
340
- vertical-align: middle;
341
- box-sizing: content-box;
342
- border-radius: 100px;
343
- background-color: red;
344
- }
345
- .app-input {
346
- label {
347
- float: left;
348
- }
349
- .select {
350
- button {
351
- border: none;
352
- outline: none;
353
- text-align: left;
354
- .btn-placeholder {
355
- color: #ACA899
356
- }
357
- }
358
- }
359
- .datepicker {
360
- .form-control:focus {
361
- border: none!important;
362
- outline: none!important;
363
- -webkit-box-shadow: none;
364
- box-shadow: none;
365
- }
366
- }
367
- }
368
- .tab-befor-img {
369
- content: '';
370
- background-size: 30px;
371
- display: inline-block;
372
- margin-right: 8px;
373
- height: 30px;
374
- width: 30px;
375
- vertical-align: -35%;
376
- }
377
- .pageskuang{
378
- vertical-align:middle;
379
- display:table-cell;
380
- width: 32%;
381
- top:-50%;
382
- margin-top: 1%;
383
- margin-left: 1%;
384
- border:1px solid #e3e3e3;
385
- text-align: center;
386
- background-color: #ffffff;
387
- }
388
- .pgesfoot{
389
- font-size: 14px;
390
- color: #666666;
391
- /* font-family: "Pingfhs";*/
392
- }
393
- .imgs{
394
- width: 35px;
395
- margin-top: 15px;
396
- }
397
- .pages-bgcolor{
398
- text-align: center;
399
- background-color: #f0f0ef;
400
- }
401
- img[src=""],img:not([src]){
402
- opacity: 0;
403
- border:none;
404
- visibility: hidden;
405
- max-width: none;
406
- }
407
-
408
- .manbiankuang{
409
- width: 44%;
410
- margin-top: 15px;
411
- margin-left: 4%;
412
- border:1px solid #e3e3e3;
413
- border-radius:10px 10px 10px 10px;
414
- text-align: center;
415
- background-color: #ffffff;
416
- }
417
-
418
- .nav-bgcolor{
419
- background-color: #ffffff;
420
- }
421
- </style>
1
+ <template>
2
+ <div class="nav-bgcolor">
3
+ <div class="auto">
4
+ <div class="row nav-bgcolor" style="padding-bottom: 20%">
5
+ <div class="col-xs-6 manbiankuang" v-for="tab in tabs" @click="gotopage(tab.link,tab.name)">
6
+
7
+ <img class="imgs" :src="imgback(tab.name)">
8
+ <div class="badge"
9
+ v-show="isshowTag&&tab.num&&tab.num>0"
10
+ ><div class="badge-content">{{tab.num>99?'99+':tab.num}}</div></div>
11
+
12
+ <p></p>
13
+ <p class="pagesfoot">{{tab.name}}</p>
14
+
15
+ <!--<p class="pagesfoot">{{tab.name}}&nbsp;{{tab.icon}}</p>-->
16
+ <p></p>
17
+ </div>
18
+ </div>
19
+ <!--<div class="row" style="overflow:auto;">-->
20
+ <!--<repair-first v-show="componentName == 'repair-first'" worktype="报修单" :sourcet="sourcet" tabname="维修待办" v-on:changesum="changesum"></repair-first>-->
21
+ <!--<zhihuan-first v-show="componentName == 'zhihuan-first'" worktype="置换通气单" :sourcet="sourcet" tabname="置换待办" v-on:changesum="changesum"></zhihuan-first>-->
22
+ <!--</div>-->
23
+ </div>
24
+ <validator name="v">
25
+ <modal
26
+ v-if="showModal"
27
+ :show.sync="showModal"
28
+ backdrop="false"
29
+ title="工程类型"
30
+ cancel-text="取消"
31
+ ok-text="确认"
32
+ :callback="apply"
33
+ >
34
+ <div class="form-horizontal" slot="modal-body">
35
+ <div class="row form-group app-input" style="margin: 10px auto">
36
+ <label class="">报建类型:</label>
37
+ <div class="col-sm-8">
38
+ <v-select
39
+ v-model="applyType"
40
+ placeholder='请选择需要发起的工程类型'
41
+ :value.sync="applyType"
42
+ :options='applyTypes'
43
+ :value-single="true"
44
+ class="select select_list"
45
+ :search="false"
46
+ close-on-select ></v-select>
47
+ </div>
48
+ </div>
49
+ </div>
50
+ </modal>
51
+ </validator>
52
+ </div>
53
+ </template>
54
+
55
+ <script scoped>
56
+ import Vue from 'vue'
57
+ import * as Util from '../Util'
58
+ import {HttpResetClass} from "vue-client";
59
+ export default {
60
+ title: '待办工作导航',
61
+ data() {
62
+ return {
63
+ titleName: '待办工作',
64
+ showModal: false,
65
+ isMenu: true,
66
+ isshowTag:false,
67
+ tabs: [],
68
+ text: '导航组件this',
69
+ beforeName: '待办工作',
70
+ componentName: 'repair-first',
71
+ sourcet: '竖屏',
72
+ applyType: '', // 报建类型
73
+ // applyTypes:this.$appdata.getParam("手机报建类型"),
74
+ applyTypes: [{label: '散户报建', value: '散户报建'}, {label: '工商户报建', value: '工商户报建'}, {
75
+ label: '团购报建',
76
+ value: '团购报建'
77
+ }, {label: '改管报建', value: '改管报建'}, {label: '增容报建', value: '增容报建'}, {
78
+ label: '退款报建',
79
+ value: '退款报建'
80
+ }, {label: '团购转散户', value: '团购转散户'}, {label: '报警器报建', value: '报警器报建'}, {label: '工商业报警器报建', value: '工商业报警器报建'}],
81
+
82
+ }
83
+ },
84
+ ready () {
85
+ // this.getModelSum()
86
+ if(Vue.config.telephone&&Vue.config.telephone.TipConfig&&Vue.config.telephone.TipConfig.data){
87
+ this.isshowTag = true
88
+ this.getTabs()
89
+ }else{
90
+ this.getNoTagTabs()
91
+ }
92
+
93
+ },
94
+
95
+ methods: {
96
+ click (row) {
97
+ let _this = this
98
+ this.$dispatch('gotoson', {
99
+ _this: _this,
100
+ title: row.defname,
101
+ safe: true
102
+ })
103
+ this.$goto('app-service-control', {selectdata: row})
104
+ },
105
+ async getProcessId(processname) {
106
+ let data = {
107
+ workname: processname
108
+ }
109
+ let http = new HttpResetClass()
110
+ let res = await http.load(
111
+ 'POST',
112
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/getProcessId`,
113
+ {data: data},
114
+ {resolveMsg: null, rejectMsg: '流程标识获取失败!!!'}
115
+ )
116
+
117
+ return res.data
118
+ },
119
+ async apply () {
120
+ if (this.applyType === '' || this.applyType === null) {
121
+ this.$showAlert('请选择需要发起的类型', 'warning', 3000)
122
+ return
123
+ }
124
+ let data = {
125
+ f_apply_type: this.applyType
126
+ }
127
+ if (this.applyType === '散户报建') {
128
+ data.processname = '散户报建流程'
129
+ data.defname = '报装申请'
130
+ } else if (this.applyType === '工商户报建') {
131
+ data.processname = '工商户报建流程'
132
+ data.defname = '报装申请'
133
+ } else if (this.applyType === '改管报建') {
134
+ data.processname = '改管报建流程'
135
+ data.defname = '报装申请'
136
+ } else if (this.applyType === '增容报建') {
137
+ data.processname = '增容报建流程'
138
+ data.defname = '报装申请'
139
+ } else if (this.applyType === '团购报建') {
140
+ data.processname = '团购报建流程'
141
+ data.defname = '报装申请'
142
+ } else if (this.applyType === '退款报建') {
143
+ data.processname = '退款报建流程'
144
+ data.defname = '终止报建'
145
+ } else if (this.applyType === '团购转散户') {
146
+ data.processname = '团购转散户报建流程'
147
+ data.defname = '信息确认'
148
+ }else if (this.applyType === '报警器报建') {
149
+ data.processname = '报警器报建流程'
150
+ data.defname = '报装申请'
151
+ }else if (this.applyType === '工商业报警器报建') {
152
+ data.processname = '工商业报警器报建流程'
153
+ data.defname = '报装申请'
154
+ } else {
155
+ this.$showMessage('暂无此类报装')
156
+ return
157
+ }
158
+
159
+ data.f_sub_state = "新增"
160
+ data.f_apply_source = "线下发起"
161
+ data.f_process_id = await this.getProcessId(data.processname)
162
+
163
+ // 调用ExplorationUser事件
164
+
165
+ this.click(data)
166
+ this.applyType = null
167
+ this.showModal = false
168
+ },
169
+ // 查询本地所有待办
170
+ getModelSum(){
171
+ for(var i = 0;i<this.tabs.length;i++){
172
+ if(this.tabs[i].link == 'zhihuan-first' ){
173
+ this.getZhihuan()
174
+ }
175
+ if(this.tabs[i].link == 'repair-first' ){
176
+ this.getRepair()
177
+ }
178
+ if(this.tabs[i].link == 'current-create' ){
179
+ this.getSafeCheck()
180
+ }
181
+ }
182
+
183
+ },
184
+ getRepair(){
185
+ var _this = this;
186
+ this.timeoutRepair = window.setInterval(function() {
187
+ let result = _this.$androidUtil.path({'alias':`getServiceMobile`,'data':{condition:'1 = 1'}})
188
+ if (result.code === 200) {
189
+ console.log('查询得到的代办2' + JSON.stringify(result))
190
+ var crv = {
191
+ title: '维修待办',
192
+ sum: result.data.length
193
+ }
194
+ _this.changesum(crv)
195
+ }
196
+ }, 6000)
197
+ },
198
+ getSafeCheck(){
199
+ var _this = this;
200
+ this.timeoutRepair = window.setInterval(function() {
201
+ let result = _this.$androidUtil.path({'alias':`safecheckGetServiceMobile`,'data':{condition:'1 = 1'}})
202
+ if (result.code === 200) {
203
+ console.log('查询得到的安检代办' + JSON.stringify(result))
204
+ var crv = {
205
+ title: '安检待办',
206
+ sum: result.data.length
207
+ }
208
+ _this.changesum(crv)
209
+ }
210
+ }, 6000)
211
+ },
212
+ getZhihuan(){
213
+ var _this = this;
214
+ this.timeoutZhihuan = window.setInterval(function() {
215
+ let result = _this.$androidUtil.path({'alias':`getSubstitMobile`,'data':{condition:'1 = 1'}})
216
+ if (result.code === 200) {
217
+ console.log('查询得到的代办2' + JSON.stringify(result))
218
+ var crv = {
219
+ title: '置换待办',
220
+ sum: result.data.length
221
+ }
222
+ _this.changesum(crv)
223
+ }
224
+ }, 6000)
225
+ },
226
+ changesum(titdata){
227
+ for(var i = 0;i<this.tabs.length;i++){
228
+ if(this.tabs[i].name == titdata.title){
229
+ this.tabs[i].icon = titdata.sum + '单'
230
+ console.log(JSON.stringify(this.tabs[i].icon))
231
+ return
232
+ }
233
+ }
234
+ },
235
+ getNoTagTabs(){
236
+ for(let funs in Vue.functions){
237
+ if(Vue.functions[funs].link == 'attend-manage'){
238
+ this.$set('tabs',Vue.functions[funs].children)
239
+ }
240
+ }
241
+ },
242
+ async getTabs(){
243
+ const config = Vue.config.telephone.TipConfig.data
244
+ const user = Vue.user
245
+ console.log("Vue.android"+Vue.android)
246
+ if(Vue.android){
247
+ const result = this.$androidUtil.syncBzLogic("TipConfig",{data:{config,user}})
248
+ if(result.code === 200){
249
+ for(let funs in Vue.functions){
250
+ if(Vue.functions[funs].link == 'attend-manage'){
251
+ Vue.functions[funs].children.forEach(res=>{
252
+ console.log(res)
253
+ result.result.forEach(ress=>{
254
+ if(res.link === ress.link){
255
+ res.num=ress.num
256
+ }
257
+ })
258
+ })
259
+ this.$set('tabs',Vue.functions[funs].children)
260
+ }
261
+ }
262
+ }else{
263
+ for(let funs in Vue.functions){
264
+ if(Vue.functions[funs].link == 'attend-manage'){
265
+ this.$set('tabs',Vue.functions[funs].children)
266
+ }
267
+ }
268
+ }
269
+ }else{
270
+ const result = {"code":200,"result":[{"link":"repair-first","num":50},{"link":"current-create","num":30}]}
271
+ if(result.code === 200){
272
+ for(let funs in Vue.functions){
273
+ if(Vue.functions[funs].link == 'attend-manage'){
274
+ Vue.functions[funs].children.forEach(res=>{
275
+ console.log(res)
276
+ result.result.forEach(ress=>{
277
+ if(res.link === ress.link){
278
+ res.num=ress.num
279
+ }
280
+ })
281
+ })
282
+ this.$set('tabs',Vue.functions[funs].children)
283
+ }
284
+ }
285
+ }else{
286
+
287
+ }
288
+
289
+ }
290
+
291
+ },
292
+ imgback(val){
293
+ return require('../assets/'+val+'.png')
294
+ },
295
+ // 返回主界面
296
+ back(){
297
+ this.titleName = '主界面'
298
+ this.isMenu = true
299
+
300
+ },
301
+ gotopage(param,title) {
302
+ if(title === '工程发起'){
303
+ this.showModal = !this.showModal
304
+ }else{
305
+ console.log('进入子组件')
306
+ var prpdata = {
307
+ _this:this,
308
+ title:title,
309
+ safe:false
310
+ }
311
+ this.$dispatch('gotoson',prpdata)
312
+ this.$goto(param,{sourcet:'竖屏',tabname:title})
313
+ }
314
+ },
315
+ mute () {
316
+ HostApp.mute()
317
+ }
318
+ },
319
+ }
320
+ </script>
321
+ <style lang="less">
322
+ .badge-content{
323
+ color: #fff;
324
+ box-sizing: border-box;
325
+ min-width: 8px;
326
+ font-size: 9px;
327
+ line-height: 12px;
328
+ white-space: nowrap;
329
+ font-weight: 400;
330
+ text-align: center;
331
+ }
332
+ .badge{
333
+ top: 6px;
334
+ position: absolute;
335
+ max-height: 13px;
336
+ min-height: 8px;
337
+ //transform: translate(50%,-50%);
338
+ right:0;
339
+ display: inline-flex;
340
+ vertical-align: middle;
341
+ box-sizing: content-box;
342
+ border-radius: 100px;
343
+ background-color: red;
344
+ }
345
+ .app-input {
346
+ label {
347
+ float: left;
348
+ }
349
+ .select {
350
+ button {
351
+ border: none;
352
+ outline: none;
353
+ text-align: left;
354
+ .btn-placeholder {
355
+ color: #ACA899
356
+ }
357
+ }
358
+ }
359
+ .datepicker {
360
+ .form-control:focus {
361
+ border: none!important;
362
+ outline: none!important;
363
+ -webkit-box-shadow: none;
364
+ box-shadow: none;
365
+ }
366
+ }
367
+ }
368
+ .tab-befor-img {
369
+ content: '';
370
+ background-size: 30px;
371
+ display: inline-block;
372
+ margin-right: 8px;
373
+ height: 30px;
374
+ width: 30px;
375
+ vertical-align: -35%;
376
+ }
377
+ .pageskuang{
378
+ vertical-align:middle;
379
+ display:table-cell;
380
+ width: 32%;
381
+ top:-50%;
382
+ margin-top: 1%;
383
+ margin-left: 1%;
384
+ border:1px solid #e3e3e3;
385
+ text-align: center;
386
+ background-color: #ffffff;
387
+ }
388
+ .pgesfoot{
389
+ font-size: 14px;
390
+ color: #666666;
391
+ /* font-family: "Pingfhs";*/
392
+ }
393
+ .imgs{
394
+ width: 35px;
395
+ margin-top: 15px;
396
+ }
397
+ .pages-bgcolor{
398
+ text-align: center;
399
+ background-color: #f0f0ef;
400
+ }
401
+ img[src=""],img:not([src]){
402
+ opacity: 0;
403
+ border:none;
404
+ visibility: hidden;
405
+ max-width: none;
406
+ }
407
+
408
+ .manbiankuang{
409
+ width: 44%;
410
+ margin-top: 15px;
411
+ margin-left: 4%;
412
+ border:1px solid #e3e3e3;
413
+ border-radius:10px 10px 10px 10px;
414
+ text-align: center;
415
+ background-color: #ffffff;
416
+ }
417
+
418
+ .nav-bgcolor{
419
+ background-color: #ffffff;
420
+ }
421
+ </style>
@@ -1,10 +1,12 @@
1
1
  <template>
2
2
  <div style="height: 7%">
3
- <tools-page :need-back="!isMenu" :title="titleName" @back="back('返回')" > </tools-page>
3
+ <tools-page style="z-index: 9999" :need-back="!isMenu" :title="titleName" @back="back('返回')" > </tools-page>
4
4
  </div>
5
5
  <div id="app" :class="{'auto':isMenu,'app-height':!isMenu}">
6
- <div class="row" style="overflow-y: scroll;">
7
- <route v-ref:route> </route>
6
+ <div class="row" style="height: 100vh">
7
+ <div style="overflow-y: scroll">
8
+ <route v-ref:route> </route>
9
+ </div>
8
10
  </div>
9
11
  <tab-bar @select-item="onClickTabBarItem" v-show="isMenu">
10
12
  </tab-bar>
@@ -1,165 +1,165 @@
1
- <template>
2
- <div class="page-header app-header auto">
3
- <span style="margin-left:33px">{{title}}</span>
4
- <div class="app-header-back" @click='back()' v-show="needBack">
5
- <img src="../assets/返回.png" style="height: 20px;margin-right:-10px"/>
6
- </div>
7
- <div class="app-header-back" style="margin-top: 20px" v-show="!needBack">
8
- <img src="../assets/denglu.png" style="height: 20px;margin-right:-10px;margin-top:-10px"/>
9
- <span style="margin-left:5px;color: #ffffff;font-size: 1.0em;">{{loginname}}</span>
10
- </div>
11
- <div class="app-header-list" v-if="showList">
12
- <dropdown>
13
- <a href="#" data-toggle="dropdown" class="dropdown-toggle" style="color: white;font-size:19px">
14
- <div class="app-header-newaddserver" style="line-height: 1px;margin-top: -5px">
15
- <img src="../assets/newadd3.png" style="height: 20px;margin-right:-10px"/>
16
- </div>
17
- </a>
18
- <ul slot="dropdown-menu" class="dropdown-menu dropdown-menu-right">
19
- <li >
20
- <a href="#" @click="gotopage('sell-info',{user:user})">
21
- <img src="../assets/待办工单竖屏3.png"> 报修工单
22
- </a>
23
- <hr>
24
- <a href="#" @click="gotopage('repair-message',{user:user})">
25
- <img src="../assets/安检导航竖屏3.png"/> 安检计划
26
- </a>
27
- <hr>
28
- <a href="#" @click="gotopage('changemeter-info',{user:user})">
29
- <img src="../assets/手机抄表竖屏3.png"/> 抄表计划
30
- </a>
31
- <hr>
32
- <hr>
33
- </li>
34
- </ul>
35
- </dropdown>
36
- </div>
37
- <div class="app-header-guanbishengyin" style="line-height: 25px" @click='mute()'>
38
- <img src="../assets/jingyin3.png" style="height: 20px;"/>
39
- </div>
40
- </div>
41
- </template>
42
-
43
- <script>
44
- import Vue from 'vue'
45
- export default {
46
- title: '通用头部组件',
47
- data () {
48
- return {
49
- loginname: Vue.user.name
50
- }
51
- },
52
- props: {
53
- user:{
54
- type:Object
55
- },
56
- userinfo:{
57
- type:Object
58
- },
59
- // 是否显示列表控件
60
- showList: {
61
- type: Boolean,
62
- default: false
63
- },
64
- title: {
65
- type: String,
66
- default: '燃气应用'
67
- },
68
- needBack: {
69
- type: Boolean,
70
- default: true
71
- }
72
- },
73
- methods: {
74
- // 新增工单
75
- newadd(){
76
- // 事件
77
- },
78
- // 跳转页面
79
- gotopage(param,props) {
80
- this.$goto(param,props)
81
- },
82
- back () {
83
- // console.log('发送返回事件')
84
- this.$emit('back')
85
- },
86
- // 关闭新消息响铃(静音)
87
- mute () {
88
- if(navigator.userAgent.match('iPad') || navigator.userAgent.match('iPhone')){
89
- window.prompt("mute","")
90
- }else{
91
- HostApp.mute()
92
- }
93
- },
94
- }
95
- }
96
- </script>
97
- <style scoped>
98
- .app-header {
99
- position: fixed;
100
- top:0px;
101
- width: 100%;
102
- margin: 0px;
103
- background: #499edf;
104
- color: #FFF;
105
- padding: 10px;
106
- text-align: center;
107
- font-size: 15px;
108
- height: 7%;
109
-
110
- /*margin-bottom: 20px;*/
111
- }
112
- .app-header-back {
113
- position: absolute;
114
- top: 12px;
115
- color: #D8DCE5;
116
- }
117
- .app-header-list {
118
- height: 40px;
119
- float: right;
120
- color: #D8DCE5;
121
- }
122
- .app-header-guanbishengyin {
123
- margin-right: 10px;
124
- float: right;
125
- color: #D8DCE5;
126
- }
127
- .app-header-newaddserver {
128
- margin-right: 10px;
129
- float: right;
130
- color: #D8DCE5;
131
- }
132
- .app-header-volume {
133
- position: absolute;
134
- top: 0;
135
- display: flex;
136
- flex-direction: column;
137
- justify-content: center;
138
- right: 20px;
139
- color: #D8DCE5;
140
- font-size: 1.5em;
141
- }
142
- .dropdown-menu {
143
- background-color: #212a35;
144
- }
145
- .dropdown-menu a{
146
- color: white;
147
- }
148
- .dropdown-menu a:hover{
149
- color: white;
150
- background-color: #6b85a3;
151
- }
152
- .dropdown-menu img{
153
- width: 22%;
154
- margin-top: -5px;
155
- }
156
- .dropdown-menu hr{
157
- margin-top: 0px;
158
- margin-bottom: 0px;
159
- margin-right:0px;
160
- width: 80%;
161
- }
162
- .glyphicon-menu-left{
163
- color:#fff;
164
- }
165
- </style>
1
+ <template>
2
+ <div class="page-header app-header auto">
3
+ <span style="margin-left:33px">{{title}}</span>
4
+ <div class="app-header-back" @click='back()' v-show="needBack">
5
+ <img src="../assets/返回.png" style="height: 20px;margin-right:-10px"/>
6
+ </div>
7
+ <div class="app-header-back" style="margin-top: 20px" v-show="!needBack">
8
+ <img src="../assets/denglu.png" style="height: 20px;margin-right:-10px;margin-top:-10px"/>
9
+ <span style="margin-left:5px;color: #ffffff;font-size: 1.0em;">{{loginname}}</span>
10
+ </div>
11
+ <div class="app-header-list" v-if="showList">
12
+ <dropdown>
13
+ <a href="#" data-toggle="dropdown" class="dropdown-toggle" style="color: white;font-size:19px">
14
+ <div class="app-header-newaddserver" style="line-height: 1px;margin-top: -5px">
15
+ <img src="../assets/newadd3.png" style="height: 20px;margin-right:-10px"/>
16
+ </div>
17
+ </a>
18
+ <ul slot="dropdown-menu" class="dropdown-menu dropdown-menu-right">
19
+ <li >
20
+ <a href="#" @click="gotopage('sell-info',{user:user})">
21
+ <img src="../assets/待办工单竖屏3.png"> 报修工单
22
+ </a>
23
+ <hr>
24
+ <a href="#" @click="gotopage('repair-message',{user:user})">
25
+ <img src="../assets/安检导航竖屏3.png"/> 安检计划
26
+ </a>
27
+ <hr>
28
+ <a href="#" @click="gotopage('changemeter-info',{user:user})">
29
+ <img src="../assets/手机抄表竖屏3.png"/> 抄表计划
30
+ </a>
31
+ <hr>
32
+ <hr>
33
+ </li>
34
+ </ul>
35
+ </dropdown>
36
+ </div>
37
+ <div class="app-header-guanbishengyin" style="line-height: 25px" @click='mute()'>
38
+ <img src="../assets/jingyin3.png" style="height: 20px;"/>
39
+ </div>
40
+ </div>
41
+ </template>
42
+
43
+ <script>
44
+ import Vue from 'vue'
45
+ export default {
46
+ title: '通用头部组件',
47
+ data () {
48
+ return {
49
+ loginname: Vue.user.name
50
+ }
51
+ },
52
+ props: {
53
+ user:{
54
+ type:Object
55
+ },
56
+ userinfo:{
57
+ type:Object
58
+ },
59
+ // 是否显示列表控件
60
+ showList: {
61
+ type: Boolean,
62
+ default: false
63
+ },
64
+ title: {
65
+ type: String,
66
+ default: '燃气应用'
67
+ },
68
+ needBack: {
69
+ type: Boolean,
70
+ default: true
71
+ }
72
+ },
73
+ methods: {
74
+ // 新增工单
75
+ newadd(){
76
+ // 事件
77
+ },
78
+ // 跳转页面
79
+ gotopage(param,props) {
80
+ this.$goto(param,props)
81
+ },
82
+ back () {
83
+ // console.log('发送返回事件')
84
+ this.$emit('back')
85
+ },
86
+ // 关闭新消息响铃(静音)
87
+ mute () {
88
+ if(navigator.userAgent.match('iPad') || navigator.userAgent.match('iPhone')){
89
+ window.prompt("mute","")
90
+ }else{
91
+ HostApp.mute()
92
+ }
93
+ },
94
+ }
95
+ }
96
+ </script>
97
+ <style scoped>
98
+ .app-header {
99
+ position: fixed;
100
+ top:0px;
101
+ width: 100%;
102
+ margin: 0px;
103
+ background: #499edf;
104
+ color: #FFF;
105
+ padding: 10px;
106
+ text-align: center;
107
+ font-size: 15px;
108
+ height: 7%;
109
+
110
+ /*margin-bottom: 20px;*/
111
+ }
112
+ .app-header-back {
113
+ position: absolute;
114
+ top: 12px;
115
+ color: #D8DCE5;
116
+ }
117
+ .app-header-list {
118
+ height: 40px;
119
+ float: right;
120
+ color: #D8DCE5;
121
+ }
122
+ .app-header-guanbishengyin {
123
+ margin-right: 10px;
124
+ float: right;
125
+ color: #D8DCE5;
126
+ }
127
+ .app-header-newaddserver {
128
+ margin-right: 10px;
129
+ float: right;
130
+ color: #D8DCE5;
131
+ }
132
+ .app-header-volume {
133
+ position: absolute;
134
+ top: 0;
135
+ display: flex;
136
+ flex-direction: column;
137
+ justify-content: center;
138
+ right: 20px;
139
+ color: #D8DCE5;
140
+ font-size: 1.5em;
141
+ }
142
+ .dropdown-menu {
143
+ background-color: #212a35;
144
+ }
145
+ .dropdown-menu a{
146
+ color: white;
147
+ }
148
+ .dropdown-menu a:hover{
149
+ color: white;
150
+ background-color: #6b85a3;
151
+ }
152
+ .dropdown-menu img{
153
+ width: 22%;
154
+ margin-top: -5px;
155
+ }
156
+ .dropdown-menu hr{
157
+ margin-top: 0px;
158
+ margin-bottom: 0px;
159
+ margin-right:0px;
160
+ width: 80%;
161
+ }
162
+ .glyphicon-menu-left{
163
+ color:#fff;
164
+ }
165
+ </style>