示例#1
0
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})
示例#3
0
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()
        })
示例#4
0
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})
示例#8
0
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
    })
示例#9
0
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()
    })
示例#10
0
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()
    })
示例#11
0
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()
    })
示例#12
0
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)
示例#13
0
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()})
示例#14
0
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()})
示例#15
0
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()
        })
示例#16
0
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()
    })
示例#17
0
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})
示例#18
0
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'))
示例#19
0
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()})
示例#20
0
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'))
示例#21
0
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()})
示例#22
0
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})
示例#23
0
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()
    })
示例#24
0
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
    })
示例#25
0
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()
    })
示例#26
0
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)
示例#27
0
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()
        })
示例#28
0
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)
示例#29
0
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)
示例#30
0
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()
    })