public bool GuardarBD(Proveedor_Info info) { try { using (EntitiesGeneral db = new EntitiesGeneral()) { db.Proveedor.Add(new Proveedor { Tipo = info.Tipo, Codigo = info.Codigo, Nombre = info.Nombre, Ruc = info.Ruc, ConceptoCompra = info.ConceptoCompra }); //detalle if (info.ListaProveedorProductoDetalle != null) { int Secuencia = 1; foreach (var item in info.ListaProveedorProductoDetalle) { db.ProveedorProducto.Add(new ProveedorProducto { Tipo = info.Tipo, Codigo = info.Codigo, Secuencia = Secuencia++, IdProducto = item.IdProducto }); } } db.SaveChanges(); } using (EntitiesNexpirion db_nx = new EntitiesNexpirion()) { db_nx.FX_ProveedorMigrado.Add(new FX_ProveedorMigrado { Tipo = info.Tipo, Codigo = info.Codigo, Nombre = info.Nombre, Ruc = info.Ruc }); db_nx.SaveChanges(); } return(true); } catch (Exception EX) { data_log.GuardarDB(new LogError_Info { Controlador = "Proveedor_Data", Error = "Error: " + EX.ToString() + " " + string.Format("GuardarBD: {0}", JsonConvert.SerializeObject(info)), IdUsuario = "" }); return(false); } }
public bool GuardarOrdenCompraBD(Compra_Info info) { try { using (EntitiesNexpirion db = new EntitiesNexpirion()) { db.SetCommandTimeOut(3000); if (db.indocume.Where(q => q.num_recibo == info.Codigo && q.eliminado == false && q.fecha == info.Fecha).Count() > 0) { return(true); } var info_producto = data_producto.get_info_ProductoNexp(info.CodProducto.ToString().Trim()); if (info_producto == null) { return(true); } var info_proveedor_nx = data_proveedor.get_info_ProveedorNexp(info.ProvCodigo.ToString().Trim()); if (info_proveedor_nx == null) { return(true); } var info_proveedor = data_proveedor.get_info("PRV", info.ProvCodigo.ToString().Trim()); if (info_proveedor == null) { return(true); } var info_bodega = data_producto.get_info_BodegaNexp(info.CodProducto.ToString().Trim()); if (info_bodega == null) { return(true); } var nombre = info_producto.nombre.ToString().Substring(0, 59); dbultnum entity = db.dbultnum.Where(q => q.tipo == "CO").FirstOrDefault(); var num_compra = entity.numero + 1; db.indocume.Add(new indocume { tipo = "CO", numero = num_compra, pedido = 0, fecha = info.Fecha, fecha_fac = info.Fecha, fecha_com = info.Fecha, producto = info_producto.codigo, nombre = nombre, cantidad = Convert.ToDecimal(info.Cantidad), proveedor = info_proveedor_nx.codigo, concepto = info_proveedor.ConceptoCompra, plazo = 0, porc_desc = 0, factor = 0, total = Convert.ToDecimal(info.Total), costo = Convert.ToDecimal(info.Precio), fob = 0, orden = "", comentario = info.Comentario, tip_aplic = "", num_aplic = 0, tip_aplix = "", num_aplix = 0, bloqueado = false, aprobado = false, usuario = "", digitado = DateTime.Now.Date, fecha_apr = DateTime.Now.Date, cantidad_op = 0, impreso = false, eliminado = false, bodega_int = info_bodega.bodega_int, bodega_orig = "", solicita = false, aceptado = false, fecha_soli = DateTime.Now.Date, fecha_recep = DateTime.Now.Date, fecha_acep = DateTime.Now.Date, recibido = false, lote = "", num_recibo = Convert.ToDecimal(info.Codigo).ToString(), usr_agr = "", usr_cor = "", centro = "" }); db.fcmovinv.Add(new fcmovinv { tipo = "CO", numero = num_compra, numreg = 1, fecha = info.Fecha, producto = info_producto.codigo, nombre = nombre, bodega = "", fra = Convert.ToDecimal(info.Precio), peso = info_producto.peso, und = Convert.ToDecimal(info.Cantidad), cantidad = Convert.ToDecimal(info.Cantidad), stock = 0, tip_ped = "", pedido = 0, tipreg = 1, descuento = 0, precio_vta = Convert.ToDecimal(info.Precio), precio_lst = Convert.ToDecimal(info.Precio), subtotal = Convert.ToDecimal(info.Total), costo_und = Convert.ToDecimal(info.Precio), costo = Convert.ToDecimal(info.Precio), promedio = 0, tip_prec = 0, tip_produc = info_producto.tipoitm, porc_desc = 0, sucursal = "", cliente = "", vendedor = "", servicio = false, ubicacion = "", motivo = "", eliminado = false, usuario = "", digitado = DateTime.Now.Date, concepto = "", comentario = info.Comentario, bodega_int = info_bodega.bodega_int, lote = "", usr_agr = "", usr_cor = "" }); entity.numero = num_compra; db.SaveChanges(); } return(true); } catch (Exception EX) { data_log.GuardarDB(new LogError_Info { Controlador = "GenerarOrdenCompra", Error = "Error: " + EX.ToString() + " " + string.Format("Compra: {0}", JsonConvert.SerializeObject(info)), IdUsuario = info.IdUsuario }); return(false); } }
public bool ModificarBD(Proveedor_Info info) { try { using (EntitiesGeneral db = new EntitiesGeneral()) { Proveedor entity = db.Proveedor.Where(q => q.Tipo == info.Tipo && q.Codigo == info.Codigo).FirstOrDefault(); if (entity == null) { return(false); } entity.Tipo = info.Tipo; entity.Codigo = info.Codigo; entity.Ruc = info.Ruc; entity.ConceptoCompra = info.ConceptoCompra; var lst_detalle = db.ProveedorProducto.Where(q => q.Tipo == info.Tipo && q.Codigo == info.Codigo).ToList(); db.ProveedorProducto.RemoveRange(lst_detalle); if (info.ListaProveedorProductoDetalle != null) { int Secuencia = 1; foreach (var item in info.ListaProveedorProductoDetalle) { db.ProveedorProducto.Add(new ProveedorProducto { Tipo = info.Tipo, Codigo = info.Codigo, Secuencia = Secuencia++, IdProducto = item.IdProducto }); } } db.SaveChanges(); } using (EntitiesNexpirion db_nx = new EntitiesNexpirion()) { FX_ProveedorMigrado entity_nx = db_nx.FX_ProveedorMigrado.Where(q => q.Tipo == info.Tipo && q.Codigo == info.Codigo).FirstOrDefault(); if (entity_nx == null) { return(false); } entity_nx.Tipo = info.Tipo; entity_nx.Codigo = info.Codigo; entity_nx.Ruc = info.Ruc; db_nx.SaveChanges(); } return(true); } catch (Exception EX) { data_log.GuardarDB(new LogError_Info { Controlador = "Proveedor_Data", Error = "Error: " + EX.ToString() + " " + string.Format("Modificar: {0}", JsonConvert.SerializeObject(info)), IdUsuario = "" }); return(false); } }