public bool GuardarDB(fa_CambioProducto_Info info) { try { Entities_facturacion db = new Entities_facturacion(); #region Cambio producto db.fa_CambioProducto.Add(new fa_CambioProducto { IdEmpresa = info.IdEmpresa, IdSucursal = info.IdSucursal, IdBodega = info.IdBodega, IdCambio = info.IdCambio = GetId(info.IdEmpresa, info.IdSucursal, info.IdBodega), Fecha = info.Fecha.Date, Observacion = info.Observacion, Estado = true, IdUsuario = info.IdUsuario, FechaTransac = DateTime.Now }); int secuencia = 1; foreach (var item in info.LstDet) { db.fa_CambioProductoDet.Add(new fa_CambioProductoDet { IdEmpresa = info.IdEmpresa, IdSucursal = info.IdSucursal, IdBodega = info.IdBodega, IdCambio = info.IdCambio, Secuencia = secuencia++, IdCbteVta = item.IdCbteVta, SecuenciaFact = item.SecuenciaFact, IdProductoFact = item.IdProductoFact, IdProductoCambio = item.IdProductoCambio, CantidadCambio = item.CantidadCambio, CantidadFact = item.CantidadFact }); } db.SaveChanges(); #endregion #region Egreso y devoluciones if (info.GenerarDevolucion) { Entities_inventario dbi = new Entities_inventario(); in_Ing_Egr_Inven_Data odata_i = new in_Ing_Egr_Inven_Data(); var parametro = dbi.in_parametro.Where(q => q.IdEmpresa == info.IdEmpresa).FirstOrDefault(); if (parametro == null) { return(true); } info.IdMovi_inven_tipo = parametro.IdMovi_inven_tipo_Cambio; var movi = GenerarMoviInven(info); if (movi == null) { return(true); } if (info.IdNumMovi == null && odata_i.guardarDB(movi, "-")) { info.IdNumMovi = movi.IdNumMovi; var Entity = db.fa_CambioProducto.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdSucursal == info.IdSucursal && q.IdBodega == info.IdBodega && q.IdCambio == info.IdCambio).FirstOrDefault(); if (Entity == null) { return(true); } Entity.IdMovi_inven_tipo = info.IdMovi_inven_tipo; Entity.IdNumMovi = info.IdNumMovi; db.SaveChanges(); GenerarDevoluciones(info); } else { GenerarDevoluciones(info); } } db.Dispose(); #endregion return(true); } catch (Exception) { throw; } }
public bool ModificarDB(pro_Fabricacion_Info info) { try { using (Entities_produccion Context = new Entities_produccion()) { #region Cab&Det pro_Fabricacion Entity = Context.pro_Fabricacion.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdFabricacion == info.IdFabricacion).FirstOrDefault(); if (Entity == null) { return(false); } Entity.egr_IdSucursal = info.egr_IdSucursal; Entity.ing_IdSucursal = info.ing_IdSucursal; Entity.egr_IdBodega = info.egr_IdBodega; Entity.egr_IdMovi_inven_tipo = info.egr_IdMovi_inven_tipo; Entity.egr_IdNumMovi = info.egr_IdNumMovi; Entity.Fecha = info.Fecha; Entity.ing_IdBodega = info.ing_IdBodega; Entity.ing_IdMovi_inven_tipo = info.ing_IdMovi_inven_tipo; Entity.Observacion = info.Observacion; Entity.ing_IdNumMovi = info.ing_IdNumMovi; Entity.IdUsuarioModificacion = info.IdUsuarioModificacion; Entity.FechaModificacion = DateTime.Now; var detalle = Context.pro_FabricacionDet.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdFabricacion == info.IdFabricacion); Context.pro_FabricacionDet.RemoveRange(detalle); if (info.LstDet.Count() > 0) { foreach (var item in info.LstDet) { Context.pro_FabricacionDet.Add(new pro_FabricacionDet { IdEmpresa = info.IdEmpresa, IdFabricacion = info.IdFabricacion, IdProducto = item.IdProducto, Cantidad = item.Cantidad, Costo = item.Costo, RealizaMovimiento = item.RealizaMovimiento, Secuencia = item.Secuencia, Signo = item.Signo, IdUnidadMedida = item.IdUnidadMedida }); } } #endregion #region MOV if (info.Cerrar) { Entities_inventario dbi = new Entities_inventario(); in_Ing_Egr_Inven_Data odata_i = new in_Ing_Egr_Inven_Data(); var parametro = dbi.in_parametro.Where(q => q.IdEmpresa == info.IdEmpresa).FirstOrDefault(); if (parametro == null) { return(true); } #region EGR info.egr_IdMovi_inven_tipo = parametro.IdMovi_inven_tipo_elaboracion_egr; var movi_egr = GenerarMoviInven(info, "-"); if (movi_egr == null) { return(true); } if (info.egr_IdNumMovi == null && odata_i.guardarDB(movi_egr, "-")) { info.egr_IdNumMovi = movi_egr.IdNumMovi; Entity.egr_IdMovi_inven_tipo = info.egr_IdMovi_inven_tipo; Entity.egr_IdNumMovi = info.egr_IdNumMovi; Context.SaveChanges(); } #endregion #region ING info.ing_IdMovi_inven_tipo = parametro.IdMovi_inven_tipo_elaboracion_ing; var movi_ing = GenerarMoviInven(info, "+"); if (movi_ing == null) { return(true); } if (info.ing_IdNumMovi == null && odata_i.guardarDB(movi_ing, "+")) { info.ing_IdNumMovi = movi_ing.IdNumMovi; Entity.ing_IdMovi_inven_tipo = info.ing_IdMovi_inven_tipo; Entity.ing_IdNumMovi = info.ing_IdNumMovi; Context.SaveChanges(); } #endregion } #endregion Context.SaveChanges(); } return(true); } catch (Exception) { throw; } }
public bool GuardarDB(pro_Fabricacion_Info info) { try { using (Entities_produccion Context = new Entities_produccion()) { #region FAB #region CAB Context.pro_Fabricacion.Add(new pro_Fabricacion { IdEmpresa = info.IdEmpresa, IdFabricacion = info.IdFabricacion = GetId(info.IdEmpresa), egr_IdSucursal = info.egr_IdSucursal, ing_IdSucursal = info.ing_IdSucursal, Estado = true, egr_IdBodega = info.egr_IdBodega, egr_IdMovi_inven_tipo = info.egr_IdMovi_inven_tipo, egr_IdNumMovi = info.egr_IdNumMovi, Fecha = info.Fecha, ing_IdBodega = info.ing_IdBodega, ing_IdMovi_inven_tipo = info.ing_IdMovi_inven_tipo, Observacion = info.Observacion, ing_IdNumMovi = info.ing_IdNumMovi, IdUsuarioCreacion = info.IdUsuarioCreacion, FechaCreacion = DateTime.Now }); #endregion #region DET if (info.LstDet.Count() > 0) { foreach (var item in info.LstDet) { Context.pro_FabricacionDet.Add(new pro_FabricacionDet { IdEmpresa = info.IdEmpresa, IdFabricacion = info.IdFabricacion, IdProducto = item.IdProducto, Cantidad = item.Cantidad, Costo = item.Costo, RealizaMovimiento = item.RealizaMovimiento, Secuencia = item.Secuencia, Signo = item.Signo, IdUnidadMedida = item.IdUnidadMedida }); } } Context.SaveChanges(); #endregion #endregion #region MOV if (info.Cerrar) { Entities_inventario dbi = new Entities_inventario(); in_Ing_Egr_Inven_Data odata_i = new in_Ing_Egr_Inven_Data(); var parametro = dbi.in_parametro.Where(q => q.IdEmpresa == info.IdEmpresa).FirstOrDefault(); if (parametro == null) { return(true); } #region EGR info.egr_IdMovi_inven_tipo = parametro.IdMovi_inven_tipo_elaboracion_egr; var movi_egr = GenerarMoviInven(info, "-", parametro.IdMotivo_Inv_elaboracion_egr); if (movi_egr == null) { return(true); } if (info.egr_IdNumMovi == null && odata_i.guardarDB(movi_egr, "-")) { info.egr_IdNumMovi = movi_egr.IdNumMovi; var Entity = Context.pro_Fabricacion.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdFabricacion == info.IdFabricacion).FirstOrDefault(); if (Entity == null) { return(true); } Entity.egr_IdMovi_inven_tipo = info.egr_IdMovi_inven_tipo; Entity.egr_IdNumMovi = info.egr_IdNumMovi; Context.SaveChanges(); } #endregion #region ING info.ing_IdMovi_inven_tipo = parametro.IdMovi_inven_tipo_elaboracion_ing; var movi_ing = GenerarMoviInven(info, "+", parametro.IdMotivo_Inv_elaboracion_ing); if (movi_ing == null) { return(true); } if (info.ing_IdNumMovi == null && odata_i.guardarDB(movi_ing, "+")) { info.ing_IdNumMovi = movi_ing.IdNumMovi; var Entity = Context.pro_Fabricacion.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdFabricacion == info.IdFabricacion).FirstOrDefault(); if (Entity == null) { return(true); } Entity.ing_IdMovi_inven_tipo = info.ing_IdMovi_inven_tipo; Entity.ing_IdNumMovi = info.ing_IdNumMovi; Context.SaveChanges(); } #endregion } Context.Dispose(); #endregion } return(true); } catch (Exception) { throw; } }