public ActionResult Details(CustomerAddResponseViewModel modelCustomer) { try { CustomerAddResponseViewModel tmp = modelCustomer; if (ModelState.IsValid) { db.TicketPositions.Add(new TicketPosition { TiP_Date = DateTime.Now, TiP_LP = (from m in tmp.CustomerDetailsTickets orderby m.TiP_LP descending select m.TiP_LP).FirstOrDefault() + 1, TiP_TiHID = tmp.CustomerDetailsTickets.FirstOrDefault().TiH_ID, TiP_CUSID = User.Identity.GetUserId(), TiP_Content = tmp.NewPositionContent }); db.SaveChanges(); return(RedirectToAction("Details", new { id = tmp.CustomerDetailsTickets.FirstOrDefault().TiH_ID })); // return RedirectToAction("Details", "Tickets",modelCustomer.CustomerDetailsTickets.FirstOrDefault().TiH_ID.ToString()); } return(View("DetailsCustomers")); } catch (Exception e) { string exx = e.ToString(); return(View()); } }
public ActionResult Details(int?id) { var userid = User.Identity.GetUserId(); if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ViewBag.Id = id; ViewBag.Subject = db.TicketHeaders.Where(x => x.TiH_ID == id).FirstOrDefault().TiH_Subject; if (User.IsInRole("Customer")) { if (db.TicketHeaders.Where(x => x.TiH_ID == id).FirstOrDefault().TiH_CMPID != db.Customers.Where(y => y.Id == userid).FirstOrDefault().CuS_CMPID) //blokada przed próbą podejrzenia ze strony "innych" klientów { TempData["Error"] = "Nie masz uprawnień do przeglądania wybranego zgłoszenia."; return(RedirectToAction("List")); } var model = (from tih in db.TicketHeaders join tip in db.TicketPositions on tih.TiH_ID equals tip.TiP_TiHID join ass in db.Assistants on tip.TiP_ASSID equals ass.Id into _ass from ass in _ass.DefaultIfEmpty() join cus in db.Customers on tip.TiP_CUSID equals cus.Id into _cus from cus in _cus.DefaultIfEmpty() join tis in db.TicketStates on tih.TiH_TiSID equals tis.TiS_ID where tih.TiH_ID == id select new CustomerDetailsTicketViewModel { TiH_ID = tih.TiH_ID, TiP_LP = tip.TiP_LP, TiP_Date = tip.TiP_Date, AssOrCus = (ass.Id == null && cus.Id != null) ? 1 : (ass.Id != null && cus.Id == null) ? 2 : -1, TiP_Content = tip.TiP_Content, OperatorName = (ass.Id == null && cus.Id != null) ? cus.CuS_Name + " " + cus.CuS_Surname : (ass.Id != null && cus.Id == null) ? ass.AsS_Name + " " + ass.AsS_Surname : "Error", }).ToList(); var model2 = new CustomerAddResponseViewModel() { CustomerDetailsTickets = model }; return(View("DetailsCustomers", model2)); } else { var model = (from tih in db.TicketHeaders join tip in db.TicketPositions on tih.TiH_ID equals tip.TiP_TiHID join ass in db.Assistants on tip.TiP_ASSID equals ass.Id into _ass from ass in _ass.DefaultIfEmpty() join cus in db.Customers on tip.TiP_CUSID equals cus.Id into _cus from cus in _cus.DefaultIfEmpty() join tis in db.TicketStates on tih.TiH_TiSID equals tis.TiS_ID where tih.TiH_ID == id select new AssistantDetailsTicketViewModel { TiH_ID = tih.TiH_ID, TiP_LP = tip.TiP_LP, TiP_Date = tip.TiP_Date, AssOrCus = (ass.Id == null && cus.Id != null) ? 1 : (ass.Id != null && cus.Id == null) ? 2 : -1, TiP_Content = tip.TiP_Content, OperatorName = (ass.Id == null && cus.Id != null) ? cus.CuS_Name + " " + cus.CuS_Surname : (ass.Id != null && cus.Id == null) ? ass.AsS_Name + " " + ass.AsS_Surname : "Error", }).ToList(); var model2 = new AssistantAddResponseViewModel() { AssistantDetailsTickets = model, TicketWorkLog = new TicketWorkLog { TwL_ASSID = userid, TwL_TIHID = id, TwL_StartDate = DateTime.Now, TwL_EndDate = DateTime.Now } }; return(View("DetailsAssistants", model2)); } }