public async Task <IHttpActionResult> Post(InteractionHistoryViewModel model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { var stf = await _interactionHistoryService.InsertAsync(model, GetCurrentUserID()); _unitOfWorkAsync.Commit(); var resultObject = new InteractionHistoryViewModel() { Type = stf.Type, Note = stf.Note, EventCode = stf.Event.Code, CreatDate = stf.CreatDate, ID = stf.Id, }; return(Created(resultObject)); } catch (Exception ex) { throw ex; } }
public IEnumerable <InteractionHistoryViewModel> GetInteractionHistoryByCustomer(SearchViewModel model) { var findCus = _customerService.Queryable().Where(x => x.PhoneNumber == model.PhoneNumber && x.Delete == false).FirstOrDefault(); if (findCus != null) { var result = new List <InteractionHistoryViewModel>(); //result1.CustomerName = findCus.Name; //result1.CustomerPhone = findCus.PhoneNumber; var listEvent = _eventService.Queryable().Include(x => x.DetailEvents).Include(x => x.InteractionHistories).Include(x => x.ReminderNotes).Where(x => x.Customer.Id == findCus.Id).ToList(); if (listEvent.Count > 0) { foreach (var item in listEvent) { var history = Queryable().Where(x => x.Event.Id == item.Id).ToList(); if (history != null) { foreach (var itemHistory in history) { var Object1 = new InteractionHistoryViewModel(); Object1.Type = itemHistory.Type; Object1.ID = itemHistory.Id; Object1.Note = item.Note; Object1.CreatDate = itemHistory.CreatDate; Object1.EmployeeCall = itemHistory.EmployeeCall; Object1.EmployeeID = itemHistory.EmployeeID; Object1.EventCode = item.Code; Object1.Status = item.Status; Object1.EventNote = item.Note; Object1.Note = itemHistory.Note; Object1.EventPurpose = _eventPurposeService.Queryable() .Where(t => t.Delete == false && t.Id == item.EventPurposeId).FirstOrDefault().Name; Object1.EventType = _eventTypeService.Queryable() .Where(t => t.Delete == false && t.Id == item.EventTypeId).FirstOrDefault().Name; if (item.DetailEvents.Count > 0) { Object1.Serial = item.DetailEvents.FirstOrDefault().Serial; Object1.DetailEventNote = item.DetailEvents.FirstOrDefault().Note; } result.Add(Object1); } } } foreach (var item in result.ToList()) { } } else { throw new Exception("Không tìm thấy lịch sử tương tác"); } return(result); } else { throw new Exception("Không tìm thấy khách hàng"); } }
public bool Update(InteractionHistoryViewModel model) { var data = Find(model.ID); if (data != null) { data.Note = model.Note; data.LastModifiedDate = DateTime.Now; } return(true); }
public async Task <InteractionHistoryViewModel> UpdateAsync(InteractionHistoryViewModel model) { try { await Task.Run(() => Update(model)); return(model); } catch (Exception e) { throw (e); } }
public InteractionHistory Insert(InteractionHistoryViewModel model, string CurrentId) { var data = new InteractionHistory(); data.Note = model.Note; data.Event = _eventService.Find(model.EventID); data.CreatDate = DateTime.Now; data.Delete = false; data.LastModifiedDate = DateTime.Now; data.UserAccount = _userRepository.Find(CurrentId); //data.UserAccount = _userRepository.Find(HttpContext.Current.User.Identity.GetUserId()); base.Insert(data); return(data); }
public async Task <IHttpActionResult> Put(Guid key, InteractionHistoryViewModel model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { await _interactionHistoryService.UpdateAsync(model); _unitOfWorkAsync.Commit(); return(Updated(model)); } catch (Exception e) { throw e; } }
public async Task <DetailEventViewModel> UpdateAsync(DetailEventViewModel model, string CurrentId) { try { var interactionHistory = new InteractionHistoryViewModel() { Type = "", Note = "Nhân viên " + _userRepository.Find(CurrentId).UserName + " Cập nhập phiếu " + _eventService.Find(model.EventID).Code, CreatDate = DateTime.Now, LastModifiedDate = DateTime.Now, Delete = false, EventID = model.EventID }; await Task.Run(() => Update(model, CurrentId)); await Task.Run(() => _interactionHistoryService.InsertAsync(interactionHistory, CurrentId)); return(model); } catch (Exception e) { throw (e); } }
public async Task <InteractionHistory> InsertAsync(InteractionHistoryViewModel model, string CurrentId) { return(await Task.Run(() => Insert(model, CurrentId))); }