mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
terminada funcionalidad reimpresion presupuestos
This commit is contained in:
@ -24,10 +24,11 @@ class PresupuestoFicheroModel extends \App\Models\BaseModel
|
||||
public static $labelField = "nombre";
|
||||
|
||||
|
||||
public function saveFileInBBDD($presupuesto_id, $filename, $extension ,$user_id) {
|
||||
try{
|
||||
public function saveFileInBBDD($presupuesto_id, $filename, $extension, $user_id)
|
||||
{
|
||||
try {
|
||||
$new_filename = $this->generateFileHash($filename) . '.' . $extension;
|
||||
|
||||
|
||||
$this->db->table($this->table . " t1")
|
||||
->set('presupuesto_id', $presupuesto_id)
|
||||
->set('nombre', $filename)
|
||||
@ -42,13 +43,14 @@ class PresupuestoFicheroModel extends \App\Models\BaseModel
|
||||
}
|
||||
}
|
||||
|
||||
public function deleteFiles($presupuesto_id, $old_files = []){
|
||||
public function deleteFiles($presupuesto_id, $old_files = [])
|
||||
{
|
||||
|
||||
$files = $this->db
|
||||
->table($this->table . " t1")
|
||||
->where('presupuesto_id', $presupuesto_id)->get()->getResult();
|
||||
if($files){
|
||||
foreach($files as $file){
|
||||
if ($files) {
|
||||
foreach ($files as $file) {
|
||||
|
||||
// se comprueba que el $file->nombre no sea igual a ninguno de los elementos del array $old_files
|
||||
if (!in_array($file->nombre, $old_files)) {
|
||||
@ -67,21 +69,52 @@ class PresupuestoFicheroModel extends \App\Models\BaseModel
|
||||
}
|
||||
|
||||
|
||||
public function getFiles($presupuesto_id){
|
||||
public function copyFiles($presupuesto_id_origen, $presupuesto_id_destino)
|
||||
{
|
||||
|
||||
$files = $this->db
|
||||
->table($this->table . " t1")
|
||||
->where('presupuesto_id', $presupuesto_id_origen)->get()->getResult();
|
||||
if ($files) {
|
||||
|
||||
foreach ($files as $file) {
|
||||
|
||||
$hash = $this->generateFileHash($file->nombre);
|
||||
|
||||
// se copia el fichero a la nueva ubicación
|
||||
if (!file_exists(WRITEPATH . $file->file_path)) {
|
||||
copy($file->file_path, WRITEPATH . 'uploads/presupuestos/' . $hash);
|
||||
}
|
||||
|
||||
$this->db->table($this->table . " t1")
|
||||
->set('presupuesto_id', $presupuesto_id_destino)
|
||||
->set('nombre', $file->nombre)
|
||||
->set('file_path', WRITEPATH . 'uploads/presupuestos/' . $hash)
|
||||
->set('upload_by', auth()->user()->id)
|
||||
->set('upload_at', date('Y-m-d H:i:s'))
|
||||
->insert();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public function getFiles($presupuesto_id)
|
||||
{
|
||||
return $this->db
|
||||
->table($this->table . " t1")
|
||||
->where('presupuesto_id', $presupuesto_id)->get()->getResult();
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Función para convertir el nombre y extensión de un fichero en un hash único
|
||||
* usando cifrado simétrico.
|
||||
*
|
||||
* @param string $filename Nombre del fichero con extensión
|
||||
* @return string Hash encriptado del fichero
|
||||
*/
|
||||
private function generateFileHash($filename) {
|
||||
* Función para convertir el nombre y extensión de un fichero en un hash único
|
||||
* usando cifrado simétrico.
|
||||
*
|
||||
* @param string $filename Nombre del fichero con extensión
|
||||
* @return string Hash encriptado del fichero
|
||||
*/
|
||||
private function generateFileHash($filename)
|
||||
{
|
||||
return hash('sha256', $filename);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user