<template>
|
<view class="detail-page">
|
<!-- 顶部子账号信息卡 -->
|
<view class="profile-card">
|
<view class="profile-left">
|
<text class="profile-name">{{ detail.name }}</text>
|
<text class="profile-phone">{{ detail.phone }}</text>
|
<view class="profile-level">
|
<text class="level-label">当前等级</text>
|
<text class="level-value">{{ detail.level }}</text>
|
</view>
|
</view>
|
</view>
|
|
<!-- Tab 切换栏 -->
|
<view class="tab-bar">
|
<view
|
v-for="tab in tabs"
|
:key="tab.key"
|
class="tab-item"
|
:class="{ 'tab-item--active': activeTab === tab.key }"
|
@tap="_handleTabChange(tab.key)"
|
>
|
<text class="tab-text">{{ tab.label }}</text>
|
<view v-if="activeTab === tab.key" class="tab-underline"></view>
|
</view>
|
</view>
|
|
<!-- 销售统计内容区 -->
|
<view v-if="activeTab === 'sales'" class="sales-content">
|
<!-- 当月利润高亮卡 -->
|
<view class="card profit-card">
|
<view class="profit-main">
|
<text class="profit-amount">¥{{ detail.monthProfit }}</text>
|
<text class="profit-label">当月利润</text>
|
</view>
|
<text class="profit-trend">{{ detail.profitTrend }}</text>
|
</view>
|
|
<!-- 汇总指标:2 列网格,数据驱动渲染 -->
|
<view class="card summary-grid">
|
<view
|
v-for="(item, index) in detail.summary"
|
:key="index"
|
class="summary-cell"
|
>
|
<text class="summary-label">{{ item.label }}</text>
|
<text class="summary-value">{{ item.value }}</text>
|
</view>
|
</view>
|
|
<!-- 销售额折线图(秋云 uCharts) -->
|
<view class="card chart-card">
|
<text class="chart-title">销售额</text>
|
<view class="chart-box chart-box--line">
|
<qiun-data-charts
|
type="line"
|
:chartData="lineChartData"
|
:opts="lineChartOpts"
|
/>
|
</view>
|
</view>
|
|
<!-- 商品销售额比例:饼图 + 图例(秋云 uCharts) -->
|
<view class="card chart-card">
|
<text class="chart-title">商品销售额比例</text>
|
<view class="pie-row">
|
<view class="chart-box chart-box--pie">
|
<qiun-data-charts
|
type="pie"
|
:chartData="pieChartData"
|
:opts="pieChartOpts"
|
/>
|
</view>
|
<view class="pie-legend">
|
<view
|
v-for="(item, index) in detail.salesRatio"
|
:key="index"
|
class="legend-item"
|
>
|
<view class="legend-color" :style="{ backgroundColor: item.color }"></view>
|
<text class="legend-name">{{ item.name }}</text>
|
<text class="legend-amount">{{ item.amount }}</text>
|
</view>
|
</view>
|
</view>
|
</view>
|
|
<!-- 销售用户排行 -->
|
<view class="card chart-card">
|
<text class="chart-title">销售用户排行</text>
|
<view class="ranking-list">
|
<view
|
v-for="(item, index) in detail.salesRanking"
|
:key="index"
|
class="ranking-item"
|
>
|
<view class="rank-badge">{{ item.rank }}</view>
|
<text class="rank-name">{{ item.name }}</text>
|
<text class="rank-phone">{{ item.phone }}</text>
|
<text class="rank-amount">{{ item.amount }}</text>
|
</view>
|
</view>
|
</view>
|
</view>
|
|
<!-- 他的仓库:库存列表,低于最低需求库存的商品前置告警条 -->
|
<view v-if="activeTab === 'stock'" class="list-content">
|
<template v-for="(item, index) in detail.warehouseList" :key="index">
|
<view v-if="item.currentStock < item.minStock" class="stock-warning">
|
<view class="warning-icon">!</view>
|
<text class="warning-text">已低于最低需求库存,无法销售该商品</text>
|
</view>
|
<view class="warehouse-item">
|
<view class="goods-thumb">
|
<view class="thumb-icon"></view>
|
</view>
|
<text class="goods-name">{{ item.name }}</text>
|
<view class="goods-stock">
|
<view class="stock-row">
|
<text class="stock-label">当前库存:</text>
|
<text
|
class="stock-value"
|
:class="{ 'stock-value--danger': item.currentStock < item.minStock }"
|
>{{ item.currentStock }}</text>
|
</view>
|
<view class="stock-row">
|
<text class="stock-label">最低需求库存:</text>
|
<text class="stock-value">{{ item.minStock }}</text>
|
</view>
|
</view>
|
</view>
|
</template>
|
</view>
|
|
<!-- 他的邀请:邀请人数汇总 + 邀请用户列表 -->
|
<view v-if="activeTab === 'invite'" class="list-content">
|
<view class="invite-summary">
|
<view
|
v-for="(item, index) in detail.inviteSummary"
|
:key="index"
|
class="invite-summary-item"
|
>
|
<text class="invite-summary-label">{{ item.label }}</text>
|
<text class="invite-summary-value">{{ item.value }}人</text>
|
</view>
|
</view>
|
<view
|
v-for="(item, index) in detail.inviteList"
|
:key="index"
|
class="invite-item"
|
>
|
<view class="invite-avatar"></view>
|
<view class="invite-main">
|
<view class="invite-name-row">
|
<text class="invite-name">{{ item.name }}</text>
|
<text class="invite-level">{{ item.level }}</text>
|
</view>
|
<text class="invite-phone">{{ item.phone }}</text>
|
</view>
|
<view class="invite-right">
|
<view class="invite-consume">
|
<text class="invite-consume-label">合计消费:</text>
|
<text class="invite-consume-value">{{ item.totalConsume }}</text>
|
</view>
|
<text class="invite-bind">绑定日:{{ item.bindDate }}</text>
|
</view>
|
</view>
|
</view>
|
</view>
|
</template>
|
|
<script setup>
|
import { ref, computed } from 'vue'
|
import { onLoad } from '@dcloudio/uni-app'
|
import { getSubAccountDetail } from '@/api/index.js'
|
|
// ======================== 数据定义区域 ========================
|
|
// Tab 列表
|
const tabs = [
|
{ key: 'sales', label: '销售统计' },
|
{ key: 'stock', label: '他的仓库' },
|
{ key: 'invite', label: '他的邀请' }
|
]
|
|
// 当前选中的 Tab
|
const activeTab = ref('sales')
|
|
// 子账号详情数据
|
const detail = ref({
|
name: '张三',
|
phone: '13612346666',
|
level: 'L2',
|
monthProfit: '1921.00',
|
profitTrend: '较上月提升14%',
|
summary: [
|
{ label: '当月销售额', value: '¥192541.00' },
|
{ label: '当月进货额', value: '¥192541.00' },
|
{ label: '当月销售单', value: '1234' },
|
{ label: '当月新邀请数', value: '86' }
|
],
|
salesTrend: [
|
{ day: '1号', value: 3200 },
|
{ day: '5号', value: 4000 },
|
{ day: '10号', value: 2200 },
|
{ day: '15号', value: 1200 },
|
{ day: '20号', value: 1500 }
|
],
|
salesRatio: [
|
{ name: 'C&MÉTS-V', amount: '¥12451.00', value: 12451, color: '#4c7ff0' },
|
{ name: 'C&MÉTS-V', amount: '¥12451.00', value: 12451, color: '#8fbcf5' },
|
{ name: 'C&MÉTS-V', amount: '¥12451.00', value: 12451, color: '#63b76a' }
|
],
|
salesRanking: [
|
{ rank: 1, name: '赵四', phone: '138****4561', amount: '16452.00' },
|
{ rank: 2, name: '钱五', phone: '138****4562', amount: '15230.00' },
|
{ rank: 3, name: '孙六', phone: '138****4563', amount: '13980.00' },
|
{ rank: 4, name: '李七', phone: '138****4564', amount: '12450.00' },
|
{ rank: 5, name: '周八', phone: '138****4565', amount: '11260.00' }
|
],
|
// 他的仓库:currentStock < minStock 时页面自动显示告警条并将库存标红
|
warehouseList: [
|
{ name: 'G&METS-II 超分子基团复合肽', currentStock: 100, minStock: 100 },
|
{ name: 'G&METS-II 超分子基团复合肽', currentStock: 98, minStock: 100 }
|
],
|
// 他的邀请:按等级统计的邀请人数
|
inviteSummary: [
|
{ label: '共', value: '36' },
|
{ label: 'L0:', value: '25' },
|
{ label: 'L1:', value: '5' },
|
{ label: 'L2:', value: '5' }
|
],
|
// 他的邀请:邀请用户列表
|
inviteList: [
|
{ name: '张三', level: 'L1', phone: '136****6666', totalConsume: '¥ 450', bindDate: '2026-09-03' },
|
{ name: '张三', level: 'L1', phone: '136****6666', totalConsume: '¥ 450', bindDate: '2026-09-03' },
|
{ name: '张三', level: 'L1', phone: '136****6666', totalConsume: '¥ 450', bindDate: '2026-09-03' }
|
]
|
})
|
|
// ======================== 图表数据(秋云 uCharts) ========================
|
|
// 折线图数据:x 轴为日期,系列为销售额
|
const lineChartData = computed(() => ({
|
categories: detail.value.salesTrend.map((item) => item.day),
|
series: [
|
{
|
name: '销售额',
|
data: detail.value.salesTrend.map((item) => item.value)
|
}
|
]
|
}))
|
|
// 折线图配置:隐藏图例、虚线网格,y 轴上限按数据取整到千位
|
const lineChartOpts = computed(() => {
|
const values = detail.value.salesTrend.map((item) => item.value)
|
const maxValue = Math.max(1000, Math.ceil(Math.max(...values) / 1000) * 1000)
|
return {
|
color: ['#4c7ff0'],
|
legend: { show: false },
|
dataLabel: false,
|
dataPointShape: true,
|
xAxis: { disableGrid: true, fontColor: '#9aa1ab', fontSize: 11 },
|
yAxis: {
|
gridType: 'dash',
|
dashLength: 4,
|
gridColor: '#eef1f5',
|
fontColor: '#9aa1ab',
|
fontSize: 11,
|
data: [{ min: 0, max: maxValue }]
|
},
|
extra: {
|
line: { type: 'straight', width: 2 }
|
}
|
}
|
})
|
|
// 饼图数据:各商品销售额占比
|
const pieChartData = computed(() => ({
|
series: detail.value.salesRatio.map((item) => ({
|
name: item.name,
|
data: item.value
|
}))
|
}))
|
|
// 饼图配置:隐藏自带图例与数据标签(由页面自绘图例),白色描边分隔扇形
|
const pieChartOpts = computed(() => ({
|
color: detail.value.salesRatio.map((item) => item.color),
|
legend: { show: false },
|
dataLabel: false,
|
extra: {
|
pie: {
|
activeOpacity: 0.5,
|
activeRadius: 10,
|
offsetAngle: 0,
|
border: true,
|
borderWidth: 3,
|
borderColor: '#FFFFFF'
|
}
|
}
|
}))
|
|
// ======================== 方法定义区域 ========================
|
|
/**
|
* 加载子账号详情
|
* @param {String} id 子账号 ID
|
* 后端接口就绪前保留初始模拟数据,保证页面可视
|
*/
|
const _loadDetail = async (id) => {
|
try {
|
const { data } = await getSubAccountDetail(id)
|
if (data) {
|
detail.value = { ...detail.value, ...data }
|
uni.setNavigationBarTitle({ title: detail.value.name })
|
}
|
} catch (e) {
|
// 接口未就绪,沿用模拟数据
|
}
|
}
|
|
/** 切换 Tab */
|
const _handleTabChange = (key) => {
|
if (activeTab.value === key) return
|
activeTab.value = key
|
}
|
|
// ======================== 页面生命周期 ========================
|
|
onLoad((options) => {
|
const id = options && options.id
|
uni.setNavigationBarTitle({ title: detail.value.name })
|
_loadDetail(id)
|
})
|
</script>
|
|
<style scoped lang="scss">
|
/* 页面容器:淡灰蓝背景 */
|
.detail-page {
|
min-height: 100vh;
|
background-color: #f7f9fc;
|
padding: 24rpx 28rpx 60rpx;
|
box-sizing: border-box;
|
}
|
|
/* 顶部信息卡:深蓝背景 */
|
.profile-card {
|
display: flex;
|
align-items: center;
|
justify-content: space-between;
|
padding: 32rpx 28rpx;
|
background-color: #0b3b68;
|
border-radius: 16rpx;
|
}
|
|
.profile-left {
|
display: flex;
|
flex-direction: column;
|
}
|
|
.profile-name {
|
font-size: 34rpx;
|
font-weight: 700;
|
color: #ffffff;
|
line-height: 46rpx;
|
}
|
|
.profile-phone {
|
font-size: 26rpx;
|
color: rgba(255, 255, 255, 0.8);
|
margin-top: 8rpx;
|
}
|
|
.profile-level {
|
display: flex;
|
align-items: baseline;
|
margin-top: 20rpx;
|
}
|
|
.level-label {
|
font-size: 24rpx;
|
color: rgba(255, 255, 255, 0.8);
|
margin-right: 12rpx;
|
}
|
|
.level-value {
|
font-size: 40rpx;
|
font-weight: 700;
|
color: #ffffff;
|
}
|
|
/* 等级详情按钮:绿色圆角 */
|
.level-detail-btn {
|
padding: 14rpx 28rpx;
|
background-color: #67b72c;
|
color: #ffffff;
|
font-size: 26rpx;
|
font-weight: 600;
|
border-radius: 8rpx;
|
}
|
|
/* Tab 栏 */
|
.tab-bar {
|
display: flex;
|
align-items: center;
|
margin-top: 24rpx;
|
background-color: #ffffff;
|
border-radius: 16rpx 16rpx 0 0;
|
padding: 0 12rpx;
|
}
|
|
.tab-item {
|
position: relative;
|
flex: 1;
|
display: flex;
|
flex-direction: column;
|
align-items: center;
|
padding: 26rpx 0;
|
}
|
|
.tab-text {
|
font-size: 28rpx;
|
color: #6b7280;
|
}
|
|
.tab-item--active .tab-text {
|
color: #1f2329;
|
font-weight: 600;
|
}
|
|
/* 选中 Tab 的绿色下划线 */
|
.tab-underline {
|
position: absolute;
|
bottom: 8rpx;
|
width: 56rpx;
|
height: 6rpx;
|
border-radius: 4rpx;
|
background-color: #67b72c;
|
}
|
|
/* 通用卡片 */
|
.card {
|
background-color: #ffffff;
|
border-radius: 16rpx;
|
padding: 28rpx;
|
margin-bottom: 20rpx;
|
}
|
|
.sales-content {
|
padding-top: 20rpx;
|
}
|
|
/* 当月利润卡 */
|
.profit-card {
|
display: flex;
|
align-items: center;
|
justify-content: space-between;
|
}
|
|
.profit-main {
|
display: flex;
|
flex-direction: column;
|
}
|
|
.profit-amount {
|
font-size: 42rpx;
|
font-weight: 700;
|
color: #1f2329;
|
line-height: 54rpx;
|
}
|
|
.profit-label {
|
font-size: 24rpx;
|
color: #8f959e;
|
margin-top: 8rpx;
|
}
|
|
.profit-trend {
|
font-size: 24rpx;
|
color: #1a73e8;
|
}
|
|
/* 汇总指标 2 列网格 */
|
.summary-grid {
|
display: grid;
|
grid-template-columns: repeat(2, 1fr);
|
row-gap: 32rpx;
|
column-gap: 16rpx;
|
}
|
|
.summary-cell {
|
display: flex;
|
align-items: center;
|
}
|
|
.summary-label {
|
font-size: 26rpx;
|
color: #8f959e;
|
}
|
|
.summary-value {
|
font-size: 28rpx;
|
font-weight: 700;
|
color: #1f2329;
|
margin-left: 16rpx;
|
}
|
|
/* 图表卡片 */
|
.chart-card {
|
display: flex;
|
flex-direction: column;
|
}
|
|
.chart-title {
|
font-size: 28rpx;
|
font-weight: 600;
|
color: #1f2329;
|
text-align: center;
|
margin-bottom: 24rpx;
|
}
|
|
/* 图表容器:必须给定高度,uCharts 组件按父容器尺寸绘制 */
|
.chart-box {
|
width: 100%;
|
}
|
|
.chart-box--line {
|
height: 220px;
|
}
|
|
.chart-box--pie {
|
width: 160px;
|
height: 160px;
|
flex-shrink: 0;
|
}
|
|
/* 饼图行:左饼图右图例 */
|
.pie-row {
|
display: flex;
|
align-items: center;
|
}
|
|
.pie-legend {
|
flex: 1;
|
margin-left: 24rpx;
|
display: flex;
|
flex-direction: column;
|
gap: 20rpx;
|
}
|
|
.legend-item {
|
display: flex;
|
align-items: center;
|
}
|
|
.legend-color {
|
width: 24rpx;
|
height: 24rpx;
|
border-radius: 4rpx;
|
margin-right: 14rpx;
|
flex-shrink: 0;
|
}
|
|
.legend-name {
|
font-size: 24rpx;
|
color: #1f2329;
|
flex: 1;
|
}
|
|
.legend-amount {
|
font-size: 24rpx;
|
color: #8f959e;
|
}
|
|
/* 销售用户排行 */
|
.ranking-list {
|
display: flex;
|
flex-direction: column;
|
gap: 24rpx;
|
}
|
|
.ranking-item {
|
display: flex;
|
align-items: center;
|
}
|
|
.rank-badge {
|
width: 44rpx;
|
height: 44rpx;
|
border-radius: 50%;
|
border: 1rpx solid #dcdfe6;
|
display: flex;
|
align-items: center;
|
justify-content: center;
|
font-size: 24rpx;
|
color: #6b7280;
|
flex-shrink: 0;
|
}
|
|
.rank-name {
|
font-size: 28rpx;
|
color: #1f2329;
|
margin-left: 20rpx;
|
}
|
|
.rank-phone {
|
font-size: 26rpx;
|
color: #8f959e;
|
margin-left: 20rpx;
|
flex: 1;
|
}
|
|
.rank-amount {
|
font-size: 28rpx;
|
color: #1f2329;
|
}
|
|
/* ==================== 列表型 Tab 容器 ==================== */
|
/* 仓库/邀请内容:白底通铺,承接 Tab 栏(外层已有页面 padding,此处仅留内容内边距) */
|
.list-content {
|
background-color: #ffffff;
|
padding: 0 24rpx;
|
}
|
|
/* ==================== 他的仓库 ==================== */
|
/* 库存告警条:深蓝渐变底 + 左侧感叹号 */
|
.stock-warning {
|
display: flex;
|
align-items: center;
|
padding: 14rpx 20rpx;
|
border-radius: 8rpx;
|
margin-top: 20rpx;
|
background: linear-gradient(90deg, #0b3b68 0%, #1a5f9e 100%);
|
}
|
|
.warning-icon {
|
width: 30rpx;
|
height: 30rpx;
|
border-radius: 50%;
|
background-color: #3f8fd6;
|
color: #ffffff;
|
font-size: 22rpx;
|
font-weight: 700;
|
text-align: center;
|
line-height: 30rpx;
|
margin-right: 14rpx;
|
flex-shrink: 0;
|
}
|
|
.warning-text {
|
font-size: 24rpx;
|
color: #ffffff;
|
}
|
|
/* 单个商品行 */
|
.warehouse-item {
|
display: flex;
|
align-items: center;
|
padding: 24rpx 0;
|
border-bottom: 1rpx solid #f0f2f5;
|
}
|
|
/* 商品图占位:灰底 + CSS 图片图标 */
|
.goods-thumb {
|
width: 96rpx;
|
height: 96rpx;
|
background-color: #f2f3f5;
|
display: flex;
|
align-items: center;
|
justify-content: center;
|
flex-shrink: 0;
|
}
|
|
.thumb-icon {
|
position: relative;
|
width: 40rpx;
|
height: 34rpx;
|
border: 3rpx solid #c0c4cc;
|
border-radius: 4rpx;
|
box-sizing: border-box;
|
}
|
|
/* 图片图标内的“山”三角 */
|
.thumb-icon::before {
|
content: '';
|
position: absolute;
|
left: 4rpx;
|
bottom: 3rpx;
|
width: 0;
|
height: 0;
|
border-left: 9rpx solid transparent;
|
border-right: 9rpx solid transparent;
|
border-bottom: 11rpx solid #c0c4cc;
|
}
|
|
/* 图片图标内的“太阳”圆点 */
|
.thumb-icon::after {
|
content: '';
|
position: absolute;
|
top: 4rpx;
|
right: 5rpx;
|
width: 7rpx;
|
height: 7rpx;
|
border-radius: 50%;
|
background-color: #c0c4cc;
|
}
|
|
/* 商品名:占据中间自适应空间 */
|
.goods-name {
|
flex: 1;
|
font-size: 26rpx;
|
color: #1f2329;
|
line-height: 36rpx;
|
margin: 0 16rpx;
|
}
|
|
/* 库存信息:右对齐两行 */
|
.goods-stock {
|
display: flex;
|
flex-direction: column;
|
align-items: flex-end;
|
flex-shrink: 0;
|
}
|
|
.stock-row {
|
display: flex;
|
align-items: center;
|
}
|
|
.stock-row + .stock-row {
|
margin-top: 10rpx;
|
}
|
|
.stock-label {
|
font-size: 24rpx;
|
color: #6b7280;
|
}
|
|
.stock-value {
|
font-size: 24rpx;
|
color: #1f2329;
|
margin-left: 4rpx;
|
}
|
|
/* 库存低于最低需求:红色高亮 */
|
.stock-value--danger {
|
color: #e54d42;
|
}
|
|
/* ==================== 他的邀请 ==================== */
|
/* 人数汇总行 */
|
.invite-summary {
|
display: flex;
|
align-items: center;
|
padding: 24rpx 0;
|
border-bottom: 1rpx solid #f0f2f5;
|
}
|
|
.invite-summary-item {
|
flex: 1;
|
display: flex;
|
align-items: center;
|
}
|
|
.invite-summary-label {
|
font-size: 24rpx;
|
color: #8f959e;
|
}
|
|
.invite-summary-value {
|
font-size: 24rpx;
|
font-weight: 700;
|
color: #1f2329;
|
margin-left: 6rpx;
|
}
|
|
/* 邀请用户行 */
|
.invite-item {
|
display: flex;
|
align-items: center;
|
padding: 28rpx 0;
|
border-bottom: 1rpx solid #f0f2f5;
|
}
|
|
/* 头像占位:灰底 + CSS 人形(头 + 肩) */
|
.invite-avatar {
|
position: relative;
|
width: 72rpx;
|
height: 72rpx;
|
border-radius: 50%;
|
background-color: #e9ebee;
|
flex-shrink: 0;
|
overflow: hidden;
|
}
|
|
.invite-avatar::before {
|
content: '';
|
position: absolute;
|
top: 16rpx;
|
left: 50%;
|
transform: translateX(-50%);
|
width: 24rpx;
|
height: 24rpx;
|
border-radius: 50%;
|
background-color: #c0c4cc;
|
}
|
|
.invite-avatar::after {
|
content: '';
|
position: absolute;
|
bottom: 0;
|
left: 50%;
|
transform: translateX(-50%);
|
width: 46rpx;
|
height: 24rpx;
|
border-radius: 24rpx 24rpx 0 0;
|
background-color: #c0c4cc;
|
}
|
|
/* 中列:姓名 + 等级 + 手机号 */
|
.invite-main {
|
flex: 1;
|
display: flex;
|
flex-direction: column;
|
margin-left: 20rpx;
|
}
|
|
.invite-name-row {
|
display: flex;
|
align-items: center;
|
}
|
|
.invite-name {
|
font-size: 28rpx;
|
color: #1f2329;
|
}
|
|
/* 等级胶囊:绿底白字 */
|
.invite-level {
|
margin-left: 12rpx;
|
padding: 2rpx 12rpx;
|
font-size: 20rpx;
|
color: #ffffff;
|
background-color: #67b72c;
|
border-radius: 6rpx;
|
}
|
|
.invite-phone {
|
font-size: 24rpx;
|
color: #8f959e;
|
margin-top: 12rpx;
|
}
|
|
/* 右列:消费额 + 绑定日 */
|
.invite-right {
|
display: flex;
|
flex-direction: column;
|
align-items: flex-end;
|
flex-shrink: 0;
|
}
|
|
.invite-consume {
|
display: flex;
|
align-items: center;
|
}
|
|
.invite-consume-label {
|
font-size: 24rpx;
|
color: #8f959e;
|
}
|
|
.invite-consume-value {
|
font-size: 24rpx;
|
color: #1f2329;
|
}
|
|
.invite-bind {
|
font-size: 22rpx;
|
color: #b0b6bd;
|
margin-top: 12rpx;
|
}
|
|
/* 列表最后一行去掉分隔线 */
|
.list-content > .invite-item:last-child,
|
.list-content > .warehouse-item:last-child {
|
border-bottom: none;
|
}
|
</style>
|