public function proyects() { $usuario = SecurityController::user(); $lidero = Proyecto::with(['lider.rolPrincipal'])->join('Equipo', 'Equipo.idProyecto', '=', 'Proyecto.idProyecto')->join('UsuarioRolEquipo', 'UsuarioRolEquipo.idEquipo', '=', 'Equipo.idEquipo')->join('Rol', 'Rol.idRol', '=', 'UsuarioRolEquipo.idRol')->where('Proyecto.idLider', '=', $usuario->id())->where('Rol.idRol', '!=', '1')->select('Proyecto.*', 'Rol.nombreRol'); $misproyectos = Proyecto::with(['lider.rolPrincipal'])->join('Equipo', 'Equipo.idProyecto', '=', 'Proyecto.idProyecto')->join('UsuarioRolEquipo', 'UsuarioRolEquipo.idEquipo', '=', 'Equipo.idEquipo')->join('Rol', 'Rol.idRol', '=', 'UsuarioRolEquipo.idRol')->where('UsuarioRolEquipo.idUsuario', '=', $usuario->id())->where('Rol.idRol', '!=', '1')->union($lidero)->select('Proyecto.*', 'Rol.nombreRol')->get(); return $this->render('misproyectos/listado.html.twig', ['misproyectos' => $misproyectos]); }
public function tickets() { $usuario = SecurityController::user(); $mistickets = Proyecto::with(['equipos', 'lider'])->join('Item', 'Proyecto.idProyecto', '=', 'Item.idProyecto')->join('Estado', 'Item.estadoActual', '=', 'Estado.idEstado')->join('TipoItem', 'Item.idTipoItem', '=', 'TipoItem.idTipoItem')->join('UsuarioRolEquipo', 'UsuarioRolEquipo.idUsuarioRolEquipo', '=', 'Item.responsable')->join('Usuario', 'Usuario.idUsuario', '=', 'UsuarioRolEquipo.idUsuario')->where('Usuario.idUsuario', '=', $usuario->id())->get(); return $this->render('mistickets/listado.html.twig', ['mistickets' => $mistickets]); # proyecto item tipoitem usuario }
public function index() { $usuario = SecurityController::user(); $misproyectos = Proyecto::with(['lider.rolPrincipal'])->leftJoin('Equipo', function ($join) { $join->on('Equipo.idProyecto', '=', 'Proyecto.idProyecto')->where('Equipo.estado', '=', 1); })->leftJoin('UsuarioRolEquipo', function ($join) { $join->on('Equipo.idEquipo', '=', 'UsuarioRolEquipo.idEquipo')->where('UsuarioRolEquipo.activo', '=', 1); })->where('UsuarioRolEquipo.idUsuario', '=', $usuario->id())->orWhere('Proyecto.idLider', '=', $usuario->id())->distinct('Proyecto.*')->select('Proyecto.*')->get(); $mistickets = Proyecto::with(['equipos', 'lider'])->join('Item', 'Proyecto.idProyecto', '=', 'Item.idProyecto')->join('Estado', 'Item.estadoActual', '=', 'Estado.idEstado')->join('TipoItem', 'Item.idTipoItem', '=', 'TipoItem.idTipoItem')->join('UsuarioRolEquipo', 'UsuarioRolEquipo.idUsuarioRolEquipo', '=', 'Item.responsable')->join('Usuario', 'Usuario.idUsuario', '=', 'UsuarioRolEquipo.idUsuario')->where('Usuario.idUsuario', '=', $usuario->id())->get(); $usuarioORM = new Usuario(); $history = $usuarioORM->history($usuario->id())->get(); echo $this->render('home/home.php.twig', ['misproyectos' => $misproyectos, 'mistickets' => $mistickets, 'history' => $history]); }
public static function getProjectStats($id) { $tipoitems = proyecto::with(['equiposActivos', 'tipoItemActivos', 'cuentaItemsPorEstado', 'equiposActivos.cuentaItemsAsignados', 'tipoItemActivos.cuentaTickets'])->where('idProyecto', '=', $id)->get(); return $tipoitems; }
public function editForm($id) { $equipo = Equipo::find($id); return $this->render('equipos/editar.html.twig', ['equipo' => $equipo, 'title' => 'Editar Equipo', 'proyectos' => proyecto::all()]); }
public function createForm($id) { $response = Proyecto::with(['tipoItem.estados'])->find($id); // $tipoItems = TipoItemController::getByProject($id); $tipoItems = TipoItem::with(['estadoInicial.equiposAtencion.equiposActivos.usuariosRolActivos.miniUsuario', 'estadoInicial.equiposAtencion.equiposActivos.usuariosRolActivos.rol'])->where('estado', '=', '1')->where('idProyecto', '=', $id)->get(); $data_relations['tipo_items'] = []; foreach ($tipoItems as $index => $tipoitem) { $data['items'][$index] = ['id' => $tipoitem->idTipoItem, 'nombre' => $tipoitem->descripcion, 'estados' => []]; foreach ($tipoitem->estadoInicial as $key => $estado) { $data['items'][$index]['estados'][$key] = ['id' => $estado->idEstado, 'nombre' => $estado->nombreEstado]; } } $data_relations['tipo_items'] = $data['items']; $usuarios_atencion = $this->usersByState($data_relations['tipo_items'][0]['estados'][0]['id']); return $this->render('tickets/agregar.html.twig', ['proyecto' => $response, 'relaciones' => $data_relations, 'workflow' => $data_relations['tipo_items'][0]['estados'], 'equipo' => $usuarios_atencion]); }