internal List <CallendarVM> GetMemberbookData(string memberid = "2")
        //會員檢視自己排的課
        {
            int _memberid = int.Parse(memberid);
            var resultLst = (from q in db.tOrder
                             join m in db.tMember on q.fMemberId equals m.fMemberId
                             join c in db.tCoach on q.fCoachID equals c.fCoachID
                             where (q.fMemberId == _memberid)
                             select new tBookingVM
            {
                GymId = q.fGynId,
                OrderID = q.forderid,
                MemberId = q.fMemberId,
                MemberName = m.fMemberName,
                CoachName = c.fCoachName,
                CoachId = q.fCoachID,
                OrderStatus = q.fSuccessed.ToString(),
                StartTime = q.fStartTime,
                Endtime = q.fEndTime,
                TrainingName = q.fTrainingName,
                GymName = (from p in db.tStudio
                           where p.fId == q.fGynId
                           select p.fCorpName).FirstOrDefault()
            }).ToList();

            List <CallendarVM> callendarLst = new List <CallendarVM>();

            foreach (var p in resultLst)
            {
                CallendarVM c = new CallendarVM();
                c.type         = string.IsNullOrWhiteSpace(p.Type) ? "member" : "coach";
                c.groupId      = p.OrderID.ToString();
                c.coachid      = p.CoachId.ToString();
                c.coachrestid  = p.RestID;
                c.membername   = p.MemberName;
                c.title        = p.TrainingName;
                c.start        = p.StartTime.ToString("yyyy-MM-dd HH:mm");
                c.end          = p.Endtime.ToString("yyyy-MM-dd HH:mm");
                c.color        = "steelblue";
                c.GymName      = p.GymName;
                c.GymId        = p.GymId;
                c.TrainingName = p.TrainingName;
                c.OrderStatus  = p.OrderStatus;
                c.CoachName    = p.CoachName;
                callendarLst.Add(c);
            }
            return(callendarLst);
        }
        internal List <CallendarVM> GetTbookDataByid(string id, string coachid, string memberid)
        //撈所有事件資料
        {
            int _id       = int.Parse(id);
            int _memberid = int.Parse(memberid);
            int _coachid  = int.Parse(coachid);

            //會員預定
            var memberLst = (from q in db.tOrder
                             join m in db.tMember on q.fMemberId equals m.fMemberId
                             where (q.fMemberId == _memberid) && q.fCoachID == _coachid && q.forderid == _id
                             select new tBookingVM
            {
                GymId = q.fGynId,
                OrderID = q.fLessonId,
                MemberId = q.fMemberId,
                MemberName = m.fMemberName,
                CoachId = q.fCoachID,
                OrderStatus = q.fSuccessed.ToString(),
                StartTime = q.fStartTime,
                Endtime = q.fEndTime,
                TrainingName = q.fTrainingName,
                GymName = (from p in db.tStudio
                           where p.fId == q.fGynId
                           select p.fCorpName).FirstOrDefault()
            }).ToList();


            List <CallendarVM> callendarLst = new List <CallendarVM>();

            foreach (var p in memberLst)
            {
                CallendarVM c = new CallendarVM();
                c.type         = string.IsNullOrWhiteSpace(p.Type) ? "member" : "coach";
                c.groupId      = p.OrderID.ToString();
                c.membername   = p.MemberName;
                c.title        = p.TrainingName;
                c.start        = p.StartTime.ToString("yyyy-MM-dd HH:mm");
                c.end          = p.Endtime.ToString("yyyy-MM-dd HH:mm");
                c.color        = "steelblue";
                c.GymName      = p.GymName;
                c.GymId        = p.GymId;
                c.TrainingName = p.TrainingName;
                callendarLst.Add(c);
            }
            return(callendarLst);
        }
        internal List <CallendarVM> GetTbookData(string memberid, string coachid)
        //撈所有事件資料
        {
            int  _memberid = int.Parse(memberid);
            int  _coachid  = int.Parse(coachid);
            bool isCoach   = false;

            if (memberid == "-1")
            {
                isCoach = true;
            }

            //會員預定
            var memberLst = (from q in db.tOrder
                             join m in db.tMember on q.fMemberId equals m.fMemberId
                             join c in db.tCoach on q.fCoachID equals c.fCoachID
                             where ((q.fMemberId == _memberid) || isCoach) && q.fCoachID == _coachid && q.fSuccessed.ToString() != "2"
                             select new tBookingVM
            {
                GymId = q.fGynId,
                OrderID = q.forderid,
                MemberId = q.fMemberId,
                MemberName = m.fMemberName,
                CoachId = q.fCoachID,
                CoachName = c.fCoachName,
                OrderStatus = q.fSuccessed.ToString(),
                StartTime = q.fStartTime,
                Endtime = q.fEndTime,
                TrainingName = q.fTrainingName,
                GymName = (from p in db.tStudio
                           where p.fId == q.fGynId
                           select p.fCorpName).FirstOrDefault()
            }).ToList();
            //教練畫休
            var coachLst = (from q in db.tCoachRest
                            where q.fCoachId == _coachid
                            select new tBookingVM
            {
                OrderID = q.fRestId,
                RestID = q.fRestId,
                CoachId = q.fCoachId,
                StartTime = q.fStartTime,
                Endtime = q.fEndTime,
                GymName = q.Description,
                Type = "Coach"
            }).ToList();

            //會員預定+教練畫休
            var resultLst = memberLst.Union(coachLst).ToList();

            List <CallendarVM> callendarLst = new List <CallendarVM>();

            foreach (var p in resultLst)
            {
                CallendarVM c = new CallendarVM();
                c.type         = string.IsNullOrWhiteSpace(p.Type) ? "member" : "coach";
                c.groupId      = p.OrderID.ToString();
                c.coachid      = p.CoachId.ToString();
                c.coachrestid  = p.RestID;
                c.membername   = p.MemberName;
                c.title        = p.TrainingName;
                c.start        = p.StartTime.ToString("yyyy-MM-dd HH:mm");
                c.end          = p.Endtime.ToString("yyyy-MM-dd HH:mm");
                c.color        = "steelblue";
                c.GymName      = p.GymName;
                c.GymId        = p.GymId;
                c.TrainingName = p.TrainingName;
                c.OrderStatus  = p.OrderStatus;
                c.CoachName    = p.CoachName;
                callendarLst.Add(c);
            }
            return(callendarLst);
        }