models.py 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. from django.db import models
  2. class InboundBill(models.Model):
  3. BOUND_TYPE = (
  4. (1, '订单'),
  5. (2, '其他'),
  6. )
  7. billId = models.IntegerField(primary_key=True,verbose_name='原始单据ID')
  8. number = models.CharField(max_length=50, unique=True, verbose_name='单据编号')
  9. type = models.IntegerField(choices=BOUND_TYPE, verbose_name='绑定类型')
  10. date = models.CharField(max_length=10, verbose_name='入库时间')
  11. department = models.CharField(max_length=10, verbose_name='部门', null=True)
  12. warehouse = models.CharField(max_length=10, verbose_name='仓库', default='W01') # 修正 defaults 为 default
  13. creater = models.CharField(max_length=50, verbose_name='创建人', null=True)
  14. note = models.TextField(blank=True, verbose_name='备注说明', null=True)
  15. totalCount = models.IntegerField(verbose_name='总条目数')
  16. create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
  17. update_time = models.DateTimeField(auto_now=True, verbose_name='更新时间')
  18. is_delete = models.BooleanField(default=False, verbose_name='是否删除')
  19. class Meta:
  20. verbose_name = '生产入库单'
  21. verbose_name_plural = verbose_name
  22. class MaterialDetail(models.Model):
  23. """物料明细模型"""
  24. bound_billId = models.ForeignKey(
  25. InboundBill,
  26. on_delete=models.CASCADE,
  27. related_name='bill_id',
  28. verbose_name='所属入库单'
  29. )
  30. entryIds = models.IntegerField(verbose_name='分录ID')
  31. production_batch = models.CharField(max_length=50, verbose_name='生产批次')
  32. goods_code = models.CharField(max_length=20, verbose_name='商品编码')
  33. goods_name = models.CharField(max_length=100, verbose_name='商品名称')
  34. goods_std = models.CharField(max_length=50, verbose_name='商品规格')
  35. goods_weight = models.DecimalField(max_digits=10, decimal_places=2, verbose_name='单件重量', default=1)
  36. plan_qty = models.IntegerField(verbose_name='计划数量')
  37. goods_total_weight = models.DecimalField(max_digits=10, decimal_places=2, verbose_name='总重量', null=True)
  38. goods_unit = models.CharField(max_length=20, verbose_name='计量单位')
  39. note = models.TextField(blank=True, verbose_name='备注')
  40. create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
  41. update_time = models.DateTimeField(auto_now=True, verbose_name='更新时间')
  42. is_delete = models.BooleanField(default=False, verbose_name='是否删除')
  43. class Meta:
  44. verbose_name = '物料明细'
  45. verbose_name_plural = verbose_name
  46. unique_together = [('bound_billId', 'entryIds')]