manghe/app/admin/view/Statistics/profit.html
2025-04-13 21:57:55 +08:00

293 lines
14 KiB
HTML
Executable File

{include file="Public:header3"/}
<body>
<div class="layui-fluid">
<div class="layui-card">
<!-- 搜索条件区域 -->
<form method="get" class="layui-form layui-card-header layuiadmin-card-header-auto">
<div class="layui-form-item">
<div class="layui-inline">
<div class="layui-input-inline" style="width:150px;margin-left: 0px">
<input type="text" name="goodId" value="{$Request.get.goodId}" placeholder="请输入盒子Id"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline">
<div class="layui-input-inline" style="width:150px;margin-left: 0px">
<input type="text" name="title" value="{$Request.get.title}" placeholder="请输入盒子名称"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline">
<div class="layui-input-inline" style="width: 180px;margin-left: 0px">
<select name="status" style="width:100%">
<option value="">--请选择盒子状态--</option>
<option value="1" {if condition="$Request.get.status eq 1" }selected{/if}>上架</option>
<option value="2" {if condition="$Request.get.status eq 2" }selected{/if}>下架</option>
<option value="3" {if condition="$Request.get.status eq 3" }selected{/if}>售罄</option>
</select>
</div>
</div>
<div class="layui-inline">
<div class="layui-input-inline" style="width: 180px;margin-left: 0px">
<select name="type" id="goodsType" style="width:100%">
<option value="">--盒子类型--</option>
</select>
</div>
</div>
<div class="layui-inline">
<div class="layui-input-inline" style="width:300px;margin-left: 0px">
<input type="text" id="addtime" name="addtime" value="{$Request.get.addtime}"
class="layui-input" placeholder="选择时间" autocomplete="off">
</div>
</div>
<div class="layui-inline">
<button class="layui-btn layuiadmin-btn-useradmin mmm" lay-submit lay-filter="LAY-user-front-search">
<i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
</button>
</div>
</div>
</form>
<!-- 统计摘要区域 -->
<div class="layui-card-body">
<div class="layui-row layui-col-space15">
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header">总收入</div>
<div class="layui-card-body" style="font-size: 24px; color: #01AAED;">
¥ {$totalIncome|default="0"|round=2}
</div>
</div>
</div>
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header">总出货价值</div>
<div class="layui-card-body" style="font-size: 24px; color: #FFB800;">
¥ {$totalCost|default="0"|round=2}
</div>
</div>
</div>
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header">总利润</div>
<div class="layui-card-body" style="font-size: 24px; color: {$totalProfit >= 0 ? '#5FB878' : '#FF5722'};">
¥ {$totalProfit|default="0"|round=2}
</div>
</div>
</div>
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header">总兑换/发货价值</div>
<div class="layui-card-body" style="font-size: 24px;">
<span style="color: #FF9800;">¥ {$totalReMoney|default="0"|round=2}</span> /
<span style="color: #673AB7;">¥ {$totalFhMoney|default="0"|round=2}</span>
</div>
</div>
</div>
</div>
<!-- 数据表格区域 -->
<table class="layui-table">
<thead>
<tr>
<th>盒子ID</th>
<th>盒子名称</th>
<th>盒子类型/状态</th>
<th>盒子单价</th>
<th>抽奖次数</th>
<th>收入</th>
<th>出货价值</th>
<th>兑换价值</th>
<th>发货价值</th>
<th>利润</th>
<th>利润率</th>
<th>操作</th>
</tr>
</thead>
<tbody>
{volist name="list" id="vo"}
<tr {if condition="$vo.is_negative"}style="background-color: #ffebee;"{/if}>
<td>{$vo.id}</td>
<td>{$vo.title}</td>
<td>
<button class="layui-btn layui-btn-normal layui-btn-radius layui-btn-xs" data-type="{$vo.type}">加载中...</button>
/
{if condition="$vo.status eq 1"}
<span class="layui-badge layui-bg-green">上架</span>
{elseif condition="$vo.status eq 2"}
<span class="layui-badge layui-bg-gray">下架</span>
{elseif condition="$vo.status eq 3"}
<span class="layui-badge layui-bg-orange">售罄</span>
{/if}
</td>
<td>¥ {$vo.price}</td>
<td>{$vo.cj_count}</td>
<td>
<span class="layui-badge layui-bg-blue">¥ {$vo.use_money|default="0"|round=2}</span>
</td>
<td>
<span class="layui-badge layui-bg-orange">¥ {$vo.sc_money|default="0"|round=2}</span>
</td>
<td>
<span class="layui-badge" style="background-color: #FF9800;">¥ {$vo.re_money|default="0"|round=2}</span>
</td>
<td>
<span class="layui-badge" style="background-color: #673AB7;">¥ {$vo.fh_money|default="0"|round=2}</span>
</td>
<td>
<span class="layui-badge {if condition="$vo.profit >= 0"}layui-bg-green{else}layui-bg-red{/if}">
¥ {$vo.profit|default="0"|round=2}
</span>
</td>
<td>
<span class="layui-badge {if condition="$vo.profit_rate >= 0"}layui-bg-green{else}layui-bg-red{/if}">
{$vo.profit_rate|default="0"|round=2}%
</span>
</td>
<td>
<button class="layui-btn layui-btn-danger layui-btn-xs" onclick="viewProductsOverview({$vo.id})">出货概览</button>
<!-- <button class="layui-btn layui-btn-xs" onclick="viewOrders({$vo.id})">支付订单</button>
<button class="layui-btn layui-btn-normal layui-btn-xs" onclick="viewOrderLists({$vo.id})">出货明细</button>
<button class="layui-btn layui-btn-warm layui-btn-xs" onclick="viewExchangeList({$vo.id})">兑换明细</button>
<button class="layui-btn layui-btn-primary layui-btn-xs" onclick="viewShipmentList({$vo.id})">发货明细</button> -->
</td>
</tr>
{/volist}
{if condition="empty($list)"}
<tr>
<td colspan="11" style="text-align:center;">暂时没有数据!</td>
</tr>
{/if}
</tbody>
</table>
</div>
</div>
</div>
{include file="Public:footer3"/}
<script type="text/javascript">
layui.use(['layer', 'laydate', 'table', 'form'], function () {
var $ = layui.$;
var layer = layui.layer;
var laydate = layui.laydate;
var form = layui.form;
// 日期时间范围
laydate.render({
elem: '#addtime',
type: 'datetime',
range: true
});
// 加载盒子类型数据
function loadGoodsTypes() {
$.ajax({
url: '{:url("/admin/api/goods/types")}',
type: 'GET',
success: function (res) {
if (res.code === 0) {
// 更新下拉框
var html = '<option value="">--盒子类型--</option>';
$.each(res.data, function (index, item) {
if(item.value == '{$Request.get.type}'){
html += '<option value="' + item.value + '" title="' + item.remark + '" selected>' + item.fl_name + '</option>';
} else {
html += '<option value="' + item.value + '" title="' + item.remark + '">' + item.fl_name + '</option>';
}
});
$('#goodsType').html(html);
form.render('select');
// 更新表格中的类型显示
$('button[data-type]').each(function() {
var type = $(this).data('type');
var typeInfo = res.data.find(function(item) {
return item.value == type;
});
if (typeInfo) {
$(this).text(typeInfo.fl_name);
} else {
$(this).text('未知类型');
}
});
}
}
});
}
// 页面加载完成后执行
$(function() {
loadGoodsTypes();
});
});
// 查看支付订单列表
function viewOrders(goodsId) {
var url = "{:url('/admin/statistics_order')}?goods_id=" + goodsId;
layer.open({
type: 2,
title: '支付订单列表',
shadeClose: false,
shade: 0.3,
area: ['90%', '90%'],
content: url
});
}
// 查看出货列表
function viewOrderLists(goodsId) {
var url = "{:url('/admin/statistics_orderList')}?goods_id=" + goodsId;
layer.open({
type: 2,
title: '出货列表',
shadeClose: false,
shade: 0.3,
area: ['90%', '90%'],
content: url
});
}
// 查看兑换列表
function viewExchangeList(goodsId) {
var url = "{:url('/admin/statistics_exchangeList')}?goods_id=" + goodsId;
layer.open({
type: 2,
title: '兑换列表',
shadeClose: false,
shade: 0.3,
area: ['90%', '90%'],
content: url
});
}
// 查看发货列表
function viewShipmentList(goodsId) {
var url = "{:url('/admin/statistics_shipmentList')}?goods_id=" + goodsId;
layer.open({
type: 2,
title: '发货列表',
shadeClose: false,
shade: 0.3,
area: ['90%', '90%'],
content: url
});
}
// 查看出货概览
function viewProductsOverview(goodsId) {
var url = "{:url('/admin/statistics_productsOverview')}?goods_id=" + goodsId;
layer.open({
type: 2,
title: '出货概览',
shadeClose: false,
shade: 0.3,
area: ['90%', '90%'],
content: url
});
}
</script>
</body>
</html>