Skip to content

Commit

Permalink
fix: fixing lint and code
Browse files Browse the repository at this point in the history
  • Loading branch information
anonimous committed Feb 27, 2024
1 parent c5eaca1 commit 83c061b
Show file tree
Hide file tree
Showing 94 changed files with 2,680 additions and 1,503 deletions.
4 changes: 2 additions & 2 deletions apidata/apps.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@


class ApidataConfig(AppConfig):
default_auto_field = 'django.db.models.BigAutoField'
name = 'apidata'
default_auto_field = "django.db.models.BigAutoField"
name = "apidata"
23 changes: 13 additions & 10 deletions apidata/serializers/auth_serializer.py
Original file line number Diff line number Diff line change
@@ -1,31 +1,33 @@
from django.contrib.auth.models import Group
from profiles.models import UserProfile
from rest_framework.validators import UniqueValidator
from django.contrib.auth.password_validation import validate_password
from rest_framework import serializers
from rest_framework.authtoken.models import Token
from rest_framework.validators import UniqueValidator

from profiles.models import UserProfile


class UserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = UserProfile
fields = ['username', 'email', 'nama', 'no_telepon', 'id']
fields = ["username", "email", "nama", "no_telepon", "id"]


class MeSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = UserProfile
fields = ['username', 'email', 'coin', 'id', 'nama', 'no_telepon']
fields = ["username", "email", "coin", "id", "nama", "no_telepon"]


class RegisterSerializer(serializers.ModelSerializer):
password = serializers.CharField(write_only=True, required=True)
email = serializers.CharField(required=True)
token = serializers.SerializerMethodField()

# password2 = serializers.CharField(write_only=True, required=True)
class Meta:
model = UserProfile
fields = ('username', 'email', 'password', 'token')
fields = ("username", "email", "password", "token")

# def validate(self, attrs):
# if attrs['password'] != attrs['password2']:
Expand All @@ -34,19 +36,20 @@ class Meta:

def create(self, validated_data):
user = UserProfile.objects.create(
username=validated_data['username'],
username=validated_data["username"],
is_staff=True,
email=validated_data['email'],
email=validated_data["email"],
)
user.set_password(validated_data['password'])
user.set_password(validated_data["password"])
user.save()
return user

def get_token(self, obj):
token, created = Token.objects.get_or_create(user=obj)
return token.key


class GroupSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Group
fields = ['name']
fields = ["name"]
74 changes: 41 additions & 33 deletions apidata/serializers/produks_serializer.py
Original file line number Diff line number Diff line change
@@ -1,33 +1,36 @@
from produk.models import Produk, Kategori, TipeProduk, WarnaProduk, GambarProduk, UlasanCart
from .stores_serializer import UserStoreSerializer
from store.models import UserStore
from rest_framework import serializers
from django.db.models import Avg
from django.urls import reverse
from rest_framework import serializers

from produk.models import (GambarProduk, Kategori, Produk, TipeProduk,
UlasanCart, WarnaProduk)
from store.models import UserStore

from .stores_serializer import UserStoreSerializer


class KategoriSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Kategori
fields = ['url', 'kode', 'icon', 'nama']
fields = ["url", "kode", "icon", "nama"]


class TipeProdukSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = TipeProduk
fields = ['url','nama']
fields = ["url", "nama"]


class WarnaProdukSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = WarnaProduk
fields = ['url', 'nama']
fields = ["url", "nama"]


class GambarProdukSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = GambarProduk
fields = ['gambar', 'nama']
fields = ["gambar", "nama"]


class ProdukSerializer(serializers.HyperlinkedModelSerializer):
Expand All @@ -38,45 +41,50 @@ class ProdukSerializer(serializers.HyperlinkedModelSerializer):
gambar = serializers.SerializerMethodField()
count_star = serializers.SerializerMethodField()
produk_detail_url = serializers.SerializerMethodField()

class Meta:
model = Produk
fields = [
'id',
'url',
'nama',
'harga',
'kategori',
'tipe',
'warna',
'gambar',
'detail',
'stok_produk',
'stok',
'is_promo',
'berat',
'lebar',
'slug',
'created_at',
'store',
'count_star',
'produk_detail_url'
"id",
"url",
"nama",
"harga",
"kategori",
"tipe",
"warna",
"gambar",
"detail",
"stok_produk",
"stok",
"is_promo",
"berat",
"lebar",
"slug",
"created_at",
"store",
"count_star",
"produk_detail_url",
]

def get_count_star(self, obj):
countstar = UlasanCart.objects.filter(produkitem_id=obj.id).aggregate(Avg('produk'))['produk__avg'] or 0
countstar = (
UlasanCart.objects.filter(produkitem_id=obj.id).aggregate(Avg("produk"))[
"produk__avg"
]
or 0
)
return countstar

def get_produk_detail_url(self, obj):
urldetail = reverse('detail_produk', kwargs={"slug":obj.slug})
urldetail = reverse("detail_produk", kwargs={"slug": obj.slug})
return urldetail

def get_gambar(self, obj):
gambars = GambarProduk.objects.filter(produk__pk=obj.pk).order_by('-pk')
gambars = GambarProduk.objects.filter(produk__pk=obj.pk).order_by("-pk")
return GambarProdukSerializer(gambars, many=True).data

def get_store(self, obj):
stores = UserStore.objects.filter(pk=obj.store.id)
if stores.exists():
stores = stores.first()
return UserStoreSerializer(stores).data

6 changes: 3 additions & 3 deletions apidata/serializers/slides_serializer.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
from frontend.models import Banner
from rest_framework import serializers

from frontend.models import Banner


class BannerSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Banner
fields = ['url', 'name', 'image']

fields = ["url", "name", "image"]
10 changes: 6 additions & 4 deletions apidata/serializers/stores_serializer.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
from store.models import UserStore, UserStoreAddress, UserNotification
from rest_framework import serializers

from apidata.serializers.auth_serializer import UserSerializer
# from django.contrib.auth.models import User
from profiles.models import UserProfile
from rest_framework import serializers
from store.models import UserNotification, UserStore, UserStoreAddress


class UserStoreSerializer(serializers.ModelSerializer):
# user = serializers.SerializerMethodField()
class Meta:
model = UserStore
fields = ['nama', 'deskripsi', 'id']
fields = ["nama", "deskripsi", "id"]

# def get_user(self, obj):
# user = UserProfile.objects.filter(pk=obj.users.id)
Expand All @@ -18,6 +19,7 @@ class Meta:

class UserStoreAddressSerializer(serializers.ModelSerializer):
userstore = UserStoreSerializer(many=True)

class Meta:
model = UserStoreAddress
fields = ['address']
fields = ["address"]
10 changes: 5 additions & 5 deletions apidata/serializers/ulasan_serializer.py
Original file line number Diff line number Diff line change
@@ -1,24 +1,24 @@
from produk.models import UlasanCart
from rest_framework import serializers
from produk.models import Cart

from produk.models import Cart, UlasanCart


class UlasanSerializer(serializers.HyperlinkedModelSerializer):
cart = serializers.SerializerMethodField()
user = serializers.SerializerMethodField()

class Meta:
model = UlasanCart
fields = ['url', 'user', 'cart', 'catatan', 'produkitem', "produk"]
fields = ["url", "user", "cart", "catatan", "produkitem", "produk"]

def get_cart(self, obj):
carts = Cart.objects.filter(pk=obj.cart.id)
carts = carts.first()
return carts.kode

def get_user(self, obj):
user = Cart.objects.filter(pk=obj.cart.id)
user = user.first()
user = user.user
user = user.username
return user

44 changes: 25 additions & 19 deletions apidata/urls.py
Original file line number Diff line number Diff line change
@@ -1,31 +1,37 @@
from django.urls import include, path
from rest_framework import routers
from apidata.viewsets.auth_viewset import UserViewSet, GroupViewSet, RegisterUserAPIView, MeViewSet, UserAuthToken

from apidata.viewsets.auth_viewset import (GroupViewSet, MeViewSet,
RegisterUserAPIView, UserAuthToken,
UserViewSet)
from apidata.viewsets.produks_viewset import (GambarProdukViewset,
KategoriViewset, ProdukViewSet,
TipeProdukViewset,
WarnaProdukViewset)
from apidata.viewsets.slides_viewset import SlidesViewSet
from apidata.viewsets.produks_viewset import ProdukViewSet, TipeProdukViewset, KategoriViewset, WarnaProdukViewset, GambarProdukViewset
from apidata.viewsets.stores_viewset import UserStoreViewset, UserStoreAddressViewset
from apidata.viewsets.stores_viewset import (UserStoreAddressViewset,
UserStoreViewset)
from apidata.viewsets.ulasan_viewset import UlasanViewSet


router = routers.DefaultRouter()
router.register(r'users', UserViewSet)
router.register(r'groups', GroupViewSet)
router.register(r'slides', SlidesViewSet)
router.register(r'produks', ProdukViewSet)
router.register(r'tipes', TipeProdukViewset)
router.register(r'kategoris', KategoriViewset)
router.register(r'warnas', WarnaProdukViewset)
router.register(r'gambarproduks', GambarProdukViewset)
router.register(r'stores', UserStoreViewset)
router.register(r'storeaddres', UserStoreAddressViewset)
router.register(r'ulasanproduk', UlasanViewSet)
router.register(r"users", UserViewSet)
router.register(r"groups", GroupViewSet)
router.register(r"slides", SlidesViewSet)
router.register(r"produks", ProdukViewSet)
router.register(r"tipes", TipeProdukViewset)
router.register(r"kategoris", KategoriViewset)
router.register(r"warnas", WarnaProdukViewset)
router.register(r"gambarproduks", GambarProdukViewset)
router.register(r"stores", UserStoreViewset)
router.register(r"storeaddres", UserStoreAddressViewset)
router.register(r"ulasanproduk", UlasanViewSet)

# Wire up our API using automatic URL routing.
# Additionally, we include login URLs for the browsable API.
urlpatterns = [
path('', include(router.urls)),
path('login', UserAuthToken.as_view()),
path('register', RegisterUserAPIView.as_view()),
path('me', MeViewSet.as_view())
path("", include(router.urls)),
path("login", UserAuthToken.as_view()),
path("register", RegisterUserAPIView.as_view()),
path("me", MeViewSet.as_view()),
# path('api/auth/', include('rest_framework.urls', namespace='rest_framework'))
]
Loading

0 comments on commit 83c061b

Please sign in to comment.