生鲜零售 · App + 后台

生鲜到家 App:下单定时段、门店分拣与骑手配送、称重补差与缺货替换

南京易企达交付的生鲜到家App:顾客按品类下单、选配送时段,门店按单分拣、骑手按时段派送;称重商品按预估价下单、出库按实重补差,缺货先确认再替换,退款走原路。

承接方:南京易企达网络科技有限公司 交付形态:App + 后台 行业:生鲜零售
  • 3 个端顾客 App / 分拣端 / 运营后台
  • 6 块功能商品、下单、分拣配送、价格、会员、后台
  • 2 个价下单预估价与出库实价分开记
  • 按时段派单先凑齐一条配送线,再谈接单先后

项目速览:8 项关键事实

只列可核查的交付事实:项目定位、交付形态、覆盖范围、技术选型与归属口径。

项目名称
生鲜到家 App
客户与行业
某生鲜零售企业(按客户要求未公开名称),生鲜电商与同城配送
承接方
南京易企达网络科技有限公司(南京本地团队,可线下对接)
项目定位
顾客手机下单、门店按单分拣、骑手按时段送达;称重与缺货这两件麻烦事在系统里有明确处理路径
交付形态
顾客端 App(iOS / Android)+ 门店分拣端 + PC 运营后台
覆盖范围
商品与分区、下单与配送时段、分拣与派送、称重补差、缺货替换与退款、会员与优惠、运营报表
技术栈
前端 uni-app(Vue)编译 iOS / Android,服务端 Java(Spring Boot)+ MyBatis-Plus,数据 MySQL + Redis + 对象存储
交付与归属
源码、数据库脚本、部署文档与接口文档按合同随验收移交,管理员账号与著作权归客户

六块功能:系统到底做了什么

每一项都是客户实际在用的功能,不是模块清单。

  • 商品与分区

    按蔬菜、水果、肉禽、水产、粮油分区陈列,标清规格与产地。称重类商品显示「约 500g」,把「约」字放在最前面,别让顾客到收货时才知道有出入。

  • 下单与配送时段

    顾客选送货或自提,再选时段(如次日 9:00-11:00)。每个时段有容量上限,满了就置灰;截单时间到了自动停止接单,避免下了单却凑不齐一趟车。

  • 分拣与派送

    门店端按订单打印分拣单,按品类分区取货、逐项勾选。分拣完成后进入待派送,骑手按配送时段批量取单,一单送达即时回传签收。

  • 称重补差与退款

    下单时按预估价冻结金额,出库称重后按实重结算,差额自动补扣或退回,账单上明写「预估」与「实收」。顾客不必为了几毛钱找客服。

  • 缺货与替换

    分拣发现缺货,先推送替代方案给顾客确认,同意的替换、不同意的整项退款。默认不自动替换——送到家才发现换了东西,比缺货更让人不满。

  • 会员、优惠与报表

    会员价、满减、优惠券可叠加规则在后台配置,前台展示优惠后的到手价。报表按品类看销量、损耗与退款率,哪些品该下架有数据可依。

项目架构:谁在用,数据往哪走

先看入口与业务域,再看技术选型;只写结构与取舍,不写客户内部数据。

入口与角色

  • 顾客端 App:选品下单、选时段、看配送进度与账单
  • 门店分拣端:分拣单、称重录入、缺货上报
  • PC 运营后台:商品与价格、时段容量、派单、报表

业务域划分

  • 商品与价格:分区、规格、称重与会员价
  • 订单与履约:时段、截单、分拣、派送与签收
  • 结算与售后:预估与实收、补差、退款与替换
  • 库存与损耗:可售量、报损、品类损耗率
顾客端
uni-app(Vue)编译 iOS / Android,一套业务代码两端复用
门店端
同一套 H5,按角色进入分拣界面,平板即可用
服务端
Java(Spring Boot),按业务域分模块,对外 RESTful 接口
数据访问
MyBatis-Plus,下单与报表查询分开写,避免大促时拖慢前台
数据与存储
MySQL 存订单与商品,Redis 做时段库存与热点缓存,图片走对象存储
支付与通知
微信支付 / 支付宝,下单、分拣完成、派送中、已送达四个节点推送

这个项目做对了四件事

不是功能罗列,是当初的判断。

  • 1

    价格不玩模糊

    称重商品预估价与实收价分开列示,差额明细写在账单里。生鲜本来就有误差,把误差说清楚,比用「多退少不补」的话术更省客服。

  • 2

    缺货不再靠事后道歉

    缺货在分拣环节就推给顾客确认,同意替换或整项退款由顾客自己选。送达后再解释,损失的不只是这一单。

  • 3

    配送不是抢单比赛

    派单先按配送时段归堆,再看路线凑单。按订单先后逐单派,骑手会各自跑一趟,油钱和时间都耗在路上。

  • 4

    损耗能算到品类

    进货、销售、报损、退款四条线分开记,按品类看损耗率。哪个品一直在亏,账上看得到,不必凭感觉下架。

关键设计取舍

同样的需求,不同做法代价不同;这里写清楚为什么这样选。

  • 预估价与实收价分开记

    称重商品没法在下单时就确定金额。先把预估价冻结、出库按实重结算,两条金额都留在订单上,退款与对账才有依据;合成一个数,后面每笔差额都要人工解释。

  • 缺货由顾客确认,不自动替换

    自动替换看起来省事,实际是把麻烦推给收货那一刻。推送给顾客选,同意就换、不同意就退,一次沟通换掉一次投诉。

  • 配送时段先占容量,再谈派单

    每个时段能送多少单是运力决定的。时段不限量,订单就会堆在同一个时间窗,骑手跑不过来,最后受损的是口碑。

适用边界:什么情况适合做,什么情况先别做

判断标准写在这里,避免双方预期错位。

适合做

  • 有实体门店或前置仓,正在做线上订单与同城配送。
  • 商品以生鲜、称重类为主,价格与库存每天都在变。
  • 配送有明确时段,需要控制每个时段的接单量。
  • 希望把会员、优惠与复购沉淀在自己手里,而不是只挂在外卖平台。

先别做

  • 只有几十个 SKU 的标准品:用通用商城模板就够,不必为生鲜做定制。
  • 没有自己的分拣与配送能力:先解决履约,再谈自建 App。
  • 完全依赖第三方平台流量:自建 App 拉新成本很高,先算清账。
  • 单店日单量很低:人工电话接单更省钱,系统反而增加负担。

常见问题(7 条)

问答与页面结构化数据同源,答案口径两站一致。

称重商品的价格误差怎么处理?

下单按预估价冻结,出库称重后按实际重量结算:多了补扣、少了退回,差额在账单上单独列出。这样顾客下单时看到的是「约」多少,收货时看到的是「实收」多少,两者都有记录,不靠客服口头解释。

下单后发现有货没了怎么办?

分拣环节发现缺货会即时推送替代方案,由顾客在 App 里选同意替换或整项退款。系统不会默认自动替换,也不会等到送达才告知;退款按原支付渠道退回,通常当天到账。

配送时段是怎么定的?

按门店的实际运力设置每天的时段与每段容量,容量满了前台自动置灰。截单时间后不再接单,保证已接的订单能在承诺时段内送达。时段和容量都可以在后台按天调整。

能接外卖平台或第三方配送吗?

可以。订单来源可以扩展到第三方平台,配送也可以交给第三方运力,系统侧做统一接单与状态回传。需要对方开放接口,具体能接到什么程度要在项目开始前确认。

会员和优惠会不会算错?

优惠规则(会员价、满减、券)在后台配置,结算时按固定顺序计算并在订单上留下计算明细,出现争议可以逐项核对。规则越复杂越要限制叠加层数,否则顾客自己也看不懂为什么是这个价。

App 上架要我们自己做吗?

应用市场账号由客户主体注册并持有,我们协助准备上架材料、完成打包与提审。需要客户提供营业执照、隐私政策与相关资质;上架审核时间取决于各应用市场,通常几天到两周不等。

多少钱、要做多久?

本页不含报价。费用主要取决于商品规模、是否对接第三方平台与配送、以及是否要接入已有 ERP 或收银系统。一般分两期:先上商品、下单与配送主线,再补会员优惠与损耗报表。

也在做类似的系统?

先问业务,再出方案报价。南京本地可上门或到公司面谈,外地走线上 + 原型文档。