def soloser(request, id, completesuccess=None): if (conf.login == False): return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser() }) cursor = connection.cursor() sql = ( "SELECT X.SERVICE_ID, X.ROOM_ID, X.BILL_ID, Y.NAME, Y.DESCRIPTION, Y.COST, X.SERVICE_ACTIVE, X.EMP_ID, (Z.FIRST_NAME || ' ' || Z.LAST_NAME) FULLNAME FROM ROOM_HB_SERV_RECEIVES X, SERVICES Y, ACCOUNT_HOLDER Z WHERE X.SERVICE_ID = Y.SERVICE_ID AND X.ACTION_ID = %s AND Z.USER_ID = X.EMP_ID" % (id)) cursor.execute(sql) row = cursor.fetchall() cursor.close() service = {} service['servid'] = row[0][0] service['roomid'] = row[0][1] service['billid'] = row[0][2] service['name'] = row[0][3] service['description'] = row[0][4] service['cost'] = row[0][5] service['isactive'] = row[0][6] service['empid'] = row[0][7] service['empname'] = row[0][8] service['actionid'] = id return render( request, 'service/servview.html', { 'login': conf.login, 'service': service, 'completesuccess': completesuccess, 'user': conf.getuser() })
def eattend(request, empid): if(conf.login == False or conf.role == 'customer' or conf.role == 'employee'): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) data = getemployeeworkinfo(empid) return render(request, 'employee/eattend.html', {'login' : conf.login, 'user' : conf.getuser(), 'data' : data})
def roomdetails(request, id): if (conf.login == False): return render(request, 'login.html', { 'login': conf.login, 'alerttoggle': True, 'user': conf.getuser() }) cursor = connection.cursor() sql = ("SELECT * FROM ROOM WHERE ROOM_ID = %s" % (id)) cursor.execute(sql) row = cursor.fetchall() room = {} room['roomid'] = row[0][0] room['building'] = row[0][1] room['floor'] = row[0][2] room['capacity'] = row[0][3] room['ac'] = row[0][4] room['bed_no'] = row[0][5] room['rent'] = row[0][6] room['reservation_id'] = row[0][7] room['type'] = row[0][8] return render( request, 'roomview.html', { 'login': conf.login, 'alerttoggle': True, 'room': room, 'user': conf.getuser() })
def cdelete(request): if (conf.login == False): return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser() }) cursor = connection.cursor() order_count = cursor.var(int).var cursor.callproc("DELETE_ACCOUNT", [conf.user_id, order_count]) num = order_count.getvalue() cursor.close() if num == 1: if (conf.login): conf.login = False conf.user_id = conf.username = conf.name = conf.email = conf.role = '' return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser(), 'delete': True }) return render( request, 'index.html', { 'login': conf.login, 'user': conf.getuser(), 'employee': False, 'deleteu': True })
def index(request): if(conf.login == False): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) id = int(conf.user_id) dict_result = getcustomerdata(id) return render(request, 'customer/index.html', {'login' : conf.login, 'user' : conf.getuser(), 'allval' : dict_result})
def profile(request, id, fire = None): if(conf.login == False or conf.role == 'customer'): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) id = int(id) dict_result = getemployeedata(id) return render(request, 'employee/profile.html', {'login' : conf.login, 'user' : conf.getuser(), 'allval' : dict_result, 'fire' : fire})
def fcom(request): if(conf.login == False): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) complain = request.POST.get('comp', 'default') comtype = request.POST.get('ctype', 'default') cursor = connection.cursor() cursor.callproc("NEW_COMPLAIN", [conf.user_id, complain, comtype]) cursor.close() return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser(), 'comp' : True})
def delete(request): if (conf.login == False): return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser() }) return render(request, 'delete.html', { 'login': conf.login, 'user': conf.getuser(), 'employee': False })
def enter_account(request): if (conf.login == True): return HttpResponseRedirect(request.META.get('HTTP_REFERER')) email = request.POST.get('email', 'default') password = request.POST.get('password', 'default') Atype = request.POST.get('AcCheck', 'default') cursor = connection.cursor() sql = "SELECT * FROM LOG_IN " e = (str("\'" + (email) + "\'")) sql = ("SELECT A.*, B.* ") if (Atype == 'employee'): sql = sql + ", (SELECT PERMISSION FROM EMPLOYEE WHERE EMPLOYEE.USER_ID = B.USER_ID) " sql = sql + ( " FROM LOG_IN A, ACCOUNT_HOLDER B WHERE A.LOGIN_EMAIL = B.LOGIN_EMAIL AND A.LOGIN_EMAIL = %s" % (e)) cursor.execute(sql) r = cursor.fetchall() if (r and r[0][0] == email and hashing.verify_password(r[0][1], password) and r[0][2] == Atype): conf.role = Atype conf.login = True conf.user_id = r[0][3] conf.email = r[0][4] conf.username = r[0][5] conf.name = r[0][5] + ' ' + r[0][6] if (Atype == 'employee'): if (r[0][11] == '1'): conf.role = 'director' if (r[0][11] == '2'): conf.role = 'manager' if (conf.role == 'manager' or conf.role == 'director'): sql = "SELECT COUNT(*) FROM COMPLAIN WHERE CHECKK = 0" cursor.execute(sql) r = cursor.fetchall() print(r) conf.ncount = r[0][0] cursor.close() return render(request, 'index.html', { 'login': conf.login, 'logins': True, 'user': conf.getuser() }) cursor.close() return render(request, 'login.html', { 'login': conf.login, 'user': conf.getuser() })
def edit(request, uid): if (conf.login == False): return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser() }) data = getbasicuserinfo(uid) data['role'] = conf.role return render(request, 'edit.html', { 'login': conf.login, 'data': data, 'user': conf.getuser() })
def solores(request, id): if (conf.login == False): return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser() }) res = getres(id) return render(request, 'reservation/resview.html', { 'login': conf.login, 'res': res, 'user': conf.getuser() })
def roomdelete(request, id): if(conf.login == False or conf.role == 'customer' or conf.role == 'employee' or conf.role == 'manager'): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) cursor = connection.cursor() cursor.callproc("ROOM_DELETE", [id]) cursor.close() return hoteloverview(request, 0, False, True)
def ser(request): if(conf.login == False): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) id = int(conf.user_id) cursor = connection.cursor() sql = ("SELECT X.ACTION_ID, X.SERVICE_ID, Z.NAME, X.ROOM_ID, Y.RESERVATION_ID, X.SERVICE_DATE, X.SERVICE_ACTIVE FROM ROOM_HB_SERV_RECEIVES X, HOTEL_BILL Y, SERVICES Z WHERE X.BILL_ID = ANY(SELECT BILL_ID FROM HOTEL_BILL WHERE RESERVATION_ID = ANY(SELECT RESERVATION_ID FROM RESERVATION WHERE USER_ID = %s)) AND X.BILL_ID = Y.BILL_ID AND X.SERVICE_ACTIVE IN (1, 2, 3) AND Z.SERVICE_ID = X.SERVICE_ID" % id) cursor.execute(sql) table = cursor.fetchall() cursor.close() data = [] for row in table: ser = {} ser['actionid'] = row[0] ser['servid'] = row[1] ser['name'] = row[2] ser['roomid'] = row[3] ser['resid'] = row[4] ser['servdate'] = row[5].date() ser['isactive'] = row[6] data.append(ser) data = sorted(data, key=lambda item: int(item['servid'])) return render(request, 'service/cusservhome.html', {'login' : conf.login, 'data' : data, 'user' : conf.getuser()})
def res(request): if(conf.login == False): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) today = str(time.strftime("%Y-%m-%d")) print(today) id = int(conf.user_id) cursor = connection.cursor() sql = ("SELECT * FROM RESERVATION WHERE USER_ID=%s AND RESERVATION_ACTIVE IN (0, 1, 2, 3 )" % id) cursor.execute(sql) table = cursor.fetchall() cursor.close() data = [] for row in table: res = {} res['resid'] = row[0] res['arrivaldate'] = row[2].date() res['departuredate'] = row[3].date() res['isactive'] = row[4] data.append(res) data = sorted(data, key=lambda item: int(item['resid'])) return render(request, 'reservation/cusreshome.html', {'login' : conf.login, 'data' : data, 'mindate' : today, 'user' : conf.getuser()})
def update_server(request): if (conf.login == False): return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser() }) cursor = connection.cursor() order_count = cursor.var(int).var cursor.callproc("UPDATE_SERVER_DATE", [order_count]) suc = order_count.getvalue() cursor.close() if (suc == 1): return render(request, 'index.html', { 'login': conf.login, 'server': True, 'user': conf.getuser() })
def logout(request): if (conf.login): conf.login = False conf.user_id = conf.username = conf.name = conf.email = conf.role = '' return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser() })
def eprochange(request, id): if(conf.login == False): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) empid = request.POST.get('id', '') salary = request.POST.get('salary', '') poschange = request.POST.get('poschange', '') workd = request.POST.get('workd', '') if(poschange == "No change"): poschange = '' cursor = connection.cursor() cursor.callproc("EMP_PROFILE_EDIT", [empid, salary, poschange, workd]) cursor.close() # return render(request, 'employee/profile/'+empid+'/.html', {'login' : conf.login, 'user' : conf.getuser(), 'prsuccess' : True}) if(empid == ''): empid = id dict_result = getemployeedata(int(empid)) return render(request, 'employee/profile.html', {'login' : conf.login, 'user' : conf.getuser(), 'allval' : dict_result, 'epsuccess' : True})
def signup(request): if (conf.login == True and (conf.role == 'manager' or conf.role == 'director')): return render( request, 'signup.html', { 'login': conf.login, 'sign': True, 'user': conf.getuser(), 'ementry': True }) if (conf.login == False): return render(request, 'signup.html', { 'login': conf.login, 'sign': True, 'user': conf.getuser() }) else: return HttpResponseRedirect(request.META.get('HTTP_REFERER'))
def servmanage(request, id, scancel = None): if(conf.login == False or conf.role == 'customer' or id > 1 or id < 0): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) sql = "SELECT * FROM ROOM_HB_SERV_RECEIVES " msg = "Showing results for : all reservations " if(id == 1): serdate = request.POST.get('servdate', '') sertype = request.POST.get('sertype', '') if(serdate or (sertype and sertype != 'All')): msg = msg + " with" sql = sql + " WHERE " if(serdate): sql = sql + " TRUNC(SERVICE_DATE) = TO_DATE(" + str("\'" + serdate + "\', 'YYYY-MM-DD') ") msg = msg + " service execution date = " + str("\"" + serdate + "\", ") if(serdate and sertype and sertype != 'All'): sql = sql + " AND " if(sertype == 'Active'): sql = sql + " SERVICE_ACTIVE = 1 " msg = msg + " type = Active " elif(sertype == 'Cancelled'): sql = sql + " SERVICE_ACTIVE = 2 " msg = msg + " type = Cancelled " elif(sertype == 'Completed'): sql = sql + " SERVICE_ACTIVE = 3 " msg = msg + " type = Completed " else: msg = msg + " type = All " if(conf.role != 'manager' and conf.role != 'director'): sql = sql + " AND EMP_ID = " + str(conf.user_id) else: if(conf.role != 'manager' and conf.role != 'director'): sql = sql + " WHERE EMP_ID = " + str(conf.user_id) else: if(conf.role != 'manager' and conf.role != 'director'): sql = sql + " WHERE EMP_ID = " + str(conf.user_id) cursor = connection.cursor() cursor.execute(sql) table = cursor.fetchall() cursor.close() data = [] for row in table: ser = {} ser['servid'] = row[0] ser['roomid'] = row[1] ser['billid'] = row[2] ser['isactive'] = row[3] ser['actionid'] = row[4] ser['servdate'] = row[5] data.append(ser) data = sorted(data, key=lambda item: int(item['servid'])) return render(request, 'service/allserv.html', {'login' : conf.login,'data' : data, 'msg' : msg, 'scancel': scancel, 'user' : conf.getuser()})
def login(request): if (conf.login == False): #print('i am inside the right jayga') return render(request, 'login.html', { 'login': conf.login, 'alerttoggle': True, 'user': conf.getuser() }) else: return HttpResponseRedirect(request.META.get('HTTP_REFERER'))
def resmanage(request, id): if(conf.login == False or conf.role == 'customer' or conf.role == 'employee' or id > 1 or id < 0): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) sql = ("SELECT RESERVATION_ID, RESERVATION_ACTIVE, ARRIVAL_DATE, DEPARTURE_DATE, USER_ID FROM RESERVATION ") msg = "Showing results for : all reservations " if(id == 1): arrdate = request.POST.get('arrdate', '') depdate = request.POST.get('depdate', '') restype = request.POST.get('restype', '') if(arrdate or depdate or restype): msg = msg + " with" sql = sql + " WHERE " if(arrdate): sql = sql + " ARRIVAL_DATE >= TO_DATE(" + str("\'" + arrdate + "\', 'YYYY-MM-DD') ") msg = msg + " arrival date >= " + str("\"" + arrdate + "\", ") if(arrdate and depdate): sql = sql + " AND " if(depdate): sql = sql + " DEPARTURE_DATE <= TO_DATE(" + str("\'" + depdate + "\', 'YYYY-MM-DD') ") msg = msg + " departure date <= " + str("\"" + depdate + "\", ") if(restype and restype != 'All' and depdate): sql = sql + " AND " if(restype == 'Active'): sql = sql + " RESERVATION_ACTIVE = 1 " msg = msg + " type = Active " elif(restype == 'Pending'): sql = sql + " RESERVATION_ACTIVE = 0 " msg = msg + " type = Inactive " elif(restype == 'Cancelled'): sql = sql + " RESERVATION_ACTIVE = 2 " msg = msg + " type = Cancelled " elif(restype == 'Completed'): sql = sql + " RESERVATION_ACTIVE = 3 " msg = msg + " type = Completed " else: msg = msg + " type = All " cursor = connection.cursor() cursor.execute(sql) table = cursor.fetchall() cursor.close() data = [] for row in table: r = {} r['resid'] = row[0] r['isactive'] = row[1] r['arrdate'] = row[2].date() r['depdate'] = row[3].date() data.append(r) data = sorted(data, key=lambda item: int(item['resid'])) return render(request, 'reservation/allres.html', {'login' : conf.login,'data' : data, 'msg' : msg, 'user' : conf.getuser()})
def exentry(request): if(conf.login == False or conf.role == 'customer' or conf.role == 'employee'): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) extype = request.POST.get('extype', '') exdes = request.POST.get('exdes', 'default') excost = request.POST.get('excost', 'default') exdate = request.POST.get('exdate', 'default') cursor = connection.cursor() cursor.callproc("NEW_EXPENSE_ENTRY", [conf.user_id, excost, extype, exdes, exdate]) cursor.close() return render(request, 'employee/expense.html', {'login' : conf.login, 'mindate':conf.today, 'user' : conf.getuser(), 'exsuccess' : True})
def cr_service(request): if (conf.login == False): return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser() }) servicet = request.POST.get('service_t', 'default') serviced = request.POST.get('serd', 'default') roomid = request.POST.get('roomid', 'default') cursor = connection.cursor() returnval = cursor.callfunc( 'SERVICE_ENTRY', int, [servicet, serviced, int(conf.user_id), int(roomid)]) cursor.close() data = getserv() if returnval == 1: return render( request, 'service/cusservhome.html', { 'login': conf.login, 'data': data, 'user': conf.getuser(), 'srsuccess': True }) elif returnval == 2: return render( request, 'service/cusservhome.html', { 'login': conf.login, 'rprob': True, 'data': data, 'user': conf.getuser() }) return render(request, 'service/cusservhome.html', { 'login': conf.login, 'data': data, 'sprob': True, 'user': conf.getuser() })
def canreserv(request, id): cursor = connection.cursor() order_count = cursor.var(int).var cursor.callproc("CANCEL_RESERV", [id, order_count]) suc = order_count.getvalue() cursor.close() if suc == 1: return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser(), 'rcancel': True }) res = getres(id) return render(request, 'reservation/resview.html', { 'login': conf.login, 'res': res, 'user': conf.getuser(), 'cancelu': True })
def billshow(request, resid): if (conf.login == False): return HttpResponseRedirect(request.META.get('HTTP_REFERER')) #do stuff here to show the bill data = getbilltable(resid) return render(request, 'billinfo.html', { 'login': conf.login, 'data': data, 'user': conf.getuser() })
def fire(request, id): if(conf.login == False or conf.role == 'customer' or conf.role == 'employee'): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) cursor = connection.cursor() inputt = cursor.var(int).var cursor.callproc("FIRE_EMPLOYEE", [id, inputt]) output = inputt.getvalue() cursor.close() if output == 1: return empmanage(request, 0, True, False) else: return profile(request, int(id), True)
def billpay(request, resid): if (conf.login == False): return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser() }) pay = request.POST.get('payment', 0) print('pay ', pay) if pay == '': pay = 0 cursor = connection.cursor() success = cursor.callfunc("UPDATEDUE", int, [pay, resid]) cursor.close() data = getbilltable(resid) return render( request, 'billinfo.html', { 'login': conf.login, 'success': success, 'data': data, 'user': conf.getuser() })
def roomentry(request): if(conf.login == False or conf.role == 'customer' or conf.role == 'employee' or conf.role == 'manager'): return render(request, 'index.html', {'login' : conf.login, 'user' : conf.getuser()}) rtype = request.POST.get('rtype', '') rent = request.POST.get('rent', '') floor = request.POST.get('floor', '') build = request.POST.get('building', '') capacity = request.POST.get('capa', '') bed = request.POST.get('bed', '') cursor = connection.cursor() cursor.callproc("ROOM_ENTRY", [build, floor, capacity, bed, rent, rtype]) cursor.close() return hoteloverview(request, 0, True, False)
def completeservice(request, id): if (conf.login == False): return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser() }) print('action id ', id) cursor = connection.cursor() sql = ( "UPDATE ROOM_HB_SERV_RECEIVES SET SERVICE_ACTIVE = 3 WHERE ACTION_ID = %s" % id) cursor.execute(sql) cursor.close() return soloser(request, id, True)
def ca_serve(request, id): cursor = connection.cursor() order_count = cursor.var(int).var cursor.callproc("CANCEL_SERVE", [id, order_count]) suc = order_count.getvalue() cursor.close() data = getserv() if suc == 0: if (conf.role == 'customer'): return render( request, 'service/cusservhome.html', { 'login': conf.login, 'data': data, 'user': conf.getuser(), 'scancel': True }) else: # return render(request, 'service/allserv.html', {'login' : conf.login, 'data' : data, 'user' : conf.getuser(), 'scancel': True}) return views.servmanage(request, 0, True) return render(request, 'index.html', { 'login': conf.login, 'user': conf.getuser() })