Esempio n. 1
0
        /// <summary>
        /// 建立傳統周課表 - 一筆傳統周課表
        /// </summary>
        /// <returns></returns>
        public WeekTable CreateWeekData(string token, string circleKey, int classWeekType, string place, DateTime startDate, DateTime endDate)
        {
            var tokenService = new TokenService();
            var tokenInfo    = tokenService.GetTokenInfo(token).Result;

            if (tokenInfo == null)
            {
                return(null);
            }

            var learningCircleService = new LearningCircleService();
            var learningCircleinfo    = learningCircleService.GetDetailByOuterKey(circleKey);

            if (learningCircleinfo == null)
            {
                return(null);
            }
            var startHour        = Convert.ToInt32(startDate.ToString("HH"));
            var endHour          = Convert.ToInt32(endDate.ToString("HH"));
            var dayOfWeekService = new Utility.DayOfWeekTools();
            var week             = dayOfWeekService.ChangeToCht(startDate.DayOfWeek);

            //9點以前都是第一節,9點以後都(目前小時-7)節
            startHour = startHour <= 9 ? 1 : startHour - 7;
            endHour   = endHour <= 9 ? 1 : endHour - 7;
            var entity = new WeekTable()
            {
                ClassWeekType    = classWeekType,
                CreateUtcDate    = DateTime.UtcNow,
                Creator          = tokenInfo.MemberId,
                EndPeriod        = endHour,
                EndTime          = endDate.ToUniversalTime(),
                LearningCircleId = learningCircleinfo.Id,
                Place            = place,
                StartPeriod      = startHour,
                StartTime        = startDate.ToUniversalTime(),
                Week             = week
            };

            try
            {
                var db = _uow.DbContext;
                db.WeekTable.Add(entity);
                db.SaveChanges();
                return(entity);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 取得使用者所有上課時間地點
        /// </summary>
        /// <param name="token"></param>
        /// <returns></returns>
        public IEnumerable <Infrastructure.ViewModel.CourseManage.GetMyCourseScheduleResponse> AppGetMyCourseRoomSchedule(string token)
        {
            var tokenService  = new TokenService();
            var memberService = new MemberService();
            var checkToken    = tokenService.GetTokenInfo(token).Result;

            if (checkToken == null)
            {
                return(null);
            }
            var memberInfo = memberService.UserIdToAccount(checkToken.MemberId);

            if (memberInfo == null)
            {
                return(null);
            }
            var db = _uow.DbContext;

            /*  var sqlData = (from ttb in db.TimeTable
             *               join lc in db.LearningCircle on ttb.Course_No equals lc.LearningOuterKey
             *               join wt in db.WeekTable on lc.Id equals wt.LearningCircleId
             *               join cm in db.CircleMemberRoleplay on lc.Id equals cm.CircleId
             *               orderby ttb.StartDate
             *               group ttb by new { ttb, lc.LearningOuterKey, lc.Name, wt.StartPeriod, wt.EndPeriod, wt.Place, cm.MemberId, wt.ClassWeekType, lc.Enable ,wt.Week} into g
             *               where g.Key.MemberId == memberInfo.Id && g.Key.Enable == true
             *               select new Infrastructure.ViewModel.CourseManage.GetMyCourseScheduleResponse
             *               {
             *                   Id=g.Key.ttb.Id,
             *                   RoomID = null,
             *                   RoomName = g.Key.Place,
             *                   ClassID = g.Key.LearningOuterKey,
             *                   ClassName = g.Key.Name,
             *                   StartDate = g.Key.ttb.StartDate.Value,
             *                   EndDate = g.Key.ttb.EndDate.Value,
             *                   StartPeriod = g.Key.StartPeriod.Value,
             *                   EndPeriod = g.Key.EndPeriod.Value,
             *                   NameOfWeekDay = g.Key.Week,
             *                   ClassWeekType = (Infrastructure.ViewModel.CourseManage.GetMyCourseScheduleResponse.enumClassWeekType)g.Key.ClassWeekType
             *               }).ToList();*/

            var sqlData = (from wt in db.WeekTable
                           join lc in db.LearningCircle on wt.LearningCircleId equals lc.Id
                           join cmr in db.CircleMemberRoleplay on lc.Id equals cmr.CircleId
                           group wt by new { wt, lc.LearningOuterKey, lc.Name, cmr.MemberId, lc.Enable, lc.Section, lc.StartDate, lc.EndDate } into g
                           where g.Key.MemberId == memberInfo.Id &&
                           g.Key.Enable == true
                           select new Infrastructure.ViewModel.CourseManage.GetMyCourseScheduleResponse
            {
                RoomID = null,
                RoomName = g.Key.wt.Place,
                ClassID = g.Key.LearningOuterKey.ToLower(),
                ClassName = g.Key.Name,
                StartDate = g.Key.wt.StartTime,
                EndDate = g.Key.wt.EndTime,
                StartPeriod = g.Key.wt.StartPeriod.Value,
                EndPeriod = g.Key.wt.EndPeriod.Value,
                NameOfWeekDay = g.Key.wt.Week,
                ClassWeekType = (Infrastructure.ViewModel.CourseManage.GetMyCourseScheduleResponse.enumClassWeekType)g.Key.wt.ClassWeekType
            }).ToList();

            if (sqlData.Count() <= 0)
            {
                return(null);
            }
            var response      = new List <Infrastructure.ViewModel.CourseManage.GetMyCourseScheduleResponse>();
            var dayOfWeek     = new Utility.DayOfWeekTools();
            var dateTimeTools = new Utility.DateTimeTools();

            //weekTable資料
            foreach (var data in sqlData)
            {
                var timeDatas = dateTimeTools.GetIntervalDateList(data.StartDate, data.EndDate, 7);
                //塞TimeTable資料
                foreach (var timeData in timeDatas)
                {
                    var endDate = timeData.Start_date.Date;
                    endDate = endDate.AddHours(timeData.End_date.ToLocalTime().Hour);
                    endDate = endDate.AddMinutes(timeData.End_date.ToLocalTime().Minute);
                    var responseData = new Infrastructure.ViewModel.CourseManage.GetMyCourseScheduleResponse()
                    {
                        ClassID         = data.ClassID,
                        ClassName       = data.ClassName,
                        ClassWeekType   = data.ClassWeekType,
                        EndDate         = endDate,
                        StartDate       = timeData.Start_date.ToLocalTime(),
                        StartPeriod     = data.StartPeriod,
                        EndPeriod       = data.EndPeriod,
                        RoomName        = data.RoomName,
                        WeekDay         = dayOfWeek.ChangeToDayOfWeek(data.NameOfWeekDay).Value,
                        NameOfWeekDay   = data.NameOfWeekDay,
                        StartPeriodTime = timeData.Start_date.ToLocalTime().ToString("yyyy-MM-ddTHH:mm:ss"),
                        EndPeriodTime   = endDate.ToString("yyyy-MM-ddTHH:mm:ss")
                    };
                    response.Add(responseData);
                }

                /*    data.EndDate = data.EndDate.ToLocalTime();
                 *  data.StartDate = data.StartDate.ToLocalTime();
                 *  if (data.StartDate.DayOfWeek == dayOfWeek.ChangeToDayOfWeek(data.NameOfWeekDay)) {
                 *      //data.ClassID = data.ClassID.ToLower();
                 *      data.StartPeriodTime = data.StartDate.ToString("yyyy-MM-ddTHH:mm:ss");
                 *      data.EndPeriodTime = data.EndDate.ToString("yyyy-MM-ddTHH:mm:ss");
                 *      data.WeekDay = data.StartDate.DayOfWeek;
                 *      data.NameOfWeekDay = dayOfWeek.ChangeToCht(data.StartDate.DayOfWeek);
                 *      response.Add(data);
                 *  }*/
            }
            return(response);
        }
Esempio n. 3
0
        /// <summary>
        /// 取得上課列表
        /// </summary>
        /// <param name="circleKey"></param>
        /// <returns></returns>
        public IEnumerable <Infrastructure.ViewModel.CourseManage.GetMyCourseScheduleResponse> APPGetMyCourseSchedule(string token)
        {
            var tokenService  = new TokenService();
            var memberService = new MemberService();
            var checkToken    = tokenService.GetTokenInfo(token).Result;

            if (checkToken == null)
            {
                return(null);
            }
            var memberInfo = memberService.UserIdToAccount(checkToken.MemberId);

            if (memberInfo == null)
            {
                return(null);
            }

            var sectionService = new SectionService();
            var sectionInfo    = sectionService.GetOrgNowSeme(memberInfo.OrgId);

            if (sectionInfo == null)
            {
                return(null);
            }
            var nowSection = string.Format("{0}{1}", sectionInfo.FullName, sectionInfo.Serial);
            var db         = _uow.DbContext;

            var sqlData = (from wt in db.WeekTable
                           join lc in db.LearningCircle on wt.LearningCircleId equals lc.Id
                           join cm in db.CircleMemberRoleplay on lc.Id equals cm.CircleId
                           where cm.MemberId == memberInfo.Id && lc.Enable == true && lc.Section == nowSection
                           orderby wt.StartTime
                           select new Infrastructure.ViewModel.CourseManage.GetMyCourseScheduleResponse
            {
                RoomID = null,
                RoomName = wt.Place,
                ClassID = lc.LearningOuterKey,
                ClassName = lc.Name,
                StartDate = wt.StartTime,
                EndDate = wt.EndTime,
                StartPeriod = wt.StartPeriod.Value,
                EndPeriod = wt.EndPeriod.Value,
                ClassWeekType = (Infrastructure.ViewModel.CourseManage.GetMyCourseScheduleResponse.enumClassWeekType)wt.ClassWeekType
            }).ToList();

            if (sqlData.Count() <= 0)
            {
                return(null);
            }
            var response  = new List <Infrastructure.ViewModel.CourseManage.GetMyCourseScheduleResponse>();
            var dayOfWeek = new Utility.DayOfWeekTools();

            foreach (var data in sqlData)
            {
                data.EndDate   = data.EndDate.ToLocalTime();
                data.StartDate = data.StartDate.ToLocalTime();

                data.StartPeriodTime = string.Format("{0:HH}:{0:mm}", data.StartDate);
                data.EndPeriodTime   = string.Format("{0:HH}:{0:mm}", data.EndDate);
                data.WeekDay         = data.StartDate.DayOfWeek;
                data.NameOfWeekDay   = dayOfWeek.ChangeToCht(data.StartDate.DayOfWeek);
                response.Add(data);
            }
            return(response);
        }
Esempio n. 4
0
        /// <summary>
        /// 處理資料
        /// </summary>
        /// <param name="requestData"></param>
        /// <returns></returns>
        public bool WeekTableDataProxy(WeekTablePostRequest requestData)
        {
            var tokenService = new TokenService();
            var tokenInfo    = tokenService.GetTokenInfo(requestData.Token).Result;

            if (tokenInfo == null)
            {
                return(false);
            }
            if (requestData.WeekTableData == null)
            {
                return(false);
            }
            var insertDatas           = requestData.WeekTableData.WeekTable.Where(t => t.Id == 0);
            var learningCircleService = new LearningCircleService();
            var learningCircleInfo    = learningCircleService.GetDetailByOuterKey(requestData.CircleKey.ToLower());

            if (learningCircleInfo == null)
            {
                return(false);
            }
            var startDateTime  = requestData.WeekTableData.StartDate;
            var endDateTime    = requestData.WeekTableData.EndDate;
            var dayOfWeekTools = new Utility.DayOfWeekTools();
            var DateTimeTools  = new Utility.DateTimeTools();

            //處理新增資料
            foreach (var insertData in insertDatas)
            {
                insertData.LearningCircleId = learningCircleInfo.Id;
                insertData.ClassWeekType    = 0;
                insertData.Creator          = tokenInfo.MemberId;
                insertData.CreateUtcDate    = DateTime.UtcNow;
                var insertStartPeriod = DateTimeTools.DatetimeToSectionint(insertData.StartTime, true);
                var insertEndPeriod   = DateTimeTools.DatetimeToSectionint(insertData.EndTime, false);
                insertData.StartPeriod = insertStartPeriod;
                insertData.EndPeriod   = insertEndPeriod;
                /*判斷week字串與startTime的時與分,再組成對的時間*/
                //取出時與分
                var insertStartHour   = insertData.StartTime.ToUniversalTime().Hour;
                var insertStartMinute = insertData.StartTime.ToUniversalTime().Minute;
                var insertEndHour     = insertData.EndTime.ToUniversalTime().Hour;
                var insertEndMinute   = insertData.EndTime.ToUniversalTime().Minute;
                var insertDayOfWeek   = dayOfWeekTools.ChangeToDayOfWeek(insertData.Week);
                if (insertDayOfWeek == null)
                {
                    return(false);
                }
                var startDayOfWeek = startDateTime.DayOfWeek;
                if (insertDayOfWeek.Value != startDayOfWeek)
                {
                    var interval = (int)startDayOfWeek - (int)insertDayOfWeek.Value;
                    if (interval > 0)
                    {
                        startDateTime = startDateTime.AddDays(interval);
                    }
                    else
                    {
                        startDateTime = startDateTime.AddDays(7 + interval);
                    }
                }
                startDateTime        = startDateTime.AddHours(insertStartHour);
                startDateTime        = startDateTime.AddMinutes(insertStartMinute);
                endDateTime          = endDateTime.AddHours(insertEndHour);
                endDateTime          = endDateTime.AddMinutes(insertEndMinute);
                insertData.StartTime = startDateTime.ToUniversalTime();
                insertData.EndTime   = endDateTime.ToUniversalTime();
            }
            try
            {
                var db = _uow.DbContext;
                var updateLearningCircleInfo = db.LearningCircle.FirstOrDefault(t => t.LearningOuterKey.ToLower() == requestData.CircleKey.ToLower());
                if (updateLearningCircleInfo != null)
                {
                    updateLearningCircleInfo.StartDate = requestData.WeekTableData.StartDate.ToUniversalTime();
                    updateLearningCircleInfo.EndDate   = requestData.WeekTableData.EndDate.ToUniversalTime();
                }
                db.WeekTable.AddRange(insertDatas);
                var dbData = GetByCirclekey(requestData.CircleKey.ToLower());
                //聯集資料
                var unionDataIds = requestData.WeekTableData.WeekTable.Select(t => t.Id).Union(dbData.WeekTable.Select(t => t.Id));
                //找出欲刪除的資料
                var deleteDataIds = unionDataIds.Except(requestData.WeekTableData.WeekTable.Select(t => t.Id));
                foreach (var deleteDataId in deleteDataIds)
                {
                    var deleteTimeTable = db.WeekTable.Find(deleteDataId);
                    if (deleteTimeTable == null)
                    {
                        continue;
                    }
                    db.WeekTable.Remove(deleteTimeTable);
                }
                //處理編輯資料
                var updateDatas = requestData.WeekTableData.WeekTable.Where(t => t.Id > 0).ToList();
                startDateTime = requestData.WeekTableData.StartDate;
                endDateTime   = requestData.WeekTableData.EndDate;
                foreach (var updateData in updateDatas)
                {
                    var updateDataInfo    = db.WeekTable.Find(updateData.Id);
                    var updateStartPeriod = DateTimeTools.DatetimeToSectionint(updateData.StartTime, true);
                    var updateEndPeriod   = DateTimeTools.DatetimeToSectionint(updateData.EndTime, false);
                    updateDataInfo.StartPeriod   = updateStartPeriod;
                    updateDataInfo.EndPeriod     = updateEndPeriod;
                    updateDataInfo.UpdateUtcDate = DateTime.UtcNow;
                    updateDataInfo.Updater       = tokenInfo.MemberId;
                    /*判斷week字串與startTime的時與分,再組成對的時間*/
                    //取出時與分
                    var updateStartHour   = updateData.StartTime.ToUniversalTime().Hour;
                    var updateStartMinute = updateData.StartTime.ToUniversalTime().Minute;
                    var updateEndHour     = updateData.EndTime.ToUniversalTime().Hour;
                    var updateEndMinute   = updateData.EndTime.ToUniversalTime().Minute;
                    var updateDayOfWeek   = dayOfWeekTools.ChangeToDayOfWeek(updateData.Week);
                    if (updateDayOfWeek == null)
                    {
                        return(false);
                    }
                    var startDayOfWeek = startDateTime.DayOfWeek;
                    if (updateDayOfWeek.Value != startDayOfWeek)
                    {
                        var interval = (int)startDayOfWeek - (int)updateDayOfWeek.Value;
                        if (interval > 0)
                        {
                            startDateTime = startDateTime.AddDays(interval);
                        }
                        else
                        {
                            startDateTime = startDateTime.AddDays(7 + interval);
                        }
                    }
                    startDateTime            = startDateTime.AddHours(updateStartHour);
                    startDateTime            = startDateTime.AddMinutes(updateStartMinute);
                    endDateTime              = endDateTime.AddHours(updateEndHour);
                    endDateTime              = endDateTime.AddMinutes(updateEndMinute);
                    updateDataInfo.StartTime = updateData.StartTime.ToUniversalTime();
                    updateDataInfo.EndTime   = updateData.EndTime.ToUniversalTime();
                    updateDataInfo.Week      = updateData.Week;
                    updateDataInfo.Place     = updateData.Place;
                }
                db.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
Esempio n. 5
0
        /// <summary>
        /// 修改周課表
        /// </summary>
        /// <param name="token"></param>
        /// <param name="circleKey"></param>
        /// <param name="place"></param>
        /// <param name="startDate"></param>
        /// <param name="endDate"></param>
        /// <param name="weeks"></param>
        /// <returns></returns>
        public bool UpdateWeekDatas(string token, string circleKey, string place, DateTime startDate, DateTime endDate, int classWeekType, List <int> weeks)
        {
            var tokenService = new TokenService();
            var tokenInfo    = tokenService.GetTokenInfo(token).Result;

            if (tokenInfo == null)
            {
                return(false);
            }

            var learningCircleService = new LearningCircleService();
            var learningCircleinfo    = learningCircleService.GetDetailByOuterKey(circleKey);

            if (learningCircleinfo == null)
            {
                return(false);
            }

            var startHour        = Convert.ToInt32(startDate.ToString("HH"));
            var endHour          = Convert.ToInt32(endDate.ToString("HH"));
            var dayOfWeekService = new Utility.DayOfWeekTools();
            var startWeek        = startDate.DayOfWeek;

            //9點以前都是第一節,9點以後都(目前小時-7)節
            startHour = startHour <= 9 ? 1 : startHour - 7;
            endHour   = endHour <= 9 ? 1 : endHour - 7;

            try
            {
                var db = _uow.DbContext;
                //排序 周日:0 ~周六:6
                weeks = weeks.OrderBy(t => t).ToList();
                //查看week是否有錯誤資料
                var weekMax = weeks.Max(t => t);
                if (weekMax >= 7)
                {
                    return(false);
                }
                //取得資料庫目前傳統課表
                var sqlWeekTablesDatas = GetByLearningCircleId(learningCircleinfo.Id);
                //暫存作為刪除的資料
                var tempWeekTableDatas = sqlWeekTablesDatas.ToList();
                foreach (var week in weeks)
                {
                    var weekInfo = (DayOfWeek)week;
                    //踢出不要刪除的weekTable資訊
                    if (tempWeekTableDatas.Count() > 0)
                    {
                        var removeTempData = tempWeekTableDatas.FirstOrDefault(t => t.StartTime.ToLocalTime().DayOfWeek.ToString() == weekInfo.ToString());
                        if (removeTempData != null)
                        {
                            tempWeekTableDatas.Remove(removeTempData);
                        }
                    }

                    //設定開始日期
                    var _startDate = startDate;
                    var checkWeek  = week - (int)startWeek;
                    if (checkWeek < 0)
                    {
                        _startDate = startDate.AddDays(7 + checkWeek);
                    }
                    else if (checkWeek > 0)
                    {
                        _startDate = startDate.AddDays(checkWeek);
                    }

                    //找出並修改要保留的資料
                    var editDataInfo = sqlWeekTablesDatas.FirstOrDefault(t => t.StartTime.ToLocalTime().DayOfWeek.ToString() == weekInfo.ToString());
                    if (editDataInfo != null)
                    {
                        editDataInfo.Place         = place;
                        editDataInfo.StartTime     = _startDate.ToUniversalTime();
                        editDataInfo.EndTime       = endDate.ToUniversalTime();
                        editDataInfo.StartPeriod   = startHour;
                        editDataInfo.EndPeriod     = endHour;
                        editDataInfo.ClassWeekType = classWeekType;
                        continue;
                    }

                    //資料庫無該資料,需要新增
                    var entity = new WeekTable()
                    {
                        ClassWeekType    = classWeekType,
                        CreateUtcDate    = DateTime.UtcNow,
                        Creator          = tokenInfo.MemberId,
                        EndPeriod        = endHour,
                        EndTime          = endDate.ToUniversalTime(),
                        LearningCircleId = learningCircleinfo.Id,
                        Place            = place,
                        StartPeriod      = startHour,
                        StartTime        = _startDate.ToUniversalTime(),
                        Week             = dayOfWeekService.ChangeToCht(weekInfo)
                    };
                    db.WeekTable.Add(entity);
                }
                //刪除timeTable資訊
                foreach (var deleteWeek in tempWeekTableDatas)
                {
                    var timeTableInfo        = db.TimeTable.Where(t => t.Course_No == circleKey).ToList();
                    var deleteTimeTableDatas = timeTableInfo.Where(t => t.StartDate.Value.DayOfWeek.ToString() == deleteWeek.StartTime.DayOfWeek.ToString()).ToList();
                    db.TimeTable.RemoveRange(deleteTimeTableDatas);
                }
                //刪除weektable資訊
                db.WeekTable.RemoveRange(tempWeekTableDatas);
                db.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
Esempio n. 6
0
        /// <summary>
        /// 建立多筆傳統周課表
        /// </summary>
        /// <param name="token"></param>
        /// <param name="circleKey"></param>
        /// <param name="classWeekType"></param>
        /// <param name="place"></param>
        /// <param name="startDate"></param>
        /// <param name="endDate"></param>
        /// <param name="weeks"></param>
        /// <returns></returns>
        public IEnumerable <WeekTable> CreateWeekDatas(string token, string circleKey, int classWeekType, string place, DateTime startDate, DateTime endDate, List <int> weeks)
        {
            var saveDatas = new List <WeekTable>();

            if (weeks.Count <= 0) //只新增一筆
            {
                var data = CreateWeekData(token, circleKey, classWeekType, place, startDate, endDate);
                if (data == null)
                {
                    return(null);
                }
                saveDatas.Add(data);
                return(saveDatas);
            }

            var tokenService = new TokenService();
            var tokenInfo    = tokenService.GetTokenInfo(token).Result;

            if (tokenInfo == null)
            {
                return(null);
            }

            var learningCircleService = new LearningCircleService();
            var learningCircleinfo    = learningCircleService.GetDetailByOuterKey(circleKey);

            if (learningCircleinfo == null)
            {
                return(null);
            }

            var startHour        = Convert.ToInt32(startDate.ToString("HH"));
            var endHour          = Convert.ToInt32(endDate.ToString("HH"));
            var dayOfWeekService = new Utility.DayOfWeekTools();
            var startWeek        = startDate.DayOfWeek;

            //9點以前都是第一節,9點以後都(目前小時-7)節
            startHour = startHour < 9 ? 1 : startHour - 7;
            endHour   = endHour < 9 ? 1 : endHour - 7;

            try
            {
                var db = _uow.DbContext;
                weeks = weeks.OrderBy(t => t).ToList();
                var weekMax = weeks.Max(t => t);
                if (weekMax >= 7)
                {
                    return(null);
                }

                foreach (var week in weeks)
                {
                    var weekInfo   = (DayOfWeek)week;
                    var _startDate = startDate;
                    var checkWeek  = week - (int)startWeek;
                    if (checkWeek < 0)
                    {
                        _startDate = startDate.AddDays(7 + checkWeek);
                    }
                    else if (checkWeek > 0)
                    {
                        _startDate = startDate.AddDays(checkWeek);
                    }
                    var entity = new WeekTable()
                    {
                        ClassWeekType    = classWeekType,
                        CreateUtcDate    = DateTime.UtcNow,
                        Creator          = tokenInfo.MemberId,
                        EndPeriod        = endHour,
                        EndTime          = endDate.ToUniversalTime(),
                        LearningCircleId = learningCircleinfo.Id,
                        Place            = place,
                        StartPeriod      = startHour,
                        StartTime        = _startDate.ToUniversalTime(),
                        Week             = dayOfWeekService.ChangeToCht(weekInfo)
                    };
                    saveDatas.Add(entity);
                }
                db.WeekTable.AddRange(saveDatas);
                db.SaveChanges();
                return(saveDatas);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }