user phone 去除
This commit is contained in:
parent
074196422a
commit
1e81f38343
|
@ -1,11 +1,8 @@
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.contrib.auth.models import AbstractUser
|
|
||||||
from django.db.models.base import Model
|
|
||||||
import django.utils.timezone as timezone
|
|
||||||
from django.db.models.query import QuerySet
|
from django.db.models.query import QuerySet
|
||||||
from apps.system.models import CommonADModel, CommonAModel, CommonBModel, Organization, User, Dict, File,Position
|
from apps.system.models import User
|
||||||
from utils.model import SoftModel, BaseModel
|
|
||||||
from simple_history.models import HistoricalRecords
|
from apps.utils.models import CommonADModel, CommonAModel
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -14,14 +11,19 @@ class Employee(CommonAModel):
|
||||||
"""
|
"""
|
||||||
员工信息
|
员工信息
|
||||||
"""
|
"""
|
||||||
JOB_ON = 1
|
JOB_ON = 10
|
||||||
JOB_OFF = 2
|
JOB_OFF = 20
|
||||||
jobstate_choices = (
|
jobstate_choices = (
|
||||||
(JOB_ON, '在职'),
|
(JOB_ON, '在职'),
|
||||||
(JOB_OFF, '离职'),
|
(JOB_OFF, '离职'),
|
||||||
)
|
)
|
||||||
user = models.OneToOneField(User, on_delete=models.CASCADE, related_name='employee_user')
|
user = models.OneToOneField(User,
|
||||||
number = models.CharField('人员编号', max_length=50,null=True, blank=True, unique=True)
|
verbose_name='系统账号',
|
||||||
|
on_delete=models.PROTECT, related_name='employee_user', null=True, blank=True)
|
||||||
|
name = models.CharField('姓名', max_length=20)
|
||||||
|
phone = models.CharField('手机号', max_length=11, null=True, blank=True)
|
||||||
|
email = models.EmailField('邮箱号', null=True, blank=True)
|
||||||
|
number = models.CharField('人员编号', max_length=50, null=True, blank=True)
|
||||||
photo = models.CharField('证件照', max_length=1000, null=True, blank=True)
|
photo = models.CharField('证件照', max_length=1000, null=True, blank=True)
|
||||||
id_number = models.CharField('身份证号', max_length=100, null=True, blank=True)
|
id_number = models.CharField('身份证号', max_length=100, null=True, blank=True)
|
||||||
gender = models.CharField('性别', max_length=10, default='男')
|
gender = models.CharField('性别', max_length=10, default='男')
|
||||||
|
|
|
@ -3,11 +3,8 @@ from apps.system.models import User
|
||||||
from django.dispatch import receiver
|
from django.dispatch import receiver
|
||||||
from apps.hrm.models import Employee
|
from apps.hrm.models import Employee
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
import face_recognition
|
|
||||||
import logging
|
|
||||||
logger = logging.getLogger('log')
|
|
||||||
|
|
||||||
@receiver(post_save, sender=User)
|
# @receiver(post_save, sender=User)
|
||||||
def createEmployee(sender, instance, created, **kwargs):
|
# def createEmployee(sender, instance, created, **kwargs):
|
||||||
if created:
|
# if created:
|
||||||
Employee.objects.get_or_create(user=instance)
|
# Employee.objects.get_or_create(user=instance)
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
# Generated by Django 3.2.12 on 2022-04-12 05:13
|
||||||
|
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('system', '0002_auto_20220411_2148'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.RemoveField(
|
||||||
|
model_name='user',
|
||||||
|
name='phone',
|
||||||
|
),
|
||||||
|
]
|
|
@ -113,8 +113,6 @@ class User(AbstractUser, CommonBModel):
|
||||||
用户
|
用户
|
||||||
"""
|
"""
|
||||||
name = models.CharField('姓名', max_length=20, null=True, blank=True)
|
name = models.CharField('姓名', max_length=20, null=True, blank=True)
|
||||||
phone = models.CharField('手机号', max_length=11,
|
|
||||||
null=True, blank=True)
|
|
||||||
avatar = models.CharField(
|
avatar = models.CharField(
|
||||||
'头像', default='/media/default/avatar.png', max_length=100, null=True, blank=True)
|
'头像', default='/media/default/avatar.png', max_length=100, null=True, blank=True)
|
||||||
superior = models.ForeignKey(
|
superior = models.ForeignKey(
|
||||||
|
|
|
@ -237,18 +237,18 @@ class UserListSerializer(CustomModelSerializer):
|
||||||
model = User
|
model = User
|
||||||
exclude = ['password']
|
exclude = ['password']
|
||||||
|
|
||||||
def phone_check(phone):
|
# def phone_check(phone):
|
||||||
re_phone = '^1[358]\d{9}$|^147\d{8}$|^176\d{8}$'
|
# re_phone = '^1[358]\d{9}$|^147\d{8}$|^176\d{8}$'
|
||||||
if not re.match(re_phone, phone):
|
# if not re.match(re_phone, phone):
|
||||||
raise serializers.ValidationError(**PHONE_F_WRONG)
|
# raise serializers.ValidationError(**PHONE_F_WRONG)
|
||||||
return phone
|
# return phone
|
||||||
|
|
||||||
def phone_exist(phone):
|
# def phone_exist(phone):
|
||||||
if User.objects.filter(phone=phone):
|
# if User.objects.filter(phone=phone).exists():
|
||||||
raise serializers.ValidationError(**PHONE_EXIST)
|
# raise serializers.ValidationError(**PHONE_EXIST)
|
||||||
|
|
||||||
def user_exist(username):
|
def user_exist(username):
|
||||||
if User.objects.filter(username=username):
|
if User.objects.filter(username=username).exists():
|
||||||
raise serializers.ValidationError(**USERNAME_EXIST)
|
raise serializers.ValidationError(**USERNAME_EXIST)
|
||||||
return username
|
return username
|
||||||
|
|
||||||
|
@ -256,13 +256,10 @@ class UserUpdateSerializer(CustomModelSerializer):
|
||||||
"""
|
"""
|
||||||
用户编辑序列化
|
用户编辑序列化
|
||||||
"""
|
"""
|
||||||
phone = serializers.CharField(max_length=11,
|
username = serializers.CharField(required=True, validators=[user_exist])
|
||||||
required=False, validators=[phone_check])
|
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = User
|
model = User
|
||||||
fields = ['id', 'username', 'name', 'phone', 'email', 'belong_dept',
|
fields = ['username', 'name', 'avatar', 'is_active']
|
||||||
'avatar', 'is_active', 'is_superuser']
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -272,13 +269,10 @@ class UserCreateSerializer(CustomModelSerializer):
|
||||||
创建用户序列化
|
创建用户序列化
|
||||||
"""
|
"""
|
||||||
username = serializers.CharField(required=True, validators=[user_exist])
|
username = serializers.CharField(required=True, validators=[user_exist])
|
||||||
phone = serializers.CharField(max_length=11,
|
|
||||||
required=False, validators=[phone_check, phone_exist])
|
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = User
|
model = User
|
||||||
fields = ['id', 'username', 'name', 'phone', 'email', 'belong_dept',
|
fields = ['username', 'name', 'avatar', 'is_active']
|
||||||
'avatar', 'is_active']
|
|
||||||
|
|
||||||
|
|
||||||
class PasswordChangeSerializer(serializers.Serializer):
|
class PasswordChangeSerializer(serializers.Serializer):
|
||||||
|
|
Loading…
Reference in New Issue