public TradesDetailViewModel GetTradeDetails(int receiver, int sender) { Offer offerRequest = db.Offer.Where(o => o.ReceiverItemId == receiver && o.SenderItemId == sender).FirstOrDefault(); if (offerRequest != null) { OfferDetail offerRequestDetails = db.OfferDetail.Where(od => od.OfferId == offerRequest.OfferId).FirstOrDefault(); ItemsDetailViewModel receiverItem = global.GetItemDetail(receiver); ItemsDetailViewModel senderItem = global.GetItemDetail(sender); if (receiverItem != null && senderItem != null && offerRequestDetails != null) { TradesDetailViewModel detailOffer = new TradesDetailViewModel(); detailOffer.OfferId = offerRequest.OfferId; detailOffer.Confirmed = offerRequestDetails.Confirmed; detailOffer.ExpirationDate = offerRequestDetails.ExpirationDate; detailOffer.ReceiverItem = receiverItem; detailOffer.SenderItem = senderItem; if (offerRequestDetails.Confirmed == 1) { Account receiverAccount = db.Account.Where(a => a.AccountId == offerRequest.ReceiverId).FirstOrDefault(); Account senderAccount = db.Account.Where(a => a.AccountId == offerRequest.AccountId).FirstOrDefault(); detailOffer.ReceiverDetails = getContactInformation(receiverAccount); detailOffer.SenderDetails = getContactInformation(senderAccount); } return(detailOffer); } } return(null); }
public ActionResult Details(int referenceA, int referenceB) { if (Session["updateMessage"] != null) { string postMessage = Session["updateMessage"].ToString(); Session.Remove("updateMessage"); ViewBag.Message = postMessage; } if (Session["errorMessage"] != null) { string postMessage = Session["errorMessage"].ToString(); Session.Remove("errorMessage"); ViewBag.ErrorMessage = postMessage; } TradesDetailViewModel tradeDetails = tradeManager.GetTradeDetails(referenceA, referenceB); if (tradeDetails != null) { return(View(tradeDetails)); } return(RedirectToAction("Index", "Trades")); //Proper error message }