From edb59c3764c47d65a94c21cc89ddad71c13ee405 Mon Sep 17 00:00:00 2001 From: elyambay Date: Sun, 17 Mar 2019 10:40:37 -0300 Subject: [PATCH] Clonar Encuestas de Beneficios --- app/Exceptions/Handler.php | 2 + app/Http/Controllers/BeneficiosController.php | 57 +++++++- .../BeneficiosPeriodosController.php | 89 ++++++++++++ app/Http/Controllers/EmpresasController.php | 34 ++++- app/Http/Controllers/HomeController.php | 40 ++++-- app/Http/Controllers/ReporteController.php | 136 +++++++++--------- app/Traits/ClubsTrait.php | 8 ++ app/Traits/PeriodosBeneficiosTrait.php | 28 ++++ app/beneficios_periodo.php | 20 +++ ...10846_create_beneficios_periodos_table.php | 40 ++++++ .../Utiles/src/Flash/FlashNotifier.php | 69 ++++++--- resources/views/beneficios/create.blade.php | 60 ++++++++ .../views/beneficios_admin/list.blade.php | 9 +- .../beneficios_periodos/create.blade.php | 77 ++++++++++ .../views/beneficios_periodos/edit.blade.php | 106 ++++++++++++++ .../views/beneficios_periodos/list.blade.php | 95 ++++++++++++ .../views/beneficios_report/charts.blade.php | 4 +- .../views/beneficios_report/index.blade.php | 2 +- resources/views/clientes/home.blade.php | 5 + resources/views/layout.blade.php | 23 +-- resources/views/layouts/report.blade.php | 2 +- resources/views/report/report.blade.php | 2 +- resources/views/vendor/flash/modal.blade.php | 2 +- routes/web.php | 6 + 24 files changed, 790 insertions(+), 126 deletions(-) create mode 100644 app/Http/Controllers/BeneficiosPeriodosController.php create mode 100644 app/Traits/PeriodosBeneficiosTrait.php create mode 100644 app/beneficios_periodo.php create mode 100644 database/migrations/2019_03_04_110846_create_beneficios_periodos_table.php create mode 100644 resources/views/beneficios/create.blade.php create mode 100644 resources/views/beneficios_periodos/create.blade.php create mode 100644 resources/views/beneficios_periodos/edit.blade.php create mode 100644 resources/views/beneficios_periodos/list.blade.php diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php index 21a936f..fa3f940 100644 --- a/app/Exceptions/Handler.php +++ b/app/Exceptions/Handler.php @@ -5,6 +5,7 @@ use Exception; use Illuminate\Auth\AuthenticationException; use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler; +use Illuminate\Database\QueryException; class Handler extends ExceptionHandler { @@ -32,6 +33,7 @@ class Handler extends ExceptionHandler */ public function report(Exception $exception) { + parent::report($exception); } diff --git a/app/Http/Controllers/BeneficiosController.php b/app/Http/Controllers/BeneficiosController.php index b6e808c..b9a171f 100644 --- a/app/Http/Controllers/BeneficiosController.php +++ b/app/Http/Controllers/BeneficiosController.php @@ -44,6 +44,12 @@ public function create() // } + public function clonePoll($id){ + $dbData = beneficios_cabecera_encuesta::find($id); + + return view('beneficios.create')->with('dbData', $dbData); + } + /** * Store a newly created resource in storage. * @@ -52,7 +58,35 @@ public function create() */ public function store(Request $request) { - // + $periodo = $request->periodo; + $id = $request->encuesta_id; + $empresa = $request->empresa_id; + $dbOriginal = beneficios_cabecera_encuesta::find($id); + $dbNuevo = new beneficios_cabecera_encuesta(); + $dbNuevo->empresa_id = $empresa; + $dbNuevo->rubro_id = $dbOriginal->rubro_id; + $dbNuevo->sub_rubro_id = $dbOriginal->sub_rubro_id; + $dbNuevo->cantidad_empleados = $dbOriginal->cantidad_empleados; + $dbNuevo->cantidad_sucursales = $dbOriginal->cantidad_sucursales; + $dbNuevo->periodo = $periodo; + $dbNuevo->finalizada = 'N'; + $dbNuevo->save(); + + $nuevoId = $dbNuevo->id; + + $oldDetalle = beneficios_respuesta::where('beneficios_cabecera_encuesta_id', $id)->get(); + + foreach($oldDetalle as $detalle){ + $dbDetalle = new beneficios_respuesta(); + $dbDetalle->beneficios_cabecera_encuesta_id = $nuevoId; + $dbDetalle->beneficios_pregunta_id = $detalle->beneficios_pregunta_id; + $dbDetalle->beneficios_opcion_id = $detalle->beneficios_opcion_id; + $dbDetalle->abierta = $detalle->abierta; + $dbDetalle->save(); + } + + return redirect()->route('beneficios_admin.index'); + } /** @@ -118,7 +152,7 @@ public function edit($id) $marca = $dbData->detalleBeneficio->where('beneficios_pregunta_id', 66)->first()->beneficios_opcion_id; }else{ - $marca = 1; + $marca = 1; } @@ -250,6 +284,11 @@ public function report(Request $request){ $dbEmpresa = Auth::user()->empresa; // Rubro de la empresa $rubro = $dbEmpresa->rubro_id; + // recuperamos la penultima encuesta + $encuesta = beneficios_cabecera_encuesta::where('empresa_id', $dbEmpresa->id) + ->orderBy('id', 'DESC') + ->skip(1) + ->first(); // recuperamos el item para encontrar la pregunta $id = $request->item_id; $item = beneficios_item::find($id); @@ -257,7 +296,10 @@ public function report(Request $request){ $pregunta = $item->pregunta; // Encuestas del rubro - $encuestas = beneficios_cabecera_encuesta::where('rubro_id', $rubro)->pluck('id'); + $encuestas = beneficios_cabecera_encuesta::where('rubro_id', $rubro) + ->where('periodo', $encuesta->periodo) + ->pluck('id'); + // Si la pregunta es cerrada verificamos la cantidad de "no aplica" que tiene if($pregunta->cerrada == 'S'){ if(!$pregunta->beneficios_pregunta_id){ @@ -268,9 +310,10 @@ public function report(Request $request){ //dd($encuestas, $aplicables); + //dd($aplicables); $aplicables = $aplicables->reject(function($item){ if(!$item->beneficiosOpcion){ - dd($item); + return false; } if($item->beneficiosOpcion->opcion_no_aplica){ return $item; @@ -305,10 +348,12 @@ public function getChartData(Request $request){ $rubro = $empresa->rubro_id; // Ultima encuesta de la empresa - $encuesta = beneficios_cabecera_encuesta::where("empresa_id", $empresa->id)->orderBy('id', 'DESC')->first(); + $encuesta = beneficios_cabecera_encuesta::where("empresa_id", $empresa->id)->orderBy('id', 'DESC')->skip(1)->first(); // Encuestas del rubro - $encuestas = beneficios_cabecera_encuesta::where('rubro_id', $rubro)->pluck('id'); + $encuestas = beneficios_cabecera_encuesta::where('rubro_id', $rubro) + ->where('periodo', $encuesta->periodo) + ->pluck('id'); // Recuperamos el id de la Pregunta del cuestionario $id = $request->pregunta; $pregunta = beneficios_pregunta::find($id); diff --git a/app/Http/Controllers/BeneficiosPeriodosController.php b/app/Http/Controllers/BeneficiosPeriodosController.php new file mode 100644 index 0000000..c910cda --- /dev/null +++ b/app/Http/Controllers/BeneficiosPeriodosController.php @@ -0,0 +1,89 @@ +with('dbData', $dbData); + } + + public function create(){ + $rubro = Rubro::first()->id; + $periodos = $this->getPeriodos($rubro); + $rubros = $this->getRubros(); + return view('beneficios_periodos.create')->with('periodos', $periodos) + ->with('rubros', $rubros); + } + + public function store(Request $request){ + $dbData = new Beneficios_periodo($request->all()); + $dbData->activo = 0; + $dbData->save(); + return redirect()->route('periodos_activos.index'); + } + + public function show($id) + { + // + } + + public function edit($id){ + $dbData = Beneficios_periodo::find($id); + $rubro = Rubro::find($dbData->rubro_id); + $periodos = $this->getPeriodos($rubro->id); + $rubros = $this->getRubros(); + //dd($periodos, $dbData); + return view('beneficios_periodos.edit')->with('dbData', $dbData) + ->with('periodos', $periodos) + ->with('rubros', $rubros); + } + + public function update(Request $request, $id){ + + if($request->activo){ + $activo = 1; + $beneficios_periodos = Beneficios_periodo::where('rubro_id', $request->rubro_id)->get(); + foreach($beneficios_periodos as $ficha){ + $ficha->activo = 0; + $ficha->save(); + } + }else{ + $activo = 0; + } + $dbData = Beneficios_periodo::find($id); + $dbData->fill($request->all()); + $dbData->activo = $activo; + $dbData->save(); + return redirect()->route('periodos_activos.index'); + } + + public function destroy($id){ + $dbData = Cargo::find($id); + $dbData->delete(); + + return redirect()->route('cargos.index'); + } + + public function getDetalle(Request $request){ + $cargo = Cargo::find($request->id); + return $cargo->detalle; + } + + public function getPeriodosAjax(Request $request){ + $periodos = $this->getPeriodos($request->rubro_id); + return $periodos; + } +} diff --git a/app/Http/Controllers/EmpresasController.php b/app/Http/Controllers/EmpresasController.php index bb64b50..62950bd 100644 --- a/app/Http/Controllers/EmpresasController.php +++ b/app/Http/Controllers/EmpresasController.php @@ -8,6 +8,8 @@ use App\Sub_rubro; use Auth; use flash; +use Exception; +use DB; class EmpresasController extends Controller { @@ -115,6 +117,36 @@ public function update(Request $request, $id) */ public function destroy($id) { - // + $dbData = Empresa::find($id); + DB::beginTransaction(); + try{ + $dbData->delete(); + DB::commit(); + flash::elsoftMessage(2011, true); + }catch(Exception $exception){ + DB::rollback(); + if ($exception instanceof \Illuminate\Database\QueryException) { + switch ($exception->errorInfo[1]) { + case 1048: + Flash::elsoftMessage(4001, true); + break; + case 1062: + Flash::elsoftMessage(4002, true); + break; + case 1451: + Flash::elsoftMessage(4003, true); + default: + Flash::elsoftMessage(4000, true); + break; + } + }else{ + Flash::elsoftMessage(3012, true); + } + return redirect()->back(); + } + + return redirect()->route('empresas.index'); } + + } diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index 2bc2b0c..df98e11 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -29,11 +29,32 @@ public function __construct() */ public function index() { - if(Auth::user()->is_admin){ + $user = Auth::user(); + + if($user->id == 176 ){ + $ficha = Ficha_dato::find(2); + $dbEmpresa = $user->empresa; + session()->put('periodo', $ficha->periodo); + $dbEncuesta = Cabecera_encuesta::where('empresa_id', $dbEmpresa->id) + ->where('periodo', $ficha->periodo) + ->first(); + + $dbEncuestas = Cabecera_encuesta::where('empresa_id', $dbEmpresa->id) + ->orderBy('id', 'DESC') + ->get(); + $dbEncuestaAnt = $dbEncuestas->get(1); + + $club = $this->club($dbEmpresa->rubro_id); + return view('clientes.home')->with('dbEmpresa', $dbEmpresa) + ->with('club', $club) + ->with('dbEncuesta', $dbEncuesta) + ->with('dbEncuestaAnt' , $dbEncuestaAnt); + } + if($user->is_admin){ return view('home'); }else{ - if(Auth::user()->is_benefit){ - $dbEmpresa = Auth::user()->empresa; + if($user->is_benefit){ + $dbEmpresa = $user->empresa; $dbEncuestas = beneficios_cabecera_encuesta::where('empresa_id', $dbEmpresa->id)->orderBy('id', 'DESC')->get(); if($dbEncuestas->count() > 0){ $dbEncuesta = $dbEncuestas->first(); @@ -45,8 +66,9 @@ public function index() ->with('dbEmpresa', $dbEmpresa); }else{ - $dbEmpresa = Auth::user()->empresa; + $dbEmpresa = $user->empresa; $ficha = Ficha_dato::where('rubro_id', $dbEmpresa->rubro_id)->activa()->first(); + if($ficha){ $dbEncuesta = Cabecera_encuesta::where('empresa_id', $dbEmpresa->id) ->where('periodo', $ficha->periodo) @@ -61,12 +83,12 @@ public function index() $dbEncuestaAnt = $dbEncuestas->get(1); - //dd($dbEncuesta, $dbEncuestaAnt); + //dd($dbEmpresa->rubro_id); $club = $this->club($dbEmpresa->rubro_id); - return view('clientes.home')->with('dbEmpresa', $dbEmpresa) - ->with('club', $club) - ->with('dbEncuesta', $dbEncuesta) - ->with('dbEncuestaAnt' , $dbEncuestaAnt); + return view('clientes.home')->with('dbEmpresa', $dbEmpresa) + ->with('club', $club) + ->with('dbEncuesta', $dbEncuesta) + ->with('dbEncuestaAnt' , $dbEncuestaAnt); } } diff --git a/app/Http/Controllers/ReporteController.php b/app/Http/Controllers/ReporteController.php index 6e80f99..697329a 100644 --- a/app/Http/Controllers/ReporteController.php +++ b/app/Http/Controllers/ReporteController.php @@ -371,9 +371,8 @@ public function cargoReportClubExcel(Request $request){ $itemArrayInt = $itemArray; // por cada item del detalle foreach ($respuesta as $key => $item) { - + //dd($item); switch ($key) { - case 'detalle_universo': $this->CargaDetalle($item, $itemArray); break; @@ -387,7 +386,7 @@ public function cargoReportClubExcel(Request $request){ } } - + //dd($itemArray); $detalleUniverso->push($itemArray); $detalleNacional->push($itemArrayNac); $detalleInternacional->push($itemArrayInt); @@ -491,7 +490,7 @@ public function cargoReportClubExcel(Request $request){ // Salario Efectivo Total Anual $sheet->cell('AO5', function($cell){ - $cell->setValue('EFECTIVO TOTAL ANUAL'); + $cell->setValue('COMPENSACION ANUAL TOTAL'); }); $sheet->mergeCells('AO5:AT5'); $sheet->cells('AO5:AT5', function($cells){ @@ -1222,10 +1221,6 @@ private function cargaDetalle($item, &$itemArray){ $variableAnualEmp = 0; //dd($item); foreach ($item as $key => $value) { -/* dd($value, $key, $item); - if( array_key_exists("Variable Anual", $value)){ - - }*/ switch ($value["Concepto"]) { case "Comision": $this->cargador($value, $itemArray, false); @@ -1792,33 +1787,7 @@ private function segmenter( &$collection, $segmento, $dbCargo); - if($muestraComision){ - //Comisión - $countCasosComision = $detalle->where('comision', '>', '0')->unique('cabecera_encuesta_id')->count(); - $comision = $detalle->where('comision', '>', '0')->pluck('comision'); - $comisionMin = $comision->min(); - $comisionMax = $comision->max(); - $comisionProm = $comision->avg(); - $comisionMed = $this->median($comision); - $comision25Per = $this->percentile(25, $comision); - $comision75Per = $this->percentile(75, $comision); - - $this->pusher( $collection, - $countCasosComision, - //Lang::get('reportReport.concept_bonus'), - "Comision", - $comisionMin, - $comisionMax, - $comisionProm, - $comisionMed, - $comision25Per, - $comision75Per, - $dbClienteEnc->comision, - $segmento, - $dbCargo); - - } - + // Variable Anual $plusRendimiento = $detalle->where('plus_rendimiento', '>', '0')->pluck('plus_rendimiento'); $plusMin = $plusRendimiento->min(); @@ -1990,6 +1959,33 @@ private function segmenter( &$collection, $dbClienteEnc->bono_anual, $segmento, $dbCargo); + + if($muestraComision){ + //Comisión + $countCasosComision = $detalle->where('comision', '>', '0')->unique('cabecera_encuesta_id')->count(); + $comision = $detalle->where('comision', '>', '0')->pluck('comision'); + $comisionMin = $comision->min(); + $comisionMax = $comision->max(); + $comisionProm = $comision->avg(); + $comisionMed = $this->median($comision); + $comision25Per = $this->percentile(25, $comision); + $comision75Per = $this->percentile(75, $comision); + + $this->pusher( $collection, + $countCasosComision, + //Lang::get('reportReport.concept_bonus'), + "Comision", + $comisionMin, + $comisionMax, + $comisionProm, + $comisionMed, + $comision25Per, + $comision75Per, + $dbClienteEnc->comision, + $segmento, + $dbCargo); + + } // Efectivo Anual Garantizado $detalle = $detalle->map(function($item){ @@ -2017,7 +2013,7 @@ private function segmenter( &$collection, $this->pusher( $collection, $countCasos, - Lang::get('reportReport.concept_annual_cash'), + Lang::get('reportReport.concept_annual_cash_total'), $efectivoTotalMin, $efectivoTotalMax, $efectivoTotalProm, @@ -2219,34 +2215,7 @@ private function segmenter( &$collection, $efectivoEmpresa, $segmento, $dbCargo); - - if($muestraComision){ - //Comisión - $countCasosComision = $detalle->where('comision', '>', '0')->unique('cabecera_encuesta_id')->count(); - $comision = $detalle->where('comision', '>', '0')->pluck('comision'); - $comisionMin = $comision->min(); - $comisionMax = $comision->max(); - $comisionProm = $comision->avg(); - $comisionMed = $this->median($comision); - $comision25Per = $this->percentile(25, $comision); - $comision75Per = $this->percentile(75, $comision); - - $this->pusher( $collection, - $countCasosComision, - //Lang::get('reportReport.concept_bonus'), - "Comision", - $comisionMin, - $comisionMax, - $comisionProm, - $comisionMed, - $comision25Per, - $comision75Per, - $dbClienteEnc->comision, - $segmento, - $dbCargo); - - } - + //Adicional $countCasosAdicionales = $detalle->where('adicionales_resto', '>', '0')->unique('cabecera_encuesta_id')->count(); $adicionales = $detalle->where('adicionales_resto', '>', '0')->pluck('adicionales_resto'); @@ -2292,6 +2261,34 @@ private function segmenter( &$collection, $segmento, $dbCargo); + + if($muestraComision){ + //Comisión + $countCasosComision = $detalle->where('comision', '>', '0')->unique('cabecera_encuesta_id')->count(); + $comision = $detalle->where('comision', '>', '0')->pluck('comision'); + $comisionMin = $comision->min(); + $comisionMax = $comision->max(); + $comisionProm = $comision->avg(); + $comisionMed = $this->median($comision); + $comision25Per = $this->percentile(25, $comision); + $comision75Per = $this->percentile(75, $comision); + + $this->pusher( $collection, + $countCasosComision, + //Lang::get('reportReport.concept_bonus'), + "Comision", + $comisionMin * 12, + $comisionMax * 12, + $comisionProm * 12, + $comisionMed * 12, + $comision25Per * 12, + $comision75Per * 12, + $dbClienteEnc->comision * 12, + $segmento, + $dbCargo); + + } + // Efectivo Total Anual $detalle = $detalle->map(function($item){ $item['efectivo_total_anual'] = $item['efectivo_anual_garantizado'] + @@ -2348,7 +2345,7 @@ private function segmenter( &$collection, $beneficiosMed * 12, $beneficios25Per * 12, $beneficios75Per * 12, - $dbClienteEnc->beneficios_bancos * 12, + $dbClienteEnc->beneficios_resto * 12, $segmento, $dbCargo); @@ -2561,6 +2558,7 @@ public function resultadosExcel(Request $request){ $item->plus_rendimiento + $adicionalNav + $item->bono_anual; + $efectivoTotalAnual = $efectivoAnual + $adicionalOtros + $item->bono_anual; $totalBeneficios = $item->refrigerio + @@ -2665,6 +2663,7 @@ public function resultadosExcel(Request $request){ "Condición Ocupante"=>$item->condicion_ocupante, "Total Beneficios Anual"=>$totalBeneficios*12, "Compensación Anual Total" => ($totalBeneficios*12 + $efectivoTotalAnual), + "Compensación Anual Total Navieras" => ($totalBeneficios*12 + $efectivoTotalAnualNav), "Aguinaldo Impactado"=> $aguinaldoImpactado, "Compensación Efectiva Anual" => $compensacionEfectiva ); @@ -2676,7 +2675,7 @@ public function resultadosExcel(Request $request){ Excel::create($filename, function($excel) use($detalle, $periodo) { $excel->sheet($periodo, function($sheet) use($detalle){ - $sheet->cells('A10:BQ10', function($cells){ + $sheet->cells('A10:BR10', function($cells){ $cells->setBackground('#00897b'); $cells->setFontColor("#FFFFFF"); $cells->setFontWeight("bold"); @@ -3052,8 +3051,9 @@ public function setSession(Request $request){ return "ok"; } - private function cargoReportAll(Request $request, $tipo, $muestraComision = false){ + private function cargoReportAll(Request $request, $tipo, $muestraComision = true){ //dd($request->all()); + $dbEmpresa = Empresa::find($request->empresa_id); // datos de la empresa del cliente if(Session::has('periodo')){ $per = Session::get('periodo'); @@ -3326,7 +3326,7 @@ private function cargoReportAll(Request $request, $tipo, $muestraComision = fals })->export('xlsx'); return redirect()->route('resultados'); }elseif ($tipo == "clubExcel") { - + $cargoFileName = str_replace("-", "_", str_replace(" ", "_", $dbCargo->descripcion)); $filename = 'Resultados_'.$periodo.'_'.$cargoFileName; $detalleUniverso = array(); diff --git a/app/Traits/ClubsTrait.php b/app/Traits/ClubsTrait.php index ee2d4dc..5c7609b 100644 --- a/app/Traits/ClubsTrait.php +++ b/app/Traits/ClubsTrait.php @@ -26,6 +26,10 @@ public function club($rubro, $getImagen = null){ $imagen = "images/caratula-bancos.PNG"; $club = "Club: Survey of Non-Governmental Organizations"; break; + case 8: + $imagen = "images/caratula-bancos.PNG"; + $club = "Club de Empresas de Consumo Masivo"; + break; default: $imagen = "images/caratula-bancos.PNG"; $club = "de Bancos"; @@ -53,6 +57,10 @@ public function club($rubro, $getImagen = null){ $imagen = "images/caratula-bancos.PNG"; $club = "Club - Encuesta de Organizaciones No Gubernamentales"; break; + case 8: + $imagen = "images/caratula-bancos.PNG"; + $club = "Club de Empresas de Consumo Masivo"; + break; default: $imagen = "images/caratula-bancos.PNG"; $club = "Club de Bancos"; diff --git a/app/Traits/PeriodosBeneficiosTrait.php b/app/Traits/PeriodosBeneficiosTrait.php new file mode 100644 index 0000000..402d9d6 --- /dev/null +++ b/app/Traits/PeriodosBeneficiosTrait.php @@ -0,0 +1,28 @@ +pluck('descripcion', 'id'); + return $rubros; + } + + public function getPeriodos($id){ + // recuperamos todas las encuestas del primer rubro recuperado + $periodos = beneficios_cabecera_encuesta::where('rubro_id', $id)->get(); + // filtramos los periodos para el primer rubro recuperado + $periodos = $periodos->map(function($item){ + $rubro = $item->rubro->descripcion; + $periodo = $item->periodo; + $item['periodo_combo'] = $periodo.' - '.$rubro; + return $item; + })->unique('periodo')->pluck('periodo_combo', 'periodo'); + + return $periodos; + } +} \ No newline at end of file diff --git a/app/beneficios_periodo.php b/app/beneficios_periodo.php new file mode 100644 index 0000000..a7fcbca --- /dev/null +++ b/app/beneficios_periodo.php @@ -0,0 +1,20 @@ +belongsTo('App\Rubro'); + } + + public function scopeActivo($query){ + return $query->where('activo', 1); + } +} diff --git a/database/migrations/2019_03_04_110846_create_beneficios_periodos_table.php b/database/migrations/2019_03_04_110846_create_beneficios_periodos_table.php new file mode 100644 index 0000000..86962dc --- /dev/null +++ b/database/migrations/2019_03_04_110846_create_beneficios_periodos_table.php @@ -0,0 +1,40 @@ +increments('id'); + $table->string('periodo'); + $table->integer('rubro_id')->unsigned(); + $table->integer('activo'); + $table->timestamps(); + + $table->foreign('rubro_id') + ->references('id') + ->on('rubros') + ->onDelete('restrict') + ->onUpdate('cascade'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('beneficios_periodos'); + } +} diff --git a/packages/elsoftpy/Utiles/src/Flash/FlashNotifier.php b/packages/elsoftpy/Utiles/src/Flash/FlashNotifier.php index 63a5687..135437c 100644 --- a/packages/elsoftpy/Utiles/src/Flash/FlashNotifier.php +++ b/packages/elsoftpy/Utiles/src/Flash/FlashNotifier.php @@ -168,7 +168,7 @@ public function elsoftMessage($code, $modal = false) // info case 0: if($modal){ - $this->overlay('Mensaje de Prueba', 'info', 'PollPall - 0'); + $this->overlay('Mensaje de Prueba', 'info', 'S&B - 0'); }else{ $this->info('Mensaje de Prueba - Info'); } @@ -177,14 +177,14 @@ public function elsoftMessage($code, $modal = false) // warning case 1000: if($modal){ - $this->overlay('Mensaje de Prueba', 'warning', 'PollPall - 1000'); + $this->overlay('Mensaje de Prueba', 'warning', 'S&B - 1000'); }else{ $this->warning('Mensaje de Prueba - Atención'); } break; case 1001: if($modal){ - $this->overlay('No tenés permiso de acceso al Formulario', 'warning', 'PollPall - 1001'); + $this->overlay('No tenés permiso de acceso al Formulario', 'warning', 'S&B - 1001'); }else{ $this->warning('No tenés permiso de acceso al Formulario'); } @@ -192,7 +192,7 @@ public function elsoftMessage($code, $modal = false) // success case 2000: if($modal){ - $this->overlay('Mensaje de Prueba', 'success', 'PollPall - 2000'); + $this->overlay('Mensaje de Prueba', 'success', 'S&B - 2000'); }else{ $this->success('Mensaje de Prueba - Exito'); } @@ -200,49 +200,49 @@ public function elsoftMessage($code, $modal = false) break; case 2010: if($modal){ - $this->overlay('La encuesta fue eliminada', 'success', 'PollPall - 2010'); + $this->overlay('El registro fue guardado con éxito', 'success', 'S&B - 2010'); }else{ - $this->success('La encuesta fue eliminada'); + $this->success('El registro fue guardado con éxito'); } break; case 2011: if($modal){ - $this->overlay('El registro de la Persona fue eliminado', 'success', 'PollPall - 2011'); + $this->overlay('El registro fue eliminado con éxito', 'success', 'S&B - 2011'); }else{ - $this->success('El registro de la Persona fue eliminado'); + $this->success('El registro fue eliminado con éxito'); } break; case 2012: if($modal){ - $this->overlay('El registro de la Gerencia fue eliminado', 'success', 'PollPall - 2012'); + $this->overlay('El registro de la Gerencia fue eliminado', 'success', 'S&B - 2012'); }else{ $this->success('El registro de la Gerencia fue eliminado'); } break; case 2013: if($modal){ - $this->overlay('El registro del Area fue eliminado', 'success', 'PollPall - 2013'); + $this->overlay('El registro del Area fue eliminado', 'success', 'S&B - 2013'); }else{ $this->success('El registro del Area fue eliminado'); } break; case 2014: if($modal){ - $this->overlay('El registro de la Sub Area fue eliminado', 'success', 'PollPall - 2014'); + $this->overlay('El registro de la Sub Area fue eliminado', 'success', 'S&B - 2014'); }else{ $this->success('El registro de la Sub Area fue eliminado'); } break; case 2015: if($modal){ - $this->overlay('El registro del Cargo fue eliminado', 'success', 'PollPall - 2015'); + $this->overlay('El registro del Cargo fue eliminado', 'success', 'S&B - 2015'); }else{ $this->success('El registro del Cargo fue eliminado'); } break; case 2016: if($modal){ - $this->overlay('El registro del Funcionario fue eliminado', 'success', 'PollPall - 2016'); + $this->overlay('El registro del Funcionario fue eliminado', 'success', 'S&B - 2016'); }else{ $this->success('El registro del Funcionario fue eliminado'); } @@ -251,49 +251,49 @@ public function elsoftMessage($code, $modal = false) //Errors case 3000: if($modal){ - $this->overlay('Mensaje de Prueba', 'error', 'PollPall - 3000'); + $this->overlay('Mensaje de Prueba', 'error', 'S&B - 3000'); }else{ $this->error('Mensaje de Prueba - Error'); } break; case 3010: if($modal){ - $this->overlay('La encuesta que querés eliminar ya fue utilizada, por eso no puede ser borrada', 'error', 'PollPal - 3010'); + $this->overlay('La encuesta que querés eliminar ya fue utilizada, por eso no puede ser borrada', 'error', 'S&B - 3010'); }else{ $this->error('Mensaje de Prueba - Error'); } break; case 3011: if($modal){ - $this->overlay('El registro de la Persona que querés eliminar está relacionado con otro registro, por eso no puede ser borrado', 'error', 'PollPal - 3011'); + $this->overlay('El registro de la Persona que querés eliminar está relacionado con otro registro, por eso no puede ser borrado', 'error', 'S&B - 3011'); }else{ $this->error('El registro de la Persona que querés eliminar está relacionado con otro registro, por eso no puede ser borrado - Error'); } break; case 3012: if($modal){ - $this->overlay('La Gerencia que querés eliminar está relacionada con otro registro, por eso no puede ser borrada', 'error', 'PollPal - 3012'); + $this->overlay('Hubo un error inesperado al intentar eliminar el registro que seleccionaste.', 'error', 'S&B - 3012'); }else{ - $this->error('La Gerencia que querés eliminar está relacionada con otro registro, por eso no puede ser borrada - Error'); + $this->error('Hubo un error inesperado al intentar eliminar el registro que seleccionaste. - Error'); } break; case 3013: if($modal){ - $this->overlay('El Area que querés eliminar está relacionada con otro registro, por eso no puede ser borrada', 'error', 'PollPal - 3013'); + $this->overlay('El Area que querés eliminar está relacionada con otro registro, por eso no puede ser borrada', 'error', 'S&B - 3013'); }else{ $this->error('El Area que querés eliminar está relacionada con otro registro, por eso no puede ser borrada - Error'); } break; case 3014: if($modal){ - $this->overlay('La Sub Area que querés eliminar está relacionada con otro registro, por eso no puede ser borrada', 'error', 'PollPal - 3014'); + $this->overlay('La Sub Area que querés eliminar está relacionada con otro registro, por eso no puede ser borrada', 'error', 'S&B - 3014'); }else{ $this->error('La Sub Area que querés eliminar está relacionada con otro registro, por eso no puede ser borrada - Error'); } break; case 3015: if($modal){ - $this->overlay('El Cargo que querés eliminar está relacionado con otro registro, por eso no puede ser borrado', 'error', 'PollPal - 3015'); + $this->overlay('El Cargo que querés eliminar está relacionado con otro registro, por eso no puede ser borrado', 'error', 'S&B - 3015'); }else{ $this->error('El Cargo que querés eliminar está relacionado con otro registro, por eso no puede ser borrado - Error'); } @@ -301,11 +301,34 @@ public function elsoftMessage($code, $modal = false) case 3016: if($modal){ - $this->overlay('El registro de Funcionario que querés eliminar está relacionado con otro registro, por eso no puede ser borrado', 'error', 'PollPal - 3016'); + $this->overlay('El registro de Funcionario que querés eliminar está relacionado con otro registro, por eso no puede ser borrado', 'error', 'S&B - 3016'); }else{ $this->error('El registro de Funcionario que querés eliminar está relacionado con otro registro, por eso no puede ser borrado - Error'); } - break; + break; + case 4001: + if($modal){ + $this->overlay('Error de integridad en la Base de Datos.
Ha introducido un valor nulo en un campo que no admite dicho valor.
La información guardada podría no mostrarse correctamente.', 'warning', 'S&B - 4000'); + }else{ + $this->warning('Error en la base de datos (Valor nulo no válido) -Atención'); + } + break; + case 4002: + if($modal){ + $this->overlay('Error de integridad en la Base de Datos.
Ha intentado introducir una clave única ya existente.', 'error', 'S&B - 4002'); + }else{ + $this->error('Error en la base de datos (Valor duplicado) -Error'); + } + break; + case 4003: + if($modal){ + $this->overlay('Error de integridad en la Base de Datos.
No se puede borrar o actualizar el registro porque posee otros registros relacionados a él', 'error', 'S&B - 4003'); + }else{ + $this->error('Error en la base de datos (Registros relacionados al que desea borrar o actualizar) -Error'); + } + break; + + } diff --git a/resources/views/beneficios/create.blade.php b/resources/views/beneficios/create.blade.php new file mode 100644 index 0000000..a482a0f --- /dev/null +++ b/resources/views/beneficios/create.blade.php @@ -0,0 +1,60 @@ +@extends('layout') +@section('content') +
+
+
+

Clonar Encuesta de Beneficios

+
+
+
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+ +
+ +
+
+
+
+
+@stop +@push('scripts') + +@endpush \ No newline at end of file diff --git a/resources/views/beneficios_admin/list.blade.php b/resources/views/beneficios_admin/list.blade.php index cc9cc51..daa03d3 100644 --- a/resources/views/beneficios_admin/list.blade.php +++ b/resources/views/beneficios_admin/list.blade.php @@ -19,7 +19,8 @@ Descripcion Periodo Finalizada - + + @@ -33,7 +34,11 @@ edit Completar - + + + + content_copy Clonar + @endforeach diff --git a/resources/views/beneficios_periodos/create.blade.php b/resources/views/beneficios_periodos/create.blade.php new file mode 100644 index 0000000..94e40ea --- /dev/null +++ b/resources/views/beneficios_periodos/create.blade.php @@ -0,0 +1,77 @@ +@extends('layout') +@section('content') +
+
+
+

Configurar nuevo periodo

+
+
+
+
+
+ + +
+
+ + +
+
+ + + +
+
+
+
+@stop +@push('scripts') + +@endpush \ No newline at end of file diff --git a/resources/views/beneficios_periodos/edit.blade.php b/resources/views/beneficios_periodos/edit.blade.php new file mode 100644 index 0000000..ea55211 --- /dev/null +++ b/resources/views/beneficios_periodos/edit.blade.php @@ -0,0 +1,106 @@ +@extends('layout') +@section('content') +
+
+
+

Editar Ficha

+
+
+
+
+
+ + +
+
+ + +
+
+ +
+ +
+ + {{ method_field('PUT') }} +
+ +
+ +
+
+
+
+@stop +@push('scripts') + +@endpush \ No newline at end of file diff --git a/resources/views/beneficios_periodos/list.blade.php b/resources/views/beneficios_periodos/list.blade.php new file mode 100644 index 0000000..2f68d80 --- /dev/null +++ b/resources/views/beneficios_periodos/list.blade.php @@ -0,0 +1,95 @@ +@extends('layout') + +@section('content') +
+ +
+
+
+
+

Configuración de Periodos Activos

+
+
+ + + + + + + + + + + @foreach($dbData as $est) + + + + + + + + @endforeach + +
IdRubroPeriodoActivoOpciones
{{ $est->id }}{{ $est->rubro->descripcion }}{{ $est->periodo }} + @if ($est->activo) + Sí + @else + No + @endif + + editEditar + + + + deleteBorrar + + +
+
+
+
+ +@endsection +@push('scripts') + +@endpush \ No newline at end of file diff --git a/resources/views/beneficios_report/charts.blade.php b/resources/views/beneficios_report/charts.blade.php index 6e4237d..81e779a 100644 --- a/resources/views/beneficios_report/charts.blade.php +++ b/resources/views/beneficios_report/charts.blade.php @@ -25,7 +25,7 @@
-
+

{{$item->titulo}}

@@ -48,7 +48,7 @@ @foreach ($practicas as $element)
  • -
    diff --git a/resources/views/beneficios_report/index.blade.php b/resources/views/beneficios_report/index.blade.php index 441e9c6..b3d07a7 100644 --- a/resources/views/beneficios_report/index.blade.php +++ b/resources/views/beneficios_report/index.blade.php @@ -62,7 +62,7 @@
    -
    diff --git a/resources/views/clientes/home.blade.php b/resources/views/clientes/home.blade.php index c44a617..a223a46 100644 --- a/resources/views/clientes/home.blade.php +++ b/resources/views/clientes/home.blade.php @@ -82,6 +82,11 @@ + @else + + {{$dbEncuesta->periodo}} + + @endif