文件
MiAn fafddceaf2 feat: 新增发票抬头、晒单、钱包日志等模型及后台管理功能
- 新增 invoice_title、showcase、wallet_log 模型及对应语言包
- 新增后台控制器、视图及搜索字段配置
- 修复服务类目删除保护逻辑
- 优化后台登录页面文案及样式
- 新增前端角色切换逻辑及页面拦截
- 新增 SVG 图标及样式变量
- 修复接口权限及下拉框默认值问题
2026-11-11 17:02:35 +08:00

96 行
6.4 KiB
HTML

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

<style>
.stl-detail-wrap { padding: 12px 15px; }
.stl-card { background: #fff; border: 1px solid #ebedf0; border-radius: 6px; margin-bottom: 14px; }
.stl-card-hd { padding: 10px 15px; border-bottom: 1px solid #f0f0f2; font-weight: 600; background: #fafafa; border-radius: 6px 6px 0 0; }
.stl-card-bd { padding: 14px 15px; }
.stl-stat-box { background: #f8fafc; border: 1px solid #eef1f5; border-radius: 6px; padding: 12px; text-align: center; }
.stl-stat-box .lbl { color: #888; font-size: 12px; margin-bottom: 4px; }
.stl-stat-box .val { font-size: 18px; font-weight: 700; color: #1f1f1f; }
.stl-kv { margin-bottom: 8px; line-height: 1.6; }
.stl-kv .k { color: #888; display: inline-block; min-width: 96px; }
</style>
<div class="stl-detail-wrap">
<!-- 1. 资金清分核心指标 -->
<div class="stl-card">
<div class="stl-card-hd">
<i class="fa fa-calculator text-primary"></i> 结算单清分凭证 #ST{$row.id}
<span class="pull-right label {if $row.status=='settled'}label-success{elseif $row.status=='offline'/}label-info{else/}label-warning{/if}">
{$statusList[$row.status]|default=$row.status|htmlentities}
</span>
</div>
<div class="stl-card-bd">
<div class="row" style="margin-bottom:14px;">
<div class="col-xs-6 col-sm-3"><div class="stl-stat-box"><div class="lbl">工单核算总额</div><div class="val">¥{$row.order_amount|htmlentities}</div></div></div>
<div class="col-xs-6 col-sm-3"><div class="stl-stat-box"><div class="lbl">平台抽佣比例</div><div class="val">{$row.commission_rate|htmlentities}%</div></div></div>
<div class="col-xs-6 col-sm-3"><div class="stl-stat-box"><div class="lbl">平台技术服务费</div><div class="val text-warning">¥{$row.commission|htmlentities}</div></div></div>
<div class="col-xs-6 col-sm-3"><div class="stl-stat-box"><div class="lbl">师傅应结净额</div><div class="val text-success">¥{$row.settle_amount|htmlentities}</div></div></div>
</div>
<div class="row">
<div class="col-sm-6 stl-kv"><span class="k">单据创建时间:</span>{:date('Y-m-d H:i:s', $row.createtime)}</div>
<div class="col-sm-6 stl-kv"><span class="k">实际结算时间:</span>{if $row.settle_time}{:date('Y-m-d H:i:s', $row.settle_time)}{else/}<span class="text-muted">待结算</span>{/if}</div>
<div class="col-sm-6 stl-kv"><span class="k">收款师傅:</span><strong>{$master.realname|default='-'|htmlentities}</strong> {if !empty($master.mobile)}({$master.mobile|htmlentities}){/if}</div>
<div class="col-sm-6 stl-kv"><span class="k">师傅钱包现状:</span>可用 ¥{$master.money|default='0.00'|htmlentities} / 冻结 ¥{$master.frozen_money|default='0.00'|htmlentities}</div>
</div>
</div>
</div>
<!-- 2. 关联订单费用对账 -->
<div class="stl-card">
<div class="stl-card-hd"><i class="fa fa-file-text-o text-info"></i> 源头工单费用构成对账</div>
<div class="stl-card-bd">
{if !empty($order)}
<div class="row">
<div class="col-sm-6 stl-kv"><span class="k">关联订单号:</span><code>{$order.order_no|htmlentities}</code></div>
<div class="col-sm-6 stl-kv"><span class="k">服务项目:</span>{$order.service_name|default='-'|htmlentities} {if $order.goods_model}({$order.goods_model|htmlentities}){/if} x{$order.goods_num|default=1}</div>
<div class="col-sm-6 stl-kv"><span class="k">基础服务费:</span>¥{$order.base_amount|default='0.00'|htmlentities}</div>
<div class="col-sm-6 stl-kv"><span class="k">远程/楼层费:</span>¥{$order.distance_amount|default='0.00'|htmlentities} / ¥{$order.floor_amount|default='0.00'|htmlentities}</div>
<div class="col-sm-6 stl-kv"><span class="k">现场补差价:</span>¥{$order.diff_amount|default='0.00'|htmlentities}</div>
<div class="col-sm-6 stl-kv"><span class="k">优惠券抵扣:</span>-¥{$order.discount_amount|default='0.00'|htmlentities}</div>
<div class="col-sm-6 stl-kv"><span class="k">客户实付金额:</span><strong class="text-danger">¥{$order.pay_amount|default='0.00'|htmlentities}</strong></div>
<div class="col-sm-6 stl-kv"><span class="k">完工核销时间:</span>{if !empty($order.verify_time)}{:date('Y-m-d H:i:s', $order.verify_time)}{else/}-{/if}</div>
</div>
{else/}
<p class="text-muted" style="margin-bottom:0;">未查询到关联工单记录。</p>
{/if}
</div>
</div>
<!-- 3. 关联钱包入账流水 -->
<div class="stl-card" style="margin-bottom:0;">
<div class="stl-card-hd"><i class="fa fa-exchange text-success"></i> 关联钱包资金流水凭证</div>
<div class="stl-card-bd" style="padding:10px 15px;">
{if !empty($walletLogs)}
<div class="table-responsive">
<table class="table table-bordered table-condensed" style="margin-bottom:0;font-size:12px;">
<thead>
<tr class="active">
<th>流水ID</th>
<th>变动类型</th>
<th>变动金额</th>
<th>变动后余额</th>
<th>流水摘要</th>
<th>记账时间</th>
</tr>
</thead>
<tbody>
{volist name="walletLogs" id="wl"}
<tr>
<td>#{$wl.id}</td>
<td><span class="label label-success">{$wl.type|htmlentities}</span></td>
<td class="text-success"><strong>+¥{$wl.amount|htmlentities}</strong></td>
<td>¥{$wl.balance|htmlentities}</td>
<td>{$wl.remark|htmlentities}</td>
<td>{:date('Y-m-d H:i:s', $wl.createtime)}</td>
</tr>
{/volist}
</tbody>
</table>
</div>
{else/}
<p class="text-muted" style="margin-bottom:0;">暂无关联线上钱包入账流水记录。</p>
{/if}
</div>
</div>
</div>