git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@212 0c75b7a4-871f-7646-8a2f-f78d34cc349f
177 lines
4.6 KiB
ObjectPascal
177 lines
4.6 KiB
ObjectPascal
unit uEditorUsuarios;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, uEditorGridBase, Menus, JvAppStorage, JvAppRegistryStorage, DB,
|
||
uDAInterfaces, uDADataTable, JvComponentBase, JvFormPlacement, ImgList,
|
||
PngImageList, StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TBX,
|
||
TB2ExtItems, TBXExtItems, TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls,
|
||
JvExControls, JvNavigationPane, uCustomView, uViewBase, uViewGridBase,
|
||
uViewGrid, uViewUsuarios, uIEditorUsuarios, uUsuariosController,
|
||
uBizUsuarios;
|
||
|
||
type
|
||
TfEditorUsuarios = class(TfEditorGridBase, IEditorUsuarios)
|
||
actCambiarPassword: TAction;
|
||
TBXSubmenuItem2: TTBXSubmenuItem;
|
||
TBXItem38: TTBXItem;
|
||
TBXItem39: TTBXItem;
|
||
procedure actEliminarUpdate(Sender: TObject);
|
||
procedure actCambiarPasswordUpdate(Sender: TObject);
|
||
procedure actCambiarPasswordExecute(Sender: TObject);
|
||
private
|
||
FUsuarios : IBizUsuario;
|
||
FController : IUsuariosController;
|
||
protected
|
||
function GetController : IUsuariosController;
|
||
procedure SetController (const Value : IUsuariosController);
|
||
|
||
function GetUsuarios: IBizUsuario;
|
||
procedure SetUsuarios(const Value: IBizUsuario);
|
||
|
||
procedure NuevoInterno; override;
|
||
procedure EliminarInterno; override;
|
||
procedure ModificarInterno; override;
|
||
procedure ImprimirInterno; override;
|
||
procedure PrevisualizarInterno; override;
|
||
procedure DuplicarInterno; override;
|
||
|
||
//Si queremos crear otra vista para el editor heredado solo tendriamos que
|
||
//sobreescribir este metodo
|
||
procedure AsignarVista; virtual;
|
||
public
|
||
procedure PonerTitulos(const ATitulo: string = ''); override;
|
||
property Usuarios: IBizUsuario read GetUsuarios write SetUsuarios;
|
||
property Controller : IUsuariosController read GetController write SetController;
|
||
constructor Create(AOwner: TComponent); override;
|
||
destructor Destroy; override;
|
||
end;
|
||
|
||
implementation
|
||
|
||
{$R *.dfm}
|
||
|
||
uses
|
||
uDialogUtils;
|
||
|
||
{ TfEditorUsuarios }
|
||
|
||
procedure TfEditorUsuarios.actCambiarPasswordExecute(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
FController.CambiarPassword(FUsuarios.ID);
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.actCambiarPasswordUpdate(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
if (Sender as TAction).Enabled then
|
||
(Sender as TAction).Enabled := HayDatos;
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.actEliminarUpdate(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
if (Sender as TAction).Enabled then
|
||
(Sender as TAction).Enabled := (FUsuarios.PRIVILEGED = 0);
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.AsignarVista;
|
||
begin
|
||
ViewGrid := CreateView(TfrViewUsuarios) as IViewUsuarios;
|
||
end;
|
||
|
||
constructor TfEditorUsuarios.Create(AOwner: TComponent);
|
||
begin
|
||
inherited;
|
||
AsignarVista;
|
||
end;
|
||
|
||
destructor TfEditorUsuarios.Destroy;
|
||
begin
|
||
FUsuarios := NIL;
|
||
FController := NIl;
|
||
|
||
inherited;
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.DuplicarInterno;
|
||
begin
|
||
inherited;
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.EliminarInterno;
|
||
begin
|
||
if (ShowConfirmMessage('Eliminar un usuario', Format('<27>Desea borrar el usuario %s?', [FUsuarios.USERNAME])) = IDYES) then
|
||
begin
|
||
inherited;
|
||
//Para que en el caso de no poderse realizar la operaci<63>n se refresquen
|
||
//los datos y no nos permita eliminar un registro a la segunda
|
||
FController.EliminarUsuario(FUsuarios.ID);
|
||
actRefrescar.Execute;
|
||
end;
|
||
end;
|
||
|
||
function TfEditorUsuarios.GetController: IUsuariosController;
|
||
begin
|
||
Result := FController;
|
||
end;
|
||
|
||
function TfEditorUsuarios.GetUsuarios: IBizUsuario;
|
||
begin
|
||
Result := FUsuarios;
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.ImprimirInterno;
|
||
begin
|
||
inherited;
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.ModificarInterno;
|
||
begin
|
||
inherited;
|
||
FController.VerUsuario(FUsuarios.ID);
|
||
actRefrescar.Execute;
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.NuevoInterno;
|
||
var
|
||
ANuevoUsuario : IBizUsuario;
|
||
begin
|
||
inherited;
|
||
ANuevoUsuario := FController.NuevoUsuario;
|
||
FController.VerUsuario(ANuevoUsuario);
|
||
actRefrescar.Execute;
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.PonerTitulos(const ATitulo: string);
|
||
var
|
||
FTitulo : String;
|
||
begin
|
||
FTitulo := 'Lista de usuarios';
|
||
inherited PonerTitulos(FTitulo);
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.PrevisualizarInterno;
|
||
begin
|
||
inherited;
|
||
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.SetController(const Value: IUsuariosController);
|
||
begin
|
||
FController := Value;
|
||
end;
|
||
|
||
procedure TfEditorUsuarios.SetUsuarios(const Value: IBizUsuario);
|
||
begin
|
||
FUsuarios := Value;
|
||
dsDataTable.DataTable := FUsuarios.DataTable;
|
||
if Assigned(ViewGrid) then
|
||
(ViewGrid as IViewUsuarios).Usuarios := FUsuarios;
|
||
end;
|
||
|
||
end.
|