1
0
mirror of https://github.com/bitwarden/server.git synced 2025-07-02 16:42:50 -05:00

billing response for org

This commit is contained in:
Kyle Spearrin
2017-08-14 22:05:37 -04:00
parent 5370c2303e
commit 63a82336c6
3 changed files with 34 additions and 10 deletions

View File

@ -51,10 +51,22 @@ namespace Bit.Core.Models.Api
Subscription = billing.Subscription != null ? new BillingSubscription(billing.Subscription) : null;
Charges = billing.Charges.Select(c => new BillingCharge(c));
UpcomingInvoice = billing.UpcomingInvoice != null ? new BillingInvoice(billing.UpcomingInvoice) : null;
StorageName = organization.Storage.HasValue ?
StorageName = organization.Storage.HasValue ?
Utilities.CoreHelpers.ReadableBytesSize(organization.Storage.Value) : null;
StorageGb = organization.Storage.HasValue ? Math.Round(organization.Storage.Value / 1073741824D) : 0; // 1 GB
MaxStorageGb = organization.MaxStorageGb;
// License = ...
Expiration = DateTime.UtcNow.AddYears(1);
}
public OrganizationBillingResponseModel(Organization organization)
: base(organization, "organizationBilling")
{
StorageName = organization.Storage.HasValue ?
Utilities.CoreHelpers.ReadableBytesSize(organization.Storage.Value) : null;
StorageGb = organization.Storage.HasValue ? Math.Round(organization.Storage.Value / 1073741824D, 2) : 0; // 1 GB
MaxStorageGb = organization.MaxStorageGb;
Expiration = organization.ExpirationDate;
}
public string StorageName { get; set; }
@ -64,5 +76,7 @@ namespace Bit.Core.Models.Api
public BillingSubscription Subscription { get; set; }
public BillingInvoice UpcomingInvoice { get; set; }
public IEnumerable<BillingCharge> Charges { get; set; }
public OrganizationLicense License { get; set; }
public DateTime? Expiration { get; set; }
}
}

View File

@ -19,6 +19,7 @@ namespace Bit.Core.Services
Task VerifyBankAsync(Guid organizationId, int amount1, int amount2);
Task<Tuple<Organization, OrganizationUser>> SignUpAsync(OrganizationSignup organizationSignup);
Task<Tuple<Organization, OrganizationUser>> SignUpAsync(OrganizationLicense license, User owner, string ownerKey);
Task UpdateLicenseAsync(Guid organizationId, OrganizationLicense license);
Task DeleteAsync(Organization organization);
Task DisableAsync(Guid organizationId, DateTime? expirationDate);
Task UpdateExpirationDateAsync(Guid organizationId, DateTime? expirationDate);