sale-client 3.6.155 → 3.6.157
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.
- package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
- package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
- package/.gradle/5.2.1/gc.properties +0 -0
- package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/.gradle/vcs-1/gc.properties +0 -0
- package/build/dev-server.js +1 -1
- package/package.json +1 -1
- package/src/components/FilesManage/UserEssentialInfoTest.vue +43 -2
- package/src/components/FilesManage/UserGeneralInfoTest.vue +31 -5
- package/src/components/chargeBatch/BatchCharge.vue +1 -1
- package/src/components/chargeBatch/ReissueBillBatch.vue +10 -2
- package/src/filiale/alashan/EticketManage.vue +60 -0
- package/src/filiale/alashan/sale.js +3 -0
- package/src/filiale/qianneng/chargeBatch/ChargeGroupList.vue +1 -0
- package/src/main.js +1 -1
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
Binary file
|
|
File without changes
|
package/build/dev-server.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var path = require('path')
|
|
2
|
-
const [ serverRul, localUrl ] = ['http://192.168.50.4:8400/', 'http://
|
|
2
|
+
const [ serverRul, localUrl ] = ['http://192.168.50.4:8400/', 'http://192.168.50.4:8400/']
|
|
3
3
|
var merge = require('webpack-merge')
|
|
4
4
|
var baseConfig = require('./webpack.dev.conf')
|
|
5
5
|
var devConfig = {
|
package/package.json
CHANGED
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
<div class="row">
|
|
6
6
|
<div class="col-sm-4 form-group " :class="[$v.f_user_name.required ? 'has-error' : '']">
|
|
7
7
|
<label for="f_user_name" class="font_normal_body">*客户姓名</label>
|
|
8
|
-
<input type="text" v-model="baseinfo.base.f_user_name"
|
|
8
|
+
<input type="text" v-model="baseinfo.base.f_user_name"
|
|
9
|
+
v-validate:f_user_name='()=>getConfigValidate("f_user_name",true)'
|
|
9
10
|
class="input_search" style="width:60%" placeholder="客户名称" v-next-el="phone">
|
|
10
11
|
</div>
|
|
11
12
|
<div style="" class="col-sm-4 form-group"
|
|
@@ -242,7 +243,7 @@
|
|
|
242
243
|
|
|
243
244
|
export default {
|
|
244
245
|
title: '基本信息',
|
|
245
|
-
props: ['baseinfo', 'addressinfo', 'isedit', 'userphonelist'],
|
|
246
|
+
props: ['baseinfo', 'addressinfo', 'isedit', 'userphonelist', 'formconfig'],
|
|
246
247
|
data () {
|
|
247
248
|
return {
|
|
248
249
|
showselectaddress: false,
|
|
@@ -282,6 +283,46 @@
|
|
|
282
283
|
// this.highMeterPlugin.Stop()
|
|
283
284
|
},
|
|
284
285
|
methods: {
|
|
286
|
+
getConfigValidate (name, defaultVal) {
|
|
287
|
+
if (this.formconfig && this.formconfig[name]) {
|
|
288
|
+
let Validate = {}
|
|
289
|
+
if (this.formconfig[name].required) {
|
|
290
|
+
Object.assign(Validate, {required: true})
|
|
291
|
+
}
|
|
292
|
+
if (this.formconfig[name].minlength || this.formconfig[name].minlength === 0) {
|
|
293
|
+
Object.assign(Validate, {minlength: this.formconfig[name].minlength})
|
|
294
|
+
}
|
|
295
|
+
if (this.formconfig[name].maxlength) {
|
|
296
|
+
Object.assign(Validate, {maxlength: this.formconfig[name].maxlength})
|
|
297
|
+
}
|
|
298
|
+
console.log("==================",Validate)
|
|
299
|
+
return Validate
|
|
300
|
+
} else if (defaultVal) {
|
|
301
|
+
return {required: defaultVal}
|
|
302
|
+
}
|
|
303
|
+
return {}
|
|
304
|
+
},
|
|
305
|
+
getConfigShowItem (name) {
|
|
306
|
+
if (this.formconfig && this.formconfig[name]) {
|
|
307
|
+
return this.formconfig[name].showItem
|
|
308
|
+
} else {
|
|
309
|
+
return false
|
|
310
|
+
}
|
|
311
|
+
},
|
|
312
|
+
getConfigLabelName (name) {
|
|
313
|
+
if (this.formconfig && this.formconfig[name]) {
|
|
314
|
+
return this.formconfig[name].labelName
|
|
315
|
+
} else {
|
|
316
|
+
return ''
|
|
317
|
+
}
|
|
318
|
+
},
|
|
319
|
+
getConfigPlaceholder (name) {
|
|
320
|
+
if (this.formconfig && this.formconfig[name]) {
|
|
321
|
+
return this.formconfig[name].placeholder
|
|
322
|
+
} else {
|
|
323
|
+
return ''
|
|
324
|
+
}
|
|
325
|
+
},
|
|
285
326
|
selectaddress () {
|
|
286
327
|
this.showselectaddress = true
|
|
287
328
|
this.isSelect = true
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
<button class="button_search" style="width: max-content" @click="uploadPictures()">拍照</button>
|
|
11
11
|
<button class="button_search" style="width: max-content" @click="openBankAccount()" v-if="data.meterinfo[0].f_user_type[0] === '非民用' && ($login.r.includes('银行开户'))">银行开户</button>
|
|
12
12
|
</div>
|
|
13
|
-
<file-user-essential-info :usertype="row?row.f_user_type:null" :userphonelist="data.baseinfo.userphonelist" :baseinfo="data.baseinfo" :addressinfo="data.addressinfo" @valid="essentialInfo = true"
|
|
13
|
+
<file-user-essential-info :formconfig="config.fileUserEssentialInfo" :usertype="row?row.f_user_type:null" :userphonelist="data.baseinfo.userphonelist" :baseinfo="data.baseinfo" :addressinfo="data.addressinfo" @valid="essentialInfo = true"
|
|
14
14
|
@invalid="essentialInfo = false" v-ref:useressential :isedit="isedit"></file-user-essential-info>
|
|
15
15
|
<file-userinfo-device :userinfodevices.sync="userinfodevices" :show_userinfodevices.sync="show_userinfodevices"
|
|
16
16
|
:userinfoid='data.baseinfo.base.f_userinfo_id'></file-userinfo-device>
|
|
@@ -115,6 +115,17 @@ import UserPaperInfoTest from './UserPaperInfoTest'
|
|
|
115
115
|
import {HttpResetClass} from 'vue-client'
|
|
116
116
|
import * as Util from '../../Util'
|
|
117
117
|
|
|
118
|
+
let getConfigScope = async function (self, name) {
|
|
119
|
+
try {
|
|
120
|
+
let res = await self.$resetget('/rs/vue/' + name + '.json', {resolveMsg: null, rejectMsg: null, newly: true})
|
|
121
|
+
self.config[name] = res.data
|
|
122
|
+
} catch (error) {
|
|
123
|
+
// 忽略704,文件找不到异常
|
|
124
|
+
if (error.status !== 704) {
|
|
125
|
+
throw error
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
118
129
|
let getFileGen = async function (self, data) {
|
|
119
130
|
let http = new HttpResetClass()
|
|
120
131
|
try {
|
|
@@ -154,7 +165,11 @@ export default {
|
|
|
154
165
|
f_building_suffix: '栋',
|
|
155
166
|
f_unit_suffix: '单元',
|
|
156
167
|
f_floor_suffix: '层',
|
|
157
|
-
f_room_suffix: '室'
|
|
168
|
+
f_room_suffix: '室',
|
|
169
|
+
fileUserEssentialInfo: {},
|
|
170
|
+
fileUserinfoDevice: {},
|
|
171
|
+
fileUserMeterInfo: {},
|
|
172
|
+
userPaperInfo: {}
|
|
158
173
|
},
|
|
159
174
|
data: {
|
|
160
175
|
baseinfo: {
|
|
@@ -229,9 +244,20 @@ export default {
|
|
|
229
244
|
}
|
|
230
245
|
},
|
|
231
246
|
async ready () {
|
|
232
|
-
|
|
247
|
+
try {
|
|
248
|
+
console.log('开始获取配置文件')
|
|
249
|
+
// 获取配置文件 用来展示字段是否展示 是否必填
|
|
250
|
+
await getConfigScope(this, 'fileUserEssentialInfo')
|
|
251
|
+
await getConfigScope(this, 'fileUserinfoDevice')
|
|
252
|
+
await getConfigScope(this, 'fileUserMeterInfo')
|
|
253
|
+
await getConfigScope(this, 'userPaperInfo')
|
|
254
|
+
} catch (e) {
|
|
255
|
+
console.warn(e)
|
|
256
|
+
console.warn('获取展示配置失败,按照默认展示')
|
|
257
|
+
}
|
|
258
|
+
if (this.data.baseinfo.base.f_userinfo_id) {
|
|
233
259
|
this.blodid = this.data.baseinfo.base.f_userinfo_id
|
|
234
|
-
}else {
|
|
260
|
+
} else {
|
|
235
261
|
this.blodid = '临时id' + Date.now()
|
|
236
262
|
}
|
|
237
263
|
console.log('ready,,,', this.row)
|
|
@@ -242,7 +268,7 @@ export default {
|
|
|
242
268
|
// 将小区信息转化为综合信息的格式
|
|
243
269
|
await this.areainfoInUser(this.areainfo)
|
|
244
270
|
}
|
|
245
|
-
console.log('this.blodid------------>',this.blodid)
|
|
271
|
+
console.log('this.blodid------------>', this.blodid)
|
|
246
272
|
},
|
|
247
273
|
watch: {
|
|
248
274
|
async 'row' (val) {
|
|
@@ -291,7 +291,7 @@ export default {
|
|
|
291
291
|
let batch = await this.$resetpost('rs/logic/asyncbatchPaymentSellinggas', {data: param}, {resolveMsg: null, rejectMsg: null}, 1000)
|
|
292
292
|
batchId = param.f_batch_id = batch.data.f_batch_id
|
|
293
293
|
// 处理记录明细抄表明细
|
|
294
|
-
await this.$resetpost('rs/logic/async/asyncbatchPaymentFiles', {data: param}, {resolveMsg: null, rejectMsg: null}, 1000)
|
|
294
|
+
// await this.$resetpost('rs/logic/async/asyncbatchPaymentFiles', {data: param}, {resolveMsg: null, rejectMsg: null}, 1000)
|
|
295
295
|
} else {
|
|
296
296
|
try {
|
|
297
297
|
await this.$resetpost('rs/logic/batchPayment', {data: param}, {resolveMsg: null, rejectMsg: null}, 1000)
|
|
@@ -33,6 +33,7 @@
|
|
|
33
33
|
messText: '',
|
|
34
34
|
bill: {data: ''},
|
|
35
35
|
sellingData: [],
|
|
36
|
+
timeOut: this.$appdata.getSingleValue('打印票据间隔时间') ? this.$appdata.getSingleValue('打印票据间隔时间') : 1000,
|
|
36
37
|
printControl: null
|
|
37
38
|
}
|
|
38
39
|
},
|
|
@@ -61,8 +62,15 @@
|
|
|
61
62
|
for (let row of this.sellingData) {
|
|
62
63
|
let bill = await this.$resetpost(this.data.billUrl, {data: {condition: row.id, operator: `'${this.data.f_operator}'`}}, {resolveMsg: null})
|
|
63
64
|
this.bill.data = bill.data
|
|
64
|
-
await
|
|
65
|
-
|
|
65
|
+
await new Promise(resolve => {
|
|
66
|
+
this.$nextTick(() => {
|
|
67
|
+
setTimeout(() => {
|
|
68
|
+
// 在延迟后执行打印操作
|
|
69
|
+
this.asyncPrint(select)
|
|
70
|
+
resolve()
|
|
71
|
+
}, parseInt(this.timeOut)) // 延迟1秒钟打印下一张票据,可以根据需要调整延迟时间
|
|
72
|
+
})
|
|
73
|
+
})
|
|
66
74
|
this.printControl = null
|
|
67
75
|
}
|
|
68
76
|
this.$dispatch('reissue-success')
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<tab-button v-ref:list>
|
|
3
|
+
<tabs header="开票记录">
|
|
4
|
+
<e-ticket-record-list></e-ticket-record-list>
|
|
5
|
+
</tabs>
|
|
6
|
+
<!-- <tabs header="物联网表结算">-->
|
|
7
|
+
<!-- <e-ticket-open-iot></e-ticket-open-iot>-->
|
|
8
|
+
<!-- </tabs>-->
|
|
9
|
+
<!-- <tabs header="卡表结算">-->
|
|
10
|
+
<!-- <e-ticket-open-card></e-ticket-open-card>-->
|
|
11
|
+
<!-- </tabs>-->
|
|
12
|
+
<!-- <tabs header="抄表结算">-->
|
|
13
|
+
<!-- <e-ticket-open-hand></e-ticket-open-hand>-->
|
|
14
|
+
<!-- </tabs>-->
|
|
15
|
+
<tabs header="自定义开票">
|
|
16
|
+
<cust-query-eticket></cust-query-eticket>
|
|
17
|
+
</tabs>
|
|
18
|
+
</tab-button>
|
|
19
|
+
</template>
|
|
20
|
+
|
|
21
|
+
<script>
|
|
22
|
+
import TabButton from '../../components/revenue/comprehen/common/TabButton'
|
|
23
|
+
import Tabs from '../../components/revenue/comprehen/common/Tabs'
|
|
24
|
+
export default {
|
|
25
|
+
name: 'eticket',
|
|
26
|
+
title: '发票管理',
|
|
27
|
+
components: { Tabs, TabButton },
|
|
28
|
+
data () {
|
|
29
|
+
return {// 页面开关
|
|
30
|
+
f_start_date: '',
|
|
31
|
+
f_end_date: '',
|
|
32
|
+
listpage: true,
|
|
33
|
+
width: {
|
|
34
|
+
left: '100%',
|
|
35
|
+
right: '0%'
|
|
36
|
+
},
|
|
37
|
+
// searchNumber:'',
|
|
38
|
+
rowData: {},
|
|
39
|
+
show: [true]
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
ready () {},
|
|
43
|
+
methods: {
|
|
44
|
+
cancel (obj) {
|
|
45
|
+
this.listpage = true
|
|
46
|
+
},
|
|
47
|
+
dealMsg (obj) {
|
|
48
|
+
this.rowData = obj
|
|
49
|
+
this.listpage = false
|
|
50
|
+
console.log(obj.model)
|
|
51
|
+
this.f_start_date = obj.model.startDate
|
|
52
|
+
this.f_end_date = obj.model.endDate
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
</script>
|
|
57
|
+
|
|
58
|
+
<style scoped>
|
|
59
|
+
|
|
60
|
+
</style>
|
|
@@ -12,4 +12,7 @@ export default function () {
|
|
|
12
12
|
// 票据补打
|
|
13
13
|
Vue.component('reissue-bill', (resolve) => { require(['./ReissueBill'], resolve) })
|
|
14
14
|
Vue.component('file-user-device-info', (resolve) => { require(['./UserDeviceInfoTest'], resolve) })
|
|
15
|
+
|
|
16
|
+
// 电子发票管理
|
|
17
|
+
Vue.component('e-ticket-manage', (resolve) => { require(['./EticketManage'], resolve) })
|
|
15
18
|
}
|
package/src/main.js
CHANGED
|
@@ -4,7 +4,7 @@ import App from './App'
|
|
|
4
4
|
import system from 'system-clients/src/system'
|
|
5
5
|
import sale from './sale'
|
|
6
6
|
// import wenxi from './filiale/rizhao/sale'
|
|
7
|
-
import FilialeSale from './filiale/
|
|
7
|
+
import FilialeSale from './filiale/lixianV3/sale'
|
|
8
8
|
import address from 'address-client/src/address'
|
|
9
9
|
import ldap from 'ldap-clients/src/ldap'
|
|
10
10
|
import VueClipboard from 'vue-clipboard2'
|