mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
Merge branch 'main' into fix/importador_bubok
This commit is contained in:
@ -833,9 +833,18 @@ class Facturas extends \App\Controllers\BaseResourceController
|
||||
|
||||
if ((strpos($numero, "REC ") === 0)) {
|
||||
$data['estado_pago'] = 'pagada';
|
||||
|
||||
}
|
||||
|
||||
$this->model->update($factura_id, $data);
|
||||
|
||||
if ((strpos($numero, "REC ") === 0)) {
|
||||
|
||||
$this->model->where('numero', $factura->factura_rectificada_id)->set([
|
||||
'factura_rectificativa_id' => $numero,
|
||||
'user_updated_id' => auth()->user()->id,
|
||||
])->update();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -92,7 +92,7 @@ class FacturasLineas extends \App\Controllers\BaseResourceController
|
||||
Field::inst('id'),
|
||||
Field::inst('base'),
|
||||
Field::inst('total_iva'),
|
||||
Field::inst('total'),
|
||||
Field::inst('total')->set(Field::SET_BOTH),
|
||||
Field::inst('cantidad')
|
||||
->validator(
|
||||
'Validate::numeric',
|
||||
@ -126,19 +126,6 @@ class FacturasLineas extends \App\Controllers\BaseResourceController
|
||||
'message' => lang('Facturas.validation.requerido')
|
||||
)
|
||||
),
|
||||
Field::inst('total')
|
||||
->validator(
|
||||
'Validate::numeric',
|
||||
array(
|
||||
'message' => lang('Facturas.validation.numerico')
|
||||
)
|
||||
)
|
||||
->validator(
|
||||
'Validate::notEmpty',
|
||||
array(
|
||||
'message' => lang('Facturas.validation.requerido')
|
||||
)
|
||||
),
|
||||
Field::inst('pedido_linea_impresion_id')
|
||||
->setFormatter(function ($val, $data, $opts) {
|
||||
return $val === '' ? null : $val;
|
||||
@ -157,7 +144,7 @@ class FacturasLineas extends \App\Controllers\BaseResourceController
|
||||
$values['total'],
|
||||
$values['iva'],
|
||||
$values['cantidad'],
|
||||
$values['old_cantidad'],
|
||||
$values['old_cantidad'],
|
||||
$values['base']
|
||||
);
|
||||
$editor
|
||||
@ -183,7 +170,7 @@ class FacturasLineas extends \App\Controllers\BaseResourceController
|
||||
$values['total'],
|
||||
$values['iva'],
|
||||
$values['cantidad'],
|
||||
$values['old_cantidad'],
|
||||
$values['old_cantidad'],
|
||||
$values['base']
|
||||
);
|
||||
$editor
|
||||
@ -256,14 +243,13 @@ class FacturasLineas extends \App\Controllers\BaseResourceController
|
||||
$values['base'] = $base;
|
||||
$values['total_iva'] = $total_iva;
|
||||
$values['total'] = $total;
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
// se pasa la base y el iva
|
||||
$total_iva = round($base_input * $iva / 100, 2);
|
||||
$total = round($base_input + $total_iva, 2);
|
||||
|
||||
|
||||
$values = [];
|
||||
$values['base'] = $base_input;
|
||||
$values['base'] = (float) $base_input;
|
||||
$values['total_iva'] = $total_iva;
|
||||
$values['total'] = $total;
|
||||
|
||||
|
||||
@ -371,7 +371,7 @@ class ImportadorBubok extends BaseResourceController
|
||||
|
||||
// confirmar y crear pedido y ot
|
||||
$presupuestoModel->confirmarPresupuesto($response['sk_id']);
|
||||
PresupuestoService::crearPedido($response['sk_id']);
|
||||
PresupuestoService::crearPedido($response['sk_id'],isImported:true);
|
||||
|
||||
|
||||
if (!isset($response['sk_id'])) {
|
||||
|
||||
@ -359,7 +359,7 @@ class ImportadorCatalogo extends BaseResourceController
|
||||
|
||||
// confirmar y crear pedido y ot
|
||||
model('App\Models\Presupuestos\PresupuestoModel')->confirmarPresupuesto($response['data']['sk_id']);
|
||||
PresupuestoService::crearPedido($response['data']['sk_id']);
|
||||
PresupuestoService::crearPedido($response['data']['sk_id'],isImported:true);
|
||||
|
||||
return $this->respond($response);
|
||||
|
||||
|
||||
76
ci4/app/Controllers/Scripts/UsersIntegrity.php
Normal file
76
ci4/app/Controllers/Scripts/UsersIntegrity.php
Normal file
@ -0,0 +1,76 @@
|
||||
<?php
|
||||
|
||||
namespace App\Controllers\Scripts;
|
||||
|
||||
use App\Controllers\BaseController;
|
||||
use App\Models\Usuarios\UserModel;
|
||||
use App\Entities\Usuarios\UserEntity;
|
||||
use CodeIgniter\Shield\Authentication\Passwords\IdentityModel;
|
||||
|
||||
class UsersIntegrity extends BaseController
|
||||
{
|
||||
public function completarIdentidades()
|
||||
{
|
||||
$userModel = new UserModel();
|
||||
|
||||
|
||||
// Buscar usuarios safekat.com no eliminados
|
||||
$usuarios = $userModel
|
||||
->where('deleted_at', null)
|
||||
//->like('username', '@safekat.com')
|
||||
->findAll();
|
||||
|
||||
$resultados = [];
|
||||
|
||||
foreach ($usuarios as $usuario) {
|
||||
$email = $usuario->username . "@safekat.com";
|
||||
|
||||
// 1. Verificar si el usuario ya tiene identidad tipo email_password
|
||||
$tieneIdentidad = array_filter(
|
||||
$usuario->getIdentities(),
|
||||
fn($identity) => $identity->type === 'email_password'
|
||||
);
|
||||
|
||||
if (!empty($tieneIdentidad)) {
|
||||
$resultados[] = "✅ Ya tiene identidad: {$email}";
|
||||
continue;
|
||||
}
|
||||
|
||||
// 2. Verificar si ya existe una identidad globalmente con ese email
|
||||
$db = db_connect();
|
||||
|
||||
$builder = $db->table('auth_identities');
|
||||
|
||||
$existeGlobal = $builder
|
||||
->where('type', 'email_password')
|
||||
->where('secret', $email)
|
||||
->get()
|
||||
->getFirstRow();
|
||||
|
||||
if ($existeGlobal) {
|
||||
$resultados[] = "⚠️ Email ya registrado en otra identidad: {$email}";
|
||||
continue;
|
||||
}
|
||||
|
||||
// 3. Crear y guardar identidad
|
||||
try {
|
||||
$identity = $usuario->createEmailIdentity([
|
||||
'email' => $email,
|
||||
'password' => 'Temporal123!', // reemplazar por valor real si lo tenés
|
||||
]);
|
||||
|
||||
//$userModel->saveEmailIdentity($identity);
|
||||
|
||||
$resultados[] = "➕ Identidad creada: {$email}";
|
||||
} catch (\Throwable $e) {
|
||||
$resultados[] = "❌ Error con {$email}: " . $e->getMessage();
|
||||
}
|
||||
}
|
||||
|
||||
return $this->response->setJSON([
|
||||
'status' => 'completado',
|
||||
'procesados' => count($usuarios),
|
||||
'resultados' => $resultados,
|
||||
]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user