Laravel 11, Vuexy Admin 10.3, by admin@koneko.mx
This commit is contained in:
83
modules/Admin/Database/seeders/SATCatalogsSeeder.php
Normal file
83
modules/Admin/Database/seeders/SATCatalogsSeeder.php
Normal file
@ -0,0 +1,83 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Admin\Database\seeders;
|
||||
|
||||
use Modules\Admin\App\Imports\SatCatalogsImport;
|
||||
use Maatwebsite\Excel\Facades\Excel;
|
||||
use Illuminate\Database\Seeder;
|
||||
use Illuminate\Support\Facades\File;
|
||||
use Modules\Admin\App\Models\Sat\Banco;
|
||||
|
||||
class SATCatalogsSeeder extends Seeder
|
||||
{
|
||||
protected $console;
|
||||
|
||||
public function __construct($console = null)
|
||||
{
|
||||
$this->console = $console;
|
||||
}
|
||||
|
||||
/**
|
||||
* Run the database seeds.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function run()
|
||||
{
|
||||
$this->importCatCFDIV4(base_path("modules/Admin/Database/data/catCFDI_V_4_20241121.xls"));
|
||||
$this->importCatBancos(base_path('modules/Admin/Database/data/catalog-sat_bancos.json'));
|
||||
}
|
||||
|
||||
private function importCatCFDIV4($file_path)
|
||||
{
|
||||
$import = new SatCatalogsImport($this->console);
|
||||
|
||||
$sheets = [
|
||||
'c_FormaPago',
|
||||
'c_Moneda',
|
||||
'c_CodigoPostal_Parte_1',
|
||||
'c_CodigoPostal_Parte_2',
|
||||
'c_RegimenFiscal',
|
||||
'c_Pais',
|
||||
'c_UsoCFDI',
|
||||
'C_Colonia_1',
|
||||
'C_Colonia_2',
|
||||
'C_Colonia_3',
|
||||
'c_Estado',
|
||||
'C_Localidad',
|
||||
'C_Municipio',
|
||||
];
|
||||
|
||||
$this->command->getOutput()->progressStart(count($sheets));
|
||||
|
||||
foreach ($sheets as $sheet) {
|
||||
$import = new SatCatalogsImport();
|
||||
$import->onlySheets($sheet);
|
||||
|
||||
Excel::import($import, $file_path);
|
||||
|
||||
$this->command->getOutput()->progressAdvance();
|
||||
}
|
||||
|
||||
$this->command->getOutput()->progressFinish();
|
||||
}
|
||||
|
||||
private function importCatBancos($file_path)
|
||||
{
|
||||
$json = File::get($file_path);
|
||||
|
||||
// Convierte el contenido JSON a un array asociativo
|
||||
$bancos = json_decode($json, true);
|
||||
|
||||
// Inserta cada banco en la base de datos
|
||||
foreach ($bancos as $banco) {
|
||||
Banco::create([
|
||||
'c_banco' => $banco['c_banco'],
|
||||
'descripcion' => $banco['descripcion'],
|
||||
'razon_social' => $banco['razon_social'],
|
||||
'rfc' => null,
|
||||
'status' => Banco::STATUS_ENABLED,
|
||||
]);
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user