You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

538 lines
21 KiB

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>支付查询 - 资金使用管理系统</title>
<link href="https://cdn.staticfile.org/bootstrap/5.3.0/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.staticfile.org/bootstrap-icons/1.11.0/font/bootstrap-icons.min.css">
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Microsoft YaHei', sans-serif;
background-color: #f5f7fa;
padding: 20px;
}
.page-header {
background: white;
padding: 25px 30px;
border-radius: 10px;
margin-bottom: 20px;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}
.page-title {
font-size: 24px;
font-weight: 600;
color: #333;
margin: 0;
}
.page-title i {
margin-right: 10px;
color: #667eea;
}
.filter-section {
background: white;
padding: 20px 25px;
border-radius: 10px;
margin-bottom: 20px;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}
.filter-row {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 15px;
align-items: end;
}
.form-label {
font-weight: 500;
color: #333;
margin-bottom: 8px;
font-size: 14px;
}
.main-content {
background: white;
border-radius: 10px;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
overflow: hidden;
}
.content-header {
padding: 20px 25px;
border-bottom: 1px solid #e5e7eb;
display: flex;
justify-content: space-between;
align-items: center;
}
.content-title {
font-size: 18px;
font-weight: 600;
color: #333;
margin: 0;
}
.table-container {
padding: 25px;
}
.table {
margin: 0;
}
.table thead th {
border-top: none;
border-bottom: 2px solid #e5e7eb;
font-weight: 600;
color: #666;
font-size: 14px;
padding: 12px;
background-color: #f8f9fa;
}
.table tbody td {
padding: 15px 12px;
vertical-align: middle;
border-bottom: 1px solid #f3f4f6;
}
.table tbody tr:hover {
background-color: #f8f9fa;
}
.badge {
padding: 6px 12px;
font-weight: 500;
font-size: 12px;
}
.badge-pending {
background-color: #fef3c7;
color: #92400e;
}
.badge-processing {
background-color: #dbeafe;
color: #1e40af;
}
.badge-success {
background-color: #d1fae5;
color: #065f46;
}
.badge-failed {
background-color: #fee2e2;
color: #991b1b;
}
.badge-cancelled {
background-color: #f3f4f6;
color: #6b7280;
}
.payment-type {
display: flex;
align-items: center;
gap: 8px;
}
.payment-type i {
font-size: 18px;
}
.payment-type .text-primary {
color: #667eea;
}
.payment-type .text-success {
color: #10b981;
}
.payment-type .text-info {
color: #3b82f6;
}
.btn-action {
padding: 5px 12px;
font-size: 12px;
margin-right: 5px;
}
.empty-state {
text-align: center;
padding: 60px 20px;
color: #999;
}
.empty-state i {
font-size: 64px;
margin-bottom: 20px;
opacity: 0.3;
}
.pagination-info {
display: flex;
justify-content: space-between;
align-items: center;
padding: 15px 25px;
border-top: 1px solid #e5e7eb;
}
.amount {
font-weight: 600;
color: #333;
}
</style>
</head>
<body>
<!-- 页面头部 -->
<div class="page-header">
<h1 class="page-title">
<i class="bi bi-search"></i> 支付流程查询
</h1>
</div>
<!-- 筛选区域 -->
<div class="filter-section">
<form id="filterForm">
<div class="filter-row">
<div>
<label class="form-label">支付类型</label>
<select class="form-select" id="paymentType">
<option value="">全部</option>
<option value="direct">直接支付</option>
<option value="beijing">非直接支付</option>
<option value="procurement">采购管理支付</option>
<option value="meeting">会议、培训、接待支付</option>
<option value="vehicle">车船管理支付</option>
<option value="instrument">仪器管理支付</option>
<option value="travel">出差管理支付</option>
<option value="contract">合同管理支付</option>
<option value="installation">安装维修支付</option>
</select>
</div>
<div>
<label class="form-label">支付状态</label>
<select class="form-select" id="paymentStatus">
<option value="">全部</option>
<option value="pending">待支付</option>
<option value="processing">支付中</option>
<option value="success">支付成功</option>
<option value="failed">支付失败</option>
<option value="cancelled">已取消</option>
</select>
</div>
<div>
<label class="form-label">支付人</label>
<input type="text" class="form-control" id="payer" placeholder="输入支付人姓名">
</div>
<div>
<label class="form-label">支付时间</label>
<input type="date" class="form-control" id="startDate">
</div>
<div>
<label class="form-label"></label>
<input type="date" class="form-control" id="endDate">
</div>
<div>
<label class="form-label">金额范围</label>
<select class="form-select" id="amountRange">
<option value="">全部</option>
<option value="0-50000">5万以下</option>
<option value="50000-100000">5-10万</option>
<option value="100000-300000">10-30万</option>
<option value="300000+">30万以上</option>
</select>
</div>
<div>
<label class="form-label">关键词</label>
<input type="text" class="form-control" id="keyword" placeholder="输入关键词搜索">
</div>
<div>
<button type="button" class="btn btn-primary w-100" onclick="searchPayment()">
<i class="bi bi-search"></i> 查询
</button>
</div>
<div>
<button type="button" class="btn btn-outline-secondary w-100" onclick="resetFilter()">
<i class="bi bi-arrow-clockwise"></i> 重置
</button>
</div>
</div>
</form>
</div>
<!-- 主要内容 -->
<div class="main-content">
<div class="content-header">
<h2 class="content-title">
<i class="bi bi-list-ul"></i> 支付记录
</h2>
<div>
<button class="btn btn-sm btn-outline-primary" onclick="exportData()">
<i class="bi bi-download"></i> 导出数据
</button>
</div>
</div>
<div class="table-container">
<div class="table-responsive">
<table class="table table-hover">
<thead>
<tr>
<th>支付编号</th>
<th>支付类型</th>
<th>支付事项</th>
<th>支付人</th>
<th>支付金额</th>
<th>支付方式</th>
<th>支付状态</th>
<th>支付时间</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>PY-2024-001</td>
<td>
<div class="payment-type">
<i class="bi bi-lightning text-primary"></i>
<span>直接支付</span>
</div>
</td>
<td>小额采购 - 办公用品</td>
<td>张三</td>
<td class="amount">¥45,000</td>
<td>银行转账</td>
<td><span class="badge badge-success">支付成功</span></td>
<td>2024-01-15 14:30</td>
<td>
<button class="btn btn-sm btn-outline-primary btn-action" onclick="viewDetail('PY-2024-001')">
<i class="bi bi-eye"></i> 查看
</button>
</td>
</tr>
<tr>
<td>PY-2024-002</td>
<td>
<div class="payment-type">
<i class="bi bi-building text-info"></i>
<span>非直接支付</span>
</div>
</td>
<td>公开招标 - 设备采购</td>
<td>李四</td>
<td class="amount">¥280,000</td>
<td>银行转账</td>
<td><span class="badge badge-processing">支付中</span></td>
<td>2024-01-15 11:20</td>
<td>
<button class="btn btn-sm btn-outline-primary btn-action" onclick="viewDetail('PY-2024-002')">
<i class="bi bi-eye"></i> 查看
</button>
</td>
</tr>
<tr>
<td>PY-2024-003</td>
<td>
<div class="payment-type">
<i class="bi bi-cart text-success"></i>
<span>采购管理支付</span>
</div>
</td>
<td>政府采购 - 比价采购</td>
<td>王五</td>
<td class="amount">¥85,000</td>
<td>银行转账</td>
<td><span class="badge badge-success">支付成功</span></td>
<td>2024-01-14 16:45</td>
<td>
<button class="btn btn-sm btn-outline-primary btn-action" onclick="viewDetail('PY-2024-003')">
<i class="bi bi-eye"></i> 查看
</button>
</td>
</tr>
<tr>
<td>PY-2024-004</td>
<td>
<div class="payment-type">
<i class="bi bi-calendar-event text-info"></i>
<span>会议、培训、接待支付</span>
</div>
</td>
<td>会议审批支付</td>
<td>赵六</td>
<td class="amount">¥3,200</td>
<td>银行转账</td>
<td><span class="badge badge-success">支付成功</span></td>
<td>2024-01-14 15:10</td>
<td>
<button class="btn btn-sm btn-outline-primary btn-action" onclick="viewDetail('PY-2024-004')">
<i class="bi bi-eye"></i> 查看
</button>
</td>
</tr>
<tr>
<td>PY-2024-005</td>
<td>
<div class="payment-type">
<i class="bi bi-tools text-success"></i>
<span>安装维修支付</span>
</div>
</td>
<td>安装、维修申请支付</td>
<td>钱七</td>
<td class="amount">¥15,800</td>
<td>银行转账</td>
<td><span class="badge badge-success">支付成功</span></td>
<td>2024-01-14 13:30</td>
<td>
<button class="btn btn-sm btn-outline-primary btn-action" onclick="viewDetail('PY-2024-005')">
<i class="bi bi-eye"></i> 查看
</button>
</td>
</tr>
<tr>
<td>PY-2024-006</td>
<td>
<div class="payment-type">
<i class="bi bi-truck text-info"></i>
<span>车船管理支付</span>
</div>
</td>
<td>车船维修保养支付</td>
<td>孙八</td>
<td class="amount">¥12,000</td>
<td>银行转账</td>
<td><span class="badge badge-success">支付成功</span></td>
<td>2024-01-13 16:20</td>
<td>
<button class="btn btn-sm btn-outline-primary btn-action" onclick="viewDetail('PY-2024-006')">
<i class="bi bi-eye"></i> 查看
</button>
</td>
</tr>
<tr>
<td>PY-2024-007</td>
<td>
<div class="payment-type">
<i class="bi bi-gear text-success"></i>
<span>仪器管理支付</span>
</div>
</td>
<td>仪器设备购置支付</td>
<td>周九</td>
<td class="amount">¥68,000</td>
<td>银行转账</td>
<td><span class="badge badge-pending">待支付</span></td>
<td>2024-01-13 10:15</td>
<td>
<button class="btn btn-sm btn-outline-primary btn-action" onclick="viewDetail('PY-2024-007')">
<i class="bi bi-eye"></i> 查看
</button>
</td>
</tr>
<tr>
<td>PY-2024-008</td>
<td>
<div class="payment-type">
<i class="bi bi-lightning text-primary"></i>
<span>直接支付</span>
</div>
</td>
<td>公开招标 - 服务采购</td>
<td>吴十</td>
<td class="amount">¥156,000</td>
<td>银行转账</td>
<td><span class="badge badge-failed">支付失败</span></td>
<td>2024-01-12 09:30</td>
<td>
<button class="btn btn-sm btn-outline-primary btn-action" onclick="viewDetail('PY-2024-008')">
<i class="bi bi-eye"></i> 查看
</button>
</td>
</tr>
</tbody>
</table>
</div>
<!-- 分页信息 -->
<div class="pagination-info">
<div>
<span class="text-muted"><strong>8</strong> 条记录,第 <strong>1</strong> 页,共 <strong>1</strong></span>
</div>
<nav>
<ul class="pagination pagination-sm mb-0">
<li class="page-item disabled">
<a class="page-link" href="#">上一页</a>
</li>
<li class="page-item active">
<a class="page-link" href="#">1</a>
</li>
<li class="page-item disabled">
<a class="page-link" href="#">下一页</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<script src="https://cdn.staticfile.org/bootstrap/5.3.0/js/bootstrap.bundle.min.js"></script>
<script>
// 查询支付
function searchPayment() {
const paymentType = document.getElementById('paymentType').value;
const paymentStatus = document.getElementById('paymentStatus').value;
const payer = document.getElementById('payer').value;
const startDate = document.getElementById('startDate').value;
const endDate = document.getElementById('endDate').value;
const amountRange = document.getElementById('amountRange').value;
const keyword = document.getElementById('keyword').value;
// 这里应该调用后端API进行查询
console.log('查询参数:', { paymentType, paymentStatus, payer, startDate, endDate, amountRange, keyword });
// 模拟查询结果
alert('查询功能待对接后端API');
}
// 重置筛选
function resetFilter() {
document.getElementById('paymentType').value = '';
document.getElementById('paymentStatus').value = '';
document.getElementById('payer').value = '';
document.getElementById('startDate').value = '';
document.getElementById('endDate').value = '';
document.getElementById('amountRange').value = '';
document.getElementById('keyword').value = '';
}
// 查看详情
function viewDetail(paymentId) {
// 这里可以打开详情模态框或跳转到详情页面
alert('支付详情功能待开发,支付编号: ' + paymentId);
}
// 导出数据
function exportData() {
// 这里应该调用后端API导出数据
alert('导出功能待对接后端API');
}
</script>
</body>
</html>