@accounter/server 0.0.8-alpha-20251030162201-d2f279aafe537912ec3546af855cbd3a38ac0f5c → 0.0.8-alpha-20251030164843-d2f490daba879840366288d1f62974ab25081876

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.
Files changed (56) hide show
  1. package/CHANGELOG.md +33 -20
  2. package/dist/server/src/__generated__/types.d.ts +37 -70
  3. package/dist/server/src/__generated__/types.js.map +1 -1
  4. package/dist/server/src/modules/contracts/__generated__/contracts.types.d.ts +29 -0
  5. package/dist/server/src/modules/contracts/__generated__/types.d.ts +3 -1
  6. package/dist/server/src/modules/contracts/__generated__/types.js.map +1 -1
  7. package/dist/server/src/modules/contracts/providers/contracts.provider.d.ts +5 -1
  8. package/dist/server/src/modules/contracts/providers/contracts.provider.js +37 -7
  9. package/dist/server/src/modules/contracts/providers/contracts.provider.js.map +1 -1
  10. package/dist/server/src/modules/contracts/resolvers/contracts.resolver.js +27 -0
  11. package/dist/server/src/modules/contracts/resolvers/contracts.resolver.js.map +1 -1
  12. package/dist/server/src/modules/contracts/typeDefs/contracts.graphql.js +2 -0
  13. package/dist/server/src/modules/contracts/typeDefs/contracts.graphql.js.map +1 -1
  14. package/dist/server/src/modules/financial-entities/__generated__/admin-businesses.types.d.ts +0 -57
  15. package/dist/server/src/modules/financial-entities/__generated__/admin-businesses.types.js +1 -0
  16. package/dist/server/src/modules/financial-entities/__generated__/admin-businesses.types.js.map +1 -1
  17. package/dist/server/src/modules/financial-entities/__generated__/types.d.ts +10 -33
  18. package/dist/server/src/modules/financial-entities/__generated__/types.js.map +1 -1
  19. package/dist/server/src/modules/financial-entities/providers/admin-businesses.provider.d.ts +1 -2
  20. package/dist/server/src/modules/financial-entities/providers/admin-businesses.provider.js +0 -37
  21. package/dist/server/src/modules/financial-entities/providers/admin-businesses.provider.js.map +1 -1
  22. package/dist/server/src/modules/financial-entities/resolvers/admin-businesses.resolver.js +11 -46
  23. package/dist/server/src/modules/financial-entities/resolvers/admin-businesses.resolver.js.map +1 -1
  24. package/dist/server/src/modules/financial-entities/typeDefs/admin-businesses.graphql.js +16 -49
  25. package/dist/server/src/modules/financial-entities/typeDefs/admin-businesses.graphql.js.map +1 -1
  26. package/dist/server/src/modules/financial-entities/types.d.ts +1 -1
  27. package/dist/server/src/modules/green-invoice/__generated__/types.d.ts +2 -1
  28. package/dist/server/src/modules/green-invoice/__generated__/types.js.map +1 -1
  29. package/dist/server/src/modules/green-invoice/helpers/contract-to-draft.helper.d.ts +5 -0
  30. package/dist/server/src/modules/green-invoice/helpers/contract-to-draft.helper.js +60 -0
  31. package/dist/server/src/modules/green-invoice/helpers/contract-to-draft.helper.js.map +1 -0
  32. package/dist/server/src/modules/green-invoice/resolvers/green-invoice.resolvers.js +10 -54
  33. package/dist/server/src/modules/green-invoice/resolvers/green-invoice.resolvers.js.map +1 -1
  34. package/dist/server/src/modules/green-invoice/typeDefs/green-invoice.graphql.js +4 -0
  35. package/dist/server/src/modules/green-invoice/typeDefs/green-invoice.graphql.js.map +1 -1
  36. package/package.json +1 -1
  37. package/src/__generated__/types.ts +43 -76
  38. package/src/modules/contracts/__generated__/contracts.types.ts +32 -0
  39. package/src/modules/contracts/__generated__/types.ts +3 -1
  40. package/src/modules/contracts/providers/contracts.provider.ts +51 -6
  41. package/src/modules/contracts/resolvers/contracts.resolver.ts +24 -0
  42. package/src/modules/contracts/typeDefs/contracts.graphql.ts +2 -0
  43. package/src/modules/financial-entities/__generated__/admin-businesses.types.ts +0 -60
  44. package/src/modules/financial-entities/__generated__/types.ts +10 -33
  45. package/src/modules/financial-entities/providers/admin-businesses.provider.ts +0 -44
  46. package/src/modules/financial-entities/resolvers/admin-businesses.resolver.ts +11 -53
  47. package/src/modules/financial-entities/typeDefs/admin-businesses.graphql.ts +16 -49
  48. package/src/modules/financial-entities/types.ts +1 -1
  49. package/src/modules/green-invoice/__generated__/types.ts +2 -1
  50. package/src/modules/green-invoice/helpers/contract-to-draft.helper.ts +75 -0
  51. package/src/modules/green-invoice/resolvers/green-invoice.resolvers.ts +15 -63
  52. package/src/modules/green-invoice/typeDefs/green-invoice.graphql.ts +4 -0
  53. package/dist/server/src/modules/financial-entities/helpers/admin-businesses.helper.d.ts +0 -31
  54. package/dist/server/src/modules/financial-entities/helpers/admin-businesses.helper.js +0 -27
  55. package/dist/server/src/modules/financial-entities/helpers/admin-businesses.helper.js.map +0 -1
  56. package/src/modules/financial-entities/helpers/admin-businesses.helper.ts +0 -33
@@ -12,6 +12,7 @@ import { convertDocumentInputIntoGreenInvoiceInput, convertGreenInvoiceDocumentT
12
12
  import { TransactionsProvider } from '../../transactions/providers/transactions.provider.js';
13
13
  import { DocumentType } from '../../../shared/enums.js';
14
14
  import { dateToTimelessDateString } from '../../../shared/helpers/index.js';
15
+ import { convertContractToDraft } from '../helpers/contract-to-draft.helper.js';
15
16
  import { deduceVatTypeFromBusiness, executeDocumentIssue, filterAndHandleSwiftTransactions, getClientFromGreenInvoiceClient, getDocumentDateOutOfTransactions, getIncomeFromDocuments, getLinkedDocumentsAttributes, getPaymentsFromTransactions, getTypeFromDocumentsAndTransactions, } from '../helpers/issue-document.helper.js';
16
17
  export const greenInvoiceResolvers = {
17
18
  Query: {
@@ -236,60 +237,15 @@ export const greenInvoiceResolvers = {
236
237
  clientMonthlyChargesDrafts: async (_, { issueMonth }, { injector }) => {
237
238
  const openContracts = await injector.get(ContractsProvider).getAllOpenContracts();
238
239
  const monthlyContracts = openContracts.filter(contract => contract.billing_cycle === 'monthly');
239
- const drafts = await Promise.all(monthlyContracts.map(async (contract) => {
240
- const businessPromise = injector
241
- .get(BusinessesProvider)
242
- .getBusinessByIdLoader.load(contract.client_id);
243
- const clientPromise = injector
244
- .get(ClientsProvider)
245
- .getClientByIdLoader.load(contract.client_id);
246
- const greenInvoiceClientPromise = getClientFromGreenInvoiceClient(injector, contract.client_id);
247
- const [business, client, greenInvoiceClient] = await Promise.all([
248
- businessPromise,
249
- clientPromise,
250
- greenInvoiceClientPromise,
251
- ]);
252
- if (!business) {
253
- throw new GraphQLError(`Business ID="${contract.client_id}" not found`);
254
- }
255
- if (!client) {
256
- throw new GraphQLError(`Client not found for business ID="${contract.client_id}"`);
257
- }
258
- if (!greenInvoiceClient) {
259
- throw new GraphQLError(`Green invoice match not found for business ID="${contract.client_id}"`);
260
- }
261
- const today = issueMonth ? addMonths(new Date(issueMonth), 1) : new Date();
262
- const monthStart = dateToTimelessDateString(startOfMonth(today));
263
- const monthEnd = dateToTimelessDateString(endOfMonth(today));
264
- const year = today.getFullYear() + (today.getMonth() === 0 ? -1 : 0);
265
- const month = format(subMonths(today, 1), 'MMMM');
266
- const documentInput = {
267
- remarks: `${contract.purchase_orders[0] ? `PO: ${contract.purchase_orders[0]}${contract.remarks ? ', ' : ''}` : ''}${contract.remarks ?? ''}`,
268
- description: `GraphQL Hive Enterprise License - ${month} ${year}`,
269
- type: normalizeDocumentType(contract.document_type),
270
- date: monthStart,
271
- dueDate: monthEnd,
272
- lang: 'ENGLISH',
273
- currency: contract.currency,
274
- vatType: 'EXEMPT',
275
- rounding: false,
276
- signed: true,
277
- client: {
278
- ...greenInvoiceClient,
279
- emails: [...(client.emails?.filter(Boolean) ?? [])],
280
- },
281
- income: [
282
- {
283
- description: `GraphQL Hive Enterprise License - ${month} ${year}`,
284
- quantity: 1,
285
- price: contract.amount,
286
- currency: contract.currency,
287
- vatType: 'EXEMPT',
288
- },
289
- ],
290
- };
291
- return documentInput;
292
- }));
240
+ const drafts = await Promise.all(monthlyContracts.map(async (contract) => convertContractToDraft(contract, injector, issueMonth)));
241
+ return drafts;
242
+ },
243
+ clientChargesDraftsByContracts: async (_, { issueMonth, contractIds }, { injector }) => {
244
+ const contracts = await injector
245
+ .get(ContractsProvider)
246
+ .getContractsByIdLoader.loadMany(contractIds)
247
+ .then(res => res.filter(c => !!c && !(c instanceof Error)));
248
+ const drafts = await Promise.all(contracts.map(async (contract) => convertContractToDraft(contract, injector, issueMonth)));
293
249
  return drafts;
294
250
  },
295
251
  clientMonthlyChargeDraft: async (_, { clientId, issueMonth }, { injector }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"green-invoice.resolvers.js","sourceRoot":"","sources":["../../../../../../src/modules/green-invoice/resolvers/green-invoice.resolvers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"green-invoice.resolvers.js","sourceRoot":"","sources":["../../../../../../src/modules/green-invoice/resolvers/green-invoice.resolvers.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,10 @@ export default gql `
5
5
  newDocumentInfoDraftByDocument(documentId: UUID!): NewDocumentInfo! @auth(role: ACCOUNTANT)
6
6
  clientMonthlyChargesDrafts(issueMonth: TimelessDate!): [NewDocumentInfo!]!
7
7
  @auth(role: ACCOUNTANT)
8
+ clientChargesDraftsByContracts(
9
+ issueMonth: TimelessDate!
10
+ contractIds: [UUID!]!
11
+ ): [NewDocumentInfo!]! @auth(role: ACCOUNTANT)
8
12
  clientMonthlyChargeDraft(clientId: UUID!, issueMonth: TimelessDate!): NewDocumentInfo!
9
13
  @auth(role: ACCOUNTANT)
10
14
  greenInvoiceClient(clientId: UUID!): GreenInvoiceClient! @auth(role: ACCOUNTANT)
@@ -1 +1 @@
1
- {"version":3,"file":"green-invoice.graphql.js","sourceRoot":"","sources":["../../../../../../src/modules/green-invoice/typeDefs/green-invoice.graphql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAohBjB,CAAC"}
1
+ {"version":3,"file":"green-invoice.graphql.js","sourceRoot":"","sources":["../../../../../../src/modules/green-invoice/typeDefs/green-invoice.graphql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwhBjB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@accounter/server",
3
- "version": "0.0.8-alpha-20251030162201-d2f279aafe537912ec3546af855cbd3a38ac0f5c",
3
+ "version": "0.0.8-alpha-20251030164843-d2f490daba879840366288d1f62974ab25081876",
4
4
  "type": "module",
5
5
  "description": "",
6
6
  "license": "MIT",
@@ -148,15 +148,11 @@ export type AdminBusiness = {
148
148
  readonly id: Scalars['UUID']['output'];
149
149
  readonly name: Scalars['String']['output'];
150
150
  readonly registrationDate: Scalars['TimelessDate']['output'];
151
- /** Social Security Info */
152
- readonly socialSecurityDeductionsId?: Maybe<Scalars['String']['output']>;
153
- readonly socialSecurityEmployerIds: ReadonlyArray<AnnualId>;
154
- /** Tax Advances Info */
155
- readonly taxAdvancesAnnualIds: ReadonlyArray<AnnualId>;
156
- readonly taxAdvancesRates: ReadonlyArray<TaxAdvancesRate>;
157
- readonly withholdingTaxAnnualIds: ReadonlyArray<AnnualId>;
158
- /** Withholding Tax Info */
159
- readonly withholdingTaxCompanyId?: Maybe<Scalars['String']['output']>;
151
+ readonly socialSecurityEmployerId?: Maybe<Scalars['String']['output']>;
152
+ readonly taxAdvancesId?: Maybe<Scalars['String']['output']>;
153
+ readonly taxAdvancesRate?: Maybe<Scalars['Float']['output']>;
154
+ readonly withholdingTaxBookNumber?: Maybe<Scalars['String']['output']>;
155
+ readonly withholdingTaxFileNumber?: Maybe<Scalars['String']['output']>;
160
156
  };
161
157
 
162
158
  /** defines a tag / category for charge arrangement */
@@ -293,19 +289,6 @@ export type AdminContextInput = {
293
289
  readonly zkufotIncomeTaxCategoryId?: InputMaybe<Scalars['UUID']['input']>;
294
290
  };
295
291
 
296
- /** Represents an annual identifier for tax purposes. */
297
- export type AnnualId = {
298
- readonly __typename?: 'AnnualId';
299
- readonly id: Scalars['String']['output'];
300
- readonly year: Scalars['Int']['output'];
301
- };
302
-
303
- /** Input type representing an annual identifier for tax purposes. */
304
- export type AnnualIdInput = {
305
- readonly id: Scalars['String']['input'];
306
- readonly year: Scalars['Int']['input'];
307
- };
308
-
309
292
  /** Audit opinion type enum (חוות דעת) */
310
293
  export type AuditOpinionType =
311
294
  /** Adverse opinion (שלילית) */
@@ -1165,12 +1148,12 @@ export type Country = {
1165
1148
  /** Input type for creating a new admin business. */
1166
1149
  export type CreateAdminBusinessInput = {
1167
1150
  readonly businessId: Scalars['UUID']['input'];
1168
- readonly companyTaxId: Scalars['String']['input'];
1169
1151
  readonly registrationDate: Scalars['TimelessDate']['input'];
1170
1152
  readonly socialSecurityEmployerId?: InputMaybe<Scalars['String']['input']>;
1171
- readonly taxAdvancesAnnualId?: InputMaybe<Scalars['String']['input']>;
1153
+ readonly taxAdvancesId?: InputMaybe<Scalars['String']['input']>;
1172
1154
  readonly taxAdvancesRate?: InputMaybe<Scalars['Float']['input']>;
1173
- readonly withholdingTaxAnnualId?: InputMaybe<Scalars['String']['input']>;
1155
+ readonly withholdingTaxBookNumber?: InputMaybe<Scalars['String']['input']>;
1156
+ readonly withholdingTaxFileNumber?: InputMaybe<Scalars['String']['input']>;
1174
1157
  };
1175
1158
 
1176
1159
  /** input for creating a new contract */
@@ -3549,9 +3532,12 @@ export type Query = {
3549
3532
  readonly chargesWithLedgerChanges: ReadonlyArray<ChargesWithLedgerChangesResult>;
3550
3533
  readonly chargesWithMissingRequiredInfo: PaginatedCharges;
3551
3534
  readonly client: Client;
3535
+ readonly clientChargesDraftsByContracts: ReadonlyArray<NewDocumentInfo>;
3552
3536
  readonly clientMonthlyChargeDraft: NewDocumentInfo;
3553
3537
  readonly clientMonthlyChargesDrafts: ReadonlyArray<NewDocumentInfo>;
3538
+ readonly contractsByAdmin: ReadonlyArray<Contract>;
3554
3539
  readonly contractsByClient: ReadonlyArray<Contract>;
3540
+ readonly contractsById: Contract;
3555
3541
  readonly corporateTaxByDate: CorporateTax;
3556
3542
  readonly corporateTaxRulingComplianceReport: ReadonlyArray<CorporateTaxRulingComplianceReport>;
3557
3543
  readonly deposit: BankDeposit;
@@ -3703,6 +3689,13 @@ export type QueryClientArgs = {
3703
3689
  };
3704
3690
 
3705
3691
 
3692
+ /** query root */
3693
+ export type QueryClientChargesDraftsByContractsArgs = {
3694
+ contractIds: ReadonlyArray<Scalars['UUID']['input']>;
3695
+ issueMonth: Scalars['TimelessDate']['input'];
3696
+ };
3697
+
3698
+
3706
3699
  /** query root */
3707
3700
  export type QueryClientMonthlyChargeDraftArgs = {
3708
3701
  clientId: Scalars['UUID']['input'];
@@ -3716,12 +3709,24 @@ export type QueryClientMonthlyChargesDraftsArgs = {
3716
3709
  };
3717
3710
 
3718
3711
 
3712
+ /** query root */
3713
+ export type QueryContractsByAdminArgs = {
3714
+ adminId: Scalars['UUID']['input'];
3715
+ };
3716
+
3717
+
3719
3718
  /** query root */
3720
3719
  export type QueryContractsByClientArgs = {
3721
3720
  clientId: Scalars['UUID']['input'];
3722
3721
  };
3723
3722
 
3724
3723
 
3724
+ /** query root */
3725
+ export type QueryContractsByIdArgs = {
3726
+ id: Scalars['UUID']['input'];
3727
+ };
3728
+
3729
+
3725
3730
  /** query root */
3726
3731
  export type QueryCorporateTaxByDateArgs = {
3727
3732
  date: Scalars['TimelessDate']['input'];
@@ -4390,19 +4395,6 @@ export type TagInput = {
4390
4395
  readonly id: Scalars['String']['input'];
4391
4396
  };
4392
4397
 
4393
- /** Represents the tax advance rate for a specific date. */
4394
- export type TaxAdvancesRate = {
4395
- readonly __typename?: 'TaxAdvancesRate';
4396
- readonly date: Scalars['TimelessDate']['output'];
4397
- readonly rate: Scalars['Float']['output'];
4398
- };
4399
-
4400
- /** Input type representing the tax advance rate for a specific date. */
4401
- export type TaxAdvancesRateInput = {
4402
- readonly date: Scalars['TimelessDate']['input'];
4403
- readonly rate: Scalars['Float']['input'];
4404
- };
4405
-
4406
4398
  /** Tax category entity used for ledger records */
4407
4399
  export type TaxCategory = FinancialEntity & {
4408
4400
  readonly __typename?: 'TaxCategory';
@@ -4527,17 +4519,12 @@ export type Unprocessed = Document & Linkable & {
4527
4519
 
4528
4520
  /** Input type for updating admin business details. */
4529
4521
  export type UpdateAdminBusinessInput = {
4530
- readonly governmentId?: InputMaybe<Scalars['String']['input']>;
4531
- readonly name?: InputMaybe<Scalars['String']['input']>;
4532
4522
  readonly registrationDate?: InputMaybe<Scalars['TimelessDate']['input']>;
4533
- /** Social Security Info */
4534
- readonly socialSecurityEmployerIds?: InputMaybe<ReadonlyArray<AnnualIdInput>>;
4535
- /** Tax Advances Info */
4536
- readonly taxAdvancesAnnualIds?: InputMaybe<ReadonlyArray<AnnualIdInput>>;
4537
- readonly taxAdvancesRates?: InputMaybe<ReadonlyArray<TaxAdvancesRateInput>>;
4538
- readonly withholdingTaxAnnualIds?: InputMaybe<ReadonlyArray<AnnualIdInput>>;
4539
- /** Withholding Tax Info */
4540
- readonly withholdingTaxCompanyId?: InputMaybe<Scalars['String']['input']>;
4523
+ readonly socialSecurityEmployerId?: InputMaybe<Scalars['String']['input']>;
4524
+ readonly taxAdvancesId?: InputMaybe<Scalars['String']['input']>;
4525
+ readonly taxAdvancesRate?: InputMaybe<Scalars['Float']['input']>;
4526
+ readonly withholdingTaxBookNumber?: InputMaybe<Scalars['String']['input']>;
4527
+ readonly withholdingTaxFileNumber?: InputMaybe<Scalars['String']['input']>;
4541
4528
  };
4542
4529
 
4543
4530
  /** input for updateBusiness */
@@ -5035,8 +5022,6 @@ export type ResolversTypes = {
5035
5022
  AdminBusiness: ResolverTypeWrapper<IGetAllAdminBusinessesResult>;
5036
5023
  AdminContext: ResolverTypeWrapper<IGetAdminContextsResult>;
5037
5024
  AdminContextInput: AdminContextInput;
5038
- AnnualId: ResolverTypeWrapper<AnnualId>;
5039
- AnnualIdInput: AnnualIdInput;
5040
5025
  AuditOpinionType: AuditOpinionType;
5041
5026
  BalanceTransactions: ResolverTypeWrapper<IGetNormalizedBalanceTransactionsResult>;
5042
5027
  BankDeposit: ResolverTypeWrapper<Omit<BankDeposit, 'transactions'> & { transactions: ReadonlyArray<ResolversTypes['Transaction']> }>;
@@ -5253,8 +5238,6 @@ export type ResolversTypes = {
5253
5238
  SuggestionsInput: SuggestionsInput;
5254
5239
  Tag: ResolverTypeWrapper<IGetAllTagsResult>;
5255
5240
  TagInput: TagInput;
5256
- TaxAdvancesRate: ResolverTypeWrapper<TaxAdvancesRate>;
5257
- TaxAdvancesRateInput: TaxAdvancesRateInput;
5258
5241
  TaxCategory: ResolverTypeWrapper<IGetAllTaxCategoriesResult>;
5259
5242
  TaxReport: ResolverTypeWrapper<Omit<TaxReport, 'reference' | 'report'> & { reference: ReadonlyArray<ResolversTypes['TaxReportYear']>, report: ResolversTypes['TaxReportYear'] }>;
5260
5243
  TaxReportYear: ResolverTypeWrapper<TaxReportYearProto>;
@@ -5326,8 +5309,6 @@ export type ResolversParentTypes = {
5326
5309
  AdminBusiness: IGetAllAdminBusinessesResult;
5327
5310
  AdminContext: IGetAdminContextsResult;
5328
5311
  AdminContextInput: AdminContextInput;
5329
- AnnualId: AnnualId;
5330
- AnnualIdInput: AnnualIdInput;
5331
5312
  BalanceTransactions: IGetNormalizedBalanceTransactionsResult;
5332
5313
  BankDeposit: Omit<BankDeposit, 'transactions'> & { transactions: ReadonlyArray<ResolversParentTypes['Transaction']> };
5333
5314
  BankDepositCharge: IGetChargesByIdsResult;
@@ -5509,8 +5490,6 @@ export type ResolversParentTypes = {
5509
5490
  SuggestionsInput: SuggestionsInput;
5510
5491
  Tag: IGetAllTagsResult;
5511
5492
  TagInput: TagInput;
5512
- TaxAdvancesRate: TaxAdvancesRate;
5513
- TaxAdvancesRateInput: TaxAdvancesRateInput;
5514
5493
  TaxCategory: IGetAllTaxCategoriesResult;
5515
5494
  TaxReport: Omit<TaxReport, 'reference' | 'report'> & { reference: ReadonlyArray<ResolversParentTypes['TaxReportYear']>, report: ResolversParentTypes['TaxReportYear'] };
5516
5495
  TaxReportYear: TaxReportYearProto;
@@ -5591,12 +5570,11 @@ export type AdminBusinessResolvers<ContextType = GraphQLModules.Context, ParentT
5591
5570
  id?: Resolver<ResolversTypes['UUID'], ParentType, ContextType>;
5592
5571
  name?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
5593
5572
  registrationDate?: Resolver<ResolversTypes['TimelessDate'], ParentType, ContextType>;
5594
- socialSecurityDeductionsId?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
5595
- socialSecurityEmployerIds?: Resolver<ReadonlyArray<ResolversTypes['AnnualId']>, ParentType, ContextType>;
5596
- taxAdvancesAnnualIds?: Resolver<ReadonlyArray<ResolversTypes['AnnualId']>, ParentType, ContextType>;
5597
- taxAdvancesRates?: Resolver<ReadonlyArray<ResolversTypes['TaxAdvancesRate']>, ParentType, ContextType>;
5598
- withholdingTaxAnnualIds?: Resolver<ReadonlyArray<ResolversTypes['AnnualId']>, ParentType, ContextType>;
5599
- withholdingTaxCompanyId?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
5573
+ socialSecurityEmployerId?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
5574
+ taxAdvancesId?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
5575
+ taxAdvancesRate?: Resolver<Maybe<ResolversTypes['Float']>, ParentType, ContextType>;
5576
+ withholdingTaxBookNumber?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
5577
+ withholdingTaxFileNumber?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
5600
5578
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
5601
5579
  };
5602
5580
 
@@ -5667,12 +5645,6 @@ export type AdminContextResolvers<ContextType = GraphQLModules.Context, ParentTy
5667
5645
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
5668
5646
  };
5669
5647
 
5670
- export type AnnualIdResolvers<ContextType = GraphQLModules.Context, ParentType extends ResolversParentTypes['AnnualId'] = ResolversParentTypes['AnnualId']> = {
5671
- id?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
5672
- year?: Resolver<ResolversTypes['Int'], ParentType, ContextType>;
5673
- __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
5674
- };
5675
-
5676
5648
  export type BalanceTransactionsResolvers<ContextType = GraphQLModules.Context, ParentType extends ResolversParentTypes['BalanceTransactions'] = ResolversParentTypes['BalanceTransactions']> = {
5677
5649
  amount?: Resolver<ResolversTypes['FinancialAmount'], ParentType, ContextType>;
5678
5650
  amountUsd?: Resolver<ResolversTypes['FinancialAmount'], ParentType, ContextType>;
@@ -7297,9 +7269,12 @@ export type QueryResolvers<ContextType = GraphQLModules.Context, ParentType exte
7297
7269
  chargesWithLedgerChanges?: Resolver<ReadonlyArray<ResolversTypes['ChargesWithLedgerChangesResult']>, ParentType, ContextType, Partial<QueryChargesWithLedgerChangesArgs>>;
7298
7270
  chargesWithMissingRequiredInfo?: Resolver<ResolversTypes['PaginatedCharges'], ParentType, ContextType, RequireFields<QueryChargesWithMissingRequiredInfoArgs, 'limit' | 'page'>>;
7299
7271
  client?: Resolver<ResolversTypes['Client'], ParentType, ContextType, RequireFields<QueryClientArgs, 'businessId'>>;
7272
+ clientChargesDraftsByContracts?: Resolver<ReadonlyArray<ResolversTypes['NewDocumentInfo']>, ParentType, ContextType, RequireFields<QueryClientChargesDraftsByContractsArgs, 'contractIds' | 'issueMonth'>>;
7300
7273
  clientMonthlyChargeDraft?: Resolver<ResolversTypes['NewDocumentInfo'], ParentType, ContextType, RequireFields<QueryClientMonthlyChargeDraftArgs, 'clientId' | 'issueMonth'>>;
7301
7274
  clientMonthlyChargesDrafts?: Resolver<ReadonlyArray<ResolversTypes['NewDocumentInfo']>, ParentType, ContextType, RequireFields<QueryClientMonthlyChargesDraftsArgs, 'issueMonth'>>;
7275
+ contractsByAdmin?: Resolver<ReadonlyArray<ResolversTypes['Contract']>, ParentType, ContextType, RequireFields<QueryContractsByAdminArgs, 'adminId'>>;
7302
7276
  contractsByClient?: Resolver<ReadonlyArray<ResolversTypes['Contract']>, ParentType, ContextType, RequireFields<QueryContractsByClientArgs, 'clientId'>>;
7277
+ contractsById?: Resolver<ResolversTypes['Contract'], ParentType, ContextType, RequireFields<QueryContractsByIdArgs, 'id'>>;
7303
7278
  corporateTaxByDate?: Resolver<ResolversTypes['CorporateTax'], ParentType, ContextType, RequireFields<QueryCorporateTaxByDateArgs, 'date'>>;
7304
7279
  corporateTaxRulingComplianceReport?: Resolver<ReadonlyArray<ResolversTypes['CorporateTaxRulingComplianceReport']>, ParentType, ContextType, RequireFields<QueryCorporateTaxRulingComplianceReportArgs, 'years'>>;
7305
7280
  deposit?: Resolver<ResolversTypes['BankDeposit'], ParentType, ContextType, RequireFields<QueryDepositArgs, 'depositId'>>;
@@ -7580,12 +7555,6 @@ export type TagResolvers<ContextType = GraphQLModules.Context, ParentType extend
7580
7555
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
7581
7556
  };
7582
7557
 
7583
- export type TaxAdvancesRateResolvers<ContextType = GraphQLModules.Context, ParentType extends ResolversParentTypes['TaxAdvancesRate'] = ResolversParentTypes['TaxAdvancesRate']> = {
7584
- date?: Resolver<ResolversTypes['TimelessDate'], ParentType, ContextType>;
7585
- rate?: Resolver<ResolversTypes['Float'], ParentType, ContextType>;
7586
- __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
7587
- };
7588
-
7589
7558
  export type TaxCategoryResolvers<ContextType = GraphQLModules.Context, ParentType extends ResolversParentTypes['TaxCategory'] = ResolversParentTypes['TaxCategory']> = {
7590
7559
  createdAt?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
7591
7560
  id?: Resolver<ResolversTypes['UUID'], ParentType, ContextType>;
@@ -7854,7 +7823,6 @@ export type YearlyLedgerReportFinancialEntityInfoResolvers<ContextType = GraphQL
7854
7823
  export type Resolvers<ContextType = GraphQLModules.Context> = {
7855
7824
  AdminBusiness?: AdminBusinessResolvers<ContextType>;
7856
7825
  AdminContext?: AdminContextResolvers<ContextType>;
7857
- AnnualId?: AnnualIdResolvers<ContextType>;
7858
7826
  BalanceTransactions?: BalanceTransactionsResolvers<ContextType>;
7859
7827
  BankDeposit?: BankDepositResolvers<ContextType>;
7860
7828
  BankDepositCharge?: BankDepositChargeResolvers<ContextType>;
@@ -8000,7 +7968,6 @@ export type Resolvers<ContextType = GraphQLModules.Context> = {
8000
7968
  Suggestions?: SuggestionsResolvers<ContextType>;
8001
7969
  SuggestionsEmailListenerConfig?: SuggestionsEmailListenerConfigResolvers<ContextType>;
8002
7970
  Tag?: TagResolvers<ContextType>;
8003
- TaxAdvancesRate?: TaxAdvancesRateResolvers<ContextType>;
8004
7971
  TaxCategory?: TaxCategoryResolvers<ContextType>;
8005
7972
  TaxReport?: TaxReportResolvers<ContextType>;
8006
7973
  TaxReportYear?: TaxReportYearResolvers<ContextType>;
@@ -69,6 +69,38 @@ export interface IGetContractsByIdsQuery {
69
69
  result: IGetContractsByIdsResult;
70
70
  }
71
71
 
72
+ /** 'GetContractsByAdminBusinessIds' parameters type */
73
+ export interface IGetContractsByAdminBusinessIdsParams {
74
+ adminBusinessIds: readonly (string | null | void)[];
75
+ }
76
+
77
+ /** 'GetContractsByAdminBusinessIds' return type */
78
+ export interface IGetContractsByAdminBusinessIdsResult {
79
+ amount: number;
80
+ billing_cycle: string;
81
+ client_id: string;
82
+ currency: currency;
83
+ document_type: document_type;
84
+ end_date: Date;
85
+ id: string;
86
+ is_active: boolean | null;
87
+ ms_cloud: string | null;
88
+ operations_count: string;
89
+ owner_id: string | null;
90
+ plan: string | null;
91
+ product: string | null;
92
+ purchase_orders: stringArray;
93
+ remarks: string | null;
94
+ signed_agreement: string | null;
95
+ start_date: Date;
96
+ }
97
+
98
+ /** 'GetContractsByAdminBusinessIds' query type */
99
+ export interface IGetContractsByAdminBusinessIdsQuery {
100
+ params: IGetContractsByAdminBusinessIdsParams;
101
+ result: IGetContractsByAdminBusinessIdsResult;
102
+ }
103
+
72
104
  /** 'GetContractsByClientIds' parameters type */
73
105
  export interface IGetContractsByClientIdsParams {
74
106
  clientIds: readonly (string | null | void)[];
@@ -2,7 +2,7 @@ import * as Types from "../../../__generated__/types.js";
2
2
  import * as gm from "graphql-modules";
3
3
  export namespace ContractsModule {
4
4
  interface DefinedFields {
5
- Query: 'allOpenContracts' | 'contractsByClient';
5
+ Query: 'allOpenContracts' | 'contractsByClient' | 'contractsByAdmin' | 'contractsById';
6
6
  Mutation: 'updateContract' | 'deleteContract' | 'createContract';
7
7
  Contract: 'id' | 'client' | 'purchaseOrders' | 'startDate' | 'endDate' | 'remarks' | 'amount' | 'documentType' | 'billingCycle' | 'isActive' | 'product' | 'plan' | 'msCloud' | 'operationsLimit';
8
8
  };
@@ -52,6 +52,8 @@ export namespace ContractsModule {
52
52
  '*'?: gm.Middleware[];
53
53
  allOpenContracts?: gm.Middleware[];
54
54
  contractsByClient?: gm.Middleware[];
55
+ contractsByAdmin?: gm.Middleware[];
56
+ contractsById?: gm.Middleware[];
55
57
  };
56
58
  Mutation?: {
57
59
  '*'?: gm.Middleware[];
@@ -1,12 +1,14 @@
1
1
  import DataLoader from 'dataloader';
2
2
  import { Injectable, Scope } from 'graphql-modules';
3
3
  import { DBProvider } from '@modules/app-providers/db.provider.js';
4
+ import { BusinessesProvider } from '@modules/financial-entities/providers/businesses.provider.js';
4
5
  import { sql } from '@pgtyped/runtime';
5
6
  import { getCacheInstance } from '@shared/helpers';
6
7
  import type {
7
8
  IDeleteContractQuery,
8
9
  IGetAllOpenContractsQuery,
9
10
  IGetAllOpenContractsResult,
11
+ IGetContractsByAdminBusinessIdsQuery,
10
12
  IGetContractsByClientIdsQuery,
11
13
  IGetContractsByIdsQuery,
12
14
  IInsertContractParams,
@@ -25,6 +27,12 @@ const getContractsByIds = sql<IGetContractsByIdsQuery>`
25
27
  FROM accounter_schema.clients_contracts
26
28
  WHERE id In $$ids;`;
27
29
 
30
+ const getContractsByAdminBusinessIds = sql<IGetContractsByAdminBusinessIdsQuery>`
31
+ SELECT fe.owner_id, c.*
32
+ FROM accounter_schema.clients_contracts c
33
+ LEFT JOIN accounter_schema.financial_entities fe ON c.client_id = fe.id
34
+ WHERE owner_id IN $$adminBusinessIds;`;
35
+
28
36
  const getContractsByClientIds = sql<IGetContractsByClientIdsQuery>`
29
37
  SELECT *
30
38
  FROM accounter_schema.clients_contracts
@@ -132,7 +140,7 @@ const insertContract = sql<IInsertContractQuery>`
132
140
  RETURNING *;`;
133
141
 
134
142
  @Injectable({
135
- scope: Scope.Singleton,
143
+ scope: Scope.Operation,
136
144
  global: true,
137
145
  })
138
146
  export class ContractsProvider {
@@ -140,7 +148,10 @@ export class ContractsProvider {
140
148
  stdTTL: 60 * 60, // 1 hours
141
149
  });
142
150
 
143
- constructor(private dbProvider: DBProvider) {}
151
+ constructor(
152
+ private dbProvider: DBProvider,
153
+ private businessesProvider: BusinessesProvider,
154
+ ) {}
144
155
 
145
156
  public getAllOpenContracts() {
146
157
  const cached = this.cache.get<IGetAllOpenContractsResult[]>('all-contracts');
@@ -171,6 +182,24 @@ export class ContractsProvider {
171
182
  },
172
183
  );
173
184
 
185
+ private async contractsByAdminBusinessIds(adminBusinessIds: readonly string[]) {
186
+ const contracts = await getContractsByAdminBusinessIds.run(
187
+ { adminBusinessIds },
188
+ this.dbProvider,
189
+ );
190
+ return adminBusinessIds.map(adminBusinessId =>
191
+ contracts.filter(contract => contract.owner_id === adminBusinessId),
192
+ );
193
+ }
194
+
195
+ public getContractsByAdminBusinessIdLoader = new DataLoader(
196
+ (adminBusinessIds: readonly string[]) => this.contractsByAdminBusinessIds(adminBusinessIds),
197
+ {
198
+ cacheKeyFn: adminBusinessId => `admin-business-${adminBusinessId}-contracts`,
199
+ cacheMap: this.cache,
200
+ },
201
+ );
202
+
174
203
  private async contractsByClients(clientIds: readonly string[]) {
175
204
  const contracts = await getContractsByClientIds.run({ clientIds }, this.dbProvider);
176
205
  return clientIds.map(clientId => contracts.filter(contract => contract.client_id === clientId));
@@ -185,22 +214,35 @@ export class ContractsProvider {
185
214
  );
186
215
 
187
216
  public async createContract(params: IInsertContractParams) {
188
- this.clearCache();
189
217
  const [newContract] = await insertContract.run(params, this.dbProvider);
190
218
  this.cache.set(`contract-${newContract.id}`, newContract);
219
+
220
+ // Invalidate list caches
221
+ this.getContractsByClientIdLoader.clear(newContract.client_id);
222
+ const business = await this.businessesProvider.getBusinessByIdLoader.load(
223
+ newContract.client_id,
224
+ );
225
+ if (business?.owner_id) {
226
+ this.getContractsByAdminBusinessIdLoader.clear(business.owner_id);
227
+ }
228
+
191
229
  return newContract;
192
230
  }
193
231
 
194
232
  public async updateContract(params: IUpdateContractParams) {
195
- this.clearCache();
196
233
  const [updatedContract] = await updateContract.run(params, this.dbProvider);
234
+ if (params.contractId) {
235
+ this.invalidateCacheForContract(params.contractId);
236
+ } else {
237
+ this.clearCache();
238
+ }
197
239
  this.cache.set(`contract-${updatedContract.id}`, updatedContract);
198
240
  return updatedContract;
199
241
  }
200
242
 
201
243
  public async deleteContract(contractId: string) {
202
244
  await deleteContract.run({ id: contractId }, this.dbProvider);
203
- this.clearCache();
245
+ this.invalidateCacheForContract(contractId);
204
246
  return true;
205
247
  }
206
248
 
@@ -208,8 +250,11 @@ export class ContractsProvider {
208
250
  const contract = await this.getContractsByIdLoader.load(contractId);
209
251
  if (contract) {
210
252
  this.cache.delete(`client-contracts-${contract.client_id}`);
253
+ const business = await this.businessesProvider.getBusinessByIdLoader.load(contract.client_id);
254
+ if (business?.owner_id) {
255
+ this.cache.delete(`admin-business-${business.owner_id}-contracts`);
256
+ }
211
257
  }
212
- this.cache.delete(`contract-${contractId}`);
213
258
  }
214
259
 
215
260
  public clearCache() {