feat: implement sysadmin subscription management and plan usage cycle recalculation tools

This commit is contained in:
2026-07-18 21:32:47 -03:00
parent 1c8c47cf76
commit 4f3b56784e
36 changed files with 2146 additions and 21 deletions
+31
View File
@@ -0,0 +1,31 @@
import axios from "axios";
import { getSysAdminNonce } from "../helpers/GetSysAdminNonce";
import { getApiHost } from "../helpers/GetApiHost";
import { getPayload } from "../helpers/GetPayload";
import { SysAdminPlan, SysAdminUpdatePlanParams } from "../models/Plans.Model";
export class PlansService {
public async listPlans(): Promise<SysAdminPlan[]> {
const nonce = await getSysAdminNonce();
const postData = { payload: getPayload(nonce) };
const response = await axios.post(`${getApiHost()}/sysadmin/plans/list`, postData, {
headers: { "Content-Type": "application/json" },
timeout: 5000,
});
return response.data;
}
public async updatePlan(data: SysAdminUpdatePlanParams): Promise<any> {
const nonce = await getSysAdminNonce();
const postData = { ...data, payload: getPayload(nonce) };
const response = await axios.post(`${getApiHost()}/sysadmin/plans/update`, postData, {
headers: { "Content-Type": "application/json" },
timeout: 5000,
});
return response.data;
}
}
+48
View File
@@ -10,6 +10,12 @@ import {
SysAdminDeleteUserParams,
SysAdminOrganizationsStatusParams,
SysAdminUserOrganizationsResult,
SysAdminRecalculatePlanUsageCycleParams,
SysAdminRecalculatePlanUsageCycleResult,
SysAdminExtendUserSubscriptionParams,
SysAdminExtendUserSubscriptionResult,
SysAdminUserSubscriptionDetailsParams,
SysAdminUserSubscriptionDetailsResult,
} from "../models/Users.Model";
export class UsersService {
@@ -72,4 +78,46 @@ export class UsersService {
return response.data;
}
public async recalculatePlanUsageCycle(
data: SysAdminRecalculatePlanUsageCycleParams
): Promise<SysAdminRecalculatePlanUsageCycleResult> {
const nonce = await getSysAdminNonce();
const postData = { ...data, ...{ payload: getPayload(nonce) } };
const response = await axios.post(`${getApiHost()}/sysadmin/plan-usage-cycle/recalculate-user`, postData, {
headers: { "Content-Type": "application/json" },
timeout: 10000,
});
return response.data;
}
public async getSubscriptionDetails(
data: SysAdminUserSubscriptionDetailsParams
): Promise<SysAdminUserSubscriptionDetailsResult> {
const nonce = await getSysAdminNonce();
const postData = { ...data, ...{ payload: getPayload(nonce) } };
const response = await axios.post(`${getApiHost()}/sysadmin/subscriptions/user-details`, postData, {
headers: { "Content-Type": "application/json" },
timeout: 10000,
});
return response.data;
}
public async extendSubscription(
data: SysAdminExtendUserSubscriptionParams
): Promise<SysAdminExtendUserSubscriptionResult> {
const nonce = await getSysAdminNonce();
const postData = { ...data, ...{ payload: getPayload(nonce) } };
const response = await axios.post(`${getApiHost()}/sysadmin/subscriptions/extend-user`, postData, {
headers: { "Content-Type": "application/json" },
timeout: 10000,
});
return response.data;
}
}