Example #1
0
 public HttpResponseMessage Get([FromUri] preg_daily_interact data)
 {
     try
     {
         int user_id = Convert.ToInt32(((ClaimsIdentity)(User.Identity)).FindFirst("id").Value);
         IEnumerable <preg_daily_interact> result;
         if (!data.DeepEquals(new preg_daily_interact()))
         {
             data.user_id = user_id;
             result       = dao.GetItemsByParams(data);
         }
         else
         {
             result = dao.GetListItem().Where(c => c.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));
     }
 }
Example #2
0
        protected HttpResponseMessage UpdateData(string daily_id, string user_id, preg_daily_interact dataUpdate)
        {
            try
            {
                if (!dataUpdate.DeepEquals(new preg_daily_interact()))
                {
                    preg_daily_interact dailyInteract = new preg_daily_interact();
                    dailyInteract = dao.GetItemByID(Convert.ToInt32(daily_id), Convert.ToInt32(user_id)).FirstOrDefault();
                    if (dailyInteract == null)
                    {
                        return(Request.CreateErrorResponse(HttpStatusCode.NotFound, SysConst.DATA_NOT_FOUND));
                    }
                    if (dataUpdate.like != null)
                    {
                        dailyInteract.like = dataUpdate.like;
                    }
                    if (dataUpdate.comment != null)
                    {
                        dailyInteract.comment = dataUpdate.comment;
                        if (dataUpdate.comment.ToLower() == "null")
                        {
                            dailyInteract.comment = null;
                        }
                    }
                    if (dataUpdate.share != null)
                    {
                        dailyInteract.share = dataUpdate.share;
                    }
                    if (dataUpdate.notification != null)
                    {
                        dailyInteract.notification = dataUpdate.notification;
                    }
                    if (dataUpdate.status != null)
                    {
                        dailyInteract.status = dataUpdate.status;
                    }

                    dao.UpdateData(dailyInteract);
                    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));
            }
        }
Example #3
0
 public HttpResponseMessage Delete(string daily_id)
 {
     try
     {
         int user_id = Convert.ToInt32(((ClaimsIdentity)(User.Identity)).FindFirst("id").Value);
         preg_daily_interact daily_interact = dao.GetItemByID(Convert.ToInt32(daily_id), user_id).FirstOrDefault();
         if (daily_interact == null)
         {
             return(Request.CreateErrorResponse(HttpStatusCode.NotFound, SysConst.DATA_NOT_FOUND));
         }
         dao.DeleteData(daily_interact);
         return(Request.CreateResponse(HttpStatusCode.Accepted, SysConst.DATA_DELETE_SUCCESS));
     }
     catch (Exception ex)
     {
         HttpError err = new HttpError(ex.Message);
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, err));
     }
 }
Example #4
0
        public HttpResponseMessage Post([FromBody] preg_daily_interact data)
        {
            try
            {
                int user_id = Convert.ToInt32(((ClaimsIdentity)(User.Identity)).FindFirst("id").Value);
                if (data.daily_id != 0)
                {
                    //Check exist
                    preg_daily_interact checkExist = dao.GetItemByID(data.daily_id, user_id).FirstOrDefault();
                    if (checkExist != null)
                    {
                        return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, SysConst.DATA_EXIST));
                    }

                    //Check Daily Exist
                    using (PregnancyEntity connect = new PregnancyEntity())
                    {
                        preg_daily checkDailyExist = connect.preg_daily.Where(c => c.id == data.daily_id).FirstOrDefault();
                        if (checkDailyExist == null)
                        {
                            return(Request.CreateErrorResponse(HttpStatusCode.NotFound, SysConst.DATA_NOT_FOUND));
                        }
                    }

                    data.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));
            }
        }
Example #5
0
        public IQueryable <preg_daily_interact> GetItemsByParams(preg_daily_interact data)
        {
            IQueryable <preg_daily_interact> result = connect.preg_daily_interact;

            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 == "daily_id" && (int)(propertyValue) != 0)
                {
                    result = result.Where(c => c.daily_id == (int)(propertyValue));
                }
                else if (propertyName == "user_id" && (int)(propertyValue) != 0)
                {
                    result = result.Where(c => c.user_id == (int)(propertyValue));
                }
                else if (propertyName == "like" && propertyValue != null)
                {
                    result = result.Where(c => c.like == (int)(propertyValue));
                }
                else if (propertyName == "comment" && propertyValue != null)
                {
                    result = result.Where(c => SqlFunctions.PatIndex("%" + propertyValue.ToString() + "%", c.comment) > 0);
                }
                else if (propertyName == "share" && propertyValue != null)
                {
                    result = result.Where(c => c.share == (int)(propertyValue));
                }
                else if (propertyName == "notification" && propertyValue != null)
                {
                    result = result.Where(c => c.notification == (int)(propertyValue));
                }
                else if (propertyName == "status" && propertyValue != null)
                {
                    result = result.Where(c => c.status == (int)(propertyValue));
                }
            }
            return(result);
        }
Example #6
0
 public void DeleteData(preg_daily_interact item)
 {
     connect.preg_daily_interact.Remove(item);
     connect.SaveChanges();
 }
Example #7
0
 public void UpdateData(preg_daily_interact item)
 {
     connect.SaveChanges();
 }
Example #8
0
 public void InsertData(preg_daily_interact item)
 {
     connect.preg_daily_interact.Add(item);
     connect.SaveChanges();
 }
Example #9
0
        public HttpResponseMessage Put(string daily_id, [FromBody] preg_daily_interact dataUpdate)
        {
            int user_id = Convert.ToInt32(((ClaimsIdentity)(User.Identity)).FindFirst("id").Value);

            return(UpdateData(daily_id, user_id.ToString(), dataUpdate));
        }