loadSecurityDefinition method
dynamic
loadSecurityDefinition()
Implementation
loadSecurityDefinition() {
server.session().transaction((tr) async {
for (var module in modules) {
var access = [];
var hasConstraint = false;
for (var service in module.serviceList) {
if (service.accessTokens.isNotEmpty) {
hasConstraint = true;
access.add({
'id': service.name,
'nombre': service.description,
'disponible': service.accessTokens
.map((e) => {'id': e, 'display': e})
.toList(),
'accesos': [],
});
}
}
if (!hasConstraint) {
continue;
}
// cargando modulos
await tr.request("""
insert into fn.modulo(id,nombre,accesos)
select @id,@nombre,@accesos
on conflict (id) do update set accesos=@accesos,nombre=@nombre
""", {
'id': module.name,
'nombre': module.description,
'accesos': jsonEncode(access)
});
}
});
}