public static RespuestaDTO FinalizarRevision(RequisicionRevisionModel model, string _tok) { List <RequisicionProdReviPutDTO> lProd = new List <RequisicionProdReviPutDTO>(); var valid = ValidarRevisionAlmacen(model, out lProd); if (valid.Exito) { RequisicionRevPutDTO dto = RequisicionRevisionDTO(model, _tok, lProd); RespuestaDTO resp = new RespuestaDTO(); return(ActualizarRequisicionRevision(dto, _tok)); } else { return(valid); } }
public ActionResult Revision(RequisicionRevisionModel model = null) { if (Session["StringToken"] == null) { return(RedirectToAction("Index", "Home")); } tkn = Session["StringToken"].ToString(); var respuesta = RequisicionServicio.FinalizarRevision(model, tkn); if (respuesta.Exito) { return(RedirectToAction("Requisiciones", new { msj = string.Concat("Revision exitosa de ", model.NumeroRequisicion) })); } else { ViewBag.Empresas = CatalogoServicio.Empresas(tkn); ViewBag.Usuarios = CatalogoServicio.ListaUsuarios(TokenServicio.ObtenerIdEmpresa(tkn), tkn); ViewBag.MensajeError = Validar(respuesta); return(RedirectToAction("RequisicionRevision", model)); } }
private static RequisicionRevPutDTO RequisicionRevisionDTO(RequisicionRevisionModel model, string _tok, List <RequisicionProdReviPutDTO> lprods) { var requRevision = new RequisicionRevPutDTO() { IdRequisicion = model.IdRequisicion, NumeroRequisicion = model.NumeroRequisicion, OpinionAlmacen = model.OpinionAlmacen, FechaRevision = DateTime.Today, ListaProductos = lprods, IdRequisicionEstatus = RequisicionEstatusEnum.Revision_exitosa }; if (TokenServicio.ObtenerEsAdministracionCentral(_tok)) { requRevision.IdUsuarioRevision = model.IdUsuarioSolicitante; } else { requRevision.IdUsuarioRevision = TokenServicio.ObtenerIdUsuario(_tok); } return(requRevision); }
private static RespuestaDTO ValidarRevisionAlmacen(RequisicionRevisionModel dto, out List <RequisicionProdReviPutDTO> lProd) { RespuestaDTO resp = new RespuestaDTO(); resp.Exito = true; resp.MensajesError = new List <string>(); List <RequisicionProdReviPutDTO> LProdPutDTO = new List <RequisicionProdReviPutDTO>(); if (!string.IsNullOrEmpty(dto.OpinionAlmacen)) { foreach (var _row in dto.Productos) { if (!_row.RevisionFisica) { resp.MensajesError.Add(Error.R0013); resp.Exito = false; break; } else { LProdPutDTO.Add(new RequisicionProdReviPutDTO { IdProducto = _row.IdProducto, Orden = _row.Orden, RevisionFisica = true, }); } } } else { resp.Exito = false; resp.MensajesError.Add(Error.R0014); } lProd = LProdPutDTO; return(resp); }