Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
b06badf
Adding item and order func
ayushsinghal90 Feb 15, 2025
a6ec46a
Adding favourites
ayushsinghal90 Feb 16, 2025
b776026
Adding seat and order
ayushsinghal90 Feb 16, 2025
53a273c
adding apps in setup
ayushsinghal90 Feb 16, 2025
7cf616d
adding model code
ayushsinghal90 Feb 17, 2025
eda8302
remove unwanted fiels
ayushsinghal90 Feb 17, 2025
71966ee
adding serializers
ayushsinghal90 Feb 18, 2025
1032f8a
Merge pull request #68 from druling/item_nd_table
ayushsinghal90 Feb 18, 2025
75ad328
adding serlializers for order
ayushsinghal90 Feb 18, 2025
2278795
Adding item creation
ayushsinghal90 Feb 18, 2025
4e94640
compelete item creations
ayushsinghal90 Feb 19, 2025
f847468
Adding url
ayushsinghal90 Feb 19, 2025
3b87c48
adding urls
ayushsinghal90 Feb 19, 2025
7fb3393
Adding service for seat
ayushsinghal90 Feb 19, 2025
08fd836
Adding seat urls
ayushsinghal90 Feb 19, 2025
5b468ba
adding order service
ayushsinghal90 Feb 19, 2025
8d2b0e3
Merge pull request #69 from druling/adding_logic
ayushsinghal90 Feb 19, 2025
79a79bb
some commit
ayushsinghal90 Feb 22, 2025
e22927d
fixing general issue
ayushsinghal90 Feb 23, 2025
786f555
Merge pull request #70 from druling/refining_apis
ayushsinghal90 Feb 23, 2025
b0172d4
adding favourite serializer and service
ayushsinghal90 Feb 25, 2025
fd5846e
adding status in order item
ayushsinghal90 Feb 25, 2025
8b1ea16
adding status and update update statur api
ayushsinghal90 Feb 25, 2025
dfeb4f2
Adding migrations
ayushsinghal90 Feb 25, 2025
174c1a4
Merge pull request #71 from druling/complete_order
ayushsinghal90 Feb 26, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions commons/models/BaseModel.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,3 +35,8 @@ def delete(self, using=None, keep_parents=False):
def restore(self):
self.deleted_at = None
self.save()

"""Perform a hard delete by permanently removing the record from the database."""

def hard_delete(self, using=None, keep_parents=False):
super(BaseModel, self).delete(using=using, keep_parents=keep_parents)
Empty file added favourite/__init__.py
Empty file.
5 changes: 5 additions & 0 deletions favourite/apps.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
from django.apps import AppConfig


class FavouriteConfig(AppConfig):
name = "favourite"
91 changes: 91 additions & 0 deletions favourite/migrations/0001_initial.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
# Generated by Django 4.2.17 on 2025-02-25 04:12

from django.db import migrations, models
import django.db.models.deletion
import uuid


class Migration(migrations.Migration):

initial = True

dependencies = [
("item", "0002_addon_itemvariation_itemaddon"),
("branch", "0003_branch_is_active"),
]

operations = [
migrations.CreateModel(
name="Favourite",
fields=[
(
"id",
models.UUIDField(
default=uuid.uuid4,
editable=False,
primary_key=True,
serialize=False,
),
),
("created_at", models.DateTimeField(auto_now_add=True)),
("updated_at", models.DateTimeField(auto_now=True)),
("deleted_at", models.DateTimeField(blank=True, null=True)),
(
"branch",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name="favourites",
to="branch.branch",
),
),
(
"item",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name="favourites",
to="item.item",
),
),
],
options={
"db_table": "favourite",
},
),
migrations.CreateModel(
name="CustomerFavourite",
fields=[
(
"id",
models.UUIDField(
default=uuid.uuid4,
editable=False,
primary_key=True,
serialize=False,
),
),
("created_at", models.DateTimeField(auto_now_add=True)),
("updated_at", models.DateTimeField(auto_now=True)),
("deleted_at", models.DateTimeField(blank=True, null=True)),
("note", models.CharField(blank=True, max_length=200, null=True)),
(
"branch",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name="customer_favourites",
to="branch.branch",
),
),
(
"item",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name="customer_favourites",
to="item.item",
),
),
],
options={
"db_table": "customer_favourite",
},
),
]
Empty file.
4 changes: 4 additions & 0 deletions favourite/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
from .favourite import Favourite
from .customer_favourite import CustomerFavourite

__all__ = [Favourite, CustomerFavourite]
21 changes: 21 additions & 0 deletions favourite/models/customer_favourite.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
from django.db import models

from branch.models import Branch
from commons.models.BaseModel import BaseModel
from item.models import Item


class CustomerFavourite(BaseModel):
branch = models.ForeignKey(
Branch, related_name="customer_favourites", on_delete=models.CASCADE
)
item = models.ForeignKey(
Item, related_name="customer_favourites", on_delete=models.CASCADE
)
note = models.CharField(max_length=200, blank=True, null=True)

def __str__(self):
return f"{self.item.name} - {self.branch.name}"

class Meta:
db_table = "customer_favourite"
18 changes: 18 additions & 0 deletions favourite/models/favourite.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
from django.db import models

from branch.models import Branch
from commons.models.BaseModel import BaseModel
from item.models import Item


class Favourite(BaseModel):
branch = models.ForeignKey(
Branch, related_name="favourites", on_delete=models.CASCADE
)
item = models.ForeignKey(Item, related_name="favourites", on_delete=models.CASCADE)

def __str__(self):
return f"{self.item.name} - {self.branch.name}"

class Meta:
db_table = "favourite"
4 changes: 4 additions & 0 deletions favourite/serializer/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
from .favourite import FavouriteSerializer
from .customer_favourite import CustomerFavouriteSerializer

__all__ = [FavouriteSerializer, CustomerFavouriteSerializer]
25 changes: 25 additions & 0 deletions favourite/serializer/customer_favourite.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
from rest_framework import serializers

from branch.models import Branch
from commons.serializer.BaseModelSerializer import BaseModelSerializer
from item.models import Item

from ..models import CustomerFavourite


class CustomerFavouriteSerializer(BaseModelSerializer):
branch_id = serializers.PrimaryKeyRelatedField(
queryset=Branch.objects.all(), required=True, source="branch"
)
item_id = serializers.PrimaryKeyRelatedField(
queryset=Item.objects.all(), required=True, source="item"
)

class Meta:
model = CustomerFavourite
fields = [
"id",
"branch_id",
"item_id",
"note",
]
24 changes: 24 additions & 0 deletions favourite/serializer/favourite.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
from rest_framework import serializers

from branch.models import Branch
from commons.serializer.BaseModelSerializer import BaseModelSerializer
from item.models import Item

from ..models import Favourite


class FavouriteSerializer(BaseModelSerializer):
branch_id = serializers.PrimaryKeyRelatedField(
queryset=Branch.objects.all(), required=True, source="branch"
)
item_id = serializers.PrimaryKeyRelatedField(
queryset=Item.objects.all(), required=True, source="item"
)

class Meta:
model = Favourite
fields = [
"id",
"branch_id",
"item_id",
]
4 changes: 4 additions & 0 deletions favourite/services/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
from .customer_favourite import CustomerFavouriteService
from .favourite import FavouriteService

__all__ = [FavouriteService, CustomerFavouriteService]
17 changes: 17 additions & 0 deletions favourite/services/customer_favourite.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import logging

from django.db import transaction

from commons.service.BaseService import BaseService
from ..models import CustomerFavourite

logger = logging.getLogger(__name__)


class CustomerFavouriteService(BaseService):
def __init__(self):
super().__init__(CustomerFavourite)

def create(self):
with transaction.atomic():
return
17 changes: 17 additions & 0 deletions favourite/services/favourite.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import logging

from django.db import transaction

from commons.service.BaseService import BaseService
from ..models import Favourite

logger = logging.getLogger(__name__)


class FavouriteService(BaseService):
def __init__(self):
super().__init__(Favourite)

def create(self):
with transaction.atomic():
return
1 change: 1 addition & 0 deletions favourite/urls.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
urlpatterns = []
6 changes: 0 additions & 6 deletions feature/urls.py

This file was deleted.

5 changes: 5 additions & 0 deletions feature/urls/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
from django.urls import include, path

urlpatterns = [
path("profile/", include("feature.urls.profile_feature")),
]
6 changes: 6 additions & 0 deletions feature/urls/profile_feature.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
from django.urls import path
from ..views import ProfileFeatureView

urlpatterns = [
path("all/", ProfileFeatureView.as_view({"get": "get_all"})),
]
108 changes: 108 additions & 0 deletions item/migrations/0002_addon_itemvariation_itemaddon.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
# Generated by Django 4.2.17 on 2025-02-25 04:12

from django.db import migrations, models
import django.db.models.deletion
import uuid


class Migration(migrations.Migration):

dependencies = [
("item", "0001_initial"),
]

operations = [
migrations.CreateModel(
name="Addon",
fields=[
(
"id",
models.UUIDField(
default=uuid.uuid4,
editable=False,
primary_key=True,
serialize=False,
),
),
("created_at", models.DateTimeField(auto_now_add=True)),
("updated_at", models.DateTimeField(auto_now=True)),
("deleted_at", models.DateTimeField(blank=True, null=True)),
("name", models.CharField(max_length=100)),
("description", models.TextField(blank=True, null=True)),
("price", models.DecimalField(decimal_places=2, max_digits=10)),
("remaining_quantities", models.PositiveIntegerField(default=0)),
("ingredients", models.JSONField(blank=True, null=True)),
],
options={
"db_table": "addon",
},
),
migrations.CreateModel(
name="ItemVariation",
fields=[
(
"id",
models.UUIDField(
default=uuid.uuid4,
editable=False,
primary_key=True,
serialize=False,
),
),
("created_at", models.DateTimeField(auto_now_add=True)),
("updated_at", models.DateTimeField(auto_now=True)),
("deleted_at", models.DateTimeField(blank=True, null=True)),
("name", models.CharField(max_length=100)),
("description", models.TextField(blank=True, null=True)),
("price", models.DecimalField(decimal_places=2, max_digits=10)),
("ingredients", models.JSONField(blank=True, null=True)),
(
"item",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name="variations",
to="item.item",
),
),
],
options={
"db_table": "item_variation",
},
),
migrations.CreateModel(
name="ItemAddon",
fields=[
(
"id",
models.UUIDField(
default=uuid.uuid4,
editable=False,
primary_key=True,
serialize=False,
),
),
("created_at", models.DateTimeField(auto_now_add=True)),
("updated_at", models.DateTimeField(auto_now=True)),
("deleted_at", models.DateTimeField(blank=True, null=True)),
(
"addon",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name="items",
to="item.addon",
),
),
(
"item",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name="addons",
to="item.item",
),
),
],
options={
"db_table": "item_addon",
},
),
]
6 changes: 6 additions & 0 deletions item/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
from .item import Item
from .addon import Addon
from .item_addon import ItemAddon
from .item_variation import ItemVariation

__all__ = [Item, ItemVariation, ItemAddon, Addon]
Loading
Loading