Sindbad~EG File Manager
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Redirect;
use Illuminate\Http\Request;
use App\Models\Competencia;
use App\Models\Asignacion;
use App\Models\Interrogante;
use App\Models\Respuesta;
use DB;
use Session;
class FormularioController extends Controller{
public function create($id) {
$asignacion=DB::table('asignacions as a')
->join('users as u','a.evaluador_id','u.id')
->join('users as us','a.evaluado_id','us.id')
->join('evaluacions as e','a.evaluacion_id','e.id')
->join('empresas as em','a.empresa_id','em.id')
->select('a.id','a.asi_estado as estado','u.name as evaluador','us.name as evaluado','e.eva_nom as evaluacion','e.eva_info as info','a.evaluacion_id','a.updated_at as fecha_evaluacion')
->where('a.id',$id)->first();
$competencias=Competencia::where('evaluacion_id',$asignacion->evaluacion_id)->get();
return view('admin.formulario.create',["asignacion"=>$asignacion,'competencias'=>$competencias]);
}
public function store(Request $request) {
$asignacion = Asignacion::findOrFail($request->asignacion_id);
$competencias=Competencia::where('evaluacion_id',$asignacion->evaluacion_id)->get();
foreach ($competencias as $com) {
$interrogantes=Interrogante::where('competencia_id',$com->id)->get();
foreach ($interrogantes as $int){
$cargarespuesta = 'respuesta-'.$int->id;
$respuesta=new Respuesta;
$respuesta->asignacion_id = $request->asignacion_id;
$respuesta->interrogante_id = $int->id;
$respuesta->respuesta = $request->$cargarespuesta;
$respuesta->save();
}
}
$asignacion->asi_estado = 1;
if ($asignacion->update()) {
Session::flash('success', '¡Formulario guardado correctamente!');
}
return Redirect::to('admin/evaluar');
}
public function show($id) {
$asignacion=DB::table('asignacions as a')
->join('users as u','a.evaluador_id','u.id')
->join('users as us','a.evaluado_id','us.id')
->join('evaluacions as e','a.evaluacion_id','e.id')
->join('empresas as em','a.empresa_id','em.id')
->select('a.id','a.asi_estado as estado','u.name as evaluador','us.puesto','us.ingreso','us.name as evaluado','e.eva_nom as evaluacion','a.evaluacion_id','us.id as evaluado_id','a.updated_at as fecha_evaluacion')
->where('a.id',$id)->first();
$competencias=Competencia::where('evaluacion_id',$asignacion->evaluacion_id)->get();
$nombres = [];
$estadisticas = [];
$estadisticas2 = [];
$total = [];
foreach($competencias as $com){
$interrogantes=Interrogante::where('competencia_id',$com->id)->where('int_estado',1)->orderBy('int_ubicacion','asc')->get();
$envio=0;
$contador=0;
foreach ($interrogantes as $int) {
$respuesta = Respuesta::where('interrogante_id',$int->id)->where('asignacion_id',$id)->first();
if ($int->int_tipo == 1 && $respuesta->respuesta != "N/A") {
$envio+=intval($respuesta->respuesta);
$contador+=1;
}
}
if ($envio != 0) {
$totalpuntos=intval($com->com_fin)*$contador;
$estadisticas2[] = $envio;
$envio=intval(($envio*100)/$totalpuntos);
$nombres[] = $com->com_nom;
$total[] = $totalpuntos;
}
$estadisticas[] = $envio;
}
return view('admin.formulario.show',["asignacion"=>$asignacion,'competencias'=>$competencias,'nombres2'=>$nombres,"nombres"=>json_encode($nombres,JSON_NUMERIC_CHECK),"estadisticas"=>json_encode($estadisticas,JSON_NUMERIC_CHECK),"estadisticas3"=>$estadisticas,"estadisticas2"=>$estadisticas2,"total"=>$total]);
}
public function show2($id) {
$asignacion=DB::table('asignacions as a')
->join('users as u','a.evaluador_id','u.id')
->join('users as us','a.evaluado_id','us.id')
->join('evaluacions as e','a.evaluacion_id','e.id')
->join('empresas as em','a.empresa_id','em.id')
->select('a.id','a.asi_estado as estado','u.name as evaluador','us.puesto','us.ingreso','us.name as evaluado','e.eva_nom as evaluacion','a.evaluacion_id','us.id as evaluado_id','a.updated_at as fecha_evaluacion')
->where('a.id',$id)->first();
$competencias=Competencia::where('evaluacion_id',$asignacion->evaluacion_id)->get();
$nombres = [];
$estadisticas = [];
$estadisticas2 = [];
$total = [];
$feckback = [];
foreach($competencias as $com){
$interrogantes=Interrogante::where('competencia_id',$com->id)->where('int_estado',1)->orderBy('int_ubicacion','asc')->get();
$envio=0;
$contador=0;
foreach ($interrogantes as $int) {
$respuesta = Respuesta::where('interrogante_id',$int->id)->where('asignacion_id',$id)->first();
if ($int->int_tipo == 1 && $respuesta->respuesta != "N/A") {
$envio+=intval($respuesta->respuesta);
$contador+=1;
}else{
if($int->grafico == 1){
$feckback[] = $respuesta->respuesta;
}
}
}
if ($envio != 0) {
$totalpuntos=intval($com->com_fin)*$contador;
$estadisticas2[] = $envio;
$envio=intval(($envio*100)/$totalpuntos);
$nombres[] = $com->com_nom;
$total[] = $totalpuntos;
}
$estadisticas[] = $envio;
}
return view('admin.formulario.show2',["asignacion"=>$asignacion,'competencias'=>$competencias,'nombres2'=>$nombres,"nombres"=>json_encode($nombres,JSON_NUMERIC_CHECK),"estadisticas"=>json_encode($estadisticas,JSON_NUMERIC_CHECK),"estadisticas3"=>$estadisticas,"feckback"=>$feckback,"estadisticas2"=>$estadisticas2,"total"=>$total]);
}
}
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists