# Generated by Django 5.0.6 on 2024-05-27 05:19 import django.db.models.deletion from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='AnnualLeaveRecord', fields=[ ('record_id', models.AutoField(primary_key=True, serialize=False, verbose_name='记录编号')), ('year', models.IntegerField(verbose_name='年份')), ('employee_name', models.CharField(max_length=255, verbose_name='姓名')), ('primary_department', models.CharField(max_length=255, verbose_name='一级部门')), ('total_annual_leave', models.IntegerField(verbose_name='年假天数')), ('used_annual_leave', models.IntegerField(verbose_name='已请年假数')), ('remaining_annual_leave', models.IntegerField(verbose_name='剩余年假数')), ], options={ 'verbose_name': '年假使用记录', 'verbose_name_plural': '年假使用记录表', }, ), migrations.CreateModel( name='EmployeeInformation', fields=[ ('employee_id', models.AutoField(primary_key=True, serialize=False)), ('name', models.CharField(max_length=255, verbose_name='姓名')), ('id_number', models.CharField(max_length=255, unique=True, verbose_name='身份证号')), ('gender', models.CharField(choices=[('男', '男'), ('女', '女'), ('其他', '其他')], max_length=10, verbose_name='性别')), ('birthday', models.DateField(verbose_name='生日')), ('age', models.IntegerField(verbose_name='年龄')), ('height', models.DecimalField(decimal_places=2, max_digits=5, verbose_name='身高(cm)')), ('weight', models.DecimalField(decimal_places=2, max_digits=5, verbose_name='体重(kg)')), ('blood_type', models.CharField(choices=[('A', 'A'), ('B', 'B'), ('AB', 'AB'), ('O', 'O'), ('其他', '其他')], max_length=3, verbose_name='血型')), ('ethnicity', models.CharField(blank=True, max_length=255, verbose_name='民族')), ('domicile', models.CharField(blank=True, max_length=255, verbose_name='户籍地')), ('marital_status', models.CharField(choices=[('未婚', '未婚'), ('已婚未育', '已婚未育'), ('已婚已育', '已婚已育'), ('离婚', '离婚'), ('其他', '其他')], max_length=50, verbose_name='婚姻状态')), ('political_affiliation', models.CharField(choices=[('共产党员', '共产党员'), ('共青团员', '共青团员'), ('群众', '群众'), ('其他', '其他')], max_length=50, verbose_name='政治面貌')), ('entry_date', models.DateField(verbose_name='入职时间')), ('regularization_date', models.DateField(blank=True, null=True, verbose_name='转正日期')), ('departure_date', models.DateField(blank=True, null=True, verbose_name='离职时间')), ('employment_type', models.CharField(choices=[('全职', '全职'), ('兼职', '兼职'), ('实习', '实习')], max_length=50, verbose_name='用工性质')), ('status', models.CharField(choices=[('在职', '在职'), ('离职', '离职')], max_length=50, verbose_name='状态')), ('primary_department', models.CharField(max_length=255, verbose_name='一级部门')), ('secondary_department', models.CharField(blank=True, max_length=255, verbose_name='二级部门')), ('position', models.CharField(max_length=255, verbose_name='职务')), ('grade', models.CharField(blank=True, max_length=255, verbose_name='职级')), ('contract_end_date', models.DateField(blank=True, null=True, verbose_name='当前合同到期时间')), ('mobile_number', models.CharField(max_length=255, verbose_name='手机号')), ('email', models.EmailField(max_length=254, verbose_name='邮箱')), ('mailing_address', models.CharField(blank=True, max_length=255, verbose_name='通信地址')), ('emergency_contact', models.CharField(blank=True, max_length=255, verbose_name='紧急联系人')), ('relation_with_contact', models.CharField(blank=True, max_length=255, verbose_name='与本人关系')), ('emergency_contact_phone', models.CharField(blank=True, max_length=255, verbose_name='紧急联系人电话')), ('education', models.CharField(choices=[('高中', '高中'), ('大专', '大专'), ('本科', '本科'), ('硕士研究生', '硕士研究生'), ('博士研究生', '博士研究生'), ('其他', '其他')], max_length=50, verbose_name='学历')), ('undergraduate_school', models.CharField(blank=True, max_length=255, verbose_name='本科毕业院校')), ('graduate_school', models.CharField(blank=True, max_length=255, verbose_name='研究生毕业院校')), ('major', models.CharField(blank=True, max_length=255, verbose_name='专业')), ('technical_title', models.CharField(blank=True, max_length=255, verbose_name='技术职称')), ('base_salary', models.DecimalField(blank=True, decimal_places=2, max_digits=15, null=True, verbose_name='基础工资')), ('salary_account_number', models.CharField(blank=True, max_length=255, verbose_name='工资卡号')), ('bank_of_salary_account', models.CharField(blank=True, max_length=255, verbose_name='工资卡开户行')), ('resignation_type', models.CharField(blank=True, choices=[('合同期满', '合同期满'), ('主动辞职', '主动辞职'), ('无条件辞职', '无条件辞职'), ('试用未通过', '试用未通过'), ('辞退', '辞退'), ('其他', '其他')], max_length=50, verbose_name='离职类型')), ('resignation_reason', models.TextField(blank=True, verbose_name='离职原因')), ], options={ 'verbose_name': '人员基本信息表', 'verbose_name_plural': '人员基本信息表', }, ), migrations.CreateModel( name='Position', fields=[ ('position_id', models.AutoField(primary_key=True, serialize=False)), ('position_name', models.CharField(max_length=255, verbose_name='职务名称')), ('position_description', models.TextField(verbose_name='职务描述')), ], options={ 'verbose_name': '职务表', 'verbose_name_plural': '职务表', }, ), migrations.CreateModel( name='Rank', fields=[ ('rank_id', models.AutoField(primary_key=True, serialize=False, verbose_name='职级ID')), ('rank_name', models.CharField(max_length=255, verbose_name='职级名称')), ('rank_description', models.TextField(verbose_name='职级描述')), ], options={ 'verbose_name': '职级表', 'verbose_name_plural': '职级表', }, ), migrations.CreateModel( name='EmployeeAttendanceRecord', fields=[ ('record_id', models.AutoField(primary_key=True, serialize=False)), ('year_month', models.DateField(verbose_name='年月')), ('late', models.IntegerField(default=0, verbose_name='迟到')), ('early_leave', models.IntegerField(default=0, verbose_name='早退')), ('absenteeism', models.IntegerField(default=0, verbose_name='旷工')), ('annual_leave', models.IntegerField(default=0, verbose_name='年假')), ('personal_leave', models.IntegerField(default=0, verbose_name='事假')), ('sick_leave', models.IntegerField(default=0, verbose_name='病假')), ('other_leave_details_id', models.IntegerField(blank=True, null=True, verbose_name='其他假期详细记录ID')), ('employee', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='fac_mgnt.employeeinformation', verbose_name='员工')), ], options={ 'verbose_name': '员工考勤记录表', 'verbose_name_plural': '员工考勤记录表', }, ), migrations.CreateModel( name='OtherLeaveDetails', fields=[ ('record_id', models.AutoField(primary_key=True, serialize=False)), ('leave_type', models.CharField(choices=[('事假', '事假'), ('年假', '年假'), ('病假', '病假'), ('婚假', '婚假'), ('丧假', '丧假')], max_length=255, verbose_name='假期类型')), ('days', models.IntegerField(verbose_name='天数')), ('description', models.TextField(verbose_name='说明')), ('attendance_record', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='other_leaves', to='fac_mgnt.employeeattendancerecord', verbose_name='考勤记录')), ], options={ 'verbose_name': '其他假期详细记录', 'verbose_name_plural': '其他假期详细记录', }, ), ]