@carlonicora/nestjs-neo4jsonapi 1.116.0 → 1.118.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common/guards/jwt.auth.admin.guard.d.ts +3 -2
- package/dist/common/guards/jwt.auth.admin.guard.d.ts.map +1 -1
- package/dist/common/guards/jwt.auth.admin.guard.js +19 -4
- package/dist/common/guards/jwt.auth.admin.guard.js.map +1 -1
- package/dist/common/helpers/define-entity.d.ts +11 -1
- package/dist/common/helpers/define-entity.d.ts.map +1 -1
- package/dist/common/helpers/define-entity.js +7 -0
- package/dist/common/helpers/define-entity.js.map +1 -1
- package/dist/common/tokens.d.ts +4 -0
- package/dist/common/tokens.d.ts.map +1 -1
- package/dist/config/base.config.d.ts.map +1 -1
- package/dist/config/base.config.js +8 -0
- package/dist/config/base.config.js.map +1 -1
- package/dist/config/interfaces/base.config.interface.d.ts +2 -0
- package/dist/config/interfaces/base.config.interface.d.ts.map +1 -1
- package/dist/config/interfaces/config.ai.interface.d.ts +8 -0
- package/dist/config/interfaces/config.ai.interface.d.ts.map +1 -1
- package/dist/config/interfaces/config.credits.interface.d.ts +24 -0
- package/dist/config/interfaces/config.credits.interface.d.ts.map +1 -0
- package/dist/config/interfaces/config.credits.interface.js +3 -0
- package/dist/config/interfaces/config.credits.interface.js.map +1 -0
- package/dist/config/interfaces/index.d.ts +1 -0
- package/dist/config/interfaces/index.d.ts.map +1 -1
- package/dist/config/interfaces/index.js +1 -0
- package/dist/config/interfaces/index.js.map +1 -1
- package/dist/core/llm/services/embedder.service.d.ts +36 -2
- package/dist/core/llm/services/embedder.service.d.ts.map +1 -1
- package/dist/core/llm/services/embedder.service.js +87 -7
- package/dist/core/llm/services/embedder.service.js.map +1 -1
- package/dist/core/neo4j/abstracts/abstract.repository.d.ts.map +1 -1
- package/dist/core/neo4j/abstracts/abstract.repository.js +6 -2
- package/dist/core/neo4j/abstracts/abstract.repository.js.map +1 -1
- package/dist/foundations/community/repositories/community.repository.d.ts.map +1 -1
- package/dist/foundations/community/repositories/community.repository.js +2 -1
- package/dist/foundations/community/repositories/community.repository.js.map +1 -1
- package/dist/foundations/company/dtos/company.post.dto.d.ts +3 -3
- package/dist/foundations/company/dtos/company.post.dto.d.ts.map +1 -1
- package/dist/foundations/company/dtos/company.post.dto.js +3 -3
- package/dist/foundations/company/dtos/company.post.dto.js.map +1 -1
- package/dist/foundations/company/dtos/company.put.dto.d.ts +3 -3
- package/dist/foundations/company/dtos/company.put.dto.d.ts.map +1 -1
- package/dist/foundations/company/dtos/company.put.dto.js +3 -3
- package/dist/foundations/company/dtos/company.put.dto.js.map +1 -1
- package/dist/foundations/company/entities/company.d.ts +3 -3
- package/dist/foundations/company/entities/company.d.ts.map +1 -1
- package/dist/foundations/company/entities/company.js +3 -3
- package/dist/foundations/company/entities/company.js.map +1 -1
- package/dist/foundations/company/repositories/company.repository.d.ts +31 -24
- package/dist/foundations/company/repositories/company.repository.d.ts.map +1 -1
- package/dist/foundations/company/repositories/company.repository.js +66 -77
- package/dist/foundations/company/repositories/company.repository.js.map +1 -1
- package/dist/foundations/company/services/company.service.d.ts +8 -9
- package/dist/foundations/company/services/company.service.d.ts.map +1 -1
- package/dist/foundations/company/services/company.service.js +29 -32
- package/dist/foundations/company/services/company.service.js.map +1 -1
- package/dist/foundations/notification/repositories/notification.repository.d.ts.map +1 -1
- package/dist/foundations/notification/repositories/notification.repository.js +2 -1
- package/dist/foundations/notification/repositories/notification.repository.js.map +1 -1
- package/dist/foundations/referral/services/referral.service.js +4 -4
- package/dist/foundations/referral/services/referral.service.js.map +1 -1
- package/dist/foundations/stripe-customer/repositories/stripe-customer.repository.js +1 -1
- package/dist/foundations/stripe-customer/repositories/stripe-customer.repository.js.map +1 -1
- package/dist/foundations/stripe-subscription/repositories/stripe-subscription.repository.d.ts.map +1 -1
- package/dist/foundations/stripe-subscription/repositories/stripe-subscription.repository.js +3 -2
- package/dist/foundations/stripe-subscription/repositories/stripe-subscription.repository.js.map +1 -1
- package/dist/foundations/stripe-subscription/services/token-allocation.service.d.ts +1 -1
- package/dist/foundations/stripe-subscription/services/token-allocation.service.js +10 -10
- package/dist/foundations/stripe-subscription/services/token-allocation.service.js.map +1 -1
- package/dist/foundations/stripe-trial/services/trial.service.js +2 -2
- package/dist/foundations/stripe-trial/services/trial.service.js.map +1 -1
- package/dist/foundations/stripe-webhook/processors/stripe-webhook.processor.js +2 -2
- package/dist/foundations/stripe-webhook/processors/stripe-webhook.processor.js.map +1 -1
- package/dist/foundations/tokenusage/controllers/tokenusage.admin.controller.d.ts +27 -0
- package/dist/foundations/tokenusage/controllers/tokenusage.admin.controller.d.ts.map +1 -0
- package/dist/foundations/tokenusage/controllers/tokenusage.admin.controller.js +136 -0
- package/dist/foundations/tokenusage/controllers/tokenusage.admin.controller.js.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-breakdown.d.ts +26 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-breakdown.d.ts.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-breakdown.js +24 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-breakdown.js.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-breakdown.meta.d.ts +3 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-breakdown.meta.d.ts.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-breakdown.meta.js +10 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-breakdown.meta.js.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-summary.d.ts +24 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-summary.d.ts.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-summary.js +21 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-summary.js.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-summary.meta.d.ts +3 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-summary.meta.d.ts.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-summary.meta.js +10 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-summary.meta.js.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-timeline.d.ts +22 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-timeline.d.ts.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-timeline.js +21 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-timeline.js.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-timeline.meta.d.ts +3 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-timeline.meta.d.ts.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-timeline.meta.js +10 -0
- package/dist/foundations/tokenusage/entities/tokenusage-admin-timeline.meta.js.map +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage.d.ts +1 -0
- package/dist/foundations/tokenusage/entities/tokenusage.d.ts.map +1 -1
- package/dist/foundations/tokenusage/entities/tokenusage.js +4 -0
- package/dist/foundations/tokenusage/entities/tokenusage.js.map +1 -1
- package/dist/foundations/tokenusage/enums/tokenusage.type.d.ts +2 -1
- package/dist/foundations/tokenusage/enums/tokenusage.type.d.ts.map +1 -1
- package/dist/foundations/tokenusage/enums/tokenusage.type.js +1 -0
- package/dist/foundations/tokenusage/enums/tokenusage.type.js.map +1 -1
- package/dist/foundations/tokenusage/events/tokenusage.events.d.ts +2 -0
- package/dist/foundations/tokenusage/events/tokenusage.events.d.ts.map +1 -1
- package/dist/foundations/tokenusage/index.d.ts +10 -1
- package/dist/foundations/tokenusage/index.d.ts.map +1 -1
- package/dist/foundations/tokenusage/index.js +19 -1
- package/dist/foundations/tokenusage/index.js.map +1 -1
- package/dist/foundations/tokenusage/repositories/tokenusage.admin.repository.d.ts +73 -0
- package/dist/foundations/tokenusage/repositories/tokenusage.admin.repository.d.ts.map +1 -0
- package/dist/foundations/tokenusage/repositories/tokenusage.admin.repository.js +342 -0
- package/dist/foundations/tokenusage/repositories/tokenusage.admin.repository.js.map +1 -0
- package/dist/foundations/tokenusage/repositories/tokenusage.repository.d.ts +78 -3
- package/dist/foundations/tokenusage/repositories/tokenusage.repository.d.ts.map +1 -1
- package/dist/foundations/tokenusage/repositories/tokenusage.repository.js +155 -5
- package/dist/foundations/tokenusage/repositories/tokenusage.repository.js.map +1 -1
- package/dist/foundations/tokenusage/services/tokenusage.admin.service.d.ts +50 -0
- package/dist/foundations/tokenusage/services/tokenusage.admin.service.d.ts.map +1 -0
- package/dist/foundations/tokenusage/services/tokenusage.admin.service.js +84 -0
- package/dist/foundations/tokenusage/services/tokenusage.admin.service.js.map +1 -0
- package/dist/foundations/tokenusage/services/tokenusage.service.d.ts +37 -1
- package/dist/foundations/tokenusage/services/tokenusage.service.d.ts.map +1 -1
- package/dist/foundations/tokenusage/services/tokenusage.service.js +56 -5
- package/dist/foundations/tokenusage/services/tokenusage.service.js.map +1 -1
- package/dist/foundations/tokenusage/tokenusage.module.d.ts.map +1 -1
- package/dist/foundations/tokenusage/tokenusage.module.js +21 -3
- package/dist/foundations/tokenusage/tokenusage.module.js.map +1 -1
- package/package.json +2 -1
|
@@ -64,9 +64,9 @@ export declare class CompanyRepository extends AbstractRepository<Company, typeo
|
|
|
64
64
|
companyId: string;
|
|
65
65
|
name: string;
|
|
66
66
|
configurations?: string;
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
67
|
+
monthlyCredits?: number;
|
|
68
|
+
availableMonthlyCredits?: number;
|
|
69
|
+
availableExtraCredits?: number;
|
|
70
70
|
featureIds?: string[];
|
|
71
71
|
moduleIds?: string[];
|
|
72
72
|
legal_address?: string;
|
|
@@ -85,9 +85,9 @@ export declare class CompanyRepository extends AbstractRepository<Company, typeo
|
|
|
85
85
|
name: string;
|
|
86
86
|
configurations?: string;
|
|
87
87
|
logo?: string;
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
88
|
+
monthlyCredits?: number;
|
|
89
|
+
availableMonthlyCredits?: number;
|
|
90
|
+
availableExtraCredits?: number;
|
|
91
91
|
featureIds?: string[];
|
|
92
92
|
moduleIds?: string[];
|
|
93
93
|
legal_address?: string;
|
|
@@ -108,35 +108,42 @@ export declare class CompanyRepository extends AbstractRepository<Company, typeo
|
|
|
108
108
|
createByName(params: {
|
|
109
109
|
name: string;
|
|
110
110
|
}): Promise<Company>;
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
111
|
+
/**
|
|
112
|
+
* Deduct billing credits from a company's balances (monthly allowance first,
|
|
113
|
+
* then the extra top-up balance).
|
|
114
|
+
*
|
|
115
|
+
* @param params - Parameters
|
|
116
|
+
* @param params.credits - Credits to deduct (fractional, 2 decimals)
|
|
117
|
+
* @param params.companyId - Company identifier; defaults to the CLS company
|
|
118
|
+
*/
|
|
119
|
+
useCredits(params: {
|
|
120
|
+
credits: number;
|
|
114
121
|
companyId?: string;
|
|
115
122
|
}): Promise<{
|
|
116
|
-
|
|
117
|
-
|
|
123
|
+
availableMonthlyCredits: number;
|
|
124
|
+
availableExtraCredits: number;
|
|
118
125
|
} | undefined>;
|
|
119
126
|
markSubscriptionStatus(params: {
|
|
120
127
|
companyId: string;
|
|
121
128
|
isActiveSubscription: boolean;
|
|
122
129
|
}): Promise<void>;
|
|
123
130
|
/**
|
|
124
|
-
* Update company
|
|
131
|
+
* Update company credit allocation fields
|
|
125
132
|
*
|
|
126
|
-
* Used by TokenAllocationService to reset
|
|
127
|
-
* or pro-rate
|
|
133
|
+
* Used by TokenAllocationService to reset credits on subscription payment
|
|
134
|
+
* or pro-rate credits on plan changes.
|
|
128
135
|
*
|
|
129
136
|
* @param params - Update parameters
|
|
130
137
|
* @param params.companyId - Company identifier
|
|
131
|
-
* @param params.
|
|
132
|
-
* @param params.
|
|
133
|
-
* @param params.
|
|
138
|
+
* @param params.monthlyCredits - Optional new monthly credit allocation
|
|
139
|
+
* @param params.availableMonthlyCredits - Optional new available monthly credits
|
|
140
|
+
* @param params.availableExtraCredits - Optional new available extra credits
|
|
134
141
|
*/
|
|
135
142
|
updateTokens(params: {
|
|
136
143
|
companyId: string;
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
144
|
+
monthlyCredits?: number;
|
|
145
|
+
availableMonthlyCredits?: number;
|
|
146
|
+
availableExtraCredits?: number;
|
|
140
147
|
}): Promise<void>;
|
|
141
148
|
find(params: {
|
|
142
149
|
term: string;
|
|
@@ -230,15 +237,15 @@ export declare class CompanyRepository extends AbstractRepository<Company, typeo
|
|
|
230
237
|
referralCode: string;
|
|
231
238
|
}): Promise<void>;
|
|
232
239
|
/**
|
|
233
|
-
* Add extra
|
|
240
|
+
* Add extra credits to a company (increments availableExtraCredits)
|
|
234
241
|
*
|
|
235
242
|
* @param params - Parameters
|
|
236
243
|
* @param params.companyId - Company identifier
|
|
237
|
-
* @param params.
|
|
244
|
+
* @param params.credits - Number of credits to add
|
|
238
245
|
*/
|
|
239
|
-
|
|
246
|
+
addExtraCredits(params: {
|
|
240
247
|
companyId: string;
|
|
241
|
-
|
|
248
|
+
credits: number;
|
|
242
249
|
}): Promise<void>;
|
|
243
250
|
}
|
|
244
251
|
//# sourceMappingURL=company.repository.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"company.repository.d.ts","sourceRoot":"","sources":["../../../../src/foundations/company/repositories/company.repository.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,sBAAsB,EAAE,MAAM,2DAA2D,CAAC;AACnG,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAC;AACnF,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAK5E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBACa,iBAAkB,SAAQ,kBAAkB,CAAC,OAAO,EAAE,OAAO,iBAAiB,CAAC,aAAa,CAAC;IACxG,SAAS,CAAC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;;OAAqB;gBAEtC,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU;IAQnF,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAW9B,eAAe,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAiBhE,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAajD,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAapC;;;;;;;;OAQG;IACG,iBAAiB,CAAC,MAAM,EAAE;QAC9B,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,
|
|
1
|
+
{"version":3,"file":"company.repository.d.ts","sourceRoot":"","sources":["../../../../src/foundations/company/repositories/company.repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -116,9 +116,9 @@ let CompanyRepository = class CompanyRepository extends abstract_repository_1.Ab
|
|
|
116
116
|
const createSetParams = [];
|
|
117
117
|
createSetParams.push("company.name=$name");
|
|
118
118
|
createSetParams.push("company.configurations=$configurations");
|
|
119
|
-
createSetParams.push("company.
|
|
120
|
-
createSetParams.push("company.
|
|
121
|
-
createSetParams.push("company.
|
|
119
|
+
createSetParams.push("company.monthlyCredits=$monthlyCredits");
|
|
120
|
+
createSetParams.push("company.availableMonthlyCredits=$availableMonthlyCredits");
|
|
121
|
+
createSetParams.push("company.availableExtraCredits=$availableExtraCredits");
|
|
122
122
|
if (params.legal_address !== undefined)
|
|
123
123
|
createSetParams.push("company.legal_address=$legal_address");
|
|
124
124
|
if (params.street_number !== undefined)
|
|
@@ -145,9 +145,9 @@ let CompanyRepository = class CompanyRepository extends abstract_repository_1.Ab
|
|
|
145
145
|
companyId: params.companyId,
|
|
146
146
|
name: params.name,
|
|
147
147
|
configurations: params.configurations ?? "",
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
148
|
+
monthlyCredits: params.monthlyCredits ?? 0,
|
|
149
|
+
availableMonthlyCredits: params.availableMonthlyCredits ?? 0,
|
|
150
|
+
availableExtraCredits: params.availableExtraCredits ?? 0,
|
|
151
151
|
featureIds: params.featureIds ?? [],
|
|
152
152
|
moduleIds: params.moduleIds ?? [],
|
|
153
153
|
...(params.legal_address !== undefined && { legal_address: params.legal_address }),
|
|
@@ -211,12 +211,12 @@ let CompanyRepository = class CompanyRepository extends abstract_repository_1.Ab
|
|
|
211
211
|
updateParams.push("company.configurations = $configurations");
|
|
212
212
|
if (params.logo !== undefined)
|
|
213
213
|
updateParams.push("company.logo = $logo");
|
|
214
|
-
if (params.
|
|
215
|
-
updateParams.push("company.
|
|
216
|
-
if (params.
|
|
217
|
-
updateParams.push("company.
|
|
218
|
-
if (params.
|
|
219
|
-
updateParams.push("company.
|
|
214
|
+
if (params.monthlyCredits !== undefined)
|
|
215
|
+
updateParams.push("company.monthlyCredits = $monthlyCredits");
|
|
216
|
+
if (params.availableMonthlyCredits !== undefined)
|
|
217
|
+
updateParams.push("company.availableMonthlyCredits = $availableMonthlyCredits");
|
|
218
|
+
if (params.availableExtraCredits !== undefined)
|
|
219
|
+
updateParams.push("company.availableExtraCredits = $availableExtraCredits");
|
|
220
220
|
if (params.legal_address !== undefined)
|
|
221
221
|
updateParams.push("company.legal_address = $legal_address");
|
|
222
222
|
if (params.street_number !== undefined)
|
|
@@ -244,9 +244,9 @@ let CompanyRepository = class CompanyRepository extends abstract_repository_1.Ab
|
|
|
244
244
|
name: params.name,
|
|
245
245
|
configurations: params.configurations ?? "",
|
|
246
246
|
logo: params.logo ?? "",
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
247
|
+
monthlyCredits: params.monthlyCredits ?? 0,
|
|
248
|
+
availableMonthlyCredits: params.availableMonthlyCredits ?? 0,
|
|
249
|
+
availableExtraCredits: params.availableExtraCredits ?? 0,
|
|
250
250
|
featureIds: params.featureIds ?? [],
|
|
251
251
|
moduleIds: params.moduleIds ?? [],
|
|
252
252
|
...(params.legal_address !== undefined && { legal_address: params.legal_address }),
|
|
@@ -325,56 +325,45 @@ let CompanyRepository = class CompanyRepository extends abstract_repository_1.Ab
|
|
|
325
325
|
`;
|
|
326
326
|
return await this.neo4j.writeOne(query);
|
|
327
327
|
}
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
328
|
+
/**
|
|
329
|
+
* Deduct billing credits from a company's balances (monthly allowance first,
|
|
330
|
+
* then the extra top-up balance).
|
|
331
|
+
*
|
|
332
|
+
* @param params - Parameters
|
|
333
|
+
* @param params.credits - Credits to deduct (fractional, 2 decimals)
|
|
334
|
+
* @param params.companyId - Company identifier; defaults to the CLS company
|
|
335
|
+
*/
|
|
336
|
+
async useCredits(params) {
|
|
337
|
+
if (params.credits <= 0)
|
|
332
338
|
return undefined;
|
|
333
|
-
const
|
|
334
|
-
companyQuery.queryParams = {
|
|
335
|
-
companyId: params.companyId ?? this.clsService.get("companyId"),
|
|
336
|
-
};
|
|
337
|
-
companyQuery.query = `MATCH (company:Company {id: $companyId}) RETURN company`;
|
|
338
|
-
const company = await this.neo4j.readOne(companyQuery);
|
|
339
|
-
// Convert BigInt values from Neo4j to numbers for arithmetic operations
|
|
340
|
-
const availableMonthlyTokens = Number(company.availableMonthlyTokens ?? 0);
|
|
341
|
-
const availableExtraTokens = Number(company.availableExtraTokens ?? 0);
|
|
342
|
-
const query = this.neo4j.initQuery();
|
|
339
|
+
const query = this.neo4j.initQuery({ serialiser: company_1.CompanyDescriptor.model });
|
|
343
340
|
query.queryParams = {
|
|
344
341
|
companyId: params.companyId ?? this.clsService.get("companyId"),
|
|
342
|
+
credits: params.credits,
|
|
345
343
|
};
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
company.updatedAt = datetime()
|
|
352
|
-
`;
|
|
353
|
-
}
|
|
354
|
-
else if (availableMonthlyTokens > 0) {
|
|
355
|
-
const remainingTokens = tokens - availableMonthlyTokens;
|
|
356
|
-
query.queryParams.availableMonthlyTokens = 0;
|
|
357
|
-
query.queryParams.availableExtraTokens = availableExtraTokens - remainingTokens;
|
|
358
|
-
query.query = `
|
|
359
|
-
MATCH (company:Company {id: $companyId})
|
|
360
|
-
SET company.availableMonthlyTokens = $availableMonthlyTokens,
|
|
361
|
-
company.availableExtraTokens = $availableExtraTokens,
|
|
362
|
-
company.updatedAt = datetime()
|
|
363
|
-
`;
|
|
364
|
-
}
|
|
365
|
-
else {
|
|
366
|
-
// Monthly allowance exhausted — deduct entirely from extra tokens.
|
|
367
|
-
query.queryParams.availableExtraTokens = availableExtraTokens - tokens;
|
|
368
|
-
query.query = `
|
|
344
|
+
// Single-statement read-and-write: the monthly-then-extra waterfall is computed
|
|
345
|
+
// inside the SET so concurrent deductions cannot lose updates. Balances are
|
|
346
|
+
// 2-dp floats and are deliberately NOT clamped (a mid-operation overrun may go
|
|
347
|
+
// negative; the pre-flight guard blocks the NEXT operation).
|
|
348
|
+
query.query = `
|
|
369
349
|
MATCH (company:Company {id: $companyId})
|
|
370
|
-
|
|
350
|
+
WITH company,
|
|
351
|
+
toFloat(coalesce(company.availableMonthlyCredits, 0)) AS m,
|
|
352
|
+
toFloat(coalesce(company.availableExtraCredits, 0)) AS e,
|
|
353
|
+
toFloat($credits) AS c
|
|
354
|
+
SET company.availableMonthlyCredits = CASE WHEN m >= c THEN round(m - c, 2) ELSE 0.0 END,
|
|
355
|
+
company.availableExtraCredits = CASE WHEN m >= c THEN e
|
|
356
|
+
WHEN m > 0 THEN round(e - (c - m), 2)
|
|
357
|
+
ELSE round(e - c, 2) END,
|
|
371
358
|
company.updatedAt = datetime()
|
|
359
|
+
RETURN company
|
|
372
360
|
`;
|
|
373
|
-
|
|
374
|
-
|
|
361
|
+
const company = await this.neo4j.writeOne(query);
|
|
362
|
+
if (!company)
|
|
363
|
+
return undefined;
|
|
375
364
|
return {
|
|
376
|
-
|
|
377
|
-
|
|
365
|
+
availableMonthlyCredits: Number(company.availableMonthlyCredits ?? 0),
|
|
366
|
+
availableExtraCredits: Number(company.availableExtraCredits ?? 0),
|
|
378
367
|
};
|
|
379
368
|
}
|
|
380
369
|
async markSubscriptionStatus(params) {
|
|
@@ -391,35 +380,35 @@ let CompanyRepository = class CompanyRepository extends abstract_repository_1.Ab
|
|
|
391
380
|
await this.neo4j.writeOne(query);
|
|
392
381
|
}
|
|
393
382
|
/**
|
|
394
|
-
* Update company
|
|
383
|
+
* Update company credit allocation fields
|
|
395
384
|
*
|
|
396
|
-
* Used by TokenAllocationService to reset
|
|
397
|
-
* or pro-rate
|
|
385
|
+
* Used by TokenAllocationService to reset credits on subscription payment
|
|
386
|
+
* or pro-rate credits on plan changes.
|
|
398
387
|
*
|
|
399
388
|
* @param params - Update parameters
|
|
400
389
|
* @param params.companyId - Company identifier
|
|
401
|
-
* @param params.
|
|
402
|
-
* @param params.
|
|
403
|
-
* @param params.
|
|
390
|
+
* @param params.monthlyCredits - Optional new monthly credit allocation
|
|
391
|
+
* @param params.availableMonthlyCredits - Optional new available monthly credits
|
|
392
|
+
* @param params.availableExtraCredits - Optional new available extra credits
|
|
404
393
|
*/
|
|
405
394
|
async updateTokens(params) {
|
|
406
395
|
const setParams = [];
|
|
407
396
|
setParams.push("company.updatedAt = datetime()");
|
|
408
|
-
if (params.
|
|
409
|
-
setParams.push("company.
|
|
397
|
+
if (params.monthlyCredits !== undefined) {
|
|
398
|
+
setParams.push("company.monthlyCredits = $monthlyCredits");
|
|
410
399
|
}
|
|
411
|
-
if (params.
|
|
412
|
-
setParams.push("company.
|
|
400
|
+
if (params.availableMonthlyCredits !== undefined) {
|
|
401
|
+
setParams.push("company.availableMonthlyCredits = $availableMonthlyCredits");
|
|
413
402
|
}
|
|
414
|
-
if (params.
|
|
415
|
-
setParams.push("company.
|
|
403
|
+
if (params.availableExtraCredits !== undefined) {
|
|
404
|
+
setParams.push("company.availableExtraCredits = $availableExtraCredits");
|
|
416
405
|
}
|
|
417
406
|
const query = this.neo4j.initQuery();
|
|
418
407
|
query.queryParams = {
|
|
419
408
|
companyId: params.companyId,
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
409
|
+
monthlyCredits: params.monthlyCredits,
|
|
410
|
+
availableMonthlyCredits: params.availableMonthlyCredits,
|
|
411
|
+
availableExtraCredits: params.availableExtraCredits,
|
|
423
412
|
};
|
|
424
413
|
query.query = `
|
|
425
414
|
MATCH (company:Company {id: $companyId})
|
|
@@ -669,21 +658,21 @@ let CompanyRepository = class CompanyRepository extends abstract_repository_1.Ab
|
|
|
669
658
|
await this.neo4j.writeOne(query);
|
|
670
659
|
}
|
|
671
660
|
/**
|
|
672
|
-
* Add extra
|
|
661
|
+
* Add extra credits to a company (increments availableExtraCredits)
|
|
673
662
|
*
|
|
674
663
|
* @param params - Parameters
|
|
675
664
|
* @param params.companyId - Company identifier
|
|
676
|
-
* @param params.
|
|
665
|
+
* @param params.credits - Number of credits to add
|
|
677
666
|
*/
|
|
678
|
-
async
|
|
667
|
+
async addExtraCredits(params) {
|
|
679
668
|
const query = this.neo4j.initQuery();
|
|
680
669
|
query.queryParams = {
|
|
681
670
|
companyId: params.companyId,
|
|
682
|
-
|
|
671
|
+
credits: params.credits,
|
|
683
672
|
};
|
|
684
673
|
query.query = `
|
|
685
674
|
MATCH (company:Company {id: $companyId})
|
|
686
|
-
SET company.
|
|
675
|
+
SET company.availableExtraCredits = round(COALESCE(company.availableExtraCredits, 0) + $credits, 2),
|
|
687
676
|
company.updatedAt = datetime()
|
|
688
677
|
`;
|
|
689
678
|
await this.neo4j.writeOne(query);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"company.repository.js","sourceRoot":"","sources":["../../../../src/foundations/company/repositories/company.repository.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"company.repository.js","sourceRoot":"","sources":["../../../../src/foundations/company/repositories/company.repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,21 +52,20 @@ export declare class CompanyService extends AbstractService<Company, typeof Comp
|
|
|
52
52
|
validate(params: {
|
|
53
53
|
companyId: string;
|
|
54
54
|
}): Promise<void>;
|
|
55
|
-
|
|
55
|
+
validateCompanyCredits(params: {
|
|
56
56
|
companyId: string;
|
|
57
57
|
}): Promise<void>;
|
|
58
|
-
|
|
58
|
+
hasAvailableCredits(params: {
|
|
59
59
|
companyId: string;
|
|
60
60
|
}): Promise<boolean>;
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
outputTokens: number;
|
|
61
|
+
useCredits(params: {
|
|
62
|
+
credits: number;
|
|
64
63
|
}): Promise<void>;
|
|
65
64
|
/**
|
|
66
|
-
* Reacts to LLM
|
|
67
|
-
*
|
|
68
|
-
* module never imports CompanyModule. Best-effort: must never throw
|
|
69
|
-
* the emitter (the LLM call that triggered it must not break).
|
|
65
|
+
* Reacts to LLM usage recorded by TokenUsageService and decrements the
|
|
66
|
+
* company's running credit balance. Decoupled via the event bus so the
|
|
67
|
+
* tokenusage module never imports CompanyModule. Best-effort: must never throw
|
|
68
|
+
* back into the emitter (the LLM call that triggered it must not break).
|
|
70
69
|
*/
|
|
71
70
|
handleTokenUsageRecorded(payload: TokenUsageRecordedPayload): Promise<void>;
|
|
72
71
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"company.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/company/services/company.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAA8B,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AAClH,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yDAAyD,CAAC;AAE/F,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAClF,OAAO,EAAE,+BAA+B,EAAE,MAAM,wCAAwC,CAAC;AACzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oDAAoD,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAA4B,MAAM,kDAAkD,CAAC;AAEpH;;;;;;GAMG;AACH,qBACa,cAAe,SAAQ,eAAe,CAAC,OAAO,EAAE,OAAO,iBAAiB,CAAC,aAAa,CAAC;IAMhG,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IACJ,OAAO,CAAC,QAAQ,CAAC,KAAK;IACpD,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAGjC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IAfnC,SAAS,CAAC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;;OAAqB;IAElD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;gBAGvC,OAAO,EAAE,cAAc,EACvB,iBAAiB,EAAE,iBAAiB,EACN,KAAK,EAAE,KAAK,EAC1C,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,YAAY,EACnB,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,gBAAgB,EAGlC,eAAe,CAAC,EAAE,sBAAsB;IAKrD,QAAQ,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE;IAQtC,
|
|
1
|
+
{"version":3,"file":"company.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/company/services/company.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,51 +60,48 @@ let CompanyService = CompanyService_1 = class CompanyService extends abstract_se
|
|
|
60
60
|
if (!company)
|
|
61
61
|
throw new common_1.HttpException("Company not found", common_1.HttpStatus.UNAUTHORIZED);
|
|
62
62
|
}
|
|
63
|
-
async
|
|
63
|
+
async validateCompanyCredits(params) {
|
|
64
64
|
const company = await this.companyRepository.findByCompanyId({
|
|
65
65
|
companyId: params.companyId,
|
|
66
66
|
});
|
|
67
|
-
if ((!company.
|
|
68
|
-
(!company.
|
|
69
|
-
throw new common_1.HttpException("
|
|
67
|
+
if ((!company.availableMonthlyCredits || company.availableMonthlyCredits <= 0) &&
|
|
68
|
+
(!company.availableExtraCredits || company.availableExtraCredits <= 0))
|
|
69
|
+
throw new common_1.HttpException("NO_CREDITS", common_1.HttpStatus.PAYMENT_REQUIRED);
|
|
70
70
|
}
|
|
71
|
-
async
|
|
71
|
+
async hasAvailableCredits(params) {
|
|
72
72
|
const company = await this.companyRepository.findByCompanyId({ companyId: params.companyId });
|
|
73
|
-
return ((company.
|
|
74
|
-
(company.
|
|
73
|
+
return ((company.availableMonthlyCredits && company.availableMonthlyCredits > 0) ||
|
|
74
|
+
(company.availableExtraCredits && company.availableExtraCredits > 0));
|
|
75
75
|
}
|
|
76
|
-
async
|
|
77
|
-
const balances = await this.companyRepository.
|
|
78
|
-
input: params.inputTokens,
|
|
79
|
-
output: params.outputTokens,
|
|
80
|
-
});
|
|
76
|
+
async useCredits(params) {
|
|
77
|
+
const balances = await this.companyRepository.useCredits({ credits: params.credits });
|
|
81
78
|
// Nothing consumed — no balance change worth broadcasting.
|
|
82
79
|
if (!balances)
|
|
83
80
|
return;
|
|
84
81
|
// Broadcast the new balances to all company users. Consumers patch these in
|
|
85
|
-
// directly; they must never need to refetch the user to read a
|
|
82
|
+
// directly; they must never need to refetch the user to read a credit count.
|
|
86
83
|
const companyId = this.cls.get("companyId");
|
|
87
84
|
if (companyId) {
|
|
88
|
-
await this.webSocketService.sendMessageToCompany(companyId, "company:
|
|
89
|
-
type: "company:
|
|
85
|
+
await this.webSocketService.sendMessageToCompany(companyId, "company:credits_updated", {
|
|
86
|
+
type: "company:credits_updated",
|
|
90
87
|
companyId,
|
|
91
|
-
|
|
92
|
-
|
|
88
|
+
availableMonthlyCredits: balances.availableMonthlyCredits,
|
|
89
|
+
availableExtraCredits: balances.availableExtraCredits,
|
|
93
90
|
});
|
|
94
91
|
}
|
|
95
92
|
}
|
|
96
93
|
/**
|
|
97
|
-
* Reacts to LLM
|
|
98
|
-
*
|
|
99
|
-
* module never imports CompanyModule. Best-effort: must never throw
|
|
100
|
-
* the emitter (the LLM call that triggered it must not break).
|
|
94
|
+
* Reacts to LLM usage recorded by TokenUsageService and decrements the
|
|
95
|
+
* company's running credit balance. Decoupled via the event bus so the
|
|
96
|
+
* tokenusage module never imports CompanyModule. Best-effort: must never throw
|
|
97
|
+
* back into the emitter (the LLM call that triggered it must not break).
|
|
101
98
|
*/
|
|
102
99
|
async handleTokenUsageRecorded(payload) {
|
|
103
100
|
try {
|
|
104
|
-
await this.
|
|
101
|
+
await this.useCredits({ credits: payload.credits });
|
|
105
102
|
}
|
|
106
103
|
catch (error) {
|
|
107
|
-
this.logger.warn(`Failed to deduct company
|
|
104
|
+
this.logger.warn(`Failed to deduct company credits: ${error instanceof Error ? error.message : String(error)}`);
|
|
108
105
|
}
|
|
109
106
|
}
|
|
110
107
|
/**
|
|
@@ -120,9 +117,9 @@ let CompanyService = CompanyService_1 = class CompanyService extends abstract_se
|
|
|
120
117
|
companyId: params.data.id,
|
|
121
118
|
name: params.data.attributes.name,
|
|
122
119
|
configurations: params.data.attributes.configurations,
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
120
|
+
monthlyCredits: params.data.attributes.monthlyCredits,
|
|
121
|
+
availableMonthlyCredits: params.data.attributes.availableMonthlyCredits,
|
|
122
|
+
availableExtraCredits: params.data.attributes.availableExtraCredits,
|
|
126
123
|
featureIds: params.data.relationships?.features?.data.map((feature) => feature.id),
|
|
127
124
|
legal_address: params.data.attributes.legal_address,
|
|
128
125
|
street_number: params.data.attributes.street_number,
|
|
@@ -141,9 +138,9 @@ let CompanyService = CompanyService_1 = class CompanyService extends abstract_se
|
|
|
141
138
|
companyId: params.data.id,
|
|
142
139
|
name: params.data.attributes.name,
|
|
143
140
|
configurations: params.data.attributes.configurations,
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
141
|
+
monthlyCredits: params.data.attributes.monthlyCredits,
|
|
142
|
+
availableMonthlyCredits: params.data.attributes.availableMonthlyCredits,
|
|
143
|
+
availableExtraCredits: params.data.attributes.availableExtraCredits,
|
|
147
144
|
featureIds: params.data.relationships?.features?.data.map((feature) => feature.id),
|
|
148
145
|
moduleIds: params.data.relationships?.modules?.data.map((module) => module.id),
|
|
149
146
|
legal_address: params.data.attributes.legal_address,
|
|
@@ -165,9 +162,9 @@ let CompanyService = CompanyService_1 = class CompanyService extends abstract_se
|
|
|
165
162
|
name: params.data.attributes.name,
|
|
166
163
|
configurations: params.data.attributes.configurations,
|
|
167
164
|
logo: params.data.attributes.logo,
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
165
|
+
monthlyCredits: params.data.attributes.monthlyCredits,
|
|
166
|
+
availableMonthlyCredits: params.data.attributes.availableMonthlyCredits,
|
|
167
|
+
availableExtraCredits: params.data.attributes.availableExtraCredits,
|
|
171
168
|
featureIds: params.data.relationships?.features?.data.map((feature) => feature.id),
|
|
172
169
|
moduleIds: params.data.relationships?.modules?.data.map((module) => module.id),
|
|
173
170
|
legal_address: params.data.attributes.legal_address,
|