Esempio n. 1
0
        /// <summary>
        /// 刪除成員選課資訊
        /// </summary>
        /// <param name="account"></param>
        /// <param name="circleKey"></param>
        /// <param name="token"></param>
        /// <returns></returns>
        public bool DeleteCircleMember(CircleMemberRequest data)
        {
            var db      = _uow.DbContext;
            var deleter = (from m in db.Members
                           join ut in db.UserToken on m.Id equals ut.MemberId
                           where ut.Token == data.Token
                           select m).FirstOrDefault();

            var learningCircleInfo = db.LearningCircle.FirstOrDefault(t => t.LearningOuterKey == data.CircleKey);

            if (learningCircleInfo == null)
            {
                return(false);
            }
            var memberInfo = db.Members.FirstOrDefault(t => t.Account == data.Account);

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

            //判斷是否已存在關聯
            var checkData = GetCircleMemberInfo(memberInfo.Id, learningCircleInfo.Id);

            if (checkData != null)
            {
                db.CircleMember.Remove(checkData);
                db.SaveChanges();
                return(true);
            }
            else
            {
                return(false);
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 建立選課資訊
        /// </summary>
        /// <param name="account"></param>
        /// <param name="circleKey"></param>
        /// <param name="token"></param>
        /// <returns></returns>
        public bool InsertCircleMember(CircleMemberRequest data)
        {
            var db      = _uow.DbContext;
            var creator = (from m in db.Members
                           join ut in db.UserToken on m.Id equals ut.MemberId
                           where ut.Token == data.Token
                           select m).FirstOrDefault();

            var learningCircleInfo = db.LearningCircle.FirstOrDefault(t => t.LearningOuterKey == data.CircleKey);

            if (learningCircleInfo == null)
            {
                return(false);
            }
            var memberInfo = db.Members.FirstOrDefault(t => t.Account == data.Account);

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

            //判斷是否已存在關聯
            var checkData = GetCircleMemberInfo(memberInfo.Id, learningCircleInfo.Id);

            if (checkData != null)
            {
                checkData.Enabled = true;
                db.SaveChanges();
                return(true);
            }

            var entity = new Infrastructure.Entity.CircleMember()
            {
                CircleId   = learningCircleInfo.Id,
                Created    = TimeData.Create(DateTime.UtcNow),
                Updated    = TimeData.Create(null),
                Deleted    = TimeData.Create(null),
                CreateUser = creator.Id,
                Enabled    = true,
                MemberId   = memberInfo.Id
            };

            db.CircleMember.Add(entity);
            db.SaveChanges();
            return(true);
        }