25 lines
1014 B
Python
25 lines
1014 B
Python
from django.db.models.signals import post_save
|
|
from django.dispatch import receiver
|
|
|
|
from apps.inm.models import FIFODetail, Inventory, MaterialBatch
|
|
|
|
|
|
@receiver(post_save, sender=FIFODetail)
|
|
def create_user(sender, instance, created, **kwargs):
|
|
if created:
|
|
fifo = instance.fifo
|
|
material = instance.material
|
|
warehouse = fifo.warehouse
|
|
if fifo.type in [3]: # 采购入库
|
|
# 更新相关表
|
|
o1 = Inventory.objects.get_or_create(material=material, warehouse=warehouse, \
|
|
defaults={'material':material, 'warehouse':warehouse, 'count':0})
|
|
o1.count = o1.count + instance.count
|
|
o1.save()
|
|
o2 = MaterialBatch.objects.get_or_create(material=material, warehouse=warehouse, batch=instance.batch,\
|
|
defaults={'material':material, 'warehouse':warehouse, 'count':0, 'batch':instance.batch})
|
|
o2.save()
|
|
material.count = material.count + 1
|
|
material.save()
|
|
|