042720d812
统一替换全站所有HTML页面的品牌标题为FarSight-T.N.E铁路运输,调整部分页面的中文显示文案,例如删除ticket-board.html中的冗余说明文字。格式化重构blog.html的代码结构与缩进,修复末尾无换行的问题。 后端完善/ic-cards/query接口:支持空查询返回全部IC卡列表,按创建时间倒序排序,添加卡片状态和类型的标准化标签,优化请求日志记录。 全面重构IC卡搜索页面的前端逻辑,新增批量查看所有IC卡功能,支持点击卡片查看详情与操作历史,优化状态管理与渲染流程。
124 lines
6.0 KiB
HTML
124 lines
6.0 KiB
HTML
<!doctype html>
|
|
<html lang="zh-CN">
|
|
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<title>IC 卡查询</title>
|
|
<link rel="icon" type="image/png" href="/FSE-ticket.png">
|
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
|
<link rel="stylesheet" href="/style.css?v=13">
|
|
</head>
|
|
|
|
<body class="public-search jr-public-page">
|
|
<div class="jr-public-shell">
|
|
<header class="jr-topbar">
|
|
<div class="jr-topbar-inner">
|
|
<a href="https://ticket.fse-media.group" id="homeLink" class="jr-top-link">
|
|
<i class="fas fa-arrow-left"></i>
|
|
<span>返回首页</span>
|
|
</a>
|
|
<div class="jr-top-status is-checking" data-server-status-root>
|
|
<span class="jr-top-status-label">服务器状态</span>
|
|
<span class="jr-top-status-dot"></span>
|
|
<span class="jr-top-status-value" data-server-status-value>检测中</span>
|
|
</div>
|
|
</div>
|
|
</header>
|
|
<div class="jr-brandbar">
|
|
<div class="jr-brandbar-inner">
|
|
<a href="https://ticket.fse-media.group" class="jr-brand" id="brandLink">
|
|
<img src="/FSE-ticket.png" alt="FSE Railway" class="jr-brand-logo" />
|
|
<div class="jr-brand-copy">
|
|
<strong>FarSight-T.N.E铁路运输</strong>
|
|
<span>IC卡 查询</span>
|
|
</div>
|
|
</a>
|
|
<nav class="jr-nav" aria-label="站点导航">
|
|
<a href="https://ticket.fse-media.group/home.html" data-link="home">首页</a>
|
|
<a href="https://ticket.fse-media.group/order" data-link="order">线上预定</a>
|
|
<a href="https://ticket.fse-media.group/search" data-link="search">车票查询</a>
|
|
<a href="https://ticket.fse-media.group/ic-card/search" data-link="card-search" class="is-active">IC 卡查询</a>
|
|
<a href="https://ticket.fse-media.group/ic-card/order" data-link="card-order">线上购卡</a>
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
<main class="jr-public-main">
|
|
<section class="jr-page-intro">
|
|
<span class="jr-kicker">IC CARD SEARCH</span>
|
|
<h1>按卡号或凭证码查询 IC 卡状态</h1>
|
|
<p>支持检索 IC 卡当前状态、余额和最近操作记录;输入线上购卡生成的凭证码,也能反查对应卡片。</p>
|
|
</section>
|
|
<section class="jr-panel-card" style="margin-bottom:24px;">
|
|
<div class="jr-panel-headline">
|
|
<h2>检索条件</h2>
|
|
<span class="jr-panel-note">Card ID / Voucher Code</span>
|
|
</div>
|
|
<div class="jr-search-form">
|
|
<input id="queryInput" class="jr-search-input" type="text"
|
|
placeholder="输入卡号或凭证码,例如 IC-348215 / M1SKP" />
|
|
<button id="queryBtn" class="btn primary jr-search-button">
|
|
<i class="fas fa-search"></i>
|
|
查询 IC 卡
|
|
</button>
|
|
</div>
|
|
</section>
|
|
<section class="jr-grid-two">
|
|
<article class="jr-panel-card">
|
|
<div class="jr-panel-headline">
|
|
<h3>卡片概览</h3>
|
|
<span class="jr-panel-note">Card Overview</span>
|
|
</div>
|
|
<div id="summaryBox" class="jr-center-empty">
|
|
<p>请输入卡号或凭证码开始查询。</p>
|
|
</div>
|
|
</article>
|
|
<article class="jr-panel-card">
|
|
<div class="jr-panel-headline">
|
|
<h3>事件记录</h3>
|
|
<span class="jr-panel-note">Recent Events</span>
|
|
</div>
|
|
<div id="eventBox" class="jr-history-list">
|
|
<div class="jr-center-empty" style="min-height:180px;">
|
|
<p>查询成功后会在这里显示建卡、购卡、充值等操作记录。</p>
|
|
</div>
|
|
</div>
|
|
</article>
|
|
</section>
|
|
<footer class="site-footer jr-footer-space">
|
|
<a href="https://beian.miit.gov.cn/" target="_blank" rel="noopener noreferrer">粤ICP备2025450093号</a>
|
|
<span class="version">v1.0.12</span>
|
|
</footer>
|
|
</main>
|
|
</div>
|
|
<script src="/custom-dialog.js?v=12"></script>
|
|
<script src="/ic-card-search.js?v=2"></script>
|
|
<script src="/public-status.js?v=13"></script>
|
|
<script>
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
const isDomain = location.hostname.includes('fse-media.group');
|
|
const links = {
|
|
home: isDomain ? 'https://ticket.fse-media.group' : '/home.html',
|
|
order: isDomain ? 'https://ticket.fse-media.group/order' : '/ticket-order.html',
|
|
search: isDomain ? 'https://ticket.fse-media.group/search' : '/ticket-search.html',
|
|
'card-search': isDomain ? 'https://ticket.fse-media.group/ic-card/search' : '/ic-card-search.html',
|
|
'card-order': isDomain ? 'https://ticket.fse-media.group/ic-card/order' : '/ic-card-order.html'
|
|
};
|
|
|
|
const homeLink = document.getElementById('homeLink');
|
|
const brandLink = document.getElementById('brandLink');
|
|
|
|
if (homeLink) homeLink.href = links.home;
|
|
if (brandLink) brandLink.href = links.home;
|
|
|
|
document.querySelectorAll('[data-link]').forEach((el) => {
|
|
const key = el.getAttribute('data-link');
|
|
if (links[key]) el.href = links[key];
|
|
});
|
|
});
|
|
</script>
|
|
</body>
|
|
|
|
</html>
|
|
|