public ApiResponse <int> AddWorkTask(NewFeedback feed)
        {
            feed.Valid(); //验证feed参数是否有效

            var response = new ApiResponse <int>()
            {
                Result = FeedbackServices.Add(feed)
            };

            return(response);
        }
 /// <summary>
 /// 创建意见反馈
 /// </summary>
 /// <param name="feed"></param>
 /// <param name="currentUser"></param>
 /// <returns></returns>
 public int Add(NewFeedback feed)
 {
     using (var dbContext = new MissionskyOAEntities())
     {
         //创建意见反馈
         var entity = feed.ToEntity();
         dbContext.Feedbacks.Add(entity);
         dbContext.SaveChanges();
         return(entity.Id);
     }
 }
        public ApiResponse <bool> UpdateFeedback(int id, NewFeedback model)
        {
            if (id < 0 || model == null)
            {
                throw new ApiBadRequestException("Bad request");
            }

            ApiResponse <bool> response = new ApiResponse <bool>()
            {
                Result = FeedbackServices.UpdateFeedback(model, id)
            };

            return(response);
        }
        public static Feedback ToEntity(this NewFeedback feed)
        {
            //验证feed
            feed.Valid();

            var entity = new Feedback()
            {
                Desc = feed.Description,
                //PictureID=feed.PictureID,
                ProblemType = (int)feed.ProblemType,
                //Theme=feed.Theme,
                Id         = feed.UserID,
                CreateTime = DateTime.Now
            };

            return(entity);
        }
        /// <summary>
        /// 更新意见反馈
        /// </summary>
        /// <returns>是否更新成功</returns>
        public bool UpdateFeedback(NewFeedback feed, int feedbackID)
        {
            using (var dbContext = new MissionskyOAEntities())
            {
                //查询申请信息是否存在
                var NewFeedbackEntity = dbContext.Feedbacks.Where(it => it.Id == feedbackID).FirstOrDefault();
                if (NewFeedbackEntity == null)
                {
                    throw new Exception("This express doesn't exist.");
                }

                NewFeedbackEntity.Desc        = feed.Description;
                NewFeedbackEntity.Id          = feed.PictureID;
                NewFeedbackEntity.ProblemType = (int)feed.ProblemType;
                //NewFeedbackEntity.Theme = feed.Theme;
                NewFeedbackEntity.UserId     = feed.UserID;
                NewFeedbackEntity.CreateTime = feed.Datetime;
                dbContext.SaveChanges();

                return(true);
            }
        }
        /// <summary>
        /// 验证新的反馈意见是否有效
        /// </summary>
        /// <param name="feed">新的工作任务</param>
        public static void Valid(this NewFeedback feed)
        {
            if (feed == null)
            {
                Log.Error("意见无效");
                throw new InvalidOperationException("意见无效");
            }

            if (string.IsNullOrEmpty(feed.Description))
            {
                Log.Error("问题描述无效");
                throw new InvalidOperationException("问题描述无效");
            }

            if (feed.PictureID <= 0)
            {
                Log.Error("图片无效");
                throw new InvalidOperationException("图片无效");
            }

            if (string.IsNullOrEmpty(feed.Theme))
            {
                Log.Error("主题无效");
                throw new InvalidOperationException("主题无效");
            }

            if (feed.UserID <= 0)
            {
                Log.Error("意见反馈人无效");
                throw new InvalidOperationException("意见反馈人无效");
            }

            //if ((int)feed.ProblemType!=1 || (int)feed.ProblemType!=2)
            //{
            //    Log.Error("问题类型无效");
            //    throw new InvalidOperationException("问题类型无效");
            //}
        }
 public Task CreateAsync(NewFeedback feedback)
 {
     throw new NotImplementedException();
 }