public void update(CoursesDto product_dto) { try { _transactionManager.beginTransaction(); Courses product = _productRepo.getById(product_dto.course_id); string oldImage = product.file_name; _productMaker.copy(ref product, product_dto); if (product.faculty_id != 0) { product.faculty = _facultyRepository.getById(product.faculty_id) ?? throw new ItemNotFoundException($"Faculty with the id {product.faculty_id} doesnot exist."); } _productRepo.update(product); if (!string.IsNullOrWhiteSpace(product_dto.file_name)) { if (!string.IsNullOrWhiteSpace(oldImage)) { deleteImage(oldImage); } } _transactionManager.commitTransaction(); } catch (Exception) { _transactionManager.rollbackTransaction(); throw; } }
public IHttpActionResult GetCourses() { //Get list of Course from the database List <Courses> Courses = db.Courses.Include(t => t.EmployeeApplicant).ToList(); //Data transfer model with all the information about a Courses List <CoursesDto> CoursesDtos = new List <CoursesDto> { }; //Transfering Courses to data transfer object foreach (var Course in Courses) { CoursesDto NewCourse = new CoursesDto { CourseId = Course.CourseId, CourseCode = Course.CourseCode, CourseName = Course.CourseName, StartOn = Course.StartOn, CourseDuration = Course.CourseDuration //NumApplications = Course.EmployeeApplicant.Count() }; CoursesDtos.Add(NewCourse); } return(Ok(CoursesDtos)); }
public async Task <CoursesDto> GetCoursesById(int Id) { var result = await _dbContext.Courses.Include(e => e.Videos).Include(e => e.Quiz).FirstOrDefaultAsync(e => e.Id == Id); var courses = _mapper.Map <CoursesDto>(result); //var resultCourses = _dbContext.CourseVideos.GetAll CoursesDto personViews = _mapper.Map <Courses, CoursesDto>(result); return(personViews); }
public IHttpActionResult GetAllApplications() { //List of the applications from the database List <EmployeeApplicant> EmployeeApplicants = db.EmployeeApplicant.ToList(); //Data transfer object to show information about the application List <ShowEmployeeApplicant> EmployeeApplicantDtos = new List <ShowEmployeeApplicant> { }; foreach (var EmployeeApplicant in EmployeeApplicants) { ShowEmployeeApplicant EmployeeApplication = new ShowEmployeeApplicant(); //Get the user to which the application belongs to ApplicationUser user = db.Users.Where(c => c.EmployeeApplicants.Any(m => m.EmployeeApplicantId == EmployeeApplicant.EmployeeApplicantId)).FirstOrDefault(); ApplicationUserDto parentUser = new ApplicationUserDto { Id = user.Id, FirstName = user.FirstName, LastName = user.LastName, EmployeeNumber = user.EmployeeNumber, Email = user.Email }; //Get the course of application Courses Course = db.Courses.Where(l => l.EmployeeApplicant.Any(m => m.EmployeeApplicantId == EmployeeApplicant.EmployeeApplicantId)).FirstOrDefault(); CoursesDto Courses = new CoursesDto { CourseId = Course.CourseId, CourseCode = Course.CourseCode, CourseName = Course.CourseName }; EmployeeApplicantDto NewEmployeeApplicant = new EmployeeApplicantDto { EmployeeApplicantId = EmployeeApplicant.EmployeeApplicantId, Id = EmployeeApplicant.Id, CourseId = EmployeeApplicant.CourseId }; EmployeeApplication.EmployeeApplicant = NewEmployeeApplicant; EmployeeApplication.Courses = Courses; EmployeeApplication.User = parentUser; EmployeeApplicantDtos.Add(EmployeeApplication); } return(Ok(EmployeeApplicantDtos)); }
public ActionResult GetCourses() { Courses coursesRaw = new Courses(); var temp = coursesRaw.getCourses(); CoursesDto courses = (CoursesDto)temp; //build custom sort courses.Courses.Sort((course1, course2) => course1.title.CompareTo(course2.title)); //courses.Courses.Clear(); //clear Courses for testing purpose only return(View(courses.Courses as IEnumerable <Courses>)); }
public void copy(ref Courses product, CoursesDto product_dto) { product.course_id = product_dto.course_id; product.faculty_id = product_dto.faculty_id; product.name = product_dto.name.Trim(); product.description = product_dto.description.Trim(); product.specification = product_dto.specification.Trim(); product.features = product_dto.features.Trim(); product.is_enabled = product_dto.is_enabled; if (product_dto.file_name != null) { product.file_name = product_dto.file_name; } product.slug = _slugGenerator.generate(product_dto.name); }
public IActionResult edit(long product_id) { try { ViewBag.faculty = new SelectList(_facultyRepository.getAll(), "faculty_id", "name"); var product = _productRepo.getById(product_id); CoursesDto dto = _mapper.Map <CoursesDto>(product); RouteData.Values.Remove("product_id"); return(View(dto)); } catch (Exception ex) { AlertHelper.setMessage(this, ex.Message, messageType.error); return(RedirectToAction("index")); } }
public ActionResult DeleteConfirm(int id) { string url = "CoursesData/FindCourse/" + id; HttpResponseMessage response = client.GetAsync(url).Result; //Can catch the status code (200 OK, 301 REDIRECT), etc. //Debug.WriteLine(response.StatusCode); if (response.IsSuccessStatusCode) { //Put data into Course data transfer object CoursesDto SelectedCourse = response.Content.ReadAsAsync <CoursesDto>().Result; return(View(SelectedCourse)); } else { return(RedirectToAction("Error")); } }
public IHttpActionResult GetCourseForApplication(int id) { //Find the course which is selected in the current application Courses Courses = db.Courses.Where(c => c.EmployeeApplicant.Any(p => p.EmployeeApplicantId == id)).FirstOrDefault(); //In case this user does not exist if (Courses == null) { return(NotFound()); } CoursesDto Course = new CoursesDto { CourseId = Courses.CourseId, CourseCode = Courses.CourseCode, CourseName = Courses.CourseName }; return(Ok(Courses)); }
// GET: Courses/Details/5 public ActionResult Details(int id) { //Model used to combine a course and its applications ShowCourses ModelViews = new ShowCourses(); //Get the current ParkingSpot object string url = "CoursesData/FindCourse/" + id; HttpResponseMessage response = client.GetAsync(url).Result; if (response.IsSuccessStatusCode) { CoursesDto SelectedCourse = response.Content.ReadAsAsync <CoursesDto>().Result; ModelViews.Courses = SelectedCourse; } else { return(RedirectToAction("Error")); } url = "CoursesData/GetCourseApplications/" + id; response = client.GetAsync(url).Result; if (response.IsSuccessStatusCode) { //Avoid an error when a Course does not have applications //Can catch the status code (200 OK, 301 REDIRECT), etc. //Debug.WriteLine(response.StatusCode); IEnumerable <EmployeeApplicantDto> SelectedApplications = response.Content.ReadAsAsync <IEnumerable <EmployeeApplicantDto> >().Result; ModelViews.EmployeeApplications = SelectedApplications; } else { return(RedirectToAction("Error")); } return(View(ModelViews)); }
public IActionResult add(CoursesDto product_dto, IFormFile file) { try { if (ModelState.IsValid) { if (file != null) { product_dto.file_name = _fileHelper.saveImageAndGetFileName(file, product_dto.name); } _productService.save(product_dto); AlertHelper.setMessage(this, "Courses saved successfully.", messageType.success); return(RedirectToAction("index")); } } catch (Exception ex) { AlertHelper.setMessage(this, ex.Message, messageType.error); } ViewBag.faculty = new SelectList(_facultyRepository.getAll(), "faculty_id", "name"); return(View(product_dto)); }
public IHttpActionResult FindCourse(int id) { Courses Courses = db.Courses.Find(id); //if not found, return 404 status code. if (Courses == null) { return(NotFound()); } //put into a 'friendly object format' CoursesDto CoursesDto = new CoursesDto { CourseId = Courses.CourseId, CourseCode = Courses.CourseCode, CourseName = Courses.CourseName, StartOn = Courses.StartOn, CourseDuration = Courses.CourseDuration }; //pass along data as 200 status code OK response return(Ok(CoursesDto)); }
public void save(CoursesDto product_dto) { try { _transactionManager.beginTransaction(); Courses product = new Courses(); _productMaker.copy(ref product, product_dto); if (product.faculty_id != 0) { product.faculty = _facultyRepository.getById(product.faculty_id) ?? throw new ItemNotFoundException($"Faculty with the id {product.faculty_id} doesnot exist."); } _productRepo.insert(product); _transactionManager.commitTransaction(); } catch (Exception) { _transactionManager.rollbackTransaction(); throw; } }
public IHttpActionResult GetCourses() { //Getting the list of Courses objects from the databse List <Courses> Courses = db.Courses.ToList(); //Here a data transfer model is used to keep only the information to be displayed about a course List <CoursesDto> CoursesDtos = new List <CoursesDto> { }; //Transfering course to data transfer object foreach (var Course in Courses) { CoursesDto NewCourse = new CoursesDto { CourseId = Course.CourseId, CourseCode = Course.CourseCode, CourseName = Course.CourseName }; CoursesDtos.Add(NewCourse); } return(Ok(CoursesDtos)); }
public ActionResult Details(int id) { GetApplicationCookie(); ShowEmployeeApplicant ShowEmployeeApplicant = new ShowEmployeeApplicant(); ShowEmployeeApplicant.isadmin = User.IsInRole("Admin"); //Find the Employee application from the database string url = "EmployeeApplicantsData/FindApplication/" + id; HttpResponseMessage response = client.GetAsync(url).Result; if (response.IsSuccessStatusCode) { EmployeeApplicantDto SelectedApplication = response.Content.ReadAsAsync <EmployeeApplicantDto>().Result; ShowEmployeeApplicant.EmployeeApplicant = SelectedApplication; //Associated Employee Application with User url = "EmployeeApplicantsData/GetApplicationUser/" + id; response = client.GetAsync(url).Result; ApplicationUserDto SelectedUser = response.Content.ReadAsAsync <ApplicationUserDto>().Result; ShowEmployeeApplicant.User = SelectedUser; //Associated Employee application with Course url = "EmployeeApplicantsData/GetCourseForApplication/" + id; response = client.GetAsync(url).Result; CoursesDto SelectedCourse = response.Content.ReadAsAsync <CoursesDto>().Result; ShowEmployeeApplicant.Courses = SelectedCourse; return(View(ShowEmployeeApplicant)); } else { return(RedirectToAction("Error")); } }