public async Task <IActionResult> PutAdministrativeUnit(int id, PublicApi.v1.DTO.AdministrativeUnit administrativeUnit)
        {
            if (id != administrativeUnit.Id)
            {
                return(BadRequest());
            }

            // check for the ownership - is this Person record really belonging to logged in user.
            if (!await _bll.AdministrativeUnits.BelongsToUserAsync(id, User.GetUserId()))
            {
                return(NotFound());
            }

            administrativeUnit.AppUserId = User.GetUserId();

            _bll.AdministrativeUnits.Update(PublicApi.v1.Mappers.AdministrativeUnitMapper.MapFromExternal(administrativeUnit));
            await _bll.SaveChangesAsync();


            return(NoContent());
        }
        public async Task <ActionResult <AdministrativeUnit> > PostAdministrativeUnit(PublicApi.v1.DTO.AdministrativeUnit administrativeUnit)
        {
            administrativeUnit.AppUserId = User.GetUserId();

            administrativeUnit = PublicApi.v1.Mappers.AdministrativeUnitMapper.MapFromBLL(
                _bll.AdministrativeUnits.Add(PublicApi.v1.Mappers.AdministrativeUnitMapper.MapFromExternal(administrativeUnit)));
            await _bll.SaveChangesAsync();

            administrativeUnit = PublicApi.v1.Mappers.AdministrativeUnitMapper.MapFromBLL(
                _bll.AdministrativeUnits.GetUpdatesAfterUOWSaveChanges(PublicApi.v1.Mappers.AdministrativeUnitMapper.MapFromExternal(administrativeUnit)));

            // get the new id into the object

            return(CreatedAtAction("GetAdministrativeUnit", new { id = administrativeUnit.Id }, administrativeUnit));
        }