@steedos-labs/content-compliance 0.7.19 → 0.7.20

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 (143) hide show
  1. package/dist/index.js +1 -0
  2. package/lib/actions/addBulkMaterials.d.ts +15 -0
  3. package/lib/actions/addBulkMaterials.js +69 -0
  4. package/lib/actions/addBulkMaterials.js.map +1 -0
  5. package/lib/actions/briefFlows.d.ts +14 -0
  6. package/lib/actions/briefFlows.js +46 -0
  7. package/lib/actions/briefFlows.js.map +1 -0
  8. package/lib/actions/bypassApproval.d.ts +10 -0
  9. package/lib/actions/bypassApproval.js +269 -0
  10. package/lib/actions/bypassApproval.js.map +1 -0
  11. package/lib/actions/bypassMaterial.d.ts +10 -0
  12. package/lib/actions/bypassMaterial.js +190 -0
  13. package/lib/actions/bypassMaterial.js.map +1 -0
  14. package/lib/actions/calculateSpotCheckRates.d.ts +13 -0
  15. package/lib/actions/calculateSpotCheckRates.js +94 -0
  16. package/lib/actions/calculateSpotCheckRates.js.map +1 -0
  17. package/lib/actions/confirmDeployment.d.ts +7 -0
  18. package/lib/actions/confirmDeployment.js +31 -0
  19. package/lib/actions/confirmDeployment.js.map +1 -0
  20. package/lib/actions/dashboard_sync_data.d.ts +7 -0
  21. package/lib/actions/dashboard_sync_data.js +30 -0
  22. package/lib/actions/dashboard_sync_data.js.map +1 -0
  23. package/lib/actions/fixStuckPersonnelReview.d.ts +20 -0
  24. package/lib/actions/fixStuckPersonnelReview.js +145 -0
  25. package/lib/actions/fixStuckPersonnelReview.js.map +1 -0
  26. package/lib/actions/hasDuplicateMaterials.d.ts +9 -0
  27. package/lib/actions/hasDuplicateMaterials.js +30 -0
  28. package/lib/actions/hasDuplicateMaterials.js.map +1 -0
  29. package/lib/actions/imageComparison.d.ts +34 -0
  30. package/lib/actions/imageComparison.js +95 -0
  31. package/lib/actions/imageComparison.js.map +1 -0
  32. package/lib/actions/index.d.ts +27 -0
  33. package/lib/actions/index.js +31 -0
  34. package/lib/actions/index.js.map +1 -0
  35. package/lib/actions/initCollaborator.d.ts +13 -0
  36. package/lib/actions/initCollaborator.js +87 -0
  37. package/lib/actions/initCollaborator.js.map +1 -0
  38. package/lib/actions/initUrgentQuota.d.ts +17 -0
  39. package/lib/actions/initUrgentQuota.js +99 -0
  40. package/lib/actions/initUrgentQuota.js.map +1 -0
  41. package/lib/actions/migrateReviewCompletedDate.d.ts +21 -0
  42. package/lib/actions/migrateReviewCompletedDate.js +150 -0
  43. package/lib/actions/migrateReviewCompletedDate.js.map +1 -0
  44. package/lib/actions/migrateSpotCheckData.d.ts +23 -0
  45. package/lib/actions/migrateSpotCheckData.js +143 -0
  46. package/lib/actions/migrateSpotCheckData.js.map +1 -0
  47. package/lib/actions/migrateSpotCheckDepartments.d.ts +25 -0
  48. package/lib/actions/migrateSpotCheckDepartments.js +142 -0
  49. package/lib/actions/migrateSpotCheckDepartments.js.map +1 -0
  50. package/lib/actions/postponeDeployment.d.ts +7 -0
  51. package/lib/actions/postponeDeployment.js +30 -0
  52. package/lib/actions/postponeDeployment.js.map +1 -0
  53. package/lib/actions/postponeReview.d.ts +7 -0
  54. package/lib/actions/postponeReview.js +30 -0
  55. package/lib/actions/postponeReview.js.map +1 -0
  56. package/lib/actions/progress.d.ts +18 -0
  57. package/lib/actions/progress.js +71 -0
  58. package/lib/actions/progress.js.map +1 -0
  59. package/lib/actions/rule.d.ts +7 -0
  60. package/lib/actions/rule.js +27 -0
  61. package/lib/actions/rule.js.map +1 -0
  62. package/lib/actions/sendToContentHub.d.ts +7 -0
  63. package/lib/actions/sendToContentHub.js +37 -0
  64. package/lib/actions/sendToContentHub.js.map +1 -0
  65. package/lib/actions/spotCheckMaterial.d.ts +46 -0
  66. package/lib/actions/spotCheckMaterial.js +591 -0
  67. package/lib/actions/spotCheckMaterial.js.map +1 -0
  68. package/lib/actions/submit.d.ts +7 -0
  69. package/lib/actions/submit.js +48 -0
  70. package/lib/actions/submit.js.map +1 -0
  71. package/lib/actions/submitKids.d.ts +7 -0
  72. package/lib/actions/submitKids.js +30 -0
  73. package/lib/actions/submitKids.js.map +1 -0
  74. package/lib/actions/submitMaterial.d.ts +7 -0
  75. package/lib/actions/submitMaterial.js +30 -0
  76. package/lib/actions/submitMaterial.js.map +1 -0
  77. package/lib/actions/submitPreReview.d.ts +7 -0
  78. package/lib/actions/submitPreReview.js +34 -0
  79. package/lib/actions/submitPreReview.js.map +1 -0
  80. package/lib/actions/terminate.d.ts +7 -0
  81. package/lib/actions/terminate.js +30 -0
  82. package/lib/actions/terminate.js.map +1 -0
  83. package/lib/actions/urgentApproval.d.ts +14 -0
  84. package/lib/actions/urgentApproval.js +51 -0
  85. package/lib/actions/urgentApproval.js.map +1 -0
  86. package/lib/const.d.ts +1 -0
  87. package/lib/const.js +6 -0
  88. package/lib/const.js.map +1 -0
  89. package/lib/index.d.ts +1 -0
  90. package/lib/index.js +1238 -0
  91. package/lib/index.js.map +1 -0
  92. package/lib/methods/AI.d.ts +1 -0
  93. package/lib/methods/AI.js +45 -0
  94. package/lib/methods/AI.js.map +1 -0
  95. package/lib/methods/__tests__/__mocks__/empty.d.ts +2 -0
  96. package/lib/methods/__tests__/__mocks__/empty.js +4 -0
  97. package/lib/methods/__tests__/__mocks__/empty.js.map +1 -0
  98. package/lib/methods/__tests__/postponeReview.test.d.ts +1 -0
  99. package/lib/methods/__tests__/postponeReview.test.js +102 -0
  100. package/lib/methods/__tests__/postponeReview.test.js.map +1 -0
  101. package/lib/methods/__tests__/urgent.test.d.ts +1 -0
  102. package/lib/methods/__tests__/urgent.test.js +121 -0
  103. package/lib/methods/__tests__/urgent.test.js.map +1 -0
  104. package/lib/methods/agent.d.ts +4 -0
  105. package/lib/methods/agent.js +86 -0
  106. package/lib/methods/agent.js.map +1 -0
  107. package/lib/methods/approval_engine.d.ts +40 -0
  108. package/lib/methods/approval_engine.js +2302 -0
  109. package/lib/methods/approval_engine.js.map +1 -0
  110. package/lib/methods/consts.d.ts +209 -0
  111. package/lib/methods/consts.js +46 -0
  112. package/lib/methods/consts.js.map +1 -0
  113. package/lib/methods/content_hub.d.ts +2 -0
  114. package/lib/methods/content_hub.js +228 -0
  115. package/lib/methods/content_hub.js.map +1 -0
  116. package/lib/methods/dashboard_sync_data.d.ts +4 -0
  117. package/lib/methods/dashboard_sync_data.js +346 -0
  118. package/lib/methods/dashboard_sync_data.js.map +1 -0
  119. package/lib/methods/docx.d.ts +3 -0
  120. package/lib/methods/docx.js +12 -0
  121. package/lib/methods/docx.js.map +1 -0
  122. package/lib/methods/image_comparison.d.ts +39 -0
  123. package/lib/methods/image_comparison.js +454 -0
  124. package/lib/methods/image_comparison.js.map +1 -0
  125. package/lib/methods/index.d.ts +7 -0
  126. package/lib/methods/index.js +11 -0
  127. package/lib/methods/index.js.map +1 -0
  128. package/lib/methods/material.d.ts +15 -0
  129. package/lib/methods/material.js +756 -0
  130. package/lib/methods/material.js.map +1 -0
  131. package/lib/methods/notification.d.ts +4 -0
  132. package/lib/methods/notification.js +270 -0
  133. package/lib/methods/notification.js.map +1 -0
  134. package/lib/methods/password_expiry.d.ts +1 -0
  135. package/lib/methods/password_expiry.js +151 -0
  136. package/lib/methods/password_expiry.js.map +1 -0
  137. package/lib/methods/pls.d.ts +1 -0
  138. package/lib/methods/pls.js +217 -0
  139. package/lib/methods/pls.js.map +1 -0
  140. package/lib/methods/urgent.d.ts +20 -0
  141. package/lib/methods/urgent.js +259 -0
  142. package/lib/methods/urgent.js.map +1 -0
  143. package/package.json +1 -1
@@ -0,0 +1,454 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.processPendingImageComparisons = exports.triggerImageComparisonAsync = exports.processBulkImageComparison = exports.processImageComparison = exports.storeComparisonResult = exports.callImageComparisonAPI = exports.prepareImageComparisonData = exports.getMaterialVersions = exports.getImageMaterials = exports.isModifiedSubmission = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var axios_1 = require("axios");
6
+ var consts_1 = require("./consts");
7
+ var AI_COMPARISON_HOST = process.env.PEPSICO_AI_HOST;
8
+ var AI_COMPARISON_API_KEY = process.env.PEPSICO_AI_API_KEY;
9
+ var DEFAULT_THRESHOLD = 30;
10
+ var DEFAULT_MIN_AREA = 50;
11
+ var IMAGE_EXTENSIONS = [
12
+ 'jpg', 'jpeg', 'png', 'gif', 'bmp', 'tiff', 'tif',
13
+ 'svg', 'webp', 'ico', 'heif', 'heic'
14
+ ];
15
+ var isModifiedSubmission = function (approval) {
16
+ return approval.current_step === consts_1.Step.submitter_revisions;
17
+ };
18
+ exports.isModifiedSubmission = isModifiedSubmission;
19
+ var getImageMaterials = function (ctx, approvalId) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
20
+ var materials;
21
+ return tslib_1.__generator(this, function (_a) {
22
+ switch (_a.label) {
23
+ case 0: return [4, ctx.getObject('pepsico_material').find({
24
+ filters: [
25
+ ['pepsico_material_approval', '=', approvalId],
26
+ ['extension_type', 'in', IMAGE_EXTENSIONS],
27
+ ['void_material', '!=', true],
28
+ ['is_bypassed', '!=', true]
29
+ ]
30
+ })];
31
+ case 1:
32
+ materials = _a.sent();
33
+ return [2, materials];
34
+ }
35
+ });
36
+ }); };
37
+ exports.getImageMaterials = getImageMaterials;
38
+ var getMaterialVersions = function (ctx, material) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
39
+ var versions, rootUrl;
40
+ return tslib_1.__generator(this, function (_a) {
41
+ versions = {
42
+ current: material.material,
43
+ previous: null,
44
+ currentUrl: '',
45
+ previousUrl: null
46
+ };
47
+ rootUrl = process.env.ROOT_URL || '';
48
+ versions.currentUrl = "".concat(rootUrl, "/api/v6/files/cfs.files.filerecord/").concat(material.material);
49
+ if (!versions.previous && material.material_original && material.material_original !== material.material) {
50
+ versions.previous = material.material_original;
51
+ versions.previousUrl = "".concat(rootUrl, "/api/v6/files/cfs.files.filerecord/").concat(versions.previous);
52
+ }
53
+ return [2, versions];
54
+ });
55
+ }); };
56
+ exports.getMaterialVersions = getMaterialVersions;
57
+ var prepareImageComparisonData = function (ctx, material, versions, options) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
58
+ var _a, _b;
59
+ return tslib_1.__generator(this, function (_c) {
60
+ return [2, {
61
+ request: {
62
+ image_url_a: versions.previousUrl,
63
+ image_url_b: versions.currentUrl,
64
+ threshold: (_a = options === null || options === void 0 ? void 0 : options.threshold) !== null && _a !== void 0 ? _a : DEFAULT_THRESHOLD,
65
+ min_area: (_b = options === null || options === void 0 ? void 0 : options.min_area) !== null && _b !== void 0 ? _b : DEFAULT_MIN_AREA
66
+ },
67
+ metadata: {
68
+ material_id: material._id,
69
+ approval_id: material.pepsico_material_approval,
70
+ name: material.name,
71
+ current_file_id: versions.current,
72
+ previous_file_id: versions.previous,
73
+ extension_type: material.extension_type
74
+ }
75
+ }];
76
+ });
77
+ }); };
78
+ exports.prepareImageComparisonData = prepareImageComparisonData;
79
+ var callImageComparisonAPI = function (ctx, imageData) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
80
+ var request, metadata, endpoint, now, result, data, error_1, errorMessage, statusCode;
81
+ var _a, _b, _c, _d, _e;
82
+ return tslib_1.__generator(this, function (_f) {
83
+ switch (_f.label) {
84
+ case 0:
85
+ request = imageData.request, metadata = imageData.metadata;
86
+ endpoint = "".concat(AI_COMPARISON_HOST, "/api/v1/compare_historical_images");
87
+ _f.label = 1;
88
+ case 1:
89
+ _f.trys.push([1, 5, , 8]);
90
+ now = new Date().getTime();
91
+ console.log('[调用 AI 图片对比 API] 开始:', endpoint, {
92
+ material_id: metadata.material_id,
93
+ approval_id: metadata.approval_id,
94
+ threshold: request.threshold,
95
+ min_area: request.min_area
96
+ }, new Date());
97
+ return [4, axios_1.default.post(endpoint, request, {
98
+ headers: {
99
+ 'X-API-Key': AI_COMPARISON_API_KEY,
100
+ 'Content-Type': 'application/json'
101
+ },
102
+ timeout: 120000
103
+ })];
104
+ case 2:
105
+ result = _f.sent();
106
+ data = result.data;
107
+ console.log("[\u8C03\u7528 AI \u56FE\u7247\u5BF9\u6BD4 API]-".concat(metadata.material_id), data, "\u8017\u65F6:", new Date().getTime() - now);
108
+ if (!ctx.logger) return [3, 4];
109
+ return [4, ctx.logger.info("[\u8C03\u7528 AI \u56FE\u7247\u5BF9\u6BD4 API]-".concat(metadata.material_id), {
110
+ data: data,
111
+ duration: new Date().getTime() - now
112
+ })];
113
+ case 3:
114
+ _f.sent();
115
+ _f.label = 4;
116
+ case 4: return [2, data];
117
+ case 5:
118
+ error_1 = _f.sent();
119
+ errorMessage = ((_b = (_a = error_1.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.detail) || ((_d = (_c = error_1.response) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.message) || error_1.message;
120
+ statusCode = (_e = error_1.response) === null || _e === void 0 ? void 0 : _e.status;
121
+ console.error("[\u8C03\u7528 AI \u56FE\u7247\u5BF9\u6BD4 API \u5931\u8D25]-".concat(metadata.material_id), "HTTP ".concat(statusCode, ":"), errorMessage, new Date());
122
+ if (!ctx.logger) return [3, 7];
123
+ return [4, ctx.logger.error("[\u8C03\u7528 AI \u56FE\u7247\u5BF9\u6BD4 API \u5931\u8D25]-".concat(metadata.material_id), {
124
+ endpoint: endpoint,
125
+ body: request,
126
+ error: errorMessage,
127
+ statusCode: statusCode,
128
+ stack: error_1.stack
129
+ })];
130
+ case 6:
131
+ _f.sent();
132
+ _f.label = 7;
133
+ case 7: throw error_1;
134
+ case 8: return [2];
135
+ }
136
+ });
137
+ }); };
138
+ exports.callImageComparisonAPI = callImageComparisonAPI;
139
+ var storeComparisonResult = function (ctx, materialId, comparisonResult) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
140
+ var isTooManyDiffs, error_2;
141
+ return tslib_1.__generator(this, function (_a) {
142
+ switch (_a.label) {
143
+ case 0:
144
+ _a.trys.push([0, 4, , 8]);
145
+ isTooManyDiffs = comparisonResult.status === 'too_many_differences';
146
+ return [4, ctx.getObject('pepsico_material').directUpdate(materialId, {
147
+ result_image: comparisonResult.result_image,
148
+ image_comparison_result: JSON.stringify({
149
+ status: comparisonResult.status,
150
+ result_image: comparisonResult.result_image,
151
+ diff_regions: comparisonResult.diff_regions || [],
152
+ ssim_score: comparisonResult.ssim_score,
153
+ diff_count: comparisonResult.diff_count,
154
+ message: comparisonResult.message || undefined
155
+ }),
156
+ image_comparison_status: isTooManyDiffs ? 'too_many_differences' : 'completed',
157
+ image_comparison_at: new Date()
158
+ })];
159
+ case 1:
160
+ _a.sent();
161
+ console.log("[\u5B58\u50A8\u56FE\u7247\u5BF9\u6BD4\u7ED3\u679C\u6210\u529F]-".concat(materialId), {
162
+ status: comparisonResult.status,
163
+ diff_count: comparisonResult.diff_count,
164
+ ssim_score: comparisonResult.ssim_score
165
+ });
166
+ if (!ctx.logger) return [3, 3];
167
+ return [4, ctx.logger.info("[\u5B58\u50A8\u56FE\u7247\u5BF9\u6BD4\u7ED3\u679C\u6210\u529F]-".concat(materialId), {
168
+ status: comparisonResult.status,
169
+ diff_count: comparisonResult.diff_count,
170
+ ssim_score: comparisonResult.ssim_score,
171
+ has_result_image: !!comparisonResult.result_image
172
+ })];
173
+ case 2:
174
+ _a.sent();
175
+ _a.label = 3;
176
+ case 3: return [3, 8];
177
+ case 4:
178
+ error_2 = _a.sent();
179
+ console.error("[\u5B58\u50A8\u56FE\u7247\u5BF9\u6BD4\u7ED3\u679C\u5931\u8D25]-".concat(materialId), error_2.message);
180
+ if (!ctx.logger) return [3, 6];
181
+ return [4, ctx.logger.error("[\u5B58\u50A8\u56FE\u7247\u5BF9\u6BD4\u7ED3\u679C\u5931\u8D25]-".concat(materialId), {
182
+ error: error_2.message
183
+ })];
184
+ case 5:
185
+ _a.sent();
186
+ _a.label = 6;
187
+ case 6: return [4, ctx.getObject('pepsico_material').directUpdate(materialId, {
188
+ image_comparison_status: 'failed',
189
+ image_comparison_error: error_2.message,
190
+ image_comparison_at: new Date()
191
+ })];
192
+ case 7:
193
+ _a.sent();
194
+ throw error_2;
195
+ case 8: return [2];
196
+ }
197
+ });
198
+ }); };
199
+ exports.storeComparisonResult = storeComparisonResult;
200
+ var processImageComparison = function (ctx, material) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
201
+ var versions, imageData, result, error_3;
202
+ return tslib_1.__generator(this, function (_a) {
203
+ switch (_a.label) {
204
+ case 0:
205
+ _a.trys.push([0, 7, , 8]);
206
+ return [4, (0, exports.getMaterialVersions)(ctx, material)];
207
+ case 1:
208
+ versions = _a.sent();
209
+ if (!!versions.previous) return [3, 3];
210
+ console.log("[\u8DF3\u8FC7\u56FE\u7247\u5BF9\u6BD4]-".concat(material._id, ": \u6CA1\u6709\u5386\u53F2\u7248\u672C"));
211
+ return [4, ctx.getObject('pepsico_material').directUpdate(material._id, {
212
+ image_comparison_status: 'skipped',
213
+ image_comparison_reason: 'No previous version found'
214
+ })];
215
+ case 2:
216
+ _a.sent();
217
+ return [2];
218
+ case 3: return [4, (0, exports.prepareImageComparisonData)(ctx, material, versions)];
219
+ case 4:
220
+ imageData = _a.sent();
221
+ return [4, (0, exports.callImageComparisonAPI)(ctx, imageData)];
222
+ case 5:
223
+ result = _a.sent();
224
+ return [4, (0, exports.storeComparisonResult)(ctx, material._id, result)];
225
+ case 6:
226
+ _a.sent();
227
+ return [2, result];
228
+ case 7:
229
+ error_3 = _a.sent();
230
+ console.error("[\u5904\u7406\u56FE\u7247\u5BF9\u6BD4\u5931\u8D25]-".concat(material._id), error_3.message);
231
+ throw error_3;
232
+ case 8: return [2];
233
+ }
234
+ });
235
+ }); };
236
+ exports.processImageComparison = processImageComparison;
237
+ var processBulkImageComparison = function (ctx, approvalId) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
238
+ var materials, processed, skipped, failed, materials_1, materials_1_1, material, versions, error_4, e_1_1, result, error_5;
239
+ var e_1, _a;
240
+ return tslib_1.__generator(this, function (_b) {
241
+ switch (_b.label) {
242
+ case 0:
243
+ _b.trys.push([0, 16, , 19]);
244
+ return [4, (0, exports.getImageMaterials)(ctx, approvalId)];
245
+ case 1:
246
+ materials = _b.sent();
247
+ console.log("[\u6279\u91CF\u56FE\u7247\u5BF9\u6BD4]-".concat(approvalId, ": \u53D1\u73B0 ").concat(materials.length, " \u4E2A\u56FE\u7247\u7D20\u6750"));
248
+ if (materials.length === 0) {
249
+ return [2, {
250
+ total: 0,
251
+ processed: 0,
252
+ skipped: 0,
253
+ failed: 0
254
+ }];
255
+ }
256
+ processed = 0;
257
+ skipped = 0;
258
+ failed = 0;
259
+ _b.label = 2;
260
+ case 2:
261
+ _b.trys.push([2, 12, 13, 14]);
262
+ materials_1 = tslib_1.__values(materials), materials_1_1 = materials_1.next();
263
+ _b.label = 3;
264
+ case 3:
265
+ if (!!materials_1_1.done) return [3, 11];
266
+ material = materials_1_1.value;
267
+ _b.label = 4;
268
+ case 4:
269
+ _b.trys.push([4, 9, , 10]);
270
+ return [4, (0, exports.getMaterialVersions)(ctx, material)];
271
+ case 5:
272
+ versions = _b.sent();
273
+ if (!!versions.previous) return [3, 7];
274
+ skipped++;
275
+ console.log("[\u8DF3\u8FC7\u56FE\u7247\u5BF9\u6BD4]-".concat(material._id, ": \u6CA1\u6709\u5386\u53F2\u7248\u672C"));
276
+ return [4, ctx.getObject('pepsico_material').directUpdate(material._id, {
277
+ image_comparison_status: 'skipped',
278
+ image_comparison_reason: 'No previous version found'
279
+ })];
280
+ case 6:
281
+ _b.sent();
282
+ return [3, 10];
283
+ case 7: return [4, (0, exports.processImageComparison)(ctx, material)];
284
+ case 8:
285
+ _b.sent();
286
+ processed++;
287
+ return [3, 10];
288
+ case 9:
289
+ error_4 = _b.sent();
290
+ failed++;
291
+ console.error("[\u56FE\u7247\u5BF9\u6BD4\u5931\u8D25]-".concat(material._id), error_4.message);
292
+ return [3, 10];
293
+ case 10:
294
+ materials_1_1 = materials_1.next();
295
+ return [3, 3];
296
+ case 11: return [3, 14];
297
+ case 12:
298
+ e_1_1 = _b.sent();
299
+ e_1 = { error: e_1_1 };
300
+ return [3, 14];
301
+ case 13:
302
+ try {
303
+ if (materials_1_1 && !materials_1_1.done && (_a = materials_1.return)) _a.call(materials_1);
304
+ }
305
+ finally { if (e_1) throw e_1.error; }
306
+ return [7];
307
+ case 14:
308
+ result = {
309
+ total: materials.length,
310
+ processed: processed,
311
+ skipped: skipped,
312
+ failed: failed
313
+ };
314
+ console.log("[\u6279\u91CF\u56FE\u7247\u5BF9\u6BD4\u5B8C\u6210]-".concat(approvalId), result);
315
+ return [4, ctx.getObject('pepsico_material_approval').directUpdate(approvalId, {
316
+ image_comparison_status: failed > 0 ? 'partial' : 'completed',
317
+ image_comparison_stats: JSON.stringify(result),
318
+ image_comparison_at: new Date()
319
+ })];
320
+ case 15:
321
+ _b.sent();
322
+ return [2, result];
323
+ case 16:
324
+ error_5 = _b.sent();
325
+ console.error("[\u6279\u91CF\u56FE\u7247\u5BF9\u6BD4\u5931\u8D25]-".concat(approvalId), error_5.message);
326
+ if (!ctx.logger) return [3, 18];
327
+ return [4, ctx.logger.error("[\u6279\u91CF\u56FE\u7247\u5BF9\u6BD4\u5931\u8D25]-".concat(approvalId), {
328
+ error: error_5.message
329
+ })];
330
+ case 17:
331
+ _b.sent();
332
+ _b.label = 18;
333
+ case 18: throw error_5;
334
+ case 19: return [2];
335
+ }
336
+ });
337
+ }); };
338
+ exports.processBulkImageComparison = processBulkImageComparison;
339
+ var triggerImageComparisonAsync = function (ctx, approvalId) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
340
+ var error_6;
341
+ return tslib_1.__generator(this, function (_a) {
342
+ switch (_a.label) {
343
+ case 0:
344
+ _a.trys.push([0, 2, , 3]);
345
+ return [4, ctx.getObject('pepsico_material_approval').directUpdate(approvalId, {
346
+ image_comparison_status: 'pending',
347
+ image_comparison_at: new Date()
348
+ })];
349
+ case 1:
350
+ _a.sent();
351
+ console.log("[\u56FE\u7247\u5BF9\u6BD4\u4EFB\u52A1\u5DF2\u6807\u8BB0\u4E3Apending]-".concat(approvalId));
352
+ return [3, 3];
353
+ case 2:
354
+ error_6 = _a.sent();
355
+ console.error("[\u6807\u8BB0\u56FE\u7247\u5BF9\u6BD4\u4EFB\u52A1\u5931\u8D25]-".concat(approvalId), error_6.message);
356
+ return [3, 3];
357
+ case 3: return [2];
358
+ }
359
+ });
360
+ }); };
361
+ exports.triggerImageComparisonAsync = triggerImageComparisonAsync;
362
+ var processPendingImageComparisons = function (ctx, maxRetries) {
363
+ if (maxRetries === void 0) { maxRetries = 3; }
364
+ return tslib_1.__awaiter(void 0, void 0, void 0, function () {
365
+ var pendingApprovals, pendingApprovals_1, pendingApprovals_1_1, approval, failedCount, error_7, e_2_1, error_8;
366
+ var e_2, _a;
367
+ return tslib_1.__generator(this, function (_b) {
368
+ switch (_b.label) {
369
+ case 0:
370
+ _b.trys.push([0, 16, , 19]);
371
+ return [4, ctx.getObject('pepsico_material_approval').find({
372
+ filters: [
373
+ ['image_comparison_status', 'in', ['pending', 'failed']]
374
+ ],
375
+ top: 10,
376
+ sort: 'modified desc'
377
+ })];
378
+ case 1:
379
+ pendingApprovals = _b.sent();
380
+ console.log("\u5B9A\u65F6\u4EFB\u52A1[\u56FE\u7247\u5BF9\u6BD4] count: ".concat(pendingApprovals.length), { approvals: pendingApprovals.map(function (a) { return ({ _id: a._id, status: a.image_comparison_status, failedCount: a.image_comparison_failed_count }); }) });
381
+ _b.label = 2;
382
+ case 2:
383
+ _b.trys.push([2, 13, 14, 15]);
384
+ pendingApprovals_1 = tslib_1.__values(pendingApprovals), pendingApprovals_1_1 = pendingApprovals_1.next();
385
+ _b.label = 3;
386
+ case 3:
387
+ if (!!pendingApprovals_1_1.done) return [3, 12];
388
+ approval = pendingApprovals_1_1.value;
389
+ failedCount = approval.image_comparison_failed_count || 0;
390
+ if (failedCount >= maxRetries) {
391
+ console.log("[\u56FE\u7247\u5BF9\u6BD4\u8DF3\u8FC7]-".concat(approval._id, ": \u5DF2\u8FBE\u6700\u5927\u91CD\u8BD5\u6B21\u6570 ").concat(maxRetries));
392
+ return [3, 11];
393
+ }
394
+ _b.label = 4;
395
+ case 4:
396
+ _b.trys.push([4, 7, , 11]);
397
+ return [4, ctx.getObject('pepsico_material_approval').directUpdate(approval._id, {
398
+ image_comparison_status: 'processing'
399
+ })];
400
+ case 5:
401
+ _b.sent();
402
+ return [4, (0, exports.processBulkImageComparison)(ctx, approval._id)];
403
+ case 6:
404
+ _b.sent();
405
+ return [3, 11];
406
+ case 7:
407
+ error_7 = _b.sent();
408
+ console.error("[\u56FE\u7247\u5BF9\u6BD4\u4EFB\u52A1\u5931\u8D25]-".concat(approval._id), error_7.message);
409
+ return [4, ctx.getObject('pepsico_material_approval').directUpdate(approval._id, {
410
+ image_comparison_status: 'failed',
411
+ $inc: { image_comparison_failed_count: 1 }
412
+ })];
413
+ case 8:
414
+ _b.sent();
415
+ if (!ctx.logger) return [3, 10];
416
+ return [4, ctx.logger.error("[\u56FE\u7247\u5BF9\u6BD4\u4EFB\u52A1\u5931\u8D25]-".concat(approval._id), {
417
+ error: error_7.message,
418
+ failedCount: failedCount + 1
419
+ })];
420
+ case 9:
421
+ _b.sent();
422
+ _b.label = 10;
423
+ case 10: return [3, 11];
424
+ case 11:
425
+ pendingApprovals_1_1 = pendingApprovals_1.next();
426
+ return [3, 3];
427
+ case 12: return [3, 15];
428
+ case 13:
429
+ e_2_1 = _b.sent();
430
+ e_2 = { error: e_2_1 };
431
+ return [3, 15];
432
+ case 14:
433
+ try {
434
+ if (pendingApprovals_1_1 && !pendingApprovals_1_1.done && (_a = pendingApprovals_1.return)) _a.call(pendingApprovals_1);
435
+ }
436
+ finally { if (e_2) throw e_2.error; }
437
+ return [7];
438
+ case 15: return [3, 19];
439
+ case 16:
440
+ error_8 = _b.sent();
441
+ console.error('[定时任务-图片对比] 执行异常:', error_8.message);
442
+ if (!ctx.logger) return [3, 18];
443
+ return [4, ctx.logger.error('[定时任务-图片对比] 执行异常', { error: error_8.message })];
444
+ case 17:
445
+ _b.sent();
446
+ _b.label = 18;
447
+ case 18: return [3, 19];
448
+ case 19: return [2];
449
+ }
450
+ });
451
+ });
452
+ };
453
+ exports.processPendingImageComparisons = processPendingImageComparisons;
454
+ //# sourceMappingURL=image_comparison.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image_comparison.js","sourceRoot":"","sources":["../../src/methods/image_comparison.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export * from "./approval_engine";
2
+ export * from './material';
3
+ export * from './dashboard_sync_data';
4
+ export * from './pls';
5
+ export * from './image_comparison';
6
+ export * from './password_expiry';
7
+ export * from './urgent';
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./approval_engine"), exports);
5
+ tslib_1.__exportStar(require("./material"), exports);
6
+ tslib_1.__exportStar(require("./dashboard_sync_data"), exports);
7
+ tslib_1.__exportStar(require("./pls"), exports);
8
+ tslib_1.__exportStar(require("./image_comparison"), exports);
9
+ tslib_1.__exportStar(require("./password_expiry"), exports);
10
+ tslib_1.__exportStar(require("./urgent"), exports);
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/methods/index.ts"],"names":[],"mappings":";;;AAAA,4DAAiC;AACjC,qDAA0B;AAC1B,gEAAqC;AACrC,gDAAqB;AACrB,6DAAkC;AAClC,4DAAiC;AACjC,mDAAwB"}
@@ -0,0 +1,15 @@
1
+ import { ApprovalStatus, MaterialApproval, Material, ProcessApprovalType } from "./consts";
2
+ export declare const hasDuplicateMaterials: (ctx: any, approvalId: any) => Promise<boolean>;
3
+ export declare const addBulkMaterials: (ctx: any, approvalId: any, fileIds: any) => Promise<{}>;
4
+ export declare const submitMaterial: (ctx: any, materialId: string, approvalStatus: ApprovalStatus) => Promise<any>;
5
+ export declare const getApproverField: (ctx: any, approval: MaterialApproval, material: Material, userId: any) => Promise<string>;
6
+ export declare const getApproverFieldByType: (type: ProcessApprovalType) => string;
7
+ export declare const getUserReviewedAllMaterialsStatus: (ctx: any, approvalId: any, approveField: string) => Promise<ApprovalStatus.approved | ApprovalStatus.rejected | ApprovalStatus.pending | ApprovalStatus.pass>;
8
+ export declare const uploadDocToOneDrive: (ctx: any, material: Material) => Promise<boolean>;
9
+ export declare const getPendingUploadsToOneDriveMaterials: (ctx: any, approvalId: string) => Promise<any>;
10
+ export declare const getOneDriveMaterials: (ctx: any, approvalId: string) => Promise<any>;
11
+ export declare const uploadBulkDocToOneDrive: (ctx: any, approvalId: string) => Promise<boolean>;
12
+ export declare const deleteBulkDocOneDriveShareLink: (ctx: any, approvalId: string) => Promise<boolean>;
13
+ export declare const deleteDocOneDriveShareLink: (ctx: any, material: Material) => Promise<boolean>;
14
+ export declare const downloadBulkFromOneDriveDoc: (ctx: any, approvalId: string) => Promise<boolean>;
15
+ export declare const downloadDocFromOneDriveDoc: (ctx: any, material: Material) => Promise<boolean>;