新增征信维护页面骨架

This commit is contained in:
wkc
2026-03-24 09:36:07 +08:00
parent 033b7fca68
commit 96bb4f36cf
2 changed files with 175 additions and 0 deletions

View File

@@ -0,0 +1,145 @@
<template>
<div class="app-container">
<div class="page-title">征信维护</div>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px">
<el-form-item label="姓名">
<el-input
v-model="queryParams.name"
placeholder="请输入姓名"
clearable
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="柜员号">
<el-input
v-model="queryParams.staffId"
placeholder="请输入柜员号"
clearable
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="身份证号">
<el-input
v-model="queryParams.idCard"
placeholder="请输入身份证号"
clearable
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="是否已维护">
<el-select v-model="queryParams.maintained" clearable placeholder="请选择是否已维护" style="width: 240px">
<el-option label="已维护" value="1" />
<el-option label="未维护" value="0" />
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-upload2" size="mini">批量上传征信HTML</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList" />
</el-row>
<el-table :data="creditInfoList" v-loading="loading">
<el-table-column label="姓名" prop="name" align="center" />
<el-table-column label="柜员号" prop="staffId" align="center" />
<el-table-column label="身份证号" prop="idCard" align="center" />
<el-table-column label="最近征信查询日期" prop="queryDate" align="center" width="160" />
<el-table-column label="负债笔数" prop="debtCount" align="center" width="100" />
<el-table-column label="负债总额" prop="debtTotalAmount" align="center" width="140" />
<el-table-column label="民事案件笔数" prop="civilCnt" align="center" width="120" />
<el-table-column label="强制执行笔数" prop="enforceCnt" align="center" width="120" />
<el-table-column label="行政处罚笔数" prop="admCnt" align="center" width="120" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="160">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view">详情</el-button>
<el-button size="mini" type="text" icon="el-icon-delete">删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</div>
</template>
<script>
import { listCreditInfo } from "@/api/ccdiCreditInfo";
export default {
name: "CcdiCreditInfo",
data() {
return {
loading: false,
showSearch: true,
total: 0,
creditInfoList: [],
queryParams: {
pageNum: 1,
pageSize: 10,
name: undefined,
staffId: undefined,
idCard: undefined,
maintained: undefined,
},
};
},
created() {
this.getList();
},
methods: {
getList() {
this.loading = true;
return listCreditInfo(this.queryParams)
.then((response) => {
const rows = response.rows || (response.data && response.data.rows) || [];
const total = response.total || (response.data && response.data.total) || 0;
this.creditInfoList = rows;
this.total = total;
})
.finally(() => {
this.loading = false;
});
},
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
resetQuery() {
this.queryParams = {
pageNum: 1,
pageSize: 10,
name: undefined,
staffId: undefined,
idCard: undefined,
maintained: undefined,
};
this.resetForm("queryForm");
this.handleQuery();
},
},
};
</script>
<style scoped>
.page-title {
margin-bottom: 16px;
font-size: 18px;
font-weight: 600;
color: #303133;
}
</style>

View File

@@ -0,0 +1,30 @@
const assert = require("assert");
const fs = require("fs");
const path = require("path");
const componentPath = path.resolve(
__dirname,
"../../src/views/ccdiCreditInfo/index.vue"
);
assert(fs.existsSync(componentPath), "未找到征信维护页面 index.vue");
const source = fs.readFileSync(componentPath, "utf8");
[
"征信维护",
"批量上传征信HTML",
"最近征信查询日期",
"负债笔数",
"负债总额",
"民事案件笔数",
"强制执行笔数",
"行政处罚笔数",
"详情",
"删除",
"@/api/ccdiCreditInfo",
].forEach((token) => {
assert(source.includes(token), `征信维护页面缺少关键结构: ${token}`);
});
console.log("credit-info-page-layout test passed");