fix: 🐛 修复添加用户bug

This commit is contained in:
H0nGzA1
2023-04-12 00:25:36 +08:00
parent 38494edea5
commit 0668cb087f
3 changed files with 43 additions and 42 deletions

View File

@@ -41,6 +41,7 @@ class UserSerializer(CustomModelSerializer):
exclude = ["password"]
extra_kwargs = {
"post": {"required": False},
"mobile": {"required": False},
}
def get_dept_name_all(self, instance):
@@ -60,9 +61,6 @@ class UserSerializer(CustomModelSerializer):
return serializer.data
class UserCreateSerializer(CustomModelSerializer):
"""
用户新增-序列化器
@@ -82,10 +80,10 @@ class UserCreateSerializer(CustomModelSerializer):
"""
对密码进行验证
"""
password = self.initial_data.get("password")
if password:
return make_password(value)
return value
md5 = hashlib.md5()
md5.update(value.encode('utf-8'))
md5_password = md5.hexdigest()
return make_password(md5_password)
def save(self, **kwargs):
data = super().save(**kwargs)
@@ -100,6 +98,7 @@ class UserCreateSerializer(CustomModelSerializer):
read_only_fields = ["id"]
extra_kwargs = {
"post": {"required": False},
"mobile": {"required": False},
}
@@ -114,14 +113,15 @@ class UserUpdateSerializer(CustomModelSerializer):
CustomUniqueValidator(queryset=Users.objects.all(), message="账号必须唯一")
],
)
# password = serializers.CharField(required=False, allow_blank=True)
mobile = serializers.CharField(
max_length=50,
validators=[
CustomUniqueValidator(queryset=Users.objects.all(), message="手机号必须唯一")
],
allow_blank=True
)
# mobile = serializers.CharField(
# max_length=50,
# validators=[
# CustomUniqueValidator(queryset=Users.objects.all(), message="手机号必须唯一")
# ],
# allow_blank=True
# )
def save(self, **kwargs):
data = super().save(**kwargs)
@@ -136,6 +136,7 @@ class UserUpdateSerializer(CustomModelSerializer):
fields = "__all__"
extra_kwargs = {
"post": {"required": False, "read_only": True},
"mobile": {"required": False},
}
@@ -159,6 +160,7 @@ class UserInfoUpdateSerializer(CustomModelSerializer):
fields = ['email', 'mobile', 'avatar', 'name', 'gender']
extra_kwargs = {
"post": {"required": False, "read_only": True},
"mobile": {"required": False},
}

View File

@@ -20,8 +20,7 @@ export const createCrudOptions = function ({ crudExpose, context }: CreateCrudOp
};
//权限判定
const hasPermissions = inject("$hasPermissions")
const hasPermissions = inject('$hasPermissions');
return {
crudOptions: {
@@ -41,17 +40,17 @@ export const createCrudOptions = function ({ crudExpose, context }: CreateCrudOp
edit: {
iconRight: 'Edit',
type: 'text',
show:hasPermissions('dictonary:Update')
show: hasPermissions('dictionary:Update'),
},
remove: {
iconRight: 'Delete',
type: 'text',
show:hasPermissions('dictonary:Delete')
show: hasPermissions('dictionary:Delete'),
},
custom: {
text: '字典配置',
type: 'text',
show:hasPermissions('dictonary:Update'),
show: hasPermissions('dictionary:Update'),
tooltip: {
placement: 'top',
content: '字典配置',

View File

@@ -3,7 +3,7 @@ import { dict, PageQuery, AddReq, DelReq, EditReq, CrudExpose, CrudOptions, comp
import { request } from '/@/utils/service';
import { dictionary } from '/@/utils/dictionary';
import { successMessage } from '/@/utils/message';
import {inject} from "vue";
import { inject } from 'vue';
interface CreateCrudOptionsTypes {
crudOptions: CrudOptions;
}
@@ -24,7 +24,7 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
};
//权限判定
const hasPermissions = inject("$hasPermissions")
const hasPermissions = inject('$hasPermissions');
return {
crudOptions: {
@@ -45,12 +45,12 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
edit: {
iconRight: 'Edit',
type: 'text',
show:hasPermissions('user:Update')
show: hasPermissions('user:Update'),
},
remove: {
iconRight: 'Delete',
type: 'text',
show:hasPermissions('user:Delete')
show: hasPermissions('user:Delete'),
},
},
},
@@ -72,7 +72,7 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
},
type: 'input',
column: {
minWidth: 100 //最小列宽
minWidth: 100, //最小列宽
},
form: {
rules: [
@@ -124,7 +124,7 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
},
type: 'input',
column: {
minWidth: 100 //最小列宽
minWidth: 100, //最小列宽
},
form: {
rules: [
@@ -160,7 +160,7 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
},
}),
column: {
minWidth: 150 //最小列宽
minWidth: 150, //最小列宽
},
form: {
rules: [
@@ -206,7 +206,7 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
},
}),
column: {
minWidth: 100 //最小列宽
minWidth: 100, //最小列宽
},
form: {
rules: [
@@ -230,7 +230,7 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
},
type: 'input',
column: {
minWidth: 120 //最小列宽
minWidth: 120, //最小列宽
},
form: {
rules: [
@@ -269,7 +269,7 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
},
gender: {
title: '性别',
type: 'dict-radio',
type: 'dict-select',
dict: dict({
data: dictionary('gender'),
}),
@@ -291,7 +291,7 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
data: dictionary('user_type'),
}),
column: {
minWidth: 100 //最小列宽
minWidth: 100, //最小列宽
},
form: {
show: false,
@@ -302,7 +302,7 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
},
},
is_active: {
title: '状态',
title: '锁定',
search: {
show: true,
},