MINI MINI MANI MO

Path : /var/www/html/sistemas/archivodigital/app/Http/Controllers/
File Upload :
Current File : /var/www/html/sistemas/archivodigital/app/Http/Controllers/GroupController.php

<?php

namespace App\Http\Controllers;

use App\Models\Group;
use Illuminate\Http\Request;
use App\Models\users_safsCentralizada;
use App\Models\UsuariosCentralizada;
use App\Models\DepartamentosCentralizada;
use App\Models\Member;
use App\Models\S_UsersCentralizada;
class GroupController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        //index grupo
        $grupos = Group::where('activo',1)->get();
        return view('Groups.create', compact('grupos'));
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
        //
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
        $membr = $request['integrante'];
        $gp['grupo'] = $request->nombre;
        $grupo = Group::create($gp);
        $idR = Group::latest('id')->first();

        foreach ($membr as $int) {
            $gp['id_group'] = $idR->id;
            $gp['user_rfc'] = $int;
            $grupo = Member::create($gp);
        }
        return redirect('grupo');
    }

    /**
     * Display the specified resource.
     *
     * @param  \App\Models\Group  $group
     * @return \Illuminate\Http\Response
     */
    public function show(Group $group)
    {



    }

    /**
     * Show the form for editing the specified resource.
     *
     * @param  \App\Models\Group  $group
     * @return \Illuminate\Http\Response
     */
    public function edit(Group $group,$id)
    {
        // dd($id);
        $mem = Member::where('id_group', $id)->get();
        $grup = Group::where('id', $id)->get();
        return view('Groups.edit', compact('grup','mem'));
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \App\Models\Group  $group
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request,  $id)
    {
        $gpo = Group::find($id);
        $gr['grupo'] = $request->nombre;
        $gpo->update($gr);


        $g = Member::where('id_group', $id)->get();
        $g->each->delete();

        $membr = $request['integrante'];
        // $gp['grupo'] = $request->nombre;
        // $grupo = Group::create($gp);
        // $idR = Group::latest('id')->first();

        foreach ($membr as $int) {
            $gp['id_group'] = $id;
            $gp['user_rfc'] = $int;
            $grupo = Member::create($gp);
        }
        return redirect('grupo');
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  \App\Models\Group  $group
     * @return \Illuminate\Http\Response
     */
    public function destroy(Group $group)
    {
        //
    }

    public function getPersonasGpo(Request $request){
        $search = $request->search;
        $response = array();

        $UsRFC = auth()->user()->rfc;

        if($UsRFC == 'CACE750115'){
            $datosUser = S_UsersCentralizada::where('rango','!=',4)->join('s_usuario','username', '=', 's_usuario.N_Usuario')->join('users_safs', 'username','=','users_safs.rfc')
                ->select('s_usuario.id_Dependencia','s_usuario.id_Departamento','s_usuario.id_Direccion','s_usuario.nombre','users_safs.password','users_safs.rfc')->where('s_usuario.id_Dependencia',1)->where('s_usuario.Estado',1)->where('users_safs.rfc',$UsRFC)->get();
        }else{
            $datosUser = S_UsersCentralizada::where('rango','!=',4)->join('s_usuario','username', '=', 's_usuario.N_Usuario')->join('users_safs', 'username','=','users_safs.rfc')
                ->select('s_usuario.id_Dependencia','s_usuario.id_Departamento','s_usuario.id_Direccion','s_usuario.nombre','users_safs.password','users_safs.rfc')->where('s_usuario.id_Dependencia',4)->where('s_usuario.Estado',1)->where('users_safs.rfc',$UsRFC)->get();
        }
        $depa = DepartamentosCentralizada::where('id_Departamento',$datosUser[0]->id_Departamento)->get();
     //   dd($depa);
        $uAdministrativa = $depa[0]->c_presup;
        if($uAdministrativa == 40001 || $uAdministrativa == 40011){
            $departamentos = DepartamentosCentralizada::where('c_presup','like','%01')->where('id_Dependencia',4)->select('id_Departamento')->get();
            $departamentoss = DepartamentosCentralizada::where('c_presup',40011)->where('id_Dependencia',4)->select('id_Departamento')->get();
            foreach ($departamentoss as $dir){
                $departamentos[] = $dir;
            }
            $usuarios = S_UsersCentralizada::where('rango','!=',4)->join('s_usuario','username', '=', 's_usuario.N_Usuario')->join('users_safs', 'username','=','users_safs.rfc')
                ->select('s_usuario.id_Dependencia','s_usuario.id_Departamento','s_usuario.id_Direccion','s_usuario.nombre','users_safs.password','users_safs.rfc')
                ->where('s_usuario.id_Dependencia',4)
                ->where('s_usuario.Estado',1)
                ->where('s_usuario.Nombre', 'like', '%' . $search . '%')
                ->whereIn('id_Departamento',$departamentos)->get();
         //   dd($usuarios);
            $usuariosCentralizada = [];
            $userss = [];

            foreach ($usuarios as $user) {
                $usuariosCentralizada[] = UsuariosCentralizada::where('N_Usuario', $user->rfc)->get();
            }

            foreach ($usuariosCentralizada as $users) {
                if (count($users)) {
                    $response[] = array(
                        "id" => $users[0]->N_Usuario,
                        "text" => $users[0]->Nombre
                    );
                }
            }
        }else {
            $clve = substr($uAdministrativa, 0, 2);
            $departamentos = DepartamentosCentralizada::where('c_presup', 'like', $clve . '%')->where('id_Dependencia', 4)->select('id_Departamento')->get();
            $departamentoss = DepartamentosCentralizada::where('c_presup', 'like', '%01')->where('id_Dependencia', 4)->select('id_Departamento')->get();
            $departamentosss = DepartamentosCentralizada::where('c_presup', 40011)->where('id_Dependencia', 4)->select('id_Departamento')->get();

            foreach ($departamentoss as $dir) {
                $departamentos[] = $dir;
            }

            foreach ($departamentosss as $dir) {
                $departamentos[] = $dir;
            }
            //   dd($departamentos);
            $usuarios = S_UsersCentralizada::where('rango', '!=', 4)->join('s_usuario', 'username', '=', 's_usuario.N_Usuario')->join('users_safs', 'username', '=', 'users_safs.rfc')
                ->select('s_usuario.id_Dependencia', 's_usuario.id_Departamento', 's_usuario.id_Direccion', 's_usuario.nombre', 'users_safs.password', 'users_safs.rfc')->where('s_usuario.id_Dependencia', 4)->where('s_usuario.Estado', 1)->where('s_usuario.Nombre', 'like', '%' . $search . '%')
                ->whereIn('id_Departamento', $departamentos)->get();
            $usuariosCentralizada = [];
            $userss = [];

            foreach ($usuarios as $user) {
                $usuariosCentralizada[] = UsuariosCentralizada::where('N_Usuario', $user->rfc)->get();
            }

            foreach ($usuariosCentralizada as $users) {
                if (count($users)) {
                    $response[] = array(
                        "id" => $users[0]->N_Usuario,
                        "text" => $users[0]->Nombre
                    );
                }
            }
//        $usuariosLocal = User::all();
//        //   dd($usuariosLocal);
//        foreach ($usuariosLocal as $usLocal) {
//            $usuariosCentral = S_UsersCentralizada::join('s_usuario', 'username', '=', 's_usuario.N_Usuario')
//                ->where('s_usuario.N_Usuario', $usLocal->rfc)->where('s_usuario.Nombre', 'like', '%' . $search . '%')->get();
//
//            foreach ($usuariosCentral as $usuariosC){
//                $response[] = array(
//                    "id"=>$usuariosC->N_Usuario,
//                    "text"=>$usuariosC->Nombre
//                );
//            }
//        }
            // dd($response);
        }
        return json_encode($response);



    }


    public function eliminargrupo(Request $request){
        $gpo = Group::find($request->id);
        $gr['activo'] = '0';
        $gpo->update($gr);
    }
}

OHA YOOOO