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 HayUsuarioConPerfil(const AIDPerfil : integer): Boolean;
|
||||||
|
|
||||||
|
function BuscarUsuario(const AIDUser: Integer): IBizUsuario;
|
||||||
|
function BuscarTodosUsuarios: IBizUsuario;
|
||||||
|
|
||||||
function DarListaPerfilesUsuario: TStringList;
|
function DarListaPerfilesUsuario: TStringList;
|
||||||
|
function DarListaUsuarios: TStringList;
|
||||||
|
|
||||||
function ValidarPassword(const APassword : string; const ALogin : String;
|
function ValidarPassword(const APassword : string; const ALogin : String;
|
||||||
const ANombre: String; out AMsg : String): boolean;
|
const ANombre: String; out AMsg : String): boolean;
|
||||||
@ -78,6 +82,7 @@ type
|
|||||||
TUsuariosController = class(TControllerBase, IUsuariosController)
|
TUsuariosController = class(TControllerBase, IUsuariosController)
|
||||||
private
|
private
|
||||||
function Eliminar(const AIDUser: integer): Boolean;
|
function Eliminar(const AIDUser: integer): Boolean;
|
||||||
|
procedure FiltrarEmpresa(AUsuario: IBizUsuario);
|
||||||
protected
|
protected
|
||||||
FDataModule : IDataModuleUsuarios;
|
FDataModule : IDataModuleUsuarios;
|
||||||
FUserControl: TUserControl;
|
FUserControl: TUserControl;
|
||||||
@ -138,7 +143,12 @@ type
|
|||||||
function GuardarPerfil(APerfil : IBizPerfilUsuario): Boolean;
|
function GuardarPerfil(APerfil : IBizPerfilUsuario): Boolean;
|
||||||
function GuardarUsuario(AUser : IBizUsuario): Boolean;
|
function GuardarUsuario(AUser : IBizUsuario): Boolean;
|
||||||
|
|
||||||
|
function BuscarUsuario(const AIDUser: Integer): IBizUsuario;
|
||||||
|
function BuscarTodosUsuarios: IBizUsuario;
|
||||||
|
|
||||||
function DarListaPerfilesUsuario: TStringList;
|
function DarListaPerfilesUsuario: TStringList;
|
||||||
|
function DarListaUsuarios: TStringList;
|
||||||
|
|
||||||
function HayUsuarioConPerfil(const AIDPerfil : integer): Boolean;
|
function HayUsuarioConPerfil(const AIDPerfil : integer): Boolean;
|
||||||
function ValidarPassword(const APassword : string; const ALogin : String;
|
function ValidarPassword(const APassword : string; const ALogin : String;
|
||||||
const ANombre: String; out AMsg : String): boolean;
|
const ANombre: String; out AMsg : String): boolean;
|
||||||
@ -263,6 +273,18 @@ begin
|
|||||||
FDataModule := TDataModuleUsuarios.Create(Nil);
|
FDataModule := TDataModuleUsuarios.Create(Nil);
|
||||||
end;
|
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;
|
function TUsuariosController.CambiarPassword(const AIDUser: Integer;
|
||||||
const ANewPassword: String): Boolean;
|
const ANewPassword: String): Boolean;
|
||||||
begin
|
begin
|
||||||
@ -344,8 +366,6 @@ begin
|
|||||||
while not APerfilesUsuario.DataTable.EOF do
|
while not APerfilesUsuario.DataTable.EOF do
|
||||||
begin
|
begin
|
||||||
Add(Format('%s=%d', [APerfilesUsuario.USERNAME, APerfilesUsuario.ID]));
|
Add(Format('%s=%d', [APerfilesUsuario.USERNAME, APerfilesUsuario.ID]));
|
||||||
{i := Add(APerfilesUsuario.USERNAME);
|
|
||||||
ValueFromIndex[i] := IntToStr(APerfilesUsuario.ID);}
|
|
||||||
APerfilesUsuario.DataTable.Next;
|
APerfilesUsuario.DataTable.Next;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@ -354,6 +374,30 @@ begin
|
|||||||
end;
|
end;
|
||||||
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;
|
destructor TUsuariosController.Destroy;
|
||||||
begin
|
begin
|
||||||
FreeAndNIL(FUserControl);
|
FreeAndNIL(FUserControl);
|
||||||
@ -830,4 +874,30 @@ begin
|
|||||||
end;
|
end;
|
||||||
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.
|
end.
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user