feat: 数据库

This commit is contained in:
Czw996 2021-11-07 23:09:54 +08:00
parent 06768121fa
commit 631ecf1a1e
5 changed files with 59 additions and 10 deletions

View file

@ -29,7 +29,7 @@ class PurchaseGoods(Model):
related_name='purchase_goods_set', verbose_name='采购单据')
goods = ForeignKey('goods.Goods', on_delete=PROTECT, related_name='purchase_goods_set', verbose_name='商品')
purchase_quantity = FloatField(verbose_name='采购数量')
purchase_unit_price = AmountField(verbose_name='采购单价')
purchase_price = AmountField(verbose_name='采购单价')
total_amount = AmountField(verbose_name='总金额')
return_quantity = FloatField(default=0, verbose_name='退货数量')
is_void = BooleanField(default=False, verbose_name='作废状态')
@ -69,7 +69,7 @@ class PurchaseReturnGodos(Model):
related_name='purchase_return_goods_set', verbose_name='采购退货单据')
goods = ForeignKey('goods.Goods', on_delete=PROTECT, related_name='purchase_return_goods_set', verbose_name='商品')
return_quantity = FloatField(verbose_name='退货数量')
return_unit_price = AmountField(verbose_name='退货单价')
return_price = AmountField(verbose_name='退货单价')
total_amount = AmountField(verbose_name='总金额')
is_void = BooleanField(default=False, verbose_name='作废状态')
team = ForeignKey('system.Team', on_delete=CASCADE, related_name='purchase_return_goods_set')

View file

@ -30,7 +30,7 @@ class SalesGoods(Model):
related_name='sales_goods_set', verbose_name='销售单据')
goods = ForeignKey('goods.Goods', on_delete=PROTECT, related_name='sales_goods_set', verbose_name='商品')
sales_quantity = FloatField(verbose_name='销售数量')
sales_unit_price = AmountField(verbose_name='销售单价')
sales_price = AmountField(verbose_name='销售单价')
total_amount = AmountField(verbose_name='总金额')
return_quantity = FloatField(default=0, verbose_name='退货数量')
is_void = BooleanField(default=False, verbose_name='作废状态')
@ -70,7 +70,7 @@ class SalesReturnGoods(Model):
related_name='sales_return_goods_set', verbose_name='销售退货单据')
goods = ForeignKey('goods.Goods', on_delete=PROTECT, related_name='sales_return_goods_set', verbose_name='商品')
return_quantity = FloatField(verbose_name='退货数量')
return_unit_price = AmountField(verbose_name='退货单价')
return_price = AmountField(verbose_name='退货单价')
total_amount = AmountField(verbose_name='总金额')
is_void = BooleanField(default=False, verbose_name='作废状态')
team = ForeignKey('system.Team', on_delete=CASCADE, related_name='sales_return_goods_set')

View file

@ -1,13 +1,62 @@
from extensions.models import *
class stock_check_order(Model):
class StockCheckOrder(Model):
"""盘点单据"""
class Status(TextChoices):
"""盘点状态"""
class stock_check_goods(Model):
SURPLUS = ('surplus', '盘盈')
LOSS = ('loss', '盘亏')
UNCHANGED = ('unchanged', '无变化')
number = CharField(max_length=32, verbose_name='编号')
warehouse = ForeignKey('data.Warehouse', on_delete=PROTECT, related_name='stock_check_orders', verbose_name='仓库')
handler = ForeignKey('system.User', on_delete=PROTECT, related_name='stock_check_orders', verbose_name='经手人')
handle_time = DateTimeField(verbose_name='处理时间')
remark = CharField(max_length=256, null=True, blank=True, verbose_name='备注')
status = CharField(max_length=32, choices=Status.choices, null=True, verbose_name='盘点状态')
total_book_quantity = FloatField(verbose_name='账面总数量')
total_actual_quantity = FloatField(verbose_name='实际总数量')
total_surplus_quantity = AmountField(verbose_name='盘盈总金额')
is_void = BooleanField(default=False, verbose_name='作废状态')
creator = ForeignKey('system.User', on_delete=PROTECT,
related_name='created_stock_check_orders', verbose_name='创建人')
create_time = DateTimeField(auto_now_add=True, verbose_name='创建时间')
team = ForeignKey('system.Team', on_delete=CASCADE, related_name='stock_check_orders')
class Meta:
unique_together = [('number', 'team')]
class StockCheckGoods(Model):
"""盘点商品"""
class Status(TextChoices):
"""盘点状态"""
SURPLUS = ('surplus', '盘盈')
LOSS = ('loss', '盘亏')
UNCHANGED = ('unchanged', '无变化')
stock_check_order = ForeignKey('stock_check.StockCheckOrder', on_delete=CASCADE,
related_name='stock_check_goods_set', verbose_name='盘点单据')
goods = ForeignKey('goods.Goods', on_delete=PROTECT, related_name='stock_check_goods_set', verbose_name='商品')
batch = ForeignKey('goods.Batch', on_delete=SET_NULL, null=True,
related_name='', verbose_name='批次')
book_quantity = FloatField(verbose_name='账面数量')
actual_quantity = FloatField(verbose_name='实际数量')
status = CharField(max_length=32, choices=Status.choices, verbose_name='盘点状态')
surplus_quantity = FloatField(verbose_name='盘盈数量')
purchase_price = AmountField(verbose_name='采购单价')
surplus_amount = AmountField(verbose_name='盘盈金额')
is_void = BooleanField(default=False, verbose_name='作废状态')
team = ForeignKey('system.Team', on_delete=CASCADE, related_name='stock_check_goods_set')
class Meta:
unique_together = [('stock_check_order', 'goods', 'batch')]
__all__ = [

View file

@ -18,7 +18,7 @@ class StockInOrder(Model):
sales_return_order = OneToOneField('sales.SalesReturnOrder', on_delete=CASCADE, null=True,
related_name='stock_in_order', verbose_name='销售退货单据')
total_quantity = FloatField(verbose_name='入库总数')
stock_in_quantity = FloatField(default=0, verbose_name='入库数量')
remain_quantity = FloatField(default=0, verbose_name='入库剩余数量')
is_completed = BooleanField(default=False, verbose_name='完成状态')
is_void = BooleanField(default=False, verbose_name='作废状态')
creator = ForeignKey('system.User', on_delete=PROTECT,
@ -37,7 +37,7 @@ class StockInGoods(Model):
related_name='stock_in_goods_set', verbose_name='入库单据')
goods = ForeignKey('goods.Goods', on_delete=PROTECT, related_name='stock_in_goods_set', verbose_name='商品')
total_quantity = FloatField(verbose_name='入库总数')
stock_in_quantity = FloatField(default=0, verbose_name='入库数量')
remain_quantity = FloatField(default=0, verbose_name='入库剩余数量')
is_completed = BooleanField(default=False, verbose_name='完成状态')
is_void = BooleanField(default=False, verbose_name='作废状态')
team = ForeignKey('system.Team', on_delete=CASCADE, related_name='stock_in_goods_set')

View file

@ -18,7 +18,7 @@ class StockOutOrder(Model):
purchase_return_order = OneToOneField('purchase.PurchaseReturnOrder', on_delete=CASCADE, null=True,
related_name='stock_out_order', verbose_name='采购退货单据')
total_quantity = FloatField(verbose_name='出库总数')
stock_out_quantity = FloatField(default=0, verbose_name='出库数量')
remain_quantity = FloatField(default=0, verbose_name='出库剩余数量')
is_completed = BooleanField(default=False, verbose_name='完成状态')
is_void = BooleanField(default=False, verbose_name='作废状态')
creator = ForeignKey('system.User', on_delete=PROTECT,
@ -37,7 +37,7 @@ class StockOutGoods(Model):
related_name='stock_out_goods_set', verbose_name='出库单据')
goods = ForeignKey('goods.Goods', on_delete=PROTECT, related_name='stock_out_goods_set', verbose_name='商品')
total_quantity = FloatField(verbose_name='出库总数')
stock_out_quantity = FloatField(default=0, verbose_name='出库数量')
remain_quantity = FloatField(default=0, verbose_name='出库剩余数量')
is_completed = BooleanField(default=False, verbose_name='完成状态')
is_void = BooleanField(default=False, verbose_name='作废状态')
team = ForeignKey('system.Team', on_delete=CASCADE, related_name='stock_out_goods_set')