public async Task HandleAsync_GivenGetSentOnAatfSiteRequest_DataAccessIsCalled() { var aatfId = Guid.NewGuid(); var returnId = Guid.NewGuid(); await handler.HandleAsync(new GetWeeeSentOn(aatfId, returnId, null)); A.CallTo(() => getSentOnAatfSiteDataAccess.GetWeeeSentOnByReturnAndAatf(aatfId, returnId)).MustHaveHappened(Repeated.Exactly.Once); }
public async Task <List <WeeeSentOnData> > HandleAsync(GetWeeeSentOn message) { authorization.EnsureCanAccessExternalArea(); var weeeSentOnList = new List <WeeeSentOnData>(); var weeeSentOn = await getSentOnAatfSiteDataAccess.GetWeeeSentOnByReturnAndAatf(message.AatfId, message.ReturnId); foreach (var item in weeeSentOn) { var amount = await fetchWeeeSentOnAmountDataAccess.FetchObligatedWeeeSentOnForReturn(item.Id); var weeeSentOnObligatedData = amount.Select(n => new WeeeObligatedData(n.Id, new AatfData(n.WeeeSentOn.Aatf.Id, n.WeeeSentOn.Aatf.Name, n.WeeeSentOn.Aatf.ApprovalNumber, n.WeeeSentOn.Aatf.ComplianceYear), n.CategoryId, n.NonHouseholdTonnage, n.HouseholdTonnage)).ToList(); var weeeSentOnData = new WeeeSentOnData() { SiteAddress = addressMapper.Map(item.SiteAddress), Tonnages = weeeSentOnObligatedData, WeeeSentOnId = item.Id, SiteAddressId = item.SiteAddress.Id }; if (item.OperatorAddress != null) { weeeSentOnData.OperatorAddress = addressMapper.Map(item.OperatorAddress); weeeSentOnData.OperatorAddressId = item.OperatorAddress.Id; } weeeSentOnList.Add(weeeSentOnData); } if (message.WeeeSentOnId != null) { var weeeSentOnListFiltered = new List <WeeeSentOnData>(); var weeeSentOnSelected = weeeSentOnList.Where(w => w.WeeeSentOnId == message.WeeeSentOnId).Select(w => w).SingleOrDefault(); weeeSentOnListFiltered.Add(weeeSentOnSelected); return(weeeSentOnListFiltered); } return(weeeSentOnList); }