イベントにpublicや対応クラスなどを追加

This commit is contained in:
hayano
2024-10-21 12:48:42 +00:00
parent 6f0d8d15fd
commit b8d7029965
4 changed files with 59 additions and 16 deletions

View File

@ -87,6 +87,31 @@ from django.core.exceptions import ValidationError
logger = logging.getLogger(__name__)
@api_view(['PATCH'])
@permission_classes([IsAuthenticated])
def update_entry_status(request, entry_id):
try:
entry = Entry.objects.get(id=entry_id)
except Entry.DoesNotExist:
return Response({"error": "Entry not found"}, status=status.HTTP_404_NOT_FOUND)
# エントリーの所有者またはチームのメンバーのみが更新可能
if entry.owner != request.user and not entry.team.members.filter(user=request.user).exists():
return Response({"error": "You don't have permission to update this entry"}, status=status.HTTP_403_FORBIDDEN)
hasParticipated = request.data.get('hasParticipated')
hasGoaled = request.data.get('hasGoaled')
if hasParticipated is not None:
entry.hasParticipated = hasParticipated
if hasGoaled is not None:
entry.hasGoaled = hasGoaled
entry.save()
serializer = EntrySerializer(entry)
return Response(serializer.data)
def process_csv_upload(csv_file, event):
decoded_file = csv_file.read().decode('utf-8')
io_string = io.StringIO(decoded_file)
@ -109,7 +134,7 @@ class CSVUploadForm(forms.Form):
csv_file = forms.FileField()
class NewEvent2Admin(admin.ModelAdmin):
list_display = ['event_name', 'start_datetime', 'end_datetime']
list_display = ['event_name', 'start_datetime', 'end_datetime', 'deadlineDateTime','public']
def get_urls(self):
urls = super().get_urls()
@ -1219,9 +1244,9 @@ class TeamViewSet(viewsets.ModelViewSet):
api_url = f"{settings.FRONTEND_URL}/gifuroge/update_team_name"
headers = {"Content-Type": "application/x-www-form-urlencoded"}
data = {
"zekken_number": zekken_number,
#"zekken_number": zekken_number,
"new_team_name": team_name,
"event_code": event_code,
#"event_code": event_code,
}
try:
response = requests.post(api_url, headers=headers, data=data)