public AgregarProductosPedidos3(int idOrde, IngresarRecepcion_AD ingresarRecepcion, int idProducto, int cantidad, int valorUni, int valorTot, int index) { try { InitializeComponent(); OrdenPedidoDAL orden = new OrdenPedidoDAL(); OrdenPedidoVIEW datos = orden.CargarOrdenPedido(idOrde); IdProveedor = datos.PROVEEDOR_ID; IdSucursal = datos.SUCURSAL_ID; _IngresarRecepcion = ingresarRecepcion; CargarCombos(); cbxProducto.SelectedValue = idProducto; txtValorUni.Text = valorUni.ToString(); txtCantidad.Text = cantidad.ToString(); Index = index; btnAgregarProd.Visibility = Visibility.Hidden; btnAgregarProd.IsEnabled = false; btnAgregarProd_Copy.Visibility = Visibility.Visible; btnAgregarProd_Copy.IsEnabled = true; } catch (Exception ex) { throw ex; } }
public AgregarProductosPedidos3(int idOrde, IngresarRecepcion_AD ingresarRecepcion) { InitializeComponent(); OrdenPedidoDAL orden = new OrdenPedidoDAL(); OrdenPedidoVIEW datos = orden.CargarOrdenPedido(idOrde); IdProveedor = datos.PROVEEDOR_ID; IdSucursal = datos.SUCURSAL_ID; _IngresarRecepcion = ingresarRecepcion; CargarCombos(); }
private void CargarOrdenPedido(DataRow dataRow) { int idOrden = int.Parse(dataRow["ID"].ToString()); OrdenPedidoNEG ordenPedidoNEG = new OrdenPedidoNEG(); ordenPedidoCarga = ordenPedidoNEG.CargarOrdenPedido(idOrden); if (ordenPedidoCarga.ESTADO_ORDEN_PEDIDO_ID == 3 || ordenPedidoCarga.ESTADO_ORDEN_PEDIDO_ID == 4) { btnAgregaProducto.IsEnabled = false; btnQuitarProducto.IsEnabled = false; btnEnviar.IsEnabled = false; btnRechazar.IsEnabled = false; btnEliminar.IsEnabled = false; } }
private void CargarFormulario(OrdenPedidoVIEW data) { lblIdOrdenPedido.Content = data.ID.ToString(); txtFolio.Text = dataRow["FOLIO"].ToString(); txtproveedor.Text = data.PROVEEDOR; txtRutProveedor.Text = dataRow["RUT PROVEEDOR"].ToString(); dpkFechaCreacion.SelectedDate = data.FECHA_CREACION; txtSucursal.Text = data.SUCURSAL; SucursalNEG sucursalNEG = new SucursalNEG(); var datos = sucursalNEG.CargarSucursal(data.SUCURSAL_ID); txtDireccion.Text = datos.DIRECCION; txtTelFijo.Text = datos.NUMERO_TELEFONO.ToString(); txtEmailSucursal.Text = data.EMAIL_SUCURSAL.ToString(); cbxMoneda.SelectedValue = data.MULTI_MONEDA_ID; cbxEmpleado.SelectedValue = data.EMPLEADO_ID; txtEmailProveedor.Text = data.EMAIL_PROVEEDOR; int empleado = int.Parse(cbxEmpleado.SelectedValue.ToString()); EmpleadosNEG empleadosNEG = new EmpleadosNEG(); var datos1 = empleadosNEG.CargarEmpleado(empleado); txtNombreEmpleado.Text = datos1.NOMBRE + " " + datos1.APELLIDO; DetalleOrdenPedidoNEG detalleOrdenPedidoNEG = new DetalleOrdenPedidoNEG(); List <DETALLE_ORDEN_PEDIDO> listaDetalle = detalleOrdenPedidoNEG.CargarlistaDetalleOrden(data.ID); foreach (var fila in listaDetalle) { AgregarItemTablaProductos(fila.PRODUCTO_ID, fila.NOMBRE_PRODUCTO, int.Parse(fila.CANTIDAD.ToString()), Convert.ToDecimal(fila.PRECIO_COMPRA), Convert.ToDecimal(fila.MONTO_TOTAL)); } int moneda = int.Parse(cbxMoneda.SelectedValue.ToString()); MultiMonedaNEG multiMonedaNEG = new MultiMonedaNEG(); var datos2 = multiMonedaNEG.CargarMultiMoneda(moneda); decimal valorMoneda = Convert.ToDecimal(datos2.MONTO); decimal costoCLP = Convert.ToDecimal(txtCostoTotal.Text); txtCostoMoneda.Text = string.Format("{0:n2}", (Math.Truncate((costoCLP / valorMoneda)))); }
private void btnEnviar_Click(object sender, RoutedEventArgs e) { try { if (cbxFolio.SelectedValue != null) { string motivo = txtMotivo.Text; string emailPro = txtEmailProveedor.Text; string emailSuc = txtEmailSucursal.Text; if (motivo.Trim().Length >= 10) { if (emailPro.Trim().Length >= 5) { if (emailSuc.Trim().Length >= 5) { MessageBox.Show("Espere mientras el documento es generado. Presione 'Aceptar' para comenzar"); int idFolio = int.Parse(cbxFolio.SelectedValue.ToString()); string folio = idFolio.ToString(); for (int i = 0; i < 9; i++) { if (folio.Length < 8) { folio = "0" + folio; } } ExportarArchivos pdf = new ExportarArchivos(); PDF_ModeloDevolucion modelo = new PDF_ModeloDevolucion(); OrdenPedidoNEG ordenPedidoNEG = new OrdenPedidoNEG(); OrdenPedidoVIEW orden = new OrdenPedidoVIEW(); DetalleOrdenPedidoNEG detalleOrdenPedidoNEG = new DetalleOrdenPedidoNEG(); orden = ordenPedidoNEG.CargarOrdenPedido(idFolio); modelo.Sucursal = orden.SUCURSAL; modelo.Folio = folio; modelo.NombreProveedor = orden.PROVEEDOR; modelo.RolProveedor = orden.NUMID_PROVEEDOR + "-" + orden.DIVID_PROVEEDOR; modelo.Motivo = motivo; modelo.EmailProveedor = emailPro; modelo.EmailSucursal = emailSuc; modelo.DetalleOrdenPedido = detalleOrdenPedidoNEG.CargarlistaDetalleOrden(idFolio); ServerCorreo abrir_server = new ServerCorreo(); Correo correoM = new Correo(); //parametriza el servidor STMP para enviar el correo SmtpClient server = abrir_server.InstanciaServer(); string respuesta = pdf.DevolucionPedidoPDF(modelo); //Instancia la libreria que permite armar correo electronico y llama el metodo que lo crea MailMessage email = correoM.CorreoDevolucionPedido(respuesta, emailSuc, emailPro, modelo.NombreProveedor, folio, motivo); //envia el correo server.Send(email); MessageBox.Show("El documento se genero correctamente. Ubíquelo en 'Mis Documentos'"); } else { MessageBox.Show("Debe indicar un correo de la sucursal"); } } else { MessageBox.Show("Debe indicar un correo del proveedor"); } } else { MessageBox.Show("Debe indicar un motivo de la menos 10 caracteres"); } } else { MessageBox.Show("Debe seleccionar solo una fila"); } } catch (Exception ex) { MessageBox.Show("Error:\n" + ex.TargetSite + "\n" + ex.Message.ToString()); } }
public string ActualizarOrdenPedido(OrdenPedidoVIEW ordenPedidCarga, int proveedor, int sucursal, string emailSucursal, int tipoMultimoneda, int empleado, string emailProveedor, DateTime fechaActualizacion, DataTable tabla) { try { if (emailProveedor.Trim().Length > 4) { if (tabla.Rows.Count > 0) { if (tipoMultimoneda > -1) { if (empleado > -1) { if (emailSucursal.Trim().Length > 4) { ORDEN_PEDIDO orden = new ORDEN_PEDIDO(); List <DETALLE_ORDEN_PEDIDO> detalleOrden = new List <DETALLE_ORDEN_PEDIDO>(); OrdenPedidoDAL ordenPedidoDAL = new OrdenPedidoDAL(); orden.FECHA_ULTIMO_UPDATE = fechaActualizacion; decimal montoTotal = 0; int cantidadTotal = 0; foreach (DataRow fila in tabla.Rows) { DETALLE_ORDEN_PEDIDO detalle = new DETALLE_ORDEN_PEDIDO(); detalle.FECHA_CREACION = DateTime.Now; detalle.FECHA_ULTIMO_UPDATE = DateTime.Now; detalle.CANTIDAD = int.Parse(fila.ItemArray[2].ToString()); detalle.MONTO_TOTAL = Decimal.Parse(fila.ItemArray[4].ToString()); detalle.NOMBRE_PRODUCTO = fila.ItemArray[1].ToString(); detalle.PRECIO_COMPRA = Decimal.Parse(fila.ItemArray[3].ToString()); detalle.MULTI_MONEDA_ID = tipoMultimoneda; detalle.PRODUCTO_ID = int.Parse(fila.ItemArray[0].ToString()); detalleOrden.Add(detalle); montoTotal = montoTotal + Decimal.Parse(fila.ItemArray[4].ToString()); cantidadTotal = cantidadTotal + int.Parse(fila.ItemArray[2].ToString()); } orden.ID = ordenPedidCarga.ID; orden.CANTIDAD_TOTAL = cantidadTotal; orden.MONTO_TOTAL = montoTotal; orden.EMPLEADO_ID = empleado; orden.ESTADO_ORDEN_PEDIDO_ID = ordenPedidCarga.ESTADO_ORDEN_PEDIDO_ID; orden.MULTI_MONEDA_ID = tipoMultimoneda; orden.EMAIL_PROVEEDOR = emailProveedor; orden.EMAIL_SUCURSAL = emailSucursal; return(ordenPedidoDAL.ActualizarOrdenPedido(orden, detalleOrden)); } else { return("Debe email de la sucursal para enviar una copia del pedido"); } } else { return("Debe indicar un empleado responsable"); } } else { return("Debe indicar un tipo de moneda"); } } else { return("Debe agregar productos para solicitarlos"); } } else { return("Debe indicar email del proveedor para enviar el pedido"); } } catch (Exception ex) { throw ex; } }
public string InsertarControlRecepcion(string comentario, DateTime fechaRececpion, int empleado, int estado, int orden, DataTable tabla) { try { CONTROL_RECEPCION control = new CONTROL_RECEPCION(); List <DETALLE_CONTROL_RECEPCION> detalleControl = new List <DETALLE_CONTROL_RECEPCION>(); OrdenPedidoDAL ordenPedidoDAL = new OrdenPedidoDAL(); OrdenPedidoVIEW ordenPedidoVIEW = new OrdenPedidoVIEW(); ControlRecepcionDAL controlRecepcionDAL = new ControlRecepcionDAL(); if (orden > -1) { if (empleado > -1) { if (estado > -1) { if (tabla.Rows.Count > 0) { ordenPedidoVIEW = ordenPedidoDAL.CargarOrdenPedido(orden); control.FECHA_CREACION = DateTime.Now; control.FECHA_ULTIMO_UPDATE = DateTime.Now; control.COMENTARIO = comentario; control.FECHA_APROVACION = ordenPedidoVIEW.FECHA_ULTIMO_UPDATE; control.FECHA_RECEPCION = fechaRececpion; control.EMPLEADO_ID = empleado; control.ESTADO_CONTROL_RECEPCION_ID = estado; control.ORDEN_PEDIDO_ID = orden; foreach (DataRow fila in tabla.Rows) { DETALLE_CONTROL_RECEPCION detalle = new DETALLE_CONTROL_RECEPCION(); detalle.FECHA_CREACION = DateTime.Now; detalle.FECHA_ULTIMO_UPDATE = DateTime.Now; detalle.CANTIDAD_INGRESADA = int.Parse(fila.ItemArray[2].ToString()); detalle.CANTIDAD_TOTAL = int.Parse(fila.ItemArray[2].ToString()); detalle.NOMBRE_PRODUCTO = fila.ItemArray[1].ToString(); detalle.PRECIO_COMPRA = Decimal.Parse(fila.ItemArray[3].ToString()); detalle.ESTADO_RECEPCION_ID = estado; detalle.MULTI_MONEDA_ID = ordenPedidoVIEW.MULTI_MONEDA_ID; detalle.PRODUCTO_ID = int.Parse(fila.ItemArray[0].ToString()); detalle.ESTADO_RECEPCION_ID = 1; detalleControl.Add(detalle); } return(controlRecepcionDAL.IgresarControlRececpion(control, detalleControl)); } else { return("Debe indicar los productos recepcionados"); } } else { return("Debe indicar el estado de conformmidad"); } } else { return("Debe indicar un empelado responsable"); } } else { return("Debe indicar un folio de orden de pedido"); } } catch (Exception ex) { throw ex; } }