def register_new_user(request): """(管理者専用)新規ユーザを登録する""" error = "" # セッション情報に管理者IDが存在するか確認。存在しなければログイン画面へ遷移 if not __is_admini_user(request): return TemplateResponse(request, URL_REBGST001, {"error": "管理者権限がありません"}) if request.method == "POST": user_id = int(request.POST.get("user_id", "")) username = request.POST.get("user_name", "") mail_address = request.POST.get("mail_address", "") if (UserDao.is_already_registered(user_id)): error = "該当ユーザIDは既に登録されております" else: UserDao.create_user(user_id, username, mail_address, INIT_PASS) # 全ユーザ情報を取得 users = UserDao.get_users() return TemplateResponse(request, URL_REBADM001, { "users": users, "error": error })
def register_reservation(request, user_id): """ 予約情報を登録する :param request: request :param mail_address: 宿泊登録者のメールアドレス :return: ユーザー一覧画面 """ if request.method == "POST": lottery_flag = request.POST.get("lottery_flag", None) check_in_date = datetime.date.fromisoformat( request.POST.get("check_in_date", "")) check_out_date = datetime.date.fromisoformat( request.POST.get("check_out_date", "")) number_of_rooms = request.POST.get("number_of_rooms", "") number_of_guests = request.POST.get("number_of_guests", "") purpose = request.POST.get("purpose", "") # 抽選フラグが"1"の場合、抽選エンティティを作成 if lottery_flag: LotDao.create_res_by_in_and_out(user_id, check_in_date, check_out_date, number_of_rooms, number_of_guests, purpose) # 抽選フラグが指定されていない場合、予約エンティティを作成 else: ResDao.create_res_by_in_and_out(user_id, check_in_date, check_out_date, number_of_rooms, number_of_guests, purpose) # 表示するユーザー情報を取得 users = UserDao.get_users() return HttpResponseRedirect(reverse('test_reservation', args=(user_id, )))
def init_admin_manage(request): """(管理者専用)管理者画面の初期表示""" # セッション情報に管理者IDが存在するか確認。存在しなければログイン画面へ遷移 if not __is_admini_user(request): return TemplateResponse(request, URL_REBGST001, {"error": "管理者権限がありません"}) # 全ユーザ情報を取得 users = UserDao.get_users() return TemplateResponse(request, URL_REBADM001, {"users": users})
def get_back_to_main_from_test_register(request, user_id): """ ユーザー登録画面からログイン画面へ遷移する :param request: request :param user_id: 宿泊者のユーザID :return: ユーザー一覧画面 """ # 表示するユーザー情報を取得 users = UserDao.get_users() return TemplateResponse(request, URL_REBGST001, {})
def get_back_to_main_from_test_register(request, mail_address): """ 予約登録画面からユーザー登録画面へ遷移する :param request: request :param mail_address: 宿泊者のメールアドレス :return: ユーザー一覧画面 """ # 表示するユーザー情報を取得 users = UserDao.get_users() json_data = JsonUtil.create_json_data(2019, 7) return TemplateResponse(request, TEST_SCREEN, {"users": users, "json_data": json_data})
def update_user(request): """(管理者専用)ユーザ情報を更新する""" # セッション情報に管理者IDが存在するか確認。存在しなければログイン画面へ遷移 if not __is_admini_user(request): return TemplateResponse(request, URL_REBGST001, {"error": "管理者権限がありません"}) if request.method == "POST": user_id = request.POST.get("user_id", "") username = request.POST.get("user_name", "") mail_address = request.POST.get("mail_address", "") UserDao.update_user_without_password(user_id, username, mail_address) # 全ユーザ情報を取得 users = UserDao.get_users() return TemplateResponse(request, URL_REBADM001, {"users": users})
def test_database(request): """ テスト用のユーザー情報を表示・登録する画面 :param request: request :return: ユーザー一覧画面 """ # POSTで情報が送られてきた場合、ユーザー情報を登録する if request.method == "POST": username = request.POST.get("username", "") mail_address = request.POST.get("mail_address", "") password = request.POST.get("password", "") UserDao.create_user(username, mail_address, password) # 一覧表示するユーザー情報を取得 users = UserDao.get_users() json_data = JsonUtil.create_json_data(2019, 7) return TemplateResponse(request, TEST_SCREEN, {"users": users, "json_data": json_data})
def delete_user(request): """(管理者専用)ユーザ情報を更新する""" # セッション情報に管理者IDが存在するか確認。存在しなければログイン画面へ遷移 if not __is_admini_user(request): return TemplateResponse(request, URL_REBGST001, {"error": "管理者権限がありません"}) if request.method == "POST": user_id = request.POST.get("user_id", "") if user_id: UserDao.delete_user_by_user_id(user_id) ResDao.delete_by_user_id(user_id) LotDao.delete_by_user_id(user_id) LodginDao.delete_by_user_id(user_id) # 全ユーザ情報を取得 users = UserDao.get_users() return TemplateResponse(request, URL_REBADM001, {"users": users})
def test_register_res(request, mail_address): """ 宿泊情報を登録する :param request: request :param mail_address: 宿泊登録者のメールアドレス :return: ユーザー一覧画面 """ if request.method == "POST": target_user = User.objects.get(mail_address=mail_address) check_in_date = request.POST.get("check_in_date", "") stay_term = request.POST.get("stay_term", "") number_of_rooms = request.POST.get("number_of_rooms", "") number_of_guests = request.POST.get("number_of_guests", "") purpose = request.POST.get("purpose", "") ResDao.create_res(target_user, check_in_date, stay_term, number_of_rooms, number_of_guests, purpose) # 表示するユーザー情報を取得 users = UserDao.get_users() return TemplateResponse(request, TEST_SCREEN, {"users": users})