老板临时要复购率,Tigshop开源商城系统后台统计接口先顶上

简介: 为快速响应老板对30日复购率的需求,在Tigshop后台紧急开发轻量接口:基于“已支付、剔除取消”口径,精准统计复购用户占比,并在Admin Dashboard嵌入含明细(总下单用户/复购用户/率)的卡片。权限隔离、缓存优化、支持CSV导出,兼顾准确、可追溯与交付速度。(239字)

老板要 30 日复购率。BI 还在采购流程里转圈。我先在 Tigshop开源商城系统后台丢了个接口加卡片。活先活下来。不是重做数据分析平台,是 Admin 顶一个统计口径明确的接口。

口径写脚注

已支付。剔取消。复购 = 周期内下过 ≥2 单的用户 / 下过单的用户。不写脚注,下周他换个算法找你麻烦。找麻烦的时候,他不会承认是口径变了。他会说你算错了。

能直接粘的接口

<?php
namespace app\adminapi\controller\report;

class Repurchase
{
   
    public function rate30d()
    {
   
        $end = time();
        $start = $end - 30 * 86400;
        $buyers = Order::where('pay_status', 1)
            ->whereBetween('pay_time', [$start, $end])
            ->column('user_id');
        $total = count(array_unique($buyers));
        $repurchase = 0;
        if ($total > 0) {
   
            $counts = array_count_values($buyers);
            $repurchase = count(array_filter($counts, fn($c) => $c >= 2));
        }
        $rate = $total ? round($repurchase / $total * 100, 2) : 0;
        return json([
            'total_buyers' => $total,
            'repurchase_buyers' => $repurchase,
            'rate' => $rate,
            'note' => '已支付口径,30日',
        ]);
    }
}

Admin 卡片

Dashboard 加一块:复购率、下单用户数、复购用户数。别只放一个百分比。百分比一个人一个算法,明细摆那儿,嘴少很多。

权限

报表角色。别全员看见。有些数,不是人人都该看。

性能

量大再预聚合。别一上来全表扫,看板一打开转圈,老板以为你在糊弄。先顶接口,慢了再加缓存或定时汇总表。

导出明细

老板追问「谁复购了」,接口加 CSV 导出 user_id 列表。能导出,争论少一半。争论少了,你日子好过。

别和 BI 抢活

这个接口是临时的。BI 上了可以关。关之前口径写文档。下个人接手知道 30 日是怎么算的。不知道就算法变成玄学。玄学老板最爱问。最爱问还最答不上来。

缓存策略

数据 T+1 也行。Dashboard 不需要秒级。Cache::set('report:repurchase:30d', $data, 3600) 一小时刷新。老板刷新看板,快就行。快比准晚一小时强。强在不会被骂「打不开」。复购率这种数,老板要的是趋势和口径,不是毫秒级实时。别过度工程。过度工程周会前交不出来。

相关文章
人工智能 编解码 自然语言处理
56 1
人工智能
26 1
人工智能 缓存 物联网
32 1
缓存 前端开发
23 0
|
9天前
|
NoSQL 前端开发 Redis
礼盒两件起售怎么拦?Tigshop开源商城我补了个min_buy
本方案为礼盒商品新增「起购数量」(min_buy)字段,与限购(limit_number)解耦:前者控制下限(如2件起购),后者控制上限。前后端双重校验,支持待付款占用、关单释放,管理后台可配,默认0不限。避免误用秒杀方案,轻量可靠。
|
16天前
|
JSON 前端开发 API
Tigshop开源商城 分销中心:源码只留了 salesman 表,C 端接口我给补全(附代码
tigshop开源版虽预留分销数据模型(Salesman等),但C端接口缺失。本文基于现有model快速补全一级返佣与“我的分销中心”功能:新增Service聚合数据、Controller提供API、路由注册及支付回调自动记佣,前端Uniapp对接展示,零建表、轻量落地。(239字)
|
1月前
|
运维 安全 Java
为什么不建议从零开发商城?集体放弃自研,转向开源二开的核心原因
电商技术选型核心在于规避隐性成本:自研商城看似自由,实则长期维护、迭代、安全投入巨大;成熟开源系统可省60%无效开发。本文对比VortMall(高并发多业态)、TigShop(全开源Java/低二开成本)、Jinor(PHP轻量快启)等5大主流方案,聚焦架构弹性、源码透明、生态持续与场景匹配,助企业精准降本增效。
174 0
为什么不建议从零开发商城?集体放弃自研,转向开源二开的核心原因
|
17天前
|
前端开发 机器人 API
用户反馈想升级成工单,Tigshop开源商城轻量改法
该方案针对商城反馈“石沉大海”问题,发现标品已具备状态管理与站内通知能力,仅缺运营触达与用户进度可见性。通过异步推送消息至企微/钉钉群、前端透出反馈状态,低成本解决专业感缺失问题,避免过早引入复杂工单系统。(239字)
|
1月前
|
SQL 安全 Java
MyBatis Plus 封神玩法:这12个操作让开发效率直接起飞!
本文以外婆羊肉汤为喻,生动诠释MyBatis-Plus的12个核心优化技巧:避免isNull、精准select、批量操作、善用exists、安全排序、Lambda类型安全、between替代ge/le、索引友好排序、规范分页、空值条件优雅处理,并涵盖性能追踪、枚举映射等高级实践,助你写出高效、安全、可维护的ORM代码。
285 0
人工智能 缓存 前端开发
5278 9