Exemple #1
0
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})