存在工单不可报废

This commit is contained in:
caoqianming 2022-02-25 15:32:00 +08:00
parent 07dc9e3d9e
commit 0910825ad5
4 changed files with 15 additions and 9 deletions

View File

@ -1,7 +1,8 @@
from __future__ import absolute_import, unicode_literals
from rest_framework.response import Response
from celery import shared_task
import os
import subprocess
@shared_task
@ -9,15 +10,13 @@ def backup_database():
"""
备份数据库
"""
import os
ret = os.popen('sudo pg_dump -U postgres -d hberp -f /home/lighthouse/hberp_backup.sql')
return Response()
@shared_task
def reload_server():
import os # 更新后端
os.chdir('/home/lighthouse/hberp')
ret = os.popen('sudo git pull && sudo service supervisor reload')
ret = subprocess.run('sudo git pull && sudo service supervisor reload')
return Response(ret.read())

View File

@ -192,6 +192,8 @@ class FIFOInPurSerializer(serializers.ModelSerializer):
def create(self, validated_data):
pu_order = validated_data['pu_order']
if pu_order.is_audited:
raise ValidationError('该采购订单未审核')
validated_data['vendor'] = pu_order.vendor
validated_data['number'] = 'RK' + ranstr(7)
validated_data['type'] = FIFO.FIFO_TYPE_PUR_IN

View File

@ -17,15 +17,18 @@ class InmService:
for i in FIFOItem.objects.filter(fifo=instance):
material = i.material
warehouse = i.warehouse
o1, _ = Inventory.objects.get_or_create(material=material, warehouse=warehouse, \
defaults={'material':material, 'warehouse':warehouse, 'count':0})
o1.count = o1.count + i.count
o1.save()
o2, _ = MaterialBatch.objects.get_or_create(material=material, warehouse=warehouse, batch=i.batch,\
defaults={'material':material, 'warehouse':warehouse, 'count':0, 'batch':i.batch})
o2.count = o2.count + i.count
o2.save()
material.count = material.count + i.count
iv = Inventory.objects.get_or_create(material=material, warehouse=warehouse, \
defaults={'material':material, 'warehouse':warehouse, 'count':0})
iv.count = MaterialBatch.objects.filter(material=material, warehouse=warehouse).count()
iv.save()
material.count = MaterialBatch.objects.filter(material=material).count()
material.save()
# 创建IProduct

View File

@ -352,6 +352,8 @@ class WProductViewSet(ListModelMixin, RetrieveModelMixin, GenericViewSet):
serializer = ScrapSerializer(data=request.data)
serializer.is_valid(raise_exception=True)
vdata = serializer.validated_data
if obj.ticket is not None:
raise exceptions.APIException('该产品存在进行工单')
if obj.act_state == WProduct.WPR_ACT_STATE_NOTOK:
pass
elif obj.step.process.id == 1 and \