app/Console/Commands/StartMount.php
/**
     * Execute the console command.
     *
     * @return mixed
     */
Execute the console command.
@return mixed
Execute the console command . @return mixed
public function handle()
    {
        $users=User::all();
        foreach ($users as $user) {
            $Historico_equipo=new Historico_equipo;
            $Historico_equipo->entidad_id=$user->id;
            $Historico_equipo->horas_disponibles=$user->horas_disponible;
            $Historico_equipo->horas_gastadas=$user->horas_gastadas;
            $Historico_equipo->tipo_de_entidad=1;
            $Historico_equipo->save();
            $user->horas_gastadas=0;
            $user->save();
        }
        log::info("Se han restablecido las horas gastadas de todos los usuarios");
        $areas=Area::all();
        foreach ($areas as $area) {
            $Historico_equipo=new Historico_equipo;
            $Historico_equipo->entidad_id=$area->id;
            $horas_totales=$area->User->sum('horas_disponible');
            $Historico_equipo->horas_disponibles= $horas_totales;
            $Historico_equipo->horas_gastadas=$area->horas_consumidas;
            $Historico_equipo->tipo_de_entidad=2;
            $Historico_equipo->save();
            $area->horas_consumidas=0;
            $area->save();
        }
        log::info("Se han restablecido las horas gastadas de todas las areas");
        $now = Carbon::now();
        $tareas_recurrentes = Tarea::where('recurrente',1)->where('fecha_inicio_recurrencia', '>=', $now->toDateTimeString())->where('fecha_final_recurrencia', '>=', $now->toDateTimeString())->get();
        $tareas_recurrentes = $tareas_recurrentes->toArray();
        foreach ($tareas_recurrentes as $tarea) {
          $now = Carbon::now();
          $asignar_fecha = null;
          $dia=null;
          $fecha_create=null;
          $role=Role::where('name','coordinador')->first();
          $coorArea= User::where('roles_id',$role->id)->where('areas_id', $tarea['areas_id'])->first();
          $new_tarea = new Tarea;
          $new_tarea->fill($tarea);
          $fecha_create= new Date($new_tarea->create_at);
          $dia = $fecha_create->day;
          $asignar_fecha = $now->addDays(abs($dia-1));
          $new_tarea->nombre_tarea = $new_tarea->nombre_tarea . ' | Rec - '.$fecha_create->format('M') . ' - '. $now->year;
          $new_tarea->recurrente = 0;
          $new_tarea->fecha_entrega_area = null;
          $new_tarea->fecha_entrega_cuentas = null;
          $new_tarea->tiempo_estimado = null;
          $new_tarea->tiempo_real = null;
          $new_tarea->tiempo_mapa_cliente = null;
          $new_tarea->fecha_entrega_cliente = null;
          $new_tarea->estados_id = 7;
          $new_tarea->encargado_id = $coorArea->id;
          $new_tarea->estado_trafico_id = null;
          $new_tarea->comentario_trafico = null;
          $new_tarea->created_at = $asignar_fecha;
          $new_tarea->save();
          $asignar_fecha->subDays($dia);
        }
        log::info("Se han creado las tareas recurrentes");
    }
public function handle ( ) { $ users = User :: all ( ) ; foreach ( $ users as $ user ) { $ Historico_equipo = new Historico_equipo ; $ Historico_equipo -> entidad_id = $ user -> id ; $ Historico_equipo -> horas_disponibles = $ user -> horas_disponible ; $ Historico_equipo -> horas_gastadas = $ user -> horas_gastadas ; $ Historico_equipo -> tipo_de_entidad = 1 ; $ Historico_equipo -> save ( ) ; $ user -> horas_gastadas = 0 ; $ user -> save ( ) ; } log :: info ( " Se han restablecido las horas gastadas de todos los usuarios " ) ; $ areas = Area :: all ( ) ; foreach ( $ areas as $ area ) { $ Historico_equipo = new Historico_equipo ; $ Historico_equipo -> entidad_id = $ area -> id ; $ horas_totales = $ area -> User -> sum ( 'horas_disponible' ) ; $ Historico_equipo -> horas_disponibles = $ horas_totales ; $ Historico_equipo -> horas_gastadas = $ area -> horas_consumidas ; $ Historico_equipo -> tipo_de_entidad = 2 ; $ Historico_equipo -> save ( ) ; $ area -> horas_consumidas = 0 ; $ area -> save ( ) ; } log :: info ( " Se han restablecido las horas gastadas de todas las areas " ) ; $ now = Carbon :: now ( ) ; $ tareas_recurrentes = Tarea :: where ( 'recurrente' , 1 ) -> where ( 'fecha_inicio_recurrencia' , '>=' , $ now -> toDateTimeString ( ) ) -> where ( 'fecha_final_recurrencia' , '>=' , $ now -> toDateTimeString ( ) ) -> get ( ) ; $ tareas_recurrentes = $ tareas_recurrentes -> toArray ( ) ; foreach ( $ tareas_recurrentes as $ tarea ) { $ now = Carbon :: now ( ) ; $ asignar_fecha = null ; $ dia = null ; $ fecha_create = null ; $ role = Role :: where ( 'name' , 'coordinador' ) -> first ( ) ; $ coorArea = User :: where ( 'roles_id' , $ role -> id ) -> where ( 'areas_id' , $ tarea [ 'areas_id' ] ) -> first ( ) ; $ new_tarea = new Tarea ; $ new_tarea -> fill ( $ tarea ) ; $ fecha_create = new Date ( $ new_tarea -> create_at ) ; $ dia = $ fecha_create -> day ; $ asignar_fecha = $ now -> addDays ( abs ( $ dia - 1 ) ) ; $ new_tarea -> nombre_tarea = $ new_tarea -> nombre_tarea . ' | Rec - ' . $ fecha_create -> format ( 'M' ) . ' - ' . $ now -> year ; $ new_tarea -> recurrente = 0 ; $ new_tarea -> fecha_entrega_area = null ; $ new_tarea -> fecha_entrega_cuentas = null ; $ new_tarea -> tiempo_estimado = null ; $ new_tarea -> tiempo_real = null ; $ new_tarea -> tiempo_mapa_cliente = null ; $ new_tarea -> fecha_entrega_cliente = null ; $ new_tarea -> estados_id = 7 ; $ new_tarea -> encargado_id = $ coorArea -> id ; $ new_tarea -> estado_trafico_id = null ; $ new_tarea -> comentario_trafico = null ; $ new_tarea -> created_at = $ asignar_fecha ; $ new_tarea -> save ( ) ; $ asignar_fecha -> subDays ( $ dia ) ; } log :: info ( " Se han creado las tareas recurrentes " ) ; }
Execute the console command.
Execute the console command .
//Referencia a que la entidad va a ser Usuarios //log::info("Historico usuarios Guargado"); //Referencia a que la entidad va a ser Usuarios // Crear tareas recurrentes // DB::enableQueryLog(); //id Rol coordinador // log::info("rol",[$role->id,$tarea['areas_id']]); //Coordinador con con el area enviada en el request // Fecha tarea formateada //---------------- // $queries = DB::getQueryLog();