def delete(kassir_id): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': return render_template("/kassirs/delete.html", kassir_id=kassir_id) else: if request.form['submit'] == 'Нет': return redirect(url_for('kassirs.get_all')) if request.form['submit'] == 'Да': #kassir_id = request.args["kassir_id"] result = do_delete_kassir(kassir_id, request.cookies) if result.success: if result.response.status_code == 204: flash('Кассир успешно уволен', "info") response = redirect(url_for('kassirs.get_all')) return response elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash("Кассир не найден", "error") return redirect(url_for('kassirs.get_all')) else: flash(result.error, "error") return redirect(url_for('kassirs.get_all'))
def ret(): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': car_id = request.args['car_id'] return render_template("/cars/ret.html", car_id=car_id) else: if request.form['submit'] == 'Нет': return redirect(url_for('mehs.get_all')) if request.form['submit'] == 'Да': car_id = request.args['car_id'] result = do_return_car(car_id, request.cookies) if result.success: if result.response.status_code == 204: flash('Возврат машины успешно произведен', 'info') return redirect(url_for('menu.index')) elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash('Возврат машины не может быть произведен', 'error') return redirect(url_for('menu.index')) else: flash(result.error, 'error') return redirect(url_for('menu.index'))
def get(): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': return render_template("/kassirs/get.html", kassir_found=False) else: if 'kassir_id' not in request.form or request.form['kassir_id'] == '': flash('Идентификатор не задан', "error") return redirect(url_for('kassirs.get')) else: kassir_id = request.form["kassir_id"] result = do_get_kassir(kassir_id, request.cookies) if result.success: if result.response.status_code == 200: kassir = json.loads(result.response.content) return render_template("/kassirs/get.html", kassir=kassir, kassir_found=True) elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash("Кассир не найден", "error") return redirect(url_for('kassirs.get')) else: flash(result.error, "error") return redirect(url_for('kassirs.get'))
def get_all(): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': if 'page' not in request.args: return redirect(url_for('users.get_all', page=1)) page = request.args.get('page', 1, type=int) result = do_get_paginated_user(page, 10, request.cookies) if result.success: if result.response.status_code == 200: users_obj = result.response.content users_str = (str(users_obj)).split('\\n') n = len(users_str) users_str[0] = users_str[0][2:] users = [] users_str[n-1] = users_str[n-1][0:-1] dictr = json.loads(users_str[n-1]) users_str.remove(users_str[n-1]) for user in users_str: if user != "": user1 = bytes(user, 'utf8') users.append(json.loads(user1)) return render_template("/users/get_all.html", users=users, prev_url=dictr['is_prev_page'], next_url=dictr['is_next_page'], next_page=page+1, prev_page=page-1) elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash("Потзователь не найден", "error") return redirect(url_for('users.index')) else: flash(result.error, "error") return redirect(url_for('users.index'))
def get(mag_id): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': result = do_get_mag(mag_id, request.cookies) if result.success: if result.response.status_code == 200: tmp = str(result.response.content) list_sm = tmp.split('\\n') mag = list_sm[0] mag = mag[2:] kassir = list_sm[1] kassir = kassir[0:-1] mag_d = json.loads(mag) datetime = str(mag_d["datetime"]).split("_") date = datetime[0] time = datetime[1] dictionary = {"date": date, "time": time} ar = mag_d["seats"] kassir_d = json.loads(kassir) return render_template("/mags/get.html", mag=mag_d, kassir=kassir_d, seats=ar, datetime=dictionary, number_of_seats=len(ar) + 1) elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash('Ошибка. Кассира магазина не существует.', "error") return redirect(url_for('mags.get_all'), "error") else: flash(result.error, "error") return redirect(url_for('mags.get_all'), "error")
def get_all(): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': if 'page' not in request.args: return redirect(url_for('mags.get_all', page=1)) page = request.args.get('page', 1, type=int) result = do_get_paginated_mag(page, 10, request.cookies) if result.success: if result.response.status_code == 200: mags_obj = result.response.content mags_str = (str(mags_obj)).split('\\n') n = len(mags_str) mags_str[0] = mags_str[0][2:] mags_str[n - 1] = mags_str[n - 1][0:-1] mags = [] dictr = json.loads(mags_str[n - 1]) mags_str.remove(mags_str[n - 1]) for mag in mags_str: if mag != "": mag1 = json.loads(bytes(mag, 'utf8')) ar = mag1["seats"] number_of_seats = len(ar) number_of_free_seats = 0 for item in ar: if item: number_of_free_seats = number_of_free_seats + 1 datetime = str(mag1["datetime"]).split("_") date = datetime[0] time = datetime[1] dictionary = { "mag_id": mag1["mag_id"], "kassir_id": mag1["kassir_id"], "number_of_seats": number_of_seats, "number_of_free_seats": number_of_free_seats, "date": date, "time": time } mags.append(dictionary) return render_template("/mags/get_all.html", mags=mags, prev_url=dictr['is_prev_page'], next_url=dictr['is_next_page'], next_page=page + 1, prev_page=page - 1) elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash("Магазины не найдены", "error") return redirect(url_for('mags.index')) else: flash(result.error, "error") return redirect(url_for('mags.index'))
def create(): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': if 'kassir_id' in request.args: kassir_id = request.args['kassir_id'] return render_template("/mags/create.html", kassir_id=kassir_id) else: failed = False if 'number_of_seats' not in request.form or request.form[ 'number_of_seats'] == '': flash('Количество товара не задано', "error") failed = True try: number_of_seats = int(request.form['number_of_seats']) except: flash('Количество товара выражается числом', 'error') return render_template("/mags/create.html", kassir_id=request.args['kassir_id']) if 'date' not in request.form or request.form['date'] == '': flash('Дата не задана', "error") failed = True if 'time' not in request.form or request.form['time'] == '': flash('Время задано', "error") failed = True date_time = request.form['date'] + '_' + request.form['time'] if failed: return render_template("/mags/create.html", kassir_id=request.args['kassir_id']) result = do_create_mag(request.args['kassir_id'], number_of_seats, date_time, request.cookies) if result.success: if result.response.status_code == 201: flash('Витрина в магазине успешно создана', "info") response = redirect('kassirs/get_all') return response elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: st = result.response.content.decode('utf-8') if st == '': st = str(result.response.content) flash(st, "error") return redirect(url_for('kassirs.get_all')) else: flash(result.error) return redirect(url_for('kassirs/get_all'), "error")
def add(): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': result = do_get_paginated_fix(1, 100, request.cookies) if result.success: if result.response.status_code == 200: fixes_obj = result.response.content fixes_str = (str(fixes_obj)).split('\\n') n = len(fixes_str) fixes_str[0] = fixes_str[0][2:] fixes_str[n - 1] = fixes_str[n - 1][0:-1] fixes = [] fixes_str.remove(fixes_str[n - 1]) for fix in fixes_str: if fix != "": fixl = json.loads(bytes(fix, 'utf8')) ar = fixl["car_ids"] ar1 = fixl["meh_ids"] number_of_mehs = len(ar1) number_of_cars = len(ar) datetime = str(fixl["datetime"]) dictionary = { "fix_id": fixl["fix_id"], "number_of_mehs": number_of_mehs, "number_of_cars": number_of_cars, "date_time": datetime } fixes.append(dictionary) #user_id=request.args['user_id'] return render_template("/cars/add.html", fixes=fixes) else: fix_id = request.form['fix_id'] name = request.form['name'] result = do_add_car(fix_id, name, request.cookies) #flash(request.cookies, 'info') if result.success: #flash(result.response.status_code, 'info') if result.response.status_code == 201: flash('Запрос на починку успешно добавлен', 'info') return redirect(url_for('cars.get_all')) elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash('Запрос на починку не может быть добавлен', 'error') return redirect(url_for('cars.get_all')) else: flash(result.error, 'error') return redirect(url_for('cars.get_all'))
def return_prod(prod_id): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': result = do_return_prod(prod_id, request.cookies) if result.success: if result.response.status_code == 204: flash('Возврат товара успешно произведен', 'info') return redirect(url_for('menu.index')) elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash('Возврат товара не может быть произведен', 'error') return redirect(url_for('menu.index')) else: flash(result.error, 'error') return redirect(url_for('menu.index'))
def create(): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': return render_template("/kassirs/create.html") else: failed = False if 'name' not in request.form or request.form['name'] == '': flash('Имя не задано', "error") failed = True if 'stage' not in request.form or request.form['stage'] == '': flash('Ранг не задан', "error") failed = True if 'year' not in request.form or request.form['year'] == '': flash('Стаж не задана', "error") failed = True if failed: return redirect(url_for('kassirs.create')) name = request.form['name'] stage = request.form['stage'] year = int(request.form['year']) if not isinstance(year, int): flash('Error', 'error') return redirect(url_for('kassirs/create')) result = do_create_kassir(name, stage, year, request.cookies) if result.success: if result.response.status_code == 201: flash('Кассир успешно добавлен', "info") response = redirect('kassirs/create') return response elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash(result.response.content.decode('utf-8'), "error") return redirect(url_for('kassirs.create')) else: flash(result.error) return redirect(url_for('kassirs/create'), "error")
def get(user_id): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': result = do_get_user(user_id, request.cookies) if result.success: if result.response.status_code == 200: user = json.loads(result.response.content) prod_ids = user['prod_ids'] return render_template("/users/get.html", user = user, prod_ids = prod_ids) elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash('Ошибка. Кассира или магазина не существует.', "error") return redirect(url_for('mags.get_all'), "error") else: flash(result.error, "error") return redirect(url_for('mags.get_all'))
def buy(): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': mag_id = request.args['mag_id'] seat_number = request.args['seat_number'] result = do_buy_prod(mag_id, int(seat_number), request.cookies) if result.success: if result.response.status_code == 201: flash('Покупка товара успешно произведена', 'info') return redirect(url_for('mags.get_all')) elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash('Покупка товара не может быть произведена', 'error') return redirect(url_for('mags.get_all')) else: flash(result.error, 'error') return redirect(url_for('mags.get_all'))
def get_all(): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': if 'page' not in request.args: return redirect(url_for('prods.get_all', page=1)) if 'submit' in request.form: if request.form['submit'] == 'Создать витрину': pass if request.form['submit'] == 'Уволить касира': pass page = request.args.get('page', 1, type=int) result = do_get_paginated_prods(page, 10, request.cookies) if result.success: if result.response.status_code == 200: prods_obj = result.response.content prods_str = (str(prods_obj)).split('\\n') n = len(prods_str) prods_str[0] = prods_str[0][2:] prods_str[n-1] = prods_str[n-1][0:-1] prods = [] dictr = json.loads(prods_str[n-1]) prods_str.remove(prods_str[n-1]) for prod in prods_str: if prod != '': prod1 = bytes(prod, 'utf8') prods.append(json.loads(prod1)) return render_template("/prods/get_all.html", prods=prods, prev_url=dictr['is_prev_page'], next_url=dictr['is_next_page'], next_page=page+1, prev_page=page-1) elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash("Товары не найдены", "error") return redirect(url_for('prods.index')) else: flash(result.error, "error") return redirect(url_for('prods.index'))
def get_all(): if not g.logged_in: return redirect(url_for('users.login')) if request.method == 'GET': if 'page' not in request.args: return redirect(url_for('kassirs.get_all', page=1)) page = request.args.get('page', 1, type=int) result = do_get_paginated_kassir(page, 10, request.cookies) if result.success: if result.response.status_code == 200: kassirs_obj = result.response.content kassirs_str = (str(kassirs_obj)).split('\\n') n = len(kassirs_str) kassirs_str.remove(kassirs_str[0]) n = n - 1 kassirs_str[n - 1] = kassirs_str[n - 1][0:-1] kassirs = [] dictr = json.loads(kassirs_str[n - 1]) kassirs_str.remove(kassirs_str[n - 1]) for kassir in kassirs_str: kassir1 = bytes(kassir, 'utf8') kassirs.append(json.loads(kassir1)) return render_template("/kassirs/get_all.html", kassirs=kassirs, prev_url=dictr['is_prev_page'], next_url=dictr['is_next_page'], next_page=page + 1, prev_page=page - 1) elif result.response.status_code == 403: do_logout() return redirect(url_for('users.login')) else: flash("Кассир не найден", "error") return redirect(url_for('kassirs.index')) else: flash(result.error, "error") return redirect(url_for('kassirs.index'))
def logout(): result = do_logout() response = redirect(url_for(result.redirect)) response.delete_cookie('token') return response