示例#1
0
        public bool AddUser(UserInfo userInfo)
        {
            bool flag = false;

            //用户添加
            userInfo.UserInfoTalkCount = 0;
            userInfo.CreateTime        = DateTime.Now;
            userInfo.ModfiedOn         = userInfo.CreateTime;
            userInfo.UserInfoLastTime  = userInfo.CreateTime;
            DbSession.UserInfoDal.Add(userInfo);
            if (DbSession.SaveChanges() > 0)
            {
                flag = true;
            }

            //用户时长添加
            UserDuration userDuration = new UserDuration();

            userDuration.UserDurationID            = userInfo.UserInfoID;
            userDuration.CreateTime                = DateTime.Now;
            userDuration.ModfiedOn                 = userDuration.CreateTime;
            userDuration.Status                    = delNormal;
            userDuration.UserDurationTotal         = 0;
            userDuration.UserDurationPartyTotal    = 0;
            userDuration.UserDurationPropartyTotal = 0;
            userDuration.UserDurationNormalTotal   = 0;
            DbSession.UserDurationDal.Add(userDuration);
            if (DbSession.SaveChanges() > 0)
            {
                flag = true;
            }
            return(flag);
        }
示例#2
0
        public Boolean AddTime(int actId)
        {
            bool flag = false;

            try
            {
                short    delNormal       = (short)Model.Enum.DelFlagEnum.Normal;
                short    delDoneAuditing = (short)Model.Enum.DelFlagEnum.DoneAuditing;
                Activity activity        = DbSession.ActivityDal.GetEntities(u => u.ActivityID == actId && u.Status == delDoneAuditing).FirstOrDefault();
                var      EnrollList      = DbSession.UserEnrollDal.GetEntities(u => u.ActivityID == actId && u.Status == delNormal).AsQueryable();
                foreach (var Enroll in EnrollList)
                {
                    //添加活动详情
                    ActivityDetail activityDetail = new ActivityDetail();
                    activityDetail.Status             = (short)Model.Enum.DelFlagEnum.Normal;
                    activityDetail.UserInfoId         = Enroll.UserInfoID;
                    activityDetail.ActivityID         = Enroll.ActivityID;
                    activityDetail.CreateTime         = DateTime.Now;
                    activityDetail.ModfiedOn          = activityDetail.CreateTime;
                    activityDetail.ActivityDetailTime = (decimal)Enroll.ActivityTime;
                    DbSession.ActivityDetailDal.Add(activityDetail);

                    //用户总时长累积
                    UserDuration userDuration = DbSession.UserDurationDal.GetEntities(u => u.UserDurationID == Enroll.UserInfoID).FirstOrDefault();

                    //政治面貌
                    int pId = DbSession.UserInfoDal.GetEntities(u => u.UserInfoID == userDuration.UserDurationID).FirstOrDefault().PoliticalID;

                    //总时长
                    userDuration.UserDurationTotal = userDuration.UserDurationTotal + (decimal)Enroll.ActivityTime;

                    //用户为党员
                    if (pId == polParty)
                    {
                        userDuration.UserDurationPartyTotal = userDuration.UserDurationPartyTotal + (decimal)Enroll.ActivityTime;
                    }
                    //用户为预备党员
                    else if (pId == polPreparatory)
                    {
                        userDuration.UserDurationPropartyTotal = userDuration.UserDurationPropartyTotal + (decimal)Enroll.ActivityTime;
                        //50小时志愿者徽章
                        if (userDuration.UserDurationPropartyTotal >= 50 && DbSession.UserBadgeDal.GetEntities(u => u.BadgeID == 1 && u.UserInfoID == userDuration.UserDurationID).FirstOrDefault() == null)
                        {
                            UserBadge userBadge = new UserBadge
                            {
                                //徽章ID
                                BadgeID    = 1,
                                UserInfoID = userDuration.UserDurationID,
                                CreateTime = DateTime.Now
                            };
                            userDuration.Status = delNormal;
                            DbSession.UserBadgeDal.Add(userBadge);
                        }
                    }
                    else
                    {
                        userDuration.UserDurationNormalTotal = userDuration.UserDurationNormalTotal + (decimal)Enroll.ActivityTime;
                    }
                    DbSession.UserDurationDal.Update(userDuration);
                }
                activity.Status    = delNormal;
                activity.ModfiedOn = DateTime.Now;
                DbSession.ActivityDal.Update(activity);
                DbSession.SaveChanges();
                flag = true;
            }
            catch (Exception e)
            {
                flag = false;
            }
            return(flag);
        }