/// <summary> /// Get the report summary /// </summary> /// <param name="searchCriteria"></param> /// <returns></returns> public async Task <ReportSummaryDto> GetReportBySearch(QualificationSearchDto searchCriteria) { Logger.Info("Report Search Criteria :"); var apiUrl = UrlExtension.Combine(WebApiBasePath, "/qualification/report"); return(await _apiService.PostJsonAsync <QualificationSearchDto, ReportSummaryDto>(apiUrl, searchCriteria)); }
private async Task <List <QualificationDto> > GetQualifications(QualificationSearchDto searchCriteria) { var apiUrl = UrlExtension.Combine(WebApiBasePath, "/qualification/get"); var studentQualifications = Mapper.Map <List <QualificationDto> >(await _apiService.PostJsonAsync <QualificationSearchDto, List <Qualification> >(apiUrl, searchCriteria)); return(studentQualifications ?? new List <QualificationDto>()); }
public async Task <ActionResult> GetPendingQualifications() { QualificationSearchDto search = new QualificationSearchDto { StudentId = base.LoggedInUserId, Status = new QualificationStatus?[] { QualificationStatus.Pending } }; var pendingQuaifications = Mapper.Map <IEnumerable <QualificationViewModel> >(await this._studentQualificationService.GetQualificationsByStudent(search)); return(PartialView("_PendingQualificationView", pendingQuaifications)); }
public async Task <ActionResult> StudentRejectedQualification(long id) { var vmStudent = new StudentViewModel(); QualificationSearchDto searchCriteria = new QualificationSearchDto { StudentId = id }; if (User.IsInRole(UserRole.FacultyStaff.ToString())) { searchCriteria.FacultyCode = new string[] { base.LoggedInUserFacultyCode }; } searchCriteria.Status = new QualificationStatus?[] { QualificationStatus.Rejected }; vmStudent.StudentId = id; vmStudent.RejectedQualifications = Mapper.Map <List <QualificationViewModel> >(await this._studentQualificationService.GetQualificationsByStudent(searchCriteria)); return(PartialView("_Rejected", vmStudent)); }
public async Task <ActionResult> StudentQualification(long id) { var vmStudent = new StudentViewModel(); if (id > 0) { ///Get user profile by studentId var profile = await _userService.GetUserProfile(id); if (profile != null) { vmStudent.StudentId = id; vmStudent.StudentName = profile.FullName; vmStudent.CourseCode = profile.CourseCode; vmStudent.CourseTitle = profile.CourseTitle; vmStudent.Mode = profile.Mode; vmStudent.QualificationAim = profile.QualAim; } //Get from CU vmStudent.ExistingQualifications = Mapper.Map <List <QualificationViewModel> >(await this._studentQualificationService.GetExistingQualificationsByStudent(vmStudent.StudentId)); QualificationSearchDto searchCriteria = new QualificationSearchDto { StudentId = id }; if (User.IsInRole(UserRole.FacultyStaff.ToString())) { searchCriteria.FacultyCode = new string[] { base.LoggedInUserFacultyCode }; } //Get searchCriteria.Status = new QualificationStatus?[] { QualificationStatus.Pending, QualificationStatus.Rejected }; var studentQualifications = Mapper.Map <List <QualificationViewModel> >(await this._studentQualificationService.GetQualificationsByStudent(searchCriteria)); vmStudent.PendingQualifications = studentQualifications.FindAll(q => q.Status == QualificationStatus.Pending); vmStudent.RejectedQualifications = studentQualifications.FindAll(q => q.Status == QualificationStatus.Rejected); } return(View(vmStudent)); }
public async Task <JsonResult> Approve(long id, long studentId) { try { //Get the record QualificationSearchDto searchCriteria = new QualificationSearchDto { StudentQualificationId = id, StudentId = base.LoggedInUserId, Status = new QualificationStatus?[] { QualificationStatus.Pending } }; if (User.IsInRole(UserRole.FacultyStaff.ToString())) { searchCriteria.FacultyCode = new string[] { base.LoggedInUserFacultyCode }; } var pendingQuaification = (await this._studentQualificationService.GetQualificationsByStudent(searchCriteria)); //upload qualification to CU & certificate if (pendingQuaification != null && pendingQuaification.Count == 1 && await this._studentQualificationService.UploadQualification(pendingQuaification[0])) { //approve var qualification = pendingQuaification[0]; qualification.ActionUserName = LoggedInUserName; if (await this._studentQualificationService.ApproveQualification(qualification) > 0) { return(Json(new { Status = true, Message = Resources.ModelValidations.Message_Qualification_Apporve_Success }, JsonRequestBehavior.AllowGet)); } } //if fail return(Json(new { Status = false, Message = Resources.ModelValidations.Message_Qualification_Apporve_Fail }, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { this.Logger.Error("Approve Qualification", ex); return(Json(new { Status = false, Message = string.Format("{0}</br>{1}", Resources.ModelValidations.Message_Qualification_Apporve_Fail, ex.Message) }, JsonRequestBehavior.AllowGet)); } }
public async Task <ActionResult> Edit(long id, long?studentId) { QualificationSearchDto searchCriteria = new QualificationSearchDto { StudentQualificationId = id, Status = new QualificationStatus?[] { QualificationStatus.Pending } }; if (User.IsInRole(UserRole.UGStudent.ToString())) { searchCriteria.StudentId = base.LoggedInUserId; } else { searchCriteria.StudentId = studentId; } //Get Record var model = Mapper.Map <QualificationViewModel>((await _studentQualificationService.GetQualificationsByStudent(searchCriteria))[0]); await PopulateDropdowns(model.QualificationTypeCode); return(PartialView("_Edit", model)); }
/// <summary> /// Get Qualifications By Search - Planner /// </summary> /// <param name="searchCriteria"></param> /// <returns></returns> public async Task <List <QualificationDto> > GetQualificationsBySearch(QualificationSearchDto searchCriteria) { Logger.Info("Search Criteria :"); return(await GetQualifications(searchCriteria)); }
/// <summary> /// GetQualifications By Faculty - staff /// </summary> /// <param name="searchCriteria"></param> /// <returns></returns> public async Task <List <QualificationDto> > GetQualificationsByFaculty(QualificationSearchDto searchCriteria) { Logger.Info("Search Criteria FacultyCode#:" + searchCriteria.FacultyCode[0]); return(await GetQualifications(searchCriteria)); }
/// <summary> /// GetQualifications By Student Id, Status /// </summary> /// <param name="searchCriteria"></param> /// <returns></returns> public async Task <List <QualificationDto> > GetQualificationsByStudent(QualificationSearchDto searchCriteria) { Logger.Info("Search Criteria StudentId#:" + searchCriteria.StudentId); return(await GetQualifications(searchCriteria)); }