feat: implement sysadmin subscription management and plan usage cycle recalculation tools
This commit is contained in:
@@ -10,6 +10,7 @@ import CashFlowList from "../../Models/CashFlow/CashFlow";
|
||||
import CompaniesList from "../../Models/Companies/Companies";
|
||||
import PlanSubscriptionsList from "../../Models/PlanSubscriptions/PlanSubscriptons";
|
||||
import MetricsList from "../../Models/Metrics/Metrics";
|
||||
import PlanUsageCycleList from "../../Models/PlanUsageCycle/PlanUsageCycle";
|
||||
|
||||
export class DashboardService {
|
||||
public async getDashboardSummary(sessionUser: string): Promise<DashboardSummaryResult> {
|
||||
@@ -198,11 +199,18 @@ export class DashboardService {
|
||||
const isOwner = String(ownerId) === String(params.sessionUser);
|
||||
|
||||
// Fetch metrics for owner
|
||||
const metrics = await MetricsList.getMetrics(String(ownerId));
|
||||
const metricsDocument = await MetricsList.getMetrics(String(ownerId));
|
||||
const metrics = metricsDocument.toObject ? metricsDocument.toObject() : { ...metricsDocument };
|
||||
|
||||
// Fetch subscription for owner
|
||||
const subscription = await PlanSubscriptionsList.getSubscriptionByUser({ sessionUser: String(ownerId) });
|
||||
|
||||
if (subscription) {
|
||||
metrics.appointmentsCount = await PlanUsageCycleList.getAppointmentsCount({
|
||||
userId: String(ownerId),
|
||||
});
|
||||
}
|
||||
|
||||
return {
|
||||
metrics,
|
||||
subscription,
|
||||
|
||||
Reference in New Issue
Block a user