public async Task <Result <EmployeeReview> > GetById(Request <long> id) { try { var searchData = _repo.GetById(id.Model); if (searchData == null) { return(new Result <EmployeeReview>("Record not found")); } var result = Mapper.Map <EmployeeReview>(searchData); var searchEmployee = new UserInfoDataRepository().GetById(result.EmployeeId); var searchSupervisor = new UserInfoDataRepository().GetById(result.SupervisorId); result.EmployeeName = searchEmployee.LastName + ", " + searchEmployee.FirstName; result.SupervisorName = searchSupervisor.LastName + ", " + searchSupervisor.FirstName; var searchAnswerItem = new AnswerItemDataRepository().Search(new SearchRequest <AnswerItemData>() { Filter = f => f.EmployeeReviewId == searchData.Id }); List <AnswerItem> data = new List <AnswerItem>(); var searchRatingList = new RatingDataRepository().Search(new SearchRequest <RatingData>() { Filter = f => f.ReviewTemplateId == result.ReviewTemplateId }); List <Rating> ratingList = new List <Rating>(); foreach (var rating in searchRatingList.Items) { ratingList.Add(Mapper.Map <Rating>(rating)); } result.RatingArray = ratingList.OrderBy(x => x.RangeFrom).ToList(); data = Mapper.Map <List <AnswerItem> >(searchAnswerItem.Items.ToList()); result.AnswerScore = data; return(new Result <EmployeeReview>() { Successful = true, Message = "Successfully retrieve records", Model = result }); } catch (Exception e) { return(new Result <EmployeeReview>(e.Message)); } }
public void CreateAnswer(string questions, long id) { try { var searchAnswerItemRes = new AnswerItemDataRepository().Search(new SearchRequest <AnswerItemData>() { Filter = f => f.EmployeeReviewId == id }); if (searchAnswerItemRes.SearchTotal > 0) { foreach (var item in searchAnswerItemRes.Items) { new AnswerItemDataRepository().Delete(item.Id); } } var data = questions.Split('|'); foreach (var question in data) { AnswerItem item = new AnswerItem() { EmployeeReviewId = id, Question = question, EmployeeRemark = null, EmployeeScore = 0, SupervisorRemark = null, SupervisorScore = 0 }; new AnswerItemDataRepository().Insert(Mapper.Map <AnswerItemData>(item)); } } catch (Exception e) { } }