public async Task <IActionResult> GetAllQuantityTypes()
        {
            var query      = new AllQuantityTypesQuery();
            var readModels = await queryDispatcher.DispatchAsync(query, default);

            var contracts = quantityTypeToContractConverter.ToContract(readModels);

            return(Ok(contracts));
        }
        public Task <IEnumerable <QuantityTypeReadModel> > HandleAsync(AllQuantityTypesQuery query, CancellationToken cancellationToken)
        {
            if (query == null)
            {
                throw new ArgumentNullException(nameof(query));
            }

            var values = Enum.GetValues(typeof(QuantityType))
                         .Cast <QuantityType>()
                         .ToList();
            var readModels = values.Select(v => v.ToReadModel());

            return(Task.FromResult(readModels));
        }