public bool CheckIfNameExists(string name, int?id = null)
        {
            if (string.IsNullOrWhiteSpace(name))
            {
                throw new ArgumentException(Constant.Validation.CantBeNullOrEmpty(nameof(name)));
            }

            if (id.HasValue && id.Value <= 0)
            {
                throw new ArgumentException(Constant.Validation.InvalidArgument(nameof(id)));
            }

            return(id.HasValue
                ? _taskTypeRepository.Query().Any(t => t.Name == name && t.Id != id.Value)
                : _taskTypeRepository.Query().Any(t => t.Name == name));
        }