public JsonResult Buscar_Elementos(string texto, int page = 0) { texto = texto.ToLower(); EmpresaDTO empresa = (new EmpresaBL()).getEmpresa(getCurrentUser().IdEmpresa); MovimientoBL movimientoBL = new MovimientoBL(); ComprobanteBL comprobanteBL = new ComprobanteBL(); MovimientoInvBL movimientoInvBL = new MovimientoInvBL(); List<MovimientoDTO> lstMovimientos = movimientoBL.getMovimientos_EnEmpresa(empresa.IdEmpresa); List<ComprobanteDTO> lstComprobantes = comprobanteBL.getComprobantesEnEmpresa(empresa.IdEmpresa); List<MovimientoInvDTO> lstMovimientoInv = movimientoInvBL.getMovimientoInvsEnEmpresa(empresa.IdEmpresa); List<sItem> ListaS1, ListaS2, ListaS3; ListaS1 = lstMovimientos.Where(x => (x.NroOperacion.ToLower() ?? "").Contains(texto)|| (x.Monto.ToString()).Contains(texto)|| (x.NombreCategoria.ToLower() ?? "").Contains(texto)|| x.nTipoDocumento.ToLower().Contains(texto)|| (x.NumeroDocumento.ToLower() ?? "").Contains(texto)|| x.NombreEntidadR.ToLower().Contains(texto) ).Select(x => new sItem { id = x.IdMovimiento, nombre = x.NroOperacion, monto = x.Monto, idElemento = 1, elemento = "Movimiento", tipo = x.IdCuentaBancaria.ToString(), //LibroBancario simboloMoneda = x.SimboloMoneda, s1 = x.NombreCategoria, s2 = x.nTipoDocumento, s3 = x.NumeroDocumento, s4 = x.NombreEntidadR }).ToList(); ListaS2 = lstComprobantes.Where(x => (x.NroDocumento).Contains(texto)|| (x.Monto.ToString()).Contains(texto)|| x.NombreTipoDocumento.ToLower().Contains(texto)|| x.NombreEntidad.ToLower().Contains(texto) ).Select(x => new sItem { id = x.IdComprobante, nombre = x.NroDocumento, monto = x.Monto, idElemento = 2, elemento = "Comprobante", tipo = x.IdTipoComprobante.ToString(), simboloMoneda = x.SimboloMoneda, s1 = x.NombreTipoDocumento, s2 = x.NombreEntidad }).ToList(); ListaS3 = lstMovimientoInv.Where(x => (x.NroDocumento.ToLower()).Contains(texto)|| (x.Cantidad.ToString()).Contains(texto)|| x.nItem.ToLower().Contains(texto)|| x.UnidadMedida.ToLower().Contains(texto)|| x.nForma.ToLower().Contains(texto)|| x.SerieLote.ToLower().Contains(texto) ).Select(x => new sItem { id = x.IdMovimientoInv, nombre = x.NroDocumento, monto = x.Cantidad, idElemento = 3, elemento = "Movimiento Inv.", tipo = x.IdTipoMovimientoInv.ToString(), s1 = x.nItem, s2 = x.UnidadMedida, s3 = x.nForma, s4 = x.SerieLote }).ToList(); ListaS1.AddRange(ListaS2); ListaS1.AddRange(ListaS3); InfoSItem elem = new InfoSItem(); elem.total_count = ListaS1.Count(); //elem.items = ListaS1.Skip(5 * page).Take(5).ToList(); elem.items = ListaS1; return Json(new { elem }, JsonRequestBehavior.AllowGet); }
public JsonResult GetLotes_EnItem(int idItem) { MovimientoInvBL objBL = new MovimientoInvBL(); List<Select2DTO_B> lista = objBL.getLotes_PorItem_EnEmpresa(getCurrentUser().IdEmpresa, idItem); return Json(new { lista }, JsonRequestBehavior.AllowGet); }
public JsonResult GetUbicaciones_EnLote(string serieLote) { MovimientoInvBL objBL = new MovimientoInvBL(); List<UbicacionDTO> lista = objBL.getUbicacionesEnEmpresa(getCurrentUser().IdEmpresa, serieLote); return Json(new { lista }, JsonRequestBehavior.AllowGet); }
public ActionResult DeleteMovimientoInv(int id) { if (!this.currentUser()) { return RedirectToAction("Ingresar"); } if (getCurrentUser().IdRol == 4) { return RedirectToAction("MovimientoInvs", "Admin"); } MovimientoInvDTO dto; try { MovimientoInvBL objBL = new MovimientoInvBL(); dto = objBL.getMovimientoInvEnEmpresa(getCurrentUser().IdEmpresa, id); if (objBL.delete(id)) { createResponseMessage(CONSTANTES.SUCCESS, CONSTANTES.SUCCESS_DELETE); } else { createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_DELETE); } } catch (Exception e) { createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_NO_DELETE); throw; } string cadena = "Ingreso"; if (dto != null) { cadena = dto.IdTipoMovimientoInv == 1 ? "Ingreso" : "Egreso"; } return RedirectToAction("Inventarios" + cadena, "Admin"); }
public ActionResult AddMovimientoInv(MovimientoInvDTO dto) { if (!this.currentUser()) { return RedirectToAction("Ingresar"); } if (getCurrentUser().IdRol == 4) { return RedirectToAction("MovimientoInvs", "Admin"); } try { string sTipoMovimientoInv = dto.IdTipoMovimientoInv == 1 ? "Ingreso" : "Egreso"; MovimientoInvBL objBL = new MovimientoInvBL(); if (dto.IdMovimientoInv == 0) { //Verificar que el stock no sea negativo if(dto.IdTipoMovimientoInv == 2) { int sumaLote = objBL.get_Stock_De_Lote_En_Empresa(dto.IdEmpresa, dto.SerieLote) + (dto.Cantidad * -1); if (sumaLote < 0) { createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_ITEMS_LIMIT); return RedirectToAction("Inventarios" + sTipoMovimientoInv, "Admin"); } else if (objBL.add(dto)) { createResponseMessage(CONSTANTES.SUCCESS); return RedirectToAction("Inventarios" + sTipoMovimientoInv, "Admin"); } } else if (objBL.add(dto)) { createResponseMessage(CONSTANTES.SUCCESS); return RedirectToAction("Inventarios" + sTipoMovimientoInv, "Admin"); } } else if (dto.IdMovimientoInv != 0) { if (dto.IdTipoMovimientoInv == 2) { int sumaLote = objBL.get_Stock_De_Lote_En_Empresa(dto.IdEmpresa, dto.SerieLote) + (dto.Cantidad * -1); if (sumaLote < 0) { createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_ITEMS_LIMIT); return RedirectToAction("Inventarios" + sTipoMovimientoInv, "Admin"); } else if (objBL.update(dto)) { createResponseMessage(CONSTANTES.SUCCESS); return RedirectToAction("Inventarios" + sTipoMovimientoInv, "Admin"); } } else if (objBL.update(dto)) { createResponseMessage(CONSTANTES.SUCCESS); return RedirectToAction("Inventarios" + sTipoMovimientoInv, "Admin"); } else { createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_UPDATE_MESSAGE); } } else { createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_INSERT_MESSAGE); } } catch (Exception e) { if (dto.IdMovimientoInv != 0) createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_UPDATE_MESSAGE); else createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_INSERT_MESSAGE); } TempData["MovimientoInv"] = dto; return RedirectToAction("MovimientoInv"); }
public ActionResult MovimientoInv(int? id = null, int? idTipo = null) { if (!this.currentUser()) { return RedirectToAction("Ingresar"); } ViewBag.Title = "Movimiento de Inventario"; int tipo = 1; if (idTipo != null) { tipo = idTipo.GetValueOrDefault(); } MenuNavBarSelected(9, tipo - 1); UsuarioDTO user = getCurrentUser(); MovimientoInvBL objBL = new MovimientoInvBL(); ViewBag.lstTipoMovimientoInv = objBL.getTipoMovimientoInv(); ViewBag.lstFormaMovimiento = objBL.getFormaMovimientoInvPorTipo(tipo); //ViewBag.lstItems = objBL.getItemsEnEmpresa(user.IdEmpresa); ViewBag.lstItems = objBL.getItemsEnEmpresa_PorTipoMov(user.IdEmpresa, (int)idTipo); ViewBag.lstProveedores = objBL.getProveedoresEnEmpresa(user.IdEmpresa); //Lotes de salida Lista ViewBag.lstLotes = objBL.getLotesEnEmpresa(user.IdEmpresa); //Ubicaciones ViewBag.lstUbicaciones = objBL.getUbicacionesEnEmpresa(user.IdEmpresa); var objSent = TempData["MovimientoInv"]; if (objSent != null) { TempData["MovimientoInv"] = null; return View(objSent); } MovimientoInvDTO obj; if (id != null && id != 0) { obj = objBL.getMovimientoInvEnEmpresa((int)user.IdEmpresa, (int)id); if (obj == null) return RedirectToAction("MovimientoInvs"); if (obj.IdEmpresa != user.IdEmpresa) return RedirectToAction("MovimientoInvs"); obj.UsuarioCreacion = user.IdUsuario; //lstLotes.Add(new Select2DTO_B() { text = obj.SerieLote }); ViewBag.lstLotes = objBL.getLotesEnEmpresa(user.IdEmpresa, obj.IdItem, obj.SerieLote); if (idTipo.GetValueOrDefault() == 1) { ViewBag.lstUbicaciones = objBL.getUbicacionesEnEmpresa(user.IdEmpresa); } else if (idTipo.GetValueOrDefault() == 2) { ViewBag.lstUbicaciones = objBL.getUbicacionesEnEmpresa(user.IdEmpresa, obj.SerieLote); } return View(obj); } obj = new MovimientoInvDTO(); obj.IdTipoMovimientoInv = tipo; obj.IdEmpresa = user.IdEmpresa; obj.UsuarioCreacion = user.IdUsuario; obj.FechaInicial = DateTime.Now; //if (idTipo.GetValueOrDefault() == 1) { ViewBag.lstUbicaciones = objBL.getUbicacionesEnEmpresa(user.IdEmpresa); } //else if (idTipo.GetValueOrDefault() == 2) { ViewBag.lstUbicaciones = new List<Select2DTO_B>(); } return View(obj); }
public ActionResult InventariosEgreso() { if (!this.currentUser()) { return RedirectToAction("Ingresar"); } ViewBag.Title = "Inventarios de Egreso"; MenuNavBarSelected(9, 1); UsuarioDTO user = getCurrentUser(); MovimientoInvBL objBL = new MovimientoInvBL(); int tipo = 2; ViewBag.idTipoInventario = tipo; if (user.IdEmpresa > 0) { List<MovimientoInvDTO> lista = objBL.getMovimientoInvsEnEmpresaPorTipo(user.IdEmpresa, tipo); return View(lista); } return View(); }
public ActionResult Proforma(int? id) { if (!this.currentUser()) { return RedirectToAction("Ingresar", "Admin", new { Area = string.Empty }); } ViewBag.Title += "Proforma"; MenuNavBarSelected(12); UsuarioDTO user = getCurrentUser(); EntidadResponsableBL entBL = new EntidadResponsableBL(); ViewBag.lstClientes = entBL.getEntidadesResponsablesActivasPorTipoEnEmpresa(user.IdEmpresa, 1); EmpresaBL empBL = new EmpresaBL(); ViewBag.lstMonedas = empBL.getListaMonedasAll(); MovimientoInvBL movItmBL = new MovimientoInvBL(); ViewBag.lstItems = movItmBL.getItemsEnEmpresa_PorTipoMov(user.IdEmpresa, 1); CuentaBancariaBL cbBL = new CuentaBancariaBL(); ViewBag.lstCuentasBancarias = cbBL.getCuentasBancariasActivasPorTipoEnEmpresa(user.IdEmpresa, 1); ViewBag.lstContactos = new List<ContactoDTO>(); var objSent = TempData["Proforma"]; if (objSent != null) { TempData["Proforma"] = null; return View(objSent); } ProformaDTO obj; if(id != null && id > 0) { obj = new ProformaBL().getProformaId((int)id); return View(obj); } obj = new ProformaDTO(); obj.IdEmpresa = user.IdEmpresa; obj.FechaProforma = DateTime.Now; obj.DetalleProforma = new List<DetalleProformaDTO>(); return View(obj); }