Merge branch 'add/roles_facturas' into 'main'

añadidos roles facturacion

See merge request jjimenez/safekat!649
This commit is contained in:
2025-04-03 17:41:06 +00:00
5 changed files with 34 additions and 15 deletions

View File

@ -21,8 +21,6 @@ const SK_PERMISSION_MATRIX = [
"presupuesto-cliente.edit",
"presupuesto-cliente.delete",
"presupuesto-cliente.menu",
"pedidos-validacion.view",
"pedidos-validacion.menu",
"pedidos-activos.view",
"pedidos-activos.menu",
"pedidos-finalizados.view",
@ -31,8 +29,6 @@ const SK_PERMISSION_MATRIX = [
"pedidos-cancelados.menu",
"pedidos-todos.view",
"pedidos-todos.menu",
"pedidos-gestion.toprod",
"pedidos-gestion.menu",
"tarifa-preimpresion.create",
"tarifa-preimpresion.edit",
"tarifa-preimpresion.delete",
@ -224,6 +220,10 @@ const SK_PERMISSION_MATRIX = [
"proveedores.menu",
"tickets.edit",
"tickets.menu",
"facturas.create",
"facturas.edit",
"facturas.vencimientos",
"facturas.menu",
],
"contabilidad" => [
"token.token",

View File

@ -103,4 +103,8 @@ const SK_PERMISSIONS = [
'roles-permisos.menu' => 'Menu shall be visualize',
'tickets.edit' => 'Can edit',
'tickets.menu' => 'Menu shall be visualize',
'facturas.create' => 'Can create',
'facturas.edit' => 'Can edit',
'facturas.vencimientos' => 'Can vencimientos',
'facturas.menu' => 'Menu shall be visualize',
];

View File

@ -103,6 +103,8 @@ class Facturas extends \App\Controllers\BaseResourceController
public function add()
{
if(!auth()->user()->can('facturas.create'))
return $this->failForbidden(lang('Basic.global.noPermission'), 403);
if ($this->request->getPost()):
$nullIfEmpty = true; // !(phpversion() >= '8.1');
@ -201,6 +203,9 @@ class Facturas extends \App\Controllers\BaseResourceController
public function edit($id = null)
{
if(!auth()->user()->can('facturas.edit'))
return $this->failForbidden(lang('Basic.global.noPermission'), 403);
if ($id == null):
return $this->redirect2listView();
endif;
@ -328,26 +333,29 @@ class Facturas extends \App\Controllers\BaseResourceController
}
)
->add("action", callback: function ($q) {
if ($q->estado == 'borrador') {
return '
if (auth()->user()->can('facturas.edit')) {
if ($q->estado == 'borrador') {
return '
<div class="btn-group btn-group-sm">
<a href="javascript:void(0);"><i class="ti ti-pencil ti-sm btn-edit mx-2" data-id="' . $q->id . '"></i></a>
</div>
';
} else {
return '
} else {
return '
<div class="btn-group btn-group-sm">
<a href="javascript:void(0);"><i class="ti ti-eye ti-sm btn-edit mx-2" data-id="' . $q->id . '"></i></a>
</div>
';
}
}
} else
return '';
});
if ($clienteId != -1) {
$result->hide('cliente');
$result->hide('creditoAsegurado');
if(!$dataForClienteForm){
if (!$dataForClienteForm) {
$result->hide('estado');
$result->hide('estado_pago');
$result->hide('estado_pago');
}
$result->hide('forma_pago');
$result->hide('vencimiento');
@ -357,7 +365,8 @@ class Facturas extends \App\Controllers\BaseResourceController
return $result->toJson(returnAsObject: true);
}
public function getDatosFacturacionClienteForm($cliente_id){
public function getDatosFacturacionClienteForm($cliente_id)
{
return $this->respond($this->model->getSumatoriosFacturacionCliente($cliente_id));
}
@ -498,7 +507,7 @@ class Facturas extends \App\Controllers\BaseResourceController
->update();
$this->model->db->query('DELETE FROM facturas_pedidos_lineas WHERE factura_id=' . $id);
// $message = lang('Basic.global.deleteSuccess', [$objName]); IMN commented
$message = lang('Basic.global.deleteSuccess', [lang('Basic.global.record')]);
$response = $this->respondDeleted(['id' => $id, 'msg' => $message]);

View File

@ -59,7 +59,9 @@ return [
'seriesFacturasSection' => 'Series facturas',
'ajustesSection' => 'Ajustes',
'actividadSection' => 'Accesos',
'facturasSection' => 'Facturas',
'albaranesPermission' => 'Albaranes',
'vencimientosPermission' => 'Vencimientos',
"ticketsSection" => "Tickets",
'validation' => [

View File

@ -2,7 +2,7 @@
/**
* MENU FACTURACION
*/
if (auth()->user()->inGroup('beta')) {
if (auth()->user()->inGroup('beta') || auth()->user()->can('facturas.menu')) {
?>
<!-- Invoicing -->
<li class="menu-item">
@ -11,21 +11,25 @@ if (auth()->user()->inGroup('beta')) {
<?= lang("App.menu_facturación") ?>
</a>
<ul class="menu-sub">
<?php if(auth()->user()->can('facturas.create')): ?>
<li class="menu-item">
<a href="<?= route_to('newFactura') ?>" class="menu-link">
<?= lang("App.menu_facturas_nueva") ?>
</a>
</li>
<?php endif; ?>
<li class="menu-item">
<a href="<?= site_url("facturas/list") ?>" class="menu-link">
<?= lang("App.menu_facturas") ?>
</a>
</li>
<?php if(auth()->user()->can('facturas.vencimientos')): ?>
<li class="menu-item">
<a href="<?= site_url("facturas/vencimientos") ?>" class="menu-link">
<?= lang("App.menu_facturas_vencimiento") ?>
</a>
</li>
<?php endif; ?>
<li class="menu-item">
<a href="<?= site_url("facturas/albaranes") ?>" class="menu-link">
<?= lang("App.menu_albaran") ?>