mirror of
https://github.com/btcpayserver/btcpayserver.git
synced 2025-02-22 14:22:40 +01:00
* Editorconfig: Add space_before_self_closing setting This was a difference between the way dotnet-format and Rider format code. See https://www.jetbrains.com/help/rider/EditorConfig_Index.html * Editorconfig: Keep 4 spaces indentation for Swagger JSON files They are all formatted that way, let's keep it like that. * Apply dotnet-format, mostly white-space related changes
41 lines
931 B
C#
41 lines
931 B
C#
using System;
|
|
using System.Threading.Tasks;
|
|
using BTCPayServer.Data;
|
|
using BTCPayServer.Models.AppViewModels;
|
|
using BTCPayServer.Services.Apps;
|
|
using BTCPayServer.Services.Stores;
|
|
using Microsoft.AspNetCore.Identity;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
namespace BTCPayServer.Components.AppSales;
|
|
|
|
public enum AppSalesPeriod
|
|
{
|
|
Week,
|
|
Month
|
|
}
|
|
|
|
public class AppSales : ViewComponent
|
|
{
|
|
private readonly AppService _appService;
|
|
|
|
public AppSales(AppService appService)
|
|
{
|
|
_appService = appService;
|
|
}
|
|
|
|
public async Task<IViewComponentResult> InvokeAsync(AppSalesViewModel vm)
|
|
{
|
|
if (vm.App == null)
|
|
throw new ArgumentNullException(nameof(vm.App));
|
|
if (vm.InitialRendering)
|
|
return View(vm);
|
|
|
|
var stats = await _appService.GetSalesStats(vm.App);
|
|
|
|
vm.SalesCount = stats.SalesCount;
|
|
vm.Series = stats.Series;
|
|
|
|
return View(vm);
|
|
}
|
|
}
|