Skip to content

Commit c9ea594

Browse files
HifzaanDevkenk999
andauthored
Dashboard client (FusionIIIT#4)
* inventory model created with other basic files * inventory model migrations file created * inventory model migrations file created * last commit * Update views and models * Update views and models --------- Co-authored-by: kenk999 <[email protected]>
1 parent 5b55c27 commit c9ea594

File tree

4 files changed

+36
-72
lines changed

4 files changed

+36
-72
lines changed

FusionIIIT/Fusion/settings/common.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,7 @@
140140
'applications.income_expenditure',
141141
'applications.hr2',
142142
'applications.department',
143+
'applications.inventory',
143144
'applications.iwdModuleV2',
144145
'allauth',
145146
'allauth.account',
@@ -210,6 +211,17 @@
210211
# }
211212
# }
212213

214+
DATABASES = {
215+
# 'default': {
216+
# 'ENGINE': 'django.db.backends.postgresql',
217+
# 'NAME': 'Inventory',
218+
# 'USER': 'postgres',
219+
# 'PASSWORD': 'asdfghjkl',
220+
# 'HOST': 'localhost', # or your database host
221+
# 'PORT': '5432', # default PostgreSQL port
222+
# }
223+
}
224+
213225

214226
# Password validation
215227
# https://docs.djangoproject.com/en/1.11/ref/settings/#auth-password-validators
Lines changed: 14 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,41 @@
1-
from django.conf import settings
2-
from django.db import migrations, models
3-
import django.utils.timezone
1+
# Generated by Django 3.1.5 on 2024-11-17 16:33
42

3+
from django.db import migrations, models
54

65
class Migration(migrations.Migration):
76

87
initial = True
98

109
dependencies = [
11-
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
1210
]
1311

1412
operations = [
15-
migrations.CreateModel(
16-
name='Item',
17-
fields=[
18-
('item_id', models.AutoField(primary_key=True)),
19-
('item_name', models.CharField(max_length=100)),
20-
('quantity', models.PositiveIntegerField(default=0)),
21-
('type', models.CharField(max_length=20, choices=[('Consumable', 'Consumable'), ('Non-Consumable', 'Non-Consumable')])),
22-
('unit', models.CharField(max_length=50)),
23-
('description', models.TextField(blank=True, null=True)),
24-
],
25-
),
2613
migrations.CreateModel(
2714
name='DepartmentInfo',
2815
fields=[
29-
('subdepartment_id', models.AutoField(primary_key=True)),
30-
('subdepartment_name', models.CharField(max_length=100)),
16+
('department_id', models.AutoField(primary_key=True, serialize=False)),
3117
('department_name', models.CharField(max_length=100)),
32-
('admin', models.ForeignKey(on_delete=models.CASCADE, to=settings.AUTH_USER_MODEL)),
18+
('item_name', models.CharField(max_length=100)),
19+
('quantity', models.PositiveIntegerField(default=0)),
3320
],
3421
),
3522
migrations.CreateModel(
36-
name='Relationship',
23+
name='Item',
3724
fields=[
38-
('item_id', models.ForeignKey(on_delete=models.CASCADE, to='app_name.Item')),
39-
('subdepartment_id', models.ForeignKey(on_delete=models.CASCADE, to='app_name.DepartmentInfo')),
25+
('item_id', models.AutoField(primary_key=True, serialize=False)),
26+
('item_name', models.CharField(max_length=100)),
4027
('quantity', models.PositiveIntegerField(default=0)),
28+
('type', models.CharField(choices=[('Consumable', 'Consumable'), ('Non-Consumable', 'Non-Consumable')], max_length=20)),
29+
('unit', models.CharField(max_length=50)),
4130
],
42-
options={
43-
'unique_together': {('item_id', 'subdepartment_id')},
44-
},
4531
),
4632
migrations.CreateModel(
47-
name='Event',
33+
name='SectionInfo',
4834
fields=[
49-
('event_id', models.AutoField(primary_key=True)),
50-
('event_type', models.CharField(max_length=20, choices=[('Addition', 'Addition'), ('Removal', 'Removal'), ('Transfer', 'Transfer')])),
35+
('section_id', models.AutoField(primary_key=True, serialize=False)),
36+
('section_name', models.CharField(max_length=100)),
37+
('item_name', models.CharField(max_length=100)),
5138
('quantity', models.PositiveIntegerField(default=0)),
52-
('date', models.DateTimeField(default=django.utils.timezone.now)),
53-
('remarks', models.TextField(blank=True, null=True)),
54-
('item_id', models.ForeignKey(on_delete=models.CASCADE, to='app_name.Item')),
55-
('in_subdepartment_id', models.ForeignKey(on_delete=models.CASCADE, related_name='in_subdepartment', to='app_name.DepartmentInfo')),
56-
('from_subdepartment_id', models.ForeignKey(on_delete=models.CASCADE, related_name='from_subdepartment', to='app_name.DepartmentInfo')),
57-
('responsible_user', models.ForeignKey(on_delete=models.CASCADE, to=settings.AUTH_USER_MODEL)),
5839
],
5940
),
6041
]

FusionIIIT/applications/inventory/migrations/__init__.py

Whitespace-only changes.
Lines changed: 10 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
from django.db import models
2-
from django.contrib.auth.models import User
3-
42

53
class Item(models.Model):
64
ITEM_TYPE_CHOICES = [
@@ -9,55 +7,28 @@ class Item(models.Model):
97
]
108

119
item_id = models.AutoField(primary_key=True)
12-
item_name = models.CharField(max_length=100)
10+
item_name = models.CharField(max_length=100) # e.g., computer
1311
quantity = models.PositiveIntegerField(default=0)
1412
type = models.CharField(max_length=20, choices=ITEM_TYPE_CHOICES)
15-
unit = models.CharField(max_length=20)
16-
description = models.TextField(blank=True, null=True)
13+
unit = models.CharField(max_length=50)
1714

1815
def __str__(self):
1916
return self.item_name
2017

21-
2218
class DepartmentInfo(models.Model):
23-
subdepartment_id = models.AutoField(primary_key=True)
24-
subdepartment_name = models.CharField(max_length=100)
19+
department_id = models.AutoField(primary_key=True)
2520
department_name = models.CharField(max_length=100)
26-
admin = models.ForeignKey(User, on_delete=models.CASCADE)
27-
28-
def __str__(self):
29-
return self.subdepartment_name
30-
31-
32-
class Relationship(models.Model):
33-
item = models.ForeignKey(Item, on_delete=models.CASCADE)
34-
subdepartment = models.ForeignKey(DepartmentInfo, on_delete=models.CASCADE)
21+
item_name = models.CharField(max_length=100) # e.g., computer
3522
quantity = models.PositiveIntegerField(default=0)
3623

37-
class Meta:
38-
unique_together = ('item', 'subdepartment')
39-
4024
def __str__(self):
41-
return f"{self.item.item_name} in {self.subdepartment.subdepartment_name} - Quantity: {self.quantity}"
42-
25+
return self.department_name
4326

44-
class Event(models.Model):
45-
EVENT_TYPE_CHOICES = [
46-
('Addition', 'Addition'),
47-
('Removal', 'Removal'),
48-
('Transfer', 'Transfer'),
49-
]
50-
51-
event_id = models.AutoField(primary_key=True)
52-
event_type = models.CharField(max_length=20, choices=EVENT_TYPE_CHOICES)
53-
item = models.ForeignKey(Item, on_delete=models.CASCADE)
27+
class SectionInfo(models.Model):
28+
section_id = models.AutoField(primary_key=True)
29+
section_name = models.CharField(max_length=100)
30+
item_name = models.CharField(max_length=100) # e.g., computer
5431
quantity = models.PositiveIntegerField(default=0)
55-
in_subdepartment = models.ForeignKey(DepartmentInfo, on_delete=models.CASCADE, related_name='in_subdepartment')
56-
from_subdepartment = models.ForeignKey(DepartmentInfo, on_delete=models.CASCADE, related_name='from_subdepartment', blank=True, null=True)
57-
responsible_user = models.ForeignKey(User, on_delete=models.CASCADE)
58-
date = models.DateTimeField(auto_now_add=True)
59-
remarks = models.TextField(blank=True, null=True)
6032

6133
def __str__(self):
62-
return f"{self.event_type} - {self.item.item_name} - {self.quantity}"
63-
34+
return self.section_name

0 commit comments

Comments
 (0)