168 lines
4.8 KiB
ObjectPascal
168 lines
4.8 KiB
ObjectPascal
|
|
unit uEditorPerfilUsuario;
|
|||
|
|
|
|||
|
|
interface
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|||
|
|
Dialogs, uEditorDBItem, JvAppStorage, JvAppRegistryStorage, DB, uDAInterfaces,
|
|||
|
|
uDADataTable, JvComponentBase, JvFormPlacement, ImgList, PngImageList,
|
|||
|
|
StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TBX, TB2Item,
|
|||
|
|
TB2Dock, TB2Toolbar, pngimage, ExtCtrls, JvExControls, JvNavigationPane,
|
|||
|
|
uIEditorPerfilUsuario, uUsuariosController, uCustomView, uViewBase,
|
|||
|
|
uViewPerfilUsuario, uBizUsuarios, dxLayoutLookAndFeels;
|
|||
|
|
|
|||
|
|
type
|
|||
|
|
TfEditorPerfilUsuario = class(TfEditorDBItem, IEditorPerfilUsuario)
|
|||
|
|
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
|
|||
|
|
dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel;
|
|||
|
|
private
|
|||
|
|
FController : IUsuariosController;
|
|||
|
|
FPerfilUsuario : IBizPerfilUsuario;
|
|||
|
|
FViewPerfilUsuario : IViewPerfilUsuario;
|
|||
|
|
protected
|
|||
|
|
function GetController : IUsuariosController;
|
|||
|
|
procedure SetController (const Value : IUsuariosController);
|
|||
|
|
|
|||
|
|
function GetPerfilUsuario: IBizPerfilUsuario;
|
|||
|
|
procedure SetPerfilUsuario(const Value: IBizPerfilUsuario);
|
|||
|
|
|
|||
|
|
procedure GuardarInterno; override;
|
|||
|
|
procedure EliminarInterno; override;
|
|||
|
|
|
|||
|
|
//Si queremos crear otra vista para el editor heredado solo tendriamos que
|
|||
|
|
//sobreescribir este metodo
|
|||
|
|
procedure AsignarVista; virtual;
|
|||
|
|
procedure PonerTitulos(const ATitulo: string = ''); override;
|
|||
|
|
|
|||
|
|
function GetViewPerfilUsuario: IViewPerfilUsuario;
|
|||
|
|
procedure SetViewPerfilUsuario(const Value: IViewPerfilUsuario);
|
|||
|
|
property ViewPerfilUsuario: IViewPerfilUsuario read GetViewPerfilUsuario write SetViewPerfilUsuario;
|
|||
|
|
public
|
|||
|
|
constructor Create(AOwner: TComponent); override;
|
|||
|
|
destructor Destroy; override;
|
|||
|
|
property Controller : IUsuariosController read GetController write SetController;
|
|||
|
|
property PerfilUsuario: IBizPerfilUsuario read GetPerfilUsuario write SetPerfilUsuario;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
|
|||
|
|
implementation
|
|||
|
|
|
|||
|
|
{$R *.dfm}
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
uDialogUtils;
|
|||
|
|
|
|||
|
|
{ TfEditorUsuario }
|
|||
|
|
|
|||
|
|
var
|
|||
|
|
FIDNuevoGuardado : Integer = -1;
|
|||
|
|
|
|||
|
|
procedure TfEditorPerfilUsuario.AsignarVista;
|
|||
|
|
var
|
|||
|
|
AViewPerfilUsuario: TfrViewPerfilUsuario;
|
|||
|
|
begin
|
|||
|
|
AViewPerfilUsuario := TfrViewPerfilUsuario.Create(Self);
|
|||
|
|
with AViewPerfilUsuario do
|
|||
|
|
begin
|
|||
|
|
Parent := pagGeneral;
|
|||
|
|
Align := alClient;
|
|||
|
|
dxLayoutControlArticulo.LookAndFeel := dxLayoutOfficeLookAndFeel1;
|
|||
|
|
end;
|
|||
|
|
ViewPerfilUsuario := AViewPerfilUsuario;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
constructor TfEditorPerfilUsuario.Create(AOwner: TComponent);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
pgPaginas.ActivePageIndex := 0;
|
|||
|
|
AsignarVista;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
destructor TfEditorPerfilUsuario.Destroy;
|
|||
|
|
begin
|
|||
|
|
// Utilizar mejor OnClose;
|
|||
|
|
inherited;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfEditorPerfilUsuario.EliminarInterno;
|
|||
|
|
begin
|
|||
|
|
if (ShowConfirmMessage('Eliminar un perfil de usuario', '<27>Desea borrar este perfil?') = IDYES) then
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
if not FController.EliminarPerfil(FPerfilUsuario) then
|
|||
|
|
actRefrescar.Execute;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function TfEditorPerfilUsuario.GetController: IUsuariosController;
|
|||
|
|
begin
|
|||
|
|
Result := FController;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function TfEditorPerfilUsuario.GetPerfilUsuario: IBizPerfilUsuario;
|
|||
|
|
begin
|
|||
|
|
Result := FPerfilUsuario;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function TfEditorPerfilUsuario.GetViewPerfilUsuario: IViewPerfilUsuario;
|
|||
|
|
begin
|
|||
|
|
Result := FViewPerfilUsuario;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfEditorPerfilUsuario.GuardarInterno;
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
if FController.GuardarPerfil(FPerfilUsuario) then
|
|||
|
|
begin
|
|||
|
|
FIDNuevoGuardado := FPerfilUsuario.ID;
|
|||
|
|
FPerfilUsuario.DataTable.CancelUpdates;
|
|||
|
|
Modified := False;
|
|||
|
|
actRefrescar.Execute;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfEditorPerfilUsuario.PonerTitulos(const ATitulo: string);
|
|||
|
|
var
|
|||
|
|
FTitulo : String;
|
|||
|
|
begin
|
|||
|
|
if Assigned(FPerfilUsuario) then
|
|||
|
|
begin
|
|||
|
|
if FPerfilUsuario.EsNuevo then
|
|||
|
|
FTitulo := 'Nuevo perfil'
|
|||
|
|
else
|
|||
|
|
FTitulo := 'Perfil';
|
|||
|
|
|
|||
|
|
if Length(FPerfilUsuario.USERNAME) > 0 then
|
|||
|
|
FTitulo := FTitulo + ' - ' + FPerfilUsuario.USERNAME;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
inherited PonerTitulos(FTitulo);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfEditorPerfilUsuario.SetController(const Value: IUsuariosController);
|
|||
|
|
begin
|
|||
|
|
FController := Value;
|
|||
|
|
if Assigned(FViewPerfilUsuario) and Assigned(FController) then
|
|||
|
|
FViewPerfilUsuario.Controller := FController;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfEditorPerfilUsuario.SetPerfilUsuario(
|
|||
|
|
const Value: IBizPerfilUsuario);
|
|||
|
|
begin
|
|||
|
|
FPerfilUsuario := Value;
|
|||
|
|
dsDataTable.DataTable := FPerfilUsuario.DataTable;
|
|||
|
|
|
|||
|
|
if Assigned(FViewPerfilUsuario) and Assigned(FPerfilUsuario) then
|
|||
|
|
FViewPerfilUsuario.PerfilUsuario := FPerfilUsuario;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfEditorPerfilUsuario.SetViewPerfilUsuario(const Value: IViewPerfilUsuario);
|
|||
|
|
begin
|
|||
|
|
FViewPerfilUsuario := Value;
|
|||
|
|
|
|||
|
|
if Assigned(FViewPerfilUsuario) and Assigned(FPerfilUsuario) then
|
|||
|
|
FViewPerfilUsuario.PerfilUsuario := FPerfilUsuario;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end.
|