//[Autorizar(Permiso ="enviarBajaDePrecio")] public ActionResult EditRequestForm(string GUID, bool Editable, bool WaitApprobal = false) { //PERO LA PUTA MADRE REPETI EL CODIGO (LINEA 178 - Florencio Varela - Pompeya) List <PriceRequestViewModel> model = commonRepository.GetPriceRequest(GUID) .Select(c => new PriceRequestViewModel() { Account = c.Account, AccountId = c.AccountId, IdealGap = c.IdealGap, NetAsp = c.NetAsp, NetAspCondition = c.NetAspCondition, PriceGap = c.PriceGap, Product = new ProductPR(c.Product), Competitor = new ProductPR(c.Competitor) }).ToList(); PriceRequestFormViewModel newModel = new PriceRequestFormViewModel() { PriceRequests = model, Editable = Editable, GUID = GUID, WaitAprrobe = WaitApprobal }; return(View("PriceRequestForm", newModel)); }
public ActionResult FormAction(PriceRequestFormViewModel model) { int idUser = GetUsuarioLogueado(); idUser = usuarioRepository.GetUsuarioPerformance(idUser); //SEND PRICE REQUEST List <NewPriceRequestForm> FormPRList = model.PriceRequests.Select(p => new NewPriceRequestForm() { AccountId = p.AccountId, CompetitorId = p.Competitor.Id, CompInventory = p.Competitor.Inventory, CompPhoto = p.Competitor.Photo, CompPrice = p.Competitor.Price, EOLComp = p.Competitor.EOL, ProductId = p.Product.Id, SelfInventory = p.Product.Inventory, SelfPhoto = p.Product.Photo, SelfPrice = p.Product.Price, IdealGap = p.IdealGap, UBP = p.Product.Price, UBPProposal = p.Product.UBPProposal, PriceGap = (((p.Product.UBPProposal / p.Competitor.Price) * 100M) - 100M), NetAsp = p.NetAsp, NetAspCondition = p.NetAspCondition, EOLSelf = p.Product.EOL, ASPVariancePercent = p.AspVariancePercent, ASPVariancePrice = p.AspVariancePrice, CompSellIn = p.Competitor.SellIn, CompSellOut = p.Competitor.SellOut, SelfSellIn = p.Product.SellIn, SelfSellOut = p.Product.SellOut }).ToList(); string nGUID = commonRepository.SendNewPriceRequest(FormPRList, GetClienteSeleccionado(), idUser); if (nGUID != string.Empty) { UpdatePriceRequestStatus(nGUID, 1, Resources.PriceRequest.InitialStatus); } return(PriceRequestFormSended(nGUID)); }
public ActionResult CreateRequestForm(ProductGapDetailViewModel model) { List <CompetitorGapViewModel> CompetitorAccounts = model.Competitors.Where(c => c.Accounts.Any(a => a.Request)).ToList(); int productID = model.ProductId; //Diccionario donde la clave es el competidor y el string son las cuentas separadas por punto y coma Dictionary <int, string> selectedCompetitors = CompetitorAccounts .Select(c => new { c.ProductId, accounts = c.Accounts .Where(a => a.Request) .Select(a => a.Account.Id.ToString()) .Aggregate((cur, acc) => cur + ";" + acc) }) .ToDictionary(c => c.ProductId, c => c.accounts); List <PriceRequestViewModel> ListPR = commonRepository.GetPriceRequest(GetClienteSeleccionado(), productID, selectedCompetitors) .Select(p => new PriceRequestViewModel() { Account = p.Account, AccountId = p.AccountId, Competitor = new ProductPR(p.Competitor), Product = new ProductPR(p.Product), IdealGap = p.IdealGap, NetAsp = 0, NetAspCondition = 0, PriceGap = p.PriceGap }).ToList(); PriceRequestFormViewModel modelOut = new PriceRequestFormViewModel() { Editable = true, GUID = "", PriceRequests = ListPR, WaitAprrobe = false }; return(View("PriceRequestForm", modelOut)); }