fase 3.3: comisiones por reglas y liquidacion (modulo skeen_comisiones: motor con reglas por servicio/categoria/articulo/membresia/paquete, monto fijo y escalonado por metas, base vendido/cobrado con y sin impuestos, neto de devoluciones, metas con bonos, ajustes y liquidacion por periodo); reporte legacy intacto con el motor apagado
This commit is contained in:
@@ -146,11 +146,11 @@ export const ClasicoLayout: FC<LayoutProps> = ({ children, title: _title, subtit
|
||||
const location = useLocation();
|
||||
const navigate = useNavigate();
|
||||
const { user, canSee, hasRole, logout, brand } = useAuth();
|
||||
const { membresias: membresiasCfg, compras: comprasCfg } = useClinicSettings();
|
||||
const { membresias: membresiasCfg, compras: comprasCfg, comisiones: comisionesCfg } = useClinicSettings();
|
||||
const [sidebarOpen, setSidebarOpen] = useState(false);
|
||||
const chatUnread = useChatUnread();
|
||||
|
||||
// Membresías y Compras solo cuando la clínica enciende su bandera.
|
||||
// Membresías, Compras y Liquidaciones solo cuando la clínica enciende su bandera.
|
||||
const menuTreeT = useMemo<MenuEntry[]>(() => {
|
||||
let tree = menuTree;
|
||||
if (comprasCfg.activo) {
|
||||
@@ -161,8 +161,11 @@ export const ClasicoLayout: FC<LayoutProps> = ({ children, title: _title, subtit
|
||||
if (membresiasCfg.activo) {
|
||||
tree = [...tree, { label: 'Membresías', icon: Repeat, href: '/membresias' }];
|
||||
}
|
||||
if (comisionesCfg.activo) {
|
||||
tree = [...tree, { label: 'Liquidaciones', icon: Receipt, href: '/comisiones/liquidaciones' }];
|
||||
}
|
||||
return tree;
|
||||
}, [membresiasCfg.activo, comprasCfg.activo]);
|
||||
}, [membresiasCfg.activo, comprasCfg.activo, comisionesCfg.activo]);
|
||||
const menuLeavesT = useMemo(
|
||||
() => menuTreeT.flatMap((e) =>
|
||||
e.children
|
||||
|
||||
Reference in New Issue
Block a user