{{ t.msg }}
{{ currentTabLabel }}
📅 {{ todayFormatted }} 👤 Tiến
💰 Doanh số hôm nay
{{ fmt(kpi.doanhSo) }}
từ {{ kpi.soSan }} sàn
📦 Số đơn
{{ kpi.soDon }}
đơn hôm nay
📈 Lãi ròng
{{ fmt(kpi.laiRong) }}
sau phí & ads
🚫 Tỷ lệ hủy
{{ kpi.tyLeHuy }}%
đơn hủy
📊 Doanh số 30 ngày (TikTok vs Shopee)
💹 Lãi ròng 30 ngày
🏆 Top 10 sản phẩm
#Sản phẩmSLDoanh thu
{{ i+1 }} {{ p.ten_sp || '—' }} {{ p.sl }} {{ fmt(p.dt) }}
Chưa có dữ liệu
✅ Checklist hôm nay
{{ todayDone }}/{{ todayChecklist.length }} hoàn thành
{{ item.noi_dung }}
Chưa có checklist hôm nay
➕ Thêm đơn hàng mới
Doanh thu: {{ fmt(orderCalc.doanh_thu) }}
Phí sàn: {{ fmt(orderCalc.phi_san) }}
Giá vốn tổng: {{ fmt(orderCalc.gia_von_tong) }}
Lãi ròng: {{ fmt(orderCalc.lai_rong) }}
NgàySànMã đơnSPSL Doanh thuGiá vốnPhí sànAdsLãi ròngTrạng thái
{{ fmtDate(o.created_at) }} {{ o.san }} {{ o.ma_don }} {{ o.ten_sp }} {{ o.so_luong }} {{ fmt(o.doanh_thu) }} {{ fmt((o.gia_von||0) * (o.so_luong||1)) }} {{ fmt(o.phi_san) }} {{ fmt(o.chi_phi_ads) }} {{ fmt(o.lai_rong) }} {{ o.trang_thai }}
Chưa có đơn hàng
Tổng cộng ({{ filteredOrders.length }} đơn) {{ fmt(filteredOrders.reduce((s,o)=>s+(o.doanh_thu||0),0)) }} {{ fmt(filteredOrders.reduce((s,o)=>s+(o.gia_von||0)*(o.so_luong||1),0)) }} {{ fmt(filteredOrders.reduce((s,o)=>s+(o.phi_san||0),0)) }} {{ fmt(filteredOrders.reduce((s,o)=>s+(o.chi_phi_ads||0),0)) }} {{ fmt(filteredOrders.reduce((s,o)=>s+(o.lai_rong||0),0)) }}
📊 Phân tích theo sản phẩm
Sản phẩmSố đơnDoanh thuGiá vốnLãi ròngMargin
{{ p.ten_sp }} {{ p.so_don }} {{ fmt(p.doanh_thu) }} {{ fmt(p.gia_von) }} {{ fmt(p.lai_rong) }} {{ p.margin.toFixed(1) }}%
🛍️ Danh sách sản phẩm
SKUTên SPLoạiGiá bánGiá vốnMargin
{{ p.sku }} {{ p.ten_sp }} {{ p.loai }} {{ fmt(p.gia_ban) }} {{ fmt(p.gia_von) }} {{ p.gia_ban ? ((p.gia_ban-p.gia_von)/p.gia_ban*100).toFixed(1) : 0 }}%
Chưa có sản phẩm
👥 Tổng khách
{{ customers.length }}
🆕 Mới tháng này
{{ newThisMonth }}
⚠️ At-risk
{{ atRiskCount }}
👑 VIP
{{ vipCount }}
TênSĐTĐơnChi tiêuĐơn đầuĐơn cuốiSegment
{{ c.ten_khach }} {{ c.sdt }} {{ c.tong_don }} {{ fmt(c.tong_chi_tieu) }} {{ fmtDate(c.don_dau) }} {{ fmtDate(c.don_cuoi) }} {{ c.segment || 'New' }}
Chưa có khách hàng
🥧 Phân bố segment
Tổng KOC
{{ kocList.length }}
Đang liên hệ
{{ kocList.filter(k=>k.trang_thai==='Đang liên hệ').length }}
Đã post
{{ kocList.filter(k=>k.trang_thai==='Đã post').length }}
Tổng DS (đã post)
{{ fmt(kocList.filter(k=>k.trang_thai==='Đã post').reduce((s,k)=>s+(k.doanh_so||0),0)) }}
Tên KOCTikTok IDNgười bookSPHoa hồngTrạng tháiVideosViewsĐơnDS
{{ k.ten_koc }} {{ k.tiktok_id }} {{ k.nguoi_book }} {{ k.san_pham }} {{ k.hoa_hong }} {{ k.trang_thai }} {{ k.so_video }} {{ fmtNum(k.views) }} {{ k.so_don }} {{ fmt(k.doanh_so) }}
Chưa có KOC
➕ Thêm phiên live
ROI: {{ liveROI.toFixed(2) }}x (DS: {{ fmt(liveForm.doanh_so) }} / Ads: {{ fmt(liveForm.chi_phi_ads) }})
🏆 Ranking host
#HostTổng caTổng DSTB/caTỷ lệ hủy
{{ i+1 }} {{ h.host }} {{ h.tong_ca }} {{ fmt(h.tong_ds) }} {{ fmt(h.tb_ca) }} {{ h.ty_le_huy }}%
Chưa có dữ liệu
📋 Lịch sử live
NgàyCaHostGiờ BĐGiờ KTDoanh sốĐơnĐơn hủyAdsROI
{{ fmtDate(s.ngay) }} {{ s.ca }} {{ s.host }} {{ s.gio_bat_dau }} {{ s.gio_ket_thuc }} {{ fmt(s.doanh_so) }} {{ s.so_don }} {{ s.don_huy }} {{ fmt(s.chi_phi_ads) }} {{ s.chi_phi_ads > 0 ? (s.doanh_so/s.chi_phi_ads).toFixed(2)+'x' : '—' }}
Chưa có phiên live
👤 Quản lý host
{{ h.ten_host }}
Chưa có host
Tiến độ ngày {{ checklistDate }}
{{ filteredChecklistDone }}/{{ filteredChecklist.length }}
{{ item.noi_dung }}
{{ item.phong_ban }} 👤 {{ item.nguoi_phu_trach }} 📝 {{ item.ghi_chu }}
📋
Chưa có checklist cho ngày này
📊 Nhập doanh thu hàng ngày
Doanh số: {{ fmt(revenueForm.doanh_so) }}
Tổng chi phí: {{ fmt((revenueForm.chi_phi_ads||0)+(revenueForm.phi_san||0)) }}
Lãi ròng ước tính: {{ fmt(revenueCalcLai) }}
NgàySànDoanh sốĐơnĐơn hủyTỷ lệ hủyAdsPhí sànLãi ròng
{{ fmtDate(r.ngay) }} {{ r.san }} {{ fmt(r.doanh_so) }} {{ r.so_don }} {{ r.so_don_huy }} {{ r.so_don > 0 ? (r.so_don_huy/r.so_don*100).toFixed(1) : 0 }}% {{ fmt(r.chi_phi_ads) }} {{ fmt(r.phi_san) }} {{ fmt(r.lai_rong) }}
Chưa có báo cáo
Tổng ({{ filteredRevenue.length }} ngày) {{ fmt(filteredRevenue.reduce((s,r)=>s+(r.doanh_so||0),0)) }} {{ filteredRevenue.reduce((s,r)=>s+(r.so_don||0),0) }} {{ filteredRevenue.reduce((s,r)=>s+(r.so_don_huy||0),0) }} {{ fmt(filteredRevenue.reduce((s,r)=>s+(r.chi_phi_ads||0),0)) }} {{ fmt(filteredRevenue.reduce((s,r)=>s+(r.phi_san||0),0)) }} {{ fmt(filteredRevenue.reduce((s,r)=>s+(r.lai_rong||0),0)) }}