修改河南项目的管理后台ui和删除之前不需要的游戏

This commit is contained in:
2026-09-22 14:57:09 +08:00
parent 8f8d2e042c
commit e61399ecd6
106 changed files with 1202 additions and 4100 deletions
@@ -31,7 +31,7 @@
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="openBlankDialog">生成白号用户</el-button>
</el-col>
<el-col :span="12">
<span style="color: #909399; font-size: 12px; line-height: 32px;">
<span style="color: #7a664e; font-size: 12px; line-height: 32px;">
<i class="el-icon-info"></i> 提示:如需删除白号,请前往“用户管理 / 用户列表”操作。
</span>
</el-col>
@@ -91,7 +91,7 @@
<el-form label-width="90px">
<el-form-item label="请选择数量:" style="margin-bottom: 12px;">
<el-input-number size="mini" v-model="newNumber" :min="1" :max="10" @change="onBlankNumberChange"></el-input-number>
<span style="font-size:12px;color:#909399;margin-left:10px;">
<span style="font-size:12px;color:#7a664e;margin-left:10px;">
<i class="el-icon-info"></i> 可生成 1-10 个白号用户
</span>
</el-form-item>
@@ -108,7 +108,7 @@
placeholder="留空则自动生成随机手机号"
/>
</el-form-item>
<div style="font-size:12px;color:#909399;padding-left:90px;">
<div style="font-size:12px;color:#7a664e;padding-left:90px;">
<i class="el-icon-info"></i> 手机号选填:填写后作为登录账号,留空则系统随机生成
</div>
</el-form>
@@ -26,7 +26,7 @@
<el-table-column prop="id" label="ID" width="70" align="center" />
<el-table-column prop="cardCode" label="卡密编码" width="200" align="center">
<template slot-scope="scope">
<span style="font-family: 'Courier New', monospace; color: #409eff; font-weight: 600; margin-right: 6px;">{{ scope.row.cardCode }}</span>
<span style="font-family: 'Courier New', monospace; color: #9a5c35; font-weight: 600; margin-right: 6px;">{{ scope.row.cardCode }}</span>
<el-button type="text" size="mini" @click="copyText(scope.row.cardCode)">复制</el-button>
</template>
</el-table-column>
+1 -1
View File
@@ -154,7 +154,7 @@ export default {
methods: {
getPriceColor(row) {
if (!row.cs340Price) return '#606266'; // 无三方价格时默认色
return row.ornamentsPrice > row.cs340Price ? '#F56C6C' : '#67C23A'; // 溢价红色,未溢价绿色
return row.ornamentsPrice > row.cs340Price ? '#a4485a' : '#457450'; // 溢价红色,未溢价绿色
},
handleSubmit(formName) {
this.$refs[formName].validate(valid => {
@@ -99,7 +99,7 @@
已用:{{ scope.row.dailyUsedCount }}<br/>
审核中:{{ scope.row.dailyPendingCount }}
</div>
<i class="el-icon-question" style="color: #909399; margin-left: 4px;"></i>
<i class="el-icon-question" style="color: #7a664e; margin-left: 4px;"></i>
</el-tooltip>
</span>
</template>
@@ -122,8 +122,8 @@
<el-table-column align="center" class-name="operation-column" label="操作" width="120">
<template slot-scope="scope">
<div v-if="scope.row.status === 0" style="display: flex; justify-content: center; align-items: center;">
<el-button type="text" style="color: #67C23A; margin: 0 5px;" @click="handleApprove(scope.row)">同意</el-button>
<el-button type="text" style="color: #F56C6C; margin: 0 5px;" @click="handleReject(scope.row)">驳回</el-button>
<el-button type="text" style="color: #457450; margin: 0 5px;" @click="handleApprove(scope.row)">同意</el-button>
<el-button type="text" style="color: #a4485a; margin: 0 5px;" @click="handleReject(scope.row)">驳回</el-button>
</div>
<div v-else style="text-align: center; color: #999;">已处理</div>
</template>
@@ -105,7 +105,7 @@
已用:{{ scope.row.dailyUsedCount }}<br/>
审核中:{{ scope.row.dailyPendingCount }}
</div>
<i class="el-icon-question" style="color: #909399; margin-left: 4px;"></i>
<i class="el-icon-question" style="color: #7a664e; margin-left: 4px;"></i>
</el-tooltip>
</span>
</template>
@@ -265,7 +265,7 @@ export default {
align-items: center;
justify-content: space-between;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
+5 -5
View File
@@ -414,7 +414,7 @@
</div>
</div>
</div>
<div v-else style="text-align:center; color:#909399; padding:20px;">暂无饰品</div>
<div v-else style="text-align:center; color:#7a664e; padding:20px;">暂无饰品</div>
<!-- 分页:默认每页 10 条 -->
<div style="margin-top: 8px; display: flex; justify-content: flex-end;" v-if="orTotal > 0">
<el-pagination
@@ -1105,7 +1105,7 @@ export default {
padding: 2px 5px;
line-height: 32px;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
@@ -1137,8 +1137,8 @@ export default {
box-sizing: border-box;
}
.ornament-card:hover {
border-color: #409eff;
background: #f0f9ff;
border-color: #9a5c35;
background: #f6efe3;
}
.ornament-img {
width: 50px;
@@ -1164,7 +1164,7 @@ export default {
}
.ornament-price {
font-size: 12px;
color: #f56c6c;
color: #a4485a;
font-weight: bold;
margin-top: 2px;
}
+2 -2
View File
@@ -917,7 +917,7 @@ export default {
"普通": "#b0c3d9",
"普通级": "#b0c3d9"
};
return map[rarityName] || "#909399";
return map[rarityName] || "#7a664e";
},
// 图表展示当前 tab 奖池当日的出货金额/开启次数/利润
initEcharts(day, pool) {
@@ -1455,7 +1455,7 @@ export default {
padding: 2px 5px;
line-height: 32px;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
@@ -21,7 +21,7 @@
<el-table-column align="center" prop="phoneNumber" label="手机号" width="140" />
<el-table-column align="center" label="卡商余额" width="140">
<template slot-scope="scope">
<span style="color: #E6A23C; font-weight: bold; font-size: 16px;">{{ scope.row.merchantBalance }}</span>
<span style="color: #8f6418; font-weight: bold; font-size: 16px;">{{ scope.row.merchantBalance }}</span>
</template>
</el-table-column>
@@ -70,7 +70,7 @@
</el-table-column>
<el-table-column align="center" label="变动金额" width="140">
<template slot-scope="scope">
<span :style="{ color: scope.row.credits > 0 ? '#67C23A' : '#F56C6C', fontWeight: 'bold' }">
<span :style="{ color: scope.row.credits > 0 ? '#457450' : '#a4485a', fontWeight: 'bold' }">
{{ scope.row.credits > 0 ? '+' : '' }}{{ scope.row.credits }}
</span>
</template>
@@ -99,7 +99,7 @@
<el-tag type="info" size="medium">{{ currentMerchant.nickName }}(ID: {{ currentMerchant.userId }})</el-tag>
<br />
<span style="margin-top: 8px; display: inline-block;">
当前卡商余额:<strong style="color: #E6A23C; font-size: 18px;">{{ currentMerchant.merchantBalance }}</strong>
当前卡商余额:<strong style="color: #8f6418; font-size: 18px;">{{ currentMerchant.merchantBalance }}</strong>
</span>
</div>
<el-form :model="rechargeForm" :rules="rechargeRules" ref="rechargeForm" label-width="100px">
@@ -134,7 +134,7 @@
<el-tag type="info" size="medium">{{ currentMerchant.nickName }}(ID: {{ currentMerchant.userId }})</el-tag>
<br />
<span style="margin-top: 8px; display: inline-block;">
当前卡商余额:<strong style="color: #E6A23C; font-size: 18px;">{{ currentMerchant.merchantBalance }}</strong>
当前卡商余额:<strong style="color: #8f6418; font-size: 18px;">{{ currentMerchant.merchantBalance }}</strong>
</span>
</div>
<el-form :model="editBalanceForm" :rules="editBalanceRules" ref="editBalanceForm" label-width="100px">
@@ -149,10 +149,10 @@
/>
</el-form-item>
<el-form-item label="变动金额">
<span :style="{ color: balanceDelta > 0 ? '#67C23A' : (balanceDelta < 0 ? '#F56C6C' : '#909399'), fontWeight: 'bold' }">
<span :style="{ color: balanceDelta > 0 ? '#457450' : (balanceDelta < 0 ? '#a4485a' : '#7a664e'), fontWeight: 'bold' }">
{{ balanceDelta > 0 ? '+' : '' }}{{ balanceDelta }}
</span>
<span style="color: #909399; margin-left: 8px;">(按差额记入充值 / 消费记录)</span>
<span style="color: #7a664e; margin-left: 8px;">(按差额记入充值 / 消费记录)</span>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@@ -419,12 +419,15 @@ export default {
</script>
<style scoped lang="scss">
/* 原来是 border-left: 4px solid #9a5c35 的单侧粗边框(规范列为禁止项),
换成雏菊黄浅底的圆角标题条,仍是整块标题但不靠一侧色带表达层级 */
.section-title {
font-size: 16px;
font-weight: bold;
margin-bottom: 15px;
padding-left: 10px;
border-left: 4px solid #409EFF;
color: #303133;
padding: 6px 14px;
border-radius: 12px;
background: rgba(245, 215, 95, 0.22);
color: #4f4130;
}
</style>
@@ -325,7 +325,7 @@ export default {
align-items: center;
justify-content: space-between;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
@@ -393,7 +393,7 @@ export default {
padding: 2px 5px;
line-height: 32px;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
@@ -122,7 +122,7 @@
>发放饰品</el-button>
<el-button icon="el-icon-edit" size="mini" type="text" @click="handleUpdate(scope.row)">编辑</el-button>
<el-button icon="el-icon-date" size="mini" type="text" @click="handleDetail(scope.row)">详情</el-button>
<el-button icon="el-icon-delete" size="mini" type="text" style="color: #f56c6c;" @click="handleDelete(scope.row)">删除</el-button>
<el-button icon="el-icon-delete" size="mini" type="text" style="color: #a4485a;" @click="handleDelete(scope.row)">删除</el-button>
</template>
</el-table-column>
</el-table>
@@ -545,7 +545,7 @@ export default {
"普通": "#b0c3d9",
"普通级": "#b0c3d9"
};
return map[rarityName] || "#909399";
return map[rarityName] || "#7a664e";
},
// 饰品品质颜色映射:1黄/2红/3紫/4蓝/5蓝(4与5均为蓝色)
getQualityColor(quality) {
@@ -553,10 +553,10 @@ export default {
"1": "#ffd700",
"2": "#ff4d4f",
"3": "#a16ee8",
"4": "#409eff",
"5": "#409eff"
"4": "#9a5c35",
"5": "#9a5c35"
};
return map[quality] || "#909399";
return map[quality] || "#7a664e";
},
getQualityName(quality) {
if (quality == '4' || quality == '5') return '蓝色';
@@ -792,7 +792,7 @@ export default {
align-items: center;
justify-content: space-between;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
@@ -491,7 +491,7 @@ export default {
align-items: center;
justify-content: space-between;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
@@ -234,7 +234,7 @@ export default {
align-items: center;
justify-content: space-between;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
+5 -5
View File
@@ -172,10 +172,10 @@
></el-option>
</el-select>
<div v-if="form.rollType == 1 && form.userId && form.jackpotId" style="font-size: 13px; line-height: 1.6; margin-top: 4px;">
当前金币余额:<span :style="{ color: balanceInsufficient ? '#F56C6C' : '#67C23A' }">{{ anchorBalance }}</span> 金币
&nbsp;|&nbsp; 奖池总价值:<span style="color:#E6A23C;">{{ selectedJackpotTotal }}</span> 金币
<span v-if="balanceInsufficient" style="color:#F56C6C; font-weight:bold;">(余额不足)</span>
<span v-if="selectedJackpotTotal > 0 && selectedJackpotTotal < 200" style="color:#F56C6C; font-weight:bold;">(主播房奖池总价值不能低于200金币)</span>
当前金币余额:<span :style="{ color: balanceInsufficient ? '#a4485a' : '#457450' }">{{ anchorBalance }}</span> 金币
&nbsp;|&nbsp; 奖池总价值:<span style="color:#8f6418;">{{ selectedJackpotTotal }}</span> 金币
<span v-if="balanceInsufficient" style="color:#a4485a; font-weight:bold;">(余额不足)</span>
<span v-if="selectedJackpotTotal > 0 && selectedJackpotTotal < 200" style="color:#a4485a; font-weight:bold;">(主播房奖池总价值不能低于200金币)</span>
</div>
</el-form-item>
<el-form-item label="开奖时间" prop="endTime">
@@ -225,7 +225,7 @@
</el-dialog>
<!-- 中奖详情 -->
<el-dialog title="中奖详情" :visible.sync="winningVisible" width="700px">
<div style="margin-bottom: 10px; color: #909399; font-size: 13px;">
<div style="margin-bottom: 10px; color: #7a664e; font-size: 13px;">
共 <b>{{ winningList.length }}</b> 件奖品,总价值 <b>{{ winningTotalPrice }}</b> 金币
</div>
<el-table v-loading="winningLoading" :data="winningPagedList" border stripe max-height="400">
+2 -2
View File
@@ -412,7 +412,7 @@ export default {
"普通": "#b0c3d9",
"普通级": "#b0c3d9"
};
return map[rarityName] || "#909399";
return map[rarityName] || "#7a664e";
},
serchprop() {
this.loadings = true;
@@ -620,7 +620,7 @@ export default {
padding: 2px 5px;
line-height: 32px;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
@@ -434,7 +434,7 @@ export default {
padding: 2px 5px;
line-height: 32px;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
+1 -1
View File
@@ -522,7 +522,7 @@ export default {
"普通": "#b0c3d9",
"普通级": "#b0c3d9"
};
return map[rarityName] || "#909399";
return map[rarityName] || "#7a664e";
},
initEcharts(res) {
var chartDom = document.getElementById("main");
@@ -331,7 +331,7 @@ export default {
"普通": "#b0c3d9",
"普通级": "#b0c3d9"
};
return map[rarityName] || "#909399";
return map[rarityName] || "#7a664e";
},
handleR() {
document.body.click();
@@ -34,7 +34,7 @@
<div style="padding-left: 18px; color: #606266;">
玩家选的概率 ≤ 75% 时,真实计算金额 = 投入金额;<br>
玩家选的概率 > 75% 时,最高只按 75% 计算。<br>
<span style="color: #909399;">例如:饰品价格 1000,选 90% 概率,实际扣 900,但真实计算金额只算 750。</span>
<span style="color: #7a664e;">例如:饰品价格 1000,选 90% 概率,实际扣 900,但真实计算金额只算 750。</span>
</div>
<div><strong>3. 起始金额:</strong>本轮抽奖之前,真实计算口径下已经累计了多少钱。如果上一轮多投了,多出的部分会带到这里。</div>
<div><strong>4. 本轮目标金额:</strong>= 饰品价格 × 幸运区间随机值 ÷ 100。幸运区间是后台配置的(如 [100,160]),每轮开始时在区间内随机取一个值,算出本轮累计到多少钱就会出货。</div>
@@ -336,7 +336,7 @@ export default {
align-items: center;
justify-content: space-between;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
@@ -501,7 +501,7 @@ export default {
"普通": "#b0c3d9",
"普通级": "#b0c3d9"
};
return map[rarityName] || "#909399";
return map[rarityName] || "#7a664e";
},
getList() {
this.loading = true;
@@ -938,7 +938,7 @@ export default {
padding: 2px 5px;
line-height: 32px;
&:hover {
background-color: #409eff;
background-color: #9a5c35;
transition: all ease 0.3s;
}
}
@@ -23,7 +23,7 @@
controls-position="right"
style="width:150px"
/>
<span style="margin-left:8px; color:#909399;">
<span style="margin-left:8px; color:#7a664e;">
元 返水超过该金额不自动发放,需在下方「操作」列点「发放CDK」人工发放;填 <b>0</b> 表示不设上限
</span>
</el-form-item>
+5 -5
View File
@@ -220,7 +220,7 @@
@click.native="handleDelete(scope.row)"
>删除</el-dropdown-item>
<el-dropdown-item
@click.native="handleForceDelete(scope.row)" style="color: #F56C6C;"
@click.native="handleForceDelete(scope.row)" style="color: #a4485a;"
>真删除</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
@@ -232,7 +232,7 @@
<el-form label-width="90px">
<el-form-item label="请选择数量:" style="margin-bottom: 12px;">
<el-input-number size="mini" v-model="newNumber" :min="1" :max="10" @change="onBusinessNumberChange"></el-input-number>
<span style="font-size:12px;color:#909399;margin-left:10px;">
<span style="font-size:12px;color:#7a664e;margin-left:10px;">
<i class="el-icon-info"></i> 可生成 1-10 个账号
</span>
</el-form-item>
@@ -249,7 +249,7 @@
placeholder="留空则自动生成随机手机号"
/>
</el-form-item>
<div style="font-size:12px;color:#909399;padding-left:90px;">
<div style="font-size:12px;color:#7a664e;padding-left:90px;">
<i class="el-icon-info"></i> 手机号选填:填写后作为登录账号,留空则系统随机生成
</div>
</el-form>
@@ -278,7 +278,7 @@
<el-form label-width="90px">
<el-form-item label="请选择数量:" style="margin-bottom: 12px;">
<el-input-number size="mini" v-model="newNumber" :min="1" :max="10" @change="onCardNumberChange"></el-input-number>
<span style="font-size:12px;color:#909399;margin-left:10px;">
<span style="font-size:12px;color:#7a664e;margin-left:10px;">
<i class="el-icon-info"></i> 可生成 1-10 个卡商账号
</span>
</el-form-item>
@@ -295,7 +295,7 @@
placeholder="留空则自动生成随机手机号"
/>
</el-form-item>
<div style="font-size:12px;color:#909399;padding-left:90px;">
<div style="font-size:12px;color:#7a664e;padding-left:90px;">
<i class="el-icon-info"></i> 手机号选填:填写后作为登录账号,留空则系统随机生成
</div>
</el-form>
@@ -25,7 +25,7 @@
当前排序:
<b>{{ sortLabels[queryParams.sortField] || '总流水' }}</b>
<span style="margin-left:4px">{{ queryParams.sortOrder === 'asc' ? '↑ 升序' : '↓ 降序' }}</span>
<span style="margin-left:12px;color:#909399">点击表头可切换排序字段和方向</span>
<span style="margin-left:12px;color:#7a664e">点击表头可切换排序字段和方向</span>
</el-alert>
<!-- 数据表格 -->
@@ -42,12 +42,12 @@
<!-- 充值 -->
<el-table-column prop="totalRecharge" label="总充值" min-width="110" align="right" sortable="custom">
<template slot-scope="scope"><span style="color:#67c23a">{{ formatMoney(scope.row.totalRecharge) }}</span></template>
<template slot-scope="scope"><span style="color:#457450">{{ formatMoney(scope.row.totalRecharge) }}</span></template>
</el-table-column>
<!-- 消费流水 -->
<el-table-column prop="totalTurnover" label="总流水" min-width="110" align="right" sortable="custom">
<template slot-scope="scope"><span style="color:#f56c6c">{{ formatMoney(scope.row.totalTurnover) }}</span></template>
<template slot-scope="scope"><span style="color:#a4485a">{{ formatMoney(scope.row.totalTurnover) }}</span></template>
</el-table-column>
<!-- 游戏分类消费 -->