public ActionResult Nuevo(int IdEmpresa = 0) { #region Validar Session if (string.IsNullOrEmpty(SessionFixed.IdTransaccionSession)) { return(RedirectToAction("Login", new { Area = "", Controller = "Account" })); } SessionFixed.IdTransaccionSession = (Convert.ToDecimal(SessionFixed.IdTransaccionSession) + 1).ToString(); SessionFixed.IdTransaccionSessionActual = SessionFixed.IdTransaccionSession; #endregion in_parametro_Info i_param = bus_in_param.get_info(IdEmpresa); if (i_param == null) { return(RedirectToAction("Index")); } in_Ajuste_Info model = new in_Ajuste_Info { IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSession), IdSucursal = Convert.ToInt32(SessionFixed.IdSucursal), IdEmpresa = IdEmpresa, Fecha = DateTime.Now, IdCatalogo_Estado = i_param.IdCatalogoEstadoAjuste }; ListaDetalle.set_list(new List <in_AjusteDet_Info>(), model.IdTransaccionSession); cargar_combos(model); return(View(model)); }
public in_Ajuste_Info get_info(int IdEmpresa, int IdSucursal, decimal IdAjuste) { try { in_Ajuste_Info info = new in_Ajuste_Info(); using (Entities_inventario Context = new Entities_inventario()) { in_Ajuste Entity = Context.in_Ajuste.FirstOrDefault(q => q.IdEmpresa == IdEmpresa && q.IdSucursal == IdSucursal && q.IdAjuste == IdAjuste); if (Entity == null) { return(null); } info = new in_Ajuste_Info { IdEmpresa = Entity.IdEmpresa, IdSucursal = Entity.IdSucursal, IdAjuste = Entity.IdAjuste, IdBodega = Entity.IdBodega, IdMovi_inven_tipo_ing = Entity.IdMovi_inven_tipo_ing, IdMovi_inven_tipo_egr = Entity.IdMovi_inven_tipo_egr, IdNumMovi_ing = Entity.IdNumMovi_ing, IdNumMovi_egr = Entity.IdNumMovi_egr, IdCatalogo_Estado = Entity.IdCatalogo_Estado, Fecha = Entity.Fecha, Observacion = Entity.Observacion, Estado = Entity.Estado }; } return(info); } catch (Exception) { throw; } }
public ActionResult EditingDelete(int Secuencia) { ListaDetalle.DeleteRow(Secuencia, Convert.ToDecimal(SessionFixed.IdTransaccionSessionActual)); in_Ajuste_Info model = new in_Ajuste_Info(); model.lst_detalle = ListaDetalle.get_list(Convert.ToDecimal(SessionFixed.IdTransaccionSessionActual)); cargar_combos_detalle(); return(PartialView("_GridViewPartial_ajuste_fisico_det", model.lst_detalle)); }
public bool anularDB(in_Ajuste_Info info) { try { return(odata.anularDB(info)); } catch (Exception) { throw; } }
public bool modificarDB(in_Ajuste_Info info) { try { return(odata.modificarDB(info)); } catch (Exception) { throw; } }
private in_Ing_Egr_Inven_Info GenerarMoviInven(in_Ajuste_Info info, string Signo, int?IdMotivo_inv) { try { using (Entities_inventario db = new Entities_inventario()) { in_Ing_Egr_Inven_Info movi = new in_Ing_Egr_Inven_Info { IdEmpresa = info.IdEmpresa, cm_fecha = info.Fecha.Date, Estado = "A", signo = Signo, IdUsuario = info.IdUsuarioCreacion, IdUsuarioUltModi = info.IdUsuarioModificacion, IdMovi_inven_tipo = Convert.ToInt32(Signo == "+" ? info.IdMovi_inven_tipo_ing : info.IdMovi_inven_tipo_egr), IdNumMovi = Convert.ToInt32(Signo == "+" ? info.IdNumMovi_ing : info.IdNumMovi_egr), lst_in_Ing_Egr_Inven_det = new List <in_Ing_Egr_Inven_det_Info>(), IdSucursal = info.IdSucursal, IdBodega = info.IdBodega, cm_observacion = info.Observacion, IdMotivo_Inv = IdMotivo_inv }; int secuencia = 1; foreach (var item in info.lst_movimiento) { movi.lst_in_Ing_Egr_Inven_det.Add(new in_Ing_Egr_Inven_det_Info { IdEmpresa = movi.IdEmpresa, IdSucursal = movi.IdSucursal, IdBodega = Convert.ToInt32(movi.IdBodega), IdMovi_inven_tipo = Convert.ToInt32(Signo == "+" ? info.IdMovi_inven_tipo_ing : info.IdMovi_inven_tipo_egr), IdNumMovi = Convert.ToInt32(Signo == "+" ? info.IdNumMovi_ing : info.IdNumMovi_egr), Secuencia = secuencia++, IdProducto = item.IdProducto, dm_cantidad = item.Ajuste, dm_cantidad_sinConversion = item.Ajuste, mv_costo = item.Costo, mv_costo_sinConversion = item.Costo, dm_observacion = info.Observacion, IdUnidadMedida = item.IdUnidadMedida, IdUnidadMedida_sinConversion = item.IdUnidadMedida, }); } return(movi); } } catch (Exception) { throw; } }
private bool validar(in_Ajuste_Info i_validar, ref string msg) { if (i_validar.lst_detalle.Count == 0) { mensaje = "Debe ingresar al menos un producto"; return(false); } if (!bus_periodo.ValidarFechaTransaccion(i_validar.IdEmpresa, i_validar.Fecha, cl_enumeradores.eModulo.INV, i_validar.IdSucursal, ref msg)) { return(false); } return(true); }
public bool anularDB(in_Ajuste_Info info) { try { using (Entities_inventario Context = new Entities_inventario()) { in_Ajuste Entity = Context.in_Ajuste.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdAjuste == info.IdAjuste); if (Entity == null) { return(false); } Entity.Estado = info.Estado; Entity.MotivoAnulacion = info.MotivoAnulacion; Entity.IdUsuarioAnulacion = info.IdUsuarioAnulacion; Entity.FechaAnulacion = DateTime.Now; in_Ing_Egr_Inven Entity_Ingreso = Context.in_Ing_Egr_Inven.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdSucursal == info.IdSucursal && q.IdMovi_inven_tipo == info.IdMovi_inven_tipo_ing && q.IdNumMovi == info.IdNumMovi_ing); if (Entity_Ingreso == null) { return(false); } Entity_Ingreso.Estado = "I"; Entity_Ingreso.MotivoAnulacion = info.MotivoAnulacion; Entity_Ingreso.IdusuarioUltAnu = info.IdUsuarioAnulacion; Entity_Ingreso.Fecha_UltAnu = DateTime.Now; in_Ing_Egr_Inven Entity_Egreso = Context.in_Ing_Egr_Inven.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdSucursal == info.IdSucursal && q.IdMovi_inven_tipo == info.IdMovi_inven_tipo_egr && q.IdNumMovi == info.IdNumMovi_egr); if (Entity_Egreso == null) { return(false); } Entity_Egreso.Estado = "I"; Entity_Egreso.MotivoAnulacion = info.MotivoAnulacion; Entity_Egreso.IdusuarioUltAnu = info.IdUsuarioAnulacion; Entity_Egreso.Fecha_UltAnu = DateTime.Now; Context.SaveChanges(); } return(true); } catch (Exception) { throw; } }
public ActionResult Anular(int IdEmpresa = 0, int IdSucursal = 0, decimal IdAjuste = 0) { #region Validar Session if (string.IsNullOrEmpty(SessionFixed.IdTransaccionSession)) { return(RedirectToAction("Login", new { Area = "", Controller = "Account" })); } SessionFixed.IdTransaccionSession = (Convert.ToDecimal(SessionFixed.IdTransaccionSession) + 1).ToString(); SessionFixed.IdTransaccionSessionActual = SessionFixed.IdTransaccionSession; #endregion #region Permisos seg_Menu_x_Empresa_x_Usuario_Info info = bus_permisos.get_list_menu_accion(Convert.ToInt32(SessionFixed.IdEmpresa), SessionFixed.IdUsuario, "Inventario", "AjusteFisicoInventario", "Index"); if (!info.Anular) { return(RedirectToAction("Index")); } #endregion in_Ajuste_Info model = bus_ajuste.get_info(IdEmpresa, IdSucursal, IdAjuste); if (model == null) { return(RedirectToAction("Index")); } model.lst_detalle = bus_ajuste_det.get_list(IdEmpresa, IdAjuste); foreach (var item in model.lst_detalle) { in_Producto_Info info_producto = bus_producto.get_info(model.IdEmpresa, item.IdProducto); item.pr_descripcion = info_producto.pr_descripcion; } model.IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSession); ListaDetalle.set_list(model.lst_detalle, model.IdTransaccionSession); cargar_combos(model); #region Validacion Periodo ViewBag.MostrarBoton = true; if (!bus_periodo.ValidarFechaTransaccion(IdEmpresa, model.Fecha, cl_enumeradores.eModulo.INV, model.IdSucursal, ref mensaje)) { ViewBag.mensaje = mensaje; ViewBag.MostrarBoton = false; } #endregion return(View(model)); }
public ActionResult Anular(in_Ajuste_Info model) { model.Estado = false; model.IdUsuarioAnulacion = SessionFixed.IdUsuario; model.lst_detalle = ListaDetalle.get_list(model.IdTransaccionSession); if (!validar(model, ref mensaje)) { cargar_combos(model); ViewBag.mensaje = mensaje; return(View(model)); } if (!bus_ajuste.anularDB(model)) { cargar_combos(model); return(View(model)); } return(RedirectToAction("Index")); }
public ActionResult Modificar(in_Ajuste_Info model) { model.IdUsuarioModificacion = SessionFixed.IdUsuario; model.lst_detalle = ListaDetalle.get_list(model.IdTransaccionSession); if (!validar(model, ref mensaje)) { cargar_combos(model); ViewBag.mensaje = mensaje; return(View(model)); } if (!bus_ajuste.modificarDB(model)) { cargar_combos(model); return(View(model)); } return(RedirectToAction("Modificar", new { IdEmpresa = model.IdEmpresa, IdSucursal = model.IdSucursal, IdAjuste = model.IdAjuste, Exito = true })); }
private void cargar_combos(in_Ajuste_Info model) { var lst_estado = bus_catalogo.get_list(Convert.ToInt32(cl_enumeradores.eTipoCatalogoInventario.EST_APROB), false); ViewBag.lst_estado = lst_estado; tb_sucursal_Bus bus_sucursal = new tb_sucursal_Bus(); var lst_sucursal = bus_sucursal.GetList(model.IdEmpresa, SessionFixed.IdUsuario, false); ViewBag.lst_sucursal = lst_sucursal; tb_bodega_Bus bus_bodega = new tb_bodega_Bus(); var lst_bodega = bus_bodega.get_list(model.IdEmpresa, model.IdSucursal, false); ViewBag.lst_bodega = lst_bodega; in_UnidadMedida_Bus bus_unidad = new in_UnidadMedida_Bus(); var lst_unidad = bus_unidad.get_list(false); ViewBag.lst_unidad = lst_unidad; }
public ActionResult Nuevo(in_Ajuste_Info model) { model.lst_detalle = ListaDetalle.get_list(model.IdTransaccionSession); if (!validar(model, ref mensaje)) { SessionFixed.IdTransaccionSessionActual = model.IdTransaccionSession.ToString(); cargar_combos(model); ViewBag.mensaje = mensaje; return(View(model)); } model.IdUsuarioCreacion = SessionFixed.IdUsuario; model.Estado = true; if (!bus_ajuste.guardarDB(model)) { SessionFixed.IdTransaccionSessionActual = model.IdTransaccionSession.ToString(); cargar_combos(model); return(View(model)); } return(RedirectToAction("Consultar", new { IdEmpresa = model.IdEmpresa, IdSucursal = model.IdSucursal, IdAjuste = model.IdAjuste, Exito = true })); }
public bool modificarDB(in_Ajuste_Info info) { try { using (Entities_inventario Context = new Entities_inventario()) { int secuencia = 1; in_parametro_Info info_parametro = data_parametro.get_info(info.IdEmpresa); in_Ajuste Entity = Context.in_Ajuste.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdAjuste == info.IdAjuste); if (Entity == null) { return(false); } Entity.IdEmpresa = info.IdEmpresa; Entity.IdSucursal = info.IdSucursal; Entity.IdAjuste = info.IdAjuste; Entity.IdBodega = info.IdBodega; Entity.IdMovi_inven_tipo_ing = info.IdMovi_inven_tipo_ing; Entity.IdMovi_inven_tipo_egr = info.IdMovi_inven_tipo_egr; Entity.IdNumMovi_ing = info.IdNumMovi_ing; Entity.IdNumMovi_egr = info.IdNumMovi_egr; Entity.IdCatalogo_Estado = info.IdCatalogo_Estado; Entity.Fecha = info.Fecha; Entity.Observacion = info.Observacion; Entity.IdUsuarioModificacion = info.IdUsuarioModificacion; Entity.FechaModificacion = DateTime.Now; var detalle = Context.in_AjusteDet.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdAjuste == info.IdAjuste); Context.in_AjusteDet.RemoveRange(detalle); if (info.lst_detalle.Count() > 0) { foreach (var item in info.lst_detalle) { Context.in_AjusteDet.Add(new in_AjusteDet { IdEmpresa = info.IdEmpresa, IdAjuste = info.IdAjuste, Secuencia = item.Secuencia = secuencia, IdProducto = item.IdProducto, IdUnidadMedida = item.IdUnidadMedida, StockFisico = item.StockFisico, StockSistema = item.StockSistema, Ajuste = item.Ajuste, Costo = item.Costo }); secuencia++; } } Context.SaveChanges(); #region Movimiento Inventario Entities_inventario dbi = new Entities_inventario(); in_Ing_Egr_Inven_Data odata_i = new in_Ing_Egr_Inven_Data(); int IdMovi_inven_tipo = 0; List <in_AjusteDet_Info> lst_ingreso = info.lst_detalle.Where(q => q.Ajuste > 0).ToList(); List <in_AjusteDet_Info> lst_egreso = info.lst_detalle.Where(q => q.Ajuste < 0).ToList(); if (info_parametro == null) { return(false); } if (info.IdCatalogo_Estado == "APRO") { if (lst_ingreso.Count() > 0) { in_Ing_Egr_Inven_Info info_movi = new in_Ing_Egr_Inven_Info(); IdMovi_inven_tipo = info_parametro.IdMovi_inven_tipo_ajuste_ing ?? 0; info.lst_movimiento = lst_ingreso; info_movi = GenerarMoviInven(info, "+", info_parametro.IdMotivo_Inv_ajuste_ing); if (info_movi == null) { return(true); } if (info.IdNumMovi_ing == null && odata_i.guardarDB(info_movi, "+")) { info.IdNumMovi_ing = info_movi.IdNumMovi; Entity.IdNumMovi_ing = info.IdNumMovi_ing; Context.SaveChanges(); } } if (lst_egreso.Count() > 0) { in_Ing_Egr_Inven_Info info_movi = new in_Ing_Egr_Inven_Info(); IdMovi_inven_tipo = info_parametro.IdMovi_inven_tipo_ajuste_ing ?? 0; info.lst_movimiento = lst_egreso; info_movi = GenerarMoviInven(info, "-", info_parametro.IdMotivo_Inv_ajuste_egr); if (info_movi == null) { return(true); } if (info.IdNumMovi_egr == null && odata_i.guardarDB(info_movi, "-")) { info.IdNumMovi_egr = info_movi.IdNumMovi; Entity.IdNumMovi_egr = info.IdNumMovi_egr; Context.SaveChanges(); } } } #endregion } return(true); } catch (Exception) { throw; } }
public bool guardarDB(in_Ajuste_Info info) { try { using (Entities_inventario Context = new Entities_inventario()) { int secuencia = 1; in_parametro_Info info_parametro = data_parametro.get_info(info.IdEmpresa); in_Ajuste Entity = new in_Ajuste { IdEmpresa = info.IdEmpresa, IdSucursal = info.IdSucursal, IdAjuste = info.IdAjuste = get_id(info.IdEmpresa), IdBodega = info.IdBodega, IdMovi_inven_tipo_ing = info.IdMovi_inven_tipo_ing = info_parametro.IdMovi_inven_tipo_ajuste_ing, IdMovi_inven_tipo_egr = info.IdMovi_inven_tipo_egr = info_parametro.IdMovi_inven_tipo_ajuste_egr, IdNumMovi_ing = info.IdNumMovi_ing, IdNumMovi_egr = info.IdNumMovi_egr, IdCatalogo_Estado = info.IdCatalogo_Estado, Fecha = info.Fecha, Observacion = info.Observacion, Estado = info.Estado, IdUsuarioCreacion = info.IdUsuarioCreacion, FechaCreacion = DateTime.Now }; Context.in_Ajuste.Add(Entity); foreach (var item in info.lst_detalle) { in_AjusteDet entity_det = new in_AjusteDet { IdEmpresa = info.IdEmpresa, IdAjuste = info.IdAjuste, Secuencia = item.Secuencia = secuencia, IdProducto = item.IdProducto, IdUnidadMedida = item.IdUnidadMedida, StockFisico = item.StockFisico, StockSistema = item.StockSistema, Ajuste = item.Ajuste, Costo = item.Costo }; secuencia++; Context.in_AjusteDet.Add(entity_det); } Context.SaveChanges(); #region Movimiento Inventario Entities_inventario dbi = new Entities_inventario(); in_Ing_Egr_Inven_Data odata_i = new in_Ing_Egr_Inven_Data(); int IdMovi_inven_tipo = 0; List <in_AjusteDet_Info> lst_ingreso = info.lst_detalle.Where(q => q.Ajuste > 0).ToList(); List <in_AjusteDet_Info> lst_egreso = info.lst_detalle.Where(q => q.Ajuste < 0).ToList(); if (info_parametro == null) { return(false); } if (info.IdCatalogo_Estado == "APRO") { if (lst_ingreso.Count() > 0) { in_Ing_Egr_Inven_Info info_movi = new in_Ing_Egr_Inven_Info(); IdMovi_inven_tipo = info_parametro.IdMovi_inven_tipo_ajuste_ing ?? 0; info.lst_movimiento = lst_ingreso; info_movi = GenerarMoviInven(info, "+", info_parametro.IdMotivo_Inv_ajuste_ing); if (info_movi == null) { return(true); } if (info.IdNumMovi_ing == null && odata_i.guardarDB(info_movi, "+")) { info.IdNumMovi_ing = info_movi.IdNumMovi; Entity.IdNumMovi_ing = info.IdNumMovi_ing; Context.SaveChanges(); } } if (lst_egreso.Count() > 0) { in_Ing_Egr_Inven_Info info_movi = new in_Ing_Egr_Inven_Info(); IdMovi_inven_tipo = info_parametro.IdMovi_inven_tipo_ajuste_ing ?? 0; info.lst_movimiento = lst_egreso; info_movi = GenerarMoviInven(info, "-", info_parametro.IdMotivo_Inv_ajuste_egr); if (info_movi == null) { return(true); } if (info.IdNumMovi_egr == null && odata_i.guardarDB(info_movi, "-")) { info.IdNumMovi_egr = info_movi.IdNumMovi; Entity.IdNumMovi_egr = info.IdNumMovi_egr; Context.SaveChanges(); } } } #endregion Context.Dispose(); } return(true); } catch (Exception) { throw; } }