public ActionResult EditEndUserLimit([Bind("Id,DailyLimitAmount,DailyLimitCount,MonthlyLimitAmount,MonthlyLimitCount")] EndUserLimitDTO endUserLimitDTO)
        {
            if (endUserLimitDTO != null)
            {
                EndUserLimit updateEndUserLimit = _businessLayer.GetAllEndUserLimits().Where(x => x.Id == endUserLimitDTO.Id).SingleOrDefault();

                if (updateEndUserLimit != null)
                {
                    updateEndUserLimit.DailyLimitCount    = endUserLimitDTO.DailyLimitCount;
                    updateEndUserLimit.DailyLimitAmount   = endUserLimitDTO.DailyLimitAmount;
                    updateEndUserLimit.MonthlyLimitCount  = endUserLimitDTO.MonthlyLimitCount;
                    updateEndUserLimit.MonthlyLimitAmount = endUserLimitDTO.MonthlyLimitAmount;

                    updateEndUserLimit.EntityState = EntityState.Modified;

                    _businessLayer.UpdateEndUserLimit(updateEndUserLimit);
                    return(Ok(updateEndUserLimit));
                }

                else
                {
                    return(new JsonResult(new { HttpStatusCode = NotFound(HttpStatusCode.BadRequest), Message = "EndUserLimit Not found" }));
                }
            }
            else
            {
                return(new JsonResult(new { HttpStatusCode = NotFound(HttpStatusCode.BadRequest), Message = "EndUserLimit Not found" }));
            }
        }
        public ActionResult CreateEndUserLimit([Bind("LoginId,DailyLimitAmount,DailyLimitCount,MonthlyLimitAmount,MonthlyLimitCount")] EndUserLimitDTO endUserLimitDTO)
        {
            try
            {
                EndUserLimit newEndUserLimit = new EndUserLimit();

                if (endUserLimitDTO != null)
                {
                    var user = _businessLayer.GetAllUsers().Where(x => x.LoginId == endUserLimitDTO.LoginId).SingleOrDefault();

                    newEndUserLimit = new EndUserLimit
                    {
                        Id = user.Id,
                        DailyLimitAmount   = endUserLimitDTO.DailyLimitAmount,
                        DailyLimitCount    = endUserLimitDTO.DailyLimitCount,
                        MonthlyLimitAmount = endUserLimitDTO.MonthlyLimitAmount,
                        MonthlyLimitCount  = endUserLimitDTO.MonthlyLimitCount,
                        EntityState        = EntityState.Added
                    };
                    _businessLayer.AddEndUserLimit(newEndUserLimit);
                }
                return(Ok(newEndUserLimit));
            }

            catch (Exception ex)
            {
                //return new JsonResult(new { HttpStatusCode = NotFound(HttpStatusCode.BadRequest), ex.Message });
                throw new Exception(ex.Message);
            }
        }
        public ActionResult DeleteEndUserLimit(int id)
        {
            EndUserLimit deleteEndUserLimit = _businessLayer.GetAllEndUserLimits().Where(x => x.Id == id).SingleOrDefault();

            if (deleteEndUserLimit != null)
            {
                deleteEndUserLimit.EntityState = EntityState.Deleted;
                _businessLayer.RemoveEndUserLimit(deleteEndUserLimit);
                return(Ok(deleteEndUserLimit.Id + " Transaction removed"));
            }

            else
            {
                return(new JsonResult(new { HttpStatusCode = NotFound(HttpStatusCode.BadRequest), Message = "EndUserLimit not found" }));
            }
        }