2.0
日货决策链

难的从来不是买和卖
在日本收二手东西再转手,麻烦的不是买,也不是卖,是中间那三十秒:一台相机摆在店里,标价 12000 円,你得当场决定这个价买不买。
判断这一下需要的东西其实很具体——这个型号最近成交都在什么价、说明书上写没写"能正常工作"、我以前收过没有、收过的那台后来卖了多少。这些信息都存在,只是过去散在三个地方。
三个工具,各管一环
- 日货雷达——盯着雅虎拍卖的成交与在售,替每个型号算出真实的价格带,遇到明显低于行情的就推到手机上
- 店铺决策——出门前排路线,进店后查这个型号的行情落点
- 销售记录——买回来记一笔,卖出去再记一笔,成本、实际到手、利润自己算清楚
三个工具不是一起做的,也不是为同一件事做的。做完很久之后才发现,它们首尾相接,正好是一整条链。
但用起来是三段
各自都能用,合起来却是三段割裂的动作。
在雅虎上看到一个价,得开第二个工具查这个型号该出多少;东西买回来,再开第三个记一笔账。想知道"这台我以前是不是收过、上次卖了多少",就得在三个界面之间来回翻——同一件东西在三个地方各有一份不完整的记录,谁也不认识谁。
站在店里的时候,这个来回是最要命的。
合成一个面板
2026 年 8 月,三个工具合进了同一个面板。
合的是界面,不是数据。 三份数据还留在各自原来的地方,面板只是同时读它们——没有复制、没有同步,也就不存在"两份数据对不上时该信哪份"这个问题。
商品
所有商品平铺在一页,顶上一栏切换雷达商品和自建商品,旁边是类目筛选。
雷达商品是雷达在盯的型号,每一行右边有一条价格带:实心那段是成交价的 25% 到 75% 区间,中间一道刻线是中位价,两端虚线是当场现算的分布尾部——它和实心段不是同一个口径,页面上专门注明了这一点。整张表共用一把对数刻度,所以一眼看得出哪些型号贵、哪些型号价格散。
成熟度分三档,判据直接写在页面上:基线可用是价格带在两倍以内且样本三十笔以上,样本偏少是价格带同样在两倍以内但只有十五到二十九笔,离散偏大是价格带超过两倍或样本不足。
自建商品是自己添加的东西——跟雷达无关,没有行情基线,那一栏换成买入价、卖出价和毛利,可以按持有中 / 已售出筛,也可以按毛利排序。
一个型号的详情
点进雷达商品,默认看到的是这个型号的档案:型号、品牌、类目、雅虎和咸鱼两边的检索词、验货要点。下面是参考买入价格,取当前口径基线的 25% 与 75% 分位,并标着数据截止到哪一天。
行情数据收在一个按钮里,要看再点开。展开后是按成色分的四档基线——全档、确认能动、未说明、标明有问题,每一档各有自己的价格带和样本数,样本不够的那档会明写"样本不足"而不是硬给一个数。再往下是历史基线、验货要点、近期成交清单,以及正在拍的在售命中与触发过的低价警报。
一件实物的详情
雷达商品是型号,自建商品是具体的一件东西。照片和三语文案挂在实物上,不挂在型号上——所以一个还没买过的型号点进去,会明说"先记一笔买入之后才能上传"。
实物的档案可以直接改:名称、编号、类目、备注。参考买入价格这里是自己填的一个数,只作为下次进货的参照。名下有交易的商品不能删,只能归档。
实物图片可以选文件上传,也可以直接拖进去。三语销售素材中文、日文、英文各自独立填写,保存时一起提交——面板不做任何自动翻译,这一点在界面上写明了。销售概念图与实物照片分开存放,用于挂在销售页面上。
最下面是这件东西名下的所有交易,可以接着"再记一笔"——同一件商品买卖好几轮,每一轮都是它名下的一笔。
交易
每一笔从建档到收尾的全过程。顶上四个数:手上还压着几件、占了多少钱、卖掉几件、一共赚了多少。
持有中的可以"填卖出结果"来收尾,已售出的可以"编辑并重算"——改动已经收尾的交易会影响历史统计,所以走的是另一条路径,页面上会明确提示。
销售分析
只统计已经完成的交易。还在手上没卖掉的那些,不进入任何数字,也不进入任何图表——这句话写在页面最上面。
六个数:累计完成、进行中、采购成本、实际到手、利润、总体利润率。下面是利润趋势图。
分类利润对比用的是成交时记下的分类快照,不是商品现在所属的分类——商品后来改了分类,历史成交仍算在原来那个分类名下。渠道占比按已完成交易的笔数计,含已停用的渠道,历史统计不受停用影响。
分类与渠道 / 店铺
分类与渠道分开管。这里有一处容易误会:销售记录的商品分类和雷达 SKU 的类目是两套东西,不在同一个地方改,也不会互相影响。所以某个分类显示 0 个商品,只是说还没有实物挂在它下面,与雷达那边有多少条 SKU 无关——这句话直接写在了页面上。
渠道只能停用不能删,因为历史交易挂在上面,删掉统计就断了。
店铺按路线分组:路线一、路线二、机动。每家带地址、一句现场笔记(哪家相机镜头货多、哪家入口常有低价 ジャンク 特卖、哪家游戏类偏贵),以及苹果地图和谷歌地图两个链接——出门那天在手机上直接点开导航。
几个刻意的选择
没有"建议出价"。 一开始想过让它算出一个该给的价,后来放弃了:平台手续费各不相同,在日本卖和运回国内卖的成本结构完全两样,汇率还天天变。更根本的是,毛利率其实不是决策变量——5% 但能赚一万,和 30% 只能赚一千,显然前者更值得做。所以面板只把行情摆出来。
商品页只做一层。 原来的销售记录是两层的:先点分类卡片,再进去看商品。合并的时候没照抄——现在一百来件商品,六个分类里还有两个是空的,为六张卡片多点一次,收益是负的。等真涨到几百件再改回两层。这是按当下规模选的形态,不是省了一层。
界面上不出现术语。 分位数直接写成"低 / 中 / 高",成熟度写成"基线可用 / 样本偏少 / 离散偏大",并且在旁边用一句白话把判据说清楚("价格带在两倍以内,且样本三十笔以上")。不是为了好看——在店里三十秒内要做判断,任何需要在脑子里翻译一下的东西都是障碍。
怎么跑起来的
面板跑在家里的 Mac mini 上,经 Cloudflare Tunnel 出去。店里掏手机打开的是一个公网域名,请求最后落回家里那台机器。
三份数据都在本机的 SQLite 里,面板一份都没复制。其中销售记录那个库是纯本机自用的,从来没做过鉴权——所以面板对它的每一次读写都从后端转一手,它那个端口一步没出过本机。
门是自己写的:输一次口令,Cookie 管半年。用现成的企业级登录会更规范,但那个每次过期都要等一封邮箱验证码——站在店里、手上拿着一台相机、店员在旁边看着,那半分钟等不起。
前端没有框架、没有 CDN、没有网络字体,数据一次全部下发、筛选在本地做。在店里网络不稳的时候,这个选择比任何优化都管用。