コード例 #1
0
        /// <summary>
        /// Update the maxAllowed number of leaves for a leave type
        /// </summary>
        /// <param name="jobCategory"></param>
        /// <param name="leaveCategory"></param>
        /// <param name="leaveType"></param>
        /// <returns></returns>
        public HttpResponseMessage Put(string jobCategory, string leaveCategory, [FromBody] leave_type leaveType)
        {
            try
            {
                using (ebuilderEntities entities = new ebuilderEntities())
                {
                    var entity = entities.leave_type.FirstOrDefault(lt => lt.jobCategory == jobCategory && lt.leaveCategory == leaveCategory);

                    if (entity == null)
                    {
                        return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Leave type " + leaveCategory + "for" + jobCategory + " not found"));
                    }
                    else
                    {
                        entity.maxAllowed = leaveType.maxAllowed;

                        entities.SaveChanges();
                        return(Request.CreateResponse(HttpStatusCode.OK, entity));
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
コード例 #2
0
        public async System.Threading.Tasks.Task <ActionResult> Create(leave_type newLeaveType)
        {
            var message = "";

            //validate the form data
            if (ModelState.IsValid)
            {
                using (HttpClient client = new HttpClient())
                {
                    client.BaseAddress = new Uri(BaseUrl);
                    client.DefaultRequestHeaders.Accept.Clear();
                    client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/Json"));

                    var json          = JsonConvert.SerializeObject(newLeaveType);
                    var stringContent = new StringContent(json, Encoding.UTF8, "application/json");

                    var response = await client.PostAsync("LeaveTypes", stringContent);

                    if (response.IsSuccessStatusCode)
                    {
                        message = "Successfully created";
                    }
                    else
                    {
                        message = "Some error occured";
                    }
                }
            }
            else
            {
                message = "Invalid data";
            }
            ViewBag.Message = message;
            return(View());
        }
コード例 #3
0
 /// <summary>
 /// Add a new leaveType
 /// </summary>
 /// <param name="leaveType"></param>
 /// <returns></returns>
 public HttpResponseMessage Post([FromBody] leave_type leaveType)
 {
     try
     {
         using (ebuilderEntities entities = new ebuilderEntities())
         {
             entities.leave_type.Add(leaveType);
             entities.SaveChanges();
             var message = Request.CreateResponse(HttpStatusCode.OK, leaveType);
             message.Headers.Location = new Uri(Request.RequestUri + leaveType.jobCategory + leaveType.leaveCategory);
             return(message);
         }
     }
     catch (Exception ex)
     {
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
     }
 }
コード例 #4
0
        public async System.Threading.Tasks.Task <ActionResult> Edit(leave_type newLeaveType)
        {
            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = new Uri(BaseUrl);
                client.DefaultRequestHeaders.Accept.Clear();
                client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/Json"));

                var json          = JsonConvert.SerializeObject(newLeaveType);
                var stringContent = new StringContent(json, Encoding.UTF8, "application/json");

                var response = await client.PutAsync("LeaveTypes?jobCategory=" + newLeaveType.jobCategory + "&leaveCategory=" + newLeaveType.leaveCategory, stringContent);

                if (response.StatusCode == System.Net.HttpStatusCode.OK)
                {
                    ViewBag.Message = "Updating leave types successful";
                }
                else
                {
                    ViewBag.Message = "Error occured";
                }
                return(View());
            }
        }