public dynamic postDraftclaimJSON(claimJSON claimJSON)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }
            if (claimJSON.claimPurpose == null)
                claimJSON.claimPurpose = " ";
            if (claimJSON.claimNo == null)

            {
                claimJSON.claimNo = "Draft/" + db.getNextClaimNo(claimJSON.EmpId).FirstOrDefault();

                db.claimJSONs.Add(claimJSON);

            try
            {
                if (db.SaveChanges() == 1)
                {
                    createClaimLog(claimJSON.id, claimJSON.claimstatus, claimJSON.EmpId, "Draft Claim Created");
                };
            }
            catch (DbUpdateException)
            {
                if (claimJSONExists(claimJSON.id))
                {
                    return Conflict();
                }
                else
                {
                    throw;
                }
            }
            }
            else
            {
                claimJSON claim = new claimJSON();
                claim = db.claimJSONs.Find(claimJSON.id);

                claim.claimPurpose = claimJSON.claimPurpose;
                claim.claimText = claimJSON.claimText;
                claim.totalAmount = claimJSON.totalAmount;
                claim.ClaimPeriodFrom = claimJSON.ClaimPeriodFrom;
                claim.ClaimPeriodTo = claimJSON.ClaimPeriodTo;

                db.Entry(claim).State = EntityState.Modified;

                if (db.SaveChanges() == 1)
                {
                    createClaimLog(claimJSON.id, claimJSON.claimstatus, claimJSON.EmpId, "Draft Claim Updated");
                };
            }
            return claimJSON;
        }
        public IHttpActionResult PutclaimJSON(int id, claimJSON claimJSON)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            if (id != claimJSON.id)
            {
                return BadRequest();
            }

            db.Entry(claimJSON).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!claimJSONExists(id))
                {
                    return NotFound();
                }
                else
                {
                    throw;
                }
            }

            return StatusCode(HttpStatusCode.NoContent);
        }
        public IHttpActionResult PostclaimJSON(claimJSON claimJSON)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            claimJSON.claimNo = db.getNextClaimNo(claimJSON.EmpId).FirstOrDefault();

            db.claimJSONs.Add(claimJSON);

            try
            {
                if (db.SaveChanges() == 1) {
                    createClaimLog(claimJSON.id, claimJSON.claimstatus, claimJSON.EmpId, "Claim Created");

                };
            }
            catch (DbUpdateException)
            {
                if (claimJSONExists(claimJSON.id))
                {
                    return Conflict();
                }
                else
                {
                    throw;
                }
            }

            return CreatedAtRoute("DefaultApi", new { id = claimJSON.id }, claimJSON);
        }