コード例 #1
0
        private static void SaveGroups(EditScoreParameter editScoreParameter, int scoreParameterID)
        {
            var curList = GroupScoreParameters.GetByScoreParameterID(scoreParameterID);

            foreach (var groupID in editScoreParameter.Groups)
            {
                if (!curList.Any(item => item.GroupID == groupID))
                {
                    var groupScoreParameter = new GroupScoreParameter();

                    groupScoreParameter.ScoreParameterID = scoreParameterID;
                    groupScoreParameter.GroupID          = groupID;

                    GroupScoreParameters.Insert(groupScoreParameter);
                }
                else
                {
                    curList.Remove(curList.Single(cls => cls.GroupID == groupID));
                }
            }

            foreach (var item in curList)
            {
                GroupScoreParameters.Delete(item.ID);
            }
        }
コード例 #2
0
        public ActionResult Edit(EditScoreParameter editScoreParameter)
        {
            try
            {
                var parameter = Mapper.Map <ScoreParameter>(editScoreParameter);

                parameter.LastUpdate = DateTime.Now;

                ViewBag.Success = true;

                int scoreParameterID = parameter.ID;
                if (scoreParameterID == -1)
                {
                    ScoreParameters.Insert(parameter);
                    scoreParameterID = parameter.ID;

                    // ثبت و ویرایش گروه های انتخاب شده
                    SaveGroups(editScoreParameter, scoreParameterID);

                    UserNotifications.Send(UserID, String.Format("جدید - پارامتر امتیازدهی '{0}'", editScoreParameter.Title), "/Admin/ScoreParameters/Edit/" + editScoreParameter.ID, NotificationType.Success);
                    editScoreParameter = new EditScoreParameter();
                }
                else
                {
                    ScoreParameters.Update(parameter);

                    // ثبت و ویرایش گروه های انتخاب شده
                    SaveGroups(editScoreParameter, scoreParameterID);

                    editScoreParameter.Groups = GroupScoreParameters.GetByScoreParameterID(scoreParameterID).Select(item => item.GroupID).ToList();
                }
            }
            catch (Exception ex)
            {
                SetErrors(ex);
            }

            return(ClearView(editScoreParameter));
        }
コード例 #3
0
        public ActionResult Edit(int?id)
        {
            EditScoreParameter parameter;

            if (id.HasValue)
            {
                var editScore = ScoreParameters.GetByID(id.Value);

                parameter = new EditScoreParameter
                {
                    ID       = editScore.ID,
                    IsActive = editScore.IsActive,
                    Title    = editScore.Title,
                    Groups   = GroupScoreParameters.GetByScoreParameterID(id.Value).Select(item => item.GroupID).ToList()
                };
            }
            else
            {
                parameter = new EditScoreParameter();
            }

            return(View(parameter));
        }