readmeter-changan 1.0.33 → 1.0.34

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 (41) hide show
  1. package/.idea/ReadMeterClient.iml +9 -0
  2. package/.idea/workspace.xml +62 -442
  3. package/.npmignore +7 -0
  4. package/build/dev-server.js +132 -132
  5. package/build/webpack.base.conf.js +75 -75
  6. package/hs_err_pid13284.log +207 -0
  7. package/package.json +1 -1
  8. package/package.json.bak +99 -99
  9. package/src/AndroidPlugin.js +28 -28
  10. package/src/App.vue +74 -74
  11. package/src/components/readingmeter/CheckInfo.vue +618 -618
  12. package/src/components/readingmeter/FinishHandInfo.vue +75 -75
  13. package/src/components/readingmeter/FinishHandInfocopy.vue +99 -99
  14. package/src/components/readingmeter/HandInfo.vue +87 -87
  15. package/src/components/readingmeter/HandMessage.vue +40 -40
  16. package/src/components/readingmeter/HistoryHandInfo.vue +114 -114
  17. package/src/components/readingmeter/MeterInfo.vue +183 -183
  18. package/src/components/readingmeter/PhoneHand.vue +93 -93
  19. package/src/components/readingmeter/PhoneHandHome.vue +2 -0
  20. package/src/components/readingmeter/PhoneHandplanInfo.vue +643 -643
  21. package/src/components/readingmeter/PictureArea.vue +156 -156
  22. package/src/components/readingmeter/PlanDown.vue +232 -232
  23. package/src/components/readingmeter/PlanUpdate.vue +186 -186
  24. package/src/components/readingmeter/ReadMeterCenter.vue +325 -325
  25. package/src/components/readingmeter/ReadMeterInfo.vue +349 -349
  26. package/src/components/readingmeter/ReadMeterInfoChangan.vue +1 -1
  27. package/src/components/readingmeter/SellHistory.vue +36 -36
  28. package/src/components/readingmeter/SellInfo.vue +88 -88
  29. package/src/components/readingmeter/UserInfo.vue +1 -0
  30. package/src/components/server/AppHeader.vue +65 -65
  31. package/src/components/server/ReadMeterHome.vue +192 -192
  32. package/src/components/server/ReadMeterLogin.vue +161 -161
  33. package/src/components/server/ReadMeterNavBottom.vue +119 -119
  34. package/src/components/server/ReadMeterRoute.vue +79 -79
  35. package/src/components/server/ReadMeterTop.vue +61 -61
  36. package/src/components/server/ReadMeterTopcopy.vue +53 -53
  37. package/src/expandcss.less +668 -668
  38. package/src/main.js +23 -23
  39. package/src/readmeter-android.js +34 -34
  40. package/src/readmeter.js +54 -54
  41. package/yarn.lock +7818 -0
@@ -1,232 +1,232 @@
1
- <template>
2
- <div class="auto">
3
- <div class="row app-row">
4
- <div class="col-xs-4 ">
5
- <img src="../../assets/抄表员.png" style="margin-bottom: 5px" alt="">
6
- <span class="text-left font">抄表员</span>
7
- </div>
8
- <div class="col-xs-8 input-font" >
9
- {{userInfo.name}}
10
- </div>
11
- </div>
12
- <div class="row app-row">
13
- <div class="col-xs-4" style="margin-top: 8px">
14
- <img src="../../assets/开始时间.png" style="margin-bottom: 5px;width: 32px" alt="">
15
- <span class="text-left font">始时间</span>
16
- </div>
17
- <div class="col-xs-8">
18
- <datepicker
19
- :value.sync="model.startDate"
20
- :format="'yyyy-MM-dd'"
21
- v-model="model.startDate"
22
- :show-reset-button="reset" placeholder="请输入起时间" style="margin-bottom: 8px">
23
- </datepicker>
24
- <!-- <input type="text" class="search_input" v-model="model.startDate" placeholder="请输入起下发时间"/> -->
25
- </div>
26
- </div>
27
- <div class="row app-row">
28
- <div class="col-xs-4" style="margin-top: 8px">
29
- <img src="../../assets/结束时间.png" style="margin-bottom: 5px;width: 32px" alt="">
30
- <span class="text-left font">止时间</span>
31
- </div>
32
- <div class="col-xs-8">
33
- <datepicker
34
- :value.sync="model.endDate"
35
- :format="'yyyy-MM-dd'"
36
- v-model="model.endDate"
37
- :show-reset-button="reset" placeholder="请输入止时间" style="margin-bottom: 8px">
38
- </datepicker>
39
- <!-- <input type="text" class="search_input" v-model="model.endDate" placeholder="请输入止下发时间"/> -->
40
- </div>
41
- </div>
42
- <div class="row app-row">
43
- <div class="col-xs-4" style="margin-bottom: 6px">
44
- <img src="../../assets/地址.png" style="margin-bottom: 5px" alt="">
45
- <span class="text-left font">地址</span>
46
- </div>
47
- <div class="col-xs-8">
48
- <input type="text" class="search_input input-font" v-model="model.f_address" placeholder="请输入地址"/>
49
- </div>
50
- </div>
51
- <div class="row app-row">
52
- <div class="col-xs-4" style="margin-bottom: 6px">
53
- <img src="../../assets/chaobiao.png" style="margin-bottom: 5px" alt="">
54
- <span class="text-left font">抄表单条数</span>
55
- </div>
56
- <div class="col-xs-8 input-font" style="margin-top: 1px">
57
- {{handcount}}
58
- </div>
59
- </div>
60
- <div class="row text-center" style="margin-top: 20px;">
61
- <button type="button" class="btn btn-lg btn-font btn-color" style="width: 45%;" @click="downHand()">抄表单下载</button>
62
- <!--<button type="button" class="btn btn-lg btn-font btn-color" style="width: 45%;" @click="database()">数据库导出</button>-->
63
- </div>
64
- <div class="auto" style="padding-top: 10px;">
65
- <p class="text-warning">提示:由于抄表单可能数量过多,在点击抄表单下载按钮后请勿进行任何操作,下载完成后系统会自动提醒你!</p>
66
- </div>
67
- <!-- <div class="auto" style="padding-top: 20px;" v-if='show'>
68
- <p class="text-warning" style="padding: 0 10px">正在下载抄表单...</p>
69
- </div> -->
70
- <!-- <hand-info v-if="show" :data="handinfo"></hand-info> -->
71
- <!-- <div class="auto" v-if="!show">
72
- <p class="text-warning" style="padding: 0 10px">
73
- 暂无可操作的抄表信息
74
- </p>
75
- </div> -->
76
- <work-busy :isbusy="isbusy"></work-busy>
77
- </div>
78
-
79
-
80
-
81
- </template>
82
- <script>
83
- import AppData from '../../stores/AppData'
84
- import * as Util from '../Util'
85
- import co from 'co'
86
- import Vue from 'vue'
87
- const downloadHand = function * (self, condition) {
88
- // let result = yield self.$androidUtil.bzLogic('downHandMeterInfo', {startDate: `${self.model.startDate}`, endDate: `${self.model.endDate}`, condition: condition, f_inputtor: `${self.userInfo.name}`})
89
- HostApp.__this__ = self
90
- self.logicWithHint('downHandMeterInfo', {startDate: `${self.model.startDate}`, endDate: `${self.model.endDate}`, condition: condition, f_inputtor: `${self.userInfo.name}`}, 'javascript:HostApp.__this__.downplanCallBack()', 1)
91
-
92
- }
93
- export default {
94
- title: '计划管理',
95
- data () {
96
- return {
97
- model: {
98
- startDate: '',
99
- endDate: '',
100
- f_address: ''
101
- },
102
- isbusy: false,
103
- userInfo: {},
104
- handMeterInfo: [],
105
- handinfo: [],
106
- handcount: 0
107
- }
108
- },
109
- ready () {
110
- // 获取抄表源信息
111
- // console.log('当前用户信息'+JSON.stringify(Vue.user))
112
- this.userInfo = Object.assign({}, this.userInfo, Vue.user)
113
- this.model.startDate = `${Util.toStandardYearMonth()}-01`
114
- this.model.endDate = Util.toStandardDateString()
115
- this.isbusy = false
116
- },
117
-
118
- methods: {
119
- logicWithHint(logic, data, callback, backresult) {
120
- HostApp.logicWithHint({
121
- // logic别名,key必须为logic
122
- 'logic': logic,
123
- // 回调执行方法名,key必须为callback
124
- 'callback': callback,
125
- // logic执行需要的业务参数
126
- 'data': data,
127
- // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
128
- // 执行回调方法传入key为backresult
129
- // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
130
- 'backresult': backresult
131
- })
132
- },
133
- downplanCallBack(jo){
134
- if (jo.state == 'ok') {
135
- let result = JSON.parse(jo.result)
136
- if (result.data.length > 0) {
137
- if (result.state === 0) {
138
- // self.isbusy = false
139
- // 所有抄表单信息
140
- this.handcount = result.data.length
141
- this.handinfo = [...result.data]
142
- this.$showMessage(`下载抄表单信息成功,本次下载${result.data.length}条抄表单,您可前往抄表管理进行抄表!`)
143
- } else {
144
- this.$showMessage('无可下载的抄表单信息!')
145
- }
146
- } else {
147
- this.$showMessage('下载失败!')
148
- }
149
- }
150
-
151
- },
152
- database () {
153
- HostApp.backupDatabase()
154
- },
155
- downHand () {
156
- this.$showMessage('正在下载,请稍后!')
157
- console.log('1'+ this.isbusy)
158
- if (this.model.startDate === '') {
159
- this.model.startDate = `${Util.toStandardYearMonth()}-01`
160
- }
161
- if (this.model.endDate === '') {
162
- this.model.endDate = Util.toStandardDateString()
163
- }
164
- let condition = ''
165
- if (this.model.f_address === '') {
166
- condition = '1 = 1'
167
- } else {
168
- condition = `1 = 1 and f_address like '${this.model.f_address}%'`
169
- }
170
-
171
- // `${this.userInfo.name}`
172
- // const message = new Promise(function () {
173
- // this.$showMessage('正在进行抄表单下载,请确认!', ['confirm', 'cancel']).then((res) => {
174
- // if (res === 'confirm') {
175
- // resolve(true)
176
- // }
177
- // })
178
- // })
179
- console.log('2'+ this.isbusy)
180
- const fun = downloadHand(this, condition)
181
- co(fun)
182
- // let result = this.$androidUtil.bzLogic('downHandMeterInfo', {startDate: `${this.model.startDate}`, endDate: `${this.model.endDate}`, condition: condition, f_inputtor: `${this.userInfo.name}`})
183
- // console.log('点击3'+ this.flag)
184
- // //安卓端
185
- // if (result.state === 0) {
186
- // // 所有抄表单信息
187
- // if (result.data.length > 0) {
188
- // this.handcount = result.data.length
189
- // this.handinfo = [...result.data]
190
- // this.$showMessage(`下载抄表单信息成功,本次下载${result.data.length}条抄表单,您可前往抄表管理进行抄表!`)
191
- // this.isbusy= false
192
- // } else {
193
- // this.$showMessage('无可下载的抄表单信息!')
194
- // this.isbusy= false
195
- // }
196
- // } else {
197
- // this.$showMessage('下载失败!')
198
- // // this.isbusy= false
199
- // }
200
- // }
201
- }
202
- }
203
- }
204
- </script>
205
- <style scoped>
206
- .search_input {
207
- border: 0;
208
- outline: none;
209
- }
210
- .app-row {
211
- background-color: white;
212
- padding: 10px 10px 3px 10px;
213
- border-bottom: 1px solid rgba(235, 235, 235, 0.5);
214
- }
215
- .font{
216
- font: 15px PingFang-SC-Medium;
217
- color: #666666;
218
- }
219
- .btn-font{
220
- font:600 16px PingFang-SC-Bold;
221
- color: #499EDF;
222
- }
223
- .btn-color{
224
- background-color: #FFFFFF;
225
- border-radius: 10px ;
226
- border: 1px solid #499EDF;
227
- }
228
- .input-font{
229
- font: 15px PingFang-SC-Medium;
230
- color: #333333;
231
- }
232
- </style>
1
+ <template>
2
+ <div class="auto">
3
+ <div class="row app-row">
4
+ <div class="col-xs-4 ">
5
+ <img src="../../assets/抄表员.png" style="margin-bottom: 5px" alt="">
6
+ <span class="text-left font">抄表员</span>
7
+ </div>
8
+ <div class="col-xs-8 input-font" >
9
+ {{userInfo.name}}
10
+ </div>
11
+ </div>
12
+ <div class="row app-row">
13
+ <div class="col-xs-4" style="margin-top: 8px">
14
+ <img src="../../assets/开始时间.png" style="margin-bottom: 5px;width: 32px" alt="">
15
+ <span class="text-left font">始时间</span>
16
+ </div>
17
+ <div class="col-xs-8">
18
+ <datepicker
19
+ :value.sync="model.startDate"
20
+ :format="'yyyy-MM-dd'"
21
+ v-model="model.startDate"
22
+ :show-reset-button="reset" placeholder="请输入起时间" style="margin-bottom: 8px">
23
+ </datepicker>
24
+ <!-- <input type="text" class="search_input" v-model="model.startDate" placeholder="请输入起下发时间"/> -->
25
+ </div>
26
+ </div>
27
+ <div class="row app-row">
28
+ <div class="col-xs-4" style="margin-top: 8px">
29
+ <img src="../../assets/结束时间.png" style="margin-bottom: 5px;width: 32px" alt="">
30
+ <span class="text-left font">止时间</span>
31
+ </div>
32
+ <div class="col-xs-8">
33
+ <datepicker
34
+ :value.sync="model.endDate"
35
+ :format="'yyyy-MM-dd'"
36
+ v-model="model.endDate"
37
+ :show-reset-button="reset" placeholder="请输入止时间" style="margin-bottom: 8px">
38
+ </datepicker>
39
+ <!-- <input type="text" class="search_input" v-model="model.endDate" placeholder="请输入止下发时间"/> -->
40
+ </div>
41
+ </div>
42
+ <div class="row app-row">
43
+ <div class="col-xs-4" style="margin-bottom: 6px">
44
+ <img src="../../assets/地址.png" style="margin-bottom: 5px" alt="">
45
+ <span class="text-left font">地址</span>
46
+ </div>
47
+ <div class="col-xs-8">
48
+ <input type="text" class="search_input input-font" v-model="model.f_address" placeholder="请输入地址"/>
49
+ </div>
50
+ </div>
51
+ <div class="row app-row">
52
+ <div class="col-xs-4" style="margin-bottom: 6px">
53
+ <img src="../../assets/chaobiao.png" style="margin-bottom: 5px" alt="">
54
+ <span class="text-left font">抄表单条数</span>
55
+ </div>
56
+ <div class="col-xs-8 input-font" style="margin-top: 1px">
57
+ {{handcount}}
58
+ </div>
59
+ </div>
60
+ <div class="row text-center" style="margin-top: 20px;">
61
+ <button type="button" class="btn btn-lg btn-font btn-color" style="width: 45%;" @click="downHand()">抄表单下载</button>
62
+ <!--<button type="button" class="btn btn-lg btn-font btn-color" style="width: 45%;" @click="database()">数据库导出</button>-->
63
+ </div>
64
+ <div class="auto" style="padding-top: 10px;">
65
+ <p class="text-warning">提示:由于抄表单可能数量过多,在点击抄表单下载按钮后请勿进行任何操作,下载完成后系统会自动提醒你!</p>
66
+ </div>
67
+ <!-- <div class="auto" style="padding-top: 20px;" v-if='show'>
68
+ <p class="text-warning" style="padding: 0 10px">正在下载抄表单...</p>
69
+ </div> -->
70
+ <!-- <hand-info v-if="show" :data="handinfo"></hand-info> -->
71
+ <!-- <div class="auto" v-if="!show">
72
+ <p class="text-warning" style="padding: 0 10px">
73
+ 暂无可操作的抄表信息
74
+ </p>
75
+ </div> -->
76
+ <work-busy :isbusy="isbusy"></work-busy>
77
+ </div>
78
+
79
+
80
+
81
+ </template>
82
+ <script>
83
+ import AppData from '../../stores/AppData'
84
+ import * as Util from '../Util'
85
+ import co from 'co'
86
+ import Vue from 'vue'
87
+ const downloadHand = function * (self, condition) {
88
+ // let result = yield self.$androidUtil.bzLogic('downHandMeterInfo', {startDate: `${self.model.startDate}`, endDate: `${self.model.endDate}`, condition: condition, f_inputtor: `${self.userInfo.name}`})
89
+ HostApp.__this__ = self
90
+ self.logicWithHint('downHandMeterInfo', {startDate: `${self.model.startDate}`, endDate: `${self.model.endDate}`, condition: condition, f_inputtor: `${self.userInfo.name}`}, 'javascript:HostApp.__this__.downplanCallBack()', 1)
91
+
92
+ }
93
+ export default {
94
+ title: '计划管理',
95
+ data () {
96
+ return {
97
+ model: {
98
+ startDate: '',
99
+ endDate: '',
100
+ f_address: ''
101
+ },
102
+ isbusy: false,
103
+ userInfo: {},
104
+ handMeterInfo: [],
105
+ handinfo: [],
106
+ handcount: 0
107
+ }
108
+ },
109
+ ready () {
110
+ // 获取抄表源信息
111
+ // console.log('当前用户信息'+JSON.stringify(Vue.user))
112
+ this.userInfo = Object.assign({}, this.userInfo, Vue.user)
113
+ this.model.startDate = `${Util.toStandardYearMonth()}-01`
114
+ this.model.endDate = Util.toStandardDateString()
115
+ this.isbusy = false
116
+ },
117
+
118
+ methods: {
119
+ logicWithHint(logic, data, callback, backresult) {
120
+ HostApp.logicWithHint({
121
+ // logic别名,key必须为logic
122
+ 'logic': logic,
123
+ // 回调执行方法名,key必须为callback
124
+ 'callback': callback,
125
+ // logic执行需要的业务参数
126
+ 'data': data,
127
+ // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
128
+ // 执行回调方法传入key为backresult
129
+ // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
130
+ 'backresult': backresult
131
+ })
132
+ },
133
+ downplanCallBack(jo){
134
+ if (jo.state == 'ok') {
135
+ let result = JSON.parse(jo.result)
136
+ if (result.data.length > 0) {
137
+ if (result.state === 0) {
138
+ // self.isbusy = false
139
+ // 所有抄表单信息
140
+ this.handcount = result.data.length
141
+ this.handinfo = [...result.data]
142
+ this.$showMessage(`下载抄表单信息成功,本次下载${result.data.length}条抄表单,您可前往抄表管理进行抄表!`)
143
+ } else {
144
+ this.$showMessage('无可下载的抄表单信息!')
145
+ }
146
+ } else {
147
+ this.$showMessage('下载失败!')
148
+ }
149
+ }
150
+
151
+ },
152
+ database () {
153
+ HostApp.backupDatabase()
154
+ },
155
+ downHand () {
156
+ this.$showMessage('正在下载,请稍后!')
157
+ console.log('1'+ this.isbusy)
158
+ if (this.model.startDate === '') {
159
+ this.model.startDate = `${Util.toStandardYearMonth()}-01`
160
+ }
161
+ if (this.model.endDate === '') {
162
+ this.model.endDate = Util.toStandardDateString()
163
+ }
164
+ let condition = ''
165
+ if (this.model.f_address === '') {
166
+ condition = '1 = 1'
167
+ } else {
168
+ condition = `1 = 1 and f_address like '${this.model.f_address}%'`
169
+ }
170
+
171
+ // `${this.userInfo.name}`
172
+ // const message = new Promise(function () {
173
+ // this.$showMessage('正在进行抄表单下载,请确认!', ['confirm', 'cancel']).then((res) => {
174
+ // if (res === 'confirm') {
175
+ // resolve(true)
176
+ // }
177
+ // })
178
+ // })
179
+ console.log('2'+ this.isbusy)
180
+ const fun = downloadHand(this, condition)
181
+ co(fun)
182
+ // let result = this.$androidUtil.bzLogic('downHandMeterInfo', {startDate: `${this.model.startDate}`, endDate: `${this.model.endDate}`, condition: condition, f_inputtor: `${this.userInfo.name}`})
183
+ // console.log('点击3'+ this.flag)
184
+ // //安卓端
185
+ // if (result.state === 0) {
186
+ // // 所有抄表单信息
187
+ // if (result.data.length > 0) {
188
+ // this.handcount = result.data.length
189
+ // this.handinfo = [...result.data]
190
+ // this.$showMessage(`下载抄表单信息成功,本次下载${result.data.length}条抄表单,您可前往抄表管理进行抄表!`)
191
+ // this.isbusy= false
192
+ // } else {
193
+ // this.$showMessage('无可下载的抄表单信息!')
194
+ // this.isbusy= false
195
+ // }
196
+ // } else {
197
+ // this.$showMessage('下载失败!')
198
+ // // this.isbusy= false
199
+ // }
200
+ // }
201
+ }
202
+ }
203
+ }
204
+ </script>
205
+ <style scoped>
206
+ .search_input {
207
+ border: 0;
208
+ outline: none;
209
+ }
210
+ .app-row {
211
+ background-color: white;
212
+ padding: 10px 10px 3px 10px;
213
+ border-bottom: 1px solid rgba(235, 235, 235, 0.5);
214
+ }
215
+ .font{
216
+ font: 15px PingFang-SC-Medium;
217
+ color: #666666;
218
+ }
219
+ .btn-font{
220
+ font:600 16px PingFang-SC-Bold;
221
+ color: #499EDF;
222
+ }
223
+ .btn-color{
224
+ background-color: #FFFFFF;
225
+ border-radius: 10px ;
226
+ border: 1px solid #499EDF;
227
+ }
228
+ .input-font{
229
+ font: 15px PingFang-SC-Medium;
230
+ color: #333333;
231
+ }
232
+ </style>