You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
1.7 KiB
71 lines
1.7 KiB
1 year ago
|
<?php
|
||
|
|
||
|
namespace App\Http\Controllers\RecursosHumanos;
|
||
|
|
||
|
use App\Http\Controllers\Controller;
|
||
|
use App\Models\ArchivosNominas;
|
||
|
use Illuminate\Http\Request;
|
||
|
use Illuminate\Support\Facades\Auth;
|
||
|
use Illuminate\Support\Facades\Storage;
|
||
|
use Throwable;
|
||
|
|
||
|
class ArchivosNominasController extends Controller
|
||
|
{
|
||
|
|
||
|
public function index()
|
||
|
{
|
||
|
|
||
|
return view('recursos_humanos/archivos_nominas');
|
||
|
|
||
|
}
|
||
|
|
||
|
public function cargarArchivos( Request $request ){
|
||
|
|
||
|
$fk_id_users = Auth::user()->id;
|
||
|
|
||
|
$mensjes = [];
|
||
|
|
||
|
foreach( $request->file('files') as $archivo ){
|
||
|
|
||
|
$nombreArchivo = $archivo->getClientOriginalName();
|
||
|
$datosNombreArchivo = explode('_',$nombreArchivo);
|
||
|
// dd($datosNombreArchivo);
|
||
|
Storage::disk('public')->put( $nombreArchivo , \File::get( $archivo ));
|
||
|
|
||
|
try{
|
||
|
ArchivosNominas::updateOrCreate([
|
||
|
'nombre_archivo' => $nombreArchivo
|
||
|
],
|
||
|
['fk_id_users_alta' => $fk_id_users,
|
||
|
'tipo_nomina' => $datosNombreArchivo[2],
|
||
|
'ano_fiscal' => $datosNombreArchivo[3],
|
||
|
'numero_nomina' => $datosNombreArchivo[4],
|
||
|
'clave_contpaq' => $datosNombreArchivo[5]]
|
||
|
);
|
||
|
|
||
|
$mensjes[] = [
|
||
|
'archivo' => $nombreArchivo,
|
||
|
'estado' => 'Exito',
|
||
|
|
||
|
];
|
||
|
|
||
|
}catch(Throwable $e){
|
||
|
|
||
|
$mensjes[] = [
|
||
|
'archivo' => $nombreArchivo,
|
||
|
'estado' => $e->getMessage()
|
||
|
|
||
|
];
|
||
|
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
return $mensjes;
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
}
|