27 lines
		
	
	
		
			968 B
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			968 B
		
	
	
	
		
			Python
		
	
	
	
from apps.wpm.models import Mlog, WMaterial
 | 
						|
from django.db import transaction
 | 
						|
 | 
						|
 | 
						|
def correct_tuihuo_log():
 | 
						|
    """
 | 
						|
    矫正退火错误日志数据
 | 
						|
    """
 | 
						|
    mlogs = Mlog.objects.filter(mgroup__name='管料退火', count_use=0)
 | 
						|
    for mlog in mlogs:
 | 
						|
        try:
 | 
						|
            count_use = mlog.count_ok + mlog.count_notok
 | 
						|
            material_has = WMaterial.objects.get(
 | 
						|
                batch=mlog.batch, material=mlog.material_in, belong_dept=mlog.mgroup.belong_dept)
 | 
						|
            material_has.count = material_has.count - count_use
 | 
						|
            if material_has.count >= 0:
 | 
						|
                if material_has.count == 0:
 | 
						|
                    material_has.delete()
 | 
						|
                else:
 | 
						|
                    material_has.save()
 | 
						|
                mlog.count_real = count_use
 | 
						|
                mlog.count_use = count_use
 | 
						|
                mlog.save()
 | 
						|
                print(f'{mlog.id}-矫正成功')
 | 
						|
        except Exception as e:
 | 
						|
            print(f'{mlog.id}-矫正出错:{e}')
 |