public ActionResult <GradelevelViewModel> UpdateGradelevel(GradelevelViewModel gradelevel) { GradelevelViewModel gradelevelUpdate = new GradelevelViewModel(); try { if (gradelevel.tblGradelevel.SchoolId > 0) { gradelevelUpdate = _gradelevelService.UpdateGradelevel(gradelevel); } else { gradelevelUpdate._token = gradelevel._token; gradelevelUpdate._tenantName = gradelevel._tenantName; gradelevelUpdate._failure = true; gradelevelUpdate._message = "Please enter valid scholl id"; } } catch (Exception es) { gradelevelUpdate._failure = true; gradelevelUpdate._message = es.Message; } return(gradelevelUpdate); }
/// <summary> /// Get Grade Level by id /// </summary> /// <param name="gradelevel"></param> /// <returns></returns> public GradelevelViewModel ViewGradelevel(GradelevelViewModel gradelevel) { GradelevelViewModel gradelevelModel = new GradelevelViewModel(); try { var Gradelevel = this.context?.Gradelevels.FirstOrDefault(x => x.TenantId == gradelevel.tblGradelevel.TenantId && x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.GradeId == gradelevel.tblGradelevel.GradeId); if (Gradelevel != null) { gradelevelModel.tblGradelevel = Gradelevel; gradelevelModel._failure = false; } else { gradelevelModel._failure = true; gradelevelModel._message = NORECORDFOUND; } } catch (Exception es) { gradelevelModel._failure = true; gradelevelModel._message = es.Message; } return(gradelevelModel); }
/// <summary> /// Grade Level Add /// </summary> /// <param name="gradelevel"></param> /// <returns></returns> public GradelevelViewModel AddGradelevel(GradelevelViewModel gradelevel) { try { var checkGradelevelTitle = this.context?.Gradelevels.Where(x => x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.TenantId == gradelevel.tblGradelevel.TenantId && x.Title.ToLower() == gradelevel.tblGradelevel.Title.ToLower()).FirstOrDefault(); if (checkGradelevelTitle != null) { gradelevel._failure = true; gradelevel._message = "Gradelevel Title Already Exists"; } else { int?GradeLevelId = Utility.GetMaxPK(this.context, new Func <Gradelevels, int>(x => x.GradeId)); gradelevel.tblGradelevel.GradeId = (int)GradeLevelId; this.context?.Gradelevels.Add(gradelevel.tblGradelevel); this.context?.SaveChanges(); gradelevel._failure = false; gradelevel._message = "Gradelevel Added Successsfully"; } } catch (Exception es) { gradelevel._failure = true; gradelevel._message = es.Message; } return(gradelevel); }
/// <summary> /// Delete grade Level /// </summary> /// <param name="gradelevel"></param> /// <returns></returns> public GradelevelViewModel DeleteGradelevel(GradelevelViewModel gradelevel) { try { var LinkedGradeLevels = this.context?.Gradelevels.Where(x => x.TenantId == gradelevel.tblGradelevel.TenantId && x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.NextGradeId == gradelevel.tblGradelevel.GradeId).ToList(); if (LinkedGradeLevels.Count > 0) { gradelevel.tblGradelevel = null; gradelevel._failure = true; gradelevel._message = "GradeLevel cannot be deleted because it has its association"; } else { var GradeLevel = this.context?.Gradelevels.FirstOrDefault(x => x.TenantId == gradelevel.tblGradelevel.TenantId && x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.GradeId == gradelevel.tblGradelevel.GradeId); this.context?.Gradelevels.Remove(GradeLevel); this.context?.SaveChanges(); gradelevel._failure = false; gradelevel._message = "Gradelevel Deleted Successsfully"; } } catch (Exception es) { gradelevel._failure = true; gradelevel._message = es.Message; } return(gradelevel); }
/// <summary> /// Update Grade Level /// </summary> /// <param name="gradelevel"></param> /// <returns></returns> public GradelevelViewModel UpdateGradelevel(GradelevelViewModel gradelevel) { GradelevelViewModel gradelevelUpdate = new GradelevelViewModel(); try { var GradeLevel = this.context?.Gradelevels.FirstOrDefault(x => x.TenantId == gradelevel.tblGradelevel.TenantId && x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.GradeId == gradelevel.tblGradelevel.GradeId); GradeLevel.Title = gradelevel.tblGradelevel.Title; GradeLevel.LastUpdated = DateTime.UtcNow; GradeLevel.NextGradeId = gradelevel.tblGradelevel.NextGradeId; GradeLevel.ShortName = gradelevel.tblGradelevel.ShortName; GradeLevel.SortOrder = gradelevel.tblGradelevel.SortOrder; GradeLevel.UpdatedBy = gradelevel.tblGradelevel.UpdatedBy; GradeLevel.IscedGradeLevel = gradelevel.tblGradelevel.IscedGradeLevel; /* GradeLevel.AgeRange = gradelevel.tblGradelevel.AgeRange; * GradeLevel.EducationalStage = gradelevel.tblGradelevel.EducationalStage; * GradeLevel.GradeLevelEquivalency = gradelevel.tblGradelevel.GradeLevelEquivalency;*/ this.context?.SaveChanges(); gradelevel._failure = false; gradelevel._message = "Entity Updated"; } catch (Exception es) { gradelevel._failure = true; gradelevel._message = es.Message; } return(gradelevel); }
/// <summary> /// Grade Level Add /// </summary> /// <param name="gradelevel"></param> /// <returns></returns> public GradelevelViewModel AddGradelevel(GradelevelViewModel gradelevel) { try { int?GradeLevelId = Utility.GetMaxPK(this.context, new Func <Gradelevels, int>(x => x.GradeId)); gradelevel.tblGradelevel.GradeId = (int)GradeLevelId; this.context?.Gradelevels.Add(gradelevel.tblGradelevel); this.context?.SaveChanges(); gradelevel._failure = false; } catch (Exception es) { gradelevel._failure = true; gradelevel._message = es.Message; } return(gradelevel); }
/// <summary> /// View Grade Level by id /// </summary> /// <param name="gradelevel"></param> /// <returns></returns> public GradelevelViewModel ViewGradelevel(GradelevelViewModel gradelevel) { GradelevelViewModel gradelevelViewModel = new GradelevelViewModel(); try { if (TokenManager.CheckToken(gradelevel._tenantName + gradelevel._userName, gradelevel._token)) { gradelevelViewModel = this.gradelevelRepository.ViewGradelevel(gradelevel); } else { gradelevelViewModel._failure = true; gradelevelViewModel._message = TOKENINVALID; } } catch (Exception es) { gradelevelViewModel._failure = true; gradelevelViewModel._message = es.Message; } return(gradelevelViewModel); }
/// <summary> /// Update Grade Level /// </summary> /// <param name="gradelevel"></param> /// <returns></returns> public GradelevelViewModel UpdateGradelevel(GradelevelViewModel gradelevel) { GradelevelViewModel gradelevelUpdate = new GradelevelViewModel(); try { var GradeLevel = this.context?.Gradelevels.FirstOrDefault(x => x.TenantId == gradelevel.tblGradelevel.TenantId && x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.GradeId == gradelevel.tblGradelevel.GradeId); if (GradeLevel != null) { var checkGradelevelTitle = this.context?.Gradelevels.Where(x => x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.TenantId == gradelevel.tblGradelevel.TenantId && x.GradeId != gradelevel.tblGradelevel.GradeId && x.Title.ToLower() == gradelevel.tblGradelevel.Title.ToLower()).FirstOrDefault(); if (checkGradelevelTitle != null) { gradelevel._failure = true; gradelevel._message = "Gradelevel Title Already Exists"; } else { if (GradeLevel.Title.ToLower() != gradelevel.tblGradelevel.Title.ToLower()) { var gradeTitleUsed = this.context?.GradeUsStandard.Where(x => x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.TenantId == gradelevel.tblGradelevel.TenantId && x.GradeLevel.ToLower() == GradeLevel.Title.ToLower()).ToList(); if (gradeTitleUsed.Count() > 0) { gradeTitleUsed.ForEach(x => x.GradeLevel = gradelevel.tblGradelevel.Title); } var gradeTitleUsedInCourse = this.context?.Course.Where(x => x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.TenantId == gradelevel.tblGradelevel.TenantId && x.CourseGradeLevel.ToLower() == GradeLevel.Title.ToLower()).ToList(); if (gradeTitleUsedInCourse.Count() > 0) { gradeTitleUsedInCourse.ForEach(x => x.CourseGradeLevel = gradelevel.tblGradelevel.Title); } var gradeTitleUsedInStudentEnrollment = this.context?.StudentEnrollment.Where(x => x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.TenantId == gradelevel.tblGradelevel.TenantId && x.GradeLevelTitle.ToLower() == GradeLevel.Title.ToLower()).ToList(); if (gradeTitleUsedInStudentEnrollment.Count() > 0) { gradeTitleUsedInStudentEnrollment.ForEach(x => x.GradeLevelTitle = gradelevel.tblGradelevel.Title); } var gradeTitleUsedInStaff = this.context?.StaffMaster.Where(x => x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.TenantId == gradelevel.tblGradelevel.TenantId && x.PrimaryGradeLevelTaught.ToLower() == GradeLevel.Title.ToLower()).ToList(); if (gradeTitleUsedInStaff.Count() > 0) { gradeTitleUsedInStaff.ForEach(x => x.PrimaryGradeLevelTaught = gradelevel.tblGradelevel.Title); } var StaffData = this.context?.StaffMaster.Where(x => x.SchoolId == gradelevel.tblGradelevel.SchoolId && x.TenantId == gradelevel.tblGradelevel.TenantId && x.OtherGradeLevelTaught.ToLower().Contains(GradeLevel.Title.ToLower())).ToList(); if (StaffData.Count() > 0) { foreach (var staff in StaffData) { var otherGradeLevelTaught = staff.OtherGradeLevelTaught.Split(","); otherGradeLevelTaught = otherGradeLevelTaught.Where(w => w != GradeLevel.Title).ToArray(); var newOtherGradeLevelTaught = string.Join(",", otherGradeLevelTaught); newOtherGradeLevelTaught = newOtherGradeLevelTaught + "," + gradelevel.tblGradelevel.Title; staff.OtherSubjectTaught = newOtherGradeLevelTaught; } } } gradelevel.tblGradelevel.LastUpdated = DateTime.Now; this.context.Entry(GradeLevel).CurrentValues.SetValues(gradelevel.tblGradelevel); this.context?.SaveChanges(); gradelevel._failure = false; gradelevel._message = "Gradelevel Updated Successsfully"; } } else { gradelevel.tblGradelevel = null; gradelevel._failure = true; gradelevel._message = NORECORDFOUND; } } catch (Exception es) { gradelevel._failure = true; gradelevel._message = es.Message; } return(gradelevel); }