sale-client 3.6.173 → 3.6.175
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/build/dev-server.js +6 -9
- package/package.json +1 -1
- package/src/components/charge/business/CardMeterCenter.vue +2 -1
- package/src/components/charge/business/IOTMeterCenter.vue +9 -6
- package/src/components/charge/business/OtherChargeNew.vue +15 -0
- package/src/components/charge/business/machine/MachineMeterCenter.vue +2 -1
- package/src/components/revenue/changeInsurance/InsuranceChargesDetails.vue +57 -1
- package/src/components/revenue/comprehen/ComprehenOperation/ChangeAccount/TransferManage.vue +8 -1
- package/src/filiale/haile/unHandplanQuery.vue +11 -0
- package/src/filiale/shanxian/components/revenue/InsuranceChargesDetails.vue +18 -0
- package/src/filiale/shexian/HighMeterCard.vue +8 -2
- package/src/filiale/shexian/Upload.vue +599 -0
- package/src/filiale/shexian/sale.js +1 -0
- package/src/filiale/tongchuan/CardMeterCenter.vue +2 -1
- package/src/filiale/tongchuan/IOTMeterCenter.vue +2 -1
- package/src/filiale/wenxi/cardsHand.vue +1 -1
- package/src/main.js +1 -1
- package/static/mainicon/doc.jpg +0 -0
- package/static/mainicon/pdf.jpg +0 -0
package/build/dev-server.js
CHANGED
|
@@ -18,13 +18,7 @@ var devConfig = {
|
|
|
18
18
|
},
|
|
19
19
|
proxy: {
|
|
20
20
|
'/rs/file': {
|
|
21
|
-
target:
|
|
22
|
-
},
|
|
23
|
-
'/rs/logic/filemanage_fileSave': {
|
|
24
|
-
target: "http://127.0.0.1:4523/m1/719967-0-default"
|
|
25
|
-
},
|
|
26
|
-
'/rs/downloadfile': {
|
|
27
|
-
target: localUrl
|
|
21
|
+
target: serverRul
|
|
28
22
|
},
|
|
29
23
|
'/webapps': {
|
|
30
24
|
target: serverRul
|
|
@@ -79,10 +73,13 @@ var devConfig = {
|
|
|
79
73
|
target: serverRul
|
|
80
74
|
},
|
|
81
75
|
'/rs/logic': {
|
|
82
|
-
target:
|
|
76
|
+
target: serverRul
|
|
83
77
|
},
|
|
84
78
|
'/rs/sql': {
|
|
85
|
-
target:
|
|
79
|
+
target: serverRul
|
|
80
|
+
},
|
|
81
|
+
'/rs/entity': {
|
|
82
|
+
target: serverRul
|
|
86
83
|
},
|
|
87
84
|
'/webmeter': {
|
|
88
85
|
target: serverRul
|
package/package.json
CHANGED
|
@@ -622,7 +622,8 @@
|
|
|
622
622
|
}
|
|
623
623
|
},
|
|
624
624
|
'model.f_payment' (val) {
|
|
625
|
-
|
|
625
|
+
let _payment = this.$appdata.getSingleValue('需要输入业务单号的付款方式') || ''
|
|
626
|
+
if (val == '免交' || _payment.includes(val)) {
|
|
626
627
|
this.mjshow = true
|
|
627
628
|
} else if (val == '赠气' && (this.model.f_preamount || this.model.f_preamount != '')) {
|
|
628
629
|
if (this.row.f_collection_type == '按气量') {
|
|
@@ -111,7 +111,7 @@
|
|
|
111
111
|
<input id="f_collection" class="input_search" style="width:60%" type="number" v-model="model.f_collection"
|
|
112
112
|
@blur="config.calculatePreByCollection && calculatePreByCollection()"
|
|
113
113
|
@keyup.enter="checkInvoiceMsg((!$v.valid || validateOk || !islegal || clickConfirm))"
|
|
114
|
-
v-el:sk v-scale="[model.f_collection, row.f_fee_decimal||4]" :disabled="!config.calculatePreByCollection
|
|
114
|
+
v-el:sk v-scale="[model.f_collection, row.f_fee_decimal||4]" :disabled="!config.calculatePreByCollection ">
|
|
115
115
|
</div>
|
|
116
116
|
<div class="col-sm-1 form-group">
|
|
117
117
|
<give-change :curbalance="curbalance" :collection.sync="model.f_collection" v-ref:givechange></give-change>
|
|
@@ -587,7 +587,8 @@
|
|
|
587
587
|
this.getPrivilegeList()
|
|
588
588
|
},
|
|
589
589
|
'model.f_payment' (val) {
|
|
590
|
-
|
|
590
|
+
let _payment = this.$appdata.getSingleValue('需要输入业务单号的付款方式') || ''
|
|
591
|
+
if (val == '免交' || _payment.includes(val)) {
|
|
591
592
|
this.mjshow = true
|
|
592
593
|
} else if (val == '赠气' && (this.model.f_preamount || this.model.f_preamount != '')) {
|
|
593
594
|
if (this.row.f_collection_type == '按气量') {
|
|
@@ -743,10 +744,12 @@
|
|
|
743
744
|
preamount () {
|
|
744
745
|
if (this.model.f_preamount && this.model.f_preamount > 0) {
|
|
745
746
|
try {
|
|
746
|
-
preamountGen(this)
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
747
|
+
preamountGen(this).then((res) => {
|
|
748
|
+
if (this.config.quickSale) {
|
|
749
|
+
this.checkInvoiceMsg((!this.$v.valid || this.validateOk || !this.islegal || this.clickConfirm))
|
|
750
|
+
// this.$els.sk.focus()
|
|
751
|
+
}
|
|
752
|
+
})
|
|
750
753
|
} catch (error) {
|
|
751
754
|
this.$showAlert(`发卡售气划价错误,错误类型:${error}`, 'danger', 0)
|
|
752
755
|
this.$dispatch('error', '发卡售气', this.model, error)
|
|
@@ -139,6 +139,16 @@
|
|
|
139
139
|
close-on-select clear-button>
|
|
140
140
|
</v-select>
|
|
141
141
|
</div>
|
|
142
|
+
<div class="col-sm-4" v-if="!mjshow" >
|
|
143
|
+
<label for="f_serial_number" class=" font_normal_body">业务单号</label>
|
|
144
|
+
<input class="input_search" style="width:60%" type="text"
|
|
145
|
+
v-model="model.f_serial_number" placeholder="业务单号">
|
|
146
|
+
</div>
|
|
147
|
+
<div class="col-sm-4" v-if="mjshow" :class="[$v.f_serial_number.required || $v.f_serial_number.dctest ? 'has-error' : 'has-success']">
|
|
148
|
+
<label for="f_serial_number" class=" font_normal_body">业务单号</label>
|
|
149
|
+
<input class="input_search" style="width:60%" type="text" v-validate:f_serial_number='{required: true }'
|
|
150
|
+
v-model="model.f_serial_number" placeholder="业务单号">
|
|
151
|
+
</div>
|
|
142
152
|
<div class="col-sm-8">
|
|
143
153
|
<label for="f_comments" class=" font_normal_body"> 备  注</label>
|
|
144
154
|
<input type="text" class="input_search" style="width:80%" v-model="model.f_comments" rows="1"
|
|
@@ -326,6 +336,7 @@ export default {
|
|
|
326
336
|
otherdetail: [{f_brand_spec: [''], typeNameList: [], f_typenumber: '', typenumberList: [], f_unitprice: '', f_number: ''}]
|
|
327
337
|
},
|
|
328
338
|
eticket_msg: false,
|
|
339
|
+
mjshow: false,
|
|
329
340
|
eticket_show: false,
|
|
330
341
|
invoice_is_pax: '征税',
|
|
331
342
|
is_pax: [{label: '征税', value: '征税'}, {label: '不征税', value: '不征税'}],
|
|
@@ -362,6 +373,10 @@ export default {
|
|
|
362
373
|
if (val[0]) {
|
|
363
374
|
this.userfees(this.row.f_userinfo_id, val[0])
|
|
364
375
|
}
|
|
376
|
+
},
|
|
377
|
+
'model.f_payment' (val) {
|
|
378
|
+
let _payment = this.$appdata.getSingleValue('需要输入业务单号的付款方式') || ''
|
|
379
|
+
this.mjshow = (val === '免交' || _payment.includes(val))
|
|
365
380
|
}
|
|
366
381
|
},
|
|
367
382
|
events: {
|
|
@@ -652,7 +652,8 @@ let asyncMachineMeterCenter = async function (self) {
|
|
|
652
652
|
'data.f_payment' (val) {
|
|
653
653
|
this.getPrivilegeList()
|
|
654
654
|
// 根据付款方式增加业务单号
|
|
655
|
-
|
|
655
|
+
let _payment = this.$appdata.getSingleValue('需要输入业务单号的付款方式') || ''
|
|
656
|
+
if (val == '免交' || _payment.includes(val)) {
|
|
656
657
|
this.mjshow = true
|
|
657
658
|
} else {
|
|
658
659
|
this.mjshow = false
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
<div class="col-sm-2 form-group">
|
|
15
15
|
<label class="font_normal_body" for="f_user_name">客户姓名</label>
|
|
16
16
|
<input id="f_user_name" type="text" class="input_search" style="width: 60%" v-model="model.f_user_name"
|
|
17
|
-
condition="f_user_name like '{}'" placeholder='请输入要查询的客户姓名'>
|
|
17
|
+
condition="f_user_name like '%{}%'" placeholder='请输入要查询的客户姓名'>
|
|
18
18
|
</div>
|
|
19
19
|
<div class="col-sm-2 form-group">
|
|
20
20
|
<label class="font_normal_body" for="f_insurance_type">险 种</label>
|
|
@@ -61,6 +61,61 @@
|
|
|
61
61
|
close-on-select clear-button>
|
|
62
62
|
</v-select>
|
|
63
63
|
</div>
|
|
64
|
+
<div class="col-sm-2 form-group">
|
|
65
|
+
<label class="font_normal_body" for="f_state">收款方式</label>
|
|
66
|
+
<v-select id="f_state"
|
|
67
|
+
v-model="model.f_payment"
|
|
68
|
+
placeholder='请选择'
|
|
69
|
+
condition="f_payment ='{}'"
|
|
70
|
+
:value.sync="model.f_payment"
|
|
71
|
+
:options='$parent.$parent.payment'
|
|
72
|
+
close-on-select clear-button>
|
|
73
|
+
</v-select>
|
|
74
|
+
</div>
|
|
75
|
+
<div class="col-sm-2 form-group">
|
|
76
|
+
<label class="font_normal_body" for="f_user_name">客户地址</label>
|
|
77
|
+
<input id="f_address" type="text" class="input_search" style="width: 60%" v-model="model.f_address"
|
|
78
|
+
condition="f_address like '%{}%'" placeholder='请输入要查询的客户地址'>
|
|
79
|
+
</div>
|
|
80
|
+
<div class="col-sm-2 form-group">
|
|
81
|
+
<label class="font_normal_body" for="f_user_name">客户电话</label>
|
|
82
|
+
<input id="f_user_phone" type="text" class="input_search" style="width: 60%" v-model="model.f_user_phone"
|
|
83
|
+
condition="f_user_phone like '%{}%'" placeholder='请输入要查询的客户电话'>
|
|
84
|
+
</div>
|
|
85
|
+
<div class="col-sm-2 form-group">
|
|
86
|
+
<label class="font_normal_body" for="f_user_name">身份证号</label>
|
|
87
|
+
<input id="f_idnumber" type="text" class="input_search" style="width: 60%" v-model="model.f_idnumber"
|
|
88
|
+
condition="f_idnumber like '%{}%'" placeholder='请输入要查询的身份证号'>
|
|
89
|
+
</div>
|
|
90
|
+
<div class="col-sm-2 form-group">
|
|
91
|
+
<label class="font_normal_body" for="f_user_name">保险单号</label>
|
|
92
|
+
<input id="f_ins_number" type="text" class="input_search" style="width: 60%" v-model="model.f_ins_number"
|
|
93
|
+
condition="f_ins_number like '%{}%'" placeholder='请输入要查询的保险单号'>
|
|
94
|
+
</div>
|
|
95
|
+
<div class="col-sm-2 form-group">
|
|
96
|
+
<label class="font_normal_body" for="f_user_name">备注信息</label>
|
|
97
|
+
<input id="f_comments" type="text" class="input_search" style="width: 60%" v-model="model.f_comments"
|
|
98
|
+
condition="f_comments like '%{}%'" placeholder='请输入要查询的备注信息'>
|
|
99
|
+
</div>
|
|
100
|
+
<div class="col-sm-2 form-group">
|
|
101
|
+
<label class="font_normal_body">开始时间</label>
|
|
102
|
+
<datepicker :format="'yyyy-MM-dd'"
|
|
103
|
+
:value.sync="model.f_ins_start_date"
|
|
104
|
+
placeholder="缴费开始时间"
|
|
105
|
+
condition="f_operate_date >= '{}'"
|
|
106
|
+
v-model="model.f_ins_start_date" style="width: 55%">
|
|
107
|
+
</datepicker>
|
|
108
|
+
</div>
|
|
109
|
+
<div class="col-sm-2 form-group">
|
|
110
|
+
<label class="font_normal_body">结束时间</label>
|
|
111
|
+
<datepicker :format="'yyyy-MM-dd'"
|
|
112
|
+
:value.sync="model.f_expiration_date"
|
|
113
|
+
placeholder="缴费结束时间"
|
|
114
|
+
condition="f_operate_date <= '{}'"
|
|
115
|
+
v-model="model.f_expiration_date" style="width: 55%">
|
|
116
|
+
</datepicker>
|
|
117
|
+
</div>
|
|
118
|
+
|
|
64
119
|
</div>
|
|
65
120
|
</div>
|
|
66
121
|
|
|
@@ -251,6 +306,7 @@
|
|
|
251
306
|
},
|
|
252
307
|
f_state: '',
|
|
253
308
|
state: this.$appdata.getParam('保险状态') ? this.$appdata.getParam('保险状态') : [],
|
|
309
|
+
payment: this.$appdata.getParam('收费方式') ? this.$appdata.getParam('收费方式') : [],
|
|
254
310
|
f_insurance_type: '',
|
|
255
311
|
insuranceType: this.$appdata.getParam('险种') ? this.$appdata.getParam('险种') : [],
|
|
256
312
|
orgCondtionStr: '',
|
package/src/components/revenue/comprehen/ComprehenOperation/ChangeAccount/TransferManage.vue
CHANGED
|
@@ -119,7 +119,7 @@
|
|
|
119
119
|
</button>
|
|
120
120
|
</div>
|
|
121
121
|
<!--<upload :blodid="blodid" isremark="true" fusetype="过户"></upload>-->
|
|
122
|
-
<upload :blodid="blodid" v-if="config.showupload" :businessid="randomBusinessId" isremark="true" fusetype="过户管理"></upload>
|
|
122
|
+
<upload :blodid="blodid" v-if="config.showupload" v-on:confirminfo="confirmIdCard" :businessid="randomBusinessId" isremark="true" fusetype="过户管理"></upload>
|
|
123
123
|
</validator>
|
|
124
124
|
</div>
|
|
125
125
|
<modal v-if="loaduserflag" :show.sync="loaduserflag" width="80%" title="过户资产信息" v-ref:modal large backdrop="false">
|
|
@@ -219,6 +219,8 @@
|
|
|
219
219
|
f_transfer_fees: this.$appdata.getSingleValue('过户费') ? this.$appdata.getSingleValue('过户费') : '',
|
|
220
220
|
// f_transfer_fees: '',
|
|
221
221
|
f_newbank_accopen: '',
|
|
222
|
+
f_newuser_name: '',
|
|
223
|
+
f_newidnumber: '',
|
|
222
224
|
f_newbank_name: ''
|
|
223
225
|
},
|
|
224
226
|
transferdata: {
|
|
@@ -262,6 +264,11 @@
|
|
|
262
264
|
},
|
|
263
265
|
|
|
264
266
|
methods: {
|
|
267
|
+
confirmIdCard (msg) {
|
|
268
|
+
console.log(msg)
|
|
269
|
+
this.model.f_newuser_name = msg.strName
|
|
270
|
+
this.model.f_newidnumber = msg.strID
|
|
271
|
+
},
|
|
265
272
|
getRandomId () {
|
|
266
273
|
this.randomBusinessId = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
|
|
267
274
|
let res = Math.random() * 16 | 0
|
|
@@ -129,6 +129,17 @@
|
|
|
129
129
|
<input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
|
|
130
130
|
condition="f_meternumber = '{}' " placeholder="表号">
|
|
131
131
|
</div>
|
|
132
|
+
<div class="col-sm-2 form-group">
|
|
133
|
+
<label class="font_normal_body">机表未抄期数</label>
|
|
134
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_hand_month"
|
|
135
|
+
condition="f_hand_month >= '{}' " placeholder="机表未抄期数">
|
|
136
|
+
</div>
|
|
137
|
+
<div class="col-sm-2 form-group">
|
|
138
|
+
<label class="font_normal_body">物联未报天数</label>
|
|
139
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_webhand_day"
|
|
140
|
+
condition="f_webhand_day >= '{}' " placeholder="物联未报天数">
|
|
141
|
+
</div>
|
|
142
|
+
|
|
132
143
|
|
|
133
144
|
<!--表册片区-->
|
|
134
145
|
<!--<div class="col-sm-2 form-group">-->
|
|
@@ -57,6 +57,24 @@
|
|
|
57
57
|
close-on-select clear-button>
|
|
58
58
|
</v-select>
|
|
59
59
|
</div>
|
|
60
|
+
<div class="col-sm-2 form-group">
|
|
61
|
+
<label class="font_normal_body">开始时间</label>
|
|
62
|
+
<datepicker :format="'yyyy-MM-dd'"
|
|
63
|
+
:value.sync="model.f_ins_start_date"
|
|
64
|
+
placeholder="缴费开始时间"
|
|
65
|
+
condition="f_operate_date >= '{}'"
|
|
66
|
+
v-model="model.f_ins_start_date" style="width: 55%">
|
|
67
|
+
</datepicker>
|
|
68
|
+
</div>
|
|
69
|
+
<div class="col-sm-2 form-group">
|
|
70
|
+
<label class="font_normal_body">结束时间</label>
|
|
71
|
+
<datepicker :format="'yyyy-MM-dd'"
|
|
72
|
+
:value.sync="model.f_expiration_date"
|
|
73
|
+
placeholder="缴费结束时间"
|
|
74
|
+
condition="f_operate_date <= '{}'"
|
|
75
|
+
v-model="model.f_expiration_date" style="width: 55%">
|
|
76
|
+
</datepicker>
|
|
77
|
+
</div>
|
|
60
78
|
</div>
|
|
61
79
|
</div>
|
|
62
80
|
|
|
@@ -72,6 +72,10 @@ export default {
|
|
|
72
72
|
data () {
|
|
73
73
|
return {
|
|
74
74
|
cameraurl: '',
|
|
75
|
+
IdCardInfo: {
|
|
76
|
+
name: '',
|
|
77
|
+
cardId: ''
|
|
78
|
+
},
|
|
75
79
|
jd: 'transform:rotate(0deg)',
|
|
76
80
|
degs: 0
|
|
77
81
|
}
|
|
@@ -930,8 +934,10 @@ export default {
|
|
|
930
934
|
},
|
|
931
935
|
confirmIdCard () {
|
|
932
936
|
let param = this.IdCardInfo
|
|
933
|
-
param.strName=this.IdCardInfo.name
|
|
934
|
-
param.strID=this.IdCardInfo.cardID
|
|
937
|
+
param.strName = this.IdCardInfo.name
|
|
938
|
+
param.strID = this.IdCardInfo.cardID
|
|
939
|
+
// param.strName = '测试'
|
|
940
|
+
// param.strID = '123'
|
|
935
941
|
this.$emit('confirminfo', param)
|
|
936
942
|
this.IdCardInfo = {}
|
|
937
943
|
}
|
|
@@ -0,0 +1,599 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div style="background-color: #FFFFFF;">
|
|
3
|
+
<div class=" col-sm-12"
|
|
4
|
+
style="background-color: #FFFFFF;height: auto;border-radius: 8px">
|
|
5
|
+
<div style="position: relative;height: 34px;width:75%;margin: 30px auto 10px auto;">
|
|
6
|
+
<div class="inpGroup" v-if="isremark" style="position:absolute;left: 0px;">
|
|
7
|
+
<input v-model="headers.fremarks" style="width:70%" class="input_search" placeholder="文件说明"/>
|
|
8
|
+
</div>
|
|
9
|
+
<div style="position:absolute;right:10%;">
|
|
10
|
+
<button class="button_search btn-gn" @click="upload()" v-show="!takeimg" >拍照</button>
|
|
11
|
+
<button class="button_search btn-gn" @click="fileUpload()" v-show="!isupload" >审核资料上传</button>
|
|
12
|
+
</div>
|
|
13
|
+
<high-meter :show.sync="showhighmeter" @photo-finish="newPhoto" v-if="showhighmeter" v-on:confirminfo="confirmIdCard"></high-meter>
|
|
14
|
+
<div v-if="isusetype">
|
|
15
|
+
<v-select class="inp_button2" type="button" placeholder="使用类型" :options="foptions"
|
|
16
|
+
:value.sync="useType" v-model="useType"></v-select>
|
|
17
|
+
</div>
|
|
18
|
+
</div>
|
|
19
|
+
<hr style="width: 90%;margin: 0px auto;border: #999999 1px solid;margin-top: 20px"/>
|
|
20
|
+
<div class="showList col-sm-12" style="padding: 10px;margin-top: 20px">
|
|
21
|
+
<div :class="cols ? cols : 'col-sm-6'" style="padding:10px 10px 0px 10px;height: auto;box-sizing: border-box"
|
|
22
|
+
v-for="row in fileInfoData">
|
|
23
|
+
<div class="showData">
|
|
24
|
+
<div class="left">
|
|
25
|
+
<a href="#" class="thumbnail" style="width:100%;height:100%" >
|
|
26
|
+
<img v-if="(row.f_filetype.toLowerCase()==='jpg'||row.f_filetype.toLowerCase()==='png'||row.f_filetype.toLowerCase()==='gif'||row.f_filetype.toLowerCase()==='bmp')&&!rotating" :src="row.f_downloadURL" alt="..."/>
|
|
27
|
+
<img-self v-if="(row.f_filetype.toLowerCase()==='jpg'||row.f_filetype.toLowerCase()==='png'||row.f_filetype.toLowerCase()==='gif'||row.f_filetype.toLowerCase()==='bmp')&&rotating" :width="width?width:60" :height="height?height:60" :src="row.f_downloadURL" alt="..."></img-self>
|
|
28
|
+
<img v-if="row.f_filetype.toLowerCase()==='pdf'" src="../../../static/mainicon/pdf.jpg" alt="" style="width:66%"/>
|
|
29
|
+
<img-self v-if="row.f_filetype.toLowerCase()==='pdf'&&rotating" :width="width?width:60" :height="height?height:60" src="../../../static/mainicon/pdf.jpg" alt="..."></img-self>
|
|
30
|
+
<img v-if="row.f_filetype.toLowerCase()==='xls'||row.f_filetype.toLowerCase()==='xlsx'" src="../../../static/mainicon/excel.jpg" alt="" style="width:66%"/>
|
|
31
|
+
<img-self v-if="row.f_filetype.toLowerCase()==='xls'||row.f_filetype.toLowerCase()==='xlsx'&&rotating" :width="width?width:60" :height="height?height:60" src="../../../static/mainicon/excel.jpg" alt="..."></img-self>
|
|
32
|
+
<img v-if="row.f_filetype.toLowerCase()==='doc'||row.f_filetype.toLowerCase()==='docx'" src="../../../static/mainicon/doc.jpg" alt="" style="width:66%"/>
|
|
33
|
+
<img-self v-if="row.f_filetype.toLowerCase()==='doc'||row.f_filetype.toLowerCase()==='docx'&&rotating" :width="width?width:60" :height="height?height:60" src="../../../static/mainicon/doc.jpg" alt="..."></img-self>
|
|
34
|
+
</a>
|
|
35
|
+
</div>
|
|
36
|
+
<div class="right">
|
|
37
|
+
<p :title="row.f_uploaddate" class="top clears"><strong>上传时间</strong>: <span>{{row.f_uploaddate}}</span></p>
|
|
38
|
+
<p :title="row.f_username" class="top clears"><strong>操作员</strong>: <span>{{row.f_username}}</span></p>
|
|
39
|
+
<p :title="row.f_filename" class="top clears"><strong>文件名</strong>: {{row.f_filename}}</p>
|
|
40
|
+
<p :title="row.fremarks" class="top clears"><strong>文件说明</strong>: {{row.fremarks}}</p>
|
|
41
|
+
<p>
|
|
42
|
+
<a v-if="row.f_filetype.toLowerCase()==='jpg'||row.f_filetype.toLowerCase()==='png'||row.f_filetype.toLowerCase()==='gif'||row.f_filetype.toLowerCase()==='bmp'" :href="row.f_downloadURL" style="background:#6aa6e2" class="btn btn-primary" target="_blank" role="button">预览</a>
|
|
43
|
+
<button class="button_search btn-gn" v-if="row.f_filetype.toLowerCase()==='pdf'||row.f_filetype.toLowerCase()==='xls'||row.f_filetype.toLowerCase()==='xlsx'||row.f_filetype.toLowerCase()==='doc'||row.f_filetype.toLowerCase()==='docx'" @click="downloadfile(row.f_downloadURL)" >下载</button>
|
|
44
|
+
<a v-if="isDelete == '1'" @click="delet($index,row)" href="#" class="btn btn-default" role="button">删除</a>
|
|
45
|
+
</p>
|
|
46
|
+
</div>
|
|
47
|
+
</div>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
</div>
|
|
51
|
+
<modal :show.sync="showUpload" styles="border-radius:20px;margin-top:300px" v-ref:modal backdrop="false" :width="700" >
|
|
52
|
+
<header slot="modal-header" class="modal-header">
|
|
53
|
+
<button type="button" class="close" @click="close"><span class="glyphicon glyphicon-remove"></span></button>
|
|
54
|
+
<h4 class="modal-title" style="text-align: center">文件上传</h4>
|
|
55
|
+
</header>
|
|
56
|
+
<article slot="modal-body" class="modal-body">
|
|
57
|
+
<div class="form-group">
|
|
58
|
+
<file-upload style="margin-left:100px;padding-top:20px" class="my-file-uploader" :name="'myFile' + blodid"
|
|
59
|
+
action="rs/file/uploadFile" tagname="文件上传" :headers="headers" multiple v-ref:file></file-upload>
|
|
60
|
+
</div>
|
|
61
|
+
</article>
|
|
62
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
63
|
+
</footer>
|
|
64
|
+
</modal>
|
|
65
|
+
</div>
|
|
66
|
+
</template>
|
|
67
|
+
<script>
|
|
68
|
+
import { HttpResetClass } from 'vue-client'
|
|
69
|
+
//import HttpResetClass from '../plugins/HttpResetClass'
|
|
70
|
+
import Vue from "vue";
|
|
71
|
+
|
|
72
|
+
export default {
|
|
73
|
+
title: "附件",
|
|
74
|
+
props: ['blodid','businessid','isremark', 'isusetype','takeimg','defname','isupload','fusetype','cols','width','height'],
|
|
75
|
+
data() {
|
|
76
|
+
return {
|
|
77
|
+
isDelete: '0', // 删除按钮,可以进行控制(权限等)
|
|
78
|
+
fileInfoData: [], // 数据库存储的文件记录对象数组
|
|
79
|
+
headers: {'username': this.$login.f.name, 'blodid': '','businessid':'', 'fremarks': '','defname':'','fusetype':this.fusetype?this.fusetype:''}, // 调用rs/file/uploadFile 的参数
|
|
80
|
+
showUpload: false, // 上传模态框控制
|
|
81
|
+
showhighmeter: false, // 高拍仪组件控制
|
|
82
|
+
useType: '', // 使用类型
|
|
83
|
+
fileRemark: '', // 文件说明
|
|
84
|
+
rotating: this.$appdata.getSingleValue('图片附加功能') // 文件是否旋转
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
methods: {
|
|
88
|
+
confirmIdCard (IdCardInfo) {
|
|
89
|
+
this.showhighmeter = !this.showhighmeter
|
|
90
|
+
console.log(IdCardInfo)
|
|
91
|
+
if(IdCardInfo && IdCardInfo.strID){
|
|
92
|
+
this.$emit('confirminfo', IdCardInfo)
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
// 查询按钮事件
|
|
96
|
+
delet(index, row) {
|
|
97
|
+
this.$resetdelete('rs/entity/t_files', {id: row.id}, {resolveMsg: '删除成功', rejectMsg: '删除失败'}).then((res) => {
|
|
98
|
+
this.$dispatch("delResid",row.id)
|
|
99
|
+
this.fileInfoData.splice(index, 1)
|
|
100
|
+
})
|
|
101
|
+
},
|
|
102
|
+
downloadfile(filepath){
|
|
103
|
+
|
|
104
|
+
var link = document.createElement('a');
|
|
105
|
+
// let pathName = "http://" + location.host + filepath;
|
|
106
|
+
link.href = filepath;
|
|
107
|
+
link.target='_blank'
|
|
108
|
+
link.dispatchEvent(new MouseEvent('click'));
|
|
109
|
+
},
|
|
110
|
+
GetRequest() {
|
|
111
|
+
var url = location.search;
|
|
112
|
+
var theRequest = new Object();
|
|
113
|
+
if (url.indexOf("?") != -1) {
|
|
114
|
+
var str = url.substr(1);
|
|
115
|
+
let strs = str.split("&");
|
|
116
|
+
for (var i = 0; i < strs.length; i++) {
|
|
117
|
+
theRequest[strs[i].split("=")[0]] = decodeURIComponent(strs[i].split("=")[1]);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
return theRequest;
|
|
121
|
+
},
|
|
122
|
+
upload() {
|
|
123
|
+
|
|
124
|
+
if(this.showhighmeter){
|
|
125
|
+
console.log(this,'测试')
|
|
126
|
+
this.$refs.ltgao.closeVideo()
|
|
127
|
+
}
|
|
128
|
+
console.log('测试1')
|
|
129
|
+
this.showhighmeter = !this.showhighmeter
|
|
130
|
+
},
|
|
131
|
+
async load(self) {
|
|
132
|
+
let condition=''
|
|
133
|
+
if(this.businessid){
|
|
134
|
+
condition = `f_businessid= '${self.headers.businessid}' `
|
|
135
|
+
}else{
|
|
136
|
+
condition = `f_blobid= '${self.headers.blodid}' `
|
|
137
|
+
}
|
|
138
|
+
if(this.fusetype){
|
|
139
|
+
condition += ` and fusetype like '%${this.fusetype}%'`
|
|
140
|
+
}
|
|
141
|
+
var http = new HttpResetClass()
|
|
142
|
+
let data = {
|
|
143
|
+
condition: condition
|
|
144
|
+
}
|
|
145
|
+
let getFile = []
|
|
146
|
+
try {
|
|
147
|
+
getFile = await http.load('POST', 'rs/sql/getFiles', {data: data}, {
|
|
148
|
+
warnMsg: null,
|
|
149
|
+
resolveMsg: null
|
|
150
|
+
})
|
|
151
|
+
} catch (e) {
|
|
152
|
+
console.log(e)
|
|
153
|
+
}
|
|
154
|
+
for (var i = 0; i < getFile.data.length; i++) {
|
|
155
|
+
// 如果使用类型包含导入字样,则是execl文件导入的,不做显示
|
|
156
|
+
if(getFile.data[i].fusetype&&(getFile.data[i].fusetype.includes('execl导入'))){
|
|
157
|
+
getFile.data.splice(i,1)
|
|
158
|
+
i--
|
|
159
|
+
continue
|
|
160
|
+
}
|
|
161
|
+
let temp = getFile.data[i].f_downloadpath
|
|
162
|
+
let URL = temp.substring(temp.lastIndexOf(":\\") + 2)
|
|
163
|
+
var xy=this.$appdata.getSingleValue('协议')?this.$appdata.getSingleValue('协议'):"http://"
|
|
164
|
+
getFile.data[i].f_downloadURL = xy+ location.host + "/" + URL
|
|
165
|
+
}
|
|
166
|
+
self.fileInfoData = []
|
|
167
|
+
self.fileInfoData = getFile.data
|
|
168
|
+
},
|
|
169
|
+
// 数据库时间格式化
|
|
170
|
+
formatdate(val) {
|
|
171
|
+
//20180914151603 : 2018-09-14 15:16:03
|
|
172
|
+
if (val.length != 14)
|
|
173
|
+
return
|
|
174
|
+
let year = val.substr(0, 4)
|
|
175
|
+
let month = val.substr(4, 2)
|
|
176
|
+
let day = val.substr(6, 2)
|
|
177
|
+
let hour = val.substr(8, 2)
|
|
178
|
+
let min = val.substr(10, 2)
|
|
179
|
+
let second = val.substr(12, 2)
|
|
180
|
+
return year + '-' + month + '-' + day + ' ' + hour + ':' + min + ':' + second
|
|
181
|
+
},
|
|
182
|
+
// 打开文件上传对话框
|
|
183
|
+
fileUpload() {
|
|
184
|
+
this.showUpload = true
|
|
185
|
+
},
|
|
186
|
+
// 关闭文件上传对话框
|
|
187
|
+
close() {
|
|
188
|
+
this.showUpload = false
|
|
189
|
+
// 将选的文件清空
|
|
190
|
+
this.$refs.file.$el.querySelector('input').value = ''
|
|
191
|
+
this.load(this)
|
|
192
|
+
},
|
|
193
|
+
convertBase64ToBlob(base64String) {
|
|
194
|
+
// 将base64解码
|
|
195
|
+
var bytes = atob(base64String);
|
|
196
|
+
//var bytes = base64;
|
|
197
|
+
var bytesCode = new ArrayBuffer(bytes.length);
|
|
198
|
+
// 转换为类型化数组
|
|
199
|
+
var byteArray = new Uint8Array(bytesCode);
|
|
200
|
+
|
|
201
|
+
// 将base64转换为ascii码
|
|
202
|
+
for (var i = 0; i < bytes.length; i++) {
|
|
203
|
+
byteArray[i] = bytes.charCodeAt(i);
|
|
204
|
+
}
|
|
205
|
+
// 生成Blob对象(文件对象)
|
|
206
|
+
return new Blob([bytesCode], {type: 'image/jpeg'});
|
|
207
|
+
},
|
|
208
|
+
newPhoto(Imgbase64) {
|
|
209
|
+
let form = new FormData()
|
|
210
|
+
let xhr = new XMLHttpRequest()
|
|
211
|
+
let formDataBoundary = "----WebkitFormBoundary" + "GaoPaiYi";
|
|
212
|
+
form.append('Content-Type', 'multipart/form-data;boundary=' + formDataBoundary)
|
|
213
|
+
form.append('file', this.convertBase64ToBlob(Imgbase64), "GaoPaiYi.jpg")
|
|
214
|
+
xhr.open("POST", "rs/file/uploadFile")
|
|
215
|
+
|
|
216
|
+
if (this.headers) {
|
|
217
|
+
for (var header in this.headers) {
|
|
218
|
+
xhr.setRequestHeader(header, encodeURIComponent(this.headers[header]))
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
if (Vue.$login && Vue.$login.jwt) {
|
|
222
|
+
xhr.setRequestHeader('Authorization', 'Bearer ' + Vue.$login.jwtNew)
|
|
223
|
+
xhr.setRequestHeader('Token', Vue.$login.jwt)
|
|
224
|
+
}
|
|
225
|
+
xhr.send(form)
|
|
226
|
+
setTimeout(() => {
|
|
227
|
+
this.load(this)
|
|
228
|
+
}, 5000)
|
|
229
|
+
}
|
|
230
|
+
},
|
|
231
|
+
ready() {
|
|
232
|
+
if (this.$login.r.find(value => value == '上传附件删除')) {
|
|
233
|
+
// 有删除权限
|
|
234
|
+
this.isDelete = '1'
|
|
235
|
+
}
|
|
236
|
+
this.headers.blodid = this.blodid
|
|
237
|
+
this.headers.businessid = this.businessid
|
|
238
|
+
console.log('123222', this.businessid)
|
|
239
|
+
if (this.blodid||this.businessid) {
|
|
240
|
+
this.load(this)
|
|
241
|
+
}
|
|
242
|
+
},
|
|
243
|
+
watch: {
|
|
244
|
+
'blodid'(val) {
|
|
245
|
+
if (val) {
|
|
246
|
+
console.log('观察blodid', val)
|
|
247
|
+
this.headers.blodid = this.blodid
|
|
248
|
+
this.load(this)
|
|
249
|
+
}
|
|
250
|
+
},
|
|
251
|
+
'businessid'(val) {
|
|
252
|
+
console.log('观察businessid')
|
|
253
|
+
if (val) {
|
|
254
|
+
console.log('观察businessid', val)
|
|
255
|
+
this.headers.businessid = this.businessid
|
|
256
|
+
this.load(this)
|
|
257
|
+
}
|
|
258
|
+
},
|
|
259
|
+
'useType'() {
|
|
260
|
+
this.headers.fusetype = this.useType[0] ? this.useType[0] : ''
|
|
261
|
+
},
|
|
262
|
+
'defname'() {
|
|
263
|
+
this.headers.defname=this.defname
|
|
264
|
+
}
|
|
265
|
+
},
|
|
266
|
+
computed: {
|
|
267
|
+
foptions() {
|
|
268
|
+
return this.$appdata.getParam('使用类型')
|
|
269
|
+
},
|
|
270
|
+
},
|
|
271
|
+
events: {
|
|
272
|
+
onFileUpload: function (file, res) {
|
|
273
|
+
console.log("上传完毕",res)
|
|
274
|
+
this.$dispatch("resid",res.id)
|
|
275
|
+
this.headers.fremarks=''
|
|
276
|
+
this.close()
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
</script>
|
|
281
|
+
<style scoped>
|
|
282
|
+
|
|
283
|
+
* {
|
|
284
|
+
padding: 0px;
|
|
285
|
+
margin: 0px;
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
.inpGroup {
|
|
289
|
+
position: absolute;
|
|
290
|
+
left: 0px;
|
|
291
|
+
right: 220px;
|
|
292
|
+
font-family: "微软雅黑";
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
.navWin {
|
|
296
|
+
position: relative;
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
.navWin .navShow {
|
|
300
|
+
margin-top: 5px;
|
|
301
|
+
height: 34px;
|
|
302
|
+
font-size: 20px;
|
|
303
|
+
line-height: 34px;
|
|
304
|
+
color: rgb(180, 180, 180);
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
.navWin .navShow span {
|
|
308
|
+
display: inline-block;
|
|
309
|
+
height: 34px;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
.navWin .navShow .icon {
|
|
313
|
+
height: 34px;
|
|
314
|
+
margin-right: 10px;
|
|
315
|
+
color: rgb(200, 200, 200);
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
.navWin .navList {
|
|
319
|
+
position: absolute;
|
|
320
|
+
width: 100%;
|
|
321
|
+
z-index: 99;
|
|
322
|
+
list-style: none;
|
|
323
|
+
background-color: rgba(241, 241, 241, 0.9);
|
|
324
|
+
line-height: 34px;
|
|
325
|
+
color: #8d8d8d;
|
|
326
|
+
visibility: hidden;
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
.navWin:hover .navList {
|
|
330
|
+
visibility: visible;
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
.navWin .navList li {
|
|
334
|
+
font-size: 18px;
|
|
335
|
+
padding-left: 30px;
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
.navWin .navList li:hover {
|
|
339
|
+
background-color: rgba(220, 220, 220, 0.9);
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
.inp {
|
|
343
|
+
box-sizing: border-box;
|
|
344
|
+
width: 79%;
|
|
345
|
+
padding: 0px 10px;
|
|
346
|
+
height: 34px;
|
|
347
|
+
font-size: 14px;
|
|
348
|
+
line-height: 36px;
|
|
349
|
+
color: #999999;
|
|
350
|
+
border: solid 1px #c1c1c1;
|
|
351
|
+
border-radius: 2px;
|
|
352
|
+
background: none;
|
|
353
|
+
outline: none;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
.inp::-webkit-input-placeholder {
|
|
357
|
+
color: #999999;
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
.inp_button {
|
|
361
|
+
float: right;
|
|
362
|
+
margin-left: 10px;
|
|
363
|
+
/* position: absolute;
|
|
364
|
+
right: 35px;
|
|
365
|
+
height: 40px;*/
|
|
366
|
+
width: 100px;
|
|
367
|
+
font-size: 14px;
|
|
368
|
+
line-height: 34px;
|
|
369
|
+
color: #ffffff;
|
|
370
|
+
text-align: center;
|
|
371
|
+
background-color: rgb(90, 180, 90);
|
|
372
|
+
border-radius: 4px;
|
|
373
|
+
cursor: pointer;
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
.btn-group {
|
|
377
|
+
height: 34px;
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
.inp_button2 {
|
|
381
|
+
float: right;
|
|
382
|
+
margin-left: 10px;
|
|
383
|
+
/* position: absolute;
|
|
384
|
+
right: 35px;
|
|
385
|
+
height: 40px;*/
|
|
386
|
+
width: auto;
|
|
387
|
+
font-size: 16px;
|
|
388
|
+
line-height: 34px;
|
|
389
|
+
color: #ffffff;
|
|
390
|
+
text-align: center;
|
|
391
|
+
border-radius: 4px;
|
|
392
|
+
cursor: pointer;
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
.inp_button:hover {
|
|
396
|
+
/*background-color: rgb(80, 150, 80);*/
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
.inp_button:active {
|
|
400
|
+
font-size: 20px;
|
|
401
|
+
/*background-color: rgb(150, 200, 150);*/
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
.showData {
|
|
405
|
+
height: auto;
|
|
406
|
+
position: relative;
|
|
407
|
+
padding-bottom: 7px;
|
|
408
|
+
border-bottom: solid 1px #c1c1c1;
|
|
409
|
+
font-family: "微软雅黑";
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
.showData .left {
|
|
413
|
+
height: 180px;
|
|
414
|
+
width: 210px;
|
|
415
|
+
background-color: rgb(240, 240, 240);
|
|
416
|
+
overflow: hidden;
|
|
417
|
+
line-height: 180px;
|
|
418
|
+
}
|
|
419
|
+
|
|
420
|
+
.showData .left img {
|
|
421
|
+
width: 100%;
|
|
422
|
+
height: auto;
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
.showData .right {
|
|
426
|
+
position: absolute;
|
|
427
|
+
top: 0px;
|
|
428
|
+
left: 220px;
|
|
429
|
+
right: 0px;
|
|
430
|
+
height: 180px;
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
.showData .right .top {
|
|
434
|
+
height: 30px;
|
|
435
|
+
line-height: 30px;
|
|
436
|
+
color: rgb(98, 98, 98);
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
.showData .right .top .topleft {
|
|
440
|
+
float: left;
|
|
441
|
+
font-size: 16px;
|
|
442
|
+
margin-right: 20px;
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
.showData .right .top .topright {
|
|
446
|
+
float: right;
|
|
447
|
+
margin-left: 20px;
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
.showData .right .text {
|
|
451
|
+
word-wrap: break-word;
|
|
452
|
+
overflow: hidden;
|
|
453
|
+
/*height: 100px;*/
|
|
454
|
+
color: #999999;
|
|
455
|
+
/*padding: 8px 0px;*/
|
|
456
|
+
}
|
|
457
|
+
|
|
458
|
+
.showData .right ul {
|
|
459
|
+
height: 20px;
|
|
460
|
+
padding: 0px;
|
|
461
|
+
margin: 0px;
|
|
462
|
+
font-size: 0px;
|
|
463
|
+
}
|
|
464
|
+
|
|
465
|
+
.showData .right ul li {
|
|
466
|
+
display: inline-block;
|
|
467
|
+
height: 20px;
|
|
468
|
+
list-style: none;
|
|
469
|
+
font-size: 16px;
|
|
470
|
+
line-height: 20px;
|
|
471
|
+
padding: 0px 7px;
|
|
472
|
+
margin-right: 10px;
|
|
473
|
+
cursor: pointer;
|
|
474
|
+
background-color: none;
|
|
475
|
+
font-weight: bold;
|
|
476
|
+
color: #006fa3;
|
|
477
|
+
}
|
|
478
|
+
|
|
479
|
+
.showData .right ul li:hover {
|
|
480
|
+
color: #006fb3;
|
|
481
|
+
}
|
|
482
|
+
|
|
483
|
+
.showData .right ul li:active {
|
|
484
|
+
color: #006fb3;
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
.showData .right ul li a {
|
|
488
|
+
width: 100%;
|
|
489
|
+
height: 100%;
|
|
490
|
+
text-decoration: none;
|
|
491
|
+
color: #FFFFFF;
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
body {
|
|
495
|
+
color: black;
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
.search {
|
|
499
|
+
width: 75%;
|
|
500
|
+
margin: 10px auto 30px auto;
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
.search .searchAll {
|
|
504
|
+
height: 34px;
|
|
505
|
+
font-size: 18px;
|
|
506
|
+
color: #999999;
|
|
507
|
+
line-height: 34px;
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
.search .searchAll span {
|
|
511
|
+
display: inline-block;
|
|
512
|
+
width: 15px;
|
|
513
|
+
height: 15px;
|
|
514
|
+
border: #999999 1px solid;
|
|
515
|
+
position: relative;
|
|
516
|
+
top: 2px;
|
|
517
|
+
}
|
|
518
|
+
|
|
519
|
+
.search .searchAll .spanAll {
|
|
520
|
+
background-color: rgb(90, 180, 90);
|
|
521
|
+
}
|
|
522
|
+
|
|
523
|
+
.search .itemList {
|
|
524
|
+
font-size: 16px;
|
|
525
|
+
color: #999999;
|
|
526
|
+
line-height: 34px;
|
|
527
|
+
}
|
|
528
|
+
|
|
529
|
+
.search .itemList .item {
|
|
530
|
+
height: 34px;
|
|
531
|
+
position: relative;
|
|
532
|
+
}
|
|
533
|
+
|
|
534
|
+
.search .itemList .item .descript {
|
|
535
|
+
display: inline-block;
|
|
536
|
+
width: 80px;
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
.search .itemList .item .inputBox {
|
|
540
|
+
height: 30px;
|
|
541
|
+
position: absolute;
|
|
542
|
+
top: 0px;
|
|
543
|
+
left: 80px;
|
|
544
|
+
right: 20px;
|
|
545
|
+
}
|
|
546
|
+
|
|
547
|
+
.search .itemList .item .inputBox input {
|
|
548
|
+
width: 100%;
|
|
549
|
+
height: 100%;
|
|
550
|
+
outline: none;
|
|
551
|
+
padding: 0px 5px;
|
|
552
|
+
}
|
|
553
|
+
|
|
554
|
+
.search .itemList .item .inputBox input::-webkit-input-placeholder {
|
|
555
|
+
color: #999999;
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
.searchItem {
|
|
559
|
+
height: 30px;
|
|
560
|
+
position: absolute;
|
|
561
|
+
top: 0px;
|
|
562
|
+
left: 80px;
|
|
563
|
+
right: 20px;
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
.searchItem .show {
|
|
567
|
+
padding-left: 10px;
|
|
568
|
+
}
|
|
569
|
+
|
|
570
|
+
.searchItem ul {
|
|
571
|
+
position: relative;
|
|
572
|
+
list-style: none;
|
|
573
|
+
background-color: none;
|
|
574
|
+
font-weight: bold;
|
|
575
|
+
color: #006fa3;
|
|
576
|
+
|
|
577
|
+
z-index: 99;
|
|
578
|
+
visibility: hidden;
|
|
579
|
+
}
|
|
580
|
+
|
|
581
|
+
.searchItem ul li {
|
|
582
|
+
padding-left: 10px;
|
|
583
|
+
}
|
|
584
|
+
|
|
585
|
+
.searchItem:hover ul {
|
|
586
|
+
visibility: visible;
|
|
587
|
+
}
|
|
588
|
+
|
|
589
|
+
.searchItem ul li:hover {
|
|
590
|
+
color: #006fb1;
|
|
591
|
+
}
|
|
592
|
+
.clears{
|
|
593
|
+
overflow:hidden;
|
|
594
|
+
|
|
595
|
+
text-overflow:ellipsis;
|
|
596
|
+
|
|
597
|
+
white-space:nowrap;
|
|
598
|
+
}
|
|
599
|
+
</style>
|
|
@@ -18,6 +18,7 @@ export default function () {
|
|
|
18
18
|
// 机表抄表
|
|
19
19
|
Vue.component('high-meter', (resolve) => { require(['./HighMeterCard'], resolve) })
|
|
20
20
|
Vue.component('upload-idcard', (resolve) => { require(['./UploadIdCard'], resolve) })
|
|
21
|
+
Vue.component('upload', (resolve) => { require(['./Upload'], resolve) })
|
|
21
22
|
// 换表
|
|
22
23
|
Vue.component('change-meter', (resolve) => { require(['./revenue/newchangemeter/ChangeMeter'], resolve) })
|
|
23
24
|
// 清零
|
|
@@ -612,7 +612,8 @@ export default {
|
|
|
612
612
|
}
|
|
613
613
|
},
|
|
614
614
|
'model.f_payment' (val) {
|
|
615
|
-
|
|
615
|
+
let _payment = this.$appdata.getSingleValue('需要输入业务单号的付款方式') || ''
|
|
616
|
+
if (val == '免交' || _payment.includes(val)) {
|
|
616
617
|
this.mjshow = true
|
|
617
618
|
} else if (val == '赠气' && (this.model.f_preamount || this.model.f_preamount != '')) {
|
|
618
619
|
if (this.row.f_collection_type == '按气量') {
|
|
@@ -581,7 +581,8 @@
|
|
|
581
581
|
this.getPrivilegeList()
|
|
582
582
|
},
|
|
583
583
|
'model.f_payment' (val) {
|
|
584
|
-
|
|
584
|
+
let _payment = this.$appdata.getSingleValue('需要输入业务单号的付款方式') || ''
|
|
585
|
+
if (val == '免交' || _payment.includes(val)) {
|
|
585
586
|
this.mjshow = true
|
|
586
587
|
} else if (val == '赠气' && (this.model.f_preamount || this.model.f_preamount != '')) {
|
|
587
588
|
if (this.row.f_collection_type == '按气量') {
|
|
@@ -581,7 +581,7 @@ export default {
|
|
|
581
581
|
},
|
|
582
582
|
methods: {
|
|
583
583
|
downloadFiles () {
|
|
584
|
-
let downurl = 'rs/downloadfile/file?filename
|
|
584
|
+
let downurl = 'rs/downloadfile/file?filename=闻喜卡表批量抄表导入模板'
|
|
585
585
|
this.$downFile(downurl,'卡表批量抄表导入模板.xlsx')
|
|
586
586
|
},
|
|
587
587
|
hidden () {
|
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/zhongsheng/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'
|
|
Binary file
|
|
Binary file
|