diff --git a/src/backend/personnel/models.py b/src/backend/personnel/models.py index 7d0a1f9..82d4278 100644 --- a/src/backend/personnel/models.py +++ b/src/backend/personnel/models.py @@ -5,7 +5,7 @@ from finance.models import Department class ProjectGroup(models.Model): """项目组模型""" - name = models.CharField(max_length=100, unique=True, verbose_name="项目组名称") + name = models.CharField(max_length=100, verbose_name="项目组名称") department = models.ForeignKey(Department, on_delete=models.CASCADE, verbose_name="所属部门") description = models.TextField(blank=True, null=True, verbose_name="项目组描述") created_at = models.DateTimeField(auto_now_add=True, verbose_name="创建时间") @@ -30,7 +30,6 @@ class Personnel(models.Model): name = models.CharField(max_length=50, verbose_name="姓名") student_id = models.CharField( max_length=20, - unique=True, verbose_name="学号", validators=[RegexValidator( regex=r'^\d{8,12}$', diff --git a/src/backend/personnel/serializers.py b/src/backend/personnel/serializers.py index 2739195..32656fa 100644 --- a/src/backend/personnel/serializers.py +++ b/src/backend/personnel/serializers.py @@ -44,15 +44,6 @@ class PersonnelWriteSerializer(serializers.ModelSerializer): 'is_active', 'phone', 'qq', 'email', 'description' ] - def validate_student_id(self, value): - """验证学号唯一性""" - if self.instance and self.instance.student_id == value: - return value - - if Personnel.objects.filter(student_id=value).exists(): - raise serializers.ValidationError("该学号已存在") - return value - def validate_project_group(self, value): """验证项目组是否属于选定的部门""" if value and hasattr(self, 'initial_data'): diff --git a/src/fronted/src/views/FinanceDashboard.vue b/src/fronted/src/views/FinanceDashboard.vue index 01b4c93..a64f470 100644 --- a/src/fronted/src/views/FinanceDashboard.vue +++ b/src/fronted/src/views/FinanceDashboard.vue @@ -295,7 +295,7 @@ export default { ); // 构建详细信息 - let detailInfo = `
总计: ¥${value.toFixed(2)} @@ -328,7 +328,7 @@ export default { showClose: true, closeOnClickModal: true, closeOnPressEscape: true - }); + }).catch(() => { /* 关闭时不做操作,否则会炸 */ }); }); // 添加鼠标悬停时显示数据标签