예제 #1
0
 public ActionResult Edit(long id = 0)
 {
     if (id > 0)
     {
         PartyCreateViewModel model = ActivityBLL.Instance.GetEditDetail(id);
         if (model != null)
         {
             if (model.Party != null)
             {
                 if (model.Party.UserID == UserID || UserBaseBLL.Instance.IsMaster)
                 {
                     return(View(model));
                 }
                 else
                 {
                     return(RedirectToAction("Index", "Home"));
                 }
             }
             else
             {
                 return(RedirectToAction("Index", "Home"));
             }
         }
         else
         {
             return(RedirectToAction("Index", "Home"));
         }
     }
     else
     {
         return(RedirectToAction("Index", "Home"));
     }
 }
예제 #2
0
        public IActionResult Create(PartyCreateViewModel model)
        {
            if (ModelState.IsValid)
            {
                var party            = model.Party;
                var listOfPartyUsers = new List <PartyUser>();

                using (var gloomhavenTrackerContext = (GloomhavenTrackerContext)provider.GetService(typeof(GloomhavenTrackerContext)))
                {
                    foreach (var user in model.Users.Where(x => x.Selected == true))
                    {
                        listOfPartyUsers.Add(new PartyUser()
                        {
                            User = gloomhavenTrackerContext.Users.Single(x => x.Id == user.UserId)
                        });
                    }
                    party.PartyUsers = listOfPartyUsers;
                    gloomhavenTrackerContext.Parties.Add(party);
                    gloomhavenTrackerContext.SaveChanges();

                    partyService.AddPartyItems(party.Id, party.Prosperity);
                }
            }
            return(RedirectToAction("Index"));
        }
예제 #3
0
        public PartyCreateViewModel GetEditDetail(long id)
        {
            var ds = dal.GetEditDetail(id);
            PartyCreateViewModel model = new PartyCreateViewModel()
            {
                Party        = ModelConvertHelper <Activity> .ConverToModel(ds.Tables[0]),
                PartyFee     = ModelConvertHelper <ActivityFee> .ConvertToList(ds.Tables[1]),
                JoinItemQues = ModelConvertHelper <JoinItemQuestionExt> .ConvertToList(ds.Tables[2])
            };

            return(model);
        }
예제 #4
0
        public IActionResult Create()
        {
            using (var gloomhavenTrackerContext = (GloomhavenTrackerContext)provider.GetService(typeof(GloomhavenTrackerContext)))
            {
                var listOfUsers          = gloomhavenTrackerContext.Users.ToList();
                var partyCreateViewModel = new PartyCreateViewModel()
                {
                    Users = new List <ApplicationUserSelected>()
                };
                foreach (var user in listOfUsers)
                {
                    partyCreateViewModel.Users.Add(new ApplicationUserSelected()
                    {
                        Selected = false,
                        UserId   = user.Id,
                        Username = user.UserName
                    });
                }

                return(View(partyCreateViewModel));
            }
        }
예제 #5
0
        public ActionResult Create(PartyCreateViewModel model)
        {
            ResultInfo ri = new ResultInfo();

            BeginTran();

            Activity activity = model.Party;

            activity.Body               = HttpUtility.UrlDecode(activity.Body);
            activity.UserID             = UserID;
            activity.UserName           = UserInfo.UserName;
            activity.ActivityCreateTIme = DateTime.Now;
            activity.PVCount            = 0;
            activity.IsDelete           = 0;

            //UserExt userext = UserExtBLL.Instance.GetExtInfo(UserID);
            ////判断是否触发审核机制:积分大于1000分时,必须要参加审核
            //int mustcheckscore = Convert.ToInt32(ConfigHelper.AppSettings("MustCheckByScore"));
            ////积分大于多少时自动审核
            //int autocheckscore = Convert.ToInt32(ConfigHelper.AppSettings("AutoCheck_NeedScore"));
            //activity.IsChecked = userext.TotalScore >= mustcheckscore ? userext.TotalScore <= autocheckscore ? 1 : 2 : 2;

            //非管理员创建的活动都要经过审核
            activity.IsChecked = UserBaseBLL.Instance.IsMaster ? 2 : 1;

            int result = ActivityBLL.Instance.Add(activity, Tran);

            if (result > 0)
            {
                ri.Url = $"/party/detail/{result}";
                var finalFees = model.PartyFee.Where(item => { return(item.Fee.HasValue && item.FeeCount.HasValue && item.FeeType.HasValue && item.FeeName.IsNotNullOrEmpty()); });
                foreach (var item in finalFees)
                {
                    item.ActivityId = result;
                    item.FeeType    = item.FeeType ?? 0;
                    if (ActivityFeeBLL.Instance.Add(item, Tran) < 1)
                    {
                        result = 0;
                        break;
                    }
                }
                if (result > 0)
                {
                    #region 添加活动报名填写项
                    if (model.JoinItemQues != null)
                    {
                        var finalJoins = model.JoinItemQues.Where(item => { return(item.ItemName.IsNotNullOrEmpty()); });
                        foreach (var item in finalJoins)
                        {
                            item.IsDelete    = 0;
                            item.CreateTime  = DateTime.Now;
                            item.CreateUser  = UserID.ToString();
                            item.UpdateTime  = DateTime.Now;
                            item.UpdateUser  = UserID.ToString();
                            item.IsMustWrite = 1;
                            item.MainID      = result;
                            item.MainType    = 1;
                            if (JoinItemQuestionExtBLL.Instance.Add(item, Tran) < 1)
                            {
                                result = 0;
                                break;
                            }
                        }
                    }
                    #endregion
                    if (result > 0)
                    {
                        Commit();
                        ri.Ok = true;
                        string uri = ConfigHelper.AppSettings("PartyDetail").FormatWith(result);
                        if (activity.IsChecked == 1)
                        {
                            //通知审核
                            noticeService.On_BBS_Article_Publish_Success_Notice(UserInfo, uri, model.Party.Title, 3);
                            ri.Msg = "活动创建成功,您发布的活动成功触发系统审核机制,等待管理员审核成功后即可在页面里查看";
                            ri.Url = "/";
                        }
                        else
                        {
                            ri.Msg = "活动创建成功";
                            ri.Url = uri;
                            //通知
                            NoticeBLL.Instance.OnAdd_Notice_Liker(UserInfo.UserName, UserID, uri, activity.Title, NoticeTypeEnum.Party_Add, GetDomainName);
                        }
                    }
                    else
                    {
                        RollBack();
                        ri.Msg = "活动创建失败";
                        ri.Url = string.Empty;
                    }
                }
                else
                {
                    RollBack();
                    ri.Msg = "活动创建失败";
                    ri.Url = string.Empty;
                }
            }
            else
            {
                RollBack();
            }
            return(Result(ri));
        }
예제 #6
0
        public ActionResult Edit(PartyCreateViewModel model)
        {
            ResultInfo ri = new ResultInfo();

            if (model.Party.ActivityId == model.PartyFee[0].ActivityId)
            {
                Activity _model = ActivityBLL.Instance.GetModel(model.Party.ActivityId);
                if (_model != null)
                {
                    if (_model.IsDelete == 0)
                    {
                        BeginTran();

                        _model.Title          = model.Party.Title;
                        _model.ActivityIMG    = model.Party.ActivityIMG;
                        _model.BeginTime      = model.Party.BeginTime;
                        _model.EndTime        = model.Party.EndTime;
                        _model.CanJoinOnBegin = model.Party.CanJoinOnBegin;
                        _model.JoinBeginTime  = model.Party.JoinBeginTime;
                        _model.JoinEndTime    = model.Party.JoinEndTime;
                        _model.Address        = model.Party.Address;
                        _model.Body           = HttpUtility.UrlDecode(model.Party.Body);

                        if (ActivityBLL.Instance.Update(_model, Tran).Ok)
                        {
                            var finalFees = model.PartyFee.Where(item => { return(item.Fee.HasValue && item.FeeCount.HasValue && item.FeeType.HasValue && item.FeeName.IsNotNullOrEmpty()); });
                            //更新费用
                            foreach (ActivityFee fee in finalFees)
                            {
                                if (fee.ActivityFeeId > 0)
                                {
                                    if (fee.ActivityId == _model.ActivityId)
                                    {
                                        //更新
                                        var feeModel = ActivityFeeBLL.Instance.GetModel(fee.ActivityFeeId);
                                        feeModel.FeeType    = fee.FeeType;
                                        feeModel.FeeName    = fee.FeeName;
                                        feeModel.Fee        = fee.Fee;
                                        feeModel.FeeCount   = fee.FeeCount;
                                        feeModel.ActivityId = _model.ActivityId;

                                        if (ActivityFeeBLL.Instance.Update(feeModel, Tran).Ok)
                                        {
                                            ri.Ok = true;
                                        }
                                        else
                                        {
                                            ri.Ok = false;
                                            break;
                                        }
                                    }
                                    else
                                    {
                                        ri.Ok  = false;
                                        ri.Msg = "该活动费用列表异常!";
                                        break;
                                    }
                                }
                                else
                                {
                                    fee.ActivityId = model.Party.ActivityId;
                                    if (ActivityFeeBLL.Instance.Add(fee, Tran) > 0)
                                    {
                                        ri.Ok = true;
                                    }
                                    else
                                    {
                                        ri.Ok = false;
                                        break;
                                    }
                                }
                            }
                            if (ri.Ok)
                            {
                                //更新报名填写项
                                if (model.JoinItemQues != null)
                                {
                                    var finalJoins = model.JoinItemQues.Where(item => { return(item.ItemName.IsNotNullOrEmpty()); });
                                    foreach (var item in finalJoins)
                                    {
                                        if (item.JoinItemQuestionExtId > 0)
                                        {
                                            if (item.MainID == _model.ActivityId)
                                            {
                                                //更新
                                                var joinItem = JoinItemQuestionExtBLL.Instance.GetModel(item.JoinItemQuestionExtId);
                                                joinItem.ItemName   = item.ItemName;
                                                joinItem.UpdateTime = DateTime.Now;
                                                joinItem.UpdateUser = UserID.ToString();
                                                if (JoinItemQuestionExtBLL.Instance.Update(joinItem, Tran).Ok)
                                                {
                                                    ri.Ok = true;
                                                }
                                                else
                                                {
                                                    ri.Ok = false;
                                                    break;
                                                }
                                            }
                                            else
                                            {
                                                ri.Ok = false;
                                                break;
                                            }
                                        }
                                        else
                                        {
                                            item.MainID      = model.Party.ActivityId;
                                            item.MainType    = 1;
                                            item.CreateTime  = DateTime.Now;
                                            item.CreateUser  = UserID.ToString();
                                            item.UpdateTime  = DateTime.Now;
                                            item.UpdateUser  = UserID.ToString();
                                            item.IsDelete    = 0;
                                            item.IsMustWrite = 1;
                                            if (JoinItemQuestionExtBLL.Instance.Add(item, Tran) > 0)
                                            {
                                                ri.Ok = true;
                                            }
                                            else
                                            {
                                                ri.Ok = false;
                                                break;
                                            }
                                        }
                                    }
                                }
                                if (ri.Ok)
                                {
                                    ri.Msg = "编辑成功";
                                    Commit();
                                }
                                else
                                {
                                    RollBack();
                                }
                            }
                            else
                            {
                                RollBack();
                            }
                        }
                    }
                    else
                    {
                        ri.Msg = "该活动已被删除";
                    }
                }
                else
                {
                    ri.Msg = "异常";
                }
            }
            else
            {
                ri.Msg = "异常";
            }
            return(Result(ri));
        }