system-phone 3.0.49-4 → 3.0.49-40

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 (40) hide show
  1. package/package.json +1 -1
  2. package/src/assets/images//346/211/223/345/215/241.png +0 -0
  3. package/src/assets//344/277/235/351/231/251/347/231/273/350/256/260.png +0 -0
  4. package/src/assets//345/210/240/351/231/244/347/205/247/347/211/207.png +0 -0
  5. package/src/assets//345/215/217/345/212/251/345/256/211/346/243/200.png +0 -0
  6. package/src/assets//345/215/241/350/241/250/346/212/204/350/241/250/345/276/205/345/212/236.png +0 -0
  7. package/src/assets//345/233/236/350/256/277.png +0 -0
  8. package/src/assets//345/234/260/345/235/200/345/217/230/346/233/264.png +0 -0
  9. package/src/assets//345/256/211/346/243/200/347/256/241/347/220/206/346/234/252/351/200/211/344/270/255.png +0 -0
  10. package/src/assets//345/256/211/346/243/200/347/256/241/347/220/206/351/200/211/344/270/255.png +0 -0
  11. package/src/assets//346/212/204/350/241/250/351/207/215/344/274/240.png +0 -0
  12. package/src/assets//346/226/275/345/260/201.png +0 -0
  13. package/src/assets//346/226/275/345/260/201/347/256/241/347/220/206.png +0 -0
  14. package/src/assets//346/260/221/347/224/250/345/256/211/346/243/200.png +0 -0
  15. package/src/assets//347/205/247/347/211/207/345/210/240/351/231/244.png +0 -0
  16. package/src/assets//347/224/250/346/210/267/350/256/260/345/275/225.png +0 -0
  17. package/src/assets//347/273/264/344/277/256/345/234/250/347/272/277/346/237/245/350/257/242.png +0 -0
  18. package/src/assets//347/273/264/344/277/256/347/231/273/350/256/260.png +0 -0
  19. package/src/assets//351/200/232/346/260/224/346/211/223/345/216/213/347/225/231/345/272/225.png +0 -0
  20. package/src/assets//351/230/200/346/216/247/347/256/241/347/220/206.png +0 -0
  21. package/src/assets//351/235/236/346/260/221/347/224/250/345/256/211/346/243/200.png +0 -0
  22. package/src/assets//351/246/226/351/241/265/345/244/247/345/233/276.png +0 -0
  23. package/src/components/AttendManage.vue +534 -415
  24. package/src/components/LoginApp.vue +13 -7
  25. package/src/components/ModifyPassWord.vue +2 -2
  26. package/src/components/OnlineManage.vue +256 -255
  27. package/src/components/PhoneImageInfo.vue +102 -0
  28. package/src/components/PhoneSafeInfo.vue +101 -101
  29. package/src/components/RightTree.vue +217 -217
  30. package/src/components/SystemSetUp.vue +332 -326
  31. package/src/components/ToolsPage.vue +182 -180
  32. package/src/filiale/yulinyuchuan/AlreadyService.vue +194 -0
  33. package/src/filiale/yulinyuchuan/AttendManage.vue +537 -0
  34. package/src/filiale/yulinyuchuan/LoginApp.vue +736 -0
  35. package/src/filiale/yulinyuchuan/OnlineManage.vue +256 -0
  36. package/src/filiale/yulinyuchuan/SystemSetUp.vue +332 -0
  37. package/src/filiale/yulinyuchuan/UploadManage.vue +195 -0
  38. package/src/filiale/yulinyuchuan/systemphonegrid.js +9 -0
  39. package/src/stores/AppData.js +18 -16
  40. package/src/systemphonegrid.js +11 -40
@@ -1,180 +1,182 @@
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="height: auto" 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 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>
41
- </div>
42
- </template>
43
-
44
- <script>
45
- import Vue from 'vue'
46
- export default {
47
- title: '通用头部组件',
48
- data () {
49
- return {
50
- loginname: Vue.user.name,
51
- f_voiceSwitch:true
52
- }
53
- },
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
- }
74
- },
75
- ready(){
76
- //首次进入默认开启播放
77
- HostApp.setPreference('f_voiceSwitch','true')
78
- },
79
- methods: {
80
- // 新增工单
81
- newadd(){
82
- // 事件
83
- },
84
- // 跳转页面
85
- gotopage(param,props) {
86
- this.$goto(param,props)
87
- },
88
- back () {
89
- // console.log('发送返回事件')
90
- this.$emit('back')
91
- },
92
- // 关闭新消息响铃(静音)
93
- mute () {
94
- if(navigator.userAgent.match('iPad') || navigator.userAgent.match('iPhone')){
95
- window.prompt("mute","")
96
- }else{
97
- HostApp.mute()
98
- switch (HostApp.getPreference('f_voiceSwitch').data){
99
- case 'true' : HostApp.setPreference('f_voiceSwitch','false')
100
- this.f_voiceSwitch= false
101
- break
102
- case 'false' : HostApp.setPreference('f_voiceSwitch','true')
103
- this.f_voiceSwitch= true
104
- break
105
- default : HostApp.setPreference('f_voiceSwitch','true')
106
- }
107
- }
108
- },
109
- }
110
- }
111
- </script>
112
- <style scoped>
113
- .app-header {
114
- position: fixed;
115
- top:0px;
116
- width: 100%;
117
- margin: 0px;
118
- background: #499edf;
119
- color: #FFF;
120
- padding: 10px;
121
- text-align: center;
122
- font-size: 15px;
123
- height: 7%;
124
-
125
- /*margin-bottom: 20px;*/
126
- }
127
- .app-header-back {
128
- position: absolute;
129
- top: 12px;
130
- color: #D8DCE5;
131
- }
132
- .app-header-list {
133
- height: 40px;
134
- float: right;
135
- color: #D8DCE5;
136
- }
137
- .app-header-guanbishengyin {
138
- margin-right: 10px;
139
- float: right;
140
- color: #D8DCE5;
141
- }
142
- .app-header-newaddserver {
143
- margin-right: 10px;
144
- float: right;
145
- color: #D8DCE5;
146
- }
147
- .app-header-volume {
148
- position: absolute;
149
- top: 0;
150
- display: flex;
151
- flex-direction: column;
152
- justify-content: center;
153
- right: 20px;
154
- color: #D8DCE5;
155
- font-size: 1.5em;
156
- }
157
- .dropdown-menu {
158
- background-color: #212a35;
159
- }
160
- .dropdown-menu a{
161
- color: white;
162
- }
163
- .dropdown-menu a:hover{
164
- color: white;
165
- background-color: #6b85a3;
166
- }
167
- .dropdown-menu img{
168
- width: 22%;
169
- margin-top: -5px;
170
- }
171
- .dropdown-menu hr{
172
- margin-top: 0px;
173
- margin-bottom: 0px;
174
- margin-right:0px;
175
- width: 80%;
176
- }
177
- .glyphicon-menu-left{
178
- color:#fff;
179
- }
180
- </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="height: auto" 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 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>
41
+ </div>
42
+ </template>
43
+
44
+ <script>
45
+ import Vue from 'vue'
46
+ export default {
47
+ title: '通用头部组件',
48
+ data () {
49
+ return {
50
+ loginname: Vue.user.name,
51
+ f_voiceSwitch:true
52
+ }
53
+ },
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
+ }
74
+ },
75
+ ready(){
76
+ //首次进入默认开启播放
77
+ HostApp.setPreference('f_voiceSwitch','true')
78
+ //是否开启无限制响铃(单值参数配 -1 代表开启无限制响铃)
79
+ HostApp.setPreference('loop',this.$appdata.getSingleValue('loop') || '3')
80
+ },
81
+ methods: {
82
+ // 新增工单
83
+ newadd(){
84
+ // 事件
85
+ },
86
+ // 跳转页面
87
+ gotopage(param,props) {
88
+ this.$goto(param,props)
89
+ },
90
+ back () {
91
+ // console.log('发送返回事件')
92
+ this.$emit('back')
93
+ },
94
+ // 关闭新消息响铃(静音)
95
+ mute () {
96
+ if(navigator.userAgent.match('iPad') || navigator.userAgent.match('iPhone')){
97
+ window.prompt("mute","")
98
+ }else{
99
+ HostApp.mute()
100
+ switch (HostApp.getPreference('f_voiceSwitch').data){
101
+ case 'true' : HostApp.setPreference('f_voiceSwitch','false')
102
+ this.f_voiceSwitch= false
103
+ break
104
+ case 'false' : HostApp.setPreference('f_voiceSwitch','true')
105
+ this.f_voiceSwitch= true
106
+ break
107
+ default : HostApp.setPreference('f_voiceSwitch','true')
108
+ }
109
+ }
110
+ },
111
+ }
112
+ }
113
+ </script>
114
+ <style scoped>
115
+ .app-header {
116
+ position: fixed;
117
+ top:0px;
118
+ width: 100%;
119
+ margin: 0px;
120
+ background: #499edf;
121
+ color: #FFF;
122
+ padding: 10px;
123
+ text-align: center;
124
+ font-size: 15px;
125
+ height: 7%;
126
+
127
+ /*margin-bottom: 20px;*/
128
+ }
129
+ .app-header-back {
130
+ position: absolute;
131
+ top: 12px;
132
+ color: #D8DCE5;
133
+ }
134
+ .app-header-list {
135
+ height: 40px;
136
+ float: right;
137
+ color: #D8DCE5;
138
+ }
139
+ .app-header-guanbishengyin {
140
+ margin-right: 10px;
141
+ float: right;
142
+ color: #D8DCE5;
143
+ }
144
+ .app-header-newaddserver {
145
+ margin-right: 10px;
146
+ float: right;
147
+ color: #D8DCE5;
148
+ }
149
+ .app-header-volume {
150
+ position: absolute;
151
+ top: 0;
152
+ display: flex;
153
+ flex-direction: column;
154
+ justify-content: center;
155
+ right: 20px;
156
+ color: #D8DCE5;
157
+ font-size: 1.5em;
158
+ }
159
+ .dropdown-menu {
160
+ background-color: #212a35;
161
+ }
162
+ .dropdown-menu a{
163
+ color: white;
164
+ }
165
+ .dropdown-menu a:hover{
166
+ color: white;
167
+ background-color: #6b85a3;
168
+ }
169
+ .dropdown-menu img{
170
+ width: 22%;
171
+ margin-top: -5px;
172
+ }
173
+ .dropdown-menu hr{
174
+ margin-top: 0px;
175
+ margin-bottom: 0px;
176
+ margin-right:0px;
177
+ width: 80%;
178
+ }
179
+ .glyphicon-menu-left{
180
+ color:#fff;
181
+ }
182
+ </style>
@@ -0,0 +1,194 @@
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 class="pagesfoot">{{tab.name}}&nbsp;{{tab.icon}}</p>-->
11
+ <p></p>
12
+ </div>
13
+ </div>
14
+ <!--<div class="row" style="overflow:auto;">-->
15
+ <!--<repair-first v-show="componentName == 'repair-first'" worktype="报修单" :sourcet="sourcet" tabname="维修待办" v-on:changesum="changesum"></repair-first>-->
16
+ <!--<zhihuan-first v-show="componentName == 'zhihuan-first'" worktype="置换通气单" :sourcet="sourcet" tabname="置换待办" v-on:changesum="changesum"></zhihuan-first>-->
17
+ <!--</div>-->
18
+ </div>
19
+ </div>
20
+ </template>
21
+
22
+ <script scoped>
23
+ import Vue from 'vue'
24
+ export default {
25
+ title: '已办工作导航',
26
+ data () {
27
+ return {
28
+ titleName:'已办工作',
29
+ isMenu:true,
30
+ tabs: this.getTabs(),
31
+ text: '导航组件this',
32
+ beforeName:'已办工作',
33
+ sourcet:'竖屏'
34
+ }
35
+ },
36
+ ready () {
37
+ // this.getModelSum()
38
+ },
39
+
40
+ methods: {
41
+ // 查询本地所有待办
42
+ getModelSum(){
43
+ for(var i = 0;i<this.tabs.length;i++){
44
+ if(this.tabs[i].link == 'completed-zhihuan' ){
45
+ this.getZhihuan()
46
+ }
47
+ if(this.tabs[i].link == 'completed-repair' ){
48
+ this.getRepair()
49
+ }
50
+ if(this.tabs[i].link == 'area-plan' ){
51
+ this.getSafeCheck()
52
+ }
53
+ }
54
+
55
+ },
56
+ getRepair(){
57
+ var _this = this;
58
+ this.timeoutRepair = window.setInterval(function() {
59
+ let result = _this.$androidUtil.path({'alias':`getCompletedInfo`, 'data': {f_workorder_type: '报修单',condition:'1 = 1'}})
60
+ if (result.code === 200) {
61
+ console.log('查询得到的代办2' + JSON.stringify(result))
62
+ var crv = {
63
+ title: '维修已办',
64
+ sum: result.data.length
65
+ }
66
+ _this.changesum(crv)
67
+ }
68
+ }, 6000)
69
+ },
70
+ getSafeCheck(){
71
+ var _this = this;
72
+ this.timeoutRepair = window.setInterval(function() {
73
+ let result = _this.$androidUtil.path({'alias':`getSafecheckCompletedInfo`, 'data': {condition:'1 = 1'}})
74
+ if (result.code === 200) {
75
+ console.log('查询得到的安检已办' + JSON.stringify(result))
76
+ var crv = {
77
+ title: '安检已办',
78
+ sum: result.data.length
79
+ }
80
+ _this.changesum(crv)
81
+ }
82
+ }, 6000)
83
+ },
84
+ getZhihuan(){
85
+ var _this = this;
86
+ this.timeoutZhihuan = window.setInterval(function() {
87
+ let result = _this.$androidUtil.path({'alias':`getCompletedInfo`, 'data': {f_workorder_type: '置换通气单',condition:'1 = 1'}})
88
+ if (result.code === 200) {
89
+ console.log('查询得到的代办2' + JSON.stringify(result))
90
+ var crv = {
91
+ title: '置换已办',
92
+ sum: result.data.length
93
+ }
94
+ _this.changesum(crv)
95
+ }
96
+ }, 6000)
97
+ },
98
+ changesum(titdata){
99
+ for(var i = 0;i<this.tabs.length;i++){
100
+ if(this.tabs[i].name == titdata.title){
101
+ this.tabs[i].icon = titdata.sum + '单'
102
+ console.log(JSON.stringify(this.tabs[i].icon))
103
+ return
104
+ }
105
+ }
106
+ },
107
+ getTabs(){
108
+ for(let funs in Vue.functions){
109
+ if(Vue.functions[funs].link == 'already-service'){
110
+ return Vue.functions[funs].children
111
+ }
112
+ }
113
+ },
114
+ imgback(val){
115
+ return require('../../assets/'+val+'.png')
116
+ },
117
+ // 返回主界面
118
+ back(){
119
+ this.titleName = '主界面'
120
+ this.isMenu = true
121
+
122
+ },
123
+ gotopage(param,title) {
124
+ console.log('进入子组件')
125
+ var prpdata = {
126
+ _this:this,
127
+ title:title,
128
+ safe:false
129
+ }
130
+ this.$dispatch('gotoson',prpdata)
131
+ this.$goto(param,{sourcet:'竖屏',tabname:title})
132
+ },
133
+ mute () {
134
+ HostApp.mute()
135
+ }
136
+ },
137
+ }
138
+ </script>
139
+ <style lang="less">
140
+ .tab-befor-img {
141
+ content: '';
142
+ background-size: 30px;
143
+ display: inline-block;
144
+ margin-right: 8px;
145
+ height: 30px;
146
+ width: 30px;
147
+ vertical-align: -35%;
148
+ }
149
+ .pageskuang{
150
+ vertical-align:middle;
151
+ display:table-cell;
152
+ width: 32%;
153
+ top:-50%;
154
+ margin-top: 1%;
155
+ margin-left: 1%;
156
+ border:1px solid #e3e3e3;
157
+ text-align: center;
158
+ background-color: #ffffff;
159
+ }
160
+ .pgesfoot{
161
+ font-size: 14px;
162
+ color: #666666;
163
+ /* font-family: "Pingfhs";*/
164
+ }
165
+ .imgs{
166
+ width: 35px;
167
+ margin-top: 15px;
168
+ height: 39px;
169
+ }
170
+ .pages-bgcolor{
171
+ text-align: center;
172
+ background-color: #f0f0ef;
173
+ }
174
+ img[src=""],img:not([src]){
175
+ opacity: 0;
176
+ border:none;
177
+ visibility: hidden;
178
+ max-width: none;
179
+ }
180
+
181
+ .manbiankuang{
182
+ width: 44%;
183
+ margin-top: 15px;
184
+ margin-left: 4%;
185
+ border:1px solid #e3e3e3;
186
+ border-radius:10px 10px 10px 10px;
187
+ text-align: center;
188
+ background-color: #ffffff;
189
+ }
190
+
191
+ .nav-bgcolor{
192
+ background-color: #ffffff;
193
+ }
194
+ </style>