def employee(): my_form = EmployeeForm() print("sucess") if my_form.validate_on_submit(): # fetch the uploaded file file_csv = request.files.get('file_csv') print("valid") if file_csv: # get the file full path file_full_path = os.path.join(app.config['UPLOAD_FOLDER'], file_csv.filename) # save it in the server file system file_csv.save(file_full_path) # read that file in dataframe df = pd.read_csv(file_full_path) #print(df) employee_list_raw = df.to_dict('records') #create a list for bulk insert later on employee_list = [] for curr_employee in employee_list_raw: emp = Employee.from_dict(curr_employee) employee_list.append(emp) print("employee_list_count", len(employee_list)) # save t0 DB db.session.bulk_save_objects(employee_list) db.session.commit() # test query e_list = Employee.query.limit(5).all() print("*******") print(e_list) print("*******") return render_template('employee.html', title = 'Employee', my_form = my_form) # customize the title
def create_employee_view(company_slug_to_id, **kwargs): corporation_id = kwargs['corporation_id'] roles = RoleAccess(corporation_id=corporation_id, company_id=company_slug_to_id). \ roles_available_to_create_employee() roles_to_choose = [(i.id, i.name) for i in roles] form = EmployeeForm(roles_to_choose, corporation_id) next_page = request.args.get('next') if request.method == 'POST': if form.submit_employee.data and form.validate_on_submit(): EmployeeAccess(company_id=company_slug_to_id, first_name=form.first_name_employee.data.strip(), email=form.email_employee.data.strip(), role_id=form.role_employee.data.strip(), corporation_id=corporation_id). \ create_employee() flash('Your employee is now live!') if next_page: return redirect(next_page) form.first_name_employee.data = '' form.email_employee.data = '' form.role_employee.data = '' elif form.cancel_employee.data: if next_page: return redirect(next_page) form.first_name_employee.data = '' form.email_employee.data = '' form.role_employee.data = '' return render_template('create_employee.html', form=form)
def employee_login(): form = EmployeeForm() if form.validate_on_submit(): employee_id = form.employee_id.data password = form.password.data db = get_db() employee = db.execute( ''' SELECT * FROM employees WHERE employee_id = ?;''', (employee_id, )).fetchone() if employee is None: form.employee_id.errors.append("Unknown employee id") elif not check_password_hash(employee["password"], password): form.password.errors.append("Incorrect password!") eventLogger(employee_id, "got their password wrong") else: session.clear() session["employee_id"] = employee_id eventLogger(employee_id, "logged in") next_page = request.args.get("next") if not next_page: next_page = url_for("employee_home") return redirect(next_page) return render_template("employee_login.html", form=form)
def edit_employee(employee_id): employee = Employee.query.get(employee_id) form = EmployeeForm(obj=employee) form.populate_obj(employee) if form.validate_on_submit(): db.session.commit() return redirect(url_for('employee_list')) return render_template('edit_employee.html', form=form, employee=employee)
def edit_emp(emp_id): emp = Employee.query.get_or_404(emp_id) form = EmployeeForm(obj=emp) depts = db.session.query(Department.dept_code, Department.dept_name) form.dept_code.choices = depts if form.validate_on_submit(): emp.name = form.name.data emp.state = form.state.data emp.dept_code = form.dept_code.data db.session.commit() return redirect('/phones') else: return render_template('edit-emp.html', form=form)
def edit_employee(id): emp = Employee.query.get_or_404(id) form = EmployeeForm(obj=emp) depts = [('mktg', 'Marketing')] form.dept_code.choices = depts if form.validate_on_submit(): emp.name = form.name.data emp.state = form.state.data emp.dept_code = form.dept_code.data db.session.commit() return redirect('/phones') else: return render_template("edit_employee_form.html", form=form)
def add_employee(): form = EmployeeForm() depts = db.session.query(Department.dept_code, Department.dept_name) form.dept_code.choices = depts if form.validate_on_submit(): name = form.name.data state = form.state.data dept_code = form.dept_code.data emp = Employee(name=name, state=state, dept_code=dept_code) db.session.add(emp) db.session.commit() return redirect('/phones') else: return render_template('add_employee_form.html', form=form)
def add_employee(): form = EmployeeForm() if form.validate_on_submit(): new_employee = Employee(firstname=form.firstname.data, lastname=form.lastname.data, department=form.department.data, user_id=current_user.id) db.session.add(new_employee) db.session.commit() flash('New employee added successfully.') return redirect(url_for('employee_list')) return render_template('add_employee.html', form=form)
def employee(): my_form = EmployeeForm() # convert to list if my_form.validate_on_submit(): # my_form.submitted() # file we are importing file_csv = request.files.get('file_csv') if file_csv: file_full_path = os.path.join(app.config['UPLOAD_FOLDER'], file_csv.filename) # print("file_full_path", file_full_path) # save to upload folder file_csv.save(file_full_path) # load the data in the table using pandas df = pd.read_csv(file_full_path) # print("raw_data", df.iloc[0]) # print("shape", df.shape) employee_list_raw = df.to_dict('records') # print("dictionary", employee_list_raw) employee_list = [] for curr_emp in employee_list_raw: emp = Employee.from_dict(curr_emp) employee_list.append(emp) # db.session.add(emp) # db.session.commit() print("employee_list_count", len(employee_list)) # save t0 DB db.session.bulk_save_objects(employee_list) db.session.commit() # test query e_list = Employee.query.limit(5).all() print("*******") print(e_list) print("*******") # send us to the display page # return redirect("/employee/" + str(my_data.id)) return render_template('employee.html', my_form=my_form)
def edit_user(user_id): employee = Employee.query.get_or_404(user_id) # obj=employee prepopulates fields automatically based on employee data form = EmployeeForm(obj=employee) depts = db.session.query(Department.dept_code, Department.dept_name) form.dept_code.choices = depts if form.validate_on_submit(): employee.name = form.name.data employee.state = form.state.data employee.dept_code = form.dept_code.data db.session.commit() return redirect('/phones') else: return render_template('edit_employee_form.html', form=form)
def add_employee(): form = EmployeeForm() depts = db.session.query(Department.dept_code, Department.dept_name) #pdb.set_trace() #depts = [('mktg','Marketing')] form.dept_code.choices = depts #raise if form.validate_on_submit(): name = form.name.data state = form.state.data dept_code = form.dept_code.data emp = Employee(name=name, state=state, dept_code=dept_code) db.session.add(emp) db.session.commit() return redirect('/phones') else: return render_template('add_employee.html', form=form)
def add_employee(): """Show a form to add new employee and handle form to add new employee""" # Get the appropriate form from forms.py form = EmployeeForm() # Make options for select input depts = db.session.query(Department.dept_code, Department.dept_name) form.dept_code.choices = depts # For POST request if form.validate_on_submit(): emp = Employee(name=form.name.data, state=form.state.data, dept_code=form.dept_code.data) db.session.add(emp) db.session.commit() return redirect('/phones') else: return render_template('add_employee_form.html', form=form)
def add_employee(): form = EmployeeForm() # Adds a tuple to the dept_code.choices select form field ie. ('mktg', 'Marketing') depts = db.session.query(Department.dept_code, Department.dept_name) form.dept_code.choices = depts if form.validate_on_submit(): name = form.name.data state = form.state.data dept_code = form.dept_code.data new_employee = Employee(name=name, state=state, dept_code=dept_code) db.session.add(new_employee) db.session.commit() return redirect('/phones') else: return render_template('add_employee_form.html', form=form)
def edit_employee(id): """Show form to edit employee and handle form to update existing employee""" # Get employee based on input id emp = Employee.query.get_or_404(id) # Get the appropriate form from forms.py and re-pupolate the fields on HTML form = EmployeeForm(obj=emp) # Make options for select input depts = db.session.query(Department.dept_code, Department.dept_name) form.dept_code.choices = depts # For POST request if form.validate_on_submit(): # Update employee, get data from the form emp.name = form.name.data emp.state = form.state.data emp.dept_code = form.dept_code.data db.session.commit() return redirect('/phones') else: return render_template("edit_employee_form.html", form=form, emp=emp)