// POST: api/RewardRedemption public IHttpActionResult Post(CreateRewardRedemptionModel model) { if (!ModelState.IsValid) { return(BadRequest()); } //check if code already exist var rwd = db.RewardRedemption.Where(r => r.RewardCode == model.RewardCode).FirstOrDefault(); if (rwd != null) { return(BadRequest("Reward Code already exist. Please use another code")); } var rewardRedemption = new RewardRedemption { RewardCode = model.RewardCode, Description = model.Description, DiscountValue = model.DiscountValue, PointsToRedeem = model.PointsToRedeem, ValidDuration = model.ValidDuration, CreatedBy = model.CreatedBy.Value, CreatedDate = DateTime.Now, Display = true }; db.RewardRedemption.Add(rewardRedemption); db.SaveChanges(); return(Ok(rewardRedemption)); }
// PUT: api/RewardRedemption/5 public IHttpActionResult Put(int id, EditRewardRedemptionModel model) { if (!ModelState.IsValid) { return(BadRequest()); } if (id != model.Id) { return(BadRequest()); } RewardRedemption obj = db.RewardRedemption.Where(r => r.Id == id).FirstOrDefault(); obj.Description = model.Description; obj.DiscountValue = model.DiscountValue; obj.RewardCode = model.RewardCode; obj.PointsToRedeem = model.PointsToRedeem; obj.ValidDuration = model.ValidDuration; obj.CreatedBy = model.CreatedBy.Value; obj.CreatedDate = DateTime.Now; db.Entry(obj).State = EntityState.Modified; db.Entry(obj).Property(x => x.Description).IsModified = true; db.Entry(obj).Property(x => x.RewardCode).IsModified = true; db.Entry(obj).Property(x => x.DiscountValue).IsModified = true; db.Entry(obj).Property(x => x.PointsToRedeem).IsModified = true; db.Entry(obj).Property(x => x.ValidDuration).IsModified = true; db.Entry(obj).Property(x => x.CreatedBy).IsModified = true; db.Entry(obj).Property(x => x.CreatedDate).IsModified = true; db.Configuration.ValidateOnSaveEnabled = true; db.SaveChanges(); return(Ok()); }
public RewardRedemptionDto(RewardRedemption rewardRedemption) { Id = rewardRedemption.Id; RewardTitle = rewardRedemption.RewardTitle; PointsSpent = rewardRedemption.PointsSpent; ExtraCashSpent = rewardRedemption.ExtraCashSpent; RedemptionDate = rewardRedemption.RedemptionDate; }
// DELETE: api/RewardRedemption/5 public IHttpActionResult Delete(int id) { RewardRedemption model = db.RewardRedemption.Find(id); if (model == null) { return(BadRequest()); } model.Display = false; db.RewardRedemption.Attach(model); db.Entry(model).Property(x => x.Display).IsModified = true; db.Configuration.ValidateOnSaveEnabled = true; db.SaveChanges(); return(Ok()); }