コード例 #1
0
ファイル: TodoDao.cs プロジェクト: ntptphuongthaohd/Pregnancy
        public IQueryable <preg_todo> GetItemsByParams(preg_todo data)
        {
            IQueryable <preg_todo> result = connect.preg_todo;

            for (int i = 0; i < data.GetType().GetProperties().ToList().Count(); i++)
            {
                string propertyName  = data.GetType().GetProperties().ToList()[i].Name;
                var    propertyValue = data.GetType().GetProperty(propertyName).GetValue(data, null);
                if (propertyName == "id" && (int)propertyValue != 0)
                {
                    result = result.Where(c => c.id == (int)(propertyValue));
                }
                else if (propertyName == "day_id" && propertyValue != null)
                {
                    result = result.Where(c => c.day_id == (int)(propertyValue));
                }
                else if (propertyName == "title" && propertyValue != null)
                {
                    result = result.Where(c => SqlFunctions.PatIndex("%" + propertyValue.ToString() + "%", c.title) > 0);
                }
                else if (propertyName == "custom_task_by_user_id" && propertyValue != null)
                {
                    result = result.Where(c => c.custom_task_by_user_id == (int)(propertyValue));
                }
            }
            return(result);
        }
コード例 #2
0
 public HttpResponseMessage Post([FromBody] preg_todo data)
 {
     try
     {
         int user_id = Convert.ToInt32(((ClaimsIdentity)(User.Identity)).FindFirst("id").Value);
         if (!data.DeepEquals(new preg_todo()))
         {
             if (data.custom_task_by_user_id != null)
             {
                 data.custom_task_by_user_id = user_id;
             }
             dao.InsertData(data);
             return(Request.CreateResponse(HttpStatusCode.Created, SysConst.DATA_INSERT_SUCCESS));
         }
         else
         {
             HttpError err = new HttpError(SysConst.DATA_NOT_EMPTY);
             return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, err));
         }
     }
     catch (Exception ex)
     {
         HttpError err = new HttpError(ex.Message);
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, err));
     }
 }
コード例 #3
0
        public HttpResponseMessage Post([FromBody] preg_user_todo data)
        {
            try
            {
                int user_id = Convert.ToInt32(((ClaimsIdentity)(User.Identity)).FindFirst("id").Value);
                if (data.todo_id != 0)
                {
                    //Check exist
                    preg_user_todo checkExist = dao.GetItemByParams(new preg_user_todo()
                    {
                        user_id = user_id, todo_id = data.todo_id
                    }).FirstOrDefault();
                    if (checkExist != null)
                    {
                        return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, SysConst.DATA_EXIST));
                    }

                    //Check Todo Exist
                    using (PregnancyEntity connect = new PregnancyEntity())
                    {
                        preg_todo checkTodoExist = connect.preg_todo.Where(c => c.id == data.todo_id).FirstOrDefault();
                        if (checkTodoExist == null)
                        {
                            return(Request.CreateErrorResponse(HttpStatusCode.NotFound, SysConst.DATA_NOT_FOUND));
                        }
                    }

                    data.user_id = user_id;
                    if (dao.InsertData(data))
                    {
                        return(Request.CreateResponse(HttpStatusCode.Created, SysConst.DATA_INSERT_SUCCESS));
                    }
                    else
                    {
                        HttpError err = new HttpError(SysConst.DATA_EXIST);
                        return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, err));
                    }
                }
                else
                {
                    HttpError err = new HttpError(SysConst.DATA_NOT_EMPTY);
                    return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, err));
                }
            }
            catch (Exception ex)
            {
                HttpError err = new HttpError(ex.Message);
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, err));
            }
        }
コード例 #4
0
 public HttpResponseMessage Delete(string id)
 {
     try
     {
         int       user_id = Convert.ToInt32(((ClaimsIdentity)(User.Identity)).FindFirst("id").Value);
         preg_todo item    = dao.GetItemByID(Convert.ToInt32(id)).Where(c => c.custom_task_by_user_id == null || c.custom_task_by_user_id == user_id).FirstOrDefault();
         if (item == null)
         {
             return(Request.CreateErrorResponse(HttpStatusCode.NotFound, SysConst.DATA_NOT_FOUND));
         }
         dao.DeleteData(item);
         return(Request.CreateResponse(HttpStatusCode.Accepted, SysConst.DATA_DELETE_SUCCESS));
     }
     catch (Exception ex)
     {
         HttpError err = new HttpError(ex.Message);
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, err));
     }
 }
コード例 #5
0
        public HttpResponseMessage UpdateData(string id, [FromBody] preg_todo dataUpdate)
        {
            try
            {
                int user_id = Convert.ToInt32(((ClaimsIdentity)(User.Identity)).FindFirst("id").Value);
                if (!dataUpdate.DeepEquals(new preg_todo()))
                {
                    preg_todo todo = new preg_todo();
                    todo = dao.GetItemByID(Convert.ToInt32(id)).Where(c => c.custom_task_by_user_id == null || c.custom_task_by_user_id == user_id).FirstOrDefault();
                    if (todo == null)
                    {
                        return(Request.CreateErrorResponse(HttpStatusCode.NotFound, SysConst.DATA_NOT_FOUND));
                    }
                    if (dataUpdate.day_id != null)
                    {
                        todo.day_id = dataUpdate.day_id;
                    }
                    if (dataUpdate.title != null)
                    {
                        todo.title = dataUpdate.title;
                    }
                    if (dataUpdate.custom_task_by_user_id != null)
                    {
                        todo.custom_task_by_user_id = user_id;
                    }

                    dao.UpdateData(todo);
                    return(Request.CreateResponse(HttpStatusCode.Accepted, SysConst.DATA_UPDATE_SUCCESS));
                }
                else
                {
                    HttpError err = new HttpError(SysConst.DATA_NOT_EMPTY);
                    return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, err));
                }
            }
            catch (Exception ex)
            {
                HttpError err = new HttpError(ex.Message);
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, err));
            }
        }
コード例 #6
0
 public HttpResponseMessage Get(string id)
 {
     try
     {
         int       user_id = Convert.ToInt32(((ClaimsIdentity)(User.Identity)).FindFirst("id").Value);
         preg_todo data    = dao.GetItemByID(Convert.ToInt32(id)).Where(c => c.custom_task_by_user_id == null || c.custom_task_by_user_id == user_id).FirstOrDefault();
         if (data != null)
         {
             return(Request.CreateResponse(HttpStatusCode.OK, data));
         }
         else
         {
             HttpError err = new HttpError(SysConst.DATA_NOT_FOUND);
             return(Request.CreateErrorResponse(HttpStatusCode.NotFound, err));
         }
     }
     catch (Exception ex)
     {
         HttpError err = new HttpError(ex.Message);
         return(Request.CreateErrorResponse(HttpStatusCode.NotFound, err));
     }
 }
コード例 #7
0
 public HttpResponseMessage Get([FromUri] preg_todo data)
 {
     try
     {
         int user_id = Convert.ToInt32(((ClaimsIdentity)(User.Identity)).FindFirst("id").Value);
         if (!data.DeepEquals(new preg_todo()))
         {
             IEnumerable <preg_todo> result = dao.GetItemsByParams(data).Where(c => c.custom_task_by_user_id == null || c.custom_task_by_user_id == user_id);
             if (result.Count() > 0)
             {
                 return(Request.CreateResponse(HttpStatusCode.OK, result));
             }
             else
             {
                 HttpError err = new HttpError(SysConst.DATA_NOT_FOUND);
                 return(Request.CreateErrorResponse(HttpStatusCode.NotFound, err));
             }
         }
         else
         {
             IEnumerable <preg_todo> result = dao.GetListItem().Where(c => c.custom_task_by_user_id == null || c.custom_task_by_user_id == user_id);
             if (result.Count() > 0)
             {
                 return(Request.CreateResponse(HttpStatusCode.OK, result));
             }
             else
             {
                 HttpError err = new HttpError(SysConst.DATA_NOT_FOUND);
                 return(Request.CreateErrorResponse(HttpStatusCode.NotFound, err));
             }
         }
     }
     catch (Exception ex)
     {
         HttpError err = new HttpError(ex.Message);
         return(Request.CreateErrorResponse(HttpStatusCode.NotFound, err));
     }
 }
コード例 #8
0
 public HttpResponseMessage Put(string id, [FromBody] preg_todo dataUpdate)
 {
     return(UpdateData(id, dataUpdate));
 }
コード例 #9
0
ファイル: TodoDao.cs プロジェクト: ntptphuongthaohd/Pregnancy
 public void DeleteData(preg_todo item)
 {
     connect.preg_todo.Remove(item);
     connect.SaveChanges();
 }
コード例 #10
0
ファイル: TodoDao.cs プロジェクト: ntptphuongthaohd/Pregnancy
 public void UpdateData(preg_todo item)
 {
     connect.SaveChanges();
 }
コード例 #11
0
ファイル: TodoDao.cs プロジェクト: ntptphuongthaohd/Pregnancy
 public void InsertData(preg_todo item)
 {
     connect.preg_todo.Add(item);
     connect.SaveChanges();
 }