超市订单管理系统(SMBMS):进货管理

目录

前言

一、需求分析

1、需求及ER图

2、数据库设计

进货信息表

进货明细表

二、业务分析

业务流程图

拓展功能

三、开发与编程

1、进货Been

 2、进货明细Been


前言

进货管理是超市管理系统的中重要一环。与此前开发的商品管理(含库存管理系统)和销售管理系统,完整地实现了整个超市进销存的运营管理。

传统的进货管理系统,仅仅是为了增加了商品库存。而现在的进货管理系统,则要结合多个管理系统,来实现更加完善的超市运营管理。

  1. 结合商品管理系统和销售管理系统。对商品库存采用先进先出的管理办法,即最先入库(进货)的商品应最先出库(销售)。
  2. 结合供应商管理系统。与供应商的系统对接,实现自动报缺和自动入库的功能。
  3. 结合门店(仓库)管理系统。对于多家门店而言,需要考虑各个门店之间商品平调的功能。对于多个仓库的门店而言,同样考虑各个仓库之间商品平调的功能。对于拥有多家门店且多家仓库的情况,则还需考虑门店与仓库之间商品平调的功能。
  4. 结合财务管理系统。财务管理系统要依据进货时的进价计算利润。

一、需求分析

进货管理系统也是SMBMS中很重要的环节。

1、需求及ER图

需求表述如下:

  1. 每条进货信息都含有:批次号、进货日期、状态、总数量及总金额等信息。
  2. 每条进货信息都应对应多条商品信息,同时同样的商品信息亦能成为多条进货信息里的明细。

 

2、数据库设计

  • 进货信息表

--创建进货信息表
create table 进货信息表
(
编号        VARCHAR2(16) primary key,
进货日期  Timestamp,
状态    number default 0,--0-未完成,1-已完成
总金额       NUMBER(10,2),
总数量     NUMBER default 0
);
  • 进货明细表

-- 创建进货明细表
create table 进货明细
(
  编号                  NUMBER primary key,
  进价        NUMBER(10,2),
  数量            NUMBER default 0,
  商品编码                NUMBER,
  进货批次号         VARCHAR2(16)
);

二、业务分析

进货管理系统的最要功能是进货记录的增删改查,同时修改商品信息中相应商品的库存。

  • 业务流程图

  • 拓展功能

        进货系统开发完成后,结合销售系统,可以拓展开发以下几个新功能:

  1. 缺货管理:可以设置一个默认的缺货提醒值,如0。当商品销售出去后,库存减少为0时,发出缺货警告;当商品再次进货后,库存增加,则取消缺货警告。
  2. 计算每笔订单利润:生成订单明细时,通过零售价与进货价相减,即可计算出每个订单明细的利润。将这些利润进行汇总,生成每日利润报表,月度利润报表以及年度利润报表。
  3. 按照先进先出的原则来管理库存:先进货(日期最早和批次号最靠前的)的商品,应最先销售出去。当一个批次号的商品全部销售出去后,才能销售下一个批次号的商品;并且获取该批次号的进货价来计算利润。

三、开发与编程

1、进货Been

import java.sql.Timestamp;

public class 进货{
	
	private String 批次号;
	private Timestamp 入库时间;
	private Integer 状态;
	private Double 总数量;
	private Double 总金额;
	
	public 进货() {
		super();
	}

	public 进货(String 批次号, Timestamp 入库时间, Integer 状态, Double 总数量, Double 总金额) {
		super();
		this.批次号 = 批次号;
		this.入库时间 = 入库时间;
		this.状态 = 状态;
		this.总数量 = 总数量;
		this.总金额 = 总金额;
	}

	public String get批次号() {
		return 批次号;
	}

	public void set批次号(String 批次号) {
		this.批次号 = 批次号;
	}

	public Timestamp get入库时间() {
		return 入库时间;
	}

	public void set入库时间(Timestamp 入库时间) {
		this.入库时间 = 入库时间;
	}

	public Integer get状态() {
		return 状态;
	}

	public void set状态(Integer 状态) {
		this.状态 = 状态;
	}

	public Double get总数量() {
		return 总数量;
	}

	public void set总数量(Double 总数量) {
		this.总数量 = 总数量;
	}

	public Double get总金额() {
		return 总金额;
	}

	public void set总金额(Double 总金额) {
		this.总金额 = 总金额;
	}
	
}

 2、进货明细Been

import java.sql.Timestamp;

public class 进货明细{
	
	private Integer 序号;
	private String 备注;
	private Integer 是否删除;
	private String 条形码;
	private String 商品名称;
	private Double 进价;
	private Integer 数量;
	private Integer 商品编号;
	private String 进货单号;
	
}

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值