public ActionResult AddItemToDeal(int planID, float suggestprice, int quantity, int dealID) { SSMEntities se = new SSMEntities(); Deal deal = se.Deals.Find(dealID); if (deal != null) { Deal_Item item = new Deal_Item(); item.planID = planID; item.dealID = dealID; item.price = suggestprice; item.Quantity = quantity; if (deal.Value == null) { deal.Value = suggestprice * quantity; } else { deal.Value = deal.Value + suggestprice * quantity; } se.Deal_Item.Add(item); se.SaveChanges(); } return(RedirectToAction("Detail", new { id = dealID })); }
public int createAndGetDealID(Deal deal, int productID, int plann) { SSMEntities se = new SSMEntities(); softwareProduct product = se.softwareProducts.Find(productID); if (product != null) { deal.ProductID = productID; } deal.Creator = User.Identity.GetUserId(); deal.StartDate = DateTime.Today; deal.Stage = 1; deal.Probability = 0; deal.CompleteOn = null; deal.LastUpdateStage = null; deal.Status = 1; deal.CurrentPlanID = product.PrePurchase_FollowUp_Plan.Where(u => u.isOperation).FirstOrDefault().id; se.Deals.Add(deal); se.SaveChanges(); Deal_Item ite = new Deal_Item(); productMarketPlan pla = se.productMarketPlans.Find(plann); ite.planID = plann; ite.price = pla.ceilPrice; ite.Quantity = 1; ite.dealID = deal.id; se.Deal_Item.Add(ite); deal.Value = ite.price; se.SaveChanges(); Deal_SaleRep_Respon dealrespont = new Deal_SaleRep_Respon(); dealrespont.dealID = deal.id; dealrespont.userID = deal.Creator; se.Deal_SaleRep_Respon.Add(dealrespont); se.SaveChanges(); contact contact = se.contacts.Find(deal.Client); int day = 0; PrePurchase_FollowUp_Plan plan = deal.softwareProduct.PrePurchase_FollowUp_Plan.Where(u => u.isOperation == true).FirstOrDefault(); if (contact != null) { foreach (Plan_Step tep in plan.Plan_Step) { if (tep.TimeFromLastStep == null) { tep.TimeFromLastStep = 0; } day = day + (int)tep.TimeFromLastStep; DealTask task = new DealTask(); task.dealID = deal.id; task.TaskDescription = tep.StepEmailContent; task.status = 1; if (tep.RequireMoreDetail) { task.status = 7; } task.Deadline = DateTime.Now.AddDays(day); task.CreateDate = DateTime.Now; task.TaskContent = tep.stepNo + ""; task.TaskName = tep.subject + " [#:" + deal.id + "]"; task.type = 8; se.DealTasks.Add(task); se.SaveChanges(); if (task.TaskDescription.Contains(se.ConfigureSys.Find(13).value)) { String replaceall = ""; foreach (Deal_Item item in task.Deal.Deal_Item) { TrialAccount trial = item.productMarketPlan.TrialAccounts.Where(u => u.contactID == null).FirstOrDefault(); replaceall = replaceall + '\n' + "User Name for " + item.productMarketPlan.Name + ": " + trial.UserName + " Password: " + trial.Password; TrialAccount trialupdate = se.TrialAccounts.Find(trial.AccountID); trialupdate.contactID = task.Deal.contact.id; se.SaveChanges(); } task.TaskDescription = task.TaskDescription.Replace(se.ConfigureSys.Find(13).value, replaceall); } se.SaveChanges(); } } return(deal.id); }