修改bug
This commit is contained in:
parent
5f4a1d3155
commit
93807b701f
@ -80,7 +80,7 @@ import api from "@/services/caseManagement";
|
|||||||
},
|
},
|
||||||
async handleCaseShow(scope){
|
async handleCaseShow(scope){
|
||||||
let previewUrl = await this.getProofFile(scope.row.proofUrl)
|
let previewUrl = await this.getProofFile(scope.row.proofUrl)
|
||||||
this.fileDialog = {showfile:{url:previewUrl},filelist:[]}
|
this.fileDialog = {showfile:{fullUrl:previewUrl,url:scope.row.proofUrl},filelist:[]}
|
||||||
},
|
},
|
||||||
async getProofFile(url){
|
async getProofFile(url){
|
||||||
let previewUrl = await this.$fetchApi.viewFullFile({path: url})
|
let previewUrl = await this.$fetchApi.viewFullFile({path: url})
|
||||||
|
|||||||
@ -1,750 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div>
|
|
||||||
<el-dialog
|
|
||||||
:title="addCaseDialog.title"
|
|
||||||
:visible="true"
|
|
||||||
width="880px"
|
|
||||||
append-to-body
|
|
||||||
:close-on-click-modal="false"
|
|
||||||
@close="handleClose"
|
|
||||||
>
|
|
||||||
|
|
||||||
<div >
|
|
||||||
|
|
||||||
<el-steps :active="presentStep" align-center>
|
|
||||||
<el-step v-for="(item,inx) in transferStep" :key="inx" :title="item.title" :description="item.description"></el-step>
|
|
||||||
</el-steps>
|
|
||||||
|
|
||||||
<!-- 基本信息 -->
|
|
||||||
<div v-if="presentStep === 1">
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<div class="height-48 line-height-48 f18 color-000 m-v-16 p-h-24">基本信息</div>
|
|
||||||
<div class="p-h-24">
|
|
||||||
<el-form ref="ruleFormBase"
|
|
||||||
:model="baseInfo"
|
|
||||||
:rules="rulesClient"
|
|
||||||
label-width="150px"
|
|
||||||
class="demo-ruleForm">
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="金融机构名称" prop="financialOrgName">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="baseInfo.financialOrgName"
|
|
||||||
placeholder="请输入金融机构名称"
|
|
||||||
clearable
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="社会统一信用代码" prop="financialOrgCode">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="baseInfo.financialOrgCode"
|
|
||||||
placeholder="请输入社会统一信用代码"
|
|
||||||
clearable
|
|
||||||
maxlength="18"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="案件名称" prop="caseName">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入案件名称"
|
|
||||||
v-model="baseInfo.caseName">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="案件编号" prop="caseNo">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入案件编号"
|
|
||||||
v-model="baseInfo.caseNo">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="金融产品类型" prop="productTypeId">
|
|
||||||
<el-select v-model="baseInfo.productTypeId"
|
|
||||||
clearable placeholder="请选择金融产品类型"
|
|
||||||
class="width100">
|
|
||||||
<el-option
|
|
||||||
v-for="item in financialProductsTypeOptions"
|
|
||||||
:key="item.code"
|
|
||||||
:label="item.codeName"
|
|
||||||
:value="item.code">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="标的金额" prop="moneyAmount">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入内容"
|
|
||||||
v-model="baseInfo.moneyAmount">
|
|
||||||
<template slot="append">元</template>
|
|
||||||
</el-input>
|
|
||||||
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="逾期次数" prop="overdueTimes">
|
|
||||||
<!-- <el-select v-model="baseInfo.overdueTimes"
|
|
||||||
clearable placeholder="请选择逾期次数"
|
|
||||||
class="width100">
|
|
||||||
<el-option
|
|
||||||
v-for="item in operateMethodOptions"
|
|
||||||
:key="item"
|
|
||||||
:label="item"
|
|
||||||
:value="item">
|
|
||||||
</el-option>
|
|
||||||
</el-select> -->
|
|
||||||
<el-input-number v-model="baseInfo.overdueTimes" :min="0" :max="100" class="width100"></el-input-number>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="案件描述" prop="caseDescr">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入内容"
|
|
||||||
v-model="baseInfo.caseDescr">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- 当事人信息 -->
|
|
||||||
<div v-else-if="presentStep === 2">
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<div class="height-48 line-height-48 f18 color-000 m-v-16 p-h-24">案件当事人</div>
|
|
||||||
<div class="p-h-24">
|
|
||||||
<div class="border-solid-lighter-1 p-h-24 mb-16">
|
|
||||||
<div class="flex-row justify-content-between height-48 line-height-48 f14 border-b-solid-lighter-1 mb-16">
|
|
||||||
<div class="color-000">债权人</div>
|
|
||||||
<div class="color-text-regular cursor-pointer" @click="handleReset">清空<i class="el-icon-close"></i></div>
|
|
||||||
</div>
|
|
||||||
<el-form ref="ruleFormCreditor"
|
|
||||||
:model="creditorInfo"
|
|
||||||
:rules="rulesClientCreditor"
|
|
||||||
label-width="150px"
|
|
||||||
class="demo-ruleForm">
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="债权人" prop="creditorName">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="creditorInfo.creditorName"
|
|
||||||
placeholder="请输入债权人"
|
|
||||||
clearable
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="社会统一信用代码" prop="creditorOrgCode">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="creditorInfo.creditorOrgCode"
|
|
||||||
placeholder="请输入社会统一信用代码"
|
|
||||||
clearable
|
|
||||||
maxlength="18"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="法人姓名" prop="creditorLegal">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入法人姓名"
|
|
||||||
v-model="creditorInfo.creditorLegal">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="法人身份证号" prop="creditorIdcard">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入法人身份证号"
|
|
||||||
v-model="creditorInfo.creditorIdcard"
|
|
||||||
maxlength="18">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="法人手机号" prop="creditorPhone">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入法人手机号"
|
|
||||||
v-model="creditorInfo.creditorPhone"
|
|
||||||
maxlength="11"
|
|
||||||
>
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="公司地址" prop="creditorAddr">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入公司地址"
|
|
||||||
v-model="creditorInfo.creditorAddr">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="邮编" prop="creditorMail">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入邮编"
|
|
||||||
v-model="creditorInfo.creditorMail"
|
|
||||||
maxlength="6"
|
|
||||||
>
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="代理人" prop="creditorAgent">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入代理人"
|
|
||||||
v-model="creditorInfo.creditorAgent">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
<div class="border-solid-lighter-1 p-h-24">
|
|
||||||
<div class="flex-row justify-content-between f14 border-b-solid-lighter-1 mb-8 p-v-8 align-items-center">
|
|
||||||
<div class="color-000">债务人</div>
|
|
||||||
<el-button size="small" type="primary" @click="handleAdd">新增债务人<i class="el-icon-plus"></i></el-button>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<el-form ref="ruleFormObligor"
|
|
||||||
:model="obligorInfoForm"
|
|
||||||
label-width="150px"
|
|
||||||
class="demo-ruleForm">
|
|
||||||
<div v-for="(item,inx) in obligorInfoForm.debtorEntityList" :key="inx">
|
|
||||||
<div class="flex-row justify-content-between align-items-center height-40 f14 mb-16">
|
|
||||||
<div class="color-text-primary">债务人{{inx+1}}</div>
|
|
||||||
<div class="color-text-regular cursor-pointer" @click="handleRemoveDomain(item)">删除<i class="el-icon-close"></i></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="债务人姓名" :prop="'debtorEntityList.' + inx + '.name'" :rules="{required: true, message: '请输入债权人姓名', trigger: 'blur'}">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="obligorInfoForm.debtorEntityList[inx].name"
|
|
||||||
placeholder="请输入债务人姓名"
|
|
||||||
clearable
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="证件类型" :prop="'debtorEntityList.' + inx + '.cardTypeId'" :rules="{required: true, message: '请选择证件类型', trigger: 'blur'}">
|
|
||||||
<el-select v-model="obligorInfoForm.debtorEntityList[inx].cardTypeId"
|
|
||||||
clearable placeholder="请选择证件类型"
|
|
||||||
class="width100">
|
|
||||||
<el-option
|
|
||||||
v-for="item in idTypeOptions"
|
|
||||||
:key="item.code"
|
|
||||||
:label="item.codeName"
|
|
||||||
:value="item.code">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="证件号码" :prop="'debtorEntityList.' + inx + '.cardNo'"
|
|
||||||
:rules=" [
|
|
||||||
{ required: true, message: '请输入证件号', trigger: 'change',},
|
|
||||||
{ pattern: /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/, message: '请输入正确的身份证号', trigger: ['blur', 'change']}
|
|
||||||
]">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入证件号码"
|
|
||||||
v-model="obligorInfoForm.debtorEntityList[inx].cardNo"
|
|
||||||
maxlength="18"
|
|
||||||
>
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="手机号码" :prop="'debtorEntityList.' + inx + '.phone'" :rules="[
|
|
||||||
{ required: true, message: '请输入法人手机号', trigger: 'change',},
|
|
||||||
{ pattern: /^(13[0-9]{9})|(18[0-9]{9})|(14[0-9]{9})|(17[0-9]{9})|(15[0-9]{9})|(19[0-9]{9})$/, message: '请输入正确的手机号码', trigger: ['blur', 'change']}
|
|
||||||
]">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入手机号码"
|
|
||||||
v-model="obligorInfoForm.debtorEntityList[inx].phone"
|
|
||||||
maxlength="11"
|
|
||||||
>
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="地址" :prop="'debtorEntityList.' + inx + '.addr'" :rules="{ required: true, message: '请输入地址', trigger: 'change',}">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入地址"
|
|
||||||
v-model="obligorInfoForm.debtorEntityList[inx].addr">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="邮编" :prop="'debtorEntityList.' + inx + '.mail'" :rules="{ required: true, message: '请输入邮编', trigger: 'change',}">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入邮编"
|
|
||||||
v-model="obligorInfoForm.debtorEntityList[inx].mail"
|
|
||||||
maxlength="6">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</div>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- 模板选择 -->
|
|
||||||
<div v-else-if="presentStep === 3">
|
|
||||||
|
|
||||||
<el-form ref="ruleFormTemplate"
|
|
||||||
:model="queryParam"
|
|
||||||
:rules="rulesClientTemplate"
|
|
||||||
label-width="150px"
|
|
||||||
class="demo-ruleForm">
|
|
||||||
<div>
|
|
||||||
<div class="height-48 line-height-48 f18 color-000 m-v-16 p-h-24">模板话术</div>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="话术模板" prop="tpSpeechcraftId">
|
|
||||||
<el-select v-model="queryParam.tpSpeechcraftId"
|
|
||||||
clearable placeholder="请选择模板话术"
|
|
||||||
class="width100">
|
|
||||||
<el-option
|
|
||||||
v-for="item in speechcraftTemplateOptions"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<div class="height-48 line-height-48 f18 color-000 m-v-16 p-h-24">调解模板</div>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="调解模板" prop="tpMediateId">
|
|
||||||
<el-select v-model="queryParam.tpMediateId"
|
|
||||||
clearable placeholder="请选择调解模板"
|
|
||||||
class="width100">
|
|
||||||
<el-option
|
|
||||||
v-for="item in mediationTemplateOptions"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</div>
|
|
||||||
</el-form>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<!-- 材料上传 -->
|
|
||||||
<div v-else-if="presentStep === 4">
|
|
||||||
<div class="height-48 line-height-48 f18 color-000 m-v-16 p-h-24">证据材料</div>
|
|
||||||
<div class="p-h-24">
|
|
||||||
<upload-file-name :file-list="fileList" :max-count="20"
|
|
||||||
:show-file-name="true"
|
|
||||||
@handleUploadFile="handleUploadFile">
|
|
||||||
</upload-file-name>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- 完成 -->
|
|
||||||
<div v-else-if="presentStep === 5">
|
|
||||||
<el-result icon="success" title="案件创建完成" subTitle="案件创建完成,继续处理其他案件">
|
|
||||||
<template slot="extra">
|
|
||||||
<el-button type="primary" size="medium" @click="handleClose">好的</el-button>
|
|
||||||
</template>
|
|
||||||
</el-result>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<span slot="footer" class="dialog-footer" v-if="presentStep<5">
|
|
||||||
<el-button @click="handleClose">取消</el-button>
|
|
||||||
<el-button
|
|
||||||
v-if="presentStep > 1 "
|
|
||||||
type="primary"
|
|
||||||
@click="presentStep--">上一步</el-button>
|
|
||||||
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
v-show="presentStep<4"
|
|
||||||
@click="handleNextStep">下一步</el-button>
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
v-show="presentStep === 4"
|
|
||||||
@click="handleSubmit">确认
|
|
||||||
</el-button>
|
|
||||||
</span>
|
|
||||||
</el-dialog>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
<script>
|
|
||||||
import api from "@/services/caseManagement";
|
|
||||||
export default {
|
|
||||||
components: {
|
|
||||||
uploadFileName: () => import('@/components/uploadFileName.vue'),//上传
|
|
||||||
},
|
|
||||||
props: {
|
|
||||||
addCaseDialog: {
|
|
||||||
type: Object,
|
|
||||||
default: () => {
|
|
||||||
return {}
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
const moneyAmountValidate = (rule,value,callback)=>{
|
|
||||||
if (!value){
|
|
||||||
callback(new Error('请输入标的金额'));
|
|
||||||
}else if (!/^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0.\d{1,2}$/.test(value)){
|
|
||||||
callback(new Error('只能输入两位小数的金额!'));
|
|
||||||
}else if(!(0<parseInt(value)&&parseInt(value)<100000000)){
|
|
||||||
callback(new Error('只能输入大于1小于1亿的金额!'));
|
|
||||||
}else{
|
|
||||||
callback()
|
|
||||||
}
|
|
||||||
};
|
|
||||||
return {
|
|
||||||
|
|
||||||
transferStep:[
|
|
||||||
{id:1,title:'基本信息',description:'录入案件基本信息'},
|
|
||||||
{id:2,title:'当事人信息',description:'录入当事人信息'},
|
|
||||||
{id:3,title:'模板选择',description:'选择模板'},
|
|
||||||
{id:4,title:'材料上传',description:'上传案件材料'},
|
|
||||||
{id:5,title:'完成',description:'完成案件创建'},
|
|
||||||
],
|
|
||||||
presentStep:1,
|
|
||||||
|
|
||||||
//-----------------------------基本信息-------------------------
|
|
||||||
baseInfo:{
|
|
||||||
financialOrgName:'',//金融机构名称
|
|
||||||
financialOrgCode:'',//社会统一信用代码
|
|
||||||
caseName:'',//案件名称
|
|
||||||
caseNo:'',//案件编号
|
|
||||||
productTypeId:'',//金融产品类型
|
|
||||||
moneyAmount:'',//标的金额
|
|
||||||
overdueTimes:0,//逾期次数
|
|
||||||
caseDescr:'',//案件描述
|
|
||||||
},
|
|
||||||
rulesClient: {
|
|
||||||
financialOrgName: [
|
|
||||||
{ required: true, message: '请输入机构名称', trigger: 'change',},
|
|
||||||
],
|
|
||||||
financialOrgCode: [
|
|
||||||
{ required: true, message: '请输入社会统一信用代码', trigger: 'change',},
|
|
||||||
],
|
|
||||||
caseName: [
|
|
||||||
{ required: true, message: '请输入案件名称', trigger: 'change',},
|
|
||||||
],
|
|
||||||
caseNo: [
|
|
||||||
{ required: true, message: '请输入案件编号', trigger: 'change',},
|
|
||||||
],
|
|
||||||
productTypeId: [
|
|
||||||
{ required: true, message: '请选择金融产品类型', trigger: 'change',},
|
|
||||||
],
|
|
||||||
moneyAmount: [
|
|
||||||
{ required: true, validator: moneyAmountValidate, trigger: 'change',},
|
|
||||||
],
|
|
||||||
caseDescr:[
|
|
||||||
{ required: true, message: '请输入案件描述', trigger: 'change',},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
financialProductsTypeOptions:[],//金融产品类型
|
|
||||||
|
|
||||||
//----------------------------案件当事人-------------------
|
|
||||||
// 债权人
|
|
||||||
creditorInfo:{
|
|
||||||
creditorName:'',//债权人
|
|
||||||
creditorOrgCode:'',//债权人机构代码
|
|
||||||
creditorLegal:'',//法人
|
|
||||||
creditorIdcard:'',//法人身份证
|
|
||||||
creditorPhone:'',//法人手机
|
|
||||||
creditorAddr:'',//公司地址
|
|
||||||
creditorMail:'',//邮编
|
|
||||||
creditorAgent:'',//代理人
|
|
||||||
},
|
|
||||||
rulesClientCreditor: {
|
|
||||||
creditorName: [
|
|
||||||
{ required: true, message: '请输入债权人', trigger: 'change',},
|
|
||||||
],
|
|
||||||
creditorOrgCode: [
|
|
||||||
{ required: true, message: '请输入债权人机构代码', trigger: 'change',},
|
|
||||||
],
|
|
||||||
creditorLegal: [
|
|
||||||
{ required: true, message: '请输入法人', trigger: 'change',},
|
|
||||||
],
|
|
||||||
creditorIdcard: [
|
|
||||||
{ required: true, message: '请输入法人身份证号', trigger: 'change',},
|
|
||||||
{ pattern: /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/, message: '请输入正确的身份证号', trigger: ['blur', 'change']}
|
|
||||||
],
|
|
||||||
creditorPhone: [
|
|
||||||
{ required: true, message: '请输入法人手机号', trigger: 'change',},
|
|
||||||
{ pattern: /^(13[0-9]{9})|(18[0-9]{9})|(14[0-9]{9})|(17[0-9]{9})|(15[0-9]{9})|(19[0-9]{9})$/, message: '请输入正确的手机号码', trigger: ['blur', 'change']}
|
|
||||||
],
|
|
||||||
creditorAddr: [
|
|
||||||
{ required: true, message: '请输入公司地址', trigger: 'change',},
|
|
||||||
],
|
|
||||||
// creditorAgent: [
|
|
||||||
// { required: true, message: '请输入代理人', trigger: 'change',},
|
|
||||||
// ],
|
|
||||||
},
|
|
||||||
// 债务人
|
|
||||||
idTypeOptions:[],
|
|
||||||
obligorInfoForm:{
|
|
||||||
debtorEntityList:[
|
|
||||||
{
|
|
||||||
name:'',//债务人姓名
|
|
||||||
phone:'',//债务人电话
|
|
||||||
cardTypeId:'',//证件类型
|
|
||||||
addr:'',//地址
|
|
||||||
cardNo:'',//证件号
|
|
||||||
mail:'',//邮编
|
|
||||||
|
|
||||||
}
|
|
||||||
],
|
|
||||||
},
|
|
||||||
|
|
||||||
obligorRulesClient:{
|
|
||||||
name: [
|
|
||||||
{ required: true, message: '请输入债务人姓名', trigger: 'change',},
|
|
||||||
],
|
|
||||||
phone: [
|
|
||||||
{ required: true, message: '请输入法人手机号', trigger: 'change',},
|
|
||||||
{ pattern: /^(13[0-9]{9})|(18[0-9]{9})|(14[0-9]{9})|(17[0-9]{9})|(15[0-9]{9})|(19[0-9]{9})$/, message: '请输入正确的手机号码', trigger: ['blur', 'change']}
|
|
||||||
],
|
|
||||||
cardTypeId: [
|
|
||||||
{ required: true, message: '请选择证件类型', trigger: 'change',},
|
|
||||||
],
|
|
||||||
addr: [
|
|
||||||
{ required: true, message: '请输入地址', trigger: 'change',},
|
|
||||||
],
|
|
||||||
cardNo: [
|
|
||||||
{ required: true, message: '请输入证件号', trigger: 'change',},
|
|
||||||
{ pattern: /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/, message: '请输入正确的身份证号', trigger: ['blur', 'change']}
|
|
||||||
],
|
|
||||||
mail: [
|
|
||||||
{ required: true, message: '请输入邮编', trigger: 'change',},
|
|
||||||
{ pattern: /^\d{6}$/, message: '请输入正确的邮编', trigger: ['blur', 'change']}
|
|
||||||
],
|
|
||||||
},
|
|
||||||
|
|
||||||
//--------------------------调解模板----------------------------------
|
|
||||||
queryParam:{
|
|
||||||
tpMediateId:'',//调解模板id
|
|
||||||
tpSpeechcraftId:'',//话术模板
|
|
||||||
},
|
|
||||||
rulesClientTemplate:{
|
|
||||||
tpMediateId: [
|
|
||||||
{ required: true, message: '请选择调解模板', trigger: 'change',},
|
|
||||||
],
|
|
||||||
tpSpeechcraftId: [
|
|
||||||
{ required: true, message: '请选择话术模板', trigger: 'change',},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
fileList:[],//证据材料
|
|
||||||
speechcraftTemplateOptions:[],//话术模板
|
|
||||||
mediationTemplateOptions:[],//调解模板
|
|
||||||
|
|
||||||
};
|
|
||||||
},
|
|
||||||
mounted () {
|
|
||||||
this.getDict();//获取金融产品类型
|
|
||||||
this.getDictIdType();
|
|
||||||
this.getSpeechcraftTemplateList(),//话术模板
|
|
||||||
this.getTemplateList();//调解模板
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
|
|
||||||
// 获取金融产品类型
|
|
||||||
getDict(){
|
|
||||||
let data = {
|
|
||||||
type:'financial'
|
|
||||||
}
|
|
||||||
api.getDict(data).then(res => {
|
|
||||||
if (!res.code) {
|
|
||||||
this.financialProductsTypeOptions = res;
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 获取证件类型
|
|
||||||
getDictIdType(){
|
|
||||||
let data = {
|
|
||||||
type:'certificates'
|
|
||||||
}
|
|
||||||
api.getDict(data).then(res => {
|
|
||||||
if (!res.code) {
|
|
||||||
this.idTypeOptions = res;
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 新增
|
|
||||||
handleAdd(){
|
|
||||||
this.obligorInfoForm.debtorEntityList.push({
|
|
||||||
name:'',//债务人姓名
|
|
||||||
phone:'',//债务人电话
|
|
||||||
cardTypeId:'',//证件类型
|
|
||||||
addr:'',//地址
|
|
||||||
cardNo:'',//证件号
|
|
||||||
mail:'',//邮编
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 删除
|
|
||||||
handleRemoveDomain(item) {
|
|
||||||
var index = this.obligorInfoForm.debtorEntityList.indexOf(item)
|
|
||||||
if (index !== -1) {
|
|
||||||
this.obligorInfoForm.debtorEntityList.splice(index, 1)
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 清空
|
|
||||||
handleReset(){
|
|
||||||
for (let key in this.creditorInfo) {
|
|
||||||
this.creditorInfo[key] = ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 模板话术
|
|
||||||
getSpeechcraftTemplateList(){
|
|
||||||
let data = {
|
|
||||||
current: 1,
|
|
||||||
name: "",
|
|
||||||
size: 300,
|
|
||||||
type: 2,
|
|
||||||
}
|
|
||||||
api.getTemplateList(data).then(res => {
|
|
||||||
if (!res.code) {
|
|
||||||
this.speechcraftTemplateOptions = res.records;
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 调解模板
|
|
||||||
getTemplateList(){
|
|
||||||
let data = {
|
|
||||||
current: 1,
|
|
||||||
name: "",
|
|
||||||
size: 300,
|
|
||||||
type: 1,
|
|
||||||
}
|
|
||||||
api.getTemplateList(data).then(res => {
|
|
||||||
if (!res.code) {
|
|
||||||
this.mediationTemplateOptions = res.records;
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 下一步
|
|
||||||
handleNextStep(){
|
|
||||||
if(this.presentStep === 1){
|
|
||||||
this.$refs.ruleFormBase.validate((valid) => {
|
|
||||||
if (valid){this.presentStep++}
|
|
||||||
})
|
|
||||||
}else if(this.presentStep === 2){
|
|
||||||
this.$refs.ruleFormCreditor.validate((valid) => {
|
|
||||||
if (valid){
|
|
||||||
this.$refs.ruleFormObligor.validate((valid) => {
|
|
||||||
if (valid){this.presentStep++}
|
|
||||||
})
|
|
||||||
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}else if(this.presentStep === 3){
|
|
||||||
this.$refs.ruleFormTemplate.validate((valid) => {
|
|
||||||
if (valid){this.presentStep++}
|
|
||||||
})
|
|
||||||
}else{
|
|
||||||
this.presentStep++
|
|
||||||
}
|
|
||||||
},
|
|
||||||
handleSubmit(){
|
|
||||||
|
|
||||||
if(!this.$clickThrottle()) { return }//防止重复点击
|
|
||||||
|
|
||||||
let data = {
|
|
||||||
...this.baseInfo,//基本信息
|
|
||||||
...this.creditorInfo,//债权人信息
|
|
||||||
...this.obligorInfoForm,//债务人
|
|
||||||
...this.queryParam,//模板选择
|
|
||||||
caseFileEntityList:this.fileList//证据材料
|
|
||||||
}
|
|
||||||
console.log('获取传给后台的信息',data)
|
|
||||||
api.addCaseInfo(data).then(res => {
|
|
||||||
this.presentStep++
|
|
||||||
this.$parent.getCaseInfoList(1)
|
|
||||||
this.$parent.getCaseCount()
|
|
||||||
})
|
|
||||||
|
|
||||||
},
|
|
||||||
// 上传
|
|
||||||
handleUploadFile(fileList){
|
|
||||||
console.log('获取上传文件信息',fileList)
|
|
||||||
fileList = JSON.parse(JSON.stringify(fileList))
|
|
||||||
this.fileList = fileList.map((item,i) => {
|
|
||||||
return {
|
|
||||||
url: item.url,
|
|
||||||
fileName:item.fileName,
|
|
||||||
name:item.fileName
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
handleClose() {
|
|
||||||
this.$emit('update:addCaseDialog', null)
|
|
||||||
},
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
<style scoped lang="scss">
|
|
||||||
.dialog-content{
|
|
||||||
padding: 16px 24px;
|
|
||||||
// max-height:500px
|
|
||||||
}
|
|
||||||
|
|
||||||
</style>
|
|
||||||
@ -62,7 +62,7 @@
|
|||||||
></el-input>
|
></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<!-- <el-col :span="12">
|
||||||
<el-form-item label="案件名称" prop="caseName">
|
<el-form-item label="案件名称" prop="caseName">
|
||||||
<el-input
|
<el-input
|
||||||
clearable
|
clearable
|
||||||
@ -70,10 +70,7 @@
|
|||||||
v-model="baseInfo.caseName">
|
v-model="baseInfo.caseName">
|
||||||
</el-input>
|
</el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="案件编号" prop="caseNo">
|
<el-form-item label="案件编号" prop="caseNo">
|
||||||
<el-input
|
<el-input
|
||||||
@ -83,6 +80,9 @@
|
|||||||
</el-input>
|
</el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row type="flex" align="middle">
|
||||||
|
|
||||||
<!-- <el-col :span="12">
|
<!-- <el-col :span="12">
|
||||||
<el-form-item label="金融产品类型" prop="productTypeId">
|
<el-form-item label="金融产品类型" prop="productTypeId">
|
||||||
<el-select v-model="baseInfo.productTypeId"
|
<el-select v-model="baseInfo.productTypeId"
|
||||||
@ -108,15 +108,14 @@
|
|||||||
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
|
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="逾期次数" prop="overdueTimes">
|
<el-form-item label="逾期次数" prop="overdueTimes">
|
||||||
<el-input-number v-model="baseInfo.overdueTimes" :min="0" :max="100" class="width100"></el-input-number>
|
<el-input-number v-model="baseInfo.overdueTimes" :min="0" :max="100" class="width100"></el-input-number>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
</el-row>
|
||||||
|
<el-row type="flex" align="middle">
|
||||||
|
<el-col :span="24">
|
||||||
<el-form-item label="案件描述" prop="caseDescr">
|
<el-form-item label="案件描述" prop="caseDescr">
|
||||||
<el-input
|
<el-input
|
||||||
clearable
|
clearable
|
||||||
@ -460,9 +459,9 @@ import cpkapi from "@/services/casePackageManagement";
|
|||||||
// financialOrgCode: [
|
// financialOrgCode: [
|
||||||
// { required: true, message: '请输入社会统一信用代码', trigger: 'change',},
|
// { required: true, message: '请输入社会统一信用代码', trigger: 'change',},
|
||||||
// ],
|
// ],
|
||||||
caseName: [
|
// caseName: [
|
||||||
{ required: true, message: '请输入案件名称', trigger: 'change',},
|
// { required: true, message: '请输入案件名称', trigger: 'change',},
|
||||||
],
|
// ],
|
||||||
caseNo: [
|
caseNo: [
|
||||||
{ required: true, message: '请输入案件编号', trigger: 'change',},
|
{ required: true, message: '请输入案件编号', trigger: 'change',},
|
||||||
],
|
],
|
||||||
@ -561,8 +560,8 @@ import cpkapi from "@/services/casePackageManagement";
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted () {
|
mounted () {
|
||||||
this.getDict();//获取金融产品类型
|
// this.getDict();//获取金融产品类型
|
||||||
this.getDictIdType();
|
// this.getDictIdType();
|
||||||
this.getCasepkgList();
|
this.getCasepkgList();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@ -650,7 +649,7 @@ import cpkapi from "@/services/casePackageManagement";
|
|||||||
handleSubmit(){
|
handleSubmit(){
|
||||||
|
|
||||||
if(!this.$clickThrottle()) { return }//防止重复点击
|
if(!this.$clickThrottle()) { return }//防止重复点击
|
||||||
|
this.baseInfo.caseName = this.baseInfo.caseNo
|
||||||
let data = {
|
let data = {
|
||||||
...this.baseInfo,//基本信息
|
...this.baseInfo,//基本信息
|
||||||
...this.creditorInfo,//债权人信息
|
...this.creditorInfo,//债权人信息
|
||||||
|
|||||||
@ -1,692 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div>
|
|
||||||
<el-dialog
|
|
||||||
:title="addCaseDialog.title"
|
|
||||||
:visible="true"
|
|
||||||
width="880px"
|
|
||||||
append-to-body
|
|
||||||
:close-on-click-modal="false"
|
|
||||||
@close="handleClose"
|
|
||||||
>
|
|
||||||
|
|
||||||
<div >
|
|
||||||
|
|
||||||
<el-steps :active="presentStep" align-center class="mt-16">
|
|
||||||
<el-step v-for="(item,inx) in transferStep" :key="inx" :title="item.title" :description="item.description"></el-step>
|
|
||||||
</el-steps>
|
|
||||||
|
|
||||||
<!-- 基本信息 -->
|
|
||||||
<div v-if="presentStep === 1">
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<div class="height-48 line-height-48 f18 color-000 m-v-16 p-h-24">基本信息</div>
|
|
||||||
<div class="p-h-24">
|
|
||||||
<el-form ref="ruleFormBase"
|
|
||||||
:model="baseInfo"
|
|
||||||
:rules="rulesClient"
|
|
||||||
label-width="150px"
|
|
||||||
class="demo-ruleForm">
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="案件包" prop="financialOrgName">
|
|
||||||
<el-select v-model="baseInfo.pkgId"
|
|
||||||
clearable placeholder="请选择案件包"
|
|
||||||
class="width100" @change="apkChange">
|
|
||||||
<el-option
|
|
||||||
v-for="item in CasepackageList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.pkgName"
|
|
||||||
:value="item.id">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="金融机构名称" prop="financialOrgName">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="baseInfo.financialOrgName"
|
|
||||||
placeholder="请输入金融机构名称"
|
|
||||||
disabled
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="社会统一信用代码" prop="financialOrgCode">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="baseInfo.financialOrgCode"
|
|
||||||
placeholder="请输入社会统一信用代码"
|
|
||||||
clearable
|
|
||||||
maxlength="18"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="案件名称" prop="caseName">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入案件名称"
|
|
||||||
v-model="baseInfo.caseName">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="案件编号" prop="caseNo">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入案件编号"
|
|
||||||
v-model="baseInfo.caseNo">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<!-- <el-col :span="12">
|
|
||||||
<el-form-item label="金融产品类型" prop="productTypeId">
|
|
||||||
<el-select v-model="baseInfo.productTypeId"
|
|
||||||
clearable placeholder="请选择金融产品类型"
|
|
||||||
class="width100">
|
|
||||||
<el-option
|
|
||||||
v-for="item in financialProductsTypeOptions"
|
|
||||||
:key="item.code"
|
|
||||||
:label="item.codeName"
|
|
||||||
:value="item.code">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col> -->
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="标的金额" prop="moneyAmount">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入内容"
|
|
||||||
v-model="baseInfo.moneyAmount">
|
|
||||||
<template slot="append">元</template>
|
|
||||||
</el-input>
|
|
||||||
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="逾期次数" prop="overdueTimes">
|
|
||||||
<el-input-number v-model="baseInfo.overdueTimes" :min="0" :max="100" class="width100"></el-input-number>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="案件描述" prop="caseDescr">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入内容"
|
|
||||||
v-model="baseInfo.caseDescr">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- 当事人信息 -->
|
|
||||||
<div v-else-if="presentStep === 2">
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<div class="height-48 line-height-48 f18 color-000 m-v-16 p-h-24">案件当事人</div>
|
|
||||||
<div class="p-h-24">
|
|
||||||
<div class="border-solid-lighter-1 p-h-24 mb-16">
|
|
||||||
<div class="flex-row justify-content-between height-48 line-height-48 f14 border-b-solid-lighter-1 mb-16">
|
|
||||||
<div class="color-000">申请人</div>
|
|
||||||
<div class="color-text-regular cursor-pointer" @click="handleReset">清空<i class="el-icon-close"></i></div>
|
|
||||||
</div>
|
|
||||||
<el-form ref="ruleFormCreditor"
|
|
||||||
:model="creditorInfo"
|
|
||||||
:rules="rulesClientCreditor"
|
|
||||||
label-width="150px"
|
|
||||||
class="demo-ruleForm">
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="申请人名称" prop="creditorName">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="creditorInfo.creditorName"
|
|
||||||
placeholder="请输入申请人名称"
|
|
||||||
clearable
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="社会统一信用代码" prop="creditorOrgCode">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="creditorInfo.creditorOrgCode"
|
|
||||||
placeholder="请输入社会统一信用代码"
|
|
||||||
clearable
|
|
||||||
maxlength="18"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="法人姓名" prop="creditorLegal">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入法人姓名"
|
|
||||||
v-model="creditorInfo.creditorLegal">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="法人身份证号" prop="creditorIdcard">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入法人身份证号"
|
|
||||||
v-model="creditorInfo.creditorIdcard"
|
|
||||||
maxlength="18">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="法人手机号" prop="creditorPhone">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入法人手机号"
|
|
||||||
v-model="creditorInfo.creditorPhone"
|
|
||||||
maxlength="11"
|
|
||||||
>
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="公司地址" prop="creditorAddr">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入公司地址"
|
|
||||||
v-model="creditorInfo.creditorAddr">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="邮编" prop="creditorMail">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入邮编"
|
|
||||||
v-model="creditorInfo.creditorMail"
|
|
||||||
maxlength="6"
|
|
||||||
>
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="代理人" prop="creditorAgent">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入代理人"
|
|
||||||
v-model="creditorInfo.creditorAgent">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="代理人手机号" prop="creditorAgentTelephone">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入代理人手机号"
|
|
||||||
v-model="creditorInfo.creditorAgentTelephone"
|
|
||||||
maxlength="11"
|
|
||||||
>
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="代理人身份证号" prop="creditorAgentIdcard">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入代理人身份证号"
|
|
||||||
v-model="creditorInfo.creditorAgentIdcard"
|
|
||||||
maxlength="18">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
<div class="border-solid-lighter-1 p-h-24">
|
|
||||||
<div class="flex-row justify-content-between f14 border-b-solid-lighter-1 mb-8 p-v-8 align-items-center">
|
|
||||||
<div class="color-000">被申请人</div>
|
|
||||||
<el-button size="small" type="primary" @click="handleAdd">新增被申请人<i class="el-icon-plus"></i></el-button>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<el-form ref="ruleFormObligor"
|
|
||||||
:model="obligorInfoForm"
|
|
||||||
label-width="150px"
|
|
||||||
class="demo-ruleForm">
|
|
||||||
<div v-for="(item,inx) in obligorInfoForm.debtorEntityList" :key="inx">
|
|
||||||
<div class="flex-row justify-content-between align-items-center height-40 f14 mb-16">
|
|
||||||
<div class="color-text-primary">被申请人{{inx+1}}</div>
|
|
||||||
<div class="color-text-regular cursor-pointer" @click="handleRemoveDomain(item)">删除<i class="el-icon-close"></i></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="被申请人姓名" :prop="'debtorEntityList.' + inx + '.name'" :rules="{required: true, message: '请输入债权人姓名', trigger: 'blur'}">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="obligorInfoForm.debtorEntityList[inx].name"
|
|
||||||
placeholder="请输入被申请人姓名"
|
|
||||||
clearable
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="证件类型" :prop="'debtorEntityList.' + inx + '.cardTypeId'" :rules="{required: true, message: '请选择证件类型', trigger: 'blur'}">
|
|
||||||
<el-select v-model="obligorInfoForm.debtorEntityList[inx].cardTypeId"
|
|
||||||
clearable placeholder="请选择证件类型"
|
|
||||||
class="width100">
|
|
||||||
<el-option
|
|
||||||
v-for="item in idTypeOptions"
|
|
||||||
:key="item.code"
|
|
||||||
:label="item.codeName"
|
|
||||||
:value="item.code">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="证件号码" :prop="'debtorEntityList.' + inx + '.cardNo'"
|
|
||||||
:rules=" [
|
|
||||||
{ required: true, message: '请输入证件号', trigger: 'change',},
|
|
||||||
{ pattern: /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/, message: '请输入正确的身份证号', trigger: ['blur', 'change']}
|
|
||||||
]">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入证件号码"
|
|
||||||
v-model="obligorInfoForm.debtorEntityList[inx].cardNo"
|
|
||||||
maxlength="18"
|
|
||||||
>
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="手机号码" :prop="'debtorEntityList.' + inx + '.phone'" :rules="[
|
|
||||||
{ required: true, message: '请输入法人手机号', trigger: 'change',},
|
|
||||||
{ pattern: /^(13[0-9]{9})|(18[0-9]{9})|(14[0-9]{9})|(17[0-9]{9})|(15[0-9]{9})|(19[0-9]{9})$/, message: '请输入正确的手机号码', trigger: ['blur', 'change']}
|
|
||||||
]">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入手机号码"
|
|
||||||
v-model="obligorInfoForm.debtorEntityList[inx].phone"
|
|
||||||
maxlength="11"
|
|
||||||
>
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="地址" :prop="'debtorEntityList.' + inx + '.addr'" :rules="{ required: true, message: '请输入地址', trigger: 'change',}">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入地址"
|
|
||||||
v-model="obligorInfoForm.debtorEntityList[inx].addr">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="邮编" :prop="'debtorEntityList.' + inx + '.mail'" :rules="{ required: true, message: '请输入邮编', trigger: 'change',}">
|
|
||||||
<el-input
|
|
||||||
clearable
|
|
||||||
placeholder="请输入邮编"
|
|
||||||
v-model="obligorInfoForm.debtorEntityList[inx].mail"
|
|
||||||
maxlength="6">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</div>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- 材料上传 -->
|
|
||||||
<div v-else-if="presentStep === 3">
|
|
||||||
<div class="height-48 line-height-48 f18 color-000 m-v-16 p-h-24">证据材料</div>
|
|
||||||
<div class="p-h-24">
|
|
||||||
<upload-file-name :file-list="fileList" :max-count="20"
|
|
||||||
:show-file-name="true"
|
|
||||||
@handleUploadFile="handleUploadFile">
|
|
||||||
</upload-file-name>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- 完成 -->
|
|
||||||
<div v-else-if="presentStep === 4">
|
|
||||||
<el-result icon="success" title="案件创建完成" subTitle="案件创建完成,继续处理其他案件">
|
|
||||||
<template slot="extra">
|
|
||||||
<el-button type="primary" size="medium" @click="handleClose">好的</el-button>
|
|
||||||
</template>
|
|
||||||
</el-result>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<span slot="footer" class="dialog-footer" v-if="presentStep<5">
|
|
||||||
<el-button @click="handleClose">取消</el-button>
|
|
||||||
<el-button
|
|
||||||
v-if="presentStep > 1 "
|
|
||||||
type="primary"
|
|
||||||
@click="presentStep--">上一步</el-button>
|
|
||||||
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
v-show="presentStep<4"
|
|
||||||
@click="handleNextStep">下一步</el-button>
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
v-show="presentStep === 4"
|
|
||||||
@click="handleSubmit">确认
|
|
||||||
</el-button>
|
|
||||||
</span>
|
|
||||||
</el-dialog>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
<script>
|
|
||||||
import api from "@/services/caseManagement";
|
|
||||||
import cpkapi from "@/services/casePackageManagement";
|
|
||||||
export default {
|
|
||||||
components: {
|
|
||||||
uploadFileName: () => import('@/components/uploadFileName.vue'),//上传
|
|
||||||
},
|
|
||||||
props: {
|
|
||||||
addCaseDialog: {
|
|
||||||
type: Object,
|
|
||||||
default: () => {
|
|
||||||
return {}
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
const moneyAmountValidate = (rule,value,callback)=>{
|
|
||||||
if (!value){
|
|
||||||
callback(new Error('请输入标的金额'));
|
|
||||||
}else if (!/^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0.\d{1,2}$/.test(value)){
|
|
||||||
callback(new Error('只能输入两位小数的金额!'));
|
|
||||||
}else if(!(0<parseInt(value)&&parseInt(value)<100000000)){
|
|
||||||
callback(new Error('只能输入大于1小于1亿的金额!'));
|
|
||||||
}else{
|
|
||||||
callback()
|
|
||||||
}
|
|
||||||
};
|
|
||||||
return {
|
|
||||||
|
|
||||||
transferStep:[
|
|
||||||
{id:1,title:'基本信息',description:'录入案件基本信息'},
|
|
||||||
{id:2,title:'当事人信息',description:'录入当事人信息'},
|
|
||||||
{id:3,title:'材料上传',description:'上传案件材料'},
|
|
||||||
{id:4,title:'完成',description:'完成案件创建'},
|
|
||||||
],
|
|
||||||
presentStep:1,
|
|
||||||
|
|
||||||
//-----------------------------基本信息-------------------------
|
|
||||||
baseInfo:{
|
|
||||||
pkgId:'',
|
|
||||||
financialOrgName:'',//金融机构名称
|
|
||||||
financialOrgCode:'',//社会统一信用代码
|
|
||||||
caseName:'',//案件名称
|
|
||||||
caseNo:'',//案件编号
|
|
||||||
productTypeId:'',//金融产品类型
|
|
||||||
moneyAmount:'',//标的金额
|
|
||||||
overdueTimes:0,//逾期次数
|
|
||||||
caseDescr:'',//案件描述
|
|
||||||
},
|
|
||||||
rulesClient: {
|
|
||||||
financialOrgName: [
|
|
||||||
{ required: true, message: '请输入机构名称', trigger: 'change',},
|
|
||||||
],
|
|
||||||
// financialOrgCode: [
|
|
||||||
// { required: true, message: '请输入社会统一信用代码', trigger: 'change',},
|
|
||||||
// ],
|
|
||||||
caseName: [
|
|
||||||
{ required: true, message: '请输入案件名称', trigger: 'change',},
|
|
||||||
],
|
|
||||||
caseNo: [
|
|
||||||
{ required: true, message: '请输入案件编号', trigger: 'change',},
|
|
||||||
],
|
|
||||||
// productTypeId: [
|
|
||||||
// { required: true, message: '请选择金融产品类型', trigger: 'change',},
|
|
||||||
// ],
|
|
||||||
moneyAmount: [
|
|
||||||
{ required: true, validator: moneyAmountValidate, trigger: 'change',},
|
|
||||||
],
|
|
||||||
caseDescr:[
|
|
||||||
{ required: true, message: '请输入案件描述', trigger: 'change',},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
financialProductsTypeOptions:[],//金融产品类型
|
|
||||||
|
|
||||||
//----------------------------案件当事人-------------------
|
|
||||||
// 债权人
|
|
||||||
creditorInfo:{
|
|
||||||
creditorName:'',//债权人
|
|
||||||
creditorOrgCode:'',//债权人机构代码
|
|
||||||
creditorLegal:'',//法人
|
|
||||||
creditorIdcard:'',//法人身份证
|
|
||||||
creditorPhone:'',//法人手机
|
|
||||||
creditorAddr:'',//公司地址
|
|
||||||
creditorMail:'',//邮编
|
|
||||||
creditorAgent:'',//代理人
|
|
||||||
},
|
|
||||||
rulesClientCreditor: {
|
|
||||||
creditorName: [
|
|
||||||
{ required: true, message: '请输入申请人名称', trigger: 'change',},
|
|
||||||
],
|
|
||||||
creditorOrgCode: [
|
|
||||||
{ required: true, message: '请输入申请人机构代码', trigger: 'change',},
|
|
||||||
],
|
|
||||||
// creditorLegal: [
|
|
||||||
// { required: true, message: '请输入法人', trigger: 'change',},
|
|
||||||
// ],
|
|
||||||
// creditorIdcard: [
|
|
||||||
// { required: true, message: '请输入法人身份证号', trigger: 'change',},
|
|
||||||
// { pattern: /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/, message: '请输入正确的身份证号', trigger: ['blur', 'change']}
|
|
||||||
// ],
|
|
||||||
// creditorPhone: [
|
|
||||||
// { required: true, message: '请输入法人手机号', trigger: 'change',},
|
|
||||||
// { pattern: /^(13[0-9]{9})|(18[0-9]{9})|(14[0-9]{9})|(17[0-9]{9})|(15[0-9]{9})|(19[0-9]{9})$/, message: '请输入正确的手机号码', trigger: ['blur', 'change']}
|
|
||||||
// ],
|
|
||||||
creditorAddr: [
|
|
||||||
{ required: true, message: '请输入公司地址', trigger: 'change',},
|
|
||||||
],
|
|
||||||
// creditorAgent: [
|
|
||||||
// { required: true, message: '请输入代理人', trigger: 'change',},
|
|
||||||
// ],
|
|
||||||
},
|
|
||||||
// 被申请人
|
|
||||||
idTypeOptions:[],
|
|
||||||
obligorInfoForm:{
|
|
||||||
debtorEntityList:[
|
|
||||||
{
|
|
||||||
name:'',//被申请人姓名
|
|
||||||
phone:'',//被申请人电话
|
|
||||||
cardTypeId:'',//证件类型
|
|
||||||
addr:'',//地址
|
|
||||||
cardNo:'',//证件号
|
|
||||||
mail:'',//邮编
|
|
||||||
|
|
||||||
}
|
|
||||||
],
|
|
||||||
},
|
|
||||||
|
|
||||||
obligorRulesClient:{
|
|
||||||
name: [
|
|
||||||
{ required: true, message: '请输入被申请人姓名', trigger: 'change',},
|
|
||||||
],
|
|
||||||
phone: [
|
|
||||||
{ required: true, message: '请输入法人手机号', trigger: 'change',},
|
|
||||||
{ pattern: /^(13[0-9]{9})|(18[0-9]{9})|(14[0-9]{9})|(17[0-9]{9})|(15[0-9]{9})|(19[0-9]{9})$/, message: '请输入正确的手机号码', trigger: ['blur', 'change']}
|
|
||||||
],
|
|
||||||
cardTypeId: [
|
|
||||||
{ required: true, message: '请选择证件类型', trigger: 'change',},
|
|
||||||
],
|
|
||||||
addr: [
|
|
||||||
{ required: true, message: '请输入地址', trigger: 'change',},
|
|
||||||
],
|
|
||||||
cardNo: [
|
|
||||||
{ required: true, message: '请输入证件号', trigger: 'change',},
|
|
||||||
{ pattern: /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/, message: '请输入正确的身份证号', trigger: ['blur', 'change']}
|
|
||||||
],
|
|
||||||
mail: [
|
|
||||||
{ required: true, message: '请输入邮编', trigger: 'change',},
|
|
||||||
{ pattern: /^\d{6}$/, message: '请输入正确的邮编', trigger: ['blur', 'change']}
|
|
||||||
],
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
fileList:[],//证据材料
|
|
||||||
CasepackageList:[]
|
|
||||||
};
|
|
||||||
},
|
|
||||||
mounted () {
|
|
||||||
this.getDict();//获取金融产品类型
|
|
||||||
this.getDictIdType();
|
|
||||||
this.getCasepkgList();
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
// 案件包列表数据
|
|
||||||
getCasepkgList(){
|
|
||||||
cpkapi.getCasePkgQuery({current:1,size:500}).then(res => {
|
|
||||||
if (!res.code) {
|
|
||||||
this.CasepackageList = res.records;
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
apkChange(){
|
|
||||||
|
|
||||||
let changeApk = this.CasepackageList.find(item =>{
|
|
||||||
return this.baseInfo.pkgId == item.id
|
|
||||||
})
|
|
||||||
this.baseInfo.financialOrgName = changeApk.entrustingAgencyName
|
|
||||||
this.baseInfo.financialOrgCode = changeApk.entrustingAgencyCode
|
|
||||||
},
|
|
||||||
// 获取金融产品类型
|
|
||||||
getDict(){
|
|
||||||
let data = {
|
|
||||||
type:'financial'
|
|
||||||
}
|
|
||||||
api.getDict(data).then(res => {
|
|
||||||
if (!res.code) {
|
|
||||||
this.financialProductsTypeOptions = res;
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 获取证件类型
|
|
||||||
getDictIdType(){
|
|
||||||
let data = {
|
|
||||||
type:'certificates'
|
|
||||||
}
|
|
||||||
api.getDict(data).then(res => {
|
|
||||||
if (!res.code) {
|
|
||||||
this.idTypeOptions = res;
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 新增
|
|
||||||
handleAdd(){
|
|
||||||
this.obligorInfoForm.debtorEntityList.push({
|
|
||||||
name:'',//被申请人姓名
|
|
||||||
phone:'',//被申请人电话
|
|
||||||
cardTypeId:'',//证件类型
|
|
||||||
addr:'',//地址
|
|
||||||
cardNo:'',//证件号
|
|
||||||
mail:'',//邮编
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 删除
|
|
||||||
handleRemoveDomain(item) {
|
|
||||||
var index = this.obligorInfoForm.debtorEntityList.indexOf(item)
|
|
||||||
if (index !== -1) {
|
|
||||||
this.obligorInfoForm.debtorEntityList.splice(index, 1)
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 清空
|
|
||||||
handleReset(){
|
|
||||||
for (let key in this.creditorInfo) {
|
|
||||||
this.creditorInfo[key] = ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
// 下一步
|
|
||||||
handleNextStep(){
|
|
||||||
if(this.presentStep === 1){
|
|
||||||
this.$refs.ruleFormBase.validate((valid) => {
|
|
||||||
if (valid){this.presentStep++}
|
|
||||||
})
|
|
||||||
}else if(this.presentStep === 2){
|
|
||||||
this.$refs.ruleFormCreditor.validate((valid) => {
|
|
||||||
if (valid){
|
|
||||||
this.$refs.ruleFormObligor.validate((valid) => {
|
|
||||||
if (valid){this.presentStep++}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}else{
|
|
||||||
this.presentStep++
|
|
||||||
}
|
|
||||||
},
|
|
||||||
handleSubmit(){
|
|
||||||
|
|
||||||
if(!this.$clickThrottle()) { return }//防止重复点击
|
|
||||||
|
|
||||||
let data = {
|
|
||||||
...this.baseInfo,//基本信息
|
|
||||||
...this.creditorInfo,//债权人信息
|
|
||||||
...this.obligorInfoForm,//被申请人
|
|
||||||
caseFileEntityList:this.fileList//证据材料
|
|
||||||
}
|
|
||||||
console.log('获取传给后台的信息',data)
|
|
||||||
api.addCaseInfo(data).then(res => {
|
|
||||||
this.presentStep++
|
|
||||||
this.$parent.getCaseInfoList(1)
|
|
||||||
// this.$parent.getCaseCount()
|
|
||||||
})
|
|
||||||
|
|
||||||
},
|
|
||||||
// 上传
|
|
||||||
handleUploadFile(fileList){
|
|
||||||
console.log('获取上传文件信息',fileList)
|
|
||||||
fileList = JSON.parse(JSON.stringify(fileList))
|
|
||||||
this.fileList = fileList.map((item,i) => {
|
|
||||||
return {
|
|
||||||
url: item.url,
|
|
||||||
fileName:item.fileName,
|
|
||||||
name:item.fileName
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
handleClose() {
|
|
||||||
this.$emit('update:addCaseDialog', null)
|
|
||||||
},
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
<style scoped lang="scss">
|
|
||||||
.dialog-content{
|
|
||||||
padding: 16px 24px;
|
|
||||||
// max-height:500px
|
|
||||||
}
|
|
||||||
|
|
||||||
</style>
|
|
||||||
@ -1,392 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div>
|
|
||||||
<el-dialog
|
|
||||||
:title="caseAllocationDialog.title"
|
|
||||||
:visible="true"
|
|
||||||
width="880px"
|
|
||||||
append-to-body
|
|
||||||
:close-on-click-modal="false"
|
|
||||||
@close="handleClose"
|
|
||||||
>
|
|
||||||
|
|
||||||
<div class="dialog-content">
|
|
||||||
<div class="pb-16">
|
|
||||||
<el-row :gutter="20" type="flex" align="middle">
|
|
||||||
<el-col :span="24">
|
|
||||||
|
|
||||||
<div class="flex-row align-items-center">
|
|
||||||
<div class="mr-8 flex-shrink-0">区域</div>
|
|
||||||
<div class="width100">
|
|
||||||
<el-select v-model="deptId"
|
|
||||||
size="medium"
|
|
||||||
clearable placeholder="请选择区域"
|
|
||||||
@change="handleChangeDept"
|
|
||||||
class="width100">
|
|
||||||
<el-option
|
|
||||||
v-for="item in departmentOptions"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
class="width100"
|
|
||||||
>
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</div>
|
|
||||||
<el-scrollbar class="bor bg-color-light min-height350">
|
|
||||||
<div class="department-wrap">
|
|
||||||
<div v-for="(item,inx) in peopleList" :key="inx" class="department-wrap-list">
|
|
||||||
<div class="department-dept">
|
|
||||||
<el-checkbox v-model="checkedAll" :label="item.deptId" @change="handleCheckChange(1,inx,item,item.deptId,$event)">{{item.name}}({{item.count}}人)</el-checkbox>
|
|
||||||
</div>
|
|
||||||
<div class="flex-row justify-content-start flex-flow-wrap ">
|
|
||||||
<div v-for="(v,i) in item.values" :key="i" class="pt-16" style="flex:0 0 25%">
|
|
||||||
<el-checkbox v-model="checkedAll" :label="v.id" @change="handleCheckChange(2,inx,v,item.deptId,$event)">{{v.realName}}</el-checkbox>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</el-scrollbar>
|
|
||||||
<div class="p-v-24">
|
|
||||||
<el-form ref="ruleForm"
|
|
||||||
:model="queryParam"
|
|
||||||
:rules="rulesClient"
|
|
||||||
label-width="120px"
|
|
||||||
class="demo-ruleForm">
|
|
||||||
<el-row :gutter="20" type="flex" align="middle">
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item label="分配方式" prop="dispatchType" label-width="80px">
|
|
||||||
<template>
|
|
||||||
<el-radio v-model="queryParam.dispatchType" :label="1">平均分配</el-radio>
|
|
||||||
<el-radio v-model="queryParam.dispatchType" :label="2">调解中案件量最少</el-radio>
|
|
||||||
<el-radio v-model="queryParam.dispatchType" :label="3">当天分案量最少</el-radio>
|
|
||||||
<el-radio v-model="queryParam.dispatchType" :label="4">当月分案量最少</el-radio>
|
|
||||||
<el-radio v-model="queryParam.dispatchType" :label="5">同案由调解成功率最高</el-radio>
|
|
||||||
</template>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<span slot="footer" class="dialog-footer">
|
|
||||||
<el-button @click="handleClose()">取消</el-button>
|
|
||||||
<el-button type="primary" @click="handleSubmit()">确认</el-button>
|
|
||||||
</span>
|
|
||||||
</el-dialog>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
<script>
|
|
||||||
import api from "@/services/caseManagement";
|
|
||||||
import apipack from "@/services/casePackageManagement";
|
|
||||||
export default {
|
|
||||||
components: {
|
|
||||||
|
|
||||||
},
|
|
||||||
props: {
|
|
||||||
caseAllocationDialog: {
|
|
||||||
type: Object,
|
|
||||||
default: () => {
|
|
||||||
return {}
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
deptId:[],//获取区域id集合
|
|
||||||
queryParam:{
|
|
||||||
id:'',//案件包ID
|
|
||||||
dispatchType:1,//分案方式;1,平均分配;2,调解中案件量最少;3,当天分案量最少;4,当月分案量最少;5,同案由调解成功率最高
|
|
||||||
},
|
|
||||||
userList:[],
|
|
||||||
rulesClient: {
|
|
||||||
dispatchType: [
|
|
||||||
{ required: true, message: '请选择分案方式', trigger: 'change',},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
peopleList:[
|
|
||||||
{deptId:1,name:'调解一部',count:10,
|
|
||||||
values:[
|
|
||||||
{id:1,deptId:1,realName:'张三' },
|
|
||||||
{id:2,deptId:1,realName:'张三' },
|
|
||||||
{id:3,deptId:1,realName:'张三' },
|
|
||||||
{id:4,deptId:1,realName:'张三' },
|
|
||||||
{id:5,deptId:1,realName:'里面' },
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
departmentOptions:[],//区域
|
|
||||||
checkedAll:[],
|
|
||||||
chooseChecked:[],
|
|
||||||
};
|
|
||||||
},
|
|
||||||
mounted () {
|
|
||||||
this.getDeptList();//获取区域
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
// 获取区域
|
|
||||||
getDeptList(){
|
|
||||||
let data = {
|
|
||||||
companyId: this.$store.state.userinfo.companyId,
|
|
||||||
current: 1,
|
|
||||||
size: 500,
|
|
||||||
pid:0
|
|
||||||
}
|
|
||||||
api.getDeptList(data).then(res => {
|
|
||||||
if (!res.code) {
|
|
||||||
this.departmentOptions = res.records;
|
|
||||||
this.deptId = this.departmentOptions[0].id
|
|
||||||
this.getByDeptList()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
handleChangeDept(e){
|
|
||||||
this.checkedAll=[]
|
|
||||||
this.chooseChecked=[]
|
|
||||||
this.getByDeptList()
|
|
||||||
this.peopleList=[]
|
|
||||||
|
|
||||||
},
|
|
||||||
// 根据区域id列表查看用户列表
|
|
||||||
getByDeptList(){
|
|
||||||
api.getDeptList({companyId:this.$store.state.userinfo.companyId,current:1,size:500,pid:this.deptId}).then(res => {
|
|
||||||
if (!res.code)
|
|
||||||
{
|
|
||||||
let deptList = []
|
|
||||||
res.records.forEach(item =>{
|
|
||||||
let userlist = []
|
|
||||||
api.getUserByDeptList({ids:[item.id]}).then(res => {
|
|
||||||
|
|
||||||
res.forEach(item =>{
|
|
||||||
userlist.push({
|
|
||||||
id:item.id,
|
|
||||||
realName:item.realName,
|
|
||||||
checked:false
|
|
||||||
})
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
||||||
deptList.push({
|
|
||||||
deptId:item.id,
|
|
||||||
name:item.name,
|
|
||||||
count:item.count,
|
|
||||||
checked:false,
|
|
||||||
values:userlist
|
|
||||||
})
|
|
||||||
})
|
|
||||||
this.peopleList = deptList
|
|
||||||
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
handleCheckChange(type,a=0,chooseItem,deptId,event){
|
|
||||||
// console.log(chooseItem,event,a,'this.peopleList')
|
|
||||||
let self = this
|
|
||||||
if(type==2){//二级菜单
|
|
||||||
let index = 0;
|
|
||||||
self.peopleList[a].values.map((item)=>{
|
|
||||||
if(self.checkedAll.indexOf(item.id)>-1){
|
|
||||||
index+=1
|
|
||||||
}
|
|
||||||
})
|
|
||||||
if(index>0){
|
|
||||||
if(self.checkedAll.indexOf(self.peopleList[a].deptId)<0){
|
|
||||||
self.checkedAll.push(self.peopleList[a].deptId)
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
if(self.checkedAll.indexOf(self.peopleList[a].deptId)>0){
|
|
||||||
self.checkedAll.splice(self.checkedAll.indexOf(self.peopleList[a].deptId),1)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(event)
|
|
||||||
{
|
|
||||||
if(this.chooseChecked.length==0){self.chooseChecked.push({deptId:deptId,child:[]})}
|
|
||||||
this.chooseChecked.forEach((item,index) => {
|
|
||||||
let haveDeptId = self.chooseChecked.find(citem=>{
|
|
||||||
return citem.deptId===deptId
|
|
||||||
})
|
|
||||||
if(haveDeptId != undefined)
|
|
||||||
{
|
|
||||||
if(item.deptId==deptId)
|
|
||||||
{
|
|
||||||
item.child.push({deptId:deptId,id:chooseItem.id,realName:chooseItem.realName})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
self.chooseChecked.push({deptId:deptId,child:[{deptId:deptId,id:chooseItem.id,realName:chooseItem.realName}]})
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
this.chooseChecked.forEach((item,index) => {
|
|
||||||
item.child.forEach((itemchild,index) => {
|
|
||||||
if(itemchild.id==chooseItem.id)
|
|
||||||
{
|
|
||||||
item.child.splice(index,1)
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
let childnum = this.chooseChecked.find(item=>{
|
|
||||||
return item.deptId === deptId
|
|
||||||
}).child.length;
|
|
||||||
|
|
||||||
let allchildnum = this.peopleList.find(item=>{
|
|
||||||
return item.deptId === deptId
|
|
||||||
}).values.length;
|
|
||||||
if(childnum != allchildnum)
|
|
||||||
{
|
|
||||||
if(self.checkedAll.indexOf(deptId)>-1){
|
|
||||||
self.checkedAll.splice(self.checkedAll.indexOf(deptId),1)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if(self.checkedAll.indexOf(deptId)<0){
|
|
||||||
self.checkedAll.push(deptId)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}else{
|
|
||||||
if(self.checkedAll.indexOf(self.peopleList[a].deptId)>-1){
|
|
||||||
self.peopleList[a].values.map((item)=>{
|
|
||||||
if(self.checkedAll.findIndex((n)=> n==item.id)<0){
|
|
||||||
self.checkedAll.push(item.id)
|
|
||||||
// self.checkedAll.push({id:item.id,realName:item.realName,deptId:self.peopleList[a].deptId})
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}else{
|
|
||||||
self.peopleList[a].values.map((item)=>{
|
|
||||||
if(self.checkedAll.findIndex((n)=> n==item.id)>-1){
|
|
||||||
self.checkedAll.splice(self.checkedAll.findIndex((n)=> n==item.id),1)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
let haveDeptId=self.chooseChecked.find(citem=>{
|
|
||||||
return citem.deptId === deptId
|
|
||||||
})
|
|
||||||
if(event)
|
|
||||||
{
|
|
||||||
if(haveDeptId == undefined)
|
|
||||||
{
|
|
||||||
let addchild=[]
|
|
||||||
self.peopleList.forEach((item,index) => {
|
|
||||||
if(item.deptId==deptId)
|
|
||||||
{
|
|
||||||
item.values.forEach((item,index) => {
|
|
||||||
addchild.push({deptId:deptId,id:item.id,realName:item.realName})
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
self.chooseChecked.push({deptId:deptId,child:addchild})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if(haveDeptId != undefined)
|
|
||||||
{
|
|
||||||
self.chooseChecked.forEach((item,index) => {
|
|
||||||
if(item.deptId==deptId)
|
|
||||||
{
|
|
||||||
self.chooseChecked.splice(index,1)
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// console.log(this.checkedAll,self.chooseChecked,'checkedAll')
|
|
||||||
},
|
|
||||||
|
|
||||||
handleSubmit(){
|
|
||||||
if(!this.$clickThrottle()) { return }//防止重复点击
|
|
||||||
let chooseUser=[]
|
|
||||||
this.chooseChecked.forEach((item,index) => {
|
|
||||||
item.child.forEach((item,index) => {
|
|
||||||
chooseUser.push({deptId:item.deptId,id:item.id,realName:item.realName})
|
|
||||||
});
|
|
||||||
});
|
|
||||||
if(chooseUser.length == 0)
|
|
||||||
{
|
|
||||||
this.$message({
|
|
||||||
showClose: true,
|
|
||||||
message: '请先选择调解员!',
|
|
||||||
type: 'warning'
|
|
||||||
});
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
this.$refs.ruleForm.validate((valid) => {
|
|
||||||
if(valid) {
|
|
||||||
|
|
||||||
let data = {
|
|
||||||
id:this.caseAllocationDialog.ObjectInfo.id,
|
|
||||||
dispatchType:this.queryParam.dispatchType,
|
|
||||||
userList:chooseUser
|
|
||||||
}
|
|
||||||
|
|
||||||
apipack.postpkgdispatchCase(data).then(res => {
|
|
||||||
this.$message({
|
|
||||||
showClose: true,
|
|
||||||
message: '调解案件分配成功!',
|
|
||||||
type: 'success'
|
|
||||||
});
|
|
||||||
this.$parent.getCaseInfoList()
|
|
||||||
this.handleClose()
|
|
||||||
})
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
handleSearch(){
|
|
||||||
|
|
||||||
},
|
|
||||||
handleChangeDate(){
|
|
||||||
let planStart = new Date(this.queryParam.planStartTime);
|
|
||||||
let planEnd = new Date(this.queryParam.planEndTime);
|
|
||||||
if (planEnd < planStart) {
|
|
||||||
this.$message({
|
|
||||||
showClose: true,
|
|
||||||
message: '开始日期不能大于结束日期!',
|
|
||||||
type: 'warning'
|
|
||||||
});
|
|
||||||
this.queryParam.planEndTime=''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
handleClose() {
|
|
||||||
this.$emit('update:caseAllocationDialog', null)
|
|
||||||
},
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
<style scoped lang="scss">
|
|
||||||
.dialog-content{
|
|
||||||
padding: 16px 24px;
|
|
||||||
max-height:500px
|
|
||||||
}
|
|
||||||
.department-wrap{
|
|
||||||
padding: 16px 24px;
|
|
||||||
max-height: 250px;
|
|
||||||
.department-wrap-list{
|
|
||||||
margin-bottom:32px;
|
|
||||||
}
|
|
||||||
.department-wrap-list:last-child{
|
|
||||||
margin-bottom:0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.min-height350{min-height: 350px;}
|
|
||||||
.department-dept ::v-deep .el-checkbox__label {color: $color-000000}
|
|
||||||
</style>
|
|
||||||
@ -1,209 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div>
|
|
||||||
<el-dialog
|
|
||||||
:title="importCaseDialog.title"
|
|
||||||
:visible="true"
|
|
||||||
width="580px"
|
|
||||||
append-to-body
|
|
||||||
:close-on-click-modal="false"
|
|
||||||
@close="handleClose">
|
|
||||||
|
|
||||||
|
|
||||||
<!-- 基本信息 -->
|
|
||||||
<div>
|
|
||||||
<div class="p-h-24">
|
|
||||||
<el-form ref="ruleFormBase"
|
|
||||||
:model="baseInfo"
|
|
||||||
:rules="rulesClient"
|
|
||||||
label-width="150px"
|
|
||||||
class="demo-ruleForm">
|
|
||||||
<el-row type="flex" align="middle" class="mt-16">
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item label="案件包名" prop="pkgName">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="baseInfo.pkgName"
|
|
||||||
placeholder="请输入案件包名"
|
|
||||||
clearable
|
|
||||||
maxlength="25"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item label="委案机构" prop="entrustingAgencyName">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="baseInfo.entrustingAgencyName"
|
|
||||||
placeholder="请输入委案机构"
|
|
||||||
clearable
|
|
||||||
maxlength="25"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item label="委案渠道" prop="channel">
|
|
||||||
<el-input
|
|
||||||
v-model.trim="baseInfo.channel"
|
|
||||||
placeholder="请输入委案渠道"
|
|
||||||
clearable
|
|
||||||
maxlength="25"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item label="委案日期" prop="planStartTime">
|
|
||||||
<el-date-picker class="width100"
|
|
||||||
v-model="baseInfo.planStartTime"
|
|
||||||
type="date"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
placeholder="选择委案日期">
|
|
||||||
</el-date-picker>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item label="委案期限(月)" prop="months">
|
|
||||||
<el-input-number v-model="baseInfo.months" :min="0" :max="100" class="width100"></el-input-number>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row type="flex" align="middle">
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item label="上传文件" prop="fileInfo">
|
|
||||||
<upload-import :file-list="fileList" :max-count="1"
|
|
||||||
:show-file-name="true"
|
|
||||||
accept=".xls,.xlsx"
|
|
||||||
@handleUploadFile="handleUploadFile">
|
|
||||||
</upload-import>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<span slot="footer" class="dialog-footer">
|
|
||||||
<el-button @click="handleClose">取消</el-button>
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
@click="handleSubmit">确认导入
|
|
||||||
</el-button>
|
|
||||||
</span>
|
|
||||||
</el-dialog>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
<script>
|
|
||||||
import apipk from "@/services/casePackageManagement";
|
|
||||||
export default {
|
|
||||||
components: {
|
|
||||||
uploadImport:() => import('@/components/uploadImportPackage.vue'),//导入上传
|
|
||||||
},
|
|
||||||
props: {
|
|
||||||
importCaseDialog: {
|
|
||||||
type: Object,
|
|
||||||
default: () => {
|
|
||||||
return {}
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
baseInfo:{
|
|
||||||
pkgName:'',//案件包名
|
|
||||||
entrustingAgencyName:'',//金融机构名称
|
|
||||||
planStartTime:'',//委案时间
|
|
||||||
months:1,//委案期限
|
|
||||||
fileInfo:null,
|
|
||||||
channel:'',
|
|
||||||
|
|
||||||
},
|
|
||||||
rulesClient: {
|
|
||||||
pkgName: [
|
|
||||||
{ required: true, message: '请输入案件包名', trigger: 'change',},
|
|
||||||
],
|
|
||||||
planStartTime: [
|
|
||||||
{ required: true, message: '请输入委案时间', trigger: 'change',},
|
|
||||||
],
|
|
||||||
months: [
|
|
||||||
{ required: true, message: '请输入委案期限', trigger: 'change',},
|
|
||||||
],
|
|
||||||
channel: [
|
|
||||||
{ required: true, message: '请输入委案渠道', trigger: 'change',},
|
|
||||||
],
|
|
||||||
fileInfo: [
|
|
||||||
{ required: true, message: '请上传文件', trigger: 'change',},
|
|
||||||
],
|
|
||||||
|
|
||||||
},
|
|
||||||
financialProductsTypeOptions:[],//金融产品类型
|
|
||||||
fileList:[],//证据材料
|
|
||||||
|
|
||||||
};
|
|
||||||
},
|
|
||||||
mounted () {
|
|
||||||
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
|
|
||||||
handleSubmit(){
|
|
||||||
if(!this.$clickThrottle()) { return }//防止重复点击
|
|
||||||
|
|
||||||
this.$refs.ruleFormBase.validate((valid) => {
|
|
||||||
if (valid){
|
|
||||||
let data = {
|
|
||||||
...this.baseInfo,//基本信息
|
|
||||||
}
|
|
||||||
apipk.CasePkgimport(data).then(res => {
|
|
||||||
this.handleClose()
|
|
||||||
this.$parent.getCaseInfoList(1)
|
|
||||||
})
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
})
|
|
||||||
|
|
||||||
},
|
|
||||||
// 上传
|
|
||||||
handleUploadFile(JsonData){
|
|
||||||
|
|
||||||
console.log('获取上传文件信息',JsonData.uploadFileRes)
|
|
||||||
let fileitem = JSON.parse(JSON.stringify(JsonData.fileList))
|
|
||||||
this.fileList = fileitem.map((item,i) => {
|
|
||||||
let time = this.$util.getTimestamp()
|
|
||||||
let fileType = this.$util.getFileExtension(item.url)
|
|
||||||
let fileName = `${time}.${fileType}`
|
|
||||||
return {
|
|
||||||
url: item.url,
|
|
||||||
fileName:fileName,
|
|
||||||
}
|
|
||||||
})
|
|
||||||
if(fileitem.length == 0 ){
|
|
||||||
this.baseInfo.fileInfo = null
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
this.baseInfo.fileInfo = JsonData.uploadFileRes
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
handleClose() {
|
|
||||||
this.$emit('update:importCaseDialog', null)
|
|
||||||
},
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
<style scoped lang="scss">
|
|
||||||
.dialog-content{
|
|
||||||
padding: 16px 24px;
|
|
||||||
// max-height:500px
|
|
||||||
}
|
|
||||||
|
|
||||||
</style>
|
|
||||||
@ -253,7 +253,7 @@ import smapi from "@/services/systemManage";
|
|||||||
},
|
},
|
||||||
async handleCaseShow(scope){
|
async handleCaseShow(scope){
|
||||||
let previewUrl = await this.getProofFile(scope.row.proofUrl)
|
let previewUrl = await this.getProofFile(scope.row.proofUrl)
|
||||||
this.fileDialog = {showfile:{url:previewUrl},filelist:[]}
|
this.fileDialog = {showfile:{fullUrl:previewUrl,url:scope.row.proofUrl},filelist:[]}
|
||||||
},
|
},
|
||||||
async getProofFile(url){
|
async getProofFile(url){
|
||||||
let previewUrl = await this.$fetchApi.viewFullFile({path: url})
|
let previewUrl = await this.$fetchApi.viewFullFile({path: url})
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user