Java生鲜电商平台-生鲜电商中采购订单与库存解决…

2020-05-26 16:06:18来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

Java生鲜电商平台-生鲜电商中采购订单与库存解决方案(小程序/APP)

Java生鲜电商平台-生鲜电商中采购订单与库存解决方案(小程序/APP)

 

说明:本系统针对的是生鲜小程序中的采购订单来进行讲解,我们知道现在很多生鲜电商,比如:每日优鲜,叮咚买菜等等,都是承诺29分钟必答的一种高效配送时间。

 

这个不是我在这篇文章讨论的重点,我今天来讨论采购订单与库存的解决方案。

 

本文需要解决以下两个问题:

1. 采购订单与普通订单的关系。

2. 库存如何做呢?

3. 系统数据库如何设计?

4. 代码与架构如何编写呢?

5. 复盘与总结.

1. 采购订单与普通订单的关联与处理。

 

    说明:  由于生鲜电商采用的是今天下单明天送的一种模式,那么这里面就会涉及到采购的问题,通过客户下的业务订单,我们系统进行业务汇总,最后生成采购订单,通过采购订

单的确认,最终入库到仓库,每一步都需要进行人工的审核与处理,保证整个业务的流程的完整与高效性质.

 

2.   库存如何做呢?

    说明:由于天气炎热,很多东西是不能存放的,尤其是蔬菜类,需要按需采购,但是米面粮油方面的,这些我们称为标品的生鲜食材,那么就需要有库存管理,

不可能,你一次采购酱油就买几瓶吧,都是几批箱子进行采购的。然后按照库存的管理条例,进行相应的存储,有些冻品需要相应的冷链来完成。

 

3. 系统数据库如何设计? 

 

采购人员基本信息

CREATE TABLE `purchase` (
  `purchase_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '自动增加ID',
  `purchase_name` varchar(20) DEFAULT NULL COMMENT '采购员名称',
  `purchase_password` varchar(50) DEFAULT NULL COMMENT '采购人员密码',
  `purchase_phone` varchar(255) DEFAULT NULL COMMENT '采购员手机号码',
  `purchase_status` tinyint(4) DEFAULT '1' COMMENT '状态,1为可用,0为禁用,-1为删除,默认为1',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  PRIMARY KEY (`purchase_id`)
) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 COMMENT='采购人员基础信息表';

 

    采购订单

CREATE TABLE `purchase_order` (
  `purchase_order_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '自动增加ID',
  `purchase_order_sn` varchar(255) DEFAULT NULL COMMENT '采购订单号',
  `purchase_type` tinyint(4) DEFAULT '0' COMMENT '采购类型,0为市场自采,1为供应商直供',
  `purchase_user_id` int(11) DEFAULT NULL COMMENT '采购人员ID',
  `purchase_user_name` varchar(255) DEFAULT NULL COMMENT '采购人员',
  `purchase_status` tinyint(4) DEFAULT '0' COMMENT '采购状态,0为未采购,1为已采购',
  `storehouse_id` int(11) DEFAULT NULL COMMENT '仓库ID',
  `purchase_source` tinyint(11) DEFAULT NULL COMMENT '单据来源 0 自动生成采购单  1手动创建采购单',
  `purchase_time` datetime DEFAULT NULL COMMENT '采购时间',
  `plan_delivery_time` datetime DEFAULT NULL COMMENT '计划交货日期',
  `purchase_remarks` varchar(255) DEFAULT NULL COMMENT '采购的备注',
  `create_time` datetime DEFAULT NULL COMMENT '记录创建时间',
  `deleted` tinyint(4) DEFAULT '0' COMMENT '删除状态,0为未删除,1为已经删除',
  PRIMARY KEY (`purchase_order_id`)
) ENGINE=InnoDB AUTO_INCREMENT=80 DEFAULT CHARSET=utf8mb4 COMMENT='采购订单信息表';

 

采购订单明细   

CREATE TABLE `purchase_order_item` (
  `id` bigint(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '自动增加ID',
  `purchase_order_id` bigint(20) unsigned DEFAULT NULL COMMENT '采购主表',
  `goods_id` int(11) DEFAULT NULL COMMENT '商品ID',
  `goods_name` varchar(255) DEFAULT NULL COMMENT '商品名称',
  `goods_unit` varchar(20) DEFAULT NULL COMMENT '商品单位',
  `goods_number` varchar(255) DEFAULT NULL COMMENT '商品的数量',
  `purchase_goods_price` decimal(12,2) DEFAULT NULL COMMENT '采购商品价格',
  `purchase_goods_amount` decimal(12,2) DEFAULT NULL COMMENT '采购金额',
  `purchase_number` int(11) DEFAULT NULL COMMENT '采购数量',
  `purchase_goods_status` tinyint(4) DEFAULT NULL COMMENT '采购明细状态,0为未采购,1为已采购',
  `create_time` datetime DEFAULT NULL COMMENT '采购时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1181289 DEFAULT CHARSET=utf8mb4 COMMENT='采购明细';

 

4. 代码与架构如何编写呢?

    说明:采购可以单独出来一个微服务,由于生鲜电商可能会设计到多个模块的分割,根据我自己的经验,我建议采购单独作为一个服务进行处理,方便业务的扩展。

5. 复盘与总结.

   

  总结:做互联网应用,无论是生鲜小程序还是APP,目的是为了留住与激活用户,形成用户购买力,提高满意度,最终达成交易的,当然本文只是抛砖引玉,希望本文可以给大家一点思考与建议。

 

 QQ:137071249

共同学习QQ群:793305035

 

 


原文链接:https://www.cnblogs.com/jurendage/p/12968877.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:面试:源码看过没?答:看过一点!好的,下一位

下一篇:位运算符