sale-client 3.6.32 → 3.6.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.
@@ -1,85 +1,85 @@
1
- var path = require('path')
2
- const [localUrl, serverRul] = ['http://139.9.204.64:8400/', 'http://139.9.204.64:8400/']
3
- var merge = require('webpack-merge')
4
- var baseConfig = require('./webpack.dev.conf')
5
- var devConfig = {
6
- devServer: {
7
- contentBase: path.join(__dirname, 'src'),
8
- hot: true,
9
- publicPath: baseConfig.output.publicPath,
10
- historyApiFallback: true,
11
- host: '127.0.0.1',
12
- port: 8089,
13
- open: true,
14
- stats: {
15
- colors: false, // 配置控制台输出彩色日志
16
- chunks: false, // 不输出构建 chunk 信息
17
- children: false // 不输出子模块构建信息
18
- },
19
- proxy: {
20
- '/rs/file': {
21
- target: serverRul
22
- },
23
- '/invoice': {
24
- target: serverRul
25
- },
26
- // 查找资源服务数据
27
- '/rs/search': {
28
- target: serverRul
29
- },
30
- // 查找资源服务数据
31
- '/rs/logic/getLogin': {
32
- target: serverRul
33
- },
34
- // 查找资源服务数据
35
- '/rs/logic/getInitData': {
36
- target: serverRul
37
- },
38
- '/rs/logic/getSaleInitData': {
39
- target: serverRul
40
- },
41
- // 用户登录服务地址
42
- '/rs/user': {
43
- target: serverRul
44
- },
45
- '/rs/path': {
46
- target: serverRul
47
- },
48
- '/rs/data': {
49
- target: serverRul
50
- },
51
- '/rs/license': {
52
- target: serverRul
53
- },
54
- '/rs/db': {
55
- target: serverRul
56
- },
57
- '/excel': {
58
- target: serverRul
59
- },
60
- '/rs/config': {
61
- target: serverRul
62
- },
63
- '/rs/report': {
64
- target: serverRul
65
- },
66
- '/rs/vue': {
67
- target: serverRul
68
- },
69
- '/rs/logic': {
70
- target: localUrl
71
- },
72
- '/rs/sql': {
73
- target: localUrl
74
- },
75
- '/webmeter': {
76
- target: serverRul
77
- },
78
- '/rs': {
79
- target: serverRul
80
- // changeOrigin: true
81
- }
82
- }
83
- }
84
- }
85
- module.exports = merge(baseConfig, devConfig)
1
+ var path = require('path')
2
+ const [localUrl, serverRul] = ['https://qnjtkf.cn:8400/', 'https://qnjtkf.cn:8400/']
3
+ var merge = require('webpack-merge')
4
+ var baseConfig = require('./webpack.dev.conf')
5
+ var devConfig = {
6
+ devServer: {
7
+ contentBase: path.join(__dirname, 'src'),
8
+ hot: true,
9
+ publicPath: baseConfig.output.publicPath,
10
+ historyApiFallback: true,
11
+ host: '127.0.0.1',
12
+ port: 8089,
13
+ open: true,
14
+ stats: {
15
+ colors: false, // 配置控制台输出彩色日志
16
+ chunks: false, // 不输出构建 chunk 信息
17
+ children: false // 不输出子模块构建信息
18
+ },
19
+ proxy: {
20
+ '/rs/file': {
21
+ target: serverRul
22
+ },
23
+ '/invoice': {
24
+ target: serverRul
25
+ },
26
+ // 查找资源服务数据
27
+ '/rs/search': {
28
+ target: serverRul
29
+ },
30
+ // 查找资源服务数据
31
+ '/rs/logic/getLogin': {
32
+ target: serverRul
33
+ },
34
+ // 查找资源服务数据
35
+ '/rs/logic/getInitData': {
36
+ target: serverRul
37
+ },
38
+ '/rs/logic/getSaleInitData': {
39
+ target: serverRul
40
+ },
41
+ // 用户登录服务地址
42
+ '/rs/user': {
43
+ target: serverRul
44
+ },
45
+ '/rs/path': {
46
+ target: serverRul
47
+ },
48
+ '/rs/data': {
49
+ target: serverRul
50
+ },
51
+ '/rs/license': {
52
+ target: serverRul
53
+ },
54
+ '/rs/db': {
55
+ target: serverRul
56
+ },
57
+ '/excel': {
58
+ target: serverRul
59
+ },
60
+ '/rs/config': {
61
+ target: serverRul
62
+ },
63
+ '/rs/report': {
64
+ target: serverRul
65
+ },
66
+ '/rs/vue': {
67
+ target: serverRul
68
+ },
69
+ '/rs/logic': {
70
+ target: localUrl
71
+ },
72
+ '/rs/sql': {
73
+ target: localUrl
74
+ },
75
+ '/webmeter': {
76
+ target: serverRul
77
+ },
78
+ '/rs': {
79
+ target: serverRul
80
+ // changeOrigin: true
81
+ }
82
+ }
83
+ }
84
+ }
85
+ module.exports = merge(baseConfig, devConfig)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sale-client",
3
- "version": "3.6.32",
3
+ "version": "3.6.34",
4
4
  "description": "收费模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -265,7 +265,7 @@
265
265
  <payment-code v-ref:paymentcode :payment="model.f_payment" :row="row"
266
266
  :money="model.f_after_discount"></payment-code>
267
267
  </div>
268
- <upload v-if="config.showupload" isremark="true" fusetype="发卡售气"></upload>
268
+ <upload v-if="config.showupload" :blodid="blodid" isremark="true" fusetype="发卡售气"></upload>
269
269
  </template>
270
270
  <script>
271
271
  /**
@@ -0,0 +1,344 @@
1
+ <template>
2
+ <div id="unit" class="flex-row">
3
+ <div class="basic-main" @keyup.enter="search" v-if="!show">
4
+ <div class="flex">
5
+
6
+ <criteria-paged :model="model" v-ref:paged>
7
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
8
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
9
+ <div class="row">
10
+
11
+ <div class="col-sm-2 form-group">
12
+ <label for="startDate" class="font_normal_body">抄表日期</label>
13
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
14
+ v-model="model.startDate"
15
+ :value.sync="model.startDate"
16
+ :format="'yyyy-MM-dd HH:mm:ss'"
17
+ :show-reset-button="true"
18
+ condition="f_input_date >= '{}'">
19
+ </datepicker>
20
+ </div>
21
+ <div class="col-sm-2 form-group">
22
+ <label for="endDate" class="font_normal_body">&nbsp;至&nbsp;&nbsp;&nbsp;&nbsp;&ensp;</label>
23
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
24
+ v-model="model.endDate"
25
+ :value.sync="model.endDate"
26
+ :format="'yyyy-MM-dd HH:mm:ss'"
27
+ :show-reset-button="true"
28
+ condition="f_input_date <= '{}'">
29
+ </datepicker>
30
+ </div>
31
+ <div class="col-sm-2 form-group">
32
+ <label class="font_normal_body">小区名称</label>
33
+ <v-select :value.sync="model.f_residential_area"
34
+ class="select_list select"
35
+ enter-push
36
+ multiple = "true"
37
+ v-model="model.f_residential_area"
38
+ style="width: 60%"
39
+ :options='$parent.$parent.residentialArea' placeholder='选择小区'
40
+ close-on-select>
41
+
42
+ </v-select>
43
+ </div>
44
+ <div class="col-sm-2 form-group">
45
+ <label class="font_normal_body">抄&ensp;表&ensp;员</label>
46
+ <v-select :value.sync="model.f_inputtor" v-model='model.f_inputtor'
47
+ style="width:60%"
48
+ multiple="true"
49
+ :options='$parent.$parent.inputtores' placeholder='抄表员'
50
+ condition=""
51
+ close-on-select
52
+ v-el:cc></v-select>
53
+ </div>
54
+ <div class="span" style="float:right;">
55
+ <button class="button_search button_spacing" @click="search()">查询</button>
56
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
57
+
58
+ <export-excel :data="$parent.$parent.getCondition" :footer="$parent.$parent.footer"
59
+ :field="$parent.$parent.getfield" :header="$parent.$parent.other"
60
+ sqlurl="rs/logic/saleExport" sql-name="salehandplanRate" template-name='抄表率查询导出'
61
+ :choose-col="true"></export-excel>
62
+ </div>
63
+ </div>
64
+ </div>
65
+ </criteria>
66
+
67
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid :classname="$parent.classname">
68
+ <template partial='head'>
69
+ <tr>
70
+ <th>
71
+ <nobr>小区名称</nobr>
72
+ </th>
73
+ <th>
74
+ <nobr>抄表数</nobr>
75
+ </th>
76
+ <th>
77
+ <nobr>实抄表数</nobr>
78
+ </th>
79
+ <th>
80
+ <nobr>档案户数</nobr>
81
+ </th>
82
+ <th>
83
+ <nobr>用气量</nobr>
84
+ </th>
85
+ <th>
86
+ <nobr>用气金额</nobr>
87
+ </th>
88
+ <th>
89
+ <nobr>抄表率</nobr>
90
+ </th>
91
+ </tr>
92
+ </template>
93
+ <template partial='body'>
94
+ <td style="text-align: center;">
95
+ <nobr>{{row.f_residential_area}}</nobr>
96
+ </td>
97
+ <td style="text-align: center;">
98
+ <nobr>{{row.handplannum}}</nobr>
99
+ </td>
100
+ <td style="text-align: center;">
101
+ <nobr>{{row.ishandplan}}</nobr>
102
+ </td>
103
+ <td style="text-align: center;">
104
+ <nobr>{{row.peoplenum}}</nobr>
105
+ </td>
106
+ <td style="text-align: center;">
107
+ <nobr>{{row.f_oughtamount}}</nobr>
108
+ </td>
109
+ <td style="text-align: center;">
110
+ <nobr>{{row.f_oughtfee}}</nobr>
111
+ </td>
112
+ <td style="text-align: center;">
113
+ <nobr>{{row.handplansate1}}</nobr>
114
+ </td>
115
+ </template>
116
+ <template partial='foot'></template>
117
+ </data-grid>
118
+ </criteria-paged>
119
+
120
+ <table class="table-hover">
121
+ <tr style="position: relative;margin-top: -16px;" class="table-bordered">
122
+ <td
123
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
124
+ 汇总信息
125
+ </td>
126
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
127
+ 气量合计:&emsp;{{sumsmodel.f_oughtamount}}
128
+ </td>
129
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
130
+ 金额合计:&emsp;{{sumsmodel.f_oughtfee}}
131
+ </td>
132
+ </tr>
133
+ </table>
134
+ </div>
135
+ </div>
136
+ <work-busy :is-busy="iswork" v-show="iswork"></work-busy>
137
+ </div>
138
+ </template>
139
+
140
+ <script>
141
+
142
+ import {PagedList, HttpResetClass} from 'vue-client'
143
+
144
+ let readySomething = async function (self) {
145
+ self.$refs.paged.$refs.cri.model.startDate = self.data ? self.data.startDate : self.$login.toStandardDateString() + ' 00:00:00'
146
+ self.$refs.paged.$refs.cri.model.endDate = self.data ? self.data.endDate : self.$login.toStandardDateString() + ' 23:59:59'
147
+ await self.$getConfig(self, 'HandplanQuery')
148
+ await self.$LoadParams.loadParam()
149
+ console.log('开始查询')
150
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
151
+ }
152
+ export default {
153
+ props: ['data'],
154
+ title: '机表抄表率查询',
155
+ data () {
156
+ return {
157
+ iswork: false,
158
+ other: [],
159
+ footer: [],
160
+ data: {},
161
+ model: new PagedList('rs/sql/salehandplanRate', 20, {}, {
162
+ f_oughtamount: 0,
163
+ f_oughtfee: 0,
164
+ }),
165
+ initres: {
166
+ org: [this.$login.f.orgid],
167
+ dep: [],
168
+ user: []
169
+ },
170
+ show: false,
171
+ rowdata: {},
172
+ criteriaShow: false,
173
+ residentialArea: [],
174
+ orgCondtionStr: '',
175
+ modelval: [],
176
+ inputtouPerson: [],
177
+ f_filialeid: this.$login.f.f_orgid,
178
+ // 合计数据
179
+ sumsmodel: {},
180
+ config: {
181
+ defaultPrint: [],
182
+ excelHeaders: {
183
+ 'f_residential_area': '小区名称',
184
+ 'handplannum': '抄表数',
185
+ 'ishandplan': '实抄表数',
186
+ 'peoplenum': '档案户数',
187
+ 'f_oughtamount': '用气量',
188
+ 'f_oughtfee': '用气金额',
189
+ 'handplansate1':'抄表率'
190
+ }
191
+ },
192
+ inputtores: [{label: '全部', value: ''}], // 抄表员
193
+ condition: ' 1 = 1'
194
+ }
195
+ },
196
+ ready () {
197
+ this.getaddress()
198
+ readySomething(this).then(() => {
199
+ this.$emit('ready')
200
+ }).catch((error) => {
201
+ this.$emit('error', error)
202
+ })
203
+ },
204
+ methods: {
205
+ getotherfooter () {
206
+ this.other = []
207
+ this.footer = []
208
+ let exportdata = this.getCondition
209
+ let otherInData = []
210
+ otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`)
211
+ let footerData = [], exportfield = this.getfield
212
+ footerData.push('合计')
213
+ let self = this
214
+ for (var field in self.sumsmodel) {
215
+ footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`)
216
+ }
217
+ this.footer.push(footerData)
218
+ this.other.push(otherInData)
219
+ },
220
+ async getaddress () {
221
+ let HttpReset = new HttpResetClass()
222
+ var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
223
+ data: {
224
+ condition: `1=1 and s.f_orgid = '${this.$login.f.orgid}'`
225
+ }
226
+ }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
227
+ console.log('小区', data)
228
+ let house = [{label: '全部', value: ''}]
229
+ for (let row of data.data) {
230
+ house.push({label: row.f_residential_area, value: row.f_residential_area})
231
+ }
232
+ this.residentialArea = house
233
+ },
234
+ search () {
235
+ this.$refs.paged.$refs.cri.search()
236
+ },
237
+ selfSearch (args) {
238
+ if (this.data) {
239
+ this.$parent.$parent.$parent.data.startDate = this.$refs.paged.$refs.cri.model.startDate
240
+ this.$parent.$parent.$parent.data.endDate = this.$refs.paged.$refs.cri.model.endDate
241
+ }
242
+ this.area = this.$refs.paged.$refs.cri.model.f_residential_area
243
+ if (this.area.length !== 0) {
244
+ let str = JSON.stringify(this.area)
245
+ str = str.replace(/"/g, `'`)
246
+ str = str.replace(/\[/g, ``)
247
+ str = str.replace(/\]/g, ``)
248
+ // 查询多个小区时条件
249
+ args.condition += ` and f_residential_area in ( ${str} )`
250
+ }
251
+ // 抄表员查询条件
252
+ this.inputtouPerson = this.$refs.paged.$refs.cri.model.f_inputtor
253
+ if (this.inputtouPerson.length !== 0) {
254
+ let str = JSON.stringify(this.inputtouPerson)
255
+ str = str.replace(/"/g, `'`)
256
+ str = str.replace(/\[/g, ``)
257
+ str = str.replace(/\]/g, ``)
258
+ // 查询多个抄表员时条件
259
+ args.condition += ` and f_inputtor in ( ${str} )`
260
+ }
261
+
262
+ args.condition = `${args.condition} and f_meter_classify = '机表' ` + this.orgCondtionStr
263
+ this.condition = args.condition
264
+ this.model.search(args.condition, args.model)
265
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
266
+ },
267
+ clear () {
268
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
269
+ this.$refs.paged.$refs.cri.model[key] = []
270
+ })
271
+ },
272
+ show () {
273
+ this.criteriaShow = true
274
+ },
275
+ async getRes (condition, obj) {
276
+ console.log('condition:----------', condition)
277
+ console.log('obj:----------', obj)
278
+ this.orgCondtionStr = condition
279
+ }
280
+ },
281
+ watch: {
282
+ 'model.rows' (val) {
283
+ if (val.length === 0) {
284
+ this.sumsmodel = {}
285
+ }
286
+ },
287
+ 'modelval.length' () {
288
+ this.put()
289
+ },
290
+ sumsmodel: {
291
+ handler: function (val) {
292
+ this.getotherfooter()
293
+ },
294
+ deep: true
295
+ }
296
+ },
297
+ computed: {
298
+ getCondition () {
299
+ return {
300
+ startDate: this.$refs.paged.$refs.cri.model.startDate,
301
+ endDate: this.$refs.paged.$refs.cri.model.endDate,
302
+ condition: this.condition
303
+ }
304
+ },
305
+ getfield () {
306
+ return this.config.excelHeaders
307
+ },
308
+ // inputtor() {
309
+ // return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表员')]
310
+ // },
311
+ getPricenames () {
312
+ let f_filialeid = this.f_filialeid
313
+ let result = []
314
+ this.$GetSaleParam.prices.forEach((item) => {
315
+ if (item.f_state === '有效' && f_filialeid == item.f_filialeid) {
316
+ let value = {
317
+ label: item.f_price_name,
318
+ value: item
319
+ }
320
+ result.push(value)
321
+ }
322
+ })
323
+ return Array.from(new Set(result))
324
+ },
325
+ inputtores () {
326
+ // 获取抄表员
327
+ console.log('获取抄表员', this.$login.f)
328
+ let rs = []
329
+ if (this.$login.f.f_gasman.length > 0) {
330
+ for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
331
+ let temp = {
332
+ label: this.$login.f.f_gasman[i].name,
333
+ value: this.$login.f.f_gasman[i].name
334
+ }
335
+ rs.push(temp)
336
+ }
337
+ }
338
+ return [...rs]
339
+ }
340
+ },
341
+ events: {
342
+ }
343
+ }
344
+ </script>
@@ -11,4 +11,6 @@ export default function () {
11
11
  Vue.component('file-meter-info', (resolve) => { require(['./FilesManage/MeterinfoTest'], resolve) })
12
12
  // 用户操作
13
13
  Vue.component('charge-list', (resolve) => { require(['./ChargeList'], resolve) })
14
+ // 用户操作
15
+ Vue.component('handplanReplicationRate', (resolve) => { require(['./handplanReplicationRate'], resolve) })
14
16
  }