exportar todas las planillas en un formato apto para copiar y pegar a la planilla de compras
This commit is contained in:
parent
098b23b864
commit
f0a1a68144
|
@ -11,3 +11,4 @@ Homestead.yaml
|
|||
npm-debug.log
|
||||
yarn-error.log
|
||||
.idea
|
||||
/resources/csv/exports/*.csv
|
||||
|
|
|
@ -4,11 +4,15 @@ namespace App;
|
|||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Mpdf\Mpdf;
|
||||
use League\Csv\CannotInsertRecord;
|
||||
use League\Csv\Writer;
|
||||
use App\Producto;
|
||||
use DB;
|
||||
|
||||
class GrupoDeCompra extends Model
|
||||
{
|
||||
public $timestamps = false;
|
||||
protected $fillable = [ "nombre","region","telefono","correo","referente_finanzas","cantidad_de_nucleos"];
|
||||
protected $fillable = [ "nombre","region","telefono","correo","referente_finanzas","cantidad_de_nucleos","fila"];
|
||||
protected $table = 'grupos_de_compra';
|
||||
protected $hidden = ['password'];
|
||||
|
||||
|
@ -30,4 +34,36 @@ class GrupoDeCompra extends Model
|
|||
$mpdf->Output();
|
||||
}
|
||||
|
||||
public function exportarPedidoEnCSV(){
|
||||
$productos = Producto::pluck('id','fila')->all();
|
||||
$ultima_fila = end(array_keys($productos));
|
||||
$productos_en_pedido = DB::table('pedidos_aprobados')->where('grupo_de_compra_id',$this->id)->get()->keyBy('producto_id');
|
||||
|
||||
$records = [];
|
||||
for ($i=1; $i <= $ultima_fila; $i++) {
|
||||
if ($productos[$i]) {
|
||||
if ($productos_en_pedido[$productos[$i]]){
|
||||
$producto_en_pedido = $productos_en_pedido[$productos[$i]];
|
||||
$records[] = [$producto_en_pedido->producto_nombre,$producto_en_pedido->cantidad_pedida];
|
||||
} else {
|
||||
$records[] = ['producto no pedido',0];
|
||||
}
|
||||
} else {
|
||||
$records[] = ['',''];
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
$writer = Writer::createFromPath(resource_path('csv/exports/'.$this->nombre.'.csv'), 'w');
|
||||
$writer->insertAll($records);
|
||||
} catch (CannotInsertRecord $e) {
|
||||
var_export($e->getRecords());
|
||||
}
|
||||
}
|
||||
|
||||
public static function exportarTodosLosPedidosEnCSV(){
|
||||
$gdcs=GrupoDeCompra::all();
|
||||
foreach ($gdcs as $gdc){ $gdc->exportarPedidoEnCSV(); }
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue