hrm 返回blt信息

This commit is contained in:
曹前明 2022-07-11 11:00:17 +08:00
parent f58311bbc4
commit 17bfe21665
3 changed files with 30 additions and 2 deletions

View File

@ -3,6 +3,7 @@ from rest_framework.serializers import ModelSerializer
from rest_framework import serializers from rest_framework import serializers
from apps.hrm.services import HrmService from apps.hrm.services import HrmService
from apps.utils.serializers import CustomModelSerializer from apps.utils.serializers import CustomModelSerializer
from apps.utils.constants import EXCLUDE_FIELDS, EXCLUDE_FIELDS_BASE from apps.utils.constants import EXCLUDE_FIELDS, EXCLUDE_FIELDS_BASE
from apps.utils.tools import rannum from apps.utils.tools import rannum
@ -101,12 +102,19 @@ class EmployeeSerializer(EmployeeBaseSerializer):
belong_dept_ = DeptSimpleSerializer(source='belong_dept', read_only=True) belong_dept_ = DeptSimpleSerializer(source='belong_dept', read_only=True)
belong_dept_name = serializers.CharField(source='belong_dept.name', read_only=True) belong_dept_name = serializers.CharField(source='belong_dept.name', read_only=True)
post_name = serializers.CharField(source='post.name', read_only=True) post_name = serializers.CharField(source='post.name', read_only=True)
blt_ = serializers.SerializerMethodField()
class Meta: class Meta:
model = Employee model = Employee
fields = '__all__' fields = '__all__'
read_only_fields = ['is_atwork', 'last_check_time', 'not_work_remark'] read_only_fields = ['is_atwork', 'last_check_time', 'not_work_remark']
def get_blt_(self, obj):
if hasattr(obj, 'tdevice'):
from apps.third.serializers import TDeviceSimpleSerializer
return TDeviceSimpleSerializer(instance=obj.tdevice).data
return
class EmployeeNotWorkRemarkSerializer(ModelSerializer): class EmployeeNotWorkRemarkSerializer(ModelSerializer):
class Meta: class Meta:

View File

@ -0,0 +1,20 @@
# Generated by Django 3.2.12 on 2022-07-11 02:40
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('hrm', '0003_employee_post'),
('third', '0004_auto_20220707_0957'),
]
operations = [
migrations.AlterField(
model_name='tdevice',
name='employee',
field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='hrm.employee', verbose_name='当前绑定人员'),
),
]

View File

@ -40,8 +40,8 @@ class TDevice(BaseModel):
areas = models.ManyToManyField(Area, verbose_name='覆盖区', areas = models.ManyToManyField(Area, verbose_name='覆盖区',
related_name='tareas') related_name='tareas')
obj_cate = models.CharField('绑定对象', max_length=20, help_text='people/...', null=True, blank=True) obj_cate = models.CharField('绑定对象', max_length=20, help_text='people/...', null=True, blank=True)
employee = models.ForeignKey(Employee, verbose_name='当前绑定人员', on_delete=models.CASCADE, employee = models.OneToOneField(Employee, verbose_name='当前绑定人员', on_delete=models.CASCADE,
null=True, blank=True, related_name='td_employee') null=True, blank=True)
is_clock = models.BooleanField('是否打卡设备', default=False) is_clock = models.BooleanField('是否打卡设备', default=False)
third_info = models.JSONField('三方信息', default=dict, third_info = models.JSONField('三方信息', default=dict,
null=False, blank=True) null=False, blank=True)