public void AgregarNota()
        {
            NotaISSQL ntgw = new NotaISSQL();
            NotaIS nota = new NotaIS();
            nota.IdAlmacen = Almacen.ElementAt(0).IdAlmacen;
            // Logica de  Referencia de documento
            if (SelectedDespacho != null || SelectedSolicitud != null)
            {
                // si hay documento de referencia colocar id;
                nota.IdDoc = TxtDocId;
            }
            else
            {
                //Si no existe documento de referencia colocar 0
                nota.IdDoc = 0;
            }

            if (String.IsNullOrEmpty(SelectedMotivo))
            {
                _windowManager.ShowDialog(new AlertViewModel(_windowManager, "No se pudo guardar"));
                return;
            }

            nota.IdMotivo = DataObjects.Almacen.MotivoSQL.BuscarMotivo(SelectedMotivo).Id;
            nota.IdResponsable = Responsable.ElementAt(0).IdUsuario;
            nota.Observaciones = Observaciones;
            nota.Tipo = 2;

            nota.LstProducto = this.LstProductos;

            nota.IdNota = ntgw.AgregarNota(nota);

            if (nota.IdNota > 0)
            {

                //Actualizar Documentos de Referencia para darlos por Terminados! :)

                //Actualizar Stock
                ProductoxTiendaSQL ptgw = new ProductoxTiendaSQL();
                ProductoSQL pgw = new ProductoSQL();

                List<ProductoCant> list = ntgw.BuscarNotas(nota.IdNota);
                if (SelectedSolicitud != null) {
                    pgw.ActualizarStockTemporalSalida(list);
                }
                else
                {
                    if (u.IdTienda != 0) ptgw.ActualizarStockSalida(list, u.IdTienda);
                    else pgw.ActualizarStockSalida(list);
                }
                //Actualizar Documento de Referencia

                if (SelectedDespacho != null)
                {

                    OrdenDespachoSQL osql = new OrdenDespachoSQL();
                    SelectedDespacho.Estado = 2;
                    osql.EditarOrdenDespacho(selectedDespacho);

                }
                if (SelectedSolicitud != null)
                {
                    CambiarEstadoSolicitud(SelectedSolicitud);
                }

                _windowManager.ShowDialog(new AlertViewModel(_windowManager, "Nota de Salida Creada"));
                //1: Agregar, 2: Editar, 3: Eliminar, 4: Recuperar, 5: Desactivar
                DataObjects.Seguridad.LogSQL.RegistrarActividad("Registrar Nota de Salida", nota.IdNota.ToString(), 1);
            }
            else
            {
                _windowManager.ShowDialog(new AlertViewModel(_windowManager, "No se pudo guardar"));
            }
        }
 public void Guardar()
 {
     int k = 0;
     if (ordenDespachoSeleccionado != null)
     {
         ordenDespachoSeleccionado.Estado = LstEstadoValue;
         OrdenDespachoSQL odSQL = new OrdenDespachoSQL();
         k = odSQL.EditarOrdenDespacho(ordenDespachoSeleccionado);
         if (k == 1)
             _windowManager.ShowDialog(new AlertViewModel(_windowManager, "Orden de despacho actualizado con éxito"));
     }
 }