def addEmployee(request, staff_id): staff = Staff.objects.get(id=staff_id) if request.method == 'POST': form = EmployeeForm(request.POST) if form.is_valid(): item = form.cleaned_data['item'] corporate_number = form.cleaned_data['corporate_number'] workunit = form.cleaned_data['workunit'] position = form.cleaned_data['position'] is_motorist = form.cleaned_data['is_motorist'] driver_category = form.cleaned_data['driver_category'] expiration_date = form.cleaned_data['expiration_date'] employee = Employee(staff=staff, item=item, corporate_number=corporate_number) employee.save() staff.is_employee = True staff.save() ewu = EmployeeWorkUnit(employee=employee, workunit=workunit, position=position, date_joined=datetime.datetime.today(), is_active=True) ewu.save() if is_motorist: me = Motorist(employee=employee, driver_license=employee.staff.val_document, driver_category=driver_category, expiration_date=expiration_date) me.save() employee.is_motorist = True employee.save() messages.add_message(request, messages.SUCCESS, 'Se guardo exitosamente al personal') return HttpResponseRedirect(employee.get_absolute_url() + '/detail/') else: messages.add_message(request, messages.ERROR, 'Los datos que ingreso son incorrectos') return render(request, 'create_employee.html', {'form': form, 'url': staff.get_absolute_url(), 'staff': staff}) else: form = EmployeeForm() return render(request, 'create_employee.html', {'form': form, 'url': staff.get_absolute_url(), 'staff': staff})