ui(dashboard): 筛号器号码按生肖分行为每行一个生肖竖向排列

号码按鼠牛虎兔龙蛇马羊猴鸡狗猪顺序排列,每行左侧显示生肖标签,
右侧横向排列该生肖下的所有号码球。弹窗高度从600px增加到750px。
This commit is contained in:
2026-04-28 19:07:07 +08:00
parent a288d3b700
commit 49eea49fa9
+31 -12
View File
@@ -789,7 +789,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
Layer.open({ Layer.open({
type: 1, type: 1,
title: '筛号器', title: '筛号器',
area: ['700px', '600px'], area: ['700px', '750px'],
content: html, content: html,
shadeClose: true, shadeClose: true,
success: function (layero, index) { success: function (layero, index) {
@@ -830,20 +830,39 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
* 渲染筛号器号码网格 * 渲染筛号器号码网格
*/ */
renderNumberFilterGrid: function (layero) { renderNumberFilterGrid: function (layero) {
var zodiacOrder = ['鼠', '牛', '虎', '兔', '龙', '蛇', '马', '羊', '猴', '鸡', '狗', '猪'];
var zodiacNums = {};
for (var i = 0; i < zodiacOrder.length; i++) {
zodiacNums[zodiacOrder[i]] = [];
}
var colorMap = Controller.api.colorMap; var colorMap = Controller.api.colorMap;
var html = '';
for (var num = 1; num <= 49; num++) { for (var num = 1; num <= 49; num++) {
var colorHex = Controller.api.getColorByNum(num);
var colorRaw = colorMap[num] || '';
var animal = Controller.api.getAnimalByNum(num); var animal = Controller.api.getAnimalByNum(num);
var colorLabel = ''; if (!zodiacNums[animal]) zodiacNums[animal] = [];
if (colorRaw.indexOf('红') !== -1) colorLabel = '红'; zodiacNums[animal].push(num);
else if (colorRaw.indexOf('蓝') !== -1) colorLabel = '蓝'; }
else if (colorRaw.indexOf('绿') !== -1) colorLabel = '绿'; var html = '';
html += '<div class="nf-number" data-num="' + num + '" data-color="' + colorLabel + '" data-animal="' + animal + '" data-tail="' + (num % 10) + '" style="text-align:center;background:#f9f9f9;padding:6px 4px;border-radius:6px;min-width:60px;transition:opacity 0.2s;">' + for (var z = 0; z < zodiacOrder.length; z++) {
'<span style="display:inline-block;width:36px;height:36px;line-height:36px;text-align:center;border-radius:50%;color:#fff;background-color:' + colorHex + ';font-weight:bold;">' + num + '</span>' + var zodiac = zodiacOrder[z];
'<div style="font-size:10px;color:#666;line-height:1.2;">' + animal + '</div>' + var nums = zodiacNums[zodiac];
'</div>'; if (nums.length === 0) continue;
html += '<div class="nf-zodiac-row" style="display:flex;align-items:center;gap:10px;margin-bottom:8px;">';
html += '<div style="font-weight:bold;font-size:14px;width:30px;text-align:center;">' + zodiac + '</div>';
html += '<div style="display:flex;flex-wrap:wrap;gap:8px;flex:1;">';
for (var i = 0; i < nums.length; i++) {
var num = nums[i];
var colorHex = Controller.api.getColorByNum(num);
var colorRaw = colorMap[num] || '';
var colorLabel = '';
if (colorRaw.indexOf('红') !== -1) colorLabel = '红';
else if (colorRaw.indexOf('蓝') !== -1) colorLabel = '蓝';
else if (colorRaw.indexOf('绿') !== -1) colorLabel = '绿';
html += '<div class="nf-number" data-num="' + num + '" data-color="' + colorLabel + '" data-animal="' + zodiac + '" data-tail="' + (num % 10) + '" style="text-align:center;background:#f9f9f9;padding:6px 4px;border-radius:6px;min-width:55px;transition:opacity 0.2s;">' +
'<span style="display:inline-block;width:36px;height:36px;line-height:36px;text-align:center;border-radius:50%;color:#fff;background-color:' + colorHex + ';font-weight:bold;">' + num + '</span>' +
'<div style="font-size:10px;color:#666;line-height:1.2;">' + zodiac + '</div>' +
'</div>';
}
html += '</div></div>';
} }
$('#nf-numbers', layero).html(html); $('#nf-numbers', layero).html(html);
}, },