This commit is contained in:
Mohamed Nouffer
2022-06-08 21:40:43 +05:30
parent d543289b1f
commit 11a3ac4237
8 changed files with 118 additions and 13 deletions

View File

@ -0,0 +1,18 @@
# Generated by Django 3.2.9 on 2022-06-07 13:00
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('rog', '0005_auto_20220606_1523'),
]
operations = [
migrations.AddField(
model_name='location',
name='paid',
field=models.BooleanField(default=False, verbose_name='Is Paid'),
),
]

View File

@ -0,0 +1,22 @@
# Generated by Django 3.2.9 on 2022-06-07 13:07
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('rog', '0006_location_paid'),
]
operations = [
migrations.RemoveField(
model_name='location',
name='paid',
),
migrations.AddField(
model_name='roguser',
name='paid',
field=models.BooleanField(default=False, verbose_name='Is Paid'),
),
]

View File

@ -0,0 +1,18 @@
# Generated by Django 3.2.9 on 2022-06-07 13:09
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('rog', '0007_auto_20220607_2207'),
]
operations = [
migrations.AlterField(
model_name='roguser',
name='parammeters',
field=models.CharField(blank=True, max_length=512, null=True, verbose_name='Parameters'),
),
]

View File

@ -0,0 +1,17 @@
# Generated by Django 3.2.9 on 2022-06-07 14:24
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('rog', '0008_alter_roguser_parammeters'),
]
operations = [
migrations.RemoveField(
model_name='roguser',
name='email',
),
]

View File

@ -147,7 +147,6 @@ class CustomUser(AbstractBaseUser, PermissionsMixin):
class RogUser(models.Model):
user=models.OneToOneField(CustomUser, on_delete=models.CASCADE)
email=models.EmailField(_('Email'))
phone=models.CharField(_('Phone Number'), max_length=55)
first_name=models.CharField(_('First Name'), max_length=255)
middle_name=models.CharField(_('Middle Name'), max_length=255, blank=True, null=True)
@ -161,7 +160,8 @@ class RogUser(models.Model):
family_structure =models.IntegerField(_('Family Structure'), blank=True, null=True)
introducer = models.ForeignKey(CustomUser, related_name='introduced_uesr', on_delete=models.DO_NOTHING)
level= models.IntegerField(_('Level'), blank=True, null=True, default=0)
parammeters=models.CharField(_('Parameters'), max_length=512)
paid=models.BooleanField(_("Is Paid"),default=False)
parammeters=models.CharField(_('Parameters'), max_length=512, blank=True, null=True)
created_at=models.DateTimeField(auto_now_add=True)
last_updated_user=models.ForeignKey(CustomUser, related_name="roguser_updated_user", on_delete=models.DO_NOTHING)
last_updated_at=models.DateTimeField(auto_now=True)
@ -385,6 +385,7 @@ class Useractions(models.Model):
wanttogo=models.BooleanField(default=False)
like=models.BooleanField(default=False)
checkin=models.BooleanField(default=False)
# checkinimage=models.FileField(upload_to='%y%m%d', blank=True, null=True)
order =models.IntegerField(default=0)
created_at=models.DateTimeField(auto_now_add=True)
last_updated_at=models.DateTimeField(auto_now=True)

View File

@ -1,7 +1,7 @@
from rest_framework import serializers
from rest_framework_gis.serializers import GeoFeatureModelSerializer
from sqlalchemy.sql.functions import mode
from .models import Location, Location_line, Location_polygon, JpnAdminMainPerf, JpnAdminPerf, JpnSubPerf, Useractions, GifuAreas
from .models import Location, Location_line, Location_polygon, JpnAdminMainPerf, JpnAdminPerf, JpnSubPerf, Useractions, GifuAreas, RogUser
from drf_extra_fields.fields import Base64ImageField
#from django.contrib.auth.models import User
@ -77,6 +77,12 @@ class UserSerializer(serializers.ModelSerializer):
fields = ('id','email',)
class RogUserSerializer(serializers.ModelSerializer):
class Meta:
model = RogUser
fields = ('id','user', 'paid',)
class LoginUserSerializer(serializers.Serializer):
email = serializers.CharField()
password = serializers.CharField()
@ -110,6 +116,12 @@ class UserDestinationSerializer(serializers.ModelSerializer):
model = Useractions
fields = ('id', 'user', 'location', 'wanttogo', 'like', 'checkin')
class LocationEventNameSerializer(serializers.ModelSerializer):
class Meta:
model = Location
fields = ('id', 'event_name',)
class TestSerialiser(serializers.ModelSerializer):

View File

@ -1,6 +1,6 @@
from rest_framework import urlpatterns
from rest_framework.routers import DefaultRouter
from .views import LocationViewSet, Location_lineViewSet, Location_polygonViewSet, Jpn_Main_PerfViewSet, Jpn_PerfViewSet, LocationsInPerf, SubInPerf, ExtentForSubPerf, SubPerfInMainPerf, ExtentForMainPerf, LocationsInSubPerf, CatView, RegistrationAPI, LoginAPI, UserAPI, UserActionViewset, UserMakeActionViewset, UserDestinations, UpdateOrder, LocationInBound, DeleteDestination, CustomAreaLocations, GetAllGifuAreas
from .views import LocationViewSet, Location_lineViewSet, Location_polygonViewSet, Jpn_Main_PerfViewSet, Jpn_PerfViewSet, LocationsInPerf, SubInPerf, ExtentForSubPerf, SubPerfInMainPerf, ExtentForMainPerf, LocationsInSubPerf, CatView, RegistrationAPI, LoginAPI, UserAPI, UserActionViewset, UserMakeActionViewset, UserDestinations, UpdateOrder, LocationInBound, DeleteDestination, CustomAreaLocations, GetAllGifuAreas, CustomAreaNames, userDetials
from django.urls import path, include
from knox import views as knox_views
@ -23,7 +23,7 @@ urlpatterns += [
path('insubperf', LocationsInSubPerf, name='location_subperf'),
path('inbound', LocationInBound, name='location_bound'),
path('subperfinmain/', SubPerfInMainPerf, name="sub_perf"),
path('allgifuareas/', GetAllGifuAreas, name="custom_area"),
path('allgifuareas/', GetAllGifuAreas, name="gifu_area"),
path('perfext/', ExtentForSubPerf, name="sub_perf_ext"),
path('mainperfext/', ExtentForMainPerf, name="main_perf_ext"),
path('cats/', CatView, name='cats'),
@ -36,5 +36,7 @@ urlpatterns += [
path('destinations/', UserDestinations, name='user_destinations'),
path('updateorder/', UpdateOrder, name='updateorder'),
path('delete_destination/', DeleteDestination, name='delete_detination'),
path('custom_area/', CustomAreaLocations, name='custom_area_location')
path('customarea/', CustomAreaLocations, name='custom_area_location'),
path('customareanames/', CustomAreaNames, name='custom_area_name'),
path('userdetials/', userDetials, name='user_detials')
]

View File

@ -1,7 +1,7 @@
from django.core.serializers import serialize
from .models import Location, Location_line, Location_polygon, JpnAdminMainPerf, JpnAdminPerf, JpnSubPerf, Useractions, GifuAreas
from .models import Location, Location_line, Location_polygon, JpnAdminMainPerf, JpnAdminPerf, JpnSubPerf, Useractions, GifuAreas, RogUser, CustomUser
from rest_framework import viewsets
from .serializers import LocationSerializer, Location_lineSerializer, Location_polygonSerializer, JPN_main_perfSerializer, JPN_perfSerializer, JPN_sub_perSerializer, LocationCatSerializer, CreateUserSerializer, UserSerializer, LoginUserSerializer, UseractionsSerializer, UserDestinationSerializer, GifuAreaSerializer
from .serializers import LocationSerializer, Location_lineSerializer, Location_polygonSerializer, JPN_main_perfSerializer, JPN_perfSerializer, JPN_sub_perSerializer, LocationCatSerializer, CreateUserSerializer, UserSerializer, LoginUserSerializer, UseractionsSerializer, UserDestinationSerializer, GifuAreaSerializer, LocationEventNameSerializer, RogUserSerializer
from knox.models import AuthToken
from rest_framework import viewsets, permissions, generics
@ -37,7 +37,7 @@ class Location_polygonViewSet(viewsets.ModelViewSet):
class Jpn_Main_PerfViewSet(viewsets.ModelViewSet):
queryset=JpnAdminMainPerf.objects.all()
queryset=JpnAdminMainPerf.objects.filter(id=9)
serializer_class=JPN_main_perfSerializer
filter_fields = ["adm1_ja"]
@ -201,6 +201,15 @@ class UserAPI(generics.RetrieveAPIView):
return self.request.user
def userDetials(request):
user_id = request.GET.get('user_id')
user = CustomUser.objects.get(id=user_id)
rogUser = RogUser.objects.filter(user=user)
serializer = RogUserSerializer(rogUser, many=True)
return JsonResponse(serializer.data, safe=False)
def UserActionViewset(request):
user_id = request.GET.get('user_id')
location_id = request.GET.get('location_id')
@ -233,7 +242,7 @@ def UserDestinations(request):
user_id = request.GET.get('user_id')
user = CustomUser.objects.get(id=user_id)
#action = Useractions.objects.filter(location__id=location_id, user__id=user_id)
rec = Useractions.objects.filter(user=user, checkin=True).order_by('order')
rec = Useractions.objects.filter(user=user, wanttogo=True).order_by('order')
serializer = UserDestinationSerializer(rec, many=True)
return JsonResponse(serializer.data, safe=False)
@ -300,17 +309,23 @@ def DeleteDestination(request):
def CustomAreaLocations(request):
cat = request.GET.get('cat')
name = request.GET.get('name')
if(cat != None):
print("----res from cat")
locs = Location.objects.filter(event_name__isnull=False, category=cat)
locs = Location.objects.filter(event_name__isnull=False, category=cat, event_name=name)
else:
locs = Location.objects.filter(event_name__isnull=False)
locs = Location.objects.filter(event_name__isnull=False, event_name=name)
serializer = LocationSerializer(locs, many=True)
return JsonResponse(serializer.data, safe=False)
def CustomAreaNames(request):
locs = Location.objects.filter(event_name__isnull=False).values('event_name').distinct()
serializer = LocationEventNameSerializer(locs, many=True)
return JsonResponse(serializer.data, safe=False)
class TestActionViewSet(viewsets.ModelViewSet):
serializer_class = TestSerialiser