Example #1
0
        public async Task <TaxEntryDto> InsertTaxEntryAsync(TaxEntryCreateDto taxEntryToInsert)
        {
            var entity           = _mapper.Map <TaxEntry>(taxEntryToInsert);
            var insertedTaxEntry = await _taxRepository.InsertTaxEntryAsync(entity);

            return(_mapper.Map <TaxEntryDto>(insertedTaxEntry));;
        }
Example #2
0
        public async Task <TaxEntryDto> InsertTaxEntryAsync(string municipalityName, TaxEntryCreateDto taxEntry)
        {
            var municipality = _taxRepository.GetMunicipalityAsync(municipalityName);

            if (municipality == null)
            {
                //Todo handle
            }

            var entity = _mapper.Map <TaxEntry>(taxEntry);

            return(_mapper.Map <TaxEntryDto>(await _taxRepository.InsertTaxEntryAsync(entity)));
        }
Example #3
0
        public async Task <IActionResult> AddTaxEntry(string municipalityName, [FromBody] TaxEntryCreateDto taxEntry)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var result = await _taxManager.InsertTaxEntryAsync(municipalityName, taxEntry);

            if (result.Id == 0 || result.Id == null)
            {
                return(NotFound("Insert failed"));
            }

            return(Ok(result));
        }
Example #4
0
        public async Task BeAbleToAddTaxEntry(string dateFrom, string dateTo, int municipalityId, TaxTypes taxType, decimal taxApplied, string municipalityName)
        {
            var dateFromAsDate   = Convert.ToDateTime(dateFrom);
            var dateToAsDate     = Convert.ToDateTime(dateTo);
            var taxEntryToInsert = new TaxEntryCreateDto(dateFromAsDate, dateToAsDate, municipalityId, (int)taxType, taxApplied);
            var taxManager       = new Api.Domain.TaxManager(_testRepository, _mapper);

            var result = await taxManager.InsertTaxEntryAsync(taxEntryToInsert);

            Assert.Equal(taxEntryToInsert.TaxType, result.TaxType);
            Assert.Equal(taxEntryToInsert.DateFrom, result.DateFrom);
            Assert.Equal(taxEntryToInsert.DateTo, result.DateTo);
            Assert.Equal(taxEntryToInsert.MunicipalityId, result.MunicipalityId);
            Assert.Equal(taxEntryToInsert.TaxValue, result.TaxValue);
            Assert.NotNull(result.Id);

            var check = await taxManager.GetMunicipalityTaxForDateAsync(municipalityName, dateFrom);

            AssertResult(taxEntryToInsert.TaxValue, check);
        }