git-svn-id: https://192.168.0.254/svn/Proyectos.AbetoDesign_FactuGES/trunk@2 93f398dd-4eb6-7a46-baf6-13f46f578da2
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.
|