public PriceObject GetTicketAmount(int TicketCategoryID, string TicketCategoryName, int NoOfPersons, string CouponValue, string eventName) { var rtv = new PriceObject(); var ticketId = repoEventCategory.GetNonAsync(o => o.Itbid == TicketCategoryID && o.CategoryName == TicketCategoryName); if (ticketId != null) { if (!string.IsNullOrEmpty(CouponValue)) { var setUp = repoCouponSetUp.GetNonAsync(null); if (setUp.CouponType == "P") { rtv.OrigAmount = FormattedAmount(Convert.ToDecimal(ticketId.Amount * NoOfPersons)); rtv.Amount = FormattedAmount((Convert.ToDecimal(CouponValue) / 100) * Convert.ToDecimal(ticketId.Amount * NoOfPersons)); rtv.nErrorCode = 0; return(rtv); } else { rtv.OrigAmount = FormattedAmount(Convert.ToDecimal(ticketId.Amount * NoOfPersons)); rtv.Amount = FormattedAmount(Convert.ToDecimal(ticketId.Amount * NoOfPersons) - Convert.ToDecimal(CouponValue)); rtv.nErrorCode = 0; return(rtv); } } else { //rtv.OrigAmount = FormattedAmount(Convert.ToDecimal(ticketId.Amount * NoOfPersons)); //rtv.Amount = FormattedAmount(Convert.ToDecimal(ticketId.Amount * NoOfPersons) - Convert.ToDecimal(CouponValue)); //rtv.nErrorCode = 0; if (eventName == "Mask and Mysteries") { if (TicketCategoryName == "VIP single") { if (NoOfPersons == 2) { rtv.Amount = FormattedAmount(Convert.ToDecimal(ticketId.Amount * NoOfPersons * 0.8M)); //rtv.discountPercentage = Convert.ToDecimal(0.8); rtv.nErrorCode = 0; return(rtv); } else { rtv.Amount = FormattedAmount(Convert.ToDecimal(ticketId.Amount * NoOfPersons)); rtv.nErrorCode = 0; return(rtv); } } else { rtv.Amount = FormattedAmount(Convert.ToDecimal(ticketId.Amount * NoOfPersons)); rtv.nErrorCode = 0; return(rtv); } } else { rtv.Amount = FormattedAmount(Convert.ToDecimal(ticketId.Amount * NoOfPersons)); rtv.nErrorCode = 0; return(rtv); } //if(ticketId.ExtraCharges != null) //{ // rtv.Amount = FormattedAmount(Convert.ToDecimal((ticketId.Amount + ticketId.ExtraCharges) * NoOfPersons)); // rtv.nErrorCode = 1; //} //else //{ // rtv.Amount = FormattedAmount(Convert.ToDecimal(ticketId.Amount * NoOfPersons)); // rtv.nErrorCode = 1; //} //return rtv; } } return(rtv); }