diff --git a/miniprogram/api/bx.js b/miniprogram/api/bx.js
index a05cd0a1a..1f3e4aeb5 100644
--- a/miniprogram/api/bx.js
+++ b/miniprogram/api/bx.js
@@ -1,6 +1,7 @@
import { bxRequest, bxUploadFile } from '@/utils/bxRequest'
export const advanceApi = {
+ list: (params) => bxRequest({ url: '/advances/', method: 'GET', params }),
my: (params) => bxRequest({ url: '/advances/my', method: 'GET', params }),
getById: (id) => bxRequest({ url: `/advances/${id}`, method: 'GET' }),
getApprovals: (id) => bxRequest({ url: `/advances/${id}/approvals`, method: 'GET' }),
@@ -14,6 +15,7 @@ export const advanceApi = {
export const reimburseApi = {
generateTitle: (params) =>
bxRequest({ url: '/reimburses/generate-title', method: 'GET', params }),
+ list: (params) => bxRequest({ url: '/reimburses/', method: 'GET', params }),
my: (params) => bxRequest({ url: '/reimburses/my', method: 'GET', params }),
getById: (id) => bxRequest({ url: `/reimburses/${id}`, method: 'GET' }),
getApprovals: (id) => bxRequest({ url: `/reimburses/${id}/approvals`, method: 'GET' }),
diff --git a/miniprogram/pages/bx/all/list.vue b/miniprogram/pages/bx/all/list.vue
index e956b46a3..ff6326ecc 100644
--- a/miniprogram/pages/bx/all/list.vue
+++ b/miniprogram/pages/bx/all/list.vue
@@ -1,7 +1,431 @@
-
+
+
+
+
+ ‹
+
+
+ 全部申请单
+
+
+
+
+
+ 全部
+
+
+ 备用金
+
+
+ 报销申请
+
+
+
+
+
+ ⌕
+
+ ×
+
+
+
+
+
+
+ {{ opt.label }}
+
+
+
+
+
+
+ 暂无记录
+
+
+
+
+
+
+ {{ advanceCardTitle(item) }}
+
+
+ {{ statusLabel(item.status) }}
+
+
+ 申请金额
+ {{ formatAmount(item.amount) }}
+
+
+ 实际发放金额
+ ¥ {{ actualIssuedDisplay(item) }}
+
+
+ 实际冲抵
+ ¥ {{ formatAmount(advanceOffsetTotal(item)) }}
+
+
+
+
+ 申请单号
+ {{ item.applyCode || '—' }}
+
+
+ 申请人
+ {{ item.applicantName || '-' }}
+
+
+ 部门
+ {{ item.departmentName }}
+
+
+ 当前环节
+ {{ item.currentNode }}
+
+
+ 备注
+ {{ item.remark }}
+
+
+
+
+
+
+ {{ reimburseCardTitle(item) }}
+
+
+ {{ statusLabel(item.status) }}
+
+
+ 报销金额
+ {{ formatAmount(item.amount) }}
+
+
+ 冲抵金额
+ ¥ {{ moneyOrDash(item.offsetAmount ?? item.offset_amount) }}
+
+
+ 实付金额
+
+ ¥ {{ moneyOrDash(item.payAmount ?? item.actualAmount ?? item.actual_amount) }}
+
+
+
+
+
+ 申请单号
+ {{ item.applyCode || '—' }}
+
+
+ 申请人
+ {{ item.applicantName || '-' }}
+
+
+ 部门
+ {{ item.departmentName }}
+
+
+ 当前环节
+ {{ item.currentNode }}
+
+
+ 费用项目
+ {{ resolveExpenseDisplay(item, flatList) }}
+
+
+ 发票 / 附件
+
+ {{ item.invoiceCount ?? 0 }} 张 · {{ item.attachCount ?? 0 }} 个
+
+
+
+ 备注
+ {{ item.remark }}
+
+
+
+
+ {{ formatApplyDateTime(item) }}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/miniprogram/pages/bx/mine/list.vue b/miniprogram/pages/bx/mine/list.vue
index 7e94445f0..f7258d7b5 100644
--- a/miniprogram/pages/bx/mine/list.vue
+++ b/miniprogram/pages/bx/mine/list.vue
@@ -1,7 +1,471 @@
-
+
+
+
+
+ ‹
+
+
+ 我的申请单
+
+
+
+ +
+
+
+
+ 备用金
+
+
+ 报销申请
+
+
+
+
+
+ ⌕
+
+ ×
+
+
+
+
+
+
+ {{ opt.label }}
+
+
+
+
+
+
+ {{ activeBiz === 'advance' ? '暂无备用金申请' : '暂无报销申请' }}
+
+
+
+
+
+
+
+ {{ advanceCardTitle(item) }}
+
+
+ {{ statusLabel(item.status) }}
+
+
+ 申请金额
+ {{ formatAmount(item.amount) }}
+
+
+ 实际发放金额
+ ¥ {{ actualIssuedDisplay(item) }}
+
+
+ 实际冲抵
+ ¥ {{ formatAmount(advanceOffsetTotal(item)) }}
+
+
+
+
+ 申请单号
+ {{ item.applyCode || item.code || '—' }}
+
+
+ 申请人
+ {{ item.applicantName || '—' }}
+
+
+ 当前环节
+ {{ item.currentNode }}
+
+
+ 备注
+ {{ item.remark }}
+
+
+
+ {{ formatApplyDateTime(item) }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ reimburseCardTitle(item) }}
+
+
+ {{ statusLabel(item.status) }}
+
+
+ 报销金额
+ {{ formatAmount(item.amount) }}
+
+
+ 冲抵金额
+ ¥ {{ moneyOrDash(item.offsetAmount ?? item.offset_amount) }}
+
+
+ 实付金额
+
+ ¥ {{ moneyOrDash(item.payAmount ?? item.actualAmount ?? item.actual_amount) }}
+
+
+
+
+
+ 申请单号
+ {{ item.applyCode || item.code || '—' }}
+
+
+ 申请人
+ {{ item.applicantName || '—' }}
+
+
+ 费用项目
+ {{ resolveExpenseDisplay(item, flatList) }}
+
+
+ 当前环节
+ {{ item.currentNode }}
+
+
+ 发票 / 附件
+
+ {{ item.invoiceCount ?? 0 }} 张 · {{ item.attachCount ?? 0 }} 个
+
+
+
+ 备注
+ {{ item.remark }}
+
+
+
+ {{ formatApplyDateTime(item) }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/miniprogram/styles/bx-theme.scss b/miniprogram/styles/bx-theme.scss
index 780456a38..399e5b771 100644
--- a/miniprogram/styles/bx-theme.scss
+++ b/miniprogram/styles/bx-theme.scss
@@ -1232,3 +1232,54 @@
padding-top: 12px;
border-top: 1px solid var(--border);
}
+
+/* 我的/全部:业务类型切换卡片 */
+.bx-page .mine-type-tabs.stat-scroll {
+ display: flex;
+ justify-content: center;
+ align-items: stretch;
+ gap: 12px;
+ padding: 10px 16px 8px;
+ overflow-x: visible;
+}
+
+.bx-page .mine-type-tabs .stat-card {
+ flex-shrink: 0;
+ width: auto;
+ min-width: 120px;
+ padding: 16px 22px;
+ border: none;
+ border-radius: var(--r);
+ background: var(--surface);
+ box-shadow: var(--shadow);
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+
+.bx-page .mine-type-tabs--triple .stat-card {
+ min-width: 100px;
+ padding: 14px 14px;
+}
+
+.bx-page .mine-type-tabs .stat-card.active {
+ background: var(--primary-bg);
+}
+
+.bx-page .mine-type-tabs .stat-card .label {
+ font-size: 16px;
+ font-weight: 600;
+ color: var(--text);
+}
+
+.bx-page .mine-type-tabs--triple .stat-card .label {
+ font-size: 15px;
+}
+
+.bx-page .mine-type-tabs .stat-card.active .label {
+ color: var(--primary-dark);
+}
+
+.bx-page .all-list-card__bottom {
+ justify-content: flex-end;
+}