Split maintenance into host and battery types with separate forms

This commit is contained in:
xiaji
2026-05-18 11:34:15 +08:00
parent 82fcbaf22a
commit 7a02213046
15 changed files with 363 additions and 15 deletions

View File

@@ -90,6 +90,12 @@ class Battery(models.Model):
class MaintenanceRecord(models.Model):
MAINTENANCE_TYPE_CHOICES = [
('host', '主机维修'),
('battery', '电池维修'),
]
maintenance_type = models.CharField(max_length=20, choices=MAINTENANCE_TYPE_CHOICES, default='host', verbose_name='维修类型')
ups_host = models.ForeignKey(UPSHost, on_delete=models.CASCADE, verbose_name='UPS主机')
battery = models.ForeignKey(Battery, on_delete=models.SET_NULL, blank=True, null=True, verbose_name='电池')
supplier = models.ForeignKey(Supplier, on_delete=models.SET_NULL, blank=True, null=True, verbose_name='维保供应商')
@@ -99,7 +105,7 @@ class MaintenanceRecord(models.Model):
created_at = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
def __str__(self):
return f'{self.ups_host} - {self.maintenance_date}'
return f'{self.get_maintenance_type_display()} - {self.ups_host} - {self.maintenance_date}'
class Meta:
verbose_name = '维修记录'