예제 #1
0
        //Constructor
        public EditarPedido(Pedido pedido, int idVendedor)
        {
            //Inicializa la pantalla
            InitializeComponent();
            NavigationPage.SetHasNavigationBar(this, false);

            //Guarda el ID del Vendedor
            this.IdVendedor = idVendedor;

            //Cargan los Clientes para el picker
            cargarClientes();

            //Cargan los Articulos para el picker
            cargarArticulos();

            pickerCliente.IsVisible     = true;
            pickerEstado.IsVisible      = true;
            dateFechaPedido.IsVisible   = true;
            dateFechaEntrega.IsVisible  = true;
            txtGastosEnvio.IsVisible    = true;
            imgAddDetalle.IsVisible     = true;
            btnGuardar.IsVisible        = true;
            btnGuardarDetalle.IsVisible = true;

            lblCliente.IsVisible      = false;
            lblEstado.IsVisible       = false;
            lblFecha.IsVisible        = false;
            lblFechaEntrega.IsVisible = false;
            lblGastosEnvio.IsVisible  = false;

            //Verifica si se esta creando un Pedido o si se esta odificando uno
            if (pedido == null)
            {
                lblTitulo.Text      = "Agregar Pedido";
                this.tempPedido     = new Pedido();
                tempPedido.Editable = true;
                this.tempDomicilio  = new Domicilio();
                int idPedido;
                using (var cPedido = new ControladorPedido())
                {
                    idPedido = cPedido.LastID() + 1;
                }
                lblNumero.Text           = idPedido.ToString();
                btnEliminar.Text         = "Cancelar";
                this.detalles            = new ObservableCollection <Detalle>();
                listDetalles.ItemsSource = this.detalles;
                this.detallesEliminados  = new List <Detalle>();
                switchPagado.IsToggled   = false;
            }
            else
            {
                lblTitulo.Text  = "Editar Pedido";
                this.tempPedido = pedido;

                using (var cliControlador = new ControladorCliente())
                {
                    Cliente tempCliente = cliControlador.FindById(this.tempPedido.IdCliente);

                    using (var domControlador = new ControladorDomicilio())
                    {
                        this.tempDomicilio = domControlador.FindById(tempCliente.IdDomicilio);
                    }
                }

                rellenarCampos();
                cargarDetalles();
                this.detallesEliminados = new List <Detalle>();
            }
        }