240 lines
15 KiB
PHP
240 lines
15 KiB
PHP
@extends('layouts.app')
|
|
|
|
@section('title', '百家乐开奖走势 - 飘落流星')
|
|
|
|
@section('head')
|
|
<style>
|
|
/* 珠盘路横向滚动条美化 */
|
|
.custom-scrollbar::-webkit-scrollbar {
|
|
height: 6px;
|
|
}
|
|
.custom-scrollbar::-webkit-scrollbar-thumb {
|
|
background-color: #4b5563;
|
|
border-radius: 9999px;
|
|
}
|
|
.custom-scrollbar::-webkit-scrollbar-track {
|
|
background-color: #1f2937;
|
|
border-radius: 9999px;
|
|
}
|
|
</style>
|
|
@endsection
|
|
|
|
@section('content')
|
|
<div class="bg-gray-950 min-h-screen text-gray-100 py-10 px-4 sm:px-6 lg:px-8">
|
|
<div class="max-w-7xl mx-auto">
|
|
|
|
{{-- 顶部标题与返回 --}}
|
|
<div class="mb-8 flex flex-col md:flex-row md:items-center md:justify-between border-b border-gray-800 pb-6 gap-4">
|
|
<div>
|
|
<h2 class="text-3xl font-extrabold tracking-tight text-white flex items-center gap-3">
|
|
<span class="text-4xl">🎲</span> 百家乐开奖走势
|
|
</h2>
|
|
<p class="mt-2 text-sm text-gray-400">公开频段历史百家乐开奖记录、点数分布以及最新珠盘路大趋势。</p>
|
|
</div>
|
|
<a href="{{ route('rooms.index') }}"
|
|
class="inline-flex items-center gap-2 px-4 py-2 border border-gray-700 bg-gray-900 text-gray-300 rounded-xl text-sm font-semibold hover:bg-gray-800 hover:text-white transition shadow-sm self-start">
|
|
← 返回大厅
|
|
</a>
|
|
</div>
|
|
|
|
{{-- 统计指标卡片组 --}}
|
|
<div class="grid grid-cols-2 md:grid-cols-5 gap-4 mb-8">
|
|
<div class="bg-gray-900/60 backdrop-blur-md rounded-2xl border border-gray-800 p-5 shadow-lg">
|
|
<div class="text-3xl font-extrabold text-indigo-400 font-mono">{{ number_format($summary['total_rounds']) }}</div>
|
|
<div class="mt-2 text-xs text-gray-400 font-bold uppercase tracking-wider">历史总局数</div>
|
|
</div>
|
|
|
|
@php
|
|
$dist = $summary['result_dist'];
|
|
$total = max(1, $summary['total_rounds']);
|
|
$bigPercent = round((($dist['big'] ?? 0) / $total) * 100, 1);
|
|
$smallPercent = round((($dist['small'] ?? 0) / $total) * 100, 1);
|
|
$triplePercent = round((($dist['triple'] ?? 0) / $total) * 100, 1);
|
|
$killPercent = round((($dist['kill'] ?? 0) / $total) * 100, 1);
|
|
@endphp
|
|
|
|
<div class="bg-gray-900/60 backdrop-blur-md rounded-2xl border border-red-900/30 p-5 shadow-lg">
|
|
<div class="text-3xl font-extrabold text-red-500 font-mono">{{ $bigPercent }}%</div>
|
|
<div class="mt-2 text-xs text-gray-400 font-bold flex items-center justify-between">
|
|
<span>开大比例</span>
|
|
<span class="text-red-400 font-mono">{{ $dist['big'] ?? 0 }} 局</span>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="bg-gray-900/60 backdrop-blur-md rounded-2xl border border-blue-900/30 p-5 shadow-lg">
|
|
<div class="text-3xl font-extrabold text-blue-500 font-mono">{{ $smallPercent }}%</div>
|
|
<div class="mt-2 text-xs text-gray-400 font-bold flex items-center justify-between">
|
|
<span>开小比例</span>
|
|
<span class="text-blue-400 font-mono">{{ $dist['small'] ?? 0 }} 局</span>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="bg-gray-900/60 backdrop-blur-md rounded-2xl border border-purple-900/30 p-5 shadow-lg">
|
|
<div class="text-3xl font-extrabold text-purple-500 font-mono">{{ $triplePercent }}%</div>
|
|
<div class="mt-2 text-xs text-gray-400 font-bold flex items-center justify-between">
|
|
<span>开豹比例</span>
|
|
<span class="text-purple-400 font-mono">{{ $dist['triple'] ?? 0 }} 局</span>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="bg-gray-900/60 backdrop-blur-md rounded-2xl border border-gray-800 p-5 shadow-lg col-span-2 md:col-span-1">
|
|
<div class="text-3xl font-extrabold text-gray-400 font-mono">{{ $killPercent }}%</div>
|
|
<div class="mt-2 text-xs text-gray-400 font-bold flex items-center justify-between">
|
|
<span>开收割比例</span>
|
|
<span class="text-gray-300 font-mono">{{ $dist['kill'] ?? 0 }} 局</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{{-- 珠盘路大趋势走势图 --}}
|
|
<div class="bg-gray-900 rounded-2xl p-6 border border-gray-800 shadow-xl overflow-hidden mb-8">
|
|
<div class="flex items-center justify-between mb-4">
|
|
<h3 class="text-sm font-bold text-gray-400 flex items-center gap-2">
|
|
<span>📊 珠盘路走势板(最近 30 局)</span>
|
|
</h3>
|
|
<span class="text-[10px] bg-gray-800 text-gray-400 px-2 py-0.5 rounded-full font-mono">从左往右为历史开奖顺序</span>
|
|
</div>
|
|
|
|
<div class="flex space-x-2 overflow-x-auto pb-3 custom-scrollbar">
|
|
@forelse($rounds->take(30)->reverse() as $r)
|
|
<div class="flex flex-col items-center justify-center shrink-0 w-14 h-20 rounded-xl bg-gray-950/80 border border-gray-800/80 p-1.5 shadow-inner">
|
|
<span class="text-[9px] text-gray-600 font-mono font-medium">#{{ $r->id }}</span>
|
|
|
|
@php
|
|
$colorClass = match ($r->result) {
|
|
'big' => 'bg-gradient-to-br from-red-500 to-red-600 text-white shadow-red-500/20 border-red-400',
|
|
'small' => 'bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-blue-500/20 border-blue-400',
|
|
'triple' => 'bg-gradient-to-br from-purple-500 to-purple-600 text-white shadow-purple-500/20 border-purple-400',
|
|
default => 'bg-gradient-to-br from-gray-600 to-gray-700 text-gray-200 border-gray-500',
|
|
};
|
|
$label = match ($r->result) {
|
|
'big' => '大',
|
|
'small' => '小',
|
|
'triple' => '豹',
|
|
default => '割',
|
|
};
|
|
@endphp
|
|
|
|
<div class="my-1.5 w-7 h-7 rounded-full border-2 flex items-center justify-center text-xs font-black shadow-md {{ $colorClass }}">
|
|
{{ $label }}
|
|
</div>
|
|
|
|
<span class="text-[9px] text-gray-400 font-bold font-mono">{{ $r->total_points }} 点</span>
|
|
</div>
|
|
@empty
|
|
<div class="w-full py-6 text-center text-gray-600 text-xs">暂无走势数据</div>
|
|
@endforelse
|
|
</div>
|
|
</div>
|
|
|
|
{{-- 历史记录数据表 --}}
|
|
<div class="bg-gray-900 rounded-2xl border border-gray-800 shadow-xl overflow-hidden">
|
|
<div class="px-6 py-5 border-b border-gray-800 flex justify-between items-center bg-gray-900/50">
|
|
<h3 class="font-bold text-base text-white">百家乐局次历史记录</h3>
|
|
<span class="text-xs text-gray-500">仅展示已结算局次数据</span>
|
|
</div>
|
|
|
|
<div class="overflow-x-auto">
|
|
<table class="w-full text-left border-collapse">
|
|
<thead>
|
|
<tr class="border-b border-gray-800 text-xs text-gray-400 uppercase tracking-wider bg-gray-950/40">
|
|
<th class="px-6 py-4 font-bold">局号</th>
|
|
<th class="px-6 py-4 font-bold">结算时间</th>
|
|
<th class="px-6 py-4 font-bold text-center">骰子开出</th>
|
|
<th class="px-6 py-4 font-bold text-center">总点数</th>
|
|
<th class="px-6 py-4 font-bold text-center">开奖结果</th>
|
|
<th class="px-6 py-4 font-bold text-right">全场总押注</th>
|
|
<th class="px-6 py-4 font-bold text-right">全场派奖金币</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody class="divide-y divide-gray-800 text-sm">
|
|
@forelse ($rounds as $round)
|
|
<tr class="hover:bg-gray-800/20 transition-colors">
|
|
<td class="px-6 py-4 font-mono text-gray-400 font-medium">#{{ $round->id }}</td>
|
|
<td class="px-6 py-4 text-gray-400 text-xs">
|
|
{{ $round->settled_at ? $round->settled_at->format('m-d H:i') : '—' }}
|
|
</td>
|
|
<td class="px-6 py-4 text-center">
|
|
<div class="inline-flex gap-1.5 justify-center">
|
|
@for ($i = 1; $i <= 3; $i++)
|
|
@php $diceVal = $round->{'dice'.$i}; @endphp
|
|
@if ($diceVal)
|
|
<span class="w-7 h-7 inline-flex items-center justify-center bg-gray-800 border border-gray-700 text-white font-black rounded-lg shadow-inner text-xs font-mono">
|
|
{{ $diceVal }}
|
|
</span>
|
|
@else
|
|
<span class="text-gray-600">—</span>
|
|
@endif
|
|
@endfor
|
|
</div>
|
|
</td>
|
|
<td class="px-6 py-4 text-center font-extrabold text-white font-mono text-base">
|
|
{{ $round->total_points ?? '—' }}
|
|
</td>
|
|
<td class="px-6 py-4 text-center">
|
|
@php
|
|
$resultStyles = [
|
|
'big' => 'bg-red-950/50 text-red-400 border-red-800/60',
|
|
'small' => 'bg-blue-950/50 text-blue-400 border-blue-800/60',
|
|
'triple' => 'bg-purple-950/50 text-purple-400 border-purple-800/60',
|
|
'kill' => 'bg-gray-900 text-gray-500 border-gray-800',
|
|
];
|
|
$labelText = match ($round->result) {
|
|
'big' => '大',
|
|
'small' => '小',
|
|
'triple' => '豹子',
|
|
'kill' => '收割',
|
|
default => $round->result ?? '—',
|
|
};
|
|
$borderStyle = $resultStyles[$round->result] ?? 'bg-gray-900 text-gray-500 border-gray-800';
|
|
@endphp
|
|
@if ($round->result)
|
|
<span class="inline-flex items-center px-3 py-1 rounded-full text-xs font-black border {{ $borderStyle }}">
|
|
{{ $labelText }}
|
|
</span>
|
|
@else
|
|
<span class="text-gray-600">未结算</span>
|
|
@endif
|
|
</td>
|
|
<td class="px-6 py-4 text-right text-xs font-mono text-gray-400">
|
|
<div class="flex flex-col items-end">
|
|
<span class="font-bold text-gray-300">
|
|
{{ number_format(($round->total_bet_big ?? 0) + ($round->total_bet_small ?? 0) + ($round->total_bet_triple ?? 0)) }}
|
|
</span>
|
|
<span class="text-[9px] text-gray-500 mt-0.5">
|
|
大:<span class="text-red-400">{{ number_format($round->total_bet_big ?? 0) }}</span> |
|
|
小:<span class="text-blue-400">{{ number_format($round->total_bet_small ?? 0) }}</span> |
|
|
豹:<span class="text-purple-400">{{ number_format($round->total_bet_triple ?? 0) }}</span>
|
|
</span>
|
|
</div>
|
|
</td>
|
|
<td class="px-6 py-4 text-right font-mono font-extrabold text-amber-500 text-base">
|
|
{{ number_format($round->total_payout ?? 0) }}
|
|
</td>
|
|
</tr>
|
|
@empty
|
|
<tr>
|
|
<td colspan="7" class="px-6 py-12 text-center text-gray-500">
|
|
<p class="font-bold">暂无开奖记录</p>
|
|
</td>
|
|
</tr>
|
|
@endforelse
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
{{-- 分页器美化 --}}
|
|
@if ($rounds->hasPages())
|
|
<div class="px-6 py-5 border-t border-gray-800 bg-gray-950/20">
|
|
{{-- Laravel 默认分页器兼容 --}}
|
|
<div class="baccarat-pagination-dark">
|
|
{{ $rounds->links() }}
|
|
</div>
|
|
</div>
|
|
@endif
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
@endsection
|