Tecsitel_FactuGES2/Source/Modulos/Pedidos a proveedor/Views/uEditorSituacionPedidoProveedor.pas

149 lines
4.3 KiB
ObjectPascal
Raw Normal View History

unit uEditorSituacionPedidoProveedor;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls,
uIEditorSituacionPedidoProveedor, uPedidosProveedorController, uBizPedidosProveedor,
JvExControls, JvComponent, cxControls, cxContainer, cxEdit,
cxTextEdit, cxMaskEdit, cxDropDownEdit, cxCalendar, cxDBEdit, ActnList;
type
TfEditorSituacionPedidoProveedor = class(TForm, IEditorSituacionPedidoProveedor)
pnlSeleccion: TPanel;
bAceptar: TButton;
bCancelar: TButton;
lblTitle: TLabel;
lblComments: TLabel;
rbPendiente: TRadioButton;
rbParcial: TRadioButton;
ActionList1: TActionList;
actPendiente: TAction;
actParcial: TAction;
actAceptar: TAction;
Label4: TLabel;
edtFechaPedidoProveedor: TEdit;
Label3: TLabel;
edtFechaParcial: TcxDateEdit;
rbRecibido: TRadioButton;
Label1: TLabel;
eFechaRecibido: TcxDateEdit;
actRecibido: TAction;
procedure actPendienteExecute(Sender: TObject);
procedure actParcialExecute(Sender: TObject);
procedure actRecibidoExecute(Sender: TObject);
procedure actRechazadoExecute(Sender: TObject);
procedure actAceptarExecute(Sender: TObject);
private
FController: IPedidosProveedorController;
FPedidoProveedor: IBizPedidoProveedor;
function GetController : IPedidosProveedorController;
procedure SetController (const Value : IPedidosProveedorController);
function GetPedidoProveedor: IBizPedidoProveedor;
procedure SetPedidoProveedor(const Value: IBizPedidoProveedor);
procedure RefrescarEstado;
public
property PedidoProveedor: IBizPedidoProveedor read GetPedidoProveedor write SetPedidoProveedor;
property Controller : IPedidosProveedorController read GetController
write SetController;
end;
implementation
{$R *.dfm}
uses
uDateUtils, DateUtils;
{ TfEditorSituacionPedido }
procedure TfEditorSituacionPedidoProveedor.actParcialExecute(Sender: TObject);
begin
RefrescarEstado;
end;
procedure TfEditorSituacionPedidoProveedor.actAceptarExecute(Sender: TObject);
begin
if rbPendiente.Checked then
FController.CambiarSituacion(FPedidoProveedor, SITUACION_PEDIDO_PENDIENTE);
if rbParcial.Checked then
FController.CambiarSituacion(FPedidoProveedor, SITUACION_PEDIDO_PARCIAL, edtFechaParcial.Date);
if rbRecibido.Checked then
FController.CambiarSituacion(FPedidoProveedor, SITUACION_PEDIDO_RECIBIDO, eFechaRecibido.Date);
ModalResult := mrOk;
Close;
end;
procedure TfEditorSituacionPedidoProveedor.actPendienteExecute(Sender: TObject);
begin
RefrescarEstado;
end;
procedure TfEditorSituacionPedidoProveedor.actRechazadoExecute(Sender: TObject);
begin
RefrescarEstado;
end;
procedure TfEditorSituacionPedidoProveedor.actRecibidoExecute(Sender: TObject);
begin
RefrescarEstado;
end;
function TfEditorSituacionPedidoProveedor.GetController: IPedidosProveedorController;
begin
Result := FController;
end;
function TfEditorSituacionPedidoProveedor.GetPedidoProveedor: IBizPedidoProveedor;
begin
Result := FPedidoProveedor;
end;
procedure TfEditorSituacionPedidoProveedor.SetController(
const Value: IPedidosProveedorController);
begin
FController := Value;
end;
procedure TfEditorSituacionPedidoProveedor.SetPedidoProveedor(const Value: IBizPedidoProveedor);
begin
FPedidoProveedor := Value;
if not FPedidoProveedor.DataTable.Active then
FPedidoProveedor.DataTable.Open;
edtFechaPedidoProveedor.Text := DateToStr(FPedidoProveedor.FECHA_PEDIDO);
rbPendiente.Checked := (FPedidoProveedor.Situacion = SITUACION_PEDIDO_PENDIENTE);
rbParcial.Checked := (FPedidoProveedor.Situacion = SITUACION_PEDIDO_PARCIAL);
rbRecibido.Checked := (FPedidoProveedor.Situacion = SITUACION_PEDIDO_RECIBIDO);
if rbParcial.Checked then
begin
edtFechaParcial.Date := FPedidoProveedor.FECHA_ENTREGA;
eFechaRecibido.Clear;
end
else if rbRecibido.Checked then
begin
eFechaRecibido.Date := FPedidoProveedor.FECHA_ENTREGA;
edtFechaParcial.Clear;
end
else
begin
edtFechaParcial.Clear;
eFechaRecibido.Clear;
end;
end;
procedure TfEditorSituacionPedidoProveedor.RefrescarEstado;
begin
//
end;
end.