diff --git a/rog/admin.py b/rog/admin.py index 5617062..bd97452 100755 --- a/rog/admin.py +++ b/rog/admin.py @@ -4,7 +4,7 @@ from django.shortcuts import render,redirect from leaflet.admin import LeafletGeoAdmin from leaflet.admin import LeafletGeoAdminMixin from leaflet_admin_list.admin import LeafletAdminListMixin -from .models import RogUser, Location, Location2025, SystemSettings, JoinedEvent, Favorite, TravelList, TravelPoint, ShapeLayers, Event, Location_line, Location_polygon, JpnAdminMainPerf, Useractions, CustomUser, GifuAreas, UserTracks, templocation, UserUpload, EventUser, GoalImages, CheckinImages, NewEvent2, Team, NewCategory, Entry, Member, TempUser, GifurogeRegister, GpsLog, GpsCheckin, Checkpoint, Waypoint +from .models import RogUser, Location2025, SystemSettings, JoinedEvent, Favorite, TravelList, TravelPoint, ShapeLayers, Event, Location_line, Location_polygon, JpnAdminMainPerf, Useractions, CustomUser, GifuAreas, UserTracks, templocation, UserUpload, EventUser, GoalImages, CheckinImages, NewEvent2, Team, NewCategory, Entry, Member, TempUser, GifurogeRegister, GpsLog, GpsCheckin, Checkpoint, Waypoint from django.contrib.auth.admin import UserAdmin from django.urls import path,reverse from django.shortcuts import render @@ -749,9 +749,9 @@ class LocationAdmin(LeafletGeoAdmin): def tranfer_to_location(modeladmin, request, queryset): tmp_locs = templocation.objects.all(); for l in tmp_locs : - found = Location.objects.filter(location_id = l.location_id).exists() + found = Location2025.objects.filter(location_id = l.location_id).exists() if found: - Location.objects.filter(location_id = l.location_id).update( + Location2025.objects.filter(location_id = l.location_id).update( sub_loc_id = l.sub_loc_id, cp = l.cp, location_name = l.location_name, @@ -794,7 +794,7 @@ def tranfer_to_location(modeladmin, request, queryset): geom=l.geom ) else: - loc = Location( + loc = Location2025( location_id=l.location_id, sub_loc_id = l.sub_loc_id, cp = l.cp, @@ -983,7 +983,6 @@ class CustomUserAdmin(UserAdmin): admin.site.register(Useractions) admin.site.register(RogUser, admin.ModelAdmin) -admin.site.register(Location, LocationAdmin) admin.site.register(SystemSettings, admin.ModelAdmin) admin.site.register(JoinedEvent, admin.ModelAdmin) admin.site.register(Favorite, admin.ModelAdmin) diff --git a/rog/management/commands/import_event_data.py b/rog/management/commands/import_event_data.py index 61bf099..ac45e8b 100644 --- a/rog/management/commands/import_event_data.py +++ b/rog/management/commands/import_event_data.py @@ -6,7 +6,7 @@ from django.db import transaction, connections from django.utils import timezone from django.conf import settings from django.contrib.auth import get_user_model -from rog.models import Member, Team, NewEvent2, Entry, Location,NewCategory #, GpsLog +from rog.models import Member, Team, NewEvent2, Entry, Location2025,NewCategory #, GpsLog CustomUser = get_user_model() logger = logging.getLogger(__name__) @@ -473,7 +473,7 @@ class Command(BaseCommand): # 4. Locationテーブルからcheckpoint_tableへの転送 self.stdout.write('checkpointデータを転送中...') - locations = Location.objects.filter(group=event.event_name) + locations = Location2025.objects.filter(group=event.event_name) # Print the number of location records location_count = locations.count() self.stdout.write(f'checkpointデータ: {location_count}件を転送中...') @@ -568,7 +568,7 @@ class Command(BaseCommand): try: # 4. Locationテーブルからcheckpoint_tableへの転送 self.stdout.write('checkpointデータを転送中...') - locations = Location.objects.filter(event=event) + locations = Location2025.objects.filter(event_id=event.id) for location in locations: cursor.execute(""" diff --git a/rog/serializers.py b/rog/serializers.py index e83cc8f..1ac5e4a 100755 --- a/rog/serializers.py +++ b/rog/serializers.py @@ -14,7 +14,7 @@ from django.db import transaction 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, Useractions, GifuAreas, RogUser, UserTracks, GoalImages, CheckinImages,CustomUser,NewEvent,NewEvent2, Team, NewCategory, Category, Entry, Member, TempUser,EntryMember, AppVersion, UploadedImage +from .models import Location2025, Location_line, Location_polygon, JpnAdminMainPerf, Useractions, GifuAreas, RogUser, UserTracks, GoalImages, CheckinImages,CustomUser,NewEvent,NewEvent2, Team, NewCategory, Category, Entry, Member, TempUser,EntryMember, AppVersion, UploadedImage from drf_extra_fields.fields import Base64ImageField #from django.contrib.auth.models import User @@ -32,7 +32,7 @@ logger = logging.getLogger(__name__) class LocationCatSerializer(serializers.ModelSerializer): class Meta: - model=Location + model=Location2025 fields=['category',] @@ -44,7 +44,7 @@ class LocationSerializer(GeoFeatureModelSerializer): interaction_instructions = serializers.SerializerMethodField() class Meta: - model=Location + model=Location2025 geo_field='geom' fields="__all__" @@ -326,7 +326,7 @@ class UserDestinationSerializer(serializers.ModelSerializer): class LocationEventNameSerializer(serializers.ModelSerializer): class Meta: - model = Location + model = Location2025 fields = ('id', 'event_name',) diff --git a/rog/views.py b/rog/views.py index 7361278..a86e19b 100755 --- a/rog/views.py +++ b/rog/views.py @@ -35,7 +35,7 @@ from .permissions import IsTeamOwner,IsTeamOwnerOrMember from curses.ascii import NUL from django.core.serializers import serialize -from .models import GoalImages, Location, Location_line, Location_polygon, JpnAdminMainPerf, Useractions, GifuAreas, RogUser, CustomUser, UserTracks, GoalImages, CheckinImages, NewEvent,NewEvent2, Team, Category, NewCategory,Entry, Member, TempUser, EntryMember, GpsCheckin +from .models import GoalImages, Location2025, Location_line, Location_polygon, JpnAdminMainPerf, Useractions, GifuAreas, RogUser, CustomUser, UserTracks, GoalImages, CheckinImages, NewEvent,NewEvent2, Team, Category, NewCategory,Entry, Member, TempUser, EntryMember, GpsCheckin from rest_framework import viewsets from .serializers import LocationSerializer, Location_lineSerializer, Location_polygonSerializer, JPN_main_perfSerializer, LocationCatSerializer, UserSerializer, LoginUserSerializer, UseractionsSerializer, UserDestinationSerializer, GifuAreaSerializer, LocationEventNameSerializer, RogUserSerializer, UserTracksSerializer, ChangePasswordSerializer, GolaImageSerializer, CheckinImageSerializer, RegistrationSerializer, MemberWithUserSerializer,TempUserRegistrationSerializer, PasswordResetRequestSerializer, PasswordResetConfirmSerializer from knox.models import AuthToken @@ -237,12 +237,12 @@ class NewEvent2Admin(admin.ModelAdmin): class LocationViewSet(viewsets.ModelViewSet): - queryset=Location.objects.all() + queryset=Location2025.objects.all() serializer_class=LocationSerializer filter_fields=["prefecture", "location_name"] def get_queryset(self): - queryset = Location.objects.all() + queryset = Location2025.objects.all() # リクエストパラメータの確認 group_filter = self.request.query_params.get('group__contains') @@ -390,25 +390,25 @@ def LocationsInPerf(request): if(cat): if is_rog: if grp: - locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat, group__contains=grp) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat, group__contains=grp) else: - locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat) else: if grp: - locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, group__contains=grp, location_name__contains='観光') + locs = Location2025.objects.filter(geom__within=perf_geom.geom, category=cat, group__contains=grp, location_name__contains='観光') else: - locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, location_name__contains='観光') + locs = Location2025.objects.filter(geom__within=perf_geom.geom, category=cat, location_name__contains='観光') else: if is_rog: if grp: - locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, group__contains=grp) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, group__contains=grp) else: - locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=perf_geom.geom) else: if grp: - locs = Location.objects.filter(geom__within=perf_geom.geom, group__contains=grp, location_name__contains='観光') + locs = Location2025.objects.filter(geom__within=perf_geom.geom, group__contains=grp, location_name__contains='観光') else: - locs = Location.objects.filter(geom__within=perf_geom.geom, location_name__contains='観光') + locs = Location2025.objects.filter(geom__within=perf_geom.geom, location_name__contains='観光') serializer = LocationSerializer(locs, many=True) return JsonResponse(serializer.data, safe=False) @@ -423,22 +423,22 @@ def LocationsInSubPerf(request): if(cat): if is_rog: if grp: - locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat, group__contains=grp) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat, group__contains=grp) else: - locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, category=cat) else: if grp: - locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, group__contains=grp, location_name__contains='観光') + locs = Location2025.objects.filter(geom__within=perf_geom.geom, category=cat, group__contains=grp, location_name__contains='観光') else: - locs = Location.objects.filter(geom__within=perf_geom.geom, category=cat, location_name__contains='観光') + locs = Location2025.objects.filter(geom__within=perf_geom.geom, category=cat, location_name__contains='観光') else: if is_rog: if grp: - locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, group__contains=grp) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=perf_geom.geom, group__contains=grp) else: - locs = Location.objects.filter(~Q(cp=0), geom__within=perf_geom.geom) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=perf_geom.geom) else: - locs = Location.objects.filter(geom__within=perf_geom.geom, location_name__contains='観光') + locs = Location2025.objects.filter(geom__within=perf_geom.geom, location_name__contains='観光') serializer = LocationSerializer(locs, many=True) return JsonResponse(serializer.data, safe=False) @@ -490,7 +490,7 @@ def LocationInBound(request): # 10km四方の領域を指定 distance_from_point = 40000 # 中心から10km(半径) - base_query = Location.objects.filter( + base_query = Location2025.objects.filter( geom__distance_lte=(current_point, D(m=distance_from_point)) ).annotate(distance=Distance('geom', current_point)).order_by('distance') @@ -536,13 +536,13 @@ def LocationInBound2(request): if lat is not None and lon is not None: if grp: # grpがある場合、最初に絞り込む - base_query = Location.objects.filter(group__contains=grp) + base_query = Location2025.objects.filter(group__contains=grp) else: current_point = Point(lon, lat, srid=4326) # 10km四方の領域を指定 distance_from_point = 40000 # 中心から10km(半径) - base_query = Location.objects.filter( + base_query = Location2025.objects.filter( geom__distance_lte=(current_point, D(m=distance_from_point)) ).annotate(distance=Distance('geom', current_point)).order_by('distance') @@ -592,7 +592,7 @@ def LocationInBound_orig(request): pl = geos.Polygon(((lon1, lat1), (lon2, lat2), (lon3, lat3), (lon4, lat4), (lon1, lat1)), srid=4326) logger.debug(f"Created polygon: {pl}") - base_query = Location.objects.filter(geom__within=pl, event_name__isnull=True) + base_query = Location2025.objects.filter(geom__within=pl, event_name__isnull=True) if cat: base_query = base_query.filter(category=cat) @@ -617,25 +617,25 @@ def LocationInBound_orig(request): if(cat): if is_rog: if grp: - locs = Location.objects.filter(~Q(cp=0), geom__within=pl, category=cat, event_name__isnull=True, group__contains=grp) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=pl, category=cat, event_name__isnull=True, group__contains=grp) else: - locs = Location.objects.filter(~Q(cp=0), geom__within=pl, category=cat, event_name__isnull=True) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=pl, category=cat, event_name__isnull=True) else: if grp: - locs = Location.objects.filter(geom__within=pl, category=cat, event_name__isnull=True, group__contains=grp, location_name__contains='観光') + locs = Location2025.objects.filter(geom__within=pl, category=cat, event_name__isnull=True, group__contains=grp, location_name__contains='観光') else: - locs = Location.objects.filter(geom__within=pl, category=cat, event_name__isnull=True, location_name__contains='観光') + locs = Location2025.objects.filter(geom__within=pl, category=cat, event_name__isnull=True, location_name__contains='観光') else: if is_rog: if grp: - locs = Location.objects.filter(~Q(cp=0), geom__within=pl, event_name__isnull=True, group__contains=grp) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=pl, event_name__isnull=True, group__contains=grp) else: - locs = Location.objects.filter(~Q(cp=0), geom__within=pl, event_name__isnull=True) + locs = Location2025.objects.filter(~Q(cp=0), geom__within=pl, event_name__isnull=True) else: if grp: - locs = Location.objects.filter(geom__within=pl, event_name__isnull=True, group__contains=grp, location_name__contains='観光') + locs = Location2025.objects.filter(geom__within=pl, event_name__isnull=True, group__contains=grp, location_name__contains='観光') else: - locs = Location.objects.filter(geom__within=pl, event_name__isnull=True, location_name__contains='観光') + locs = Location2025.objects.filter(geom__within=pl, event_name__isnull=True, location_name__contains='観光') ''' if len(locs) > 200: @@ -695,7 +695,7 @@ def ExtentForLocations(request): return JsonResponse({"error": "No event code associated with the user"}, status=status.HTTP_400_BAD_REQUEST) try: - locs = Location.objects.filter(group__contains=ec).aggregate(Extent('geom'), Union('geom')) + locs = Location2025.objects.filter(group__contains=ec).aggregate(Extent('geom'), Union('geom')) if not locs['geom__extent']: logger.info(f"No locations found for event_code: {ec}") @@ -708,7 +708,7 @@ def ExtentForLocations(request): logger.error(f"Error in ExtentForLocations: {str(e)}", exc_info=True) return JsonResponse({"error": "An error occurred while processing your request"}, status=status.HTTP_500_INTERNAL_SERVER_ERROR) - #locs = Location.objects.filter(group__contains=ec).aggregate(Extent('geom'), Union('geom')) + #locs = Location2025.objects.filter(group__contains=ec).aggregate(Extent('geom'), Union('geom')) #return JsonResponse(locs['geom__extent'], safe=False) @@ -747,15 +747,15 @@ def CatView(request): if(lat1 != None and lon1 != None and lat2 != None and lon2 != None and lat3 != None and lon3 != None and lat4 != None and lon4 != None): pl = geos.Polygon(((lon1, lat1), (lon2, lat2), (lon3, lat3), (lon4, lat4), (lon1, lat1)), srid=4326) - #locs = Location.objects.filter(geom__within=pl) - c = Location.objects.filter(geom__within=pl).values('category').distinct() + #locs = Location2025.objects.filter(geom__within=pl) + c = Location2025.objects.filter(geom__within=pl).values('category').distinct() serializer = LocationCatSerializer(c, many=True) return JsonResponse(serializer.data, safe=False) else: return null - c = Location.objects.filter().values('category').distinct() + c = Location2025.objects.filter().values('category').distinct() serializer = LocationCatSerializer(c, many=True) return JsonResponse(serializer.data, safe=False) @@ -764,7 +764,7 @@ def CatByCity(request): city = request.GET.get('city') if(city != None): cilt_polygon = JpnSubPerf.objects.filter(adm1_ja=city) - cats = Location.objects.filter(geom__within=cilt_polygon[0].geom).values('category').distinct() + cats = Location2025.objects.filter(geom__within=cilt_polygon[0].geom).values('category').distinct() serializer = LocationCatSerializer(cats, many=True) return JsonResponse(serializer.data, safe=False) else: @@ -1042,7 +1042,7 @@ def DeleteAccount(request): def UserActionViewset(request): user_id = request.GET.get('user_id') location_id = request.GET.get('location_id') - location = Location.objects.get(location_id=location_id) + location = Location2025.objects.get(location_id=location_id) user = CustomUser.objects.get(id=user_id) action = Useractions.objects.filter(location=location, user=user) serializer = UseractionsSerializer(action, many=True) @@ -1055,7 +1055,7 @@ def UserMakeActionViewset(request): wanttogo = True if request.GET.get('wanttogo') == "true" else False like = True if request.GET.get('like') == "true" else False checkin = True if request.GET.get('checkin') == "true" else False - location = Location.objects.get(location_id=location_id) + location = Location2025.objects.get(location_id=location_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, location=location) @@ -1145,32 +1145,32 @@ def CustomAreaLocations(request): if(cat != None): if is_rog: if grp: - locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, category=cat, event_name=name, group__contains=grp) + locs = Location2025.objects.filter(~Q(cp=0), event_name__isnull=False, category=cat, event_name=name, group__contains=grp) else: - locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, category=cat, event_name=name) + locs = Location2025.objects.filter(~Q(cp=0), event_name__isnull=False, category=cat, event_name=name) else: if grp: - locs = Location.objects.filter(event_name__isnull=False, category=cat, event_name=name, group__contains=grp, location_name__contains='観光') + locs = Location2025.objects.filter(event_name__isnull=False, category=cat, event_name=name, group__contains=grp, location_name__contains='観光') else: - locs = Location.objects.filter(event_name__isnull=False, category=cat, event_name=name, location_name__contains='観光') + locs = Location2025.objects.filter(event_name__isnull=False, category=cat, event_name=name, location_name__contains='観光') else: if is_rog: if grp: - locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, event_name=name, group__contains=grp) + locs = Location2025.objects.filter(~Q(cp=0), event_name__isnull=False, event_name=name, group__contains=grp) else: - locs = Location.objects.filter(~Q(cp=0), event_name__isnull=False, event_name=name) + locs = Location2025.objects.filter(~Q(cp=0), event_name__isnull=False, event_name=name) else: if grp: - locs = Location.objects.filter(event_name__isnull=False, event_name=name, group__contains=grp, location_name__contains='観光') + locs = Location2025.objects.filter(event_name__isnull=False, event_name=name, group__contains=grp, location_name__contains='観光') else: - locs = Location.objects.filter(event_name__isnull=False, event_name=name, location_name__contains='観光') + locs = Location2025.objects.filter(event_name__isnull=False, event_name=name, location_name__contains='観光') 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() + locs = Location2025.objects.filter(event_name__isnull=False).values('event_name').distinct() serializer = LocationEventNameSerializer(locs, many=True) return JsonResponse(serializer.data, safe=False) @@ -2720,7 +2720,7 @@ def get_checkins(request, *args, **kwargs): data = [] for c in checkins: - location = Location.objects.filter(cp=c.cp_number,group=event_code).first() + location = Location2025.objects.filter(cp=c.cp_number,group=event_code).first() # チェックイン画像を取得 checkin_image = None diff --git a/rog/views_apis/api_edit.py b/rog/views_apis/api_edit.py index f9227c2..383514f 100755 --- a/rog/views_apis/api_edit.py +++ b/rog/views_apis/api_edit.py @@ -4,7 +4,7 @@ from datetime import datetime, timezone from rest_framework.decorators import api_view from rest_framework.response import Response from rest_framework import status -from rog.models import Location, NewEvent2, Entry, GpsLog +from rog.models import Location2025, NewEvent2, Entry, GpsLog import logging import uuid import os @@ -332,8 +332,8 @@ def add_checkin(request): # イベントのチェックポイント定義を確認(必要に応じて) event_cp = None try: - event_cp = Location.objects.filter( - event=event, + event_cp = Location2025.objects.filter( + event_id=event.id, cp_number=cp_number ).first() except: @@ -812,9 +812,9 @@ def calculate_team_score(entry): # チェックポイントの得点を取得 cp_point = 0 try: - # Location モデルが存在する場合はそこから得点を取得 - event_cp = Location.objects.filter( - event=entry.event, + # Location2025 モデルが存在する場合はそこから得点を取得 + event_cp = Location2025.objects.filter( + event_id=entry.event.id, cp_number=cp.cp_number ).first() if event_cp: @@ -1057,17 +1057,17 @@ def get_checkin_list(request): "is_service_checked": cp.is_service_checked if hasattr(cp, 'is_service_checked') else False } - # チェックポイントの得点情報を取得( Location モデルがある場合) + # チェックポイントの得点情報を取得( Location2025 モデルがある場合) try: - event_cp = Location.objects.filter( - event=event, + event_cp = Location2025.objects.filter( + event_id=event.id, cp_number=cp.cp_number ).first() if event_cp: checkpoint_data["cp_point"] = event_cp.cp_point checkpoint_data["cp_name"] = event_cp.cp_name - checkpoint_data["is_service_cp"] = event_cp.is_service_cp + checkpoint_data["is_service_cp"] = event_cp.buy_point > 0 # buy_pointが0より大きい場合はサービスポイント except: # Location モデルが存在しない場合はスキップ pass @@ -1327,15 +1327,15 @@ def get_yet_check_service_list(request): is_service_cp = False try: - event_cp = Location.objects.filter( - event=event, + event_cp = Location2025.objects.filter( + event_id=event.id, cp_number=cp.cp_number ).first() - if event_cp and event_cp.is_service_cp: + if event_cp and event_cp.buy_point > 0: # buy_pointが0より大きい場合はサービスポイント is_service_cp = True except: - # Location モデルがない場合は、チェックポイントのプロパティだけで判断 + # Location2025 モデルがない場合は、チェックポイントのプロパティだけで判断 pass # サービスチェックが必要なチェックポイントならリストに追加 diff --git a/rog/views_apis/api_play.py b/rog/views_apis/api_play.py index 9f63fa1..49dc6e1 100755 --- a/rog/views_apis/api_play.py +++ b/rog/views_apis/api_play.py @@ -172,7 +172,7 @@ def get_checkpoint_list(request): }, status=status.HTTP_404_NOT_FOUND) # イベントのチェックポイント情報を取得 - checkpoints = Location2025.objects.filter(event=event).order_by('cp_number') + checkpoints = Location2025.objects.filter(event_id=event.id).order_by('cp_number') checkpoint_list = [] for cp in checkpoints: @@ -183,7 +183,7 @@ def get_checkpoint_list(request): "latitude": cp.latitude, "longitude": cp.longitude, "cp_description": cp.description, - "is_service_cp": cp.is_service_cp + "is_service_cp": cp.buy_point > 0 # buy_pointが0より大きい場合はサービスポイント } checkpoint_list.append(checkpoint_info) diff --git a/rog/views_apis/api_routes.py b/rog/views_apis/api_routes.py index 0b07898..529ff39 100755 --- a/rog/views_apis/api_routes.py +++ b/rog/views_apis/api_routes.py @@ -2,7 +2,7 @@ from rest_framework.decorators import api_view from rest_framework.response import Response from rest_framework import status -from rog.models import NewEvent2, Entry, Location, GpsLog +from rog.models import NewEvent2, Entry, Location2025, GpsLog import logging from django.db.models import F, Q from django.conf import settings @@ -166,8 +166,8 @@ def top_users_routes(request): # チェックポイントの座標情報を取得 try: - event_cp = Location.objects.filter( - event=event, + event_cp = Location2025.objects.filter( + event_id=event.id, cp_number=cp.cp_number ).first() @@ -469,7 +469,7 @@ def generate_route_image(request): # チェックポイント情報の取得(座標) cp_locations = {} try: - event_cps = Location.objects.filter(event=event) + event_cps = Location2025.objects.filter(event_id=event.id) for cp in event_cps: if cp.latitude is not None and cp.longitude is not None: diff --git a/rog/views_apis/api_scoreboard.py b/rog/views_apis/api_scoreboard.py index face97d..78e47dc 100755 --- a/rog/views_apis/api_scoreboard.py +++ b/rog/views_apis/api_scoreboard.py @@ -7,7 +7,7 @@ pip install openpyxl # 既存のインポート部分に追加 from rest_framework.decorators import api_view from django.http import HttpResponse, FileResponse -from rog.models import Location, NewEvent2, Entry, GpsLog +from rog.models import Location2025, NewEvent2, Entry, GpsLog import logging import openpyxl from openpyxl.styles import Font, Alignment, PatternFill, Border, Side @@ -96,7 +96,7 @@ def get_scoreboard(request): # イベントのチェックポイント定義を取得 cp_definitions = {} try: - event_cps = Location.objects.filter(event=event) + event_cps = Location2025.objects.filter(event_id=event.id) for cp in event_cps: cp_definitions[cp.cp_number] = { @@ -106,7 +106,7 @@ def get_scoreboard(request): 'longitude': cp.longitude } except: - # Locationモデルが存在しない場合 + # Location2025モデルが存在しない場合 pass # スタート・ゴール情報を取得 @@ -457,7 +457,7 @@ def download_scoreboard(request): # イベントのチェックポイント定義を取得 cp_definitions = {} try: - event_cps = Location.objects.filter(event=event) + event_cps = Location2025.objects.filter(event_id=event.id) for cp in event_cps: cp_definitions[cp.cp_number] = { @@ -467,7 +467,7 @@ def download_scoreboard(request): 'longitude': cp.longitude } except: - # Locationモデルが存在しない場合 + # Location2025モデルが存在しない場合 pass # スタート・ゴール情報を取得 diff --git a/rog/views_apis/api_waypoint.py b/rog/views_apis/api_waypoint.py index 8ebfc2a..669f7d2 100755 --- a/rog/views_apis/api_waypoint.py +++ b/rog/views_apis/api_waypoint.py @@ -2,7 +2,7 @@ from rest_framework.decorators import api_view from rest_framework.response import Response from rest_framework import status -from rog.models import NewEvent2, Entry, Location, GpsLog +from rog.models import NewEvent2, Entry, Location2025, GpsLog import logging from django.db.models import F, Q from django.conf import settings @@ -362,10 +362,10 @@ def get_route(request): "is_service_checked": getattr(cp, 'is_service_checked', False) } - # チェックポイントの座標情報を取得(Locationモデルがある場合) + # チェックポイントの座標情報を取得(Location2025モデルがある場合) try: - event_cp = Location.objects.filter( - event=event, + event_cp = Location2025.objects.filter( + event_id=event.id, cp_number=cp.cp_number ).first() @@ -853,8 +853,8 @@ def get_all_routes(request): # チェックポイントの座標情報を取得 try: - event_cp = Location.objects.filter( - event=event, + event_cp = Location2025.objects.filter( + event_id=event.id, cp_number=cp.cp_number ).first() diff --git a/supervisor/html/index.html b/supervisor/html/index.html index 5fadbc0..7cc1e25 100755 --- a/supervisor/html/index.html +++ b/supervisor/html/index.html @@ -1027,8 +1027,8 @@ `` - : ''} + onerror="this.style.display='none'; this.parentElement.innerHTML='
画像なし
'">` + : '
画像なし
'}
${checkin.sub_loc_id}