/// <summary> /// 顯示我的課程 /// </summary> /// <returns></returns> public ActionResult MyCourse() { try { //驗證授權:一般會員 var pass = roleAuth.UserAuth(); if (pass == true) { ViewBag.UserName = roleAuth.UserName(); ViewBag.RoleName = "User"; } else { TempData["Msg"] = "無權限瀏覽該網頁,請登入會員瀏覽,謝謝!"; return(RedirectToAction("Logout", "Home")); } //取得會員Id var UserEmail = User.Identity.Name; MemberOperation member = new MemberOperation(); var MemberId = member.Get(UserEmail).MemberNo; //取得會員課程 MemberCourseOperation mco = new MemberCourseOperation(); var LstCourse = mco.Get(MemberId); var courses = LstCourse.ToLookup(o => o.CourseType_no, o => o.Num); //將會員課程寫入我的課程ViewModel List <MyCourseViewModel> LstMcv = new List <MyCourseViewModel>(); foreach (var type in courses) { MyCourseViewModel mcv = new MyCourseViewModel(); CourseTypeOperation cto = new CourseTypeOperation(); var ClassName = cto.Get(type.Key).Name; //取得課程類型名稱 int addCnt = 0; //加總用變數 mcv.Name = ClassName; //將同課程類型的課堂數加總 foreach (int cnt in type) { addCnt += cnt; } mcv.count = addCnt; LstMcv.Add(mcv); } return(View(LstMcv)); } catch (Exception ex) { ViewBag.Msg = ex.ToString(); return(RedirectToAction("Logout", "Home")); } }
/// <summary> /// 顯示我的預約課程紀錄 /// </summary> /// <returns></returns> public ActionResult MyBooking() { try { //驗證授權:一般會員 var pass = roleAuth.UserAuth(); if (pass == true) { ViewBag.UserName = roleAuth.UserName(); ViewBag.RoleName = "User"; } else { TempData["Msg"] = "無權限瀏覽該網頁,請登入會員瀏覽,謝謝!"; return(RedirectToAction("Logout", "Home")); } //取得會員Id var UserEmail = User.Identity.Name; MemberOperation member = new MemberOperation(); var id = member.Get(UserEmail).MemberNo; CourseOperation co = new CourseOperation(); var nowdata = co.GetBooking(id); //尚未結束之預約課程 var pastdata = co.GetPastBooking(id); //已結束之預約課程 CourseTypeOperation cto = new CourseTypeOperation(); ClassroomOperation classroom = new ClassroomOperation(); StoreOperation so = new StoreOperation(); TeacherOperation to = new TeacherOperation(); BookingGroupViewModel booking = new BookingGroupViewModel(); booking.FutureBooking = new List <FutureBookingViewModel>(); booking.PastBooking = new List <PastBookingViewModel>(); foreach (var item in nowdata) { FutureBookingViewModel fbv = new FutureBookingViewModel() { CourseNo = item.CourseNo, //課程代號 CourseName = cto.Get(item.CourseType_No).Name, //課程名稱 Date = item.ClassDate.ToShortDateString(), //日期 Classroom = classroom.Get(item.Classroom_No).Name, //教室 Store = so.GetName(classroom.Get(item.Classroom_No).Store_No), //場館 Time = item.StartTime.ToShortTimeString() + " ~ " + item.EndTime.ToShortTimeString(), //上課時間 Teacher = to.GetName(item.Teacher_No) //教練名字 }; booking.FutureBooking.Add(fbv); } foreach (var item in pastdata) { PastBookingViewModel pbv = new PastBookingViewModel() { CourseNo = item.CourseNo, //課程代號 CourseName = cto.Get(item.CourseType_No).Name, //課程名稱 Date = item.ClassDate.ToShortDateString(), //日期 Classroom = classroom.Get(item.Classroom_No).Name, //教室 Store = so.GetName(classroom.Get(item.Classroom_No).Store_No), //場館 Time = item.StartTime.ToShortTimeString() + " ~ " + item.EndTime.ToShortTimeString(), //上課時間 Teacher = to.GetName(item.Teacher_No) //教練名字 }; booking.PastBooking.Add(pbv); } return(View(booking)); } catch (Exception ex) { TempData["Msg"] = ex.ToString(); return(RedirectToAction("Logout", "Home")); } }
//[CommonAuthorize] public ActionResult Index() { try { RoleAuthManager roleAuth = new RoleAuthManager(); var pass = roleAuth.UserGuestAuth(); if (pass == 0) { ViewBag.UserName = roleAuth.UserName(); } else if (pass == 1) { ViewBag.UserName = roleAuth.UserName(); ViewBag.RoleName = "User"; } else if (pass == 2) { ViewBag.RoleName = "Admin"; ViewBag.UserName = roleAuth.UserName(); TempData["Msg"] = "無權限瀏覽該網頁,請登入會員或以訪客身分瀏覽,謝謝!"; return(RedirectToAction("Login", "Home")); } StoreOperation storeOp = new StoreOperation(); var AllStore = storeOp.Get(); //取得所有館別 ClassroomOperation clsroomOp = new ClassroomOperation(); var AllStoreClassRoom = clsroomOp.Get(AllStore); //取得所有館別的教室 CourseOperation crsItemOp = new CourseOperation(); CourseTypeOperation crsOp = new CourseTypeOperation(); List <IndexViewModel> Lstmodel = new List <IndexViewModel>(); //取得每個館別的資料 foreach (var store in AllStore) { IndexViewModel model = new IndexViewModel(); model.CourseInfo = new List <string>(); model.Store = store.Name; model.AccessLimit = store.AccessLimit.ToString(); model.AccessNow = store.MemberInCnt.ToString(); //取得該館的所有教室 var StoreClassRoom = clsroomOp.Get(store); //若教室為一對一教練課用 跳過 foreach (var Room in StoreClassRoom) { if (Room.Name.Equals("一對一場地")) { continue; } var RoomName = Room.Name; var LstCourse = crsItemOp.Get(Room);//取得教室的所有課程 //取得教室目前課程 var NowCourse = from c in LstCourse where c.CourseType_No != "Ch05" && c.ClassDate.Equals(DateTime.Now.Date) && c.StartTime <= DateTime.Now && DateTime.Now <= c.EndTime select c.CourseType_No; //教室目前有課程 if (NowCourse.Count() > 0) { //取得教室名稱與目前課程名稱 var tmpNowCourse = NowCourse.ToList(); var courseName = crsOp.Get(tmpNowCourse[0]).Name; model.CourseInfo.Add(RoomName + ":" + courseName); } //教室目前沒有課程 else { //取得教室名稱 紀錄目前無課程 model.CourseInfo.Add(RoomName + ":目前無課程"); } } Lstmodel.Add(model); } return(View(Lstmodel)); } catch (Exception ex) { TempData["Msg"] = ex.ToString(); return(View()); } }