Skip to content

Commit

Permalink
Add employee profile, project, jobapplication
Browse files Browse the repository at this point in the history
  • Loading branch information
Mubashir12392 committed Mar 1, 2023
1 parent d27c403 commit 1bff818
Show file tree
Hide file tree
Showing 13 changed files with 238 additions and 0 deletions.
1 change: 1 addition & 0 deletions JobFreedom/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'employees'
]

MIDDLEWARE = [
Expand Down
Empty file added employees/__init__.py
Empty file.
6 changes: 6 additions & 0 deletions employees/admin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
from django.contrib import admin
from employees.models import Employeeprofile,EmployeeProject,Jobapplication
# Register your models here.
admin.site.register(Employeeprofile)
admin.site.register(EmployeeProject)
admin.site.register(Jobapplication)
6 changes: 6 additions & 0 deletions employees/apps.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
from django.apps import AppConfig


class EmployeesConfig(AppConfig):
default_auto_field = 'django.db.models.BigAutoField'
name = 'employees'
35 changes: 35 additions & 0 deletions employees/migrations/0001_initial.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Generated by Django 4.1.7 on 2023-03-01 08:55

from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

initial = True

dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]

operations = [
migrations.CreateModel(
name='Employee_Project',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('employee', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Employee_profile',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('skills', models.CharField(choices=[('PY', 'Python'), ('DJ', 'Django'), ('FL', 'Flask'), ('JS', 'Javascript'), ('RT', 'Rust')], max_length=200)),
('education', models.CharField(choices=[('matric', 'Matric'), ('fsc-nm', 'Fsc_Non_Medical'), ('fsd-m', 'Fs.c_Medical'), ('bs-eng', 'Bachelor in English'), ('bscs', 'Bachelor in Computer Science'), ('bs-Math', 'Bachelor in Mathematics'), ('bs-IS', 'Bachelor in Islamist'), ('bba', 'Bachelor in Business'), ('bs_phy', 'Bachelor in Physics'), ('ms-eng', 'Masters in English'), ('ms-phy', 'Masters in Physics'), ('ms-math', 'Masters in Mathematics'), ('mscs', 'Master in Computer Science'), ('mphil', 'M-Phil'), ('phd-cs', 'P-hd in Computer science')], max_length=100)),
('about', models.TextField(max_length=500)),
('interest', models.CharField(choices=[('Teaching', 'Teaching'), ('Business', 'Business'), ('it', 'Information Technology'), ('cs', 'Computer Science'), ('cyber-s', 'Cyber Security'), ('ai', 'Artificial Intelligence'), ('mc', 'Machine Learning'), ('army', 'Army'), ('sports', 'Sports')], max_length=100)),
('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
]
32 changes: 32 additions & 0 deletions employees/migrations/0002_employeeproject_and_more.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Generated by Django 4.1.7 on 2023-03-01 09:04

from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
('employees', '0001_initial'),
]

operations = [
migrations.CreateModel(
name='EmployeeProject',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('project_name', models.CharField(max_length=25)),
('project_description', models.TextField(max_length=500)),
('employee', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.RenameModel(
old_name='Employee_profile',
new_name='Employeeprofile',
),
migrations.DeleteModel(
name='Employee_Project',
),
]
23 changes: 23 additions & 0 deletions employees/migrations/0003_employeeproject_project_link_and_more.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Generated by Django 4.1.7 on 2023-03-01 09:19

from django.db import migrations, models


class Migration(migrations.Migration):

dependencies = [
('employees', '0002_employeeproject_and_more'),
]

operations = [
migrations.AddField(
model_name='employeeproject',
name='project_link',
field=models.URLField(blank=True, null=True),
),
migrations.AlterField(
model_name='employeeproject',
name='project_name',
field=models.CharField(max_length=60),
),
]
26 changes: 26 additions & 0 deletions employees/migrations/0004_jobapplication.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Generated by Django 4.1.7 on 2023-03-01 09:45

from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
('employees', '0003_employeeproject_project_link_and_more'),
]

operations = [
migrations.CreateModel(
name='Jobapplication',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('resume', models.FileField(upload_to='applications/resume')),
('expected_salary', models.SmallIntegerField(choices=[('50k', '50k'), ('70k', '70k'), ('80k', '80k'), ('100k', '100k'), ('150k', '150k'), ('200k', '200k'), ('250k', '250k')])),
('summary', models.TextField(max_length=500)),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Generated by Django 4.1.7 on 2023-03-01 09:55

from django.db import migrations, models


class Migration(migrations.Migration):

dependencies = [
('employees', '0004_jobapplication'),
]

operations = [
migrations.AlterField(
model_name='jobapplication',
name='expected_salary',
field=models.CharField(choices=[('50k', '50k'), ('70k', '70k'), ('80k', '80k'), ('100k', '100k'), ('150k', '150k'), ('200k', '200k'), ('250k', '250k')], max_length=20),
),
migrations.AlterField(
model_name='jobapplication',
name='resume',
field=models.FileField(blank=True, null=True, upload_to='applications/resume'),
),
]
Empty file.
80 changes: 80 additions & 0 deletions employees/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
from django.db import models
from django.contrib.auth.models import User
# Create your models here.
EDUCATION_CHOICES = (
('matric','Matric'),
('fsc-nm','Fsc_Non_Medical'),
('fsd-m','Fs.c_Medical'),
('bs-eng','Bachelor in English'),
('bscs', 'Bachelor in Computer Science'),
('bs-Math', 'Bachelor in Mathematics'),
('bs-IS', 'Bachelor in Islamist'),
('bba', 'Bachelor in Business'),
('bs_phy', 'Bachelor in Physics'),
('ms-eng', 'Masters in English'),
('ms-phy', 'Masters in Physics'),
('ms-math', 'Masters in Mathematics'),
('mscs', 'Master in Computer Science'),
("mphil", 'M-Phil'),
('phd-cs','P-hd in Computer science')
)

INTEREST_CHOICES= (
('Teaching', 'Teaching'),
('Business', 'Business'),
('it', 'Information Technology'),
('cs', 'Computer Science'),
('cyber-s', 'Cyber Security'),
('ai','Artificial Intelligence'),
('mc','Machine Learning'),
('army','Army'),
('sports','Sports'),
)



class Employeeprofile(models.Model):

class ChoicesEmployeeSkills(models.TextChoices):
PYTHON = 'PY', ('Python')
DJANGO = 'DJ', ('Django')
FLASK = 'FL', ('Flask')
JAVASCRIPT = 'JS', ('Javascript')
RUST = 'RT', ('Rust')

user = models.OneToOneField(User, on_delete=models.CASCADE)
skills = models.CharField(max_length=200, choices=ChoicesEmployeeSkills.choices)
education = models.CharField(max_length=100,choices=EDUCATION_CHOICES)
about = models.TextField(max_length=500)
interest =models.CharField(max_length=100, choices=INTEREST_CHOICES)

def __str__(self):
return f'{self.user}'

class EmployeeProject(models.Model):
employee = models.ForeignKey(User, on_delete=models.CASCADE)
project_name = models.CharField(max_length=60)
project_description = models.TextField(max_length=500)
project_link = models.URLField(max_length=200, null=True, blank=True)
project_file = models.FileField

def __str__(self) :
return f'{self.employee.username}'

class Jobapplication(models.Model):
SALARY_CHOICES = (
('50k','50k'),
('70k', '70k'),
('80k','80k'),
('100k','100k'),
('150k','150k'),
('200k','200k'),
('250k','250k')
)
user = models.ForeignKey(User, on_delete=models.CASCADE)
resume = models.FileField(upload_to='applications/resume', null=True, blank=True)
expected_salary =models.CharField(max_length=20,choices=SALARY_CHOICES)
summary = models.TextField(max_length=500)

def __str__(self) :
return f'{self.user.username}'
3 changes: 3 additions & 0 deletions employees/tests.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from django.test import TestCase

# Create your tests here.
3 changes: 3 additions & 0 deletions employees/views.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from django.shortcuts import render

# Create your views here.

0 comments on commit 1bff818

Please sign in to comment.