public void ModificarUnaOrden(OrdenCompra OC) { miDAO.ModificarOrden(OC); Control.ControlProductos CP = new ControlProductos(); CP.ModificarStocksdeProductosdeUnaOrden(OC); }
private void Guardar() { try { Sesion sesion = (Sesion)Session["Sesion" + Session.SessionID]; OrdenCompra ordCompra = new OrdenCompra(); ordCompra.Id_Emp = sesion.Id_Emp; ordCompra.Id_Cd = sesion.Id_Cd_Ver; ordCompra.Id_Ord = 0; ordCompra.Id_Pvd = txtProveedor.Text == "" ? 0 : Convert.ToInt32(txtProveedor.Text); ordCompra.Id_U = sesion.Id_U; //cuando se da de alta por el usuario el estatus siempre es M = Manual ordCompra.Ord_Estatus = "C"; CapaDatos.Funciones funciones = new CapaDatos.Funciones(); DateTime fechaServidor = funciones.GetLocalDateTime(sesion.Minutos); ordCompra.Ord_Fecha = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, fechaServidor.Hour, fechaServidor.Minute, fechaServidor.Second); ordCompra.Ord_Tipo = 2; //1 = Manual, 2 = Automática ordCompra.Ord_Notas = "Orden generada automáticamente"; List <OrdenCompraDet> listaPartidaTemp = new List <OrdenCompraDet>(); OrdenCompraDet ordenCompraDet; foreach (DataRow row in this.listaPartidas.Select("ordenado > 0")) { ordenCompraDet = new OrdenCompraDet(); ordenCompraDet.Id_Emp = sesion.Id_Emp; ordenCompraDet.Id_Cd = sesion.Id_Cd_Ver; ordenCompraDet.Id_Ord = 0; //se debe volver asignar cuando se guarda la orden de compra, cuando actualiza queda igual ordenCompraDet.Id_OrdDet = 0; //identity ordenCompraDet.Id_Prd = Convert.ToInt32(row["Id_Prd"]); ordenCompraDet.Ord_Cantidad = Convert.ToInt32(row["ordenado"]); ordenCompraDet.Ord_CantidadGen = 0; listaPartidaTemp.Add(ordenCompraDet); } // Create the query. IEnumerable <OrdenCompraDet> sortedStudents = from Partida in listaPartidaTemp orderby Partida.Id_Prd ascending select Partida; List <OrdenCompraDet> listaPartida = new List <OrdenCompraDet>(); foreach (OrdenCompraDet Partida2 in sortedStudents) { listaPartida.Add(Partida2); } //Genera la orden de compra solo si la lista trae 1 o mas partidas if (listaPartida.Count > 0) { ordCompra.ListOrdenCompra = listaPartida; int verificador = 0; new CN_CapOrdenCompra().InsertarOrdenCompra(ref ordCompra, sesion.Emp_Cnx, ref verificador); Alerta("Se genero la orden de compra #" + verificador.ToString()); //actualiza grid por si hubo redondeo de partidas por multiplos this.GetList(); rgOrdenCompra.Rebind(); } else { this.DisplayMensajeAlerta("ProOrdenCompraAuto_insert_NoPartidas"); } txtId_PrdInicial_TextChanged(null, null); txtId_PrdFinal_TextChanged(null, null); } catch (Exception) { throw; } }
public void Create(OrdenCompra entity) { this.ordenRepo.Create(entity); }
public void Update(OrdenCompra entity) { this.ordenRepo.Update(entity); }
public void Update(OrdenCompra entity) { throw new NotImplementedException(); }
public int registrarOrdenCompra(OrdenCompra p, BindingList <DetalleOrdenCompra> detalles) { return(accesoDatos.registrarOrdenCompra(p, detalles)); }
public ActionResult EnterWarehouse(OrdenCompra ordenCompra) { var errors = ModelState.Values.SelectMany(v => v.Errors); OrdenCompra OrdenCompraOriginal = db.Ordenes.Find(ordenCompra.ordenCompraId); DateTime timeUtc = DateTime.UtcNow; TimeZoneInfo cstZone = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time"); DateTime cstTime = TimeZoneInfo.ConvertTimeFromUtc(timeUtc, cstZone); var estadoIngresoTotal = db.EstadoOrdenes.Where(p => p.nombre == "Ingreso Total").SingleOrDefault(); var estadoIngresoParcial = db.EstadoOrdenes.Where(p => p.nombre == "Ingreso Parcial").SingleOrDefault(); var estadoDetalleIngresoTotal = db.EstadoOrdenDetalles.Where(p => p.nombre == "Atendido Total").SingleOrDefault(); var estadoDetalleIngresoParcial = db.EstadoOrdenDetalles.Where(p => p.nombre == "Atendido Parcial").SingleOrDefault(); //1. Registra Estado Orden Ingreso Total //2. Registra Estado Orden Detalles Ingreso Total //3. Registra Estado Orden Ingreso Parcial //4. Registra Estado Orden Detalles Ingreso Parcial //5. Registra Ingreso documento //6. Actualiza Inventario en Almacén //Revisa detalles // Tabla Ingreso var ingreso = new Ingreso(); var ingresosDetalle = new List <IngresoDetalle>(); var cantidadDetallesAtendidos = 0; //3 Atendido Total cantidadDetallesAtendidos = OrdenCompraOriginal.OrdenesCompraDetalles.Where(p => p.estadoOrdenDetalleId == 3).Count(); // Actualiza estado de Requerimientos OrdenCompraOriginal.estadoOrdenId = estadoIngresoTotal.estadoOrdenId; foreach (var item in ordenCompra.OrdenesCompraDetalles) { foreach (var item2 in OrdenCompraOriginal.OrdenesCompraDetalles) { if (item.ordenCompradetalleId == item2.ordenCompradetalleId) { var cantidadIngresados = 0; cantidadIngresados = item2.IngresoDetalles.Sum(survey => survey.cantidad); if ((item.cantidad + cantidadIngresados) == item2.cantidad) { item2.estadoOrdenDetalleId = estadoDetalleIngresoTotal.estadoOrdenDetalleId; } else { item2.estadoOrdenDetalleId = estadoDetalleIngresoParcial.estadoOrdenDetalleId; OrdenCompraOriginal.estadoOrdenId = estadoIngresoParcial.estadoOrdenId; } var ingresoDetalle = new IngresoDetalle(); ingresoDetalle.Ingreso = ingreso; ingresoDetalle.cantidad = int.Parse(item.cantidad.ToString()); ingresoDetalle.ordenCompradetalleId = item.ordenCompradetalleId; ingresoDetalle.avance = 0; ingresosDetalle.Add(ingresoDetalle); var materialNivelStock = new MaterialNivelStock(); materialNivelStock.almacenId = OrdenCompraOriginal.Obra.Almacenes[0].almacenId; materialNivelStock.cantidad = materialNivelStock.cantidad + int.Parse(item.cantidad.ToString()); materialNivelStock.materialId = item2.materialId; materialNivelStock.fechaStock = cstTime; db.MaterialNivelStock.Add(materialNivelStock); } } } ingreso.IngresoDetalles = ingresosDetalle; //var ordenes = db.Ordenes.Where(p => estadoList.Contains(p.EstadoOrden.nombre)) if (ordenCompra.OrdenesCompraDetalles.Count + cantidadDetallesAtendidos != OrdenCompraOriginal.OrdenesCompraDetalles.Count) { OrdenCompraOriginal.estadoOrdenId = estadoIngresoParcial.estadoOrdenId; } // Fin Actualiza estado Requerimientos //Actualiza datos en Orden de Compra OrdenCompraOriginal.usuarioModificacion = User.Identity.Name; OrdenCompraOriginal.fechaModificacion = cstTime; var ordenCompraEstado = new OrdenCompraEstadoOrden(); ordenCompraEstado.OrdenCompra = OrdenCompraOriginal; ordenCompraEstado.ordenCompraId = ordenCompra.ordenCompraId; ordenCompraEstado.estadoOrdenId = OrdenCompraOriginal.estadoOrdenId; ordenCompraEstado.usuarioCreacion = User.Identity.Name; ordenCompraEstado.fechaCreacion = cstTime; //ordenCompraEstado.comentario = ordenCompra.comentario; ingreso.numeroGuia = "guia"; ingreso.OrdenCompra = OrdenCompraOriginal; ingreso.ordenCompraId = OrdenCompraOriginal.ordenCompraId; ingreso.usuarioCreacion = User.Identity.Name; ingreso.fecha = cstTime; ingreso.fechaCreacion = cstTime; ingreso.fechaModificacion = cstTime; ingreso.usuarioModificacion = User.Identity.Name; db.OrdenCompraEstadoOrden.Add(ordenCompraEstado); db.Ingresos.Add(ingreso); try { db.SaveChanges(); } catch (DbEntityValidationException ex) { StringBuilder sb = new StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation\n", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } throw new DbEntityValidationException( "Entity Validation Failed - errors follow:\n" + sb.ToString(), ex ); } return(RedirectToAction("IndexApprove3")); }
public static Response ProcesarOrdenCompra(OrdenCompra obj) { try { var comando = new SqlCommand(); _conexion = AccesoDatos.Validar_Conexion("SisAsepba", ref _mensaje); if (_conexion == null) { // mensaje = "Error al encontrar la conexion proporcionada"; return(new Response { IsSuccess = false, Message = "Error al encontrar la conexion proporcionada" }); } else { AccesoDatos.Conectar(_conexion, ref _mensaje); comando.Connection = _conexion; comando.CommandText = SpConexion; comando.Parameters.AddWithValue("@@Accion", obj.Accion); comando.Parameters.AddWithValue("@@IdOrdenCompra", obj.IdOrdenCompra); comando.Parameters.AddWithValue("@@IdSocio", obj.IdSocio); comando.Parameters.AddWithValue("@@IdProveedor", obj.IdProveedor); comando.Parameters.AddWithValue("@@FechaEmision", obj.FechaEmision); comando.Parameters.AddWithValue("@@Descripcion", obj.Descripcion); comando.Parameters.AddWithValue("@@MontoTotal", obj.MontoTotal); comando.Parameters.AddWithValue("@@NumeroFacturaProforma", obj.NumeroFacturaProforma); comando.Parameters.AddWithValue("@@UsuarioCreacion", obj.UsuarioCreacion); comando.Parameters.AddWithValue("@@FechaCreacion", obj.FechaCreacion); comando.Parameters.AddWithValue("@@UsuarioModificacion", obj.UsuarioModificacion); comando.Parameters.AddWithValue("@@FechaModificacion", obj.FechaModificacion); var resultado = AccesoDatos.LlenarDataTable(comando, ref _mensaje); //return string.IsNullOrEmpty(mensaje) ? Convert.ToBoolean(resultado.Rows[0][0] ) : false; if (resultado == null || resultado.Rows.Count < 0) { return(new Response { IsSuccess = false, Message = "Error a la hora de realizar la consulta" }); } return(new Response { IsSuccess = true, Result = resultado.Rows[0][0] }); } } catch (Exception ex) { _mensaje = ex.Message; return(new Response { IsSuccess = false, Message = "Error a la hora de realizar la consulta, detalle del error: " + ex.Message }); } finally { AccesoDatos.Desconectar(_conexion, ref _mensaje); } }
private void llenaEntrada(Document documento, string folio) { object[] ejecutado = OrdenCompra.ordenDatos(folio); DataSet data = new DataSet(); if (Convert.ToBoolean(ejecutado[0])) { data = (DataSet)ejecutado[1]; } else { data = null; } iTextSharp.text.Font fuente1 = new iTextSharp.text.Font(iTextSharp.text.Font.FontFamily.HELVETICA, 8, iTextSharp.text.Font.NORMAL, BaseColor.BLACK); iTextSharp.text.Font fuente2 = new iTextSharp.text.Font(iTextSharp.text.Font.FontFamily.HELVETICA, 9, iTextSharp.text.Font.NORMAL, BaseColor.BLACK); iTextSharp.text.Font fuente3 = new iTextSharp.text.Font(iTextSharp.text.Font.FontFamily.HELVETICA, 10, iTextSharp.text.Font.BOLD, BaseColor.BLACK); iTextSharp.text.Font fuente4 = new iTextSharp.text.Font(iTextSharp.text.Font.FontFamily.HELVETICA, 12, iTextSharp.text.Font.BOLD, BaseColor.BLACK); PdfPTable tablaEntDet = new PdfPTable(3); tablaEntDet.WidthPercentage = 60f; PdfPCell producto = new PdfPCell(); PdfPCell productoCantidad = new PdfPCell(); PdfPCell productoCostoUnit = new PdfPCell(); PdfPCell productoImporte = new PdfPCell(); PdfPCell categoria = new PdfPCell(); PdfPCell totales = new PdfPCell(); int idCategoria = -1, contador = 0; string categoriaDesc = "", categoriaDescNew = ""; decimal monto = 0, total = 0; foreach (DataRow row in data.Tables[0].Rows) { if (idCategoria == 0) { categoriaDesc = "Sin Categoria"; } else { categoriaDesc = row[5].ToString(); } if (categoriaDesc == "" || categoriaDesc != categoriaDescNew) { categoriaDescNew = row[5].ToString(); try { idCategoria = Convert.ToInt32(row[4]); } catch (Exception) { idCategoria = 0; } categoria = new PdfPCell(new Phrase(categoriaDesc.ToUpper(), fuente4)); categoria.Colspan = 3; categoria.Padding = 6; categoria.BorderWidth = 0; categoria.HorizontalAlignment = 1; categoria.VerticalAlignment = 1; tablaEntDet.AddCell(categoria); contador++; } producto = new PdfPCell(new Phrase(row[0].ToString() + " " + row[7].ToString(), fuente3)); producto.Colspan = 3; producto.Padding = 3; producto.BorderWidth = 0; producto.HorizontalAlignment = 0; producto.VerticalAlignment = 1; tablaEntDet.AddCell(producto); productoCantidad = new PdfPCell(new Phrase(row[1].ToString() + " (" + row[6].ToString() + ")", fuente1)); productoCantidad.BorderWidth = 0; productoCantidad.Padding = 3; productoCantidad.HorizontalAlignment = 1; productoCantidad.VerticalAlignment = 1; tablaEntDet.AddCell(productoCantidad); productoCostoUnit = new PdfPCell(new Phrase("$ " + row[2].ToString(), fuente1)); productoCostoUnit.BorderWidth = 0; productoCostoUnit.Padding = 3; productoCostoUnit.HorizontalAlignment = 2; productoCostoUnit.VerticalAlignment = 1; tablaEntDet.AddCell(productoCostoUnit); productoImporte = new PdfPCell(new Phrase("$ " + row[3].ToString(), fuente2)); productoImporte.BorderWidth = 0; productoImporte.Padding = 3; productoImporte.HorizontalAlignment = 2; productoImporte.VerticalAlignment = 1; tablaEntDet.AddCell(productoImporte); try { monto = Convert.ToDecimal(row[3].ToString()); } catch (Exception) { monto = 0; } total += monto; } for (int filas = 0; filas < 2; filas++) { totales = new PdfPCell(new Phrase(" ", fuente4)); totales.Colspan = 3; totales.Padding = 3; totales.BorderWidth = 0; totales.HorizontalAlignment = 1; totales.VerticalAlignment = 1; tablaEntDet.AddCell(totales); } totales = new PdfPCell(new Phrase("COSTO DE COMPRAS DE CONTADO:", fuente4)); totales.Colspan = 3; totales.Padding = 3; totales.BorderWidth = 0; totales.HorizontalAlignment = 1; totales.VerticalAlignment = 1; tablaEntDet.AddCell(totales); totales = new PdfPCell(new Phrase("", fuente4)); totales.Colspan = 3; totales.Padding = 3; totales.BorderWidth = 0; totales.HorizontalAlignment = 1; totales.VerticalAlignment = 1; tablaEntDet.AddCell(totales); totales = new PdfPCell(new Phrase("$ " + total.ToString("F2"), fuente4)); totales.Colspan = 3; totales.Padding = 3; totales.BorderWidth = 0; totales.HorizontalAlignment = 1; totales.VerticalAlignment = 1; tablaEntDet.AddCell(totales); documento.Add(tablaEntDet); }
public ActionResult <OrdenCompra> Create(OrdenCompra articulo) { _ordenService.Create(articulo); return(CreatedAtRoute("GetOrden", new { id = articulo.Id.ToString() }, articulo)); }
private void OrdenCompra_CrearEnviaXML(int Id_Emp, int Id_Cd, int Id_Ord, DateTime fechaOrden, string Ord_EstatusStr) { try { Sesion sesion = (Sesion)Session["Sesion" + Session.SessionID]; //Consulta encabezado de la orden de compra OrdenCompra ordCompra = new OrdenCompra(); ordCompra.Id_Emp = Id_Emp; ordCompra.Id_Cd = Id_Cd; ordCompra.Id_Ord = Id_Ord; new CN_CapOrdenCompra().ConsultaOrdenCompra(ref ordCompra, sesion.Emp_Cnx); //Consulta detalle de la orden de compra List <OrdenCompraDet> listaOrdCompraDet = new List <OrdenCompraDet>(); OrdenCompraDet ordenCompraDet = new OrdenCompraDet(); ordenCompraDet.Id_Emp = Id_Emp; ordenCompraDet.Id_Cd = Id_Cd; ordenCompraDet.Id_Ord = Id_Ord; new CN_CapOrdenCompraDet().ConsultaOrdenCompraDetalle_Lista(ordenCompraDet, sesion.Emp_Cnx, ref listaOrdCompraDet); //Consulta centro de distribución CentroDistribucion Cd = new CentroDistribucion(); new CN_CatCentroDistribucion().ConsultarCentroDistribucion(ref Cd, ordCompra.Id_Cd, ordCompra.Id_Emp, sesion.Emp_Cnx); StringBuilder XML_Enviar = new StringBuilder(); XML_Enviar.Append("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>"); XML_Enviar.Append("<OrdenCompra"); XML_Enviar.Append(" fecha=\"\""); XML_Enviar.Append(" ocnumsian=\"\""); XML_Enviar.Append(" oczonnumsian=\"\" >"); XML_Enviar.Append(" <Encabezado"); XML_Enviar.Append(" ocnumsian=\"\""); XML_Enviar.Append(" oczonnumsian=\"\""); XML_Enviar.Append(" octransian=\"\""); XML_Enviar.Append(" ocinvsian=\"\""); XML_Enviar.Append(" octotalsian=\"\""); XML_Enviar.Append(" oczoncpsian=\"\""); XML_Enviar.Append(" oczonlnum=\"\""); XML_Enviar.Append(" oczonedo=\"\""); XML_Enviar.Append(" oczoncd=\"\""); XML_Enviar.Append(" oczoncolsian=\"\""); XML_Enviar.Append(" oczoncallesian=\"\""); XML_Enviar.Append(" ocusunommacola=\"\""); XML_Enviar.Append(" ocusunummacola=\"\""); XML_Enviar.Append(" ocfechamacola=\"\""); XML_Enviar.Append(" ocfechasian=\"\""); XML_Enviar.Append(" ocusunomsian=\"\""); XML_Enviar.Append(" ocusunumsian=\"\""); XML_Enviar.Append(" oczondescsian=\"\"/>"); XML_Enviar.Append("<Detalle>"); var importe = 0.0; //PARTIDA DETALLE if (listaOrdCompraDet.Count() > 0) { foreach (OrdenCompraDet ocd in listaOrdCompraDet) { importe = Math.Round(ocd.Ord_Cantidad * ocd.ProductoPrecio.Prd_Pesos, 2); XML_Enviar.Append(" <Partida"); XML_Enviar.Append(" ocnumsian=\"" + ocd.Id_Ord + "\""); XML_Enviar.Append(" oczonnumsian=\"" + ocd.Id_Cd + "\""); XML_Enviar.Append(" ocimportesian=\"" + importe + "\""); XML_Enviar.Append(" occantidadsian=\"" + ocd.Ord_Cantidad + "\""); XML_Enviar.Append(" ocprocostosian=\"" + ocd.ProductoPrecio.Prd_Pesos + "\""); XML_Enviar.Append(" ocprounidadsian=\"" + ocd.Producto.Prd_UniNe + "\""); XML_Enviar.Append(" ocpropresensian=\"" + ocd.Producto.Prd_Presentacion + "\""); XML_Enviar.Append(" ocprodescsian=\"" + ocd.Producto.Prd_Descripcion.ToString().Replace("\"", "").Replace("'", "").Replace("&", "") + "\""); XML_Enviar.Append(" ocpronumsian=\"" + ocd.Id_Prd + "\""); XML_Enviar.Append(" />"); } } XML_Enviar.Append(" </Detalle>"); XML_Enviar.Append(" </OrdenCompra>"); XmlDocument xml = new XmlDocument(); xml.LoadXml(XML_Enviar.ToString()); XmlNode OrdenCompra = xml.SelectSingleNode("OrdenCompra"); OrdenCompra.Attributes["fecha"].Value = string.Format("{0:s}", ordCompra.Ord_Fecha); OrdenCompra.Attributes["ocnumsian"].Value = ordCompra.Id_Ord.ToString(); OrdenCompra.Attributes["oczonnumsian"].Value = ordCompra.Id_Cd.ToString(); XmlNode Cabecera = OrdenCompra.SelectSingleNode("Encabezado"); Cabecera.Attributes["ocnumsian"].Value = ordCompra.Id_Ord.ToString(); Cabecera.Attributes["oczonnumsian"].Value = Cd.Id_Cd.ToString(); Cabecera.Attributes["octransian"].Value = Cd.Cd_NumMacola != null?Cd.Cd_NumMacola.ToString() : Cd.Id_Cd.ToString(); Cabecera.Attributes["ocinvsian"].Value = ordCompra.Id_Ord.ToString(); Cabecera.Attributes["octotalsian"].Value = "0"; Cabecera.Attributes["oczoncpsian"].Value = Cd.Cd_CP.ToString(); Cabecera.Attributes["oczonlnum"].Value = Cd.Cd_Numero.ToString(); Cabecera.Attributes["oczonedo"].Value = Cd.Cd_Descripcion; Cabecera.Attributes["oczoncd"].Value = Cd.Cd_Descripcion.ToString(); Cabecera.Attributes["oczoncolsian"].Value = Cd.Cd_Colonia.ToString(); Cabecera.Attributes["oczoncallesian"].Value = Cd.Cd_Calle.ToString(); Cabecera.Attributes["ocusunommacola"].Value = "100"; Cabecera.Attributes["ocusunummacola"].Value = "0"; Cabecera.Attributes["ocfechamacola"].Value = string.Format("{0:s}", ordCompra.Ord_Fecha);; Cabecera.Attributes["ocfechasian"].Value = string.Format("{0:s}", ordCompra.Ord_Fecha);; Cabecera.Attributes["ocusunomsian"].Value = Cd.Cd_Descripcion.ToString(); Cabecera.Attributes["ocusunumsian"].Value = ordCompra.Id_Pvd.ToString(); Cabecera.Attributes["oczondescsian"].Value = Cd.Cd_Descripcion.ToString(); StringWriter sw = new StringWriter(); XmlTextWriter tx = new XmlTextWriter(sw); xml.WriteTo(tx); string xmlString = sw.ToString(); //throw new Exception(sw.ToString()); XmlDocument xmlOrdenCompra = new XmlDocument(); OrdendeCompra.Service1 sianEnvioOrdendeCompra = new OrdendeCompra.Service1(); object sianEnvioOrdendeCompraResult = sianEnvioOrdendeCompra.OrdenCompra(xmlString); // xmlOrdenCompra.LoadXml(sianEnvioOrdendeCompraResult.ToString()); int verificador = 0; ordCompra.Id_Emp = Id_Emp; ordCompra.Id_Cd = Id_Cd; ordCompra.Id_Ord = Id_Ord; ordCompra.Ord_Estatus = "I"; new CN_CapOrdenCompra().ModificarOrdenCompra_Estatus(ordCompra, sesion.Emp_Cnx, ref verificador); try { ordCompra.Ord_EstatusEmision = Convert.ToInt32(sianEnvioOrdendeCompraResult); } catch (FormatException e) { ordCompra.Ord_EstatusEmision = 5; } ordCompra.Ord_EstatusEmisionStr = getEstatusEmision(ordCompra.Ord_EstatusEmision); new CN_CapOrdenCompra().ModificarOrdenCompra_EstatusEmision(ordCompra, sesion.Emp_Cnx, ref verificador); Alerta(getEstatusEmision(ordCompra.Ord_EstatusEmision)); if (ordCompra.Ord_EstatusEmision == 1) { this.OrdenCompra_Impresion(Id_Emp, Id_Cd, Id_Ord, fechaOrden, Ord_EstatusStr); } // RAM1.ResponseScripts.Add("Alert('" + sianEnvioOrdendeCompraResult.ToString() + "')"); } catch (Exception ex) { this.EnviaEmail(ex.ToString()); throw ex; } }
private List <string> OrdenCompra_CrearURL_EnvioInternet(int Id_Emp, int Id_Cd, int Id_Ord) { try { Sesion sesion = (Sesion)Session["Sesion" + Session.SessionID]; //Consulta encabezado de la orden de compra OrdenCompra ordCompra = new OrdenCompra(); ordCompra.Id_Emp = Id_Emp; ordCompra.Id_Cd = Id_Cd; ordCompra.Id_Ord = Id_Ord; new CN_CapOrdenCompra().ConsultaOrdenCompra(ref ordCompra, sesion.Emp_Cnx); //Consulta detalle de la orden de compra List <OrdenCompraDet> listaOrdCompraDet = new List <OrdenCompraDet>(); OrdenCompraDet ordenCompraDet = new OrdenCompraDet(); ordenCompraDet.Id_Emp = Id_Emp; ordenCompraDet.Id_Cd = Id_Cd; ordenCompraDet.Id_Ord = Id_Ord; new CN_CapOrdenCompraDet().ConsultaOrdenCompraDetalle_Lista(ordenCompraDet, sesion.Emp_Cnx, ref listaOrdCompraDet); //Consulta centro de distribución CentroDistribucion Cd = new CentroDistribucion(); new CN_CatCentroDistribucion().ConsultarCentroDistribucion(ref Cd, ordCompra.Id_Cd, ordCompra.Id_Emp, sesion.Emp_Cnx); //construir URL List <string> arregloURL = new List <string>(); System.Text.StringBuilder URL = new System.Text.StringBuilder(); foreach (OrdenCompraDet ordComDet in listaOrdCompraDet) { URL.Clear(); URL.Append(string.Concat("http://148.244.244.141/oc/SubeDetalleOC.asp?oczonnumsian=", Cd.Id_Cd.ToString())); URL.Append(string.Concat("&ocnumsian=", ordCompra.Id_Ord.ToString())); URL.Append(string.Concat("&ocpronumsian=", ordComDet.Producto.Id_Prd)); URL.Append(string.Concat("&ocprodescsian=", ordComDet.Producto.Prd_Descripcion)); URL.Append(string.Concat("&ocpropresensian=", ordComDet.Producto.Prd_Presentacion)); URL.Append(string.Concat("&ocprounidadsian=", ordComDet.Producto.Prd_UniNe)); URL.Append(string.Concat("&ocprocostosian=", ordComDet.ProductoPrecio.Prd_Pesos.ToString())); URL.Append(string.Concat("&ocantidadsian=", ordComDet.Ord_Cantidad.ToString())); URL.Append(string.Concat("&ocimportesian=", (ordComDet.Ord_Cantidad * ordComDet.ProductoPrecio.Prd_Pesos).ToString())); arregloURL.Add(URL.ToString()); } //Crear URL de datos de encabezado URL.Clear(); URL.Append(string.Concat("http://148.244.244.141/oc/SubeFinalSuc.asp?oczonnumsian=", Cd.Id_Cd.ToString())); URL.Append(string.Concat("&oczondescsian=", Cd.Cd_Descripcion)); URL.Append(string.Concat("&ocnumsian=", ordCompra.Id_Ord.ToString())); URL.Append(string.Concat("&ocusunumsian=", Cd.Cd_NumMacola != null ? Cd.Cd_NumMacola.ToString() : "0")); //"27868" URL.Append(string.Concat("&ocusunomsian=", Cd.Cd_Descripcion)); URL.Append(string.Concat("&oczoncallesian=", Cd.Cd_Calle)); URL.Append(string.Concat("&oczoncolsian=", Cd.Cd_Colonia)); URL.Append(string.Concat("&oczoncd=", Cd.Cd_Ciudad)); URL.Append(string.Concat("&oczonedo=", Cd.Cd_Estado)); URL.Append(string.Concat("&oczonlnum=", Cd.Cd_Numero)); URL.Append(string.Concat("&oczoncpsian=", Cd.Cd_CP)); URL.Append(string.Concat("&octotalsian=0")); URL.Append(string.Concat("&ocinvsian=0")); URL.Append(string.Concat("&octransian=0")); arregloURL.Add(URL.ToString()); return(arregloURL); } catch (Exception ex) { throw ex; } }
public ActionResult ShopCheckoutStep4(int id = 0) { OrdenCompra orden = db.OrdenCompra.Find(id); return(View(orden)); }
private void PrepararDatos(ref OrdenCompra ordenCompra) { var operacionDocumentos = OperacionDocumentoBL.Instancia.GetByOperacion(ordenCompra.IdOperacion); var tiposDocumentos = ItemTablaBL.Instancia.GetByTabla((int)TipoTabla.TipoComprobante); var documentos = new List <Comun>(); foreach (var documento in operacionDocumentos) { var tipoDocumento = tiposDocumentos.FirstOrDefault(p => p.IdItemTabla == documento.TipoDocumento); documentos.Add(new Comun { Id = documento.TipoDocumento, Nombre = tipoDocumento.Valor }); } var sucursales = SucursalBL.Instancia.GetAutorizadas(IdEmpresa, UsuarioActual.IdEmpleado); var direcciones = new List <Comun>(); foreach (var sucursal in sucursales) { var ubigeo = UbigeoBL.Instancia.Single(sucursal.IdUbigeo); direcciones.Add(new Comun { Id = sucursal.IdSucursal, Nombre = string.Format("{0} - {1}, {2}", sucursal.Nombre, sucursal.Direccion, ubigeo.Direccion) }); } if (ordenCompra.IdTransaccion == 0) { var transaccionImpuesto = new List <TransaccionImpuesto>(); var operacionImpuestos = OperacionImpuestoBL.Instancia.GetByOperacion(ordenCompra.IdOperacion); foreach (var operacionImpuesto in operacionImpuestos) { transaccionImpuesto.Add(new TransaccionImpuesto { IdImpuesto = operacionImpuesto.IdImpuesto, Secuencia = operacionImpuesto.Orden, Tasa = operacionImpuesto.Impuesto.Monto, NombreImpuesto = operacionImpuesto.Impuesto.Nombre, EsEditable = Convert.ToBoolean(operacionImpuesto.Impuesto.EsEditable) }); } ordenCompra.TransaccionImpuesto = transaccionImpuesto.OrderBy(p => p.Secuencia).ToList(); } else { ordenCompra.TransaccionImpuesto = TransaccionImpuestoBL.Instancia.GetByTransaccion(ordenCompra.IdTransaccion); } ordenCompra.TiposCompra = new List <Comun>(); ordenCompra.TiposCompra.Add(new Comun { Id = 0, Nombre = "--Seleccionar--" }); ordenCompra.TiposCompra.Add(new Comun { Id = 1, Nombre = "Local" }); ordenCompra.TiposCompra.Add(new Comun { Id = 2, Nombre = "Extranjera" }); ordenCompra.Documentos = documentos; ordenCompra.Direcciones = direcciones; ordenCompra.Monedas = MonedaBL.Instancia.GetAll(); ordenCompra.CondicionesPago = ItemTablaBL.Instancia.ItemTablaToList((int)TipoTabla.CondicionPago); ordenCompra.Almacenes = AlmacenBL.Instancia.GetByIdSucursal(IdSucursal); }
public JsonResult Modificar(OrdenCompra ordenCompra) { var jsonResponse = new JsonResponse(); if (ModelState.IsValid) { try { var ordenCompraOriginal = OrdenCompraBL.Instancia.Single(ordenCompra.IdTransaccion); ordenCompraOriginal.IdPersona = ordenCompra.IdPersona; ordenCompraOriginal.IdAlmacen = ordenCompra.IdAlmacen; ordenCompraOriginal.FechaEntrega = ordenCompra.FechaEntrega; ordenCompraOriginal.Glosa = ordenCompra.Glosa; ordenCompraOriginal.IdEmpleado = UsuarioActual.IdEmpleado; ordenCompraOriginal.UsuarioCreacion = UsuarioActual.IdEmpleado; ordenCompraOriginal.UsuarioModificacion = UsuarioActual.IdEmpleado; ordenCompraOriginal.MovimientoProducto = new List <MovimientoProducto>(); ordenCompraOriginal.TransaccionImpuesto = new List <TransaccionImpuesto>(); var secuencia = 0; foreach (var movimientoProducto in DetalleOrdenCompra) { movimientoProducto.Secuencia = ++secuencia; movimientoProducto.FechaRegistro = ordenCompra.FechaDocumento; movimientoProducto.IdAlmacen = ordenCompra.IdAlmacen; movimientoProducto.Estado = (int)TipoEstadoTransaccion.Registrado; movimientoProducto.FechaCreacion = FechaCreacion; movimientoProducto.FechaModificacion = FechaModificacion; movimientoProducto.UsuarioCreacion = UsuarioActual.IdEmpleado; movimientoProducto.UsuarioModificacion = UsuarioActual.IdEmpleado; ordenCompraOriginal.MovimientoProducto.Add(movimientoProducto); } foreach (var impuesto in ordenCompra.TransaccionImpuesto) { impuesto.FechaCreacion = FechaCreacion; impuesto.FechaModificacion = FechaModificacion; impuesto.UsuarioCreacion = UsuarioActual.IdEmpleado; impuesto.UsuarioModificacion = UsuarioActual.IdEmpleado; ordenCompraOriginal.TransaccionImpuesto.Add(impuesto); } var impuestoTotal = ordenCompra.TransaccionImpuesto.FirstOrDefault(p => p.IdImpuesto == (int)TipoImpuesto.Total); if (impuestoTotal != null) { ordenCompraOriginal.MontoNeto = impuestoTotal.Valor; } OrdenCompraBL.Instancia.Actualizar(ordenCompraOriginal); jsonResponse.Success = true; jsonResponse.Message = "Se Proceso con exito."; } catch (Exception ex) { jsonResponse.Message = ex.Message; } } else { jsonResponse.Message = "Por favor ingrese todos los campos requeridos"; } return(Json(jsonResponse, JsonRequestBehavior.AllowGet)); }