forked from nathalie/pedi2
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
|
npm-debug.log
|
||||||
yarn-error.log
|
yarn-error.log
|
||||||
.idea
|
.idea
|
||||||
|
/resources/csv/exports/*.csv
|
||||||
|
|
|
@ -4,11 +4,15 @@ namespace App;
|
||||||
|
|
||||||
use Illuminate\Database\Eloquent\Model;
|
use Illuminate\Database\Eloquent\Model;
|
||||||
use Mpdf\Mpdf;
|
use Mpdf\Mpdf;
|
||||||
|
use League\Csv\CannotInsertRecord;
|
||||||
|
use League\Csv\Writer;
|
||||||
|
use App\Producto;
|
||||||
|
use DB;
|
||||||
|
|
||||||
class GrupoDeCompra extends Model
|
class GrupoDeCompra extends Model
|
||||||
{
|
{
|
||||||
public $timestamps = false;
|
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 $table = 'grupos_de_compra';
|
||||||
protected $hidden = ['password'];
|
protected $hidden = ['password'];
|
||||||
|
|
||||||
|
@ -30,4 +34,36 @@ class GrupoDeCompra extends Model
|
||||||
$mpdf->Output();
|
$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