public void UpdateEnquiry(EnquiryUpdateInputDto input) { //string[] values = input.UpdateStatusName.Split('(').Select(sValue => sValue).ToArray(); var Status = (from r in _milestoneRepository.GetAll() where r.MileStoneName == input.UpdateStatusName select r).FirstOrDefault(); var inquiry = (from r in _inquiryRepository.GetAll() where r.Id == input.Id select r).FirstOrDefault(); var inquirys = inquiry.MapTo <Inquiry>(); inquirys.MileStoneId = Status.Id; inquirys.StatusId = input.StageId; if (input.UpdateStatusName == "Assigned") { inquirys.OpportunitySourceId = 1; } _inquiryRepository.UpdateAsync(inquirys); if (Status.ResetActivity == true) { var enquiryDetail = _enquiryDetailRepository.GetAll().Where(p => p.InquiryId == input.Id).FirstOrDefault(); var enqdetail = enquiryDetail.MapTo <EnquiryDetail>(); enqdetail.LastActivity = null; _enquiryDetailRepository.UpdateAsync(enqdetail); } }
public void CreateActivityDefault(EnquiryUpdateInputDto input) { EnqActCreate actinput = new EnqActCreate() { EnquiryId = input.Id, PreviousStatus = input.CurrentStatusName, CurrentStatus = input.UpdateStatusName, ActivityId = 7, Title = "Status Update", Message = "Ticket Status Updated Successfully" }; var Activity = actinput.MapTo <AcitivityTrack>(); _acitivityTrackRepository.InsertAsync(Activity); }
public int createORupdateInquiry(EnquiryUpdateInputDto input) { int id = 0; var enquiryDetail = _enquiryDetailRepository.GetAll().Where(p => p.InquiryId == input.Id).FirstOrDefault(); var title = (from c in _EnquiryStatusRepository.GetAll() join d in _StageDetailRepository.GetAll() on c.Id equals d.StageId where d.MileStones.MileStoneName == input.UpdateStatusName select c).ToArray(); if (input.UpdateStatusName == "Lead" && enquiryDetail.DepartmentId == null) { if (enquiryDetail.CompanyId > 0) { var comp = _NewCompanyRepository.GetAll().Where(p => p.Id == enquiryDetail.CompanyId).FirstOrDefault(); if (comp.AccountManagerId > 0) { long AccountManagerId = (long)comp.AccountManagerId; var teamDetail = _teamDetailRepository.GetAll().Where(p => p.SalesmanId == AccountManagerId).FirstOrDefault(); var teams = _teamDetailRepository.GetAll().Where(p => p.SalesmanId == AccountManagerId).Select(p => p.Team).FirstOrDefault(); if (teamDetail != null && teams != null) { var enqdetail = enquiryDetail.MapTo <EnquiryDetail>(); enqdetail.TeamId = teamDetail.TeamId; enqdetail.DepartmentId = teams.DepartmentId; _enquiryDetailRepository.UpdateAsync(enqdetail); UpdateEnquiry(input); } else { var team = _teamsRepository.GetAll().Where(p => p.SalesManagerId == AccountManagerId).FirstOrDefault(); if (team != null) { var enqdetail = enquiryDetail.MapTo <EnquiryDetail>(); enqdetail.TeamId = team.Id; enqdetail.DepartmentId = team.DepartmentId; _enquiryDetailRepository.UpdateAsync(enqdetail); UpdateEnquiry(input); } } } else { id = 1; } } } else if (title.Count() > 1 && input.UpdateStatusName != "Assigned") { id = 2; } else if (title.Count() > 0 && input.UpdateStatusName == "Assigned") { if (input.StageId > 0) { } else { input.StageId = title[0].Id; } UpdateEnquiry(input); } else { UpdateEnquiry(input); } return(id); }