Commit 6a1b186b authored by 沈翠玲's avatar 沈翠玲

案件分派

parent ea98ead8
......@@ -118,7 +118,8 @@
props.showPagination,
props.dataCallback,
props.requestError,
props.paramCallback
props.paramCallback,
props.config
);
// 显示搜索
......@@ -183,9 +184,6 @@
const _search = () => {
search();
if (props.config.onCheckboxAll) {
props.config.onCheckboxAll({checked: false, records: []})
}
};
const _reset = () => {
......
......@@ -6,7 +6,8 @@ export function useProTable(
isPageable,
dataCallBack,
requestError,
paramCallback
paramCallback,
config
) {
const state = reactive({
loading: false,
......@@ -121,6 +122,9 @@ export function useProTable(
* */
const search = () => {
state.pageable.current = 1;
if (config.onCheckboxAll) {
config.onCheckboxAll({checked: false, records: []})
}
updatedTotalParam();
getTableList();
};
......
......@@ -49,7 +49,7 @@
<div style="margin-top: 10px; margin-bottom: 10px">
<el-radio-group v-model="radio" @change="changeRadio">
<el-radio :value="0" v-permission="'allcation_for_tenant'">分派到调解中心</el-radio>
<el-radio :value="1">分派到CPE</el-radio>
<!-- <el-radio :value="1">分派到CPE</el-radio> -->
</el-radio-group>
</div>
<template v-if="radio === 0 || (radio === 1 && !step)">
......@@ -276,7 +276,7 @@
const chooseIdea = (type) => {
editRowIndex.value = -1;
currentAllBtn.value = type;
const param = {
let param = {
type: currentAllBtn.value,
tenantId: currentTenant.value,
};
......@@ -286,12 +286,7 @@
if (lonsArr.value && lonsArr.value.length) {
param['loanIds'] = lonsArr.value.map((v) => v.id);
} else {
param['borrowerName'] = pageParams.value.borrowerName;
param['batchCode'] = pageParams.value.batchCode;
param['borrowerIdCard'] = pageParams.value.idCard;
param['borrowerPhone'] = pageParams.value.borrowerPhone;
param['commissionAmount'] = pageParams.value.commissionAmount;
param['remainingAmount'] = pageParams.value.remainingAmount;
param = { ...param, ...pageParams.value };
}
distributeCpe(param).then((res) => {
if (res.success) {
......@@ -319,12 +314,7 @@
getTree();
step.value = 0;
if (!authButtonListGet.includes('allcation_for_tenant')) {
radio.value = 1;
} else {
radio.value = 0;
}
radio.value = 0;
let p = {}
if (lonsArr.value && lonsArr.value.length) {
p['loanIds'] = lonsArr.value.map((v) => v.id);
......@@ -413,16 +403,11 @@
}
} else if (radio.value === 0) {
// chooseIdea('BORROWER');
const param = {};
let param = {};
if (lonsArr.value && lonsArr.value.length) {
param['loanIds'] = lonsArr.value.map((v) => v.id);
} else {
param['borrowerName'] = pageParams.value.borrowerName;
param['batchCode'] = pageParams.value.batchCode;
param['borrowerIdCard'] = pageParams.value.idCard;
param['borrowerPhone'] = pageParams.value.borrowerPhone;
param['commissionAmount'] = pageParams.value.commissionAmount;
param['remainingAmount'] = pageParams.value.remainingAmount;
param = { ...pageParams.value };
param['tenantId'] = null;
}
distributeLoan(currentTenant.value, param).then((res) => {
......
......@@ -9,7 +9,7 @@
<img src="@/assets/images/caselist.svg" />
</div>
<div class="title_warp">
<div class="items">未分派案件数</div>
<div class="items">派案件数</div>
<div class="item items1">{{statisis.caseNum}}</div>
</div>
</div>
......@@ -18,8 +18,8 @@
<img src="@/assets/images/userlist.svg" />
</div>
<div class="title_warp">
<div class="items">未分派CPE</div>
<div class="item items1">{{statisis.cpeNum}}</div>
<div class="items">在派案人</div>
<div class="item items1">{{statisis.borrowerNum}}</div>
</div>
</div>
<div class="item_warp">
......@@ -27,7 +27,7 @@
<img src="@/assets/images/money.svg" />
</div>
<div class="title_warp">
<div class="items">未分派总金额数</div>
<div class="items">在派金额</div>
<div class="item items1">{{statisis.amount}}</div>
</div>
</div>
......@@ -89,6 +89,7 @@
const router = useRouter();
const onCheckboxChange = (row) => {
selectdList.value = row.records;
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
const statisis = ref({});
const getStatisis = (params) => {
......@@ -160,6 +161,7 @@
} else {
selectdList.value = [];
}
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
const config = reactive({
columns: [
......@@ -264,7 +266,6 @@
showOverflow: 'tooltip',
width: 80,
enum: DistributeStatus,
search: { el: 'select', props: { filterable: true }, labelWidth: 105 },
fieldNames: { label: 'label', value: 'value' },
slots: {
default: ({ row }) => {
......
This diff is collapsed.
......@@ -66,13 +66,13 @@
<vxe-modal
resize
v-model="showModal"
title="提示"
title="案件收回"
height="342"
width="560"
show-footer
esc-closable
>
<div class="top">
<div class="top px-3">
<div class="number-box">
<div class="number-left">
<div class="icon-wrapper">
......@@ -107,15 +107,18 @@
</div>
</div>
</div>
<div class="w-full px-3 mt-3 overflow-auto flex-col flex mytable">
⚠️回收处理后可重新分派<br />
回收:只回收未留案的案件<br />
强制回收:所有案件都会回收,留案案件会被强制回收<br />
<div class="w-full mt-6 px-3 overflow-hidden flex mytable items-center">
<div class="font-bold pr-6">留案案件:</div>
<el-radio-group v-model="form.option">
<!-- works when >=2.6.0, recommended ✔️ not work when <2.6.0 ❌ -->
<el-radio value="withdraw">回收</el-radio>
<!-- works when <2.6.0, deprecated act as value when >=3.0.0 -->
<el-radio label="fullWithdraw">强制回收</el-radio>
</el-radio-group>
</div>
<template #footer>
<el-button type="default" @click="showModal = false">取消</el-button>
<el-button type="primary" @click="submitForm('withdraw')">回收</el-button>
<el-button type="danger" @click="submitForm('fullWithdraw')">强制回收</el-button>
<el-button type="primary" @click="submitForm1">确认</el-button>
</template>
</vxe-modal>
</div>
......@@ -141,6 +144,9 @@
const curParam = ref({});
const showModal = ref(false);
const dataValue = ref('对查询结果操作');
const form = reactive({
option: 'withdraw'
});
const dataOptions = [
{
label: '对查询结果操作',
......@@ -153,6 +159,7 @@
];
const onCheckboxChange = (row) => {
selectdList.value = row.records;
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
const statisis = ref({});
const statisis1 = ref({});
......@@ -190,6 +197,7 @@
p = curParam.value;
}
getStatisis1(p);
form.option = 'withdraw'
showModal.value = true;
};
const submitForm = async (type) => {
......@@ -220,6 +228,9 @@
query();
showModal.value = false;
};
const submitForm1 = () => {
submitForm(form.option)
}
const paramCallback = (param) => {
const obj = JSON.parse(JSON.stringify(param));
obj['tenant'] = 0
......@@ -249,6 +260,7 @@
} else {
selectdList.value = [];
}
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
const onCellClick = (row) => {
router.push({
......
......@@ -92,6 +92,7 @@
const RefImage = ref(false);
const onCheckboxChange = (row) => {
selectdList.value = row.records;
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
// watch(
// () => AuditStatus.value,
......@@ -176,6 +177,7 @@
} else {
selectdList.value = [];
}
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
const config = computed(() => {
return {
......
......@@ -66,13 +66,13 @@
<vxe-modal
resize
v-model="showModal"
title="提示"
title="案件撤案"
height="342"
width="560"
show-footer
esc-closable
>
<div class="top">
<div class="top px-3">
<div class="number-box">
<div class="number-left">
<div class="icon-wrapper">
......@@ -107,15 +107,18 @@
</div>
</div>
</div>
<div class="w-full px-3 mt-3 overflow-auto flex-col flex mytable">
⚠️撤案处理后不可重新分派<br />
撤案:只撤案未留案的案件<br />
强制撤案:所有案件都会撤案,留案案件会被强制撤案<br />
<div class="w-full mt-6 px-3 overflow-hidden flex mytable items-center">
<div class="font-bold pr-6">撤案案件:</div>
<el-radio-group v-model="form.option">
<!-- works when >=2.6.0, recommended ✔️ not work when <2.6.0 ❌ -->
<el-radio value="withdraw">撤案</el-radio>
<!-- works when <2.6.0, deprecated act as value when >=3.0.0 -->
<el-radio label="fullWithdraw">强制撤案</el-radio>
</el-radio-group>
</div>
<template #footer>
<el-button type="default" @click="showModal = false">取消</el-button>
<el-button type="primary" @click="submitForm('withdraw')">撤案</el-button>
<el-button type="danger" @click="submitForm('fullWithdraw')">强制撤案</el-button>
<el-button type="primary" @click="submitForm1">确认</el-button>
</template>
</vxe-modal>
</div>
......@@ -141,6 +144,9 @@
const curParam = ref({});
const showModal = ref(false);
const dataValue = ref('对查询结果操作');
const form = reactive({
option: 'withdraw'
});
const dataOptions = [
{
label: '对查询结果操作',
......@@ -153,6 +159,7 @@
];
const onCheckboxChange = (row) => {
selectdList.value = row.records;
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
const statisis = ref({});
const statisis1 = ref({});
......@@ -241,6 +248,7 @@
p = curParam.value;
}
getStatisis1(p);
form.option = 'withdraw'
showModal.value = true;
};
const onCheckboxAll = (flag) => {
......@@ -249,6 +257,7 @@
} else {
selectdList.value = [];
}
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
const onCellClick = (row) => {
router.push({
......@@ -629,6 +638,9 @@
onCheckboxChange: onCheckboxChange,
onCheckboxAll: onCheckboxAll,
});
const submitForm1 = () => {
submitForm(form.option)
}
const query = () => caseLRef.value?.search();
......
......@@ -87,13 +87,17 @@
</el-form-item>
</el-col>
<el-col :span="11">
<el-form-item class="w-full" label="分期最大期数:" prop="maxStagesNum" >
<el-input v-model.number="form.maxStagesNum" placeholder="请输入" style="width: 100%" />
<el-form-item class="w-full" label="是否共案处理:" prop="mergerCase">
<el-radio-group v-model="form.mergerCase">
<el-radio value="Y"></el-radio>
<el-radio value="N"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="13">
<el-form-item class="w-full" label="最低分期金额:" prop="minAmount">
<el-input v-model="form.minAmount" placeholder="请输入" style="width: 100%" />
<el-input v-model="form.minAmount" type="number" placeholder="请输入" style="width: 100%" />
</el-form-item>
</el-col>
<el-col :span="11">
......@@ -102,11 +106,8 @@
</el-form-item>
</el-col>
<el-col :span="13">
<el-form-item class="w-full" label="是否共案处理:" prop="mergerCase">
<el-radio-group v-model="form.mergerCase">
<el-radio value="Y"></el-radio>
<el-radio value="N"></el-radio>
</el-radio-group>
<el-form-item class="w-full" label="分期最大期数:" prop="maxStagesNum" >
<el-input v-model.number="form.maxStagesNum" placeholder="请输入" style="width: 100%" />
</el-form-item>
</el-col>
</el-row>
......@@ -164,9 +165,9 @@
}
}
}
const checkminAmount = (rule, value, callback) => {
if (isNaN(Number(value))) {
callback(new Error('请输入数字值'));
const checkmaxStagesNum = (rule, value, callback) => {
if (isNaN(Number(value)) || Number(value) % 1 !== 0) {
callback(new Error('请输入整数值'));
} else {
callback();
}
......@@ -175,9 +176,12 @@
discount: [
{ validator: checkDiscount, trigger: 'blur' },
],
minAmount: [
{ validator: checkminAmount, trigger: 'blur' },
]
// minAmount: [
// { validator: checkminAmount, trigger: 'blur' },
// ],
maxStagesNum: [
{ validator: checkmaxStagesNum, trigger: 'blur' },
],
});
const downloadfile = inject('download');
const formRef = ref();
......
......@@ -104,6 +104,7 @@
};
const onCheckboxChange = (row) => {
selectdList.value = row.records;
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
const onCheckboxAll = (flag) => {
if (flag.checked) {
......@@ -111,6 +112,7 @@
} else {
selectdList.value = [];
}
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
const paramCallback = (param) => {
console.log('objobj', param)
......
......@@ -107,6 +107,7 @@
};
const onCheckboxChange = (row) => {
selectdList.value = row.records;
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
const onCheckboxAll = (flag) => {
if (flag.checked) {
......@@ -114,6 +115,7 @@
} else {
selectdList.value = [];
}
dataValue.value = selectdList.value.length > 0 ? '对选中项操作' : '对查询结果操作'
};
const onCellClick = (row) => {
router.push({
......
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