You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
560 lines
19 KiB
560 lines
19 KiB
<template>
|
|
<div class="app-container">
|
|
<!--标题按钮部分开始-->
|
|
<div class="tab-header webtop">
|
|
<!--标题-->
|
|
<div>{{ viewTitle }}</div>
|
|
<!--start 新增修改按钮-->
|
|
<div>
|
|
<el-button type="primary" size="small" :disabled="submitdisabled" @click="handleSave()">保存
|
|
</el-button>
|
|
<el-button type="primary" size="small" :disabled="submitdisabled" @click="handleSubmit()">提交
|
|
</el-button>
|
|
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
|
|
</div>
|
|
<!--end 添加修改按钮-->
|
|
</div>
|
|
<!--按钮部分结束-->
|
|
<div class="listconadd">
|
|
<div class="titwu">欠款领票及领手续</div>
|
|
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
|
|
<el-row style="border-top: 1px solid #E0E3EB">
|
|
<el-col :span="8">
|
|
<div class="span-sty">发起人</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.createByName }}</span></el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<div class="span-sty">发起部门</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.deptName }}</span></el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<div class="span-sty">发起日期</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.applyDate }}</span></el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<div class="span-sty">销售专员</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.staffName }}</span></el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<div class="span-sty">销售部门</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.saleDeptName }}</span></el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<div class="span-sty">销售类型</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.saleTypeValue }}</span></el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<div class="span-sty">合同编号</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.contractNo }}</span></el-form-item>
|
|
</el-col>
|
|
<el-col :span="8" class="tlineheightb">
|
|
<div class="span-sty">开票单位</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.openTickUnitName }}</span></el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<div class="span-sty">客户名称</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<div class="title">主车开票信息</div>
|
|
<el-table :key="tableKey" :data="formobj.finBillVehicles" :index="index" border style="width: 100%">
|
|
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
|
|
<el-table-column label="车架号" align="center">
|
|
<template slot-scope="scope">
|
|
<span>{{ scope.row.vinNo }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="开票类型" align="center">
|
|
<template slot-scope="scope">
|
|
<span>{{ scope.row.billTypeValue }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="开票名称" align="center">
|
|
<template slot-scope="scope">
|
|
<span>{{ scope.row.openTickName }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="开票信息" align="center">
|
|
<template slot-scope="scope">
|
|
<span>{{ scope.row.openTickRemarks }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="开票金额" align="center">
|
|
<template>
|
|
<span>{{ formobj.oneBillMoney }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="合格证状态" align="center">
|
|
<template slot-scope="scope">
|
|
<span class="bluezi" @click="handleLook(scope.row.certificatePhoto)">{{ scope.row.certificateStateValue }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<div class="span-sty">开票金额合计</div>
|
|
<el-form-item><span class="addinputInfo">{{ totalBillMoney() }}</span></el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="12">
|
|
<div class="span-sty">欠款金额</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.arrearsMoney }}</span></el-form-item>
|
|
</el-col>
|
|
<el-col :span="12">
|
|
<div class="span-sty">承诺回款日期</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.returnedMoneyDate }}</span></el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<div class="span-sty">欠款开票原因</div>
|
|
<el-form-item><span class="addinputInfo">{{ formobj.arrearsOpenYYValue }}</span></el-form-item>
|
|
</el-col>
|
|
<el-col :span="16">
|
|
<el-form-item><span class="addinputInfo" style="margin-left: 0px !important;">{{ formobj.remarks }}</span></el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<div v-if="formobj.finBillTrailers !== null">
|
|
<div class="title">挂车开票信息</div>
|
|
<el-table :key="billingKey" :data="formobj.finBillTrailers" :index="index" border style="width: 100%">
|
|
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
|
|
<el-table-column label="挂车车架号" align="center">
|
|
<template slot-scope="scope">
|
|
<span>{{ scope.row.gcVinNo }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="主车车架号" align="center">
|
|
<template slot-scope="scope">
|
|
<span>{{ scope.row.vinNo }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="开票类型" align="center">
|
|
<template slot-scope="scope">
|
|
<span>{{ scope.row.billTypeValue }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="开票名称" align="center">
|
|
<template slot-scope="scope">
|
|
<span>{{ scope.row.openTickName }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="开票信息" align="center">
|
|
<template slot-scope="scope">
|
|
<span>{{ scope.row.invoiceInfo }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="开票金额" align="center">
|
|
<template slot-scope="scope">
|
|
<span>{{ scope.row.oneBillMoney }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="合格证" align="center">
|
|
<template slot-scope="scope">
|
|
<span class="bluezi" @click="handleLook(scope.row.hgzImageUrl)">查看</span>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</div>
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<div class="span-sty">提前领取发票原因</div>
|
|
<el-form-item><el-input v-model="formobj.reason" class="addinputInfo addinputw" clearable placeholder=""/></el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<div class="title">《欠款承诺书》(欠款人、担保人同签)</div>
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item>
|
|
<upload ref="uploadImg" v-model="image_list1" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<div class="title">《公司股东会对外担保决议》(公司担保)</div>
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item>
|
|
<upload ref="uploadImg" v-model="image_list2" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<div class="title">《责任人担保承诺书》</div>
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item>
|
|
<upload ref="uploadImg" v-model="image_list3" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<div class="title">资方信审截图</div>
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item>
|
|
<upload ref="uploadImg" v-model="image_list4" :accept="accept" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
</el-form>
|
|
</div>
|
|
<el-dialog :visible.sync="dialogVisible" :append-to-body="true">
|
|
<el-image style="width: 178px;height: 178px;padding-left: 5px" v-for="(item,index) in srcList" :key="index" :src="item" :preview-src-list="srcList"></el-image>
|
|
</el-dialog>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import { fetchDetailsBySid, submit, saveOrUpdate } from '@/api/anruifinmanagement/arrearscollection'
|
|
import upload from '@/components/uploadFile/upload'
|
|
|
|
export default {
|
|
name: 'ArrearsScollectionAdd',
|
|
components: {
|
|
upload
|
|
},
|
|
data() {
|
|
return {
|
|
submitdisabled: false,
|
|
dialogVisible: false,
|
|
srcList: [],
|
|
viewTitle: '',
|
|
tableKey: 0,
|
|
billingKey: 1,
|
|
index: 0,
|
|
accept: '.jpg,.jpeg,.png,.JPG,.JPEG',
|
|
image_list1: [],
|
|
image_list2: [],
|
|
image_list3: [],
|
|
image_list4: [],
|
|
formobj: {
|
|
applyDate: '',
|
|
arrearsMoney: '',
|
|
arrearsOpenYYKey: '',
|
|
arrearsOpenYYValue: '',
|
|
billNo: '',
|
|
billStateKey: '',
|
|
billStateValue: '',
|
|
cldjhtApplicationAppendxs: [],
|
|
contractNo: '',
|
|
contractSid: '',
|
|
createByName: '',
|
|
customerName: '',
|
|
customerSid: '',
|
|
deptName: '',
|
|
deptSid: '',
|
|
fjApplicationAppendxs: [],
|
|
finBillTrailers: [],
|
|
finBillVehicles: [],
|
|
isDelayBill: '',
|
|
isHighAndLowOpen: '',
|
|
isLQOrigInvoice: '',
|
|
khkpsqsApplicationAppendxs: [],
|
|
kpxxqrsApplicationAppendxs: [],
|
|
modelName: '',
|
|
modelSid: '',
|
|
nodeSid: '',
|
|
nodeState: '',
|
|
oneBillMoney: '',
|
|
openTickName: '',
|
|
openTickSid: '',
|
|
openTickTypeKey: '',
|
|
openTickTypeValue: '',
|
|
openTickUnitName: '',
|
|
openTickUnitSid: '',
|
|
orgSidPath: '',
|
|
pcgsgdhdwdbjy: [],
|
|
pczfxsjt: [],
|
|
pczrrdbcns: [],
|
|
procDefId: '',
|
|
procInstSid: '',
|
|
remarks: '',
|
|
reason: '',
|
|
returnedMoneyDate: '',
|
|
saleDeptName: '',
|
|
saleDeptSid: '',
|
|
saleTypeKey: '',
|
|
saleTypeValue: '',
|
|
sid: '',
|
|
staffName: '',
|
|
staffSid: '',
|
|
totalBillMoney: '',
|
|
useOrgSid: '',
|
|
createBySid: '',
|
|
qkkpBillNo: '',
|
|
zjApplicationAppendxs: []
|
|
},
|
|
rules: {}
|
|
}
|
|
},
|
|
|
|
methods: {
|
|
showAdd(sid) {
|
|
this.viewTitle = '【新增】欠款领票及领手续'
|
|
this.$nextTick(() => {
|
|
this.$refs['form_obj'].clearValidate()
|
|
})
|
|
fetchDetailsBySid(sid).then((res) => {
|
|
if (res.success) {
|
|
this.formobj = res.data
|
|
this.formobj.sid = ''
|
|
this.formobj.qkkpBillNo = res.data.billNo
|
|
}
|
|
})
|
|
},
|
|
showEdit(row) {
|
|
this.viewTitle = '【编辑】欠款领票及领手续'
|
|
this.$nextTick(() => {
|
|
this.$refs['form_obj'].clearValidate()
|
|
})
|
|
fetchDetailsBySid(row.sid).then((res) => {
|
|
if (res.success) {
|
|
this.formobj = res.data
|
|
this.formobj.instanceId = res.data.procInstSid
|
|
if (this.formobj.fjApplicationAppendxs.length > 0) {
|
|
this.formobj.fjApplicationAppendxs.forEach((e) => {
|
|
this.image_list1.push({
|
|
name: e.fileName,
|
|
url: e.fileUrl
|
|
})
|
|
})
|
|
}
|
|
if (this.formobj.pcgsgdhdwdbjy.length > 0) {
|
|
this.formobj.pcgsgdhdwdbjy.forEach((e) => {
|
|
this.image_list2.push({
|
|
name: e.fileName,
|
|
url: e.fileUrl
|
|
})
|
|
})
|
|
}
|
|
if (this.formobj.pczrrdbcns.length > 0) {
|
|
this.formobj.pczrrdbcns.forEach((e) => {
|
|
this.image_list3.push({
|
|
name: e.fileName,
|
|
url: e.fileUrl
|
|
})
|
|
})
|
|
}
|
|
if (this.formobj.pczfxsjt.length > 0) {
|
|
this.formobj.pczfxsjt.forEach((e) => {
|
|
this.image_list4.push({
|
|
name: e.fileName,
|
|
url: e.fileUrl
|
|
})
|
|
})
|
|
}
|
|
}
|
|
})
|
|
},
|
|
handleLook(row) {
|
|
this.srcList = []
|
|
this.dialogVisible = true
|
|
this.srcList = row
|
|
},
|
|
totalBillMoney() {
|
|
var aa = 0
|
|
if (this.formobj.finBillVehicles.length > 0) {
|
|
aa = parseInt(this.formobj.finBillVehicles.length) * parseInt(this.formobj.oneBillMoney)
|
|
}
|
|
return aa
|
|
},
|
|
handleSave() {
|
|
this.$refs['form_obj'].validate((valid) => {
|
|
if (valid) {
|
|
this.getUrl()
|
|
this.submitdisabled = true
|
|
saveOrUpdate(this.formobj).then((res) => {
|
|
if (res.success) {
|
|
this.$message({ showClose: true, type: 'success', message: '保存成功' })
|
|
this.handleReturn('true')
|
|
} else {
|
|
this.submitdisabled = false
|
|
}
|
|
}).catch(() => {
|
|
this.submitdisabled = false
|
|
})
|
|
}
|
|
})
|
|
},
|
|
handleSubmit() {
|
|
if (this.image_list1.length === 0) {
|
|
this.$message({ showClose: true, type: 'error', message: '请上传欠款承诺书' })
|
|
return
|
|
}
|
|
if (this.image_list3.length === 0) {
|
|
this.$message({ showClose: true, type: 'error', message: '请上传责任人担保承诺书' })
|
|
return
|
|
}
|
|
this.$refs['form_obj'].validate((valid) => {
|
|
if (valid) {
|
|
this.getUrl()
|
|
this.submitdisabled = true
|
|
submit(this.formobj).then((res) => {
|
|
if (res.success) {
|
|
this.$message({ showClose: true, type: 'success', message: '提交成功' })
|
|
this.handleReturn('true')
|
|
} else {
|
|
this.submitdisabled = false
|
|
}
|
|
}).catch(() => {
|
|
this.submitdisabled = false
|
|
})
|
|
}
|
|
})
|
|
},
|
|
getUrl() {
|
|
if (this.image_list1.length > 0) {
|
|
const aa = []
|
|
for (var i = 0; i < this.image_list1.length; i++) {
|
|
aa.push({
|
|
attachType: '',
|
|
billAppSid: '',
|
|
createByName: window.sessionStorage.getItem('name'),
|
|
fileSid: '',
|
|
fileName: this.image_list1[i].name,
|
|
fileType: this.image_list1[i].name.substr(this.image_list1[i].name.lastIndexOf('.')),
|
|
fileUrl: this.image_list1[i].url,
|
|
sid: ''
|
|
})
|
|
}
|
|
this.formobj.fjApplicationAppendxs = aa
|
|
} else {
|
|
this.formobj.fjApplicationAppendxs = []
|
|
}
|
|
if (this.image_list2.length > 0) {
|
|
const aa = []
|
|
for (var k = 0; k < this.image_list2.length; k++) {
|
|
aa.push({
|
|
attachType: '',
|
|
billAppSid: '',
|
|
createByName: window.sessionStorage.getItem('name'),
|
|
fileSid: '',
|
|
fileName: this.image_list2[k].name,
|
|
fileType: this.image_list2[k].name.substr(this.image_list2[k].name.lastIndexOf('.')),
|
|
fileUrl: this.image_list2[k].url,
|
|
sid: ''
|
|
})
|
|
}
|
|
this.formobj.pcgsgdhdwdbjy = aa
|
|
} else {
|
|
this.formobj.pcgsgdhdwdbjy = []
|
|
}
|
|
if (this.image_list3.length > 0) {
|
|
const aa = []
|
|
for (var p = 0; p < this.image_list3.length; p++) {
|
|
aa.push({
|
|
attachType: '',
|
|
billAppSid: '',
|
|
createByName: window.sessionStorage.getItem('name'),
|
|
fileSid: '',
|
|
fileName: this.image_list3[p].name,
|
|
fileType: this.image_list3[p].name.substr(this.image_list3[p].name.lastIndexOf('.')),
|
|
fileUrl: this.image_list3[p].url,
|
|
sid: ''
|
|
})
|
|
}
|
|
this.formobj.pczrrdbcns = aa
|
|
} else {
|
|
this.formobj.pczrrdbcns = []
|
|
}
|
|
if (this.image_list4.length > 0) {
|
|
const aa = []
|
|
for (var q = 0; q < this.image_list4.length; q++) {
|
|
aa.push({
|
|
attachType: '',
|
|
billAppSid: '',
|
|
createByName: window.sessionStorage.getItem('name'),
|
|
fileSid: '',
|
|
fileName: this.image_list4[q].name,
|
|
fileType: this.image_list4[q].name.substr(this.image_list4[q].name.lastIndexOf('.')),
|
|
fileUrl: this.image_list4[q].url,
|
|
sid: ''
|
|
})
|
|
}
|
|
this.formobj.pczfxsjt = aa
|
|
} else {
|
|
this.formobj.pczfxsjt = []
|
|
}
|
|
},
|
|
// 关闭、返回到列表页面
|
|
handleReturn(isreload) {
|
|
if (isreload === 'true') this.$emit('reloadlist')
|
|
this.formobj = {
|
|
applyDate: '',
|
|
arrearsMoney: '',
|
|
arrearsOpenYYKey: '',
|
|
arrearsOpenYYValue: '',
|
|
billNo: '',
|
|
billStateKey: '',
|
|
billStateValue: '',
|
|
cldjhtApplicationAppendxs: [],
|
|
contractNo: '',
|
|
contractSid: '',
|
|
createByName: '',
|
|
customerName: '',
|
|
customerSid: '',
|
|
deptName: '',
|
|
deptSid: '',
|
|
fjApplicationAppendxs: [],
|
|
finBillTrailers: [],
|
|
finBillVehicles: [],
|
|
isDelayBill: '',
|
|
isHighAndLowOpen: '',
|
|
isLQOrigInvoice: '',
|
|
khkpsqsApplicationAppendxs: [],
|
|
kpxxqrsApplicationAppendxs: [],
|
|
modelName: '',
|
|
modelSid: '',
|
|
nodeSid: '',
|
|
nodeState: '',
|
|
oneBillMoney: '',
|
|
openTickName: '',
|
|
openTickSid: '',
|
|
openTickTypeKey: '',
|
|
openTickTypeValue: '',
|
|
openTickUnitName: '',
|
|
openTickUnitSid: '',
|
|
orgSidPath: '',
|
|
pcgsgdhdwdbjy: [],
|
|
pczfxsjt: [],
|
|
pczrrdbcns: [],
|
|
procDefId: '',
|
|
procInstSid: '',
|
|
remarks: '',
|
|
reason: '',
|
|
returnedMoneyDate: '',
|
|
saleDeptName: '',
|
|
saleDeptSid: '',
|
|
saleTypeKey: '',
|
|
saleTypeValue: '',
|
|
sid: '',
|
|
staffName: '',
|
|
staffSid: '',
|
|
totalBillMoney: '',
|
|
useOrgSid: '',
|
|
createBySid: '',
|
|
qkkpBillNo: '',
|
|
zjApplicationAppendxs: []
|
|
}
|
|
this.submitdisabled = false
|
|
this.$refs['form_obj'].resetFields()
|
|
this.image_list1 = []
|
|
this.image_list2 = []
|
|
this.image_list3 = []
|
|
this.image_list4 = []
|
|
this.$emit('doback')
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style scoped>
|
|
.span-sty {
|
|
width: 130px !important;
|
|
}
|
|
.addinputInfo {
|
|
margin-left: 120px !important;
|
|
}
|
|
</style>
|
|
|