Skip to content

Commit

Permalink
Merge branch 'release/v0.1.0-rc.1'
Browse files Browse the repository at this point in the history
  • Loading branch information
eperezf committed May 3, 2019
2 parents de35779 + a7a0b34 commit b54d038
Show file tree
Hide file tree
Showing 12 changed files with 598 additions and 452 deletions.
124 changes: 76 additions & 48 deletions web/app/Http/Controllers/EmpresaController.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

use Illuminate\Http\Request;
use App\Empresa;
use App\User;


/**
Expand All @@ -28,42 +29,52 @@ public function index(){
/**
* Muestra el formulario de creación de empresa
* @author Eduardo Pérez
* @version v1.0
* @version v1.1
* @return \Illuminate\Http\Response
*/
public function create(){
return view('empresa.create');
if (Auth::user()->role >=4){
return view('empresa.create');
}
else {
return view('empresa.index');
}
}

/**
* Guarda la empresa en la base de datos.
* @author Eduardo Pérez
* @version v1.0
* @version v1.1
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request){
if ($request->status == NULL){
$request->status = 0;
};
if (Auth::user()->role >=4){
if ($request->status == NULL){
$request->status = 0;
};

$request->validate(
['nombre'=>'required|unique:empresa'],
['rubro'=>'required'],
['urlWeb'=>'required'],
['correoContacto'=>'required'],
['status'=>'required']
);
$request->validate(
['nombre'=>'required|unique:empresa'],
['rubro'=>'required'],
['urlWeb'=>'required'],
['correoContacto'=>'required'],
['status'=>'required']
);

$empresa = new Empresa([
'nombre'=>$request->get('nombre'),
'rubro'=>$request->get('rubro'),
'urlWeb'=>$request->get('urlWeb'),
'correoContacto'=>$request->get('correoContacto'),
'status'=>$request->status
]);
$empresa->save();
return redirect('/empresas')->with('success', 'Nueva empresa agregada');
$empresa = new Empresa([
'nombre'=>$request->get('nombre'),
'rubro'=>$request->get('rubro'),
'urlWeb'=>$request->get('urlWeb'),
'correoContacto'=>$request->get('correoContacto'),
'status'=>$request->status
]);
$empresa->save();
return redirect('/empresas')->with('success', 'Nueva empresa agregada');
}
else {
return redirect('/empresas');
}
}

/**
Expand All @@ -81,54 +92,71 @@ public function show($id)
/**
* Muestra el formulario de edición de empresa.
* @author Eduardo Pérez
* @version v1.0
* @version v1.1
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id){
$empresa = Empresa::find($id);
return view('empresa.edit', compact('empresa'));
if (Auth::user()->role >=4){
$empresa = Empresa::find($id);
return view('empresa.edit', compact('empresa'));
}
else {
return view('empresa.index');
}
}

/**
* Actualiza la empresa especificada en la base de datos.
* @author Eduardo Pérez
* @version v1.1
* @version v1.2
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id){
$validated = $request->validate(
['nombre'=>'string|required'],
['rubro'=>'string|required'],
['urlWeb'=>'string|required'],
['correoContacto'=>'email|required'],
['status'=>'required']
);
if ($request->status == NULL){
$request->status = 0;
};
$empresa = Empresa::find($id);
$empresa->nombre = $request->get('nombre');
$empresa->rubro = $request->get('rubro');
$empresa->urlWeb = $request->get('urlWeb');
$empresa->correoContacto = $request->get('correoContacto');
$empresa->status = $request->status;
$empresa->save();
return redirect('/empresas')->with('success', 'Empresa editada correctamente');
if (Auth::user()->role >=4){
$validated = $request->validate(
['nombre'=>'string|required'],
['rubro'=>'string|required'],
['urlWeb'=>'string|required'],
['correoContacto'=>'email|required'],
['status'=>'required']
);
if ($request->status == NULL){
$request->status = 0;
};
$empresa = Empresa::find($id);
$empresa->nombre = $request->get('nombre');
$empresa->rubro = $request->get('rubro');
$empresa->urlWeb = $request->get('urlWeb');
$empresa->correoContacto = $request->get('correoContacto');
$empresa->status = $request->status;
$empresa->save();
return redirect('/empresas')->with('success', 'Empresa editada correctamente');
}
else {
return redirect('/empresas');
}

}

/**
* Elimina la empresa de la base de datos.
* @version v1.0
* @version v1.1
* @author Eduardo Pérez
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id){
$empresa = Empresa::find($id);
$empresa->delete();
return redirect('/empresas')->with('success', 'Empresa eliminada correctamente');
if (Auth::user()->role >=4){
$empresa = Empresa::find($id);
$empresa->delete();
return redirect('/empresas')->with('success', 'Empresa eliminada correctamente');
}
else {
return redirect('/empresas');
}

}
}
121 changes: 120 additions & 1 deletion web/app/Http/Controllers/PasantiaController.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,16 @@
use Illuminate\Http\Request;
use App\User;
use App\Pasantia;
use App\Empresa;
use Auth;

class PasantiaController extends Controller{
/**
* Muestra el Paso 0
* @author Eduardo Pérez
* @version v1.0
* @return \Illuminate\Http\Response
*/
public function paso0View(){
$userId = Auth::id();
$pasantia = Pasantia::where('idAlumno', $userId)->first();
Expand Down Expand Up @@ -45,6 +52,13 @@ public function paso0View(){
}
}

/**
* Comprueba si el alumno aceptó el reglamento
* @author Eduardo Pérez
* @version v1.0
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function paso0Control(Request $request){
$userId = Auth::id();
$pasantia = Pasantia::where('idAlumno', $userId)->first();
Expand All @@ -64,6 +78,12 @@ public function paso0Control(Request $request){
}
}

/**
* Muestra el Paso 1
* @author Eduardo Pérez
* @version v1.0
* @return \Illuminate\Http\Response
*/
public function paso1View(){
$userId = Auth::id();
$pasantia = Pasantia::where('idAlumno', $userId)->first();
Expand All @@ -80,6 +100,13 @@ public function paso1View(){
}

}

/**
* Guarda los datos de tipo de malla y práctica operario
* @author Eduardo Pérez
* @version v1.0
* @return \Illuminate\Http\Response
*/
public function paso1Control(){
$userId = Auth::id();
$pasantia = Pasantia::where('idAlumno', $userId)->first();
Expand All @@ -88,16 +115,25 @@ public function paso1Control(){
return redirect('/inscripcion/2');
}

/**
* Muestra el Paso 2
* @author Eduardo Pérez
* @version v1.0
* @return \Illuminate\Http\Response
*/
public function paso2View(){
$userId = Auth::id();
$pasantia = Pasantia::where('idAlumno', $userId)->first();
$empresas = Empresa::all();
if ($pasantia && $pasantia->statusPaso0==2){
return view('pasantia.paso2', [
'statusPaso0'=>$pasantia->statusPaso0,
'statusPaso1'=>$pasantia->statusPaso1,
'statusPaso2'=>$pasantia->statusPaso2,
'statusPaso3'=>$pasantia->statusPaso3,
'statusPaso4'=>$pasantia->statusPaso4,
'empresas'=>$empresas,
'empresaSel'=>$pasantia->idEmpresa,
'ciudad'=>$pasantia->ciudad,
'pais'=>$pasantia->pais,
'fecha'=>$pasantia->fechaInicio,
Expand All @@ -110,12 +146,28 @@ public function paso2View(){
}
}

/**
* Guarda los datos de la pasantía
* @author Eduardo Pérez
* @version v1.0
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function paso2Control(Request $request){
$incompleto = false;
$userId = Auth::id();
$pasantia = Pasantia::where('idAlumno', $userId)->first();
$pasantia->parienteEmpresa = $request->pariente;
$pasantia->save();
if ($request->empresa){
$pasantia->idEmpresa = $request->empresa;
$pasantia->save();
}
else {
$pasantia->idEmpresa = null;
$pasantia->save();
$incompleto = true;
}

if ($request->ciudad){
$pasantia->ciudad = $request->ciudad;
Expand Down Expand Up @@ -158,6 +210,12 @@ public function paso2Control(Request $request){
return redirect('/inscripcion/3');
}

/**
* Muestra el Paso 3
* @author Eduardo Pérez
* @version v1.0
* @return \Illuminate\Http\Response
*/
public function paso3View(){
$userId = Auth::id();
$pasantia = Pasantia::where('idAlumno', $userId)->first();
Expand All @@ -176,6 +234,13 @@ public function paso3View(){
}
}

/**
* Guarda los datos del supervisor
* @author Eduardo Pérez
* @version v1.0
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function paso3Control(Request $request){
$userId = Auth::id();
$pasantia = Pasantia::where('idAlumno', $userId)->first();
Expand All @@ -195,6 +260,12 @@ public function paso3Control(Request $request){

}

/**
* Muestra el Paso 4
* @author Eduardo Pérez
* @version v1.0
* @return \Illuminate\Http\Response
*/
public function paso4View(){
$userId = Auth::id();
$pasantia = Pasantia::where('idAlumno', $userId)->first();
Expand All @@ -210,11 +281,59 @@ public function paso4View(){
return redirect('/inscripcion/0');
}
}

/**
* Guarda los datos del proyecto de pasantía
* @author Eduardo Pérez
* @version v1.0
* @return \Illuminate\Http\Response
*/
public function paso4Control(){
return redirect('/inscripcion/resumen');
}

/**
* Muestra el Resumen de inscripción
* @author Eduardo Pérez
* @version v1.0
* @return \Illuminate\Http\Response
*/
public function resumenView(){
return view('pasantia.resumen');
$userId = Auth::id();
$pasantia = Pasantia::where('idAlumno', $userId)->first();
if ($pasantia && $pasantia->statusPaso0 == 2){
$empresa = Empresa::where('idEmpresa', $pasantia->idEmpresa)->first();
return view('pasantia.resumen', [
'statusPaso0'=>$pasantia->statusPaso0,
'statusPaso1'=>$pasantia->statusPaso1,
'statusPaso2'=>$pasantia->statusPaso2,
'statusPaso3'=>$pasantia->statusPaso3,
'statusPaso4'=>$pasantia->statusPaso4,
'pasantia'=>$pasantia,
'empresa'=>$empresa]);
}
else {
return redirect('/inscripcion/0');
}
}

/**
* Elimina la pasantía de la base de datos. (SOLO PARA QA)
* @version v1.0
* @author Eduardo Pérez
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id){
if (Auth::user()->rol >=4){
$userId = Auth::id();
$pasantia = Pasantia::where('idAlumno', $userId)->first();
$pasantia->delete();
return redirect('/inscripcion/0');
}
else {
return redirect('/inscripcion/resumen');
}

}
}
Loading

0 comments on commit b54d038

Please sign in to comment.