예제 #1
0
        /// <summary>
        /// Delete School Year
        /// </summary>
        /// <param name="schoolYears"></param>
        /// <returns></returns>
        public SchoolYearsAddViewModel DeleteSchoolYear(SchoolYearsAddViewModel schoolYears)
        {
            try
            {
                var deleteSchoolYear = this.context?.SchoolYears.FirstOrDefault(x => x.TenantId == schoolYears.tableSchoolYears.TenantId && x.SchoolId == schoolYears.tableSchoolYears.SchoolId && x.MarkingPeriodId == schoolYears.tableSchoolYears.MarkingPeriodId);
                var semester         = this.context?.Semesters.FirstOrDefault(z => z.TenantId == deleteSchoolYear.TenantId && z.SchoolId == deleteSchoolYear.SchoolId && z.YearId == deleteSchoolYear.MarkingPeriodId);
                var schoolCalendar   = this.context?.SchoolCalendars.FirstOrDefault(x => x.SchoolId == schoolYears.tableSchoolYears.SchoolId);

                if (semester != null || schoolCalendar != null)
                {
                    schoolYears.tableSchoolYears = null;
                    schoolYears._message         = "School Year cannot be deleted because it has its association";
                    schoolYears._failure         = true;
                }
                else
                {
                    this.context?.SchoolYears.Remove(deleteSchoolYear);
                    this.context?.SaveChanges();
                    schoolYears._failure = false;
                    schoolYears._message = "School Year Deleted Successfully";
                }
            }
            catch (Exception es)
            {
                schoolYears._failure = true;
                schoolYears._message = es.Message;
            }
            return(schoolYears);
        }
예제 #2
0
        public ActionResult <SchoolYearsAddViewModel> ViewSchoolYear(SchoolYearsAddViewModel schoolYear)
        {
            SchoolYearsAddViewModel SchoolYearsView = new SchoolYearsAddViewModel();

            try
            {
                if (schoolYear.tableSchoolYears.SchoolId > 0)
                {
                    SchoolYearsView = _markingPeriodService.ViewSchoolYear(schoolYear);
                }
                else
                {
                    SchoolYearsView._token      = schoolYear._token;
                    SchoolYearsView._tenantName = schoolYear._tenantName;
                    SchoolYearsView._failure    = true;
                    SchoolYearsView._message    = "Please enter valid school id";
                }
            }
            catch (Exception es)
            {
                SchoolYearsView._failure = true;
                SchoolYearsView._message = es.Message;
            }
            return(SchoolYearsView);
        }
예제 #3
0
        /// <summary>
        /// Update School Year
        /// </summary>
        /// <param name="schoolYears"></param>
        /// <returns></returns>
        public SchoolYearsAddViewModel UpdateSchoolYear(SchoolYearsAddViewModel schoolYears)
        {
            try
            {
                var schoolCalendar = this.context?.SchoolCalendars.FirstOrDefault(x => x.SchoolId == schoolYears.tableSchoolYears.SchoolId);

                if (schoolCalendar != null && (schoolCalendar.StartDate < schoolYears.tableSchoolYears.StartDate || schoolCalendar.EndDate > schoolYears.tableSchoolYears.EndDate))
                {
                    schoolYears._failure = true;
                    schoolYears._message = "Start date cannot be changed because it has its association.";
                }
                else
                {
                    var schoolYearsMaster = this.context?.SchoolYears.FirstOrDefault(x => x.TenantId == schoolYears.tableSchoolYears.TenantId && x.SchoolId == schoolYears.tableSchoolYears.SchoolId && x.MarkingPeriodId == schoolYears.tableSchoolYears.MarkingPeriodId);

                    schoolYears.tableSchoolYears.AcademicYear = schoolYears.tableSchoolYears.StartDate.HasValue == true?Convert.ToDecimal(schoolYears.tableSchoolYears.StartDate.Value.Year) : (decimal?)null;

                    schoolYears.tableSchoolYears.LastUpdated = DateTime.UtcNow;
                    this.context.Entry(schoolYearsMaster).CurrentValues.SetValues(schoolYears.tableSchoolYears);
                    this.context?.SaveChanges();
                    schoolYears._failure = false;
                    schoolYears._message = "School Year Updated Successfully";
                }
            }
            catch (Exception ex)
            {
                schoolYears.tableSchoolYears = null;
                schoolYears._failure         = true;
                schoolYears._message         = ex.Message;
            }
            return(schoolYears);
        }
예제 #4
0
        /// <summary>
        /// Get School Year By Id
        /// </summary>
        /// <param name="schoolYears"></param>
        /// <returns></returns>
        public SchoolYearsAddViewModel ViewSchoolYear(SchoolYearsAddViewModel schoolYears)
        {
            SchoolYearsAddViewModel schoolYearsAddViewModel = new SchoolYearsAddViewModel();

            try
            {
                var schoolYearsMaster = this.context?.SchoolYears.FirstOrDefault(x => x.TenantId == schoolYears.tableSchoolYears.TenantId && x.SchoolId == schoolYears.tableSchoolYears.SchoolId && x.MarkingPeriodId == schoolYears.tableSchoolYears.MarkingPeriodId);
                if (schoolYearsMaster != null)
                {
                    schoolYearsAddViewModel.tableSchoolYears = schoolYearsMaster;
                    schoolYearsAddViewModel._tenantName      = schoolYears._tenantName;
                    schoolYearsAddViewModel._failure         = false;
                }
                else
                {
                    schoolYearsAddViewModel._failure = true;
                    schoolYearsAddViewModel._message = NORECORDFOUND;
                }
            }
            catch (Exception es)
            {
                schoolYearsAddViewModel._failure = true;
                schoolYearsAddViewModel._message = es.Message;
            }
            return(schoolYearsAddViewModel);
        }
예제 #5
0
        public SchoolYearsAddViewModel AddSchoolYear(SchoolYearsAddViewModel schoolYears)
        {
            try
            {
                //int? MarkingPeriodId = Utility.GetMaxPK(this.context, new Func<SchoolYears, int>(x => x.MarkingPeriodId));

                int?MarkingPeriodId = 1;

                var schoolYearData = this.context?.SchoolYears.Where(x => x.TenantId == schoolYears.tableSchoolYears.TenantId && x.SchoolId == schoolYears.tableSchoolYears.SchoolId).OrderByDescending(x => x.MarkingPeriodId).FirstOrDefault();

                if (schoolYearData != null)
                {
                    MarkingPeriodId = schoolYearData.MarkingPeriodId + 1;
                }

                schoolYears.tableSchoolYears.MarkingPeriodId = (int)MarkingPeriodId;
                schoolYears.tableSchoolYears.AcademicYear    = schoolYears.tableSchoolYears.StartDate.HasValue == true?Convert.ToDecimal(schoolYears.tableSchoolYears.StartDate.Value.Year) : (decimal?)null;

                schoolYears.tableSchoolYears.LastUpdated = DateTime.UtcNow;
                schoolYears.tableSchoolYears.TenantId    = schoolYears.tableSchoolYears.TenantId;
                this.context?.SchoolYears.Add(schoolYears.tableSchoolYears);
                this.context?.SaveChanges();
                schoolYears._failure = false;
                schoolYears._message = "School Year Added Successfully";
            }
            catch (Exception es)
            {
                schoolYears._failure = true;
                schoolYears._message = es.Message;
            }
            return(schoolYears);
        }
예제 #6
0
        /// <summary>
        /// Update School Year
        /// </summary>
        /// <param name="schoolYear"></param>
        /// <returns></returns>
        public SchoolYearsAddViewModel UpdateSchoolYear(SchoolYearsAddViewModel schoolYear)
        {
            SchoolYearsAddViewModel schoolYearAddViewModel = new SchoolYearsAddViewModel();

            if (TokenManager.CheckToken(schoolYear._tenantName + schoolYear._userName, schoolYear._token))
            {
                schoolYearAddViewModel = this.markingperiodRepository.UpdateSchoolYear(schoolYear);
                return(schoolYearAddViewModel);
            }
            else
            {
                schoolYearAddViewModel._failure = true;
                schoolYearAddViewModel._message = TOKENINVALID;
                return(schoolYearAddViewModel);
            }
        }
예제 #7
0
        /// <summary>
        /// Update School Year
        /// </summary>
        /// <param name="schoolYears"></param>
        /// <returns></returns>
        public SchoolYearsAddViewModel UpdateSchoolYear(SchoolYearsAddViewModel schoolYears)
        {
            try
            {
                var schoolCalendar = this.context?.SchoolCalendars.FirstOrDefault(x => x.SchoolId == schoolYears.tableSchoolYears.SchoolId);

                if (schoolCalendar != null && (schoolCalendar.StartDate < schoolYears.tableSchoolYears.StartDate || schoolCalendar.EndDate > schoolYears.tableSchoolYears.EndDate))
                {
                    schoolYears._failure = true;
                    schoolYears._message = "Start date cannot be changed because it has its association.";
                }
                else
                {
                    var schoolYearsMaster = this.context?.SchoolYears.FirstOrDefault(x => x.TenantId == schoolYears.tableSchoolYears.TenantId && x.SchoolId == schoolYears.tableSchoolYears.SchoolId && x.MarkingPeriodId == schoolYears.tableSchoolYears.MarkingPeriodId);
                    schoolYearsMaster.SchoolId     = schoolYears.tableSchoolYears.SchoolId;
                    schoolYearsMaster.TenantId     = schoolYears.tableSchoolYears.TenantId;
                    schoolYearsMaster.AcademicYear = schoolYears.tableSchoolYears.StartDate.HasValue == true?Convert.ToDecimal(schoolYears.tableSchoolYears.StartDate.Value.Year) : (decimal?)null;

                    schoolYearsMaster.Title                  = schoolYears.tableSchoolYears.Title;
                    schoolYearsMaster.ShortName              = schoolYears.tableSchoolYears.ShortName;
                    schoolYearsMaster.SortOrder              = schoolYears.tableSchoolYears.SortOrder;
                    schoolYearsMaster.StartDate              = schoolYears.tableSchoolYears.StartDate;
                    schoolYearsMaster.EndDate                = schoolYears.tableSchoolYears.EndDate;
                    schoolYearsMaster.PostStartDate          = schoolYears.tableSchoolYears.PostStartDate;
                    schoolYearsMaster.PostEndDate            = schoolYears.tableSchoolYears.PostEndDate;
                    schoolYearsMaster.DoesGrades             = schoolYears.tableSchoolYears.DoesGrades;
                    schoolYearsMaster.DoesExam               = schoolYears.tableSchoolYears.DoesExam;
                    schoolYearsMaster.DoesComments           = schoolYears.tableSchoolYears.DoesComments;
                    schoolYearsMaster.RolloverId             = schoolYears.tableSchoolYears.RolloverId;
                    schoolYears.tableSchoolYears.LastUpdated = DateTime.UtcNow;
                    schoolYearsMaster.UpdatedBy              = schoolYears.tableSchoolYears.UpdatedBy;
                    this.context?.SaveChanges();
                    schoolYears._failure = false;
                }
            }
            catch (Exception ex)
            {
                schoolYears.tableSchoolYears = null;
                schoolYears._failure         = true;
                schoolYears._message         = ex.Message;
            }
            return(schoolYears);
        }
예제 #8
0
        public SchoolYearsAddViewModel AddSchoolYear(SchoolYearsAddViewModel schoolYears)
        {
            try
            {
                int?MarkingPeriodId = Utility.GetMaxPK(this.context, new Func <SchoolYears, int>(x => x.MarkingPeriodId));
                schoolYears.tableSchoolYears.MarkingPeriodId = (int)MarkingPeriodId;
                schoolYears.tableSchoolYears.AcademicYear    = schoolYears.tableSchoolYears.StartDate.HasValue == true?Convert.ToDecimal(schoolYears.tableSchoolYears.StartDate.Value.Year) : (decimal?)null;

                schoolYears.tableSchoolYears.LastUpdated = DateTime.UtcNow;
                schoolYears.tableSchoolYears.TenantId    = schoolYears.tableSchoolYears.TenantId;
                this.context?.SchoolYears.Add(schoolYears.tableSchoolYears);
                this.context?.SaveChanges();
                schoolYears._failure = false;
            }
            catch (Exception es)
            {
                schoolYears._failure = true;
                schoolYears._message = es.Message;
            }
            return(schoolYears);
        }
예제 #9
0
        /// <summary>
        /// Delete School Year
        /// </summary>
        /// <param name="schoolYear"></param>
        /// <returns></returns>
        public SchoolYearsAddViewModel DeleteSchoolYear(SchoolYearsAddViewModel schoolYear)
        {
            SchoolYearsAddViewModel schoolYearListdelete = new SchoolYearsAddViewModel();

            try
            {
                if (TokenManager.CheckToken(schoolYear._tenantName + schoolYear._userName, schoolYear._token))
                {
                    schoolYearListdelete = this.markingperiodRepository.DeleteSchoolYear(schoolYear);
                }
                else
                {
                    schoolYearListdelete._failure = true;
                    schoolYearListdelete._message = TOKENINVALID;
                }
            }
            catch (Exception es)
            {
                schoolYearListdelete._failure = true;
                schoolYearListdelete._message = es.Message;
            }

            return(schoolYearListdelete);
        }