@login_required(login_url='login') def admin_ticket_info(request): is_superuser(request.user.id) all_ticket_items = TicketItem.objects.all().values('id', 'flight_name', 'flight_date', 'flight_capacity', 'flight_booked_seats', 'flight_remained_seats', 'flight_price', 'depart_city', 'arrive_city', 'depart_airport', 'arrive_airport', 'depart_time', 'arrive_time', 'checkinitem__checkin_windows', 'checkinitem__boarding_port') return render(request, 'AdminTicketInfo.html', {'all_items': all_ticket_items})

@login_required(login_url='login') def admin_search_ticket(request): is_superuser(request.user.id) flight_name = request.POST['search_flight_name'] flight_date = request.POST['search_flight_date'] flight_capacity = request.POST['search_flight_capacity'] flight_booked_seats = request.POST['search_flight_booked_seats'] flight_remained_seats = request.POST['search_flight_remained_seats'] flight_price = request.POST['search_flight_price'] depart_city = request.POST['search_depart_city'] arrive_city = request.POST['search_arrive_city'] depart_airport = request.POST['search_depart_airport'] arrive_airport = request.POST['search_arrive_airport'] depart_time = request.POST['search_depart_time'] arrive_time = request.POST['search_arrive_time'] checkin_windows = request.POST['search_checkin_windows'] boarding_port = request.POST['search_boarding_port'] all_ticket_items = TicketItem.objects.all().values('flight_name', 'flight_date', 'flight_capacity', 'flight_booked_seats', 'flight_remained_seats', 'flight_price', 'depart_city', 'arrive_city', 'depart_airport', 'arrive_airport', 'depart_time', 'arrive_time', 'checkinitem__checkin_windows', 'checkinitem__boarding_port') if flight_name: all_ticket_items = all_ticket_items.filter(flight_name=flight_name) if flight_date: all_ticket_items = all_ticket_items.filter(flight_date=flight_date) if flight_capacity: all_ticket_items = all_ticket_items.filter(flight_capacity=flight_capacity) if flight_booked_seats: all_ticket_items = all_ticket_items.filter(flight_booked_seats=flight_booked_seats) if flight_remained_seats: all_ticket_items = all_ticket_items.filter(flight_remained_seats=flight_remained_seats) if flight_price: all_ticket_items = all_ticket_items.filter(flight_price=flight_price) if depart_city: all_ticket_items = all_ticket_items.filter(depart_city=depart_city) if arrive_city: all_ticket_items = all_ticket_items.filter(arrive_city=arrive_city) if depart_airport: all_ticket_items = all_ticket_items.filter(depart_airport=depart_airport) if arrive_airport: all_ticket_items = all_ticket_items.filter(arrive_airport=arrive_airport) if depart_time: all_ticket_items = all_ticket_items.filter(depart_time=depart_time) if arrive_time: all_ticket_items = all_ticket_items.filter(arrive_time=arrive_time) if checkin_windows: all_ticket_items = all_ticket_items.filter(checkinitem__checkin_windows=checkin_windows) if boarding_port: all_ticket_items = all_ticket_items.filter(checkinitem__boarding_port=boarding_port) return render(request, 'AdminTicketInfo.html', {'all_items': all_ticket_items})

@login_required(login_url='login') def admin_add_ticket(request): is_superuser(request.user.id) flight_name = request.POST['add_flight_name'] flight_date = request.POST['add_flight_date'] flight_capacity = request.POST['add_flight_capacity'] flight_booked_seats = request.POST['add_flight_booked_seats'] flight_remained_seats = request.POST['add_flight_remained_seats'] flight_price = request.POST['add_flight_price'] depart_city = request.POST['add_depart_city'] arrive_city = request.POST['add_arrive_city'] depart_airport = request.POST['add_depart_airport'] arrive_airport = request.POST['add_arrive_airport'] depart_time = request.POST['add_depart_time'] arrive_time = request.POST['add_arrive_time'] checkin_windows = request.POST['add_checkin_windows'] boarding_port = request.POST['add_boarding_port'] ticket_item = TicketItem(flight_name=flight_name, flight_date=flight_date, flight_capacity=flight_capacity, flight_booked_seats=flight_booked_seats, flight_remained_seats=flight_remained_seats, flight_price=flight_price, depart_city=depart_city, arrive_city=arrive_city, depart_airport=depart_airport, arrive_airport=arrive_airport, depart_time=depart_time, arrive_time=arrive_time) ticket_item.save() checkin_item = CheckinItem(ticket_id=ticket_item, checkin_windows=checkin_windows, boarding_port=boarding_port) checkin_item.save() return HttpResponseRedirect('/adminTicketInfo/')

@login_required(login_url='login') def admin_update_ticket(request, ticket_id): is_superuser(request.user.id) flight_name = request.POST['update_flight_name_'+str(ticket_id)] flight_date = request.POST['update_flight_date_'+str(ticket_id)] flight_capacity = request.POST['update_flight_capacity_'+str(ticket_id)] flight_booked_seats = request.POST['update_flight_booked_seats_'+str(ticket_id)] flight_remained_seats = request.POST['update_flight_remained_seats_'+str(ticket_id)] flight_price = request.POST['update_flight_price_'+str(ticket_id)] depart_city = request.POST['update_depart_city_'+str(ticket_id)] arrive_city = request.POST['update_arrive_city_'+str(ticket_id)] depart_airport = request.POST['update_depart_airport_'+str(ticket_id)] arrive_airport = request.POST['update_arrive_airport_'+str(ticket_id)] depart_time = request.POST['update_depart_time_'+str(ticket_id)] arrive_time = request.POST['update_arrive_time_'+str(ticket_id)] checkin_windows = request.POST['update_checkin_windows_'+str(ticket_id)] boarding_port = request.POST['update_boarding_port_'+str(ticket_id)] ticket_item = TicketItem(id=ticket_id, flight_name=flight_name, flight_date=flight_date, flight_capacity=flight_capacity, flight_booked_seats=flight_booked_seats, flight_remained_seats=flight_remained_seats, flight_price=flight_price, depart_city=depart_city, arrive_city=arrive_city, depart_airport=depart_airport, arrive_airport=arrive_airport, depart_time=depart_time, arrive_time=arrive_time) ticket_item.save() checkin_item = CheckinItem.objects.get(ticket_id=ticket_item) checkin_item = CheckinItem(id=checkin_item.id, ticket_id=ticket_item, checkin_windows=checkin_windows, boarding_port=boarding_port) checkin_item.save() return HttpResponseRedirect('/adminTicketInfo/')

@login_required(login_url='login') def admin_delete_ticket(request, ticket_id): is_superuser(request.user.id) item = TicketItem.objects.get(id=ticket_id) item.delete() return HttpResponseRedirect('/adminTicketInfo/')

这段代码定义了四个视图函数,用于管理员对机票信息进行管理。其中包括查看所有机票信息、搜索机票信息、添加机票信息以及更新和删除机票信息。在每个视图函数中都有对用户权限的检查,只有超级用户才能进行相应的操作。其中,查看所有机票信息和搜索机票信息的实现比较相似,都是获取请求中的筛选条件,并返回符合条件的机票信息。添加机票信息的实现是创建一个新的TicketItem对象和CheckinItem对象,并将其保存到数据库中。更新机票信息的实现是根据ticket_id获取TicketItem对象和对应的CheckinItem对象,并根据请求中的数据更新其属性值,然后将其保存到数据库中。删除机票信息的实现是根据ticket_id获取对应的TicketItem对象,并将其从数据库中删除。最后,每个视图函数都会返回相应的HTML页面和机票信息。

机票管理系统 - 管理员后台

原文地址: https://www.cveoy.top/t/topic/oAJ5 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录