def add_hash_event(request): id_event = request.matchdict['id_employee'] id_hash = int(request.matchdict['id_hash']) hash_tag = request.db_session.query(Hash_employee).filter(Hash_employee.by_user_id == get_verified_user_id(request), Hash_employee.id == id_hash).first() print(hash_tag.name) event = request.db_session.query(Event).filter(Event.id == id_event).\ filter(or_(Employee.hash1 == id_hash, Employee.hash2 == id_hash)).\ first() if event is not None: return{'status': 'user have this hash tag already!!'} if hash_tag == None: return{'status': 'hash tag dont exist'} else: event = request.db_session.query(Event).filter(Event.id == id_event).first() if event == None: return{'status': 'employee dont exist'} if event.hash1 == None: event.hash1 = id_hash DBSession.flush() return{'status': 'ok'} elif event.hash2 == None: event.hash2 = id_hash DBSession.flush() return{'status': 'ok'} else: return{'status': 'You can have maximum 2 hash tags for one employee'}
def add_comparison(request): type = request.matchdict['type'] hash1_name = request.matchdict['hash1'] hash2_name = request.matchdict['hash2'] if type == "employee": hash1 = request.db_session.query(Hash_employee).filter(Hash_employee.name == hash1_name, Hash_employee.user == get_user(request)).first() hash2 = request.db_session.query(Hash_employee).filter(Hash_employee.name == hash2_name, Hash_employee.user == get_user(request)).first() print(hash1) print(hash2) porovnavacka = Comparison(get_user(request), hash1, hash2, 1) DBSession.add(porovnavacka) DBSession.flush() DBSession.refresh(porovnavacka) return{'status' : 'ok', 'id' : porovnavacka.id} elif type == "event": hash1 = request.db_session.query(Hash_employee).filter(Hash_employee.name == hash1_name, Hash_employee.user == get_user(request)).first() hash2 = request.db_session.query(Hash_employee).filter(Hash_employee.name == hash2_name, Hash_employee.user == get_user(request)).first() print(hash1) print(hash2) porovnavacka = Comparison(get_user(request), hash1, hash2, 0) DBSession.add(porovnavacka) DBSession.flush() DBSession.refresh(porovnavacka) return{'status' : 'ok', 'id' : porovnavacka.id} else: return{'status' : 'This ype of comparison is not in our system'}
def add_event(request): post=request.POST id_leader = post['id_leader'] time_begin = post['time_begin'].split(':') time_begin = [int(x) for x in time_begin] time_end = post['time_end'].split(':') time_end = [int(x) for x in time_end] date_begin = post['date_begin'].split('/') date_begin = [int(x) for x in date_begin] date_end = post['date_end'].split('/') date_end = [int(x) for x in date_end] leader = request.db_session.query(Employee).filter(Employee.by_user_id == get_verified_user_id(request), Employee.id == id_leader).first() print(time_end) zaciatok_eventu = datetime.datetime(date_begin[2], date_begin[0], date_begin[1], time_begin[0], time_begin[1], 0, 0) koniec_eventu = datetime.datetime(date_end[2], date_end[0], date_end[1], time_end[0], time_end[1], 0, 0) event = Event(get_user(request), leader, post['name'], zaciatok_eventu, koniec_eventu) DBSession.add(event) DBSession.flush() DBSession.refresh(event) #leader bude ako task task = Task(event.leader, event, 0, 0, event.length()) DBSession.add(task) return HTTPFound(location = request.route_url('events'))
def change_event(request): event = request.db_session.query(Event).filter(Event.id == event_id).first() event.description = str(request.matchdict['description']) event.nazov = str(request.matchdict['name_of_event']) event.goal = str(request.matchdict['goal']) event.workplace = str(request.matchdict['workplace']) DBSession.flush()
def register_employee(employee, request): DBSession.add(employee) DBSession.flush() #vytvorim QR code,,, print(str(employee.id) * 30) qr = QRCode(version=8, error_correction=ERROR_CORRECT_L) qr.add_data(str(employee.id)) qr.make() im = qr.make_image() im.save('qr_images/' + str(employee.surname) + '.png')
def change_task(request): id_task = int(request.matchdict['id']) performance = request.matchdict['performance'] delay = request.matchdict['delay'] print(id_task) tasks = request.db_session.query(Task).all() for t in tasks: print(t.id) print(tasks) task = request.db_session.query(Task).filter(Task.id == id_task).first() task.delay = delay task.performance = performance DBSession.flush() return{'status' : 'ok'}
def checkout(request): employee_id = request.matchdict['employee_id'] performance = request.matchdict['performance'] if performance == -1: performance == 100 employee = request.db_session.query(Employee).filter(Employee.id == employee_id).first() if employee.by_user_id != get_verified_user_id(request): return {'chyba' : 'nemas prava na manipulaciu s tymto employee!'} # employee = request.db_session.query(Employee).filter(Employee.id == employee_id).first() arrivals = request.db_session.query(Arrival).filter(Arrival.employee_id == employee_id, Arrival.departure == None).all() # for i in arrivals: # print(i.id) print(arrivals) if len(arrivals) == 1: arrival = arrivals[0] arrival.departure = datetime.datetime.now(); arrival.performance = performance DBSession.flush() return {'arrivaldeparture': arrival.departure} else: return{'chyba': 'chyba pri check oute kontaltujet admina'}
def rt_event_type_created(request): params = request.params description = params['description'] et = EventType(description) session = DBSession() session.add(et) session.flush() user_id = authenticated_userid(request) user = DBSession.query(User).filter(User.user_id == user_id).first() if user is not None: user.favorites.append(et) session.flush() session.flush() event_code = et.eid return {'description': description, 'success': True, 'message': "", 'event_code': event_code}
def delete_hash_employee(request): id_employee = request.matchdict['id_employee'] id_hash = request.matchdict['id_hash'] hash_tag = request.db_session.query(Hash_employee).filter(Hash_employee.by_user_id == get_verified_user_id(request), Hash_employee.id == id_hash).first() if hash_tag == None: return{'status': 'hash tag dont exist'} else: employee = request.db_session.query(Employee).filter(Employee.by_user_id == get_verified_user_id(request), Employee.id == id_employee).\ filter(or_(Employee.hash1 == id_hash, Employee.hash2 == id_hash)).first() print(type(employee.hash2)) # print(type(id_hash)) if employee == None: return{'status': 'No employee require condition'} if employee.hash1 == int(id_hash): employee.hash1 = None DBSession.flush() return{'status': 'hash was deleted'} if employee.hash2 == int(id_hash): employee.hash2 = None DBSession.flush() return{'status': 'hash was deleted'}
def add(request): type_to_add = request.matchdict['type_to_delete'] name = request.matchdict['name'] if type_to_add == "workposition": if request.db_session.query(Employees_type).filter(Employees_type.name == name, Employees_type.by_user_id == get_verified_user_id(request)).first() == None: new_workposition = Employees_type(get_user(request), name) DBSession.add(new_workposition) DBSession.flush() DBSession.refresh(new_workposition) return{'status': 'ok' ,'name': name, 'id' : new_workposition.id} else: return{'status': 'workposition with name '+name+' is in databse already'} elif type_to_add == "workplace": print('*' * 500) print(name) city = name.split('!')[0] address = name.split('!')[1] if request.db_session.query(Workplace).filter(Workplace.address == address).first() == None: new_workplace = Workplace(get_user(request), city, address) DBSession.add(new_workplace) DBSession.flush() DBSession.refresh(new_workplace) return{'status': 'ok' ,'name': name, 'id' : new_workplace.id} else: return{'status': 'workposition with name '+name+' is in databse already'} if type_to_add == "hash_employee": if request.db_session.query(Hash_employee).filter(Hash_employee.name == name, Hash_employee.type == 1, Hash_employee.by_user_id == get_verified_user_id(request)).first() == None: hash_zamestnanec = Hash_employee(get_user(request), name, 1) DBSession.add(hash_zamestnanec) DBSession.flush() DBSession.refresh(hash_zamestnanec) return{'status': 'ok' ,'name': name, 'id' : hash_zamestnanec.id} else: return{'status': 'employee hashtag with name '+name+' is in databse already'} if type_to_add == "hash_event": if request.db_session.query(Hash_employee).filter(Hash_employee.name == name, Hash_employee.type == 0, Hash_employee.by_user_id == get_verified_user_id(request)).first() == None: hash_zamestnanec = Hash_employee(get_user(request), name, 0) DBSession.add(hash_zamestnanec) DBSession.flush() DBSession.refresh(hash_zamestnanec) return{'status': 'ok' ,'name': name, 'id' : hash_zamestnanec.id} else: return{'status': 'event hashtag with name '+name+' is in databse already'}