@silexpert/core 1.3.94-8 → 1.3.94
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/cjs/api/resources/Society.d.ts +1 -2
- package/dist/cjs/api/resources/Society.d.ts.map +1 -1
- package/dist/cjs/api/resources/Society.js +0 -3
- package/dist/cjs/api/resources/Society.js.map +1 -1
- package/dist/cjs/api/resources/User.js +1 -1
- package/dist/cjs/api/resources/User.js.map +1 -1
- package/dist/cjs/api/resources.d.ts +0 -2
- package/dist/cjs/api/resources.d.ts.map +1 -1
- package/dist/cjs/api/resources.js +0 -2
- package/dist/cjs/api/resources.js.map +1 -1
- package/dist/cjs/types/Enum/BalanceSheet.d.ts +2 -2
- package/dist/cjs/types/Enum/BalanceSheet.js +2 -2
- package/dist/cjs/types/Enum/BalanceSheet.js.map +1 -1
- package/dist/cjs/types/Interface/api/calendarEvent/updateCalendarEvent.d.ts +0 -1
- package/dist/cjs/types/Interface/api/calendarEvent/updateCalendarEvent.d.ts.map +1 -1
- package/dist/cjs/types/Interface/api/calendarEvent/updateCalendarEvent.js +0 -4
- package/dist/cjs/types/Interface/api/calendarEvent/updateCalendarEvent.js.map +1 -1
- package/dist/cjs/types/Interface/api/config/ConfigType.d.ts +3 -0
- package/dist/cjs/types/Interface/api/config/ConfigType.d.ts.map +1 -1
- package/dist/cjs/types/Interface/api/config/ConfigType.js.map +1 -1
- package/dist/cjs/types/Interface/api/shopify/InvoicesShopify.d.ts +4 -5
- package/dist/cjs/types/Interface/api/shopify/InvoicesShopify.d.ts.map +1 -1
- package/dist/cjs/types/Interface/api/shopify/InvoicesShopify.js +0 -13
- package/dist/cjs/types/Interface/api/shopify/InvoicesShopify.js.map +1 -1
- package/dist/cjs/types/index.d.ts +0 -1
- package/dist/cjs/types/index.d.ts.map +1 -1
- package/dist/cjs/types/index.js +0 -1
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/mjs/api/resources/Society.d.ts +1 -2
- package/dist/mjs/api/resources/Society.d.ts.map +1 -1
- package/dist/mjs/api/resources/Society.js +0 -3
- package/dist/mjs/api/resources/Society.js.map +1 -1
- package/dist/mjs/api/resources/User.js +1 -1
- package/dist/mjs/api/resources/User.js.map +1 -1
- package/dist/mjs/api/resources.d.ts +0 -2
- package/dist/mjs/api/resources.d.ts.map +1 -1
- package/dist/mjs/api/resources.js +0 -2
- package/dist/mjs/api/resources.js.map +1 -1
- package/dist/mjs/types/Enum/BalanceSheet.d.ts +2 -2
- package/dist/mjs/types/Enum/BalanceSheet.js +2 -2
- package/dist/mjs/types/Enum/BalanceSheet.js.map +1 -1
- package/dist/mjs/types/Interface/api/calendarEvent/updateCalendarEvent.d.ts +0 -1
- package/dist/mjs/types/Interface/api/calendarEvent/updateCalendarEvent.d.ts.map +1 -1
- package/dist/mjs/types/Interface/api/calendarEvent/updateCalendarEvent.js +0 -5
- package/dist/mjs/types/Interface/api/calendarEvent/updateCalendarEvent.js.map +1 -1
- package/dist/mjs/types/Interface/api/config/ConfigType.d.ts +3 -0
- package/dist/mjs/types/Interface/api/config/ConfigType.d.ts.map +1 -1
- package/dist/mjs/types/Interface/api/config/ConfigType.js.map +1 -1
- package/dist/mjs/types/Interface/api/shopify/InvoicesShopify.d.ts +4 -5
- package/dist/mjs/types/Interface/api/shopify/InvoicesShopify.d.ts.map +1 -1
- package/dist/mjs/types/Interface/api/shopify/InvoicesShopify.js +0 -14
- package/dist/mjs/types/Interface/api/shopify/InvoicesShopify.js.map +1 -1
- package/dist/mjs/types/index.d.ts +0 -1
- package/dist/mjs/types/index.d.ts.map +1 -1
- package/dist/mjs/types/index.js +0 -1
- package/dist/mjs/types/index.js.map +1 -1
- package/package.json +1 -1
- package/ts/api/resources/Society.ts +0 -5
- package/ts/api/resources/User.ts +1 -1
- package/ts/api/resources.ts +0 -2
- package/ts/types/Enum/BalanceSheet.ts +2 -2
- package/ts/types/Interface/api/calendarEvent/updateCalendarEvent.ts +0 -3
- package/ts/types/Interface/api/config/ConfigType.ts +3 -0
- package/ts/types/Interface/api/shopify/InvoicesShopify.ts +4 -19
- package/ts/types/index.ts +0 -1
- package/dist/cjs/api/resources/BankDedup.d.ts +0 -9
- package/dist/cjs/api/resources/BankDedup.d.ts.map +0 -1
- package/dist/cjs/api/resources/BankDedup.js +0 -14
- package/dist/cjs/api/resources/BankDedup.js.map +0 -1
- package/dist/cjs/types/Interface/api/society/QueryToArchived.d.ts +0 -5
- package/dist/cjs/types/Interface/api/society/QueryToArchived.d.ts.map +0 -1
- package/dist/cjs/types/Interface/api/society/QueryToArchived.js +0 -25
- package/dist/cjs/types/Interface/api/society/QueryToArchived.js.map +0 -1
- package/dist/cjs/types/Interface/models/IBankDedup.d.ts +0 -93
- package/dist/cjs/types/Interface/models/IBankDedup.d.ts.map +0 -1
- package/dist/cjs/types/Interface/models/IBankDedup.js +0 -3
- package/dist/cjs/types/Interface/models/IBankDedup.js.map +0 -1
- package/dist/mjs/api/resources/BankDedup.d.ts +0 -9
- package/dist/mjs/api/resources/BankDedup.d.ts.map +0 -1
- package/dist/mjs/api/resources/BankDedup.js +0 -10
- package/dist/mjs/api/resources/BankDedup.js.map +0 -1
- package/dist/mjs/types/Interface/api/society/QueryToArchived.d.ts +0 -5
- package/dist/mjs/types/Interface/api/society/QueryToArchived.d.ts.map +0 -1
- package/dist/mjs/types/Interface/api/society/QueryToArchived.js +0 -22
- package/dist/mjs/types/Interface/api/society/QueryToArchived.js.map +0 -1
- package/dist/mjs/types/Interface/models/IBankDedup.d.ts +0 -93
- package/dist/mjs/types/Interface/models/IBankDedup.d.ts.map +0 -1
- package/dist/mjs/types/Interface/models/IBankDedup.js +0 -2
- package/dist/mjs/types/Interface/models/IBankDedup.js.map +0 -1
- package/ts/api/resources/BankDedup.ts +0 -11
- package/ts/types/Interface/api/society/QueryToArchived.ts +0 -10
- package/ts/types/Interface/models/IBankDedup.ts +0 -97
package/ts/api/resources.ts
CHANGED
|
@@ -179,7 +179,6 @@ import { StatisticLegal } from './resources/statistic/Legal';
|
|
|
179
179
|
import { AnalyticsUtm } from './resources/AnalyticsUtm';
|
|
180
180
|
import { Caarl } from './resources/Caarl';
|
|
181
181
|
import { Gdpr } from './resources/Gdpr';
|
|
182
|
-
import { BankDedup } from './resources/BankDedup';
|
|
183
182
|
|
|
184
183
|
export const resources = {
|
|
185
184
|
budgetInsight: BudgetInsight,
|
|
@@ -265,7 +264,6 @@ export const resources = {
|
|
|
265
264
|
notificationSetting: NotificationSetting,
|
|
266
265
|
cx: Cx,
|
|
267
266
|
bankList: BankList,
|
|
268
|
-
bankDedup: BankDedup,
|
|
269
267
|
thirdParty: ThirdParty,
|
|
270
268
|
alert: Alert,
|
|
271
269
|
customerActivity: CustomerActivity,
|
|
@@ -164,7 +164,7 @@ export const BalanceSheetDetails = [
|
|
|
164
164
|
text: 'Standby',
|
|
165
165
|
color: 'grey lighten-1',
|
|
166
166
|
textColor: 'grey--text',
|
|
167
|
-
forRoles: [['admin'], ['super_admin'], ['controle_interne']
|
|
167
|
+
forRoles: [['admin'], ['super_admin'], ['controle_interne']],
|
|
168
168
|
},
|
|
169
169
|
{
|
|
170
170
|
text: 'Impayé',
|
|
@@ -229,7 +229,7 @@ export const BalanceSheetDetails = [
|
|
|
229
229
|
value: BalanceSheetState.FIX_IN_PROGRESS,
|
|
230
230
|
color: 'blue darken-4',
|
|
231
231
|
textColor: 'blue--text',
|
|
232
|
-
forRoles: [['front_office'], ['expert']
|
|
232
|
+
forRoles: [['front_office'], ['expert']],
|
|
233
233
|
},
|
|
234
234
|
{
|
|
235
235
|
text: "Accepté SIE en l'état",
|
|
@@ -135,6 +135,7 @@ interface Shine {
|
|
|
135
135
|
hostV3: string;
|
|
136
136
|
publicHost: string;
|
|
137
137
|
clientId: string;
|
|
138
|
+
clientSecret: string;
|
|
138
139
|
redirect_uris: string[];
|
|
139
140
|
status: string;
|
|
140
141
|
scope: string;
|
|
@@ -185,6 +186,7 @@ interface Access2 {
|
|
|
185
186
|
|
|
186
187
|
interface Test {
|
|
187
188
|
login: string;
|
|
189
|
+
password: string;
|
|
188
190
|
editor: string;
|
|
189
191
|
software: string;
|
|
190
192
|
wsdl: Wsdl;
|
|
@@ -196,6 +198,7 @@ interface Wsdl {
|
|
|
196
198
|
|
|
197
199
|
interface Production {
|
|
198
200
|
login: string;
|
|
201
|
+
password: string;
|
|
199
202
|
editor: string;
|
|
200
203
|
software: string;
|
|
201
204
|
wsdl: Wsdl2;
|
|
@@ -1,27 +1,12 @@
|
|
|
1
|
-
import { IsBoolean, IsOptional } from 'class-validator';
|
|
2
1
|
import { ApiPropertyOptional } from '../../../../utils';
|
|
3
|
-
import { ToBoolean } from '../../../../utils/transforms/boolean.transform';
|
|
4
2
|
|
|
5
3
|
export class InvoicesShopify {
|
|
6
4
|
@ApiPropertyOptional()
|
|
7
|
-
|
|
8
|
-
order?: string;
|
|
9
|
-
|
|
5
|
+
order: string;
|
|
10
6
|
@ApiPropertyOptional()
|
|
11
|
-
|
|
12
|
-
limit?: number;
|
|
13
|
-
|
|
7
|
+
limit: number;
|
|
14
8
|
@ApiPropertyOptional()
|
|
15
|
-
|
|
16
|
-
ids?: number[];
|
|
17
|
-
|
|
18
|
-
@ApiPropertyOptional()
|
|
19
|
-
@IsOptional()
|
|
20
|
-
idSociety?: number;
|
|
21
|
-
|
|
9
|
+
ids: number[];
|
|
22
10
|
@ApiPropertyOptional()
|
|
23
|
-
|
|
24
|
-
@IsBoolean()
|
|
25
|
-
@ToBoolean()
|
|
26
|
-
debug?: boolean;
|
|
11
|
+
idSociety: number;
|
|
27
12
|
}
|
package/ts/types/index.ts
CHANGED
|
@@ -1057,7 +1057,6 @@ export * from './Interface/api/accountsSectors/Query';
|
|
|
1057
1057
|
export * from './Interface/api/visualizedInformation/Query';
|
|
1058
1058
|
export * from './Interface/api/visualizedInformation/Update';
|
|
1059
1059
|
export * from './Interface/api/society/QueryArchived';
|
|
1060
|
-
export * from './Interface/api/society/QueryToArchived';
|
|
1061
1060
|
export * from './Interface/api/society/QueryUnpaid';
|
|
1062
1061
|
export * from './Interface/api/vatControl/CreateVatControl';
|
|
1063
1062
|
export * from './Interface/api/vatControl/QueryVatControl';
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { IBankDedupRequest, IBankDedupResponse } from '../../types/Interface/models/IBankDedup';
|
|
2
|
-
import { Resource } from '../Resource';
|
|
3
|
-
export declare class BankDedup extends Resource {
|
|
4
|
-
/**
|
|
5
|
-
* Analyze bank transactions for deduplication
|
|
6
|
-
*/
|
|
7
|
-
getAnalysis(body: IBankDedupRequest): Promise<IBankDedupResponse>;
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=BankDedup.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BankDedup.d.ts","sourceRoot":"","sources":["../../../../ts/api/resources/BankDedup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,qBAAa,SAAU,SAAQ,QAAQ;IACrC;;OAEG;IACI,WAAW,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAGzE"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BankDedup = void 0;
|
|
4
|
-
const Resource_1 = require("../Resource");
|
|
5
|
-
class BankDedup extends Resource_1.Resource {
|
|
6
|
-
/**
|
|
7
|
-
* Analyze bank transactions for deduplication
|
|
8
|
-
*/
|
|
9
|
-
getAnalysis(body) {
|
|
10
|
-
return this.axios.$post('/bank-dedup/detect', body);
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
exports.BankDedup = BankDedup;
|
|
14
|
-
//# sourceMappingURL=BankDedup.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BankDedup.js","sourceRoot":"","sources":["../../../../ts/api/resources/BankDedup.ts"],"names":[],"mappings":";;;AACA,0CAAuC;AAEvC,MAAa,SAAU,SAAQ,mBAAQ;IACrC;;OAEG;IACI,WAAW,CAAC,IAAuB;QACxC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;CACF;AAPD,8BAOC","sourcesContent":["import { IBankDedupRequest, IBankDedupResponse } from '../../types/Interface/models/IBankDedup';\nimport { Resource } from '../Resource';\n\nexport class BankDedup extends Resource {\n /**\n * Analyze bank transactions for deduplication\n */\n public getAnalysis(body: IBankDedupRequest): Promise<IBankDedupResponse> {\n return this.axios.$post('/bank-dedup/detect', body);\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QueryToArchived.d.ts","sourceRoot":"","sources":["../../../../../../ts/types/Interface/api/society/QueryToArchived.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD,qBAAa,sBAAuB,SAAQ,qBAAqB;IAI/D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.QueryToArchivedSociety = void 0;
|
|
13
|
-
const class_validator_1 = require("class-validator");
|
|
14
|
-
const utils_1 = require("../../../../utils");
|
|
15
|
-
const BasePaginate_1 = require("../BasePaginate");
|
|
16
|
-
class QueryToArchivedSociety extends BasePaginate_1.RequiredQueryPaginate {
|
|
17
|
-
}
|
|
18
|
-
exports.QueryToArchivedSociety = QueryToArchivedSociety;
|
|
19
|
-
__decorate([
|
|
20
|
-
(0, utils_1.ApiPropertyOptional)(),
|
|
21
|
-
(0, class_validator_1.IsOptional)(),
|
|
22
|
-
(0, class_validator_1.IsString)(),
|
|
23
|
-
__metadata("design:type", String)
|
|
24
|
-
], QueryToArchivedSociety.prototype, "search", void 0);
|
|
25
|
-
//# sourceMappingURL=QueryToArchived.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QueryToArchived.js","sourceRoot":"","sources":["../../../../../../ts/types/Interface/api/society/QueryToArchived.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAuD;AACvD,6CAAwD;AACxD,kDAAwD;AAExD,MAAa,sBAAuB,SAAQ,oCAAqB;CAKhE;AALD,wDAKC;AADC;IAHC,IAAA,2BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;sDACK","sourcesContent":["import { IsOptional, IsString } from 'class-validator';\nimport { ApiPropertyOptional } from '../../../../utils';\nimport { RequiredQueryPaginate } from '../BasePaginate';\n\nexport class QueryToArchivedSociety extends RequiredQueryPaginate {\n @ApiPropertyOptional()\n @IsOptional()\n @IsString()\n search?: string;\n}\n"]}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
export interface IBankDedupRequest {
|
|
2
|
-
csv: string;
|
|
3
|
-
initial: number;
|
|
4
|
-
target: number;
|
|
5
|
-
}
|
|
6
|
-
export interface BankTx {
|
|
7
|
-
id: string;
|
|
8
|
-
label: string;
|
|
9
|
-
dateValue: string;
|
|
10
|
-
credit: number;
|
|
11
|
-
debit: number;
|
|
12
|
-
sign: 1 | -1;
|
|
13
|
-
amount: number;
|
|
14
|
-
cents: number;
|
|
15
|
-
}
|
|
16
|
-
export interface DuplicateGroup {
|
|
17
|
-
id: string;
|
|
18
|
-
transactions: BankTx[];
|
|
19
|
-
amount: number;
|
|
20
|
-
cents: number;
|
|
21
|
-
sign: 1 | -1;
|
|
22
|
-
confidence: number;
|
|
23
|
-
method: 'exact' | 'fuzzy_high' | 'fuzzy_medium' | 'fuzzy_low';
|
|
24
|
-
}
|
|
25
|
-
export interface IBankDedupResult {
|
|
26
|
-
success: true;
|
|
27
|
-
initial: number;
|
|
28
|
-
target: number;
|
|
29
|
-
finalRaw: number;
|
|
30
|
-
finalAfterDedup: number;
|
|
31
|
-
diffBefore: number;
|
|
32
|
-
diffAfter: number;
|
|
33
|
-
removedGroups: {
|
|
34
|
-
id: string;
|
|
35
|
-
confidence: number;
|
|
36
|
-
method: string;
|
|
37
|
-
amount: number;
|
|
38
|
-
transactionCount: number;
|
|
39
|
-
isSelected: boolean;
|
|
40
|
-
transactions: {
|
|
41
|
-
id: string;
|
|
42
|
-
label: string;
|
|
43
|
-
dateValue: string;
|
|
44
|
-
isKept: boolean;
|
|
45
|
-
isCredit: boolean;
|
|
46
|
-
}[];
|
|
47
|
-
}[];
|
|
48
|
-
removedCount: number;
|
|
49
|
-
keptCount: number;
|
|
50
|
-
csvDeduped: string;
|
|
51
|
-
allGroups: {
|
|
52
|
-
id: string;
|
|
53
|
-
confidence: number;
|
|
54
|
-
method: string;
|
|
55
|
-
amount: number;
|
|
56
|
-
transactionCount: number;
|
|
57
|
-
isSelected: boolean;
|
|
58
|
-
transactions: {
|
|
59
|
-
id: string;
|
|
60
|
-
label: string;
|
|
61
|
-
dateValue: string;
|
|
62
|
-
isKept: boolean;
|
|
63
|
-
isCredit: boolean;
|
|
64
|
-
}[];
|
|
65
|
-
}[];
|
|
66
|
-
debug: {
|
|
67
|
-
totalGroups: number;
|
|
68
|
-
selectedGroups: number;
|
|
69
|
-
iterations: number;
|
|
70
|
-
strategiesUsed: string[];
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
export interface IBankDedupImpossible {
|
|
74
|
-
success: false;
|
|
75
|
-
reason: 'NO_EXACT_COMBINATION' | 'CSV_PARSE_ERROR' | 'INVALID_INPUT' | 'INSUFFICIENT_DUPLICATES';
|
|
76
|
-
message: string;
|
|
77
|
-
initial?: number;
|
|
78
|
-
target?: number;
|
|
79
|
-
finalRaw?: number;
|
|
80
|
-
diffBefore?: number;
|
|
81
|
-
bestAttempt?: {
|
|
82
|
-
finalAfterDedup: number;
|
|
83
|
-
diffAfter: number;
|
|
84
|
-
removedCount: number;
|
|
85
|
-
};
|
|
86
|
-
stats?: {
|
|
87
|
-
totalTx?: number;
|
|
88
|
-
totalGroups?: number;
|
|
89
|
-
strategiesTried?: string[];
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
export type IBankDedupResponse = IBankDedupResult | IBankDedupImpossible;
|
|
93
|
-
//# sourceMappingURL=IBankDedup.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IBankDedup.d.ts","sourceRoot":"","sources":["../../../../../ts/types/Interface/models/IBankDedup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IBankDedup.js","sourceRoot":"","sources":["../../../../../ts/types/Interface/models/IBankDedup.ts"],"names":[],"mappings":"","sourcesContent":["export interface IBankDedupRequest {\n csv: string; // CSV en string (avec header: label,dateValue,credit,debit)\n initial: number; // solde initial\n target: number; // solde cible\n}\n\nexport interface BankTx {\n id: string; // id interne généré\n label: string;\n dateValue: string; // YYYY-MM-DD\n credit: number;\n debit: number;\n sign: 1 | -1; // 1 = crédit net, -1 = débit net\n amount: number; // valeur absolue du mouvement (en positif)\n cents: number; // montant en centimes pour calculs exacts\n}\n\nexport interface DuplicateGroup {\n id: string;\n transactions: BankTx[];\n amount: number; // montant commun\n cents: number; // montant en centimes\n sign: 1 | -1; // signe commun\n confidence: number; // score de confiance [0 - 1]\n method: 'exact' | 'fuzzy_high' | 'fuzzy_medium' | 'fuzzy_low'; // méthode de détection\n}\n\nexport interface IBankDedupResult {\n success: true;\n initial: number;\n target: number;\n finalRaw: number;\n finalAfterDedup: number;\n diffBefore: number; // target - finalRaw\n diffAfter: number; // target - finalAfterDedup (DOIT être exactement 0, aucune tolérance)\n removedGroups: {\n id: string;\n confidence: number;\n method: string;\n amount: number;\n transactionCount: number;\n isSelected: boolean;\n transactions: {\n id: string;\n label: string;\n dateValue: string;\n isKept: boolean;\n isCredit: boolean;\n }[];\n }[];\n removedCount: number;\n keptCount: number;\n csvDeduped: string;\n allGroups: {\n id: string;\n confidence: number;\n method: string;\n amount: number;\n transactionCount: number;\n isSelected: boolean;\n transactions: {\n id: string;\n label: string;\n dateValue: string;\n isKept: boolean;\n isCredit: boolean;\n }[];\n }[];\n debug: {\n totalGroups: number;\n selectedGroups: number;\n iterations: number;\n strategiesUsed: string[];\n };\n}\n\nexport interface IBankDedupImpossible {\n success: false;\n reason: 'NO_EXACT_COMBINATION' | 'CSV_PARSE_ERROR' | 'INVALID_INPUT' | 'INSUFFICIENT_DUPLICATES';\n message: string;\n initial?: number;\n target?: number;\n finalRaw?: number;\n diffBefore?: number;\n bestAttempt?: {\n finalAfterDedup: number;\n diffAfter: number;\n removedCount: number;\n };\n stats?: {\n totalTx?: number;\n totalGroups?: number;\n strategiesTried?: string[];\n };\n}\n\nexport type IBankDedupResponse = IBankDedupResult | IBankDedupImpossible;\n"]}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { IBankDedupRequest, IBankDedupResponse } from '../../types/Interface/models/IBankDedup';
|
|
2
|
-
import { Resource } from '../Resource';
|
|
3
|
-
export declare class BankDedup extends Resource {
|
|
4
|
-
/**
|
|
5
|
-
* Analyze bank transactions for deduplication
|
|
6
|
-
*/
|
|
7
|
-
getAnalysis(body: IBankDedupRequest): Promise<IBankDedupResponse>;
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=BankDedup.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BankDedup.d.ts","sourceRoot":"","sources":["../../../../ts/api/resources/BankDedup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,qBAAa,SAAU,SAAQ,QAAQ;IACrC;;OAEG;IACI,WAAW,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAGzE"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Resource } from '../Resource';
|
|
2
|
-
export class BankDedup extends Resource {
|
|
3
|
-
/**
|
|
4
|
-
* Analyze bank transactions for deduplication
|
|
5
|
-
*/
|
|
6
|
-
getAnalysis(body) {
|
|
7
|
-
return this.axios.$post('/bank-dedup/detect', body);
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=BankDedup.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BankDedup.js","sourceRoot":"","sources":["../../../../ts/api/resources/BankDedup.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,MAAM,OAAO,SAAU,SAAQ,QAAQ;IACrC;;OAEG;IACI,WAAW,CAAC,IAAuB;QACxC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;CACF","sourcesContent":["import { IBankDedupRequest, IBankDedupResponse } from '../../types/Interface/models/IBankDedup';\nimport { Resource } from '../Resource';\n\nexport class BankDedup extends Resource {\n /**\n * Analyze bank transactions for deduplication\n */\n public getAnalysis(body: IBankDedupRequest): Promise<IBankDedupResponse> {\n return this.axios.$post('/bank-dedup/detect', body);\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QueryToArchived.d.ts","sourceRoot":"","sources":["../../../../../../ts/types/Interface/api/society/QueryToArchived.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD,qBAAa,sBAAuB,SAAQ,qBAAqB;IAI/D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
-
};
|
|
10
|
-
import { IsOptional, IsString } from 'class-validator';
|
|
11
|
-
import { ApiPropertyOptional } from '../../../../utils';
|
|
12
|
-
import { RequiredQueryPaginate } from '../BasePaginate';
|
|
13
|
-
export class QueryToArchivedSociety extends RequiredQueryPaginate {
|
|
14
|
-
search;
|
|
15
|
-
}
|
|
16
|
-
__decorate([
|
|
17
|
-
ApiPropertyOptional(),
|
|
18
|
-
IsOptional(),
|
|
19
|
-
IsString(),
|
|
20
|
-
__metadata("design:type", String)
|
|
21
|
-
], QueryToArchivedSociety.prototype, "search", void 0);
|
|
22
|
-
//# sourceMappingURL=QueryToArchived.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QueryToArchived.js","sourceRoot":"","sources":["../../../../../../ts/types/Interface/api/society/QueryToArchived.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,OAAO,sBAAuB,SAAQ,qBAAqB;IAI/D,MAAM,CAAU;CACjB;AADC;IAHC,mBAAmB,EAAE;IACrB,UAAU,EAAE;IACZ,QAAQ,EAAE;;sDACK","sourcesContent":["import { IsOptional, IsString } from 'class-validator';\nimport { ApiPropertyOptional } from '../../../../utils';\nimport { RequiredQueryPaginate } from '../BasePaginate';\n\nexport class QueryToArchivedSociety extends RequiredQueryPaginate {\n @ApiPropertyOptional()\n @IsOptional()\n @IsString()\n search?: string;\n}\n"]}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
export interface IBankDedupRequest {
|
|
2
|
-
csv: string;
|
|
3
|
-
initial: number;
|
|
4
|
-
target: number;
|
|
5
|
-
}
|
|
6
|
-
export interface BankTx {
|
|
7
|
-
id: string;
|
|
8
|
-
label: string;
|
|
9
|
-
dateValue: string;
|
|
10
|
-
credit: number;
|
|
11
|
-
debit: number;
|
|
12
|
-
sign: 1 | -1;
|
|
13
|
-
amount: number;
|
|
14
|
-
cents: number;
|
|
15
|
-
}
|
|
16
|
-
export interface DuplicateGroup {
|
|
17
|
-
id: string;
|
|
18
|
-
transactions: BankTx[];
|
|
19
|
-
amount: number;
|
|
20
|
-
cents: number;
|
|
21
|
-
sign: 1 | -1;
|
|
22
|
-
confidence: number;
|
|
23
|
-
method: 'exact' | 'fuzzy_high' | 'fuzzy_medium' | 'fuzzy_low';
|
|
24
|
-
}
|
|
25
|
-
export interface IBankDedupResult {
|
|
26
|
-
success: true;
|
|
27
|
-
initial: number;
|
|
28
|
-
target: number;
|
|
29
|
-
finalRaw: number;
|
|
30
|
-
finalAfterDedup: number;
|
|
31
|
-
diffBefore: number;
|
|
32
|
-
diffAfter: number;
|
|
33
|
-
removedGroups: {
|
|
34
|
-
id: string;
|
|
35
|
-
confidence: number;
|
|
36
|
-
method: string;
|
|
37
|
-
amount: number;
|
|
38
|
-
transactionCount: number;
|
|
39
|
-
isSelected: boolean;
|
|
40
|
-
transactions: {
|
|
41
|
-
id: string;
|
|
42
|
-
label: string;
|
|
43
|
-
dateValue: string;
|
|
44
|
-
isKept: boolean;
|
|
45
|
-
isCredit: boolean;
|
|
46
|
-
}[];
|
|
47
|
-
}[];
|
|
48
|
-
removedCount: number;
|
|
49
|
-
keptCount: number;
|
|
50
|
-
csvDeduped: string;
|
|
51
|
-
allGroups: {
|
|
52
|
-
id: string;
|
|
53
|
-
confidence: number;
|
|
54
|
-
method: string;
|
|
55
|
-
amount: number;
|
|
56
|
-
transactionCount: number;
|
|
57
|
-
isSelected: boolean;
|
|
58
|
-
transactions: {
|
|
59
|
-
id: string;
|
|
60
|
-
label: string;
|
|
61
|
-
dateValue: string;
|
|
62
|
-
isKept: boolean;
|
|
63
|
-
isCredit: boolean;
|
|
64
|
-
}[];
|
|
65
|
-
}[];
|
|
66
|
-
debug: {
|
|
67
|
-
totalGroups: number;
|
|
68
|
-
selectedGroups: number;
|
|
69
|
-
iterations: number;
|
|
70
|
-
strategiesUsed: string[];
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
export interface IBankDedupImpossible {
|
|
74
|
-
success: false;
|
|
75
|
-
reason: 'NO_EXACT_COMBINATION' | 'CSV_PARSE_ERROR' | 'INVALID_INPUT' | 'INSUFFICIENT_DUPLICATES';
|
|
76
|
-
message: string;
|
|
77
|
-
initial?: number;
|
|
78
|
-
target?: number;
|
|
79
|
-
finalRaw?: number;
|
|
80
|
-
diffBefore?: number;
|
|
81
|
-
bestAttempt?: {
|
|
82
|
-
finalAfterDedup: number;
|
|
83
|
-
diffAfter: number;
|
|
84
|
-
removedCount: number;
|
|
85
|
-
};
|
|
86
|
-
stats?: {
|
|
87
|
-
totalTx?: number;
|
|
88
|
-
totalGroups?: number;
|
|
89
|
-
strategiesTried?: string[];
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
export type IBankDedupResponse = IBankDedupResult | IBankDedupImpossible;
|
|
93
|
-
//# sourceMappingURL=IBankDedup.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IBankDedup.d.ts","sourceRoot":"","sources":["../../../../../ts/types/Interface/models/IBankDedup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IBankDedup.js","sourceRoot":"","sources":["../../../../../ts/types/Interface/models/IBankDedup.ts"],"names":[],"mappings":"","sourcesContent":["export interface IBankDedupRequest {\n csv: string; // CSV en string (avec header: label,dateValue,credit,debit)\n initial: number; // solde initial\n target: number; // solde cible\n}\n\nexport interface BankTx {\n id: string; // id interne généré\n label: string;\n dateValue: string; // YYYY-MM-DD\n credit: number;\n debit: number;\n sign: 1 | -1; // 1 = crédit net, -1 = débit net\n amount: number; // valeur absolue du mouvement (en positif)\n cents: number; // montant en centimes pour calculs exacts\n}\n\nexport interface DuplicateGroup {\n id: string;\n transactions: BankTx[];\n amount: number; // montant commun\n cents: number; // montant en centimes\n sign: 1 | -1; // signe commun\n confidence: number; // score de confiance [0 - 1]\n method: 'exact' | 'fuzzy_high' | 'fuzzy_medium' | 'fuzzy_low'; // méthode de détection\n}\n\nexport interface IBankDedupResult {\n success: true;\n initial: number;\n target: number;\n finalRaw: number;\n finalAfterDedup: number;\n diffBefore: number; // target - finalRaw\n diffAfter: number; // target - finalAfterDedup (DOIT être exactement 0, aucune tolérance)\n removedGroups: {\n id: string;\n confidence: number;\n method: string;\n amount: number;\n transactionCount: number;\n isSelected: boolean;\n transactions: {\n id: string;\n label: string;\n dateValue: string;\n isKept: boolean;\n isCredit: boolean;\n }[];\n }[];\n removedCount: number;\n keptCount: number;\n csvDeduped: string;\n allGroups: {\n id: string;\n confidence: number;\n method: string;\n amount: number;\n transactionCount: number;\n isSelected: boolean;\n transactions: {\n id: string;\n label: string;\n dateValue: string;\n isKept: boolean;\n isCredit: boolean;\n }[];\n }[];\n debug: {\n totalGroups: number;\n selectedGroups: number;\n iterations: number;\n strategiesUsed: string[];\n };\n}\n\nexport interface IBankDedupImpossible {\n success: false;\n reason: 'NO_EXACT_COMBINATION' | 'CSV_PARSE_ERROR' | 'INVALID_INPUT' | 'INSUFFICIENT_DUPLICATES';\n message: string;\n initial?: number;\n target?: number;\n finalRaw?: number;\n diffBefore?: number;\n bestAttempt?: {\n finalAfterDedup: number;\n diffAfter: number;\n removedCount: number;\n };\n stats?: {\n totalTx?: number;\n totalGroups?: number;\n strategiesTried?: string[];\n };\n}\n\nexport type IBankDedupResponse = IBankDedupResult | IBankDedupImpossible;\n"]}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { IBankDedupRequest, IBankDedupResponse } from '../../types/Interface/models/IBankDedup';
|
|
2
|
-
import { Resource } from '../Resource';
|
|
3
|
-
|
|
4
|
-
export class BankDedup extends Resource {
|
|
5
|
-
/**
|
|
6
|
-
* Analyze bank transactions for deduplication
|
|
7
|
-
*/
|
|
8
|
-
public getAnalysis(body: IBankDedupRequest): Promise<IBankDedupResponse> {
|
|
9
|
-
return this.axios.$post('/bank-dedup/detect', body);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { IsOptional, IsString } from 'class-validator';
|
|
2
|
-
import { ApiPropertyOptional } from '../../../../utils';
|
|
3
|
-
import { RequiredQueryPaginate } from '../BasePaginate';
|
|
4
|
-
|
|
5
|
-
export class QueryToArchivedSociety extends RequiredQueryPaginate {
|
|
6
|
-
@ApiPropertyOptional()
|
|
7
|
-
@IsOptional()
|
|
8
|
-
@IsString()
|
|
9
|
-
search?: string;
|
|
10
|
-
}
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
export interface IBankDedupRequest {
|
|
2
|
-
csv: string; // CSV en string (avec header: label,dateValue,credit,debit)
|
|
3
|
-
initial: number; // solde initial
|
|
4
|
-
target: number; // solde cible
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
export interface BankTx {
|
|
8
|
-
id: string; // id interne généré
|
|
9
|
-
label: string;
|
|
10
|
-
dateValue: string; // YYYY-MM-DD
|
|
11
|
-
credit: number;
|
|
12
|
-
debit: number;
|
|
13
|
-
sign: 1 | -1; // 1 = crédit net, -1 = débit net
|
|
14
|
-
amount: number; // valeur absolue du mouvement (en positif)
|
|
15
|
-
cents: number; // montant en centimes pour calculs exacts
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export interface DuplicateGroup {
|
|
19
|
-
id: string;
|
|
20
|
-
transactions: BankTx[];
|
|
21
|
-
amount: number; // montant commun
|
|
22
|
-
cents: number; // montant en centimes
|
|
23
|
-
sign: 1 | -1; // signe commun
|
|
24
|
-
confidence: number; // score de confiance [0 - 1]
|
|
25
|
-
method: 'exact' | 'fuzzy_high' | 'fuzzy_medium' | 'fuzzy_low'; // méthode de détection
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export interface IBankDedupResult {
|
|
29
|
-
success: true;
|
|
30
|
-
initial: number;
|
|
31
|
-
target: number;
|
|
32
|
-
finalRaw: number;
|
|
33
|
-
finalAfterDedup: number;
|
|
34
|
-
diffBefore: number; // target - finalRaw
|
|
35
|
-
diffAfter: number; // target - finalAfterDedup (DOIT être exactement 0, aucune tolérance)
|
|
36
|
-
removedGroups: {
|
|
37
|
-
id: string;
|
|
38
|
-
confidence: number;
|
|
39
|
-
method: string;
|
|
40
|
-
amount: number;
|
|
41
|
-
transactionCount: number;
|
|
42
|
-
isSelected: boolean;
|
|
43
|
-
transactions: {
|
|
44
|
-
id: string;
|
|
45
|
-
label: string;
|
|
46
|
-
dateValue: string;
|
|
47
|
-
isKept: boolean;
|
|
48
|
-
isCredit: boolean;
|
|
49
|
-
}[];
|
|
50
|
-
}[];
|
|
51
|
-
removedCount: number;
|
|
52
|
-
keptCount: number;
|
|
53
|
-
csvDeduped: string;
|
|
54
|
-
allGroups: {
|
|
55
|
-
id: string;
|
|
56
|
-
confidence: number;
|
|
57
|
-
method: string;
|
|
58
|
-
amount: number;
|
|
59
|
-
transactionCount: number;
|
|
60
|
-
isSelected: boolean;
|
|
61
|
-
transactions: {
|
|
62
|
-
id: string;
|
|
63
|
-
label: string;
|
|
64
|
-
dateValue: string;
|
|
65
|
-
isKept: boolean;
|
|
66
|
-
isCredit: boolean;
|
|
67
|
-
}[];
|
|
68
|
-
}[];
|
|
69
|
-
debug: {
|
|
70
|
-
totalGroups: number;
|
|
71
|
-
selectedGroups: number;
|
|
72
|
-
iterations: number;
|
|
73
|
-
strategiesUsed: string[];
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
export interface IBankDedupImpossible {
|
|
78
|
-
success: false;
|
|
79
|
-
reason: 'NO_EXACT_COMBINATION' | 'CSV_PARSE_ERROR' | 'INVALID_INPUT' | 'INSUFFICIENT_DUPLICATES';
|
|
80
|
-
message: string;
|
|
81
|
-
initial?: number;
|
|
82
|
-
target?: number;
|
|
83
|
-
finalRaw?: number;
|
|
84
|
-
diffBefore?: number;
|
|
85
|
-
bestAttempt?: {
|
|
86
|
-
finalAfterDedup: number;
|
|
87
|
-
diffAfter: number;
|
|
88
|
-
removedCount: number;
|
|
89
|
-
};
|
|
90
|
-
stats?: {
|
|
91
|
-
totalTx?: number;
|
|
92
|
-
totalGroups?: number;
|
|
93
|
-
strategiesTried?: string[];
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
export type IBankDedupResponse = IBankDedupResult | IBankDedupImpossible;
|