Commit 78eadc82 authored by 沈翠玲's avatar 沈翠玲

采集管理

parent 00571c88
...@@ -80,6 +80,7 @@ const closeOthersTags = () => { ...@@ -80,6 +80,7 @@ const closeOthersTags = () => {
// Close Current // Close Current
const closeCurrentTab = () => { const closeCurrentTab = () => {
if (!props.selectedTag.close) return; if (!props.selectedTag.close) return;
console.log('props.selectedTag.path', props.selectedTag.path)
tabStore.removeTabs(props.selectedTag.path); tabStore.removeTabs(props.selectedTag.path);
}; };
......
...@@ -302,7 +302,7 @@ ...@@ -302,7 +302,7 @@
height: 30px !important; height: 30px !important;
} }
td { td {
line-height: 14px !important; line-height: 22px !important;
} }
.public-header { .public-header {
position: relative; position: relative;
...@@ -419,4 +419,10 @@ body { ...@@ -419,4 +419,10 @@ body {
.el-space__item { .el-space__item {
line-height: 16px; line-height: 16px;
} }
}
.line-input {
.el-input__wrapper {
box-shadow: none;
border-bottom: 1px solid rgb(204, 204, 204);
}
} }
\ No newline at end of file
<template> <template>
<div class="card content-box"> <vxe-modal
<div class="mb-5 w-full"> resize
<template v-if="isEdit"> v-model="showModal"
title="网贷&信用贷详情"
height="512"
width="1303"
show-footer
esc-closable
>
<div class="card content-box">
<div class="mb-5 w-full flex justify-end">
<el-button type="default" @click="showModal = false">取消</el-button> <el-button type="default" @click="showModal = false">取消</el-button>
<el-button :loading="loading" type="primary" @click="submitForm">保存</el-button> <template v-if="showEdit">
</template> <el-button type="primary" @click="submitForm">保存</el-button>
<el-button type="primary" @click="isEdit = true">修改</el-button> </template>
<el-button type="primary" @click="showEdit = true" v-if="currentRow">修改</el-button>
</div>
<div class="w-full">
<table>
<tbody>
<tr>
<td class="label">贷款机构</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">贷款所属银行名称</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">网贷状态(正常/逾期)</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit" /></td>
<td class="label">贷款审批额度</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit" /></td>
</tr>
<tr>
<td class="label">网贷类型</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit" /></td>
<td class="label">还款方式</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">欠款金额</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit" /></td>
<td class="label">贷款到账金额</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">贷款期数</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">已还期数</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="请填写每笔贷款还款情况,例如共借款一笔,已还9期,共12期,请填写9/12" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">贷款笔数</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">逾期数期</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">是否被代偿或起诉</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">还款日</td>
<td colspan="2">
<el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">代扣银行及卡号</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">贷款支付密码</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">最后一次还款时间</td>
<td colspan="2"><el-date-picker
v-model="form.trackTime"
:disabled="!showEdit"
class="line-input" style="width: 100%"
format="YYYY-MM-DD"
value-format="YYYY-MM-DD"
type="date"
/></td>
<td class="label">最后一次还款金额</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">贷款担保人姓名</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">贷款担保人关系</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">贷款担保人联系方式</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">紧急联系人姓名</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">银行预留手机号码</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">催收情况</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">逾期后是否有过协商方案</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="请填写有/无" :disabled="!showEdit"/></td>
<td class="label">负债情况</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">是否连续还款</td>
<td colspan="5"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
</tbody>
</table>
</div>
</div> </div>
<div class="w-full"> </vxe-modal>
<el-form ref="formRef" :model="form" :rules="rules" inline>
<el-row :gutter="20">
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="发卡银行" prop="roleName">
<el-input v-model="form.roleName" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="开户时间" prop="roleCode">
<el-input v-model="form.roleCode" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="卡号" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="卡片状态" prop="status">
<el-radio-group v-model="form.status">
<el-radio value="enable">正常</el-radio>
<el-radio value="disable">逾期</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="授信额度" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="已用额度" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="近6个月平均使用额度" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="当前欠款金额" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="逾期期数" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="逾期后是否有过协商" prop="status">
<el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="有无分期" prop="status">
<el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="有无协商方案" prop="status">
<el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="查询密码" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="最后一次还款时间:" prop="name">
<el-date-picker
v-model="form.trackTime"
class="w-full"
format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DD HH:mm:ss"
type="datetime"
/>
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="支付密码" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="最后一次还款金额" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="是否有大额专项分期额度" prop="status">
<el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="大额专项分期借款种类:" prop="status">
<el-select v-model="form.status">
<el-option label="启用" value="enable" />
<el-option label="禁用" value="disable" />
</el-select>
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="大额专项分期额度" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="大额专项分期开立日期:" prop="name">
<el-date-picker
v-model="form.trackTime"
class="w-full"
format="YYYY-MM-DD"
value-format="YYYY-MM-DD"
type="date"
/>
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="大额专项分期到期日期:" prop="name">
<el-date-picker
v-model="form.trackTime"
class="w-full"
format="YYYY-MM-DD"
value-format="YYYY-MM-DD"
type="datetime"
/>
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="大额专项分期已还期数" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="银行预留手机号码" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="银行预留家庭地址" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="银行预留紧急联系人姓名" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :xs="8" :sm="8" :md="8" :lg="8" :xl="6">
<el-form-item class="w-full" label="银行预留紧急联系人电话" prop="roleDesc">
<el-input v-model="form.roleDesc" placeholder="请输入" />
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</template> </template>
<script setup name="credit"> <script setup name="credit">
import { ref, computed } from 'vue'; import { ref, computed } from 'vue';
import { ElMessage } from 'element-plus'; import { ElMessage } from 'element-plus';
const isEdit = ref(false); const showEdit = ref(false);
const currentRole = ref(null); const showModal = ref(false);
const formRef = ref(null); const emits = defineEmits(['success']);
const currentRow = ref(null);
const currentIndex = ref(null);
const props = defineProps({
mergerCase: String,
returnConfig: Array,
returnData: Array
});
const form = ref({ const form = ref({
roleName: '', roleName: '',
roleCode: '', roleCode: '',
roleDesc: '', roleDesc: '',
}); });
const rules = ref({
roleName: { required: true, message: '请输入角色名称', trigger: 'blur' },
roleCode: { required: true, message: '请输入角色编码', trigger: 'blur' },
});
const loading = ref(false);
const submitForm = async () => { const submitForm = async () => {
try { showEdit.value = false
await formRef.value.validate(); emits('success', currentRow.value, currentIndex.value);
loading.value = true;
// await saveRole(form.value);
ElMessage({
type: 'success',
message: isEdit.value ? '修改成功!' : '新建成功!',
plain: true,
});
} catch {}
loading.value = false;
}; };
const openModal = (row, index) => {
if (row) {
showEdit.value = false
form.value = JSON.parse(JSON.stringify(row))
} else {
showEdit.value = true
form.value = {
roleName: '',
roleCode: '',
roleDesc: '',
}
}
currentRow.value = row
currentIndex.value = index
showModal.value = true;
};
defineExpose({
openModal,
});
</script> </script>
<style lang="scss" scoped>
table {
width: calc(100%);
border-collapse: collapse;
}
td {
border: 1px solid rgba(5, 5, 5, 0.06);
background: #fff;
color: #606268;
// width: 240px;
line-height: 11px;
height: 40px;
font-size: 14px;
padding-left: 5px;
&.label {
text-align: center;
background: #f6f8ff;
font-weight: bold;
color: #909399;
width: 175px;
}
}
</style>
<template> <template>
<div class="card content-box"> <vxe-modal
<span class="text"> 客户信息统计表(待完善) 🍓🍇🍈🍉</span> resize
</div> v-model="showModal"
title="信用卡详情"
height="512"
width="1303"
show-footer
esc-closable
>
<div class="card content-box">
<div class="mb-5 w-full flex justify-end">
<el-button type="default" @click="showModal = false">取消</el-button>
<template v-if="showEdit">
<el-button type="primary" @click="submitForm">保存</el-button>
</template>
<el-button type="primary" @click="showEdit = true" v-if="currentRow">修改</el-button>
</div>
<div class="w-full">
<table>
<tbody>
<tr>
<td class="label">发卡银行</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">开户时间</td>
<td colspan="2"><el-date-picker
v-model="form.trackTime" class="line-input" style="width: 100%"
:disabled="!showEdit"
format="YYYY-MM-DD"
value-format="YYYY-MM-DD"
type="date"
/></td>
</tr>
<tr>
<td class="label">卡号</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit" /></td>
<td class="label">卡片状态(正常/逾期)</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit" /></td>
</tr>
<tr>
<td class="label">授信额度</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit" /></td>
<td class="label">已用额度</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">近6个月平均使用额度</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit" /></td>
<td class="label">当前欠款金额</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">逾期期数</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">逾期后是否有过协商</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">有无分期</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">有无协商方案</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="请填写有/无" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">查询密码</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">最后一次还款时间</td>
<td colspan="2">
<el-date-picker
v-model="form.trackTime"
:disabled="!showEdit"
class="line-input" style="width: 100%"
format="YYYY-MM-DD"
value-format="YYYY-MM-DD"
type="date"
/></td>
</tr>
<tr>
<td class="label">支付密码</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">最后一次还款金额</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">是否有大额专项分期额度</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">大额专项分期借款种类</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">大额专项分期额度</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">大额专项分期开立日期</td>
<td colspan="2"><el-date-picker
v-model="form.trackTime"
:disabled="!showEdit"
class="line-input" style="width: 100%"
format="YYYY-MM-DD"
value-format="YYYY-MM-DD"
type="date"
/></td>
</tr>
<tr>
<td class="label">大额专项分期到期日期</td>
<td colspan="2"><el-date-picker
v-model="form.trackTime"
:disabled="!showEdit"
class="line-input" style="width: 100%"
format="YYYY-MM-DD"
value-format="YYYY-MM-DD"
type="date"
/></td>
<td class="label">大额专项分期已还期数</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">银行预留手机号码</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">银行预留家庭地址</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
<tr>
<td class="label">银行预留紧急联系人姓名</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
<td class="label">银行预留紧急联系人电话</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" :disabled="!showEdit"/></td>
</tr>
</tbody>
</table>
</div>
</div>
</vxe-modal>
</template> </template>
<script setup name="dictManage"></script> <script setup name="credit">
import { ref, computed } from 'vue';
import { ElMessage } from 'element-plus';
const showEdit = ref(false);
const showModal = ref(false);
const emits = defineEmits(['success']);
const currentRow = ref(null);
const currentIndex = ref(null);
const props = defineProps({
mergerCase: String,
returnConfig: Array,
returnData: Array
});
const form = ref({
roleName: '',
roleCode: '',
roleDesc: '',
});
const submitForm = async () => {
showEdit.value = false
emits('success', currentRow.value, currentIndex.value);
};
const openModal = (row, index) => {
if (row) {
showEdit.value = false
form.value = JSON.parse(JSON.stringify(row))
} else {
showEdit.value = true
form.value = {
roleName: '',
roleCode: '',
roleDesc: '',
}
}
currentRow.value = row
currentIndex.value = index
showModal.value = true;
};
defineExpose({
openModal,
});
</script>
<style lang="scss" scoped>
table {
width: calc(100%);
border-collapse: collapse;
}
td {
border: 1px solid rgba(5, 5, 5, 0.06);
background: #fff;
color: #606268;
// width: 240px;
line-height: 11px;
height: 40px;
font-size: 14px;
padding-left: 5px;
&.label {
text-align: center;
background: #f6f8ff;
font-weight: bold;
width: 175px;
color: #909399;
}
}
</style>
<template>
<div class="card table-box" style="padding: 0 40px">
<div class="flex justify-end mt-2">
<el-button type="primary" @click="submit()" v-if="route.query.id">保存</el-button>
</div>
<p class=" text-lg text-center mb-5">客户信息</p>
<div class=" text-xs flex justify-around"><span class=" ml-5">收单单位:</span><span class=" ml-5">收单时间:</span></div>
<table>
<tbody>
<tr>
<td class="label">录入人</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">推荐人</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">部门</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">角色</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">姓名</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">年龄</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">身份证号</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">属相</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">婚姻状况</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">电话</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">学历</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">职业</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">是否为公检法系统人员、教师、医生、律师、企业法人</td>
<td colspan="2">
<el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group></td>
<td class="label">如职业为企事业单位人员是否同意催收</td>
<td colspan="2"><el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group><br />
企事业单位的需客户本人同意纪委联系与谈话、去单位或者给单位打电话催收</td>
</tr>
<tr>
<td class="label">电子邮箱</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">月收入</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">预留工作单位</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">预留家庭住址</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">是否有起诉案件</td>
<td colspan="2">
<el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group>
</td>
<td class="label">案件描述</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">打卡收入</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">打卡银行</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">打卡银行和借款银行是否为同一银行</td>
<td colspan="5">
<el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group>
</td>
</tr>
<tr>
<td class="label" rowspan="2">个人及夫妻名下车辆</td>
<td class="label">数量</td>
<td ><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label" rowspan="2">个人及夫妻名下房产</td>
<td class="label">数量</td>
<td ><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">总价值</td>
<td><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">总价值</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">公积金及金额</td>
<td><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">是否有理财型保单 、股票、基金 、大额存款</td>
<td>
<el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group>
</td>
<td class="label">具体描述</td>
<td><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">是否有营业执照</td>
<td colspan="2">
<el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group>
</td>
<td class="label">子女工作是否需要政审</td>
<td colspan="2">
<el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group>
</td>
</tr>
<tr>
<td class="label">贷款类型</td>
<td colspan="5"
>是否为抵押类贷款,人保贷款,公积金贷款,经营贷,担保、联名担保、保证类贷款,保险类贷款(保单贷),对应名下有理财保险,分红保险,现金分期,装修贷,网贷/信用贷/信用卡与资产相关联的(如与房、车、营业执照(法人/个体)、商铺、公积金等),先息后本、按期结息自由还本<br />
<el-radio-group v-model="form.status">
<el-radio value="enable"></el-radio>
<el-radio value="disable"></el-radio>
</el-radio-group>
</td>
</tr>
<tr>
<td class="label">信用卡数量</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
<td class="label">信用贷、网贷机构数量</td>
<td colspan="2"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">特殊原因备注</td>
<td colspan="5"><el-input class="line-input" v-model="form.roleDesc" placeholder="" /></td>
</tr>
<tr>
<td class="label">法务分配</td>
<td colspan="5">录入人不用填写,由风控部人员分配</td>
</tr>
</tbody>
</table>
<p class="text-center my-3 py-1" style="background: rgb(209,215,236);">信用卡网贷状况统计*<span class=" text-xs text-red-600">(涉及金额部分单位为:元)</span></p>
<div class="creditcard">
<ProTable
:config="cardConfig"
:data="cardData"
:showPagination="false"
:showToolBar="false"
>
<template #table_top>
<div class="flex justify-between mb-3">
<div class="flex items-center">
<div class="ml-5">信用卡数量</div>
<div>
<el-input disabled v-model="card.number" >
<template #append></template>
</el-input>
</div>
<div class="ml-10">信用卡欠款合计</div>
<div>
<el-input disabled v-model="card.number" >
</el-input>
</div>
</div>
<div>
<el-button type="primary" @click="pushCreditcard()">新建信用卡</el-button>
</div>
</div>
</template>
</ProTable>
</div>
<div class="credit">
<ProTable
:config="creditConfig"
:data="creditData"
:showPagination="false"
:showToolBar="false"
>
<template #table_top>
<div class="flex justify-between mb-3">
<div class="flex items-center">
<div class="ml-5">信用贷、网贷机构数量</div>
<div>
<el-input disabled v-model="card.number" >
<template #append></template>
</el-input>
</div>
<div class="ml-10">信用贷、网贷欠款合计</div>
<div>
<el-input disabled v-model="card.number" >
</el-input>
</div>
</div>
<div>
<el-button type="primary" @click="pushCredit()">新建网贷&信用贷</el-button>
</div>
</div>
</template>
</ProTable>
</div>
<table>
<tbody>
<tr>
<td class="label">合计欠款总额</td>
<td colspan="5">5555</td>
</tr>
</tbody>
</table>
<Credit
ref="CreditRef"
@success="changeCredit"
></Credit>
<Creditcard
ref="CreditcardRef"
@success="changeCreditcard"
></Creditcard>
</div>
</template>
<script setup name="Customer" lang="jsx">
import { useTabsStore } from '@/stores/modules/tabs';
import { ElButton, ElTag, ElMessage } from 'element-plus';
import Credit from './Credit.vue';
import { useRoute } from 'vue-router';
import { useRouter } from 'vue-router';
import Creditcard from './Creditcard.vue';
import { ref, reactive, onBeforeMount } from 'vue';
const form = ref({
status: ''
});
const router = useRouter();
const tabStore = useTabsStore();
const route = useRoute();
const CreditRef = ref();
const CreditcardRef = ref();
const card = ref({
number: 3
});
const credit = ref({
number: 3
});
const cardData = ref([]);
const creditData = ref([]);
const pushCreditcard = (row, index) => {
CreditcardRef.value.openModal(row, index
);
};
const pushCredit = (row, index) => {
CreditRef.value.openModal(row, index
);
};
const changeCredit = (row) => {
}
const changeCreditcard = (row, index) => {
console.log('sss', row, index)
}
const submit = () => {
console.log('route', route)
tabStore.removeTabs(route.fullPath).then(res => {
router.push({
path: '/infoGather/customerGather'
});
});
}
const query = async (type) => {
const id = JSON.parse(route.query.id);
}
onBeforeMount(async () => {
query()
})
const cardConfig = reactive({
minHeight: 200,
columns: [
{ type: 'seq', width: 60, title: '序号', slots: {
default: ({ row, rowIndex }) => {
return (
<>
<div
onClick={() => pushCreditcard(row, rowIndex)}
className=" text-blue-400 cursor-pointer inline-block"
>
{rowIndex}
</div>
</>
);
},
}
},
{
field: 'name',
width: 100,
title: '发卡银行',
showOverflow: 'tooltip',
},
{
field: 'kinship',
width: 110,
title: '授信额度',
showOverflow: 'tooltip',
},
{
field: 'kinship',
width: 110,
title: '已用额度',
showOverflow: 'tooltip',
},{
field: 'kinship',
width: 110,
title: '合计欠款金额',
showOverflow: 'tooltip',
},{
field: 'kinship',
width: 110,
title: '大额专项欠款金额',
showOverflow: 'tooltip',
},{
field: 'kinship',
width: 110,
title: '逾期期数',
showOverflow: 'tooltip',
},{
field: 'kinship',
width: 110,
title: '近6个月平均使用额度',
showOverflow: 'tooltip',
},
{
field: 'kinship',
width: 110,
title: '有无协商方案',
showOverflow: 'tooltip',
},
{
field: 'kinship',
title: '卡片状态(逾期/正常)',
showOverflow: 'tooltip',
}
],
toolbarConfig: { enabled: false },
});
const creditConfig = reactive({
minHeight: 200,
columns: [
{ type: 'seq', width: 60, title: '序号', slots: {
default: ({ row, rowIndex }) => {
return (
<>
<div
onClick={() => pushCredit(row, rowIndex)}
className=" text-blue-400 cursor-pointer inline-block"
>
{rowIndex}
</div>
</>
);
},
}
},
{
field: 'name',
width: 100,
title: '贷款机构',
showOverflow: 'tooltip',
},
{
field: 'kinship',
width: 110,
title: '审批额度',
showOverflow: 'tooltip',
},
{
field: 'kinship',
width: 110,
title: '贷款笔数',
showOverflow: 'tooltip',
},{
field: 'kinship',
width: 110,
title: '贷款期数',
showOverflow: 'tooltip',
},{
field: 'kinship',
width: 110,
title: '已还期数',
showOverflow: 'tooltip',
},{
field: 'kinship',
width: 110,
title: '未还金额',
showOverflow: 'tooltip',
},
{
field: 'kinship',
title: '状态(逾期/正常)',
showOverflow: 'tooltip',
}
],
toolbarConfig: { enabled: false },
});
</script>
<style lang="scss" scoped>
table {
width: calc(100%);
border-collapse: collapse;
}
td {
border: 1px solid rgba(5, 5, 5, 0.06);
background: #fff;
color: #606268;
width: 240px;
line-height: 11px;
height: 40px;
font-size: 14px;
padding-left: 5px;
&.label {
text-align: center;
background: #f6f8ff;
font-weight: bold;
color: #909399;
}
}
.creditcard {
:deep(.card) {
// background: #fff3cc;
}
}
.credit {
:deep(.card) {
// background: #e1f1d9;
}
}
</style>
\ No newline at end of file
...@@ -3,13 +3,14 @@ ...@@ -3,13 +3,14 @@
<ProTable ref="proTable" :config="config" :api="getPlatformPage" :paramCallback="paramCallback" :selectdList="selectdList"> <ProTable ref="proTable" :config="config" :api="getPlatformPage" :paramCallback="paramCallback" :selectdList="selectdList">
<template #left_buttons> <template #left_buttons>
<!-- <el-button type="primary" :disabled="!selectdList || selectdList.length < 1" @click="pushCreditcard">新建信用卡</el-button> --> <!-- <el-button type="primary" :disabled="!selectdList || selectdList.length < 1" @click="pushCreditcard">新建信用卡</el-button> -->
<el-button type="primary" @click="pushCredit">新建信用卡</el-button> <!-- <el-button type="primary" @click="pushCredit">新建信用卡</el-button>
<el-button <el-button
type="primary" type="primary"
:disabled="!selectdList || selectdList.length < 1" :disabled="!selectdList || selectdList.length < 1"
@click="pushCreditcard" @click="pushCreditcard"
>新建网贷&信用贷</el-button >新建网贷&信用贷</el-button
> > -->
<el-button type="primary" @click="pushCustomer()">新建客户</el-button>
<el-button type="primary">发起风控审核</el-button> <el-button type="primary">发起风控审核</el-button>
</template> </template>
</ProTable> </ProTable>
...@@ -46,10 +47,10 @@ ...@@ -46,10 +47,10 @@
selectdList.value = []; selectdList.value = [];
} }
}; };
const pushCreditcard = () => { const pushCustomer = (row) => {
router.push({ router.push({
path: '/infoGather/customerGather/Creditcard', path: '/infoGather/customerGather/Customer',
query: { id: 44 }, //这里不能直接写成 query: JSON.stringify(item) query: row ? { id: row.id }: {}, //这里不能直接写成 query: JSON.stringify(item)
}); });
}; };
const pushCredit = () => { const pushCredit = () => {
...@@ -63,28 +64,42 @@ ...@@ -63,28 +64,42 @@
onCheckboxAll: onCheckboxAll, onCheckboxAll: onCheckboxAll,
columns: [ columns: [
{ type: 'checkbox', width: 60,fixed: 'left' }, { type: 'checkbox', width: 60,fixed: 'left' },
{ field: 'id', title: '客户ID' }, { field: 'id', title: '客户ID', slots: {
default: ({ row, rowIndex }) => {
return (
<>
<div
onClick={() => pushCustomer(row)}
className=" text-blue-400 cursor-pointer inline-block"
>
{row.id}
</div>
</>
);
},
}
},
{ {
field: 'createTime', field: 'createTime',
title: '创建日期', title: '创建日期',
search: { search: {
el: 'date-picker', el: 'date-picker',
labelWidth: 85,
props: { type: 'daterange', valueFormat: 'YYYY-MM-DD' }, props: { type: 'daterange', valueFormat: 'YYYY-MM-DD' },
span: 1.5,
}, },
}, },
{ {
field: 'createBy', field: 'createBy',
title: '创建人', title: '创建人',
search: { el: 'input', span: 1, props: { clearable: true } }, search: { el: 'input',labelWidth: 85, props: { clearable: true } },
}, },
{ field: 'name', title: '客户名称', search: { el: 'input' } }, { field: 'name', title: '客户名称', search: { labelWidth: 85, el: 'input' } },
{ field: 'name', title: '身份证号', search: { el: 'input' } }, { field: 'name', title: '身份证号', search: { labelWidth: 85, el: 'input' } },
{ field: 'name', title: '手机', search: { el: 'input' } }, { field: 'name', title: '手机', search: { labelWidth: 85, el: 'input' } },
{ field: 'name', title: '电子邮箱', search: { el: 'input' } }, { field: 'name', title: '电子邮箱', search: { labelWidth: 85, el: 'input' } },
{ field: 'maxStagesNum', title: '预留工作单位', search: { el: 'input' } }, { field: 'maxStagesNum', title: '预留工作单位', search: { labelWidth: 85, el: 'input' } },
{ field: 'maxStagesNum', title: '预留家庭地址', search: { el: 'input' } }, { field: 'maxStagesNum', title: '预留家庭地址', search: { labelWidth: 85, el: 'input' } },
{ field: 'remark', title: '备注', search: { el: 'input' } }, { field: 'remark', title: '备注', search: { labelWidth: 85, el: 'input' } },
], ],
}); });
......
This source diff could not be displayed because it is too large. You can view the blob instead.
<template> <template>
<div class="card content-box"> <div class="table-box">
<span class="text"> 风控审核报告(待完善) 🍓🍇🍈🍉</span> <div class=" bg-white pt-2 pl-2">
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
<el-tab-pane
:label="item.label"
:name="item.value"
v-for="(item, index) in tabs"
:key="index"
>
<template #label>
<div>
{{item.label}}
<span style="font-size: 20px; font-weight: bold;">{{item.msg}}</span>
</div>
</template>
</el-tab-pane>
</el-tabs>
</div>
<ProTable ref="proTable" :config="config" :api="getPlatformPage" :paramCallback="paramCallback">
</ProTable>
</div> </div>
</template> </template>
<script setup name="dictManage"></script> <script setup lang="jsx" name="platformManage">
import { ref, reactive, onMounted } from 'vue';
import { Plus, Delete, Edit, Setting } from '@element-plus/icons-vue';
import { getPlatformPage, deletePlatforms } from '@/api/platform';
import { getByStagesTotal } from '@/api/property';
import { ElMessageBox, ElMessage, ElButton, ElTag } from 'element-plus';
import { useRouter } from 'vue-router';
const tabs = ref([]);
import { useDict } from '@/hooks/useDict';
const { PhoneResultStatus, ReduceType, FlowStatus, FollowStatus, AuditStatus, CaseStatus } = useDict("PhoneResultStatus","ReduceType", "FlowStatus", "FollowStatus","AuditStatus", "CaseStatus");
const proTable = ref(null);
const selectdList = ref([]);
const onCheckboxChange = (row) => {
selectdList.value = row.records;
};
const router = useRouter();
const activeName = ref('pending');
const paramCallback = (param) => {
const obj = JSON.parse(JSON.stringify(param));
if (obj['createTime']) {
if (obj['createTime'][0]) obj['createTimeBegin'] = obj['createTime'][0];
if (obj['createTime'][1]) obj['createTimeEnd'] = obj['createTime'][1];
delete obj['createTime'];
}
setTimeout(() => {
const arr = JSON.parse(JSON.stringify(FlowStatus.value))
getByStagesTotal({...obj, flowStatus: null}).then(res => {
if (res.success) {
arr.forEach(item => {
const tt = res.result.find(v => v.flowStatus === item.value)
if (tt) {
item['msg'] = tt.number
} else {
item['msg'] = 0
}
})
tabs.value = arr
} else {
tabs.value = arr
}
}).catch(e => {
tabs.value = arr
})
}, (FlowStatus.value && FlowStatus.value.length) ? 100 : 1000)
return obj;
};
const onCheckboxAll = (flag) => {
if (flag.checked) {
selectdList.value = flag.records;
} else {
selectdList.value = [];
}
};
const pushCustomer = (row) => {
router.push({
path: '/infoGather/dangerReport/dangerReportDetail',
query: row ? { id: row.id }: {}, //这里不能直接写成 query: JSON.stringify(item)
});
};
const pushCredit = () => {
router.push({
path: '/infoGather/customerGather/Credit',
query: { id: 44 }, //这里不能直接写成 query: JSON.stringify(item)
});
};
const config = reactive({
onCheckboxChange: onCheckboxChange,
onCheckboxAll: onCheckboxAll,
columns: [
{ field: 'id', title: '客户ID', slots: {
default: ({ row, rowIndex }) => {
return (
<>
<div
onClick={() => pushCustomer(row)}
className=" text-blue-400 cursor-pointer inline-block"
>
{row.id}
</div>
</>
);
},
}
},
{
field: 'createTime',
title: '创建日期',
search: {
el: 'date-picker',
labelWidth: 85,
props: { type: 'daterange', valueFormat: 'YYYY-MM-DD' },
},
},
{
field: 'createBy',
title: '创建人',
search: { el: 'input',labelWidth: 85, props: { clearable: true } },
},
{ field: 'name', title: '客户名称', search: { labelWidth: 85, el: 'input' } },
{ field: 'name', title: '身份证号', search: { labelWidth: 85, el: 'input' } },
{ field: 'name', title: '手机', search: { labelWidth: 85, el: 'input' } },
{ field: 'name', title: '电子邮箱', search: { labelWidth: 85, el: 'input' } },
{ field: 'maxStagesNum', title: '信用卡数量', search: { labelWidth: 85, el: 'input' } },
{ field: 'maxStagesNum', title: '网贷&信用贷数量', search: { labelWidth: 85, el: 'input' } },
{ field: 'remark', title: '欠款总额', search: { labelWidth: 85, el: 'input' } },
{ field: 'remark', title: '备注', search: { labelWidth: 85, el: 'input' } },
{ field: 'remark', title: '风控审核状态'},
],
});
const query = () => proTable.value?.search();
const handleClick = () => {
setTimeout(() => {
query();
}, 300);
};
onMounted(() => {
query();
});
</script>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment