20 lines
		
	
	
		
			742 B
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			742 B
		
	
	
	
		
			Python
		
	
	
	
| from tabnanny import check
 | |
| from apps.em.models import ECheckRecord, Equipment
 | |
| from dateutil.relativedelta import relativedelta
 | |
| from django.utils import timezone
 | |
| class EmService:
 | |
| 
 | |
|     @classmethod
 | |
|     def update_check_date(cls, equip:Equipment):
 | |
|         # 根据校准检定记录变更下次日期
 | |
|         check = ECheckRecord.objects.filter(equipment=equip).order_by('id').last()
 | |
|         if check:
 | |
|             equip.check_date = check.check_date
 | |
|             if equip.cycle:
 | |
|                 equip.next_check_date = equip.check_date + relativedelta(months=equip.cycle)
 | |
|             else:
 | |
|                 equip.next_check_date = None
 | |
|         else:
 | |
|             equip.check_date = None
 | |
|             equip.next_check_date = None
 | |
|         equip.save() |