uUsuariosController: funciones para dar un usuario o todos los usuarios.
git-svn-id: https://192.168.0.254/svn/Proyectos.Acana_FactuGES2/trunk@110 f4e31baf-9722-1c47-927c-6f952f962d4b
This commit is contained in:
parent
fe4d7a0f53
commit
1c43e5f4fd
@ -48,7 +48,11 @@ type
|
||||
|
||||
function HayUsuarioConPerfil(const AIDPerfil : integer): Boolean;
|
||||
|
||||
function BuscarUsuario(const AIDUser: Integer): IBizUsuario;
|
||||
function BuscarTodosUsuarios: IBizUsuario;
|
||||
|
||||
function DarListaPerfilesUsuario: TStringList;
|
||||
function DarListaUsuarios: TStringList;
|
||||
|
||||
function ValidarPassword(const APassword : string; const ALogin : String;
|
||||
const ANombre: String; out AMsg : String): boolean;
|
||||
@ -78,6 +82,7 @@ type
|
||||
TUsuariosController = class(TControllerBase, IUsuariosController)
|
||||
private
|
||||
function Eliminar(const AIDUser: integer): Boolean;
|
||||
procedure FiltrarEmpresa(AUsuario: IBizUsuario);
|
||||
protected
|
||||
FDataModule : IDataModuleUsuarios;
|
||||
FUserControl: TUserControl;
|
||||
@ -138,7 +143,12 @@ type
|
||||
function GuardarPerfil(APerfil : IBizPerfilUsuario): Boolean;
|
||||
function GuardarUsuario(AUser : IBizUsuario): Boolean;
|
||||
|
||||
function BuscarUsuario(const AIDUser: Integer): IBizUsuario;
|
||||
function BuscarTodosUsuarios: IBizUsuario;
|
||||
|
||||
function DarListaPerfilesUsuario: TStringList;
|
||||
function DarListaUsuarios: TStringList;
|
||||
|
||||
function HayUsuarioConPerfil(const AIDPerfil : integer): Boolean;
|
||||
function ValidarPassword(const APassword : string; const ALogin : String;
|
||||
const ANombre: String; out AMsg : String): boolean;
|
||||
@ -263,6 +273,18 @@ begin
|
||||
FDataModule := TDataModuleUsuarios.Create(Nil);
|
||||
end;
|
||||
|
||||
function TUsuariosController.BuscarTodosUsuarios: IBizUsuario;
|
||||
begin
|
||||
Result := FDataModule.GetUsuarios;
|
||||
FiltrarEmpresa(Result);
|
||||
end;
|
||||
|
||||
function TUsuariosController.BuscarUsuario(const AIDUser: Integer): IBizUsuario;
|
||||
begin
|
||||
Result := FDataModule.GetUsuario(AIDUser);
|
||||
FiltrarEmpresa(Result);
|
||||
end;
|
||||
|
||||
function TUsuariosController.CambiarPassword(const AIDUser: Integer;
|
||||
const ANewPassword: String): Boolean;
|
||||
begin
|
||||
@ -344,8 +366,6 @@ begin
|
||||
while not APerfilesUsuario.DataTable.EOF do
|
||||
begin
|
||||
Add(Format('%s=%d', [APerfilesUsuario.USERNAME, APerfilesUsuario.ID]));
|
||||
{i := Add(APerfilesUsuario.USERNAME);
|
||||
ValueFromIndex[i] := IntToStr(APerfilesUsuario.ID);}
|
||||
APerfilesUsuario.DataTable.Next;
|
||||
end;
|
||||
end;
|
||||
@ -354,6 +374,30 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
function TUsuariosController.DarListaUsuarios: TStringList;
|
||||
var
|
||||
AUsuarios: IBizUsuario;
|
||||
i : integer;
|
||||
begin
|
||||
AUsuarios := FDataModule.GetUsuarios;
|
||||
AUsuarios.DataTable.Active := True;
|
||||
|
||||
Result := TStringList.Create;
|
||||
try
|
||||
with Result do
|
||||
begin
|
||||
AUsuarios.DataTable.First;
|
||||
while not AUsuarios.DataTable.EOF do
|
||||
begin
|
||||
Add(Format('%s=%d', [AUsuarios.USERNAME, AUsuarios.ID]));
|
||||
AUsuarios.DataTable.Next;
|
||||
end;
|
||||
end;
|
||||
finally
|
||||
AUsuarios := NIL;
|
||||
end;
|
||||
end;
|
||||
|
||||
destructor TUsuariosController.Destroy;
|
||||
begin
|
||||
FreeAndNIL(FUserControl);
|
||||
@ -830,4 +874,30 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TUsuariosController.FiltrarEmpresa(AUsuario: IBizUsuario);
|
||||
var
|
||||
Condicion: TDAWhereExpression;
|
||||
begin
|
||||
|
||||
// AQUI HAY QUE TENER EN CUENTA QUE UN USUARIO PUEDE QUE NO TENGA ACCESO
|
||||
// EN UNA DETERMINADA EMPRESA
|
||||
|
||||
|
||||
{ if AUsuario.DataTable.Active then
|
||||
AUsuario.DataTable.Active := False;
|
||||
|
||||
// Filtrar los contactos actuales por empresa
|
||||
with AUsuario.DataTable.DynamicWhere do
|
||||
begin
|
||||
Condicion := NewBinaryExpression(NewField('', fld_U
|
||||
ContactosID_EMPRESA), NewConstant(AppFactuGES.EmpresaActiva.ID, datInteger), dboEqual);
|
||||
|
||||
if IsEmpty then
|
||||
Expression := Condicion
|
||||
else
|
||||
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
|
||||
end;}
|
||||
end;
|
||||
|
||||
|
||||
end.
|
||||
|
||||
Loading…
Reference in New Issue
Block a user