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); }
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; }