public ActionResult <RequestCategoryDTO> PostRequestCategoryDTO(RequestCategoryDTO requestCategoryDTO)
        {
            _requestCategoryRepository.Add(requestCategoryDTO);
            _requestCategoryRepository.Save();

            return(CreatedAtAction("GetRequestCategoryDTO", new { id = requestCategoryDTO.Id }, requestCategoryDTO));
        }
        public void Update(RequestCategoryDTO requestCategoryDTO)
        {
            var requestCategory = new RequestCategory();

            requestCategory.DepartmentId             = requestCategoryDTO.DepartmentId;
            requestCategory.CategoryName             = requestCategoryDTO.CategoryName;
            _context.Entry(requestCategoryDTO).State = EntityState.Modified;
        }
        public void Add(RequestCategoryDTO requestCategoryDTO)
        {
            var requestCategory = new RequestCategory();

            requestCategory.DepartmentId = requestCategoryDTO.DepartmentId;
            requestCategory.CategoryName = requestCategoryDTO.CategoryName;
            _context.requestCategories.Add(requestCategory);
        }
        public RequestCategoryDTO GetById(int id)
        {
            var cat      = _context.requestCategories.Include(c => c.Department).Where(cat => cat.Id == id).FirstOrDefault();
            var category = new RequestCategoryDTO
            {
                Id             = cat.Id,
                CategoryName   = cat.CategoryName,
                DepartmentId   = cat.DepartmentId,
                DepartmentName = cat.Department.Name
            };

            return(category);
        }
        public IActionResult PutRequestCategoryDTO(int id, RequestCategoryDTO requestCategoryDTO)
        {
            if (id != requestCategoryDTO.Id)
            {
                return(BadRequest());
            }

            _requestCategoryRepository.Update(requestCategoryDTO);

            try
            {
                _requestCategoryRepository.Save();
            }
            catch (DbUpdateConcurrencyException ex)
            {
                string msg = ex.Message;
            }

            return(NoContent());
        }