fix: mlog confirm bug
This commit is contained in:
parent
21f53dd3ef
commit
53d2276998
|
|
@ -109,7 +109,7 @@ def mlog_confirm(mlog: Mlog):
|
||||||
生产日志创建后需要执行的操作
|
生产日志创建后需要执行的操作
|
||||||
"""
|
"""
|
||||||
mtask = mlog.mtask
|
mtask = mlog.mtask
|
||||||
belong_dept = mtask.belong_dept
|
belong_dept = mtask.mgroup.belong_dept
|
||||||
material_out = mtask.material_out
|
material_out = mtask.material_out
|
||||||
material_in = mtask.material_in
|
material_in = mtask.material_in
|
||||||
if material_in and material_in.is_hidden is False: # 需要进行车间库存管理
|
if material_in and material_in.is_hidden is False: # 需要进行车间库存管理
|
||||||
|
|
@ -136,17 +136,21 @@ def mlog_confirm(mlog: Mlog):
|
||||||
wmaterial.save()
|
wmaterial.save()
|
||||||
|
|
||||||
|
|
||||||
def update_mtask_count(mtask: Mtask):
|
def update_mtask(mtask: Mtask):
|
||||||
res = Mlog.objects.filter(mtask=mtask).aaggregate(sum_count_real=Sum(
|
res = Mlog.objects.filter(mtask=mtask).aggregate(sum_count_real=Sum(
|
||||||
'count_real'), sum_count_ok=Sum('count_ok'), sum_count_notok=Sum('count_notok'))
|
'count_real'), sum_count_ok=Sum('count_ok'), sum_count_notok=Sum('count_notok'))
|
||||||
mtask.count_real = res['sum_count_real'] if res['sum_count_real'] else 0
|
mtask.count_real = res['sum_count_real'] if res['sum_count_real'] else 0
|
||||||
mtask.count_ok = res['sum_count_ok'] if res['sum_count_ok'] else 0
|
mtask.count_ok = res['sum_count_ok'] if res['sum_count_ok'] else 0
|
||||||
mtask.count_notok = res['sum_count_notok'] if res['sum_count_notok'] else 0
|
mtask.count_notok = res['sum_count_notok'] if res['sum_count_notok'] else 0
|
||||||
mtask.save()
|
mtask.save()
|
||||||
if mtask.parent:
|
if mtask.parent:
|
||||||
res2 = Mtask.objects.filter(parent=mtask.parent).aaggregate(sum_count_real=Sum(
|
fmtask = mtask.parent
|
||||||
|
res2 = Mtask.objects.filter(parent=fmtask).aggregate(sum_count_real=Sum(
|
||||||
'count_real'), sum_count_ok=Sum('count_ok'), sum_count_notok=Sum('count_notok'))
|
'count_real'), sum_count_ok=Sum('count_ok'), sum_count_notok=Sum('count_notok'))
|
||||||
mtask.count_real = res2['sum_count_real'] if res2['sum_count_real'] else 0
|
fmtask.count_real = res2['sum_count_real'] if res2['sum_count_real'] else 0
|
||||||
mtask.count_ok = res2['sum_count_ok'] if res2['sum_count_ok'] else 0
|
fmtask.count_ok = res2['sum_count_ok'] if res2['sum_count_ok'] else 0
|
||||||
mtask.count_notok = res2['sum_count_notok'] if res2['sum_count_notok'] else 0
|
fmtask.count_notok = res2['sum_count_notok'] if res2['sum_count_notok'] else 0
|
||||||
mtask.save()
|
fmtask.save()
|
||||||
|
if Mtask.objects.filter(parent=fmtask).exclude(state=Mtask.MTASK_DONE).count() == 0:
|
||||||
|
fmtask.state = Mtask.MTASK_DONE
|
||||||
|
fmtask.save()
|
||||||
|
|
|
||||||
|
|
@ -103,7 +103,7 @@ class MlogViewSet(CustomModelViewSet):
|
||||||
|
|
||||||
生产日志
|
生产日志
|
||||||
"""
|
"""
|
||||||
perms_map = {'get': '', 'post': 'mlog.create', 'delete': 'mlog.delete'}
|
perms_map = {'get': '*', 'post': 'mlog.create', 'delete': 'mlog.delete'}
|
||||||
queryset = Mlog.objects.all()
|
queryset = Mlog.objects.all()
|
||||||
serializer_class = MlogSerializer
|
serializer_class = MlogSerializer
|
||||||
select_related_fields = ['create_by', 'update_by', 'mtask']
|
select_related_fields = ['create_by', 'update_by', 'mtask']
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue