public async Task<DarumaView> ChangeStatus(DarumaView daruma, DarumaStatus status)
        {
            DarumaDomain darumaDomain = await _storage.GetById(daruma.Id);
            darumaDomain.ChangeStatus(status);
            await _storage.Update(darumaDomain);

            return new DarumaView(darumaDomain, _imageUriResolver);
        }
Exemplo n.º 2
0
 public static DarumaDomain BuildDaruma(DarumaView darumaView)
 {
     return new DarumaDomainBuilder
     {
         Id = darumaView.Id,
         Wish = darumaView.Wish,
         Theme = darumaView.Theme,
         CreateDate = darumaView.CreateDate,
         Status = darumaView.Status,
         CurrentQuoteKey = darumaView.CurrentQuoteKey
     };
 }
        //TODO: may be need move to darumaDomain object
        public async Task<DarumaView> TryExecuteWish(DarumaView darumaView)
        {
            if (darumaView.Status != DarumaStatus.MakedWish)
                return darumaView;

            DarumaDomain daruma = await _storage.GetById(darumaView.Id);

            daruma.ChangeStatus(DarumaStatus.ExecutedWish);
            await _storage.Update(daruma);

            return new DarumaView(daruma, _imageUriResolver);
        }
 public async Task<bool> Delete(DarumaView daruma)
 {
     return await _darumaService.DeleteDaruma(daruma);
 }
 public async Task ChangeToTimeExpired()
 {
     _daruma = await _darumaService.ChangeStatus(_daruma, DarumaStatus.TimeExpired);
 }
 public async Task<bool> DeleteDaruma(DarumaView daruma)
 {           
     return await _storage.Delete(daruma.Id);            
 }
        public async Task<string> UpdateDarumaQuotation(DarumaView daruma)
        {
            var quotationSourse = GetQuotationByDarumaTheme(daruma.Theme);

            daruma.CurrentQuoteKey = quotationSourse.Key;
            await _storage.Update(DarumaDomainBuilder.BuildDaruma(daruma));

            return quotationSourse.Value;
        }