请教一个仓管系统的先进先出逻辑

来源:百度知道 编辑:UC知道 时间:2024/06/07 21:06:15
假设有5次入库,分别是
数量 单价
10 1.0
8 0.8
8 1.1
10 0.9
4 0.7
现在的设计只能体现库存量40和总金额37,
也就是说出库的时候只能按平均价来处理,

现在想改成先进先出,
就是说出库8个,金额是8,
再出库8个,金额就是6.8,
体现在先入库的东西先出库。

逻辑上应该怎么处理?然后数据库应该怎么设计?
--------------------------------
货品有很多种

数据库设计是关键,货品只有一种吗
====
数据库设计是关键,货品只有一种吗
---------
id - 货品名 - 数量 - 单价 - 时间 - tag - 剩余数量
tag代表是出库还是入库,入库为0,出库为1;
入库时插入一条记录,剩余数量等于数量,
出库时按货品名分组按时间排序取第一条记录,更新剩余数量(=原剩余数量-出库数量),
插入一条出库记录,剩余数量为0;
若第一条记录原剩余数量小于出库数量,且有下一条记录,则取出第二条记录。。。
靠,太复杂了

数据库里设置标志位来区分进的循序 其他逻辑用java处理