added goal apis
This commit is contained in:
@ -4,7 +4,7 @@ from django.shortcuts import render
|
|||||||
from leaflet.admin import LeafletGeoAdmin
|
from leaflet.admin import LeafletGeoAdmin
|
||||||
from leaflet.admin import LeafletGeoAdminMixin
|
from leaflet.admin import LeafletGeoAdminMixin
|
||||||
from leaflet_admin_list.admin import LeafletAdminListMixin
|
from leaflet_admin_list.admin import LeafletAdminListMixin
|
||||||
from .models import RogUser, Location, SystemSettings, JoinedEvent, Favorite, TravelList, TravelPoint, ShapeLayers, Event, Location_line, Location_polygon, JpnAdminMainPerf, JpnAdminPerf, JpnSubPerf, Useractions, CustomUser, GifuAreas, UserTracks, ShapeFileLocations, templocation, UserUpload, UserUploadUser, EventUser
|
from .models import RogUser, Location, SystemSettings, JoinedEvent, Favorite, TravelList, TravelPoint, ShapeLayers, Event, Location_line, Location_polygon, JpnAdminMainPerf, JpnAdminPerf, JpnSubPerf, Useractions, CustomUser, GifuAreas, UserTracks, ShapeFileLocations, templocation, UserUpload, UserUploadUser, EventUser, GoalImages
|
||||||
from django.contrib.auth.admin import UserAdmin
|
from django.contrib.auth.admin import UserAdmin
|
||||||
from django.urls import path
|
from django.urls import path
|
||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
@ -219,3 +219,4 @@ admin.site.register(EventUser, admin.ModelAdmin)
|
|||||||
|
|
||||||
admin.site.register(CustomUser, UserAdminConfig)
|
admin.site.register(CustomUser, UserAdminConfig)
|
||||||
admin.site.register(templocation, TempLocationAdmin)
|
admin.site.register(templocation, TempLocationAdmin)
|
||||||
|
admin.site.register(GoalImages, admin.ModelAdmin)
|
||||||
|
|||||||
27
rog/migrations/0039_goalimages.py
Normal file
27
rog/migrations/0039_goalimages.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
# Generated by Django 3.2.9 on 2022-10-17 11:39
|
||||||
|
|
||||||
|
from django.conf import settings
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('rog', '0038_auto_20221016_1950'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='GoalImages',
|
||||||
|
fields=[
|
||||||
|
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('goalimage', models.FileField(blank=True, null=True, upload_to='%y%m%d')),
|
||||||
|
('goaltime', models.DateTimeField(verbose_name='Goal time')),
|
||||||
|
('team_name', models.CharField(max_length=255, verbose_name='Team name')),
|
||||||
|
('event_code', models.CharField(max_length=255, verbose_name='event code')),
|
||||||
|
('cp_number', models.IntegerField(verbose_name='CP numner')),
|
||||||
|
('user', models.ForeignKey(on_delete=django.db.models.deletion.DO_NOTHING, to=settings.AUTH_USER_MODEL)),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
]
|
||||||
@ -201,6 +201,14 @@ class CustomUser(AbstractBaseUser, PermissionsMixin):
|
|||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.email
|
return self.email
|
||||||
|
|
||||||
|
class GoalImages(models.Model):
|
||||||
|
user=models.ForeignKey(CustomUser, on_delete=models.DO_NOTHING)
|
||||||
|
goalimage = models.FileField(upload_to='goals/%y%m%d', blank=True, null=True)
|
||||||
|
goaltime = models.DateTimeField(_("Goal time"), auto_now=False, auto_now_add=False)
|
||||||
|
team_name = models.CharField(_("Team name"), max_length=255)
|
||||||
|
event_code = models.CharField(_("event code"), max_length=255)
|
||||||
|
cp_number = models.IntegerField(_("CP numner"))
|
||||||
|
|
||||||
|
|
||||||
class RogUser(models.Model):
|
class RogUser(models.Model):
|
||||||
user=models.OneToOneField(CustomUser, on_delete=models.CASCADE)
|
user=models.OneToOneField(CustomUser, on_delete=models.CASCADE)
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
from rest_framework import serializers
|
from rest_framework import serializers
|
||||||
from rest_framework_gis.serializers import GeoFeatureModelSerializer
|
from rest_framework_gis.serializers import GeoFeatureModelSerializer
|
||||||
from sqlalchemy.sql.functions import mode
|
from sqlalchemy.sql.functions import mode
|
||||||
from .models import Location, Location_line, Location_polygon, JpnAdminMainPerf, JpnAdminPerf, JpnSubPerf, Useractions, GifuAreas, RogUser, UserTracks
|
from .models import Location, Location_line, Location_polygon, JpnAdminMainPerf, JpnAdminPerf, JpnSubPerf, Useractions, GifuAreas, RogUser, UserTracks, GoalImages
|
||||||
from drf_extra_fields.fields import Base64ImageField
|
from drf_extra_fields.fields import Base64ImageField
|
||||||
|
|
||||||
#from django.contrib.auth.models import User
|
#from django.contrib.auth.models import User
|
||||||
@ -76,6 +76,12 @@ class UserSerializer(serializers.ModelSerializer):
|
|||||||
model = CustomUser
|
model = CustomUser
|
||||||
fields = ('id','email', 'is_rogaining' ,'group', 'zekken_number', 'event_code', 'team_name')
|
fields = ('id','email', 'is_rogaining' ,'group', 'zekken_number', 'event_code', 'team_name')
|
||||||
|
|
||||||
|
class GolaImageSerializer(serializers.ModelSerializer):
|
||||||
|
goalimage = Base64ImageField(max_length=None, use_url=True)
|
||||||
|
class Meta:
|
||||||
|
model = GoalImages
|
||||||
|
fields="__all__"
|
||||||
|
|
||||||
|
|
||||||
class RogUserSerializer(serializers.ModelSerializer):
|
class RogUserSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
|
from sys import prefix
|
||||||
from rest_framework import urlpatterns
|
from rest_framework import urlpatterns
|
||||||
from rest_framework.routers import DefaultRouter
|
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, CustomAreaNames, userDetials, UserTracksViewSet, CatByCity, ChangePasswordView
|
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, UserTracksViewSet, CatByCity, ChangePasswordView, GoalImageViewSet
|
||||||
from django.urls import path, include
|
from django.urls import path, include
|
||||||
from knox import views as knox_views
|
from knox import views as knox_views
|
||||||
|
|
||||||
@ -15,6 +16,7 @@ router.register(prefix='location_polygon', viewset=Location_polygonViewSet, base
|
|||||||
router.register(prefix='perf_main', viewset=Jpn_Main_PerfViewSet, basename='main_perf')
|
router.register(prefix='perf_main', viewset=Jpn_Main_PerfViewSet, basename='main_perf')
|
||||||
router.register(prefix='perf', viewset=Jpn_PerfViewSet, basename='perf')
|
router.register(prefix='perf', viewset=Jpn_PerfViewSet, basename='perf')
|
||||||
router.register(prefix='track', viewset=UserTracksViewSet, basename='track')
|
router.register(prefix='track', viewset=UserTracksViewSet, basename='track')
|
||||||
|
router.register(prefix='goalimage', viewset=GoalImageViewSet, basename='goalimage')
|
||||||
|
|
||||||
|
|
||||||
urlpatterns = router.urls
|
urlpatterns = router.urls
|
||||||
@ -41,5 +43,6 @@ urlpatterns += [
|
|||||||
path('delete_destination/', DeleteDestination, name='delete_detination'),
|
path('delete_destination/', DeleteDestination, name='delete_detination'),
|
||||||
path('customareanames/', CustomAreaNames, name='custom_area_name'),
|
path('customareanames/', CustomAreaNames, name='custom_area_name'),
|
||||||
path('userdetials/', userDetials, name='user_detials'),
|
path('userdetials/', userDetials, name='user_detials'),
|
||||||
path('change-password/', ChangePasswordView.as_view(), name='change-password'),
|
path('change-password/', ChangePasswordView.as_view(), name='change-password')
|
||||||
|
# path('goal-image/', GoalImageViewSet.as_view(), name='goal-image')
|
||||||
]
|
]
|
||||||
45
rog/views.py
45
rog/views.py
@ -1,11 +1,11 @@
|
|||||||
from curses.ascii import NUL
|
from curses.ascii import NUL
|
||||||
from django.core.serializers import serialize
|
from django.core.serializers import serialize
|
||||||
from .models import Location, Location_line, Location_polygon, JpnAdminMainPerf, JpnAdminPerf, JpnSubPerf, Useractions, GifuAreas, RogUser, CustomUser, UserTracks
|
from .models import GoalImages, Location, Location_line, Location_polygon, JpnAdminMainPerf, JpnAdminPerf, JpnSubPerf, Useractions, GifuAreas, RogUser, CustomUser, UserTracks, GoalImages
|
||||||
from rest_framework import viewsets
|
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, LocationEventNameSerializer, RogUserSerializer, UserTracksSerializer, ChangePasswordSerializer
|
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, UserTracksSerializer, ChangePasswordSerializer, GolaImageSerializer
|
||||||
from knox.models import AuthToken
|
from knox.models import AuthToken
|
||||||
|
|
||||||
from rest_framework import viewsets, permissions, generics, status
|
from rest_framework import viewsets, generics, status
|
||||||
from rest_framework.decorators import action
|
from rest_framework.decorators import action
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
from rest_framework.parsers import JSONParser, MultiPartParser
|
from rest_framework.parsers import JSONParser, MultiPartParser
|
||||||
@ -20,6 +20,13 @@ from django.db.models import F
|
|||||||
from django.contrib.gis import geos
|
from django.contrib.gis import geos
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
|
|
||||||
|
from rest_framework import permissions
|
||||||
|
from rest_framework.views import APIView
|
||||||
|
from rest_framework.decorators import api_view
|
||||||
|
from rest_framework.decorators import api_view, permission_classes
|
||||||
|
from rest_framework.parsers import JSONParser, MultiPartParser
|
||||||
|
from django.views.decorators.csrf import csrf_exempt
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class LocationViewSet(viewsets.ModelViewSet):
|
class LocationViewSet(viewsets.ModelViewSet):
|
||||||
@ -273,6 +280,38 @@ class UserAPI(generics.RetrieveAPIView):
|
|||||||
def get_object(self):
|
def get_object(self):
|
||||||
return self.request.user
|
return self.request.user
|
||||||
|
|
||||||
|
# @api_view(['POST',])
|
||||||
|
# @permission_classes((IsAuthenticated,))
|
||||||
|
# @csrf_exempt
|
||||||
|
class GoalImageViewSet(APIView):
|
||||||
|
permissions_classes = [permissions.IsAuthenticated,]
|
||||||
|
# parser_classes = [MultiPartParser, JSONParser]
|
||||||
|
|
||||||
|
def post(self, request, format=None):
|
||||||
|
# print(request.data)
|
||||||
|
serializer = GolaImageSerializer(data=request.data)
|
||||||
|
if serializer.is_valid():
|
||||||
|
serializer.save()
|
||||||
|
return Response(serializer.data, status=status.HttP_200_OK)
|
||||||
|
else:
|
||||||
|
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
|
||||||
|
|
||||||
|
return Response({"ok":"ok"})
|
||||||
|
|
||||||
|
class GoalImageViewSet(viewsets.ModelViewSet):
|
||||||
|
queryset=GoalImages.objects.all()
|
||||||
|
serializer_class=GolaImageSerializer
|
||||||
|
# parser_classes = (MultiPartParser, JSONParser)
|
||||||
|
|
||||||
|
def get_queryset(self):
|
||||||
|
queryset = GoalImages.objects.all()
|
||||||
|
# dist = self.request.GET.get('dist')
|
||||||
|
# if dist != None :
|
||||||
|
# queryset = Incident.objects.filter(entity=dist, is_approved=True)
|
||||||
|
# else:
|
||||||
|
# queryset = Incident.objects.filter(is_approved=True)
|
||||||
|
return queryset
|
||||||
|
|
||||||
|
|
||||||
def userDetials(request):
|
def userDetials(request):
|
||||||
user_id = request.GET.get('user_id')
|
user_id = request.GET.get('user_id')
|
||||||
|
|||||||
Reference in New Issue
Block a user