Commit 461e68ee authored by 沈翠玲's avatar 沈翠玲

我的案件和全部案件增加统计

parent 3a0a9f93
...@@ -3,6 +3,10 @@ import request from '@/utils/http/index'; ...@@ -3,6 +3,10 @@ import request from '@/utils/http/index';
export const getCreditPage = (params) => { export const getCreditPage = (params) => {
return request.get('/Loan/page', params); return request.get('/Loan/page', params);
}; };
// 资产列表
export const getCreditTotal = (params) => {
return request.get('/Loan/total', params);
};
// 根据id获取资产详情 // 根据id获取资产详情
export const getCredit = (id) => { export const getCredit = (id) => {
return request.get('/Loan/getById?id=' + id); return request.get('/Loan/getById?id=' + id);
......
...@@ -279,7 +279,7 @@ ...@@ -279,7 +279,7 @@
.vxe-table--render-default .vxe-body--column, .vxe-table--render-default .vxe-body--column,
.vxe-table--render-default .vxe-footer--column, .vxe-table--render-default .vxe-footer--column,
.vxe-table--render-default .vxe-header--column { .vxe-table--render-default .vxe-header--column {
line-height: 14px !important; line-height: 15px !important;
} }
.vxe-table--render-default.size--small .vxe-header--column.col--ellipsis { .vxe-table--render-default.size--small .vxe-header--column.col--ellipsis {
height: 40px !important; height: 40px !important;
......
...@@ -2,17 +2,46 @@ ...@@ -2,17 +2,46 @@
<div class="table-box"> <div class="table-box">
<div class="table-inner"> <div class="table-inner">
<ProTable :config="config" ref="caseLRef" :api="getCreditPage" :paramCallback="paramCallback"> <ProTable :config="config" ref="caseLRef" :api="getCreditPage" :paramCallback="paramCallback">
<!-- <ProTable :config="config" ref="caseLRef" :data="data"> --> <template #table_top>
<!-- <template #table_top> <div class="style-lable" style="width: 100%">
<div class="topgrp"> <div class="item_warp" style="width: 19%">
<div class="topbox"> <div class="img_warp">
<div class="topinner"> <img src="@/assets/images/caselist.svg" />
<p>统计值</p>
<p>111</p>
</div> </div>
<div class="title_warp">
<div class="items">案件数量</div>
<div class="item items1">{{statisis.caseNum}}</div>
</div> </div>
</div> </div>
</template> --> <div class="item_warp" style="width: 19%">
<div class="img_warp">
<img src="@/assets/images/userlist.svg" />
</div>
<div class="title_warp">
<div class="items">案人人数</div>
<div class="item items1">{{statisis.cpeNum}}</div>
</div>
</div>
<div class="item_warp" style="width: 19%">
<div class="img_warp">
<img src="@/assets/images/money.svg" />
</div>
<div class="title_warp">
<div class="items">委案金额</div>
<div class="item items1">{{statisis.amount}}</div>
</div>
</div>
<div class="item_warp" style="width: 19%">
<div class="img_warp">
<img src="@/assets/images/tocrash.svg" />
</div>
<div class="title_warp">
<div class="items">待还金额</div>
<div class="item items1">{{statisis.unAmount}}</div>
</div>
</div>
</div>
</template>
</ProTable> </ProTable>
</div> </div>
<caseModal ref="caseModalRef" /> <caseModal ref="caseModalRef" />
...@@ -23,10 +52,12 @@ ...@@ -23,10 +52,12 @@
import caseModal from './components/caseModal.vue'; import caseModal from './components/caseModal.vue';
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import { reactive, ref } from 'vue'; import { reactive, ref } from 'vue';
import { getCreditPage } from '@/api/property'; import { getCreditPage, getCreditTotal } from '@/api/property';
import { ElButton, ElMessage, ElTag } from 'element-plus'; import { ElButton, ElMessage, ElTag } from 'element-plus';
const caseModalRef = ref(); const caseModalRef = ref();
const caseLRef = ref(); const caseLRef = ref();
const statisis = ref({});
import { onMounted } from 'vue'; import { onMounted } from 'vue';
import { getPlatformPage } from '@/api/platform'; import { getPlatformPage } from '@/api/platform';
import { getManageOrgPage } from '@/api/manageOrg'; import { getManageOrgPage } from '@/api/manageOrg';
...@@ -39,7 +70,13 @@ ...@@ -39,7 +70,13 @@
query: { id: row.id }, //这里不能直接写成 query: JSON.stringify(item) query: { id: row.id }, //这里不能直接写成 query: JSON.stringify(item)
}); });
}; };
const getStatisis = (params) => {
getCreditTotal(params).then((res) => {
if (res.success) {
statisis.value = res.result;
}
});
};
const paramCallback = (param) => { const paramCallback = (param) => {
const obj = JSON.parse(JSON.stringify(param)); const obj = JSON.parse(JSON.stringify(param));
if (obj['cpeDate']) { if (obj['cpeDate']) {
...@@ -57,6 +94,7 @@ ...@@ -57,6 +94,7 @@
if (obj['tenantTime'][1]) obj['tenantTimeEnd'] = obj['tenantTime'][1]; if (obj['tenantTime'][1]) obj['tenantTimeEnd'] = obj['tenantTime'][1];
delete obj['tenantTime']; delete obj['tenantTime'];
} }
getStatisis(obj);
return obj; return obj;
}; };
const config = reactive({ const config = reactive({
......
...@@ -2,6 +2,46 @@ ...@@ -2,6 +2,46 @@
<div class="table-box"> <div class="table-box">
<div class="table-inner"> <div class="table-inner">
<ProTable :config="config" ref="caseLRef" :api="getCreditPage" :paramCallback="paramCallback" :selectdList="selectdList"> <ProTable :config="config" ref="caseLRef" :api="getCreditPage" :paramCallback="paramCallback" :selectdList="selectdList">
<template #table_top>
<div class="style-lable" style="width: 100%">
<div class="item_warp" style="width: 19%">
<div class="img_warp">
<img src="@/assets/images/caselist.svg" />
</div>
<div class="title_warp">
<div class="items">案件数量</div>
<div class="item items1">{{statisis.caseNum}}</div>
</div>
</div>
<div class="item_warp" style="width: 19%">
<div class="img_warp">
<img src="@/assets/images/userlist.svg" />
</div>
<div class="title_warp">
<div class="items">案人人数</div>
<div class="item items1">{{statisis.cpeNum}}</div>
</div>
</div>
<div class="item_warp" style="width: 19%">
<div class="img_warp">
<img src="@/assets/images/money.svg" />
</div>
<div class="title_warp">
<div class="items">委案金额</div>
<div class="item items1">{{statisis.amount}}</div>
</div>
</div>
<div class="item_warp" style="width: 19%">
<div class="img_warp">
<img src="@/assets/images/tocrash.svg" />
</div>
<div class="title_warp">
<div class="items">待还金额</div>
<div class="item items1">{{statisis.unAmount}}</div>
</div>
</div>
</div>
</template>
<template #left_buttons> <template #left_buttons>
<div class="flex rounded w-full h-11 items-center pl-2 btn-grp mb-1"> <div class="flex rounded w-full h-11 items-center pl-2 btn-grp mb-1">
<el-dropdown @command="(command) => dataValue = command"> <el-dropdown @command="(command) => dataValue = command">
...@@ -32,7 +72,7 @@ ...@@ -32,7 +72,7 @@
<script setup name="case-manage" lang="jsx"> <script setup name="case-manage" lang="jsx">
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import { reactive, ref } from 'vue'; import { reactive, ref } from 'vue';
import { getCreditPage } from '@/api/property'; import { getCreditPage, getCreditTotal } from '@/api/property';
import { ElMessageBox, ElMessage } from 'element-plus'; import { ElMessageBox, ElMessage } from 'element-plus';
const caseLRef = ref(); const caseLRef = ref();
import { stayLoan } from '@/api/allcation'; import { stayLoan } from '@/api/allcation';
...@@ -46,6 +86,7 @@ ...@@ -46,6 +86,7 @@
const router = useRouter(); const router = useRouter();
const selectdList = ref([]); const selectdList = ref([]);
const curParam = ref({}); const curParam = ref({});
const statisis = ref({});
const dataValue = ref('对查询结果操作'); const dataValue = ref('对查询结果操作');
const dataOptions = [ const dataOptions = [
{ {
...@@ -57,6 +98,13 @@ ...@@ -57,6 +98,13 @@
value: '对选中项操作', value: '对选中项操作',
} }
]; ];
const getStatisis = (params) => {
getCreditTotal(params).then((res) => {
if (res.success) {
statisis.value = res.result;
}
});
};
const onCheckboxChange = (row) => { const onCheckboxChange = (row) => {
selectdList.value = row.records; selectdList.value = row.records;
}; };
...@@ -78,12 +126,18 @@ ...@@ -78,12 +126,18 @@
if (userInfo.id) { if (userInfo.id) {
obj['cpe'] = userInfo.id; obj['cpe'] = userInfo.id;
} }
if (obj['trackTime']) {
if (obj['trackTime'][0]) obj['trackTimeBegin'] = obj['trackTime'][0];
if (obj['trackTime'][1]) obj['trackTimeEnd'] = obj['trackTime'][1];
delete obj['trackTime'];
}
if (obj['cpeDate']) { if (obj['cpeDate']) {
if (obj['cpeDate'][0]) obj['cpeDateBegin'] = obj['cpeDate'][0]; if (obj['cpeDate'][0]) obj['cpeDateBegin'] = obj['cpeDate'][0];
if (obj['cpeDate'][1]) obj['cpeDateEnd'] = obj['cpeDate'][1]; if (obj['cpeDate'][1]) obj['cpeDateEnd'] = obj['cpeDate'][1];
delete obj['cpeDate']; delete obj['cpeDate'];
} }
curParam.value = obj; curParam.value = obj;
getStatisis(obj);
return obj; return obj;
}; };
const stayCase = async () => { const stayCase = async () => {
...@@ -238,6 +292,17 @@ ...@@ -238,6 +292,17 @@
labelWidth: 90, labelWidth: 90,
}, },
}, },
{
field: 'trackTime',
title: '跟进时间',
showOverflow: 'tooltip',
width: 130,
search: {
el: 'date-picker',
props: { type: 'daterange', valueFormat: 'YYYY-MM-DD' },
labelWidth: 90
},
},
{ {
field: 'principalBalance', field: 'principalBalance',
title: '本金余额', title: '本金余额',
......
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