system-phone 3.0.30 → 3.0.32

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 (32) hide show
  1. package/.gradle/checksums/checksums.lock +0 -0
  2. package/.gradle/checksums/sha1-checksums.bin +0 -0
  3. package/package.json +1 -1
  4. package/src/assets/R-C.png +0 -0
  5. package/src/assets/yinliang.png +0 -0
  6. package/src/assets//{346/212/204/350/241/250/345/256/211/346/243/200.png → 345/201/234/346/260/224/345/205/254/345/221/212.png} +0 -0
  7. package/src/assets//345/234/250/347/272/277/345/244/215/346/243/200.png +0 -0
  8. package/src/assets//345/267/245/345/215/225/350/257/246/346/203/205.png +0 -0
  9. package/src/assets//347/253/231/347/202/271/346/264/276/345/217/221.png +0 -0
  10. package/src/components/AttendManage.vue +153 -104
  11. package/src/components/LoginApp.vue +655 -559
  12. package/src/components/LoginAppNew.vue +587 -587
  13. package/src/components/ModifyPassWord.vue +144 -120
  14. package/src/components/NavBottomVVV.vue +185 -183
  15. package/src/components/OnlineManage.vue +222 -58
  16. package/src/components/PhoneAllInfo.vue +68 -0
  17. package/src/components/PhoneMeterInfo.vue +132 -0
  18. package/src/components/PhoneUserFind.vue +138 -138
  19. package/src/components/RightTree.vue +4 -1
  20. package/src/components/ToolsPage.vue +176 -162
  21. package/src/components/info/ConfigInfo.vue +122 -0
  22. package/src/components/info/FindUserInfo.vue +144 -0
  23. package/src/components/info/InfoTable.vue +37 -0
  24. package/src/components/userinfo/paymentQuery.vue +189 -189
  25. package/src/components/userinfo/queryFile.vue +190 -190
  26. package/src/systemphonegrid.js +206 -186
  27. package/.gradle/checksums/md5-checksums.bin +0 -0
  28. package/.idea/compiler.xml +0 -6
  29. package/.idea/encodings.xml +0 -6
  30. package/.idea/gradle.xml +0 -17
  31. package/.idea/misc.xml +0 -11
  32. package/src/assets//351/242/204/347/272/246/345/256/211/346/243/200.png +0 -0
@@ -1,11 +1,20 @@
1
1
  <template>
2
2
  <div class="nav-bgcolor">
3
3
  <div class="auto">
4
- <div class="row nav-bgcolor" >
4
+ <div class="row nav-bgcolor">
5
5
  <div class="col-xs-6 manbiankuang" v-for="tab in tabs" @click="gotopage(tab.link,tab.name,tab.navigate)">
6
- <img class="imgs" :src="imgback(tab.name)">
6
+ <div class="badge" v-show="tab.name == '维修派发'">
7
+ <div class="badge-content">{{ pointNum ? pointNum : 0 }}</div>
8
+ </div>
9
+ <div class="badge" v-show="tab.name == '抄表待办'">
10
+ <div class="badge-content">{{ meterNum ? meterNum : 0 }}</div>
11
+ </div>
12
+ <div class="badge" v-show="tab.name == '信息公告'">
13
+ <div class="badge-content">{{ infoNum ? infoNum : 0 }}</div>
14
+ </div>
15
+ <img class="imgs" :src="imgback(tab.name)" alt="">
7
16
  <p></p>
8
- <p class="pagesfoot">{{tab.name}}</p>
17
+ <p class="pagesfoot">{{ tab.name }}</p>
9
18
  <!--<p class="pagesfoot">{{tab.name}}&nbsp;{{tab.icon}}</p>-->
10
19
  <p></p>
11
20
  </div>
@@ -20,44 +29,48 @@
20
29
 
21
30
  <script scoped>
22
31
  import Vue from 'vue'
23
- import * as Util from '../Util'
32
+ import {HttpResetClass} from "vue-client";
33
+ import * as Util from "../Util";
34
+
24
35
  export default {
25
36
  title: '在线业务导航',
26
- data () {
37
+ data() {
27
38
  return {
28
- titleName:'在线业务',
29
- isMenu:true,
39
+ titleName: '在线业务',
40
+ isMenu: true,
30
41
  tabs: this.getTabs(),
31
42
  text: '导航组件this',
32
- beforeName:'在线业务',
33
- sourcet:'竖屏'
34
-
43
+ beforeName: '在线业务',
44
+ sourcet: '竖屏',
45
+ pointNum: null,
46
+ infoNum: null,
47
+ meterNum: null
35
48
  }
36
49
  },
37
- ready () {
50
+ ready() {
38
51
  // this.getModelSum()
39
52
  },
40
53
 
41
54
  methods: {
42
55
  //看去哪个页面
43
- getModelSum(){
44
- for(var i = 0;i<this.tabs.length;i++){
45
- if(this.tabs[i].link == 'readmeter-home' ){
56
+ getModelSum() {
57
+ for (var i = 0; i < this.tabs.length; i++) {
58
+ if (this.tabs[i].link == 'readmeter-home') {
46
59
  this.getZhihuan()
47
60
  }
48
- if(this.tabs[i].link == 'weiup-load' ){
61
+ if (this.tabs[i].link == 'weiup-load') {
49
62
  this.getRepair()
50
63
  }
51
- if(this.tabs[i].link == 'upload-page' ){
64
+ if (this.tabs[i].link == 'upload-page') {
52
65
  this.getSafeCheck()
53
66
  }
54
67
  }
55
68
 
56
69
  },
57
- getRepair(){
70
+ getRepair() {
58
71
  var _this = this;
59
- this.timeoutRepair = window.setInterval(function() {
60
- let result = _this.$androidUtil.path({'alias':'notUpload','data': {f_workorder_type: '报修单'}})
72
+ this.timeoutRepair = window.setInterval(function () {
73
+ let result = _this.$androidUtil.path({'alias': 'notUpload', 'data': {f_workorder_type: '报修单'}})
61
74
  if (result.code === 200) {
62
75
  console.log('查询得到的代办2' + JSON.stringify(result))
63
76
  var crv = {
@@ -68,10 +81,10 @@
68
81
  }
69
82
  }, 6000)
70
83
  },
71
- getSafeCheck(){
84
+ getSafeCheck() {
72
85
  var _this = this;
73
- this.timeoutRepair = window.setInterval(function() {
74
- let result = _this.$androidUtil.path({'alias':'safecheckNotUpload','data': {}})
86
+ this.timeoutRepair = window.setInterval(function () {
87
+ let result = _this.$androidUtil.path({'alias': 'safecheckNotUpload', 'data': {}})
75
88
  if (result.code === 200) {
76
89
  console.log('查询得到的安检上传' + JSON.stringify(result))
77
90
  var crv = {
@@ -82,10 +95,10 @@
82
95
  }
83
96
  }, 6000)
84
97
  },
85
- getZhihuan(){
98
+ getZhihuan() {
86
99
  var _this = this;
87
- this.timeoutZhihuan = window.setInterval(function() {
88
- let result = {code:200}
100
+ this.timeoutZhihuan = window.setInterval(function () {
101
+ let result = {code: 200}
89
102
  if (result.code === 200) {
90
103
  console.log('查询得到的代办2' + JSON.stringify(result))
91
104
  var crv = {
@@ -96,53 +109,199 @@
96
109
  }
97
110
  }, 6000)
98
111
  },
99
- changesum(titdata){
100
- for(var i = 0;i<this.tabs.length;i++){
101
- if(this.tabs[i].name == titdata.title){
112
+ changesum(titdata) {
113
+ for (var i = 0; i < this.tabs.length; i++) {
114
+ if (this.tabs[i].name == titdata.title) {
102
115
  this.tabs[i].icon = titdata.sum + '单'
103
116
  console.log(JSON.stringify(this.tabs[i].icon))
104
117
  return
105
118
  }
106
119
  }
107
120
  },
108
- getTabs(){
109
- for(let funs in Vue.functions){
110
- if(Vue.functions[funs].link == 'online-manage'){
121
+ getTabs() {
122
+ this.getRepairNum()
123
+ this.getInfoNum()
124
+ this.getmeterNum()
125
+ for (let funs in Vue.functions) {
126
+ if (Vue.functions[funs].link == 'online-manage') {
111
127
  return Vue.functions[funs].children
112
128
  }
113
129
  }
114
130
  },
115
- imgback(val){
116
- return require('../assets/'+val+'.png')
131
+ getmeterNum() {
132
+ if (this.$appdata.getSingleValue('红点') && this.$appdata.getSingleValue('红点') != 'true') {
133
+ return
134
+ }
135
+ window.setInterval(() => {
136
+ let val = {
137
+ items: "*",
138
+ tablename: "t_handplan",
139
+ orderitem: "id desc",
140
+ condition: `1=1 and f_inputtor = '${Vue.user.name}' and f_hand_state = '有效' and f_meter_state = '未抄表'`,
141
+ f_orgid: `'${Vue.user.orgid}'`
142
+ }
143
+ let http = new HttpResetClass()
144
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/tel_singleTable_OrderBy`, {data: val}, {
145
+ resolveMsg: null,
146
+ rejectMsg: null
147
+ }).then((res) => {
148
+ this.meterNum = res.data.length
149
+ })
150
+ }, 100000)
151
+ this.timeOutGetmeterNum()
152
+ },
153
+ getInfoNum() {
154
+ if (this.$appdata.getSingleValue('红点') && this.$appdata.getSingleValue('红点') != 'true') {
155
+ return
156
+ }
157
+ window.setInterval(() => {
158
+ let condition = " 1 = 1 and (f_enddate >= '" + Util.toStandardTimeString()+ "' or f_state = '公告中') "
159
+ let val = {
160
+ items: "*",
161
+ tablename: "T_STOPGAS",
162
+ orderitem: "f_date desc",
163
+ condition: condition,
164
+ f_orgstr: `'${Vue.user.orgid}'`
165
+ }
166
+ let http = new HttpResetClass()
167
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/tel_singleTable_OrderBy`, {data: val}, {
168
+ resolveMsg: null,
169
+ rejectMsg: null
170
+ }).then((res) => {
171
+ this.infoNum = res.data.length
172
+ })
173
+ }, 100000)
174
+ this.timeOutGetInfoNum()
175
+ },
176
+ getRepairNum() {
177
+ if (this.$appdata.getSingleValue('红点') && this.$appdata.getSingleValue('红点') != 'true') {
178
+ return
179
+ }
180
+ window.setInterval(() => {
181
+ let condition = `1 = 1 and f_workorder_type = '报修单' and f_state = null `
182
+ let val = {
183
+ condition: {
184
+ condition: condition,
185
+ sign: '1 = 1'
186
+ },
187
+ userid: Vue.user.name
188
+ }
189
+ let http = new HttpResetClass()
190
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/path/operatorServiceAndroid`, {data: val}, {
191
+ resolveMsg: null,
192
+ rejectMsg: null
193
+ }).then((res) => {
194
+ this.pointNum = res.data.length
195
+ })
196
+ }, 100000)
197
+ this.timeOutGetRepairNum()
198
+ },
199
+ timeOutGetRepairNum() {
200
+
201
+ let condition = `1 = 1 and f_workorder_type = '报修单' and f_state = null `
202
+ let val = {
203
+ condition: {
204
+ condition: condition,
205
+ sign: '1 = 1'
206
+ },
207
+ userid: Vue.user.name
208
+ }
209
+ let http = new HttpResetClass()
210
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/path/operatorServiceAndroid`, {data: val}, {
211
+ resolveMsg: null,
212
+ rejectMsg: null
213
+ }).then((res) => {
214
+ this.pointNum = res.data.length
215
+ })
216
+ },
217
+ timeOutGetInfoNum() {
218
+ let condition = " 1 = 1 and (f_enddate >= '" + Util.toStandardTimeString() + "' or f_state = '公告中') "
219
+ let val = {
220
+ items: "*",
221
+ tablename: "T_STOPGAS",
222
+ orderitem: "f_date desc",
223
+ condition: condition,
224
+ f_orgstr: `'${Vue.user.orgid}'`
225
+ }
226
+ let http = new HttpResetClass()
227
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/tel_singleTable_OrderBy`, {data: val}, {
228
+ resolveMsg: null,
229
+ rejectMsg: null
230
+ }).then((res) => {
231
+ this.infoNum = res.data.length
232
+ })
233
+ },
234
+ timeOutGetmeterNum() {
235
+ let val = {
236
+ items: "*",
237
+ tablename: "t_handplan",
238
+ orderitem: "id desc",
239
+ condition: `1=1 and f_inputtor = '${Vue.user.name}' and f_hand_state = '有效' and f_meter_state = '未抄表'`,
240
+ f_orgid: `'${Vue.user.orgid}'`
241
+ }
242
+ let http = new HttpResetClass()
243
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/tel_singleTable_OrderBy`, {data: val}, {
244
+ resolveMsg: null,
245
+ rejectMsg: null
246
+ }).then((res) => {
247
+ this.meterNum = res.data.length
248
+ })
249
+ },
250
+ imgback(val) {
251
+ return require('../assets/' + val + '.png')
117
252
  },
118
253
  // 返回主界面
119
- back(){
254
+ back() {
120
255
  this.titleName = '主界面'
121
256
  this.isMenu = true
122
257
 
123
258
  },
124
- gotopage(param,title,navigate) {
259
+ gotopage(param, title, navigate) {
125
260
  console.log('进入子组件')
126
261
  var prpdata = {
127
- _this:this,
128
- title:title,
129
- safe:false
262
+ _this: this,
263
+ title: title,
264
+ safe: false
130
265
  }
131
- this.$dispatch('gotoson',prpdata)
132
- if(navigate){
266
+ this.$dispatch('gotoson', prpdata)
267
+ if (navigate) {
133
268
  this.$goto('embbed-page', {domainName: navigate, title: title, compName: param, login: Vue.user})
134
- }else{
135
- this.$goto(param,{sourcet:'竖屏',tabname:title})
269
+ } else {
270
+ this.$goto(param, {sourcet: '竖屏', tabname: title})
136
271
  }
137
272
  },
138
- mute () {
273
+ mute() {
139
274
  HostApp.mute()
140
275
  }
141
276
  },
142
277
  }
143
278
  </script>
144
279
  <style lang="less">
145
- .tab-befor-img {
280
+ .badge-content {
281
+ color: #fff;
282
+ box-sizing: border-box;
283
+ min-width: 8px;
284
+ font-size: 9px;
285
+ line-height: 12px;
286
+ white-space: nowrap;
287
+ font-weight: 400;
288
+ text-align: center;
289
+ }
290
+
291
+ .badge {
292
+ top: 6px;
293
+ position: absolute;
294
+ max-height: 13px;
295
+ min-height: 8px;
296
+ right: 0;
297
+ display: inline-flex;
298
+ vertical-align: middle;
299
+ box-sizing: content-box;
300
+ border-radius: 100px;
301
+ background-color: red;
302
+ }
303
+
304
+ .tab-befor-img {
146
305
  content: '';
147
306
  background-size: 30px;
148
307
  display: inline-block;
@@ -151,48 +310,53 @@
151
310
  width: 30px;
152
311
  vertical-align: -35%;
153
312
  }
154
- .pageskuang{
155
- vertical-align:middle;
156
- display:table-cell;
313
+
314
+ .pageskuang {
315
+ vertical-align: middle;
316
+ display: table-cell;
157
317
  width: 32%;
158
- top:-50%;
318
+ top: -50%;
159
319
  margin-top: 1%;
160
320
  margin-left: 1%;
161
- border:1px solid #e3e3e3;
321
+ border: 1px solid #e3e3e3;
162
322
  text-align: center;
163
323
  background-color: #ffffff;
164
324
  }
165
- .pgesfoot{
325
+
326
+ .pgesfoot {
166
327
  font-size: 14px;
167
328
  color: #666666;
168
329
  /* font-family: "Pingfhs";*/
169
330
  }
170
- .imgs{
331
+
332
+ .imgs {
171
333
  width: 35px;
172
334
  margin-top: 15px;
173
335
  }
174
- .pages-bgcolor{
336
+
337
+ .pages-bgcolor {
175
338
  text-align: center;
176
339
  background-color: #f0f0ef;
177
340
  }
178
- img[src=""],img:not([src]){
341
+
342
+ img[src=""], img:not([src]) {
179
343
  opacity: 0;
180
- border:none;
344
+ border: none;
181
345
  visibility: hidden;
182
346
  max-width: none;
183
347
  }
184
348
 
185
- .manbiankuang{
349
+ .manbiankuang {
186
350
  width: 44%;
187
351
  margin-top: 15px;
188
352
  margin-left: 4%;
189
- border:1px solid #e3e3e3;
190
- border-radius:10px 10px 10px 10px;
353
+ border: 1px solid #e3e3e3;
354
+ border-radius: 10px 10px 10px 10px;
191
355
  text-align: center;
192
356
  background-color: #ffffff;
193
357
  }
194
358
 
195
- .nav-bgcolor{
359
+ .nav-bgcolor {
196
360
  background-color: #ffffff;
197
361
  }
198
362
  </style>
@@ -0,0 +1,68 @@
1
+ <template >
2
+ <div class="panel panel-default auto repair-info-content" >
3
+ <tabset v-ref:tabs :active="0" :close="false" >
4
+ <tab header="购气记录" id="clickMe" v-ref:tab>
5
+ <phone-sell-info style="height:auto" :user.sync="user" :f_userinfo_id.sync="f_userinfo_id" @deal-msg="dealMsg"></phone-sell-info>
6
+ </tab>
7
+ <tab header="换表记录">
8
+ <phone-meter-info :user.sync="user" :f_userinfo_id.sync="f_userinfo_id"
9
+ ></phone-meter-info>
10
+ </tab>
11
+ </tabset>
12
+ </div>
13
+ </template>
14
+
15
+ <script>
16
+
17
+ export default {
18
+ title: '查询用户',
19
+ data () {
20
+ return {
21
+
22
+ model: [],
23
+ show: false,
24
+ row: Object,
25
+ //测试数据
26
+ // user: {
27
+ // type: Object
28
+ // },
29
+ // f_userinfo_id:''
30
+ }
31
+ },
32
+ props: {
33
+ user: {
34
+ type: Object
35
+ },
36
+ f_userinfo_id: ''
37
+ },
38
+ methods: {
39
+ dealMsg (obj) {
40
+ //tag
41
+ this.listpage = false
42
+ }
43
+ },
44
+ watch: {
45
+ },
46
+ ready () {
47
+ //tag
48
+ }
49
+ }
50
+ </script>
51
+ <style>
52
+ .active {
53
+ background-color: #9de0f5;
54
+ }
55
+ .app-botton {
56
+ position:fixed;
57
+ background: #87b2dd;
58
+ color: #FFF;
59
+ padding: 8px;
60
+ text-align: center;
61
+ font-size: 1.2em;
62
+ z-index: 10;
63
+ opacity:0.5;
64
+ bottom: 50px;
65
+ margin-top: -10px;
66
+ height: 40px;
67
+ }
68
+ </style>
@@ -0,0 +1,132 @@
1
+ <template >
2
+ <div class="panel panel-default auto repair-info-content">
3
+ <div class="panel-body">
4
+ <div class="panel panel-default well" v-for="row in model">
5
+ <div class="bg-info">
6
+ <div class="row form-group">
7
+ <div class="col-xs-12 col-sm-12 col-md-12">
8
+ <div class="row">
9
+ <div class="col-xs-6 col-sm-6 col-md-6">
10
+ 旧表号: {{row.f_old_meternumber}}
11
+ </div>
12
+ <div class="col-xs-6 col-sm-6 col-md-6">
13
+ 新表号: {{row.f_new_meternumber}}
14
+ </div>
15
+ <div class="col-xs-12 col-sm-12 col-md-12">
16
+ 旧表底数: {{row.f_new_meter_base}}
17
+ </div>
18
+ <div class="col-xs-12 col-sm-12 col-md-12">
19
+ 新表底数: {{row.f_old_meter_base}}
20
+ </div>
21
+ <div class="col-xs-12 col-sm-12 col-md-12">
22
+ 旧表品牌: {{row.f_old_meter_brand}}
23
+ </div>
24
+ <div class="col-xs-12 col-sm-12 col-md-12">
25
+ 新表品牌: {{row.f_new_meter_brand}}
26
+ </div>
27
+ <div class="col-xs-12 col-sm-12 col-md-12">
28
+ 换表补气金额: {{row.f_newtable_fillfee}}
29
+ </div>
30
+ <div class="col-xs-12 col-sm-12 col-md-12">
31
+ 换表补气气量: {{row.f_newtable_fillgas}}
32
+ </div>
33
+
34
+ </div>
35
+ </div>
36
+ </div>
37
+ </div>
38
+ </div>
39
+ <p v-show="model.length == 0 ">此用户暂无换表记录</p>
40
+ </div>
41
+ </div>
42
+ </template>
43
+
44
+ <script>
45
+ import { PagedList } from 'vue-client'
46
+ import { HttpResetClass } from 'vue-client'
47
+ import co from 'co'
48
+ export default {
49
+ title: '换表记录',
50
+ data () {
51
+ return {
52
+ model: [],
53
+ show: false,
54
+ row: Object
55
+ }
56
+ },
57
+ props: {
58
+ user: {
59
+ type: Object
60
+ },
61
+ f_userinfo_id:''
62
+ },
63
+ methods: {
64
+ getmodel () {
65
+ let userinfoid
66
+ if(this.f_userinfo_id){
67
+ userinfoid = this.f_userinfo_id
68
+ }else{
69
+ userinfoid = this.user.f_userinfo_id
70
+ console.log(this.user.f_userinfo_id)
71
+ }
72
+ console.log(userinfoid)
73
+ let http = new HttpResetClass()
74
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/getChangeTable`, {
75
+ data: {
76
+ items: "*",
77
+ tablename: "t_userfiles",
78
+ condition: `f_userinfo_id = '${userinfoid}'`
79
+ }
80
+ }, {resolveMsg: null, rejectMsg: null}).then((res)=>{
81
+ debugger
82
+ this.model=res.data
83
+ this.show1=true
84
+ })
85
+ },
86
+ back(){
87
+
88
+ }
89
+ },
90
+ watch: {
91
+ 'user' (val) {
92
+ // this.model.search(`card_id = ${this.user.card_id}`)
93
+ if(this.user){
94
+ if (!(this.user.isNuN)) {
95
+ this.model= []
96
+ this.getmodel()
97
+ }
98
+ }
99
+ },
100
+ 'f_userinfo_id'(){
101
+ if(this.f_userinfo_id){
102
+ this.model= []
103
+ this.getmodel()
104
+ }
105
+ }
106
+ },
107
+ ready () {
108
+ if (this.user && this.user.f_userinfo_id) {
109
+ // this.model.search(`card_id = ${this.user.card_id}`)
110
+ this.getmodel()
111
+ }
112
+ if(this.f_userinfo_id){
113
+ this.getmodel()
114
+ }
115
+ }
116
+ }
117
+ </script>
118
+ <style>
119
+ .app-botton {
120
+ position:fixed;
121
+ background: #87b2dd;
122
+ color: #FFF;
123
+ padding: 8px;
124
+ text-align: center;
125
+ font-size: 1.2em;
126
+ z-index: 10;
127
+ opacity:0.5;
128
+ bottom: 50px;
129
+ margin-top: -10px;
130
+ height: 40px;
131
+ }
132
+ </style>