system-phone 3.0.29 → 3.0.31

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 (28) hide show
  1. package/.gradle/checksums/checksums.lock +0 -0
  2. package/.gradle/checksums/md5-checksums.bin +0 -0
  3. package/.gradle/checksums/sha1-checksums.bin +0 -0
  4. package/.idea/compiler.xml +6 -0
  5. package/.idea/encodings.xml +6 -0
  6. package/.idea/gradle.xml +17 -0
  7. package/.idea/misc.xml +11 -0
  8. package/package.json +1 -1
  9. package/src/assets//345/234/250/347/272/277/345/244/215/346/243/200.png +0 -0
  10. package/src/assets//{345/267/245/345/215/225/350/257/246/346/203/205.png → 346/212/204/350/241/250/345/256/211/346/243/200.png} +0 -0
  11. package/src/assets//{345/201/234/346/260/224/345/205/254/345/221/212.png → 346/214/202/350/241/250/344/273/243/345/212/236.png} +0 -0
  12. package/src/assets//351/242/204/347/272/246/345/256/211/346/243/200.png +0 -0
  13. package/src/components/AttendManage.vue +421 -470
  14. package/src/components/LoginApp.vue +559 -655
  15. package/src/components/LoginAppNew.vue +587 -587
  16. package/src/components/ModifyPassWord.vue +120 -144
  17. package/src/components/NavBottomVVV.vue +183 -185
  18. package/src/components/OnlineManage.vue +198 -362
  19. package/src/components/RightTree.vue +214 -217
  20. package/src/components/ToolsPage.vue +68 -82
  21. package/src/components/userinfo/paymentQuery.vue +189 -189
  22. package/src/components/userinfo/queryFile.vue +190 -190
  23. package/src/systemphonegrid.js +0 -8
  24. package/src/assets/R-C.png +0 -0
  25. package/src/assets/yinliang.png +0 -0
  26. package/src/assets//347/253/231/347/202/271/346/264/276/345/217/221.png +0 -0
  27. package/src/components/PhoneAllInfo.vue +0 -68
  28. package/src/components/PhoneMeterInfo.vue +0 -132
@@ -1,217 +1,214 @@
1
- <template>
2
- <dropdown :model='model' class="auto" id="res-tree" v-if="!islist" v-el:dropdown :style="{width:width}">
3
- <button type="button" class="btn btn-default dropdown-toggle select-style" data-toggle="dropdown">
4
- <span class='btn-content' :style="{textOverflow:'ellipsis',overflow: 'hidden'}">{{ resname }}</span>
5
- <span class="caret"></span>
6
- </button>
7
- <tree :model='model' :is-click="false" slot="dropdown-menu" class="dropdown-menu auto" role="menu">
8
- <span partial>
9
- <span class="glyphicon glyphicon-chevron-down" v-show="row.open&&row.data.children.length>0" style="color:balck;"></span>
10
- <span class="glyphicon glyphicon-chevron-right" v-show="!row.open&&row.data.children.length>0" style="color:balck;"></span>
11
- <span class="RightTreeCanSelect" v-if="row.data.hasright" @click.stop="$parent.$parent.$parent.selectclick(row.data)">{{row.data.name}}</span>
12
- <span class="RightTreeCanNotSelect" v-else>{{row.data.name}}</span>
13
- <span class="glyphicon glyphicon-ok " v-if="$parent.$parent.$parent.isSelect(row.data.id)" style="color:balck;"></span>
14
- </span>
15
- </tree>
16
- </dropdown>
17
- <v-select v-if="islist"
18
- placeholder='请选择'
19
- :options='childrenOptions'
20
- @change="selectclick"
21
- :value-single="true"
22
- close-on-select></v-select>
23
- </template>
24
- <script>
25
- import * as ldapHelper from './../util/LdapHelper'
26
- import Vue from 'vue'
27
- export default {
28
- title: '资源树',
29
- props: {
30
- source: {
31
- type: String,
32
- require: true,
33
- default:`tool.getFullTree(this.getRights().where(row.getType() == $organization$))`
34
- },
35
- resid: {
36
- },
37
- islist: {
38
- type: Boolean,
39
- default: false
40
- },
41
- //是否有查看上级的权限
42
- Url:{
43
- type: String,
44
- default:''
45
- }
46
- },
47
- data () {
48
- return {
49
- width:'100%',
50
- resobj:{res:Vue.user.orgs, resids:Vue.user.orgid},
51
- userid: Vue.user.id,
52
- resname:[Vue.user.orgs],
53
- orgnames : [Vue.user.orgs],
54
- orgids : [Vue.user.orgid],
55
- orgobj:[],
56
- model: [
57
-
58
- ],
59
- childrenOptions: []
60
- }
61
- },
62
- methods: {
63
- selectRes () {
64
- let newobj={
65
- "res": [this.resname],
66
- "resids": [this.orgids],
67
- }
68
- this.$emit('re-res', newobj)
69
- },
70
- //点击资源的方法
71
- selectclick (row) {
72
- if(this.orgids.includes(row.id)){
73
- this.orgnames=[]
74
- this.orgids=[]
75
- this.removeResChild(row)
76
- this.orgnames.push(row.name)
77
- this.orgids.push(row.id)
78
- this.orgobj.push(row)
79
- }else{
80
- this.orgnames=[]
81
- this.orgids=[]
82
- this.orgobj=[]
83
- this.addResChild(row)
84
- }
85
- console.log(this.orgnames.join(','))
86
- this.resname = this.orgnames.length > 0 ? this.orgnames.join(','):'请选择'
87
- let newobj={
88
- "res": this.orgnames,
89
- "resids": this.orgids,
90
- "orgobj": this.orgobj,
91
- }
92
- this.$emit('re-res', newobj)
93
- },
94
- addResChild(val){
95
- // if(this.orgids.includes(val.id)){
96
- // this.orgnames.splice(this.orgnames.indexOf(val.name),1)
97
- // this.orgids.splice(this.orgids.indexOf(val.id),1)
98
- // }
99
- this.orgnames.push(val.name)
100
- this.orgids.push(val.id)
101
- this.orgobj.push(val)
102
- if(val.children && val.children.length>0){
103
- Object.keys(val.children).forEach((key) => {
104
- this.addResChild(val.children[key])
105
- })
106
- }
107
- },
108
- removeResChild(val){
109
- this.orgnames.splice(this.orgnames.indexOf(val.name),1)
110
- this.orgids.splice(this.orgids.indexOf(val.id),1)
111
- this.orgobj.splice(this.orgids.indexOf(val),1)
112
- if(val.children && val.children.length>0){
113
- Object.keys(val.children).forEach((key) => {
114
- this.removeResChild(val.children[key])
115
- })
116
- }
117
- },
118
- //检查是否显示对勾
119
- isSelect(val) {
120
- if(this.orgids.includes(val)){
121
- return true
122
- }else{
123
- return false
124
- }
125
- },
126
- //树形结构变成list
127
- treetoList(val) {
128
- for (let value of val) {
129
- this.ergodicList(value)
130
- }
131
- },
132
- //找到跟节点
133
- ergodicList (val) {
134
- val.children.length > 0 ? this.treetoList(val.children) : this.childrenOptions.push({label: val.name, value: val})
135
- },
136
- //处理显示默认值
137
- dealResObj (val) {
138
- try{
139
- var arr=val.res.split(".")
140
- //截取最后一个分公司名字
141
- this.resname=arr[arr.length-1].toString()
142
- this.resid = val.resids
143
- }catch (e){
144
- this.resname='请选择组织'
145
- }
146
- },
147
- judgBoundary(){
148
- //判断是否超出边界,超出移动
149
- if(document.documentElement.offsetWidth< this.$els.dropdown.getBoundingClientRect().right){
150
- this.left = document.documentElement.offsetWidth - this.$els.dropdown.getBoundingClientRect().right - 25
151
- }
152
- }
153
- },
154
- events: {
155
-
156
- },
157
- ready () {
158
- console.log('righttree ready')
159
- if(this.$els.dropdown){
160
- console.log('righttree1')
161
- this.width = this.$els.dropdown.clientWidth * 0.7 +'px'
162
- }
163
- console.log('righttree2')
164
- this.dealResObj (this.resobj)
165
- console.log('righttree3')
166
- var data = {
167
- source: this.source,
168
- userid: this.userid
169
- }
170
- console.log('向资源服务发送请求')
171
- this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/search`, data,{
172
- resolveMsg : null ,
173
- rejectMsg : null,
174
- }).then((ret) => {
175
- console.log('向资源服务请求结束')
176
- // 去掉前面的两层节点
177
- ret.data[0].children[0].children.forEach((item) => {
178
- this.model.push(item)
179
- })
180
- // 给资源添加父关系
181
- ldapHelper.procParent(this.model)
182
- if (this.islist) {
183
- this.treetoList(this.model)
184
- }
185
- this.selectRes()
186
- })
187
- },
188
- watch: {
189
- }
190
- }
191
- </script>
192
- <style lang="less">
193
- #res-tree {
194
- .list-group-item {
195
- background-color: #FFF;
196
- color: #000;
197
- padding: 5px 10px;
198
- border:0px;
199
- white-space: nowrap;
200
- }
201
- }
202
- #res-tree .list-group {
203
- width: auto;
204
- min-width: 100%;
205
- }
206
- .hide-text-overflow{
207
- overflow: hidden;
208
- text-overflow: ellipsis
209
- }
210
- .select-style {
211
- border: 0px;
212
- /*border-bottom: 2px solid #C9CCCF;*/
213
- border: 1px solid #93B2D3;
214
- border-radius: 0px;
215
- color: #555;
216
- }
217
- </style>
1
+ <template>
2
+ <dropdown :model='model' class="auto" id="res-tree" v-if="!islist" v-el:dropdown :style="{width:width}">
3
+ <button type="button" class="btn btn-default dropdown-toggle select-style" data-toggle="dropdown">
4
+ <span class='btn-content' :style="{textOverflow:'ellipsis',overflow: 'hidden'}">{{ resname }}</span>
5
+ <span class="caret"></span>
6
+ </button>
7
+ <tree :model='model' :is-click="false" slot="dropdown-menu" class="dropdown-menu auto" role="menu">
8
+ <span partial>
9
+ <span class="glyphicon glyphicon-chevron-down" v-show="row.open&&row.data.children.length>0" style="color:balck;"></span>
10
+ <span class="glyphicon glyphicon-chevron-right" v-show="!row.open&&row.data.children.length>0" style="color:balck;"></span>
11
+ <span class="RightTreeCanSelect" v-if="row.data.hasright" @click.stop="$parent.$parent.$parent.selectclick(row.data)">{{row.data.name}}</span>
12
+ <span class="RightTreeCanNotSelect" v-else>{{row.data.name}}</span>
13
+ <span class="glyphicon glyphicon-ok " v-if="$parent.$parent.$parent.isSelect(row.data.id)" style="color:balck;"></span>
14
+ </span>
15
+ </tree>
16
+ </dropdown>
17
+ <v-select v-if="islist"
18
+ placeholder='请选择'
19
+ :options='childrenOptions'
20
+ @change="selectclick"
21
+ :value-single="true"
22
+ close-on-select></v-select>
23
+ </template>
24
+ <script>
25
+ import * as ldapHelper from './../util/LdapHelper'
26
+ import Vue from 'vue'
27
+ export default {
28
+ title: '资源树',
29
+ props: {
30
+ source: {
31
+ type: String,
32
+ require: true,
33
+ default:`tool.getFullTree(this.getRights().where(row.getType() == $organization$))`
34
+ },
35
+ resid: {
36
+ },
37
+ islist: {
38
+ type: Boolean,
39
+ default: false
40
+ },
41
+ //是否有查看上级的权限
42
+ Url:{
43
+ type: String,
44
+ default:''
45
+ }
46
+ },
47
+ data () {
48
+ return {
49
+ width:'100%',
50
+ resobj:{res:Vue.user.orgs, resids:Vue.user.orgid},
51
+ userid: Vue.user.id,
52
+ resname:[Vue.user.orgs],
53
+ orgnames : [Vue.user.orgs],
54
+ orgids : [Vue.user.orgid],
55
+ orgobj:[],
56
+ model: [
57
+
58
+ ],
59
+ childrenOptions: []
60
+ }
61
+ },
62
+ methods: {
63
+ selectRes () {
64
+ let newobj={
65
+ "res": [this.resname],
66
+ "resids": [this.orgids],
67
+ }
68
+ this.$emit('re-res', newobj)
69
+ },
70
+ //点击资源的方法
71
+ selectclick (row) {
72
+ if(this.orgids.includes(row.id)){
73
+ this.orgnames=[]
74
+ this.orgids=[]
75
+ this.removeResChild(row)
76
+ this.orgnames.push(row.name)
77
+ this.orgids.push(row.id)
78
+ this.orgobj.push(row)
79
+ }else{
80
+ this.orgnames=[]
81
+ this.orgids=[]
82
+ this.orgobj=[]
83
+ this.addResChild(row)
84
+ }
85
+ console.log(this.orgnames.join(','))
86
+ this.resname = this.orgnames.length > 0 ? this.orgnames.join(','):'请选择'
87
+ let newobj={
88
+ "res": this.orgnames,
89
+ "resids": this.orgids,
90
+ "orgobj": this.orgobj,
91
+ }
92
+ this.$emit('re-res', newobj)
93
+ },
94
+ addResChild(val){
95
+ // if(this.orgids.includes(val.id)){
96
+ // this.orgnames.splice(this.orgnames.indexOf(val.name),1)
97
+ // this.orgids.splice(this.orgids.indexOf(val.id),1)
98
+ // }
99
+ this.orgnames.push(val.name)
100
+ this.orgids.push(val.id)
101
+ this.orgobj.push(val)
102
+ if(val.children && val.children.length>0){
103
+ Object.keys(val.children).forEach((key) => {
104
+ this.addResChild(val.children[key])
105
+ })
106
+ }
107
+ },
108
+ removeResChild(val){
109
+ this.orgnames.splice(this.orgnames.indexOf(val.name),1)
110
+ this.orgids.splice(this.orgids.indexOf(val.id),1)
111
+ this.orgobj.splice(this.orgids.indexOf(val),1)
112
+ if(val.children && val.children.length>0){
113
+ Object.keys(val.children).forEach((key) => {
114
+ this.removeResChild(val.children[key])
115
+ })
116
+ }
117
+ },
118
+ //检查是否显示对勾
119
+ isSelect(val) {
120
+ if(this.orgids.includes(val)){
121
+ return true
122
+ }else{
123
+ return false
124
+ }
125
+ },
126
+ //树形结构变成list
127
+ treetoList(val) {
128
+ for (let value of val) {
129
+ this.ergodicList(value)
130
+ }
131
+ },
132
+ //找到跟节点
133
+ ergodicList (val) {
134
+ val.children.length > 0 ? this.treetoList(val.children) : this.childrenOptions.push({label: val.name, value: val})
135
+ },
136
+ //处理显示默认值
137
+ dealResObj (val) {
138
+ try{
139
+ var arr=val.res.split(".")
140
+ //截取最后一个分公司名字
141
+ this.resname=arr[arr.length-1].toString()
142
+ this.resid = val.resids
143
+ }catch (e){
144
+ this.resname='请选择组织'
145
+ }
146
+ },
147
+ judgBoundary(){
148
+ //判断是否超出边界,超出移动
149
+ if(document.documentElement.offsetWidth< this.$els.dropdown.getBoundingClientRect().right){
150
+ this.left = document.documentElement.offsetWidth - this.$els.dropdown.getBoundingClientRect().right - 25
151
+ }
152
+ }
153
+ },
154
+ events: {
155
+
156
+ },
157
+ ready () {
158
+ console.log('righttree ready')
159
+ if(this.$els.dropdown){
160
+ console.log('righttree1')
161
+ this.width = this.$els.dropdown.clientWidth * 0.7 +'px'
162
+ }
163
+ console.log('righttree2')
164
+ this.dealResObj (this.resobj)
165
+ console.log('righttree3')
166
+ var data = {
167
+ source: this.source,
168
+ userid: this.userid
169
+ }
170
+ console.log('向资源服务发送请求')
171
+ this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/search`, data).then((ret) => {
172
+ console.log('向资源服务请求结束')
173
+ // 去掉前面的两层节点
174
+ ret.data[0].children[0].children.forEach((item) => {
175
+ this.model.push(item)
176
+ })
177
+ // 给资源添加父关系
178
+ ldapHelper.procParent(this.model)
179
+ if (this.islist) {
180
+ this.treetoList(this.model)
181
+ }
182
+ this.selectRes()
183
+ })
184
+ },
185
+ watch: {
186
+ }
187
+ }
188
+ </script>
189
+ <style lang="less">
190
+ #res-tree {
191
+ .list-group-item {
192
+ background-color: #FFF;
193
+ color: #000;
194
+ padding: 5px 10px;
195
+ border:0px;
196
+ white-space: nowrap;
197
+ }
198
+ }
199
+ #res-tree .list-group {
200
+ width: auto;
201
+ min-width: 100%;
202
+ }
203
+ .hide-text-overflow{
204
+ overflow: hidden;
205
+ text-overflow: ellipsis
206
+ }
207
+ .select-style {
208
+ border: 0px;
209
+ /*border-bottom: 2px solid #C9CCCF;*/
210
+ border: 1px solid #93B2D3;
211
+ border-radius: 0px;
212
+ color: #555;
213
+ }
214
+ </style>
@@ -4,106 +4,92 @@
4
4
  <div class="app-header-back" @click='back()' v-show="needBack">
5
5
  <img src="../assets/返回.png" style="height: 20px;margin-right:-10px"/>
6
6
  </div>
7
- <div class="app-header-back" style="height: auto" v-show="!needBack">
7
+ <div class="app-header-back" v-show="!needBack">
8
8
  <img src="../assets/denglu.png" style="height: 20px;margin-right:-10px;margin-top:-10px"/>
9
9
  <span style="margin-left:5px;color: #ffffff;font-size: 1.0em;">{{loginname}}</span>
10
10
  </div>
11
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>
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"> 报修工单
17
22
  </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 v-if="f_voiceSwitch" src="../assets/jingyin3.png" style="height: 20px; width: 20px;"/>
39
- <img v-if="!f_voiceSwitch" src="../assets/yinliang.png" style="height: 20px; width: 20px;"/>
40
- </div>
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>
41
37
  </div>
42
38
  </template>
43
39
 
44
40
  <script>
45
41
  import Vue from 'vue'
46
- export default {
47
- title: '通用头部组件',
48
- data () {
49
- return {
50
- loginname: Vue.user.name,
51
- f_voiceSwitch:true
52
- }
42
+ export default {
43
+ title: '通用头部组件',
44
+ data () {
45
+ return {
46
+ loginname: Vue.user.name
47
+ }
48
+ },
49
+ props: {
50
+ user:{
51
+ type:Object
52
+ },
53
+ userinfo:{
54
+ type:Object
53
55
  },
54
- props: {
55
- user:{
56
- type:Object
57
- },
58
- userinfo:{
59
- type:Object
60
- },
61
- // 是否显示列表控件
62
- showList: {
63
- type: Boolean,
64
- default: false
65
- },
66
- title: {
67
- type: String,
68
- default: '燃气应用'
69
- },
70
- needBack: {
71
- type: Boolean,
72
- default: true
73
- }
56
+ // 是否显示列表控件
57
+ showList: {
58
+ type: Boolean,
59
+ default: false
74
60
  },
75
- methods: {
76
- // 新增工单
77
- newadd(){
78
- // 事件
79
- },
80
- // 跳转页面
81
- gotopage(param,props) {
82
- this.$goto(param,props)
83
- },
84
- back () {
85
- // console.log('发送返回事件')
86
- this.$emit('back')
87
- },
88
- // 关闭新消息响铃(静音)
61
+ title: {
62
+ type: String,
63
+ default: '燃气应用'
64
+ },
65
+ needBack: {
66
+ type: Boolean,
67
+ default: true
68
+ }
69
+ },
70
+ methods: {
71
+ // 新增工单
72
+ newadd(){
73
+ // 事件
74
+ },
75
+ // 跳转页面
76
+ gotopage(param,props) {
77
+ this.$goto(param,props)
78
+ },
79
+ back () {
80
+ // console.log('发送返回事件')
81
+ this.$emit('back')
82
+ },
83
+ // 关闭新消息响铃(静音)
89
84
  mute () {
90
85
  if(navigator.userAgent.match('iPad') || navigator.userAgent.match('iPhone')){
91
- window.prompt("mute","")
86
+ window.prompt("mute","")
92
87
  }else{
93
88
  HostApp.mute()
94
- switch (HostApp.getPreference('f_voiceSwitch').data){
95
- case 'true' : HostApp.setPreference('f_voiceSwitch','false')
96
- this.f_voiceSwitch= true
97
- break
98
- case 'false' : HostApp.setPreference('f_voiceSwitch','true')
99
- this.f_voiceSwitch= false
100
- break
101
- default : HostApp.setPreference('f_voiceSwitch','true')
102
- }
103
89
  }
104
- },
105
- }
90
+ },
106
91
  }
92
+ }
107
93
  </script>
108
94
  <style scoped>
109
95
  .app-header {