@steedos-labs/content-compliance 0.8.8 → 0.8.10
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/index.js +1 -1
- package/lib/actions/bypassApproval.js +18 -0
- package/lib/actions/bypassApproval.js.map +1 -1
- package/lib/actions/bypassMaterial.js +12 -0
- package/lib/actions/bypassMaterial.js.map +1 -1
- package/lib/index.js +153 -0
- package/lib/index.js.map +1 -1
- package/lib/methods/AI.d.ts +6 -0
- package/lib/methods/AI.js +116 -15
- package/lib/methods/AI.js.map +1 -1
- package/lib/methods/__tests__/plsReview.test.d.ts +1 -0
- package/lib/methods/__tests__/plsReview.test.js +736 -0
- package/lib/methods/__tests__/plsReview.test.js.map +1 -0
- package/lib/methods/__tests__/postponeReview.test.js +21 -0
- package/lib/methods/__tests__/postponeReview.test.js.map +1 -1
- package/lib/methods/__tests__/qcParallelReview.test.d.ts +1 -0
- package/lib/methods/__tests__/qcParallelReview.test.js +53 -0
- package/lib/methods/__tests__/qcParallelReview.test.js.map +1 -0
- package/lib/methods/__tests__/qcPreReview.test.d.ts +1 -0
- package/lib/methods/__tests__/qcPreReview.test.js +65 -0
- package/lib/methods/__tests__/qcPreReview.test.js.map +1 -0
- package/lib/methods/approval_engine.d.ts +4 -0
- package/lib/methods/approval_engine.js +388 -221
- package/lib/methods/approval_engine.js.map +1 -1
- package/lib/methods/consts.d.ts +35 -0
- package/lib/methods/consts.js +2 -0
- package/lib/methods/consts.js.map +1 -1
- package/lib/methods/material.js +13 -0
- package/lib/methods/material.js.map +1 -1
- package/lib/methods/pls.d.ts +37 -0
- package/lib/methods/pls.js +480 -130
- package/lib/methods/pls.js.map +1 -1
- package/lib/pages/__tests__/aiReviewCardStyles.test.d.ts +1 -0
- package/lib/pages/__tests__/aiReviewCardStyles.test.js +36 -0
- package/lib/pages/__tests__/aiReviewCardStyles.test.js.map +1 -0
- package/lib/pages/__tests__/aiReviewChineseColons.test.d.ts +1 -0
- package/lib/pages/__tests__/aiReviewChineseColons.test.js +132 -0
- package/lib/pages/__tests__/aiReviewChineseColons.test.js.map +1 -0
- package/lib/pages/__tests__/clientCssCacheVersion.test.d.ts +1 -0
- package/lib/pages/__tests__/clientCssCacheVersion.test.js +31 -0
- package/lib/pages/__tests__/clientCssCacheVersion.test.js.map +1 -0
- package/lib/pages/__tests__/materialDetailAIReviewFilter.test.d.ts +1 -0
- package/lib/pages/__tests__/materialDetailAIReviewFilter.test.js +51 -0
- package/lib/pages/__tests__/materialDetailAIReviewFilter.test.js.map +1 -0
- package/lib/pages/__tests__/plsReviewCardStyles.test.d.ts +1 -0
- package/lib/pages/__tests__/plsReviewCardStyles.test.js +98 -0
- package/lib/pages/__tests__/plsReviewCardStyles.test.js.map +1 -0
- package/lib/pages/__tests__/plsReviewPage.test.d.ts +1 -0
- package/lib/pages/__tests__/plsReviewPage.test.js +338 -0
- package/lib/pages/__tests__/plsReviewPage.test.js.map +1 -0
- package/main/default/applications/pepsico_content_setting.app.yml +4 -0
- package/main/default/client/pepsico_content.client.js +8 -3
- package/main/default/objects/ai_process_detail/ai_process_detail.object.yml +1 -0
- package/main/default/objects/ai_process_detail/fields/pls_extracted_data.field.yml +9 -0
- package/main/default/objects/ai_process_detail/fields/pls_file_ids.field.yml +9 -0
- package/main/default/objects/ai_process_detail/fields/pls_product_name_matched.field.yml +9 -0
- package/main/default/objects/ai_process_detail/fields/pls_rule_unique_matched.field.yml +9 -0
- package/main/default/objects/pepesio_ch__c/fields/company_id.field.yml +14 -0
- package/main/default/objects/pepesio_ch__c/fields/company_ids.field.yml +16 -0
- package/main/default/objects/pepesio_ch__c/fields/created.field.yml +10 -0
- package/main/default/objects/pepesio_ch__c/fields/created_by.field.yml +9 -0
- package/main/default/objects/pepesio_ch__c/fields/file_name.field.yml +8 -0
- package/main/default/objects/pepesio_ch__c/fields/instance_state.field.yml +25 -0
- package/main/default/objects/pepesio_ch__c/fields/locked.field.yml +12 -0
- package/main/default/objects/pepesio_ch__c/fields/material_type.field.yml +10 -0
- package/main/default/objects/pepesio_ch__c/fields/media_type.field.yml +13 -0
- package/main/default/objects/pepesio_ch__c/fields/modified.field.yml +10 -0
- package/main/default/objects/pepesio_ch__c/fields/modified_by.field.yml +9 -0
- package/main/default/objects/pepesio_ch__c/fields/name.field.yml +11 -0
- package/main/default/objects/pepesio_ch__c/fields/owner.field.yml +12 -0
- package/main/default/objects/pepesio_ch__c/fields/product.field.yml +10 -0
- package/main/default/objects/pepesio_ch__c/fields/time.field.yml +8 -0
- package/main/default/objects/pepesio_ch__c/fields/type.field.yml +22 -0
- package/main/default/objects/pepesio_ch__c/listviews/all.listview.yml +21 -0
- package/main/default/objects/pepesio_ch__c/listviews/recent.listview.yml +11 -0
- package/main/default/objects/pepesio_ch__c/pepesio_ch__c.object.yml +31 -0
- package/main/default/objects/pepesio_ch__c/permissions/admin.permission.yml +9 -0
- package/main/default/objects/pepesio_ch__c/permissions/user.permission.yml +9 -0
- package/main/default/objects/pepsico_ai_review/buttons/pepsico_adopt.button.yml +15 -3
- package/main/default/objects/pepsico_ai_review/fields/is_active.field.yml +7 -0
- package/main/default/objects/pepsico_ai_review/fields/pepsico_material_approval.field.yml +7 -0
- package/main/default/objects/pepsico_ai_review/fields/pls_file.field.yml +7 -0
- package/main/default/objects/pepsico_ai_review/fields/review_type.field.yml +12 -0
- package/main/default/objects/pepsico_approval_process/fields/type.field.yml +5 -1
- package/main/default/objects/pepsico_km_pls/fields/allergen_statement.field.yml +9 -0
- package/main/default/objects/pepsico_km_pls/fields/ingredient_list.field.yml +9 -0
- package/main/default/objects/pepsico_km_pls/listviews/all.listview.yml +6 -0
- package/main/default/objects/pepsico_km_pls_file/listviews/lookup.listview.yml +19 -0
- package/main/default/objects/pepsico_km_pls_file/permissions/user.permission.yml +2 -2
- package/main/default/objects/pepsico_material/fields/pre_qc_approval_status.field.yml +16 -0
- package/main/default/objects/pepsico_material/fields/qc_approval_status.field.yml +16 -0
- package/main/default/objects/pepsico_material/fields/qc_bypass_reason.field.yml +11 -0
- package/main/default/objects/pepsico_material/fields/qc_bypassed.field.yml +12 -0
- package/main/default/objects/pepsico_material/fields/qc_bypassed_at.field.yml +11 -0
- package/main/default/objects/pepsico_material/fields/qc_bypassed_by.field.yml +12 -0
- package/main/default/objects/pepsico_material/listviews/all.listview.yml +1 -0
- package/main/default/objects/pepsico_material_approval/buttons/pepsico_modify_pls.button.yml +70 -0
- package/main/default/objects/pepsico_material_approval/buttons/pepsico_postpone_review.button.yml +62 -37
- package/main/default/objects/pepsico_material_approval/buttons/pre_review_approve.button.yml +1 -1
- package/main/default/objects/pepsico_material_approval/buttons/pre_review_reject.button.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/approved_flows.field.yml +2 -2
- package/main/default/objects/pepsico_material_approval/fields/assistance.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/ca_assistance.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/classification.field.yml +15 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_check_food_name.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_check_ingredients.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_check_net_content.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_check_producer_address.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_check_producer_name.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_check_shelf_life.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_check_standard_code.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_check_storage_condition.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_has_detail_page.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_producers.$.field.yml +5 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_producers.$.producer_address.field.yml +7 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_producers.$.producer_name.field.yml +7 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_producers.field.yml +16 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_qc_production_email.field.yml +16 -0
- package/main/default/objects/pepsico_material_approval/fields/ec_related_approval.field.yml +9 -0
- package/main/default/objects/pepsico_material_approval/fields/form_version.field.yml +10 -0
- package/main/default/objects/pepsico_material_approval/fields/handler_preca.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/handler_preguding.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/handler_prens.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/handler_preqc.field.yml +22 -0
- package/main/default/objects/pepsico_material_approval/fields/handler_presra.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/handler_qc.field.yml +20 -0
- package/main/default/objects/pepsico_material_approval/fields/has_nutrition_table.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/legal_assistance.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/ns_assistance.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/pls_file.field.yml +2 -2
- package/main/default/objects/pepsico_material_approval/fields/pls_km_files.field.yml +28 -0
- package/main/default/objects/pepsico_material_approval/fields/pls_upload_files.field.yml +21 -0
- package/main/default/objects/pepsico_material_approval/fields/pre_ca_reviewer.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/pre_ns_reviewer.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/pre_qc_approval_status.field.yml +17 -0
- package/main/default/objects/pepsico_material_approval/fields/pre_qc_materials_quantity.field.yml +21 -0
- package/main/default/objects/pepsico_material_approval/fields/pre_qc_reviewer.field.yml +19 -0
- package/main/default/objects/pepsico_material_approval/fields/pre_reviewer.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/pre_sra_reviewer.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/fields/product.field.yml +15 -0
- package/main/default/objects/pepsico_material_approval/fields/qc_approval_status.field.yml +18 -0
- package/main/default/objects/pepsico_material_approval/fields/qc_assistance.field.yml +22 -0
- package/main/default/objects/pepsico_material_approval/fields/qc_bypass_reason.field.yml +8 -0
- package/main/default/objects/pepsico_material_approval/fields/qc_bypassed.field.yml +12 -0
- package/main/default/objects/pepsico_material_approval/fields/qc_bypassed_at.field.yml +8 -0
- package/main/default/objects/pepsico_material_approval/fields/qc_bypassed_by.field.yml +8 -0
- package/main/default/objects/pepsico_material_approval/fields/qc_materials_quantity.field.yml +21 -0
- package/main/default/objects/pepsico_material_approval/fields/qc_reviewer.field.yml +22 -0
- package/main/default/objects/pepsico_material_approval/fields/sra_assistance.field.yml +1 -1
- package/main/default/objects/pepsico_material_approval/listviews/all.listview.yml +2 -0
- package/main/default/objects/pepsico_material_approval/pepsico_material_approval.object.yml +4 -0
- package/main/default/objects/pepsico_pls_change_log/fields/after_pls_files.field.yml +9 -0
- package/main/default/objects/pepsico_pls_change_log/fields/after_pls_names.field.yml +7 -0
- package/main/default/objects/pepsico_pls_change_log/fields/approval.field.yml +7 -0
- package/main/default/objects/pepsico_pls_change_log/fields/approval_name.field.yml +6 -0
- package/main/default/objects/pepsico_pls_change_log/fields/before_pls_files.field.yml +9 -0
- package/main/default/objects/pepsico_pls_change_log/fields/before_pls_names.field.yml +7 -0
- package/main/default/objects/pepsico_pls_change_log/fields/material.field.yml +8 -0
- package/main/default/objects/pepsico_pls_change_log/fields/operator.field.yml +7 -0
- package/main/default/objects/pepsico_pls_change_log/fields/scene.field.yml +13 -0
- package/main/default/objects/pepsico_pls_change_log/fields/source.field.yml +14 -0
- package/main/default/objects/pepsico_pls_change_log/fields/space.field.yml +6 -0
- package/main/default/objects/pepsico_pls_change_log/listviews/all.listview.yml +25 -0
- package/main/default/objects/pepsico_pls_change_log/pepsico_pls_change_log.object.yml +16 -0
- package/main/default/objects/pepsico_pls_change_log/permissions/admin.permission.yml +15 -0
- package/main/default/objects/pepsico_pls_change_log/permissions/user.permission.yml +14 -0
- package/main/default/objects/pepsico_review_postpone/fields/department_type.field.yml +4 -0
- package/main/default/objects/pepsico_reviewer/fields/pre_qc_reviewer.field.yml +10 -0
- package/main/default/objects/pepsico_reviewer/fields/qc_assistance.field.yml +14 -0
- package/main/default/objects/pepsico_reviewer/fields/qc_reviewer.field.yml +12 -0
- package/main/default/objects/pepsico_reviewer/listviews/all.listview.yml +4 -0
- package/main/default/pages/pepsico_content_review_detail.page.amis.json +19 -1
- package/main/default/pages/pepsico_material_detail.page.amis.json +698 -52
- package/main/default/pages/pepsico_material_detail_mobile.page.amis.json +332 -8
- package/main/default/tabs/object_pepsico_pls_change_log.tab.yml +14 -0
- package/main/default/triggers/pepsico_material_approval_change.trigger.yml +3 -0
- package/package.json +1 -1
- package/public/content-review/amis.css +344 -9
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a, _b, _c;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.postponeReview = exports.getPostponeReviewDepartmentType = exports.hasReviewed = exports.submitContent = exports.submitPreReviewContent = exports.submitKidsContent = exports.rejectContent = exports.approvalContent = exports.postponeDeployment = exports.confirmDeployment = exports.terminate = exports.advanceApproval = exports.hasNonPreReviewDepartments = exports.getPreReviewStatuses = exports.getDeptEffectiveStatus = exports.isDeptReviewComplete = exports.hasAnyPreReviewer = exports.getApproverStepRule = exports.getDefApproverStepRule = void 0;
|
|
4
|
+
exports.postponeReview = exports.getPostponeReviewDepartmentType = exports.hasReviewed = exports.submitContent = exports.submitPreReviewContent = exports.submitKidsContent = exports.rejectContent = exports.approvalContent = exports.postponeDeployment = exports.confirmDeployment = exports.terminate = exports.advanceApproval = exports.getDepartmentEffectiveStatuses = exports.areDepartmentReviewsComplete = exports.hasNonPreReviewDepartments = exports.getPreReviewStatuses = exports.needsPLSReReview = exports.needsQcReview = exports.getDeptEffectiveStatus = exports.isDeptReviewComplete = exports.hasAnyPreReviewer = exports.getApproverStepRule = exports.getDefApproverStepRule = void 0;
|
|
5
5
|
var tslib_1 = require("tslib");
|
|
6
6
|
var consts_1 = require("./consts");
|
|
7
7
|
var amis_formula_1 = require("amis-formula");
|
|
@@ -13,6 +13,7 @@ var notification_1 = require("./notification");
|
|
|
13
13
|
var approval_cc_1 = require("./approval_cc");
|
|
14
14
|
var agent_1 = require("./agent");
|
|
15
15
|
var const_1 = require("../const");
|
|
16
|
+
var pls_1 = require("./pls");
|
|
16
17
|
var _ = require("lodash");
|
|
17
18
|
var getDefApproverStepRule = function (ctx) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
18
19
|
var rules, rule;
|
|
@@ -80,7 +81,8 @@ var hasAnyPreReviewer = function (materialApproval, approvalType) {
|
|
|
80
81
|
return !!materialApproval.pre_reviewer;
|
|
81
82
|
}
|
|
82
83
|
return !!(materialApproval.pre_ns_reviewer || materialApproval.pre_legal_reviewer ||
|
|
83
|
-
materialApproval.pre_sra_reviewer || materialApproval.pre_ca_reviewer
|
|
84
|
+
materialApproval.pre_sra_reviewer || materialApproval.pre_ca_reviewer ||
|
|
85
|
+
((0, exports.needsQcReview)(materialApproval) && materialApproval.pre_qc_reviewer));
|
|
84
86
|
};
|
|
85
87
|
exports.hasAnyPreReviewer = hasAnyPreReviewer;
|
|
86
88
|
var isDeptReviewComplete = function (materialApproval, deptPrefix) {
|
|
@@ -146,10 +148,24 @@ var getApproveType = function (ctx, materialApproval) { return tslib_1.__awaiter
|
|
|
146
148
|
}
|
|
147
149
|
});
|
|
148
150
|
}); };
|
|
151
|
+
var needsQcReview = function (materialApproval) {
|
|
152
|
+
return materialApproval.ec_has_detail_page === 'yes';
|
|
153
|
+
};
|
|
154
|
+
exports.needsQcReview = needsQcReview;
|
|
155
|
+
var needsPLSReReview = function (materialApproval) {
|
|
156
|
+
return !_.isEmpty(materialApproval.pls_km_files)
|
|
157
|
+
&& (materialApproval.sra_approval_status === false || materialApproval.qc_approval_status === false);
|
|
158
|
+
};
|
|
159
|
+
exports.needsPLSReReview = needsPLSReReview;
|
|
160
|
+
var requiresPLS = function (materialApproval) {
|
|
161
|
+
return materialApproval.form_version === 'v2'
|
|
162
|
+
&& (_.includes(['MD-PO1-PO15', 'SLS-PO2-PO25'], materialApproval.classification)
|
|
163
|
+
|| materialApproval.has_nutrition_table === 'yes');
|
|
164
|
+
};
|
|
149
165
|
var getNextStep = function (ctx, materialApproval, action) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
150
|
-
var nextStep, _a, _b;
|
|
151
|
-
return tslib_1.__generator(this, function (
|
|
152
|
-
switch (
|
|
166
|
+
var nextStep, _a, _b, _c;
|
|
167
|
+
return tslib_1.__generator(this, function (_d) {
|
|
168
|
+
switch (_d.label) {
|
|
153
169
|
case 0:
|
|
154
170
|
nextStep = consts_1.Step.draft;
|
|
155
171
|
_a = materialApproval.current_step;
|
|
@@ -159,9 +175,9 @@ var getNextStep = function (ctx, materialApproval, action) { return tslib_1.__aw
|
|
|
159
175
|
case consts_1.Step.departmental_review: return [3, 6];
|
|
160
176
|
case consts_1.Step.personnel_review: return [3, 6];
|
|
161
177
|
case consts_1.Step.submitter_revisions: return [3, 7];
|
|
162
|
-
case consts_1.Step.awaiting_deployment: return [3,
|
|
178
|
+
case consts_1.Step.awaiting_deployment: return [3, 11];
|
|
163
179
|
}
|
|
164
|
-
return [3,
|
|
180
|
+
return [3, 12];
|
|
165
181
|
case 1:
|
|
166
182
|
if (_.includes(const_1.DCO_TYPES, materialApproval.classification)) {
|
|
167
183
|
nextStep = consts_1.Step.conclusion;
|
|
@@ -169,31 +185,38 @@ var getNextStep = function (ctx, materialApproval, action) { return tslib_1.__aw
|
|
|
169
185
|
else {
|
|
170
186
|
nextStep = consts_1.Step.ai_review;
|
|
171
187
|
}
|
|
172
|
-
return [3,
|
|
188
|
+
return [3, 13];
|
|
173
189
|
case 2:
|
|
174
190
|
if (!(action == consts_1.ApprovalStatus.approved)) return [3, 4];
|
|
175
191
|
return [4, getApproverStep(ctx, materialApproval)];
|
|
176
192
|
case 3:
|
|
177
|
-
_b =
|
|
193
|
+
_b = _d.sent();
|
|
178
194
|
return [3, 5];
|
|
179
195
|
case 4:
|
|
180
196
|
_b = consts_1.Step.draft;
|
|
181
|
-
|
|
197
|
+
_d.label = 5;
|
|
182
198
|
case 5:
|
|
183
199
|
nextStep = _b;
|
|
184
|
-
return [3,
|
|
200
|
+
return [3, 13];
|
|
185
201
|
case 6:
|
|
186
202
|
nextStep = (action == consts_1.ApprovalStatus.approved || action == consts_1.ApprovalStatus.pass) ? consts_1.Step.awaiting_deployment : consts_1.Step.submitter_revisions;
|
|
187
|
-
return [3,
|
|
188
|
-
case 7:
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
return [3,
|
|
203
|
+
return [3, 13];
|
|
204
|
+
case 7:
|
|
205
|
+
if (!(0, exports.needsPLSReReview)(materialApproval)) return [3, 8];
|
|
206
|
+
_c = consts_1.Step.ai_review;
|
|
207
|
+
return [3, 10];
|
|
208
|
+
case 8: return [4, getApproverStep(ctx, materialApproval)];
|
|
192
209
|
case 9:
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
case 10:
|
|
210
|
+
_c = _d.sent();
|
|
211
|
+
_d.label = 10;
|
|
212
|
+
case 10:
|
|
213
|
+
nextStep = _c;
|
|
214
|
+
return [3, 13];
|
|
196
215
|
case 11:
|
|
216
|
+
nextStep = consts_1.Step.conclusion;
|
|
217
|
+
return [3, 13];
|
|
218
|
+
case 12: return [3, 13];
|
|
219
|
+
case 13:
|
|
197
220
|
console.log('[getNextStep]', JSON.stringify({
|
|
198
221
|
action: action,
|
|
199
222
|
nextStep: nextStep
|
|
@@ -203,7 +226,7 @@ var getNextStep = function (ctx, materialApproval, action) { return tslib_1.__aw
|
|
|
203
226
|
});
|
|
204
227
|
}); };
|
|
205
228
|
var getNextApprovers = function (ctx, materialApproval, nextStep) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
206
|
-
var approves, _a, preNsAgents, nsAgents, preLegalAgents, legalAgents, preSraAgents, sraAgents, preCaAgents, caAgents, kidsAgents, preAgents, perAgents, kidsAgents;
|
|
229
|
+
var approves, _a, preNsAgents, nsAgents, preLegalAgents, legalAgents, preSraAgents, sraAgents, preCaAgents, caAgents, preQcAgents, qcAgents, kidsAgents, preAgents, perAgents, kidsAgents;
|
|
207
230
|
return tslib_1.__generator(this, function (_b) {
|
|
208
231
|
switch (_b.label) {
|
|
209
232
|
case 0:
|
|
@@ -213,23 +236,23 @@ var getNextApprovers = function (ctx, materialApproval, nextStep) { return tslib
|
|
|
213
236
|
case consts_1.Step.draft: return [3, 1];
|
|
214
237
|
case consts_1.Step.ai_review: return [3, 2];
|
|
215
238
|
case consts_1.Step.departmental_review: return [3, 3];
|
|
216
|
-
case consts_1.Step.personnel_review: return [3,
|
|
217
|
-
case consts_1.Step.submitter_revisions: return [3,
|
|
218
|
-
case consts_1.Step.awaiting_deployment: return [3,
|
|
239
|
+
case consts_1.Step.personnel_review: return [3, 26];
|
|
240
|
+
case consts_1.Step.submitter_revisions: return [3, 33];
|
|
241
|
+
case consts_1.Step.awaiting_deployment: return [3, 34];
|
|
219
242
|
}
|
|
220
|
-
return [3,
|
|
243
|
+
return [3, 35];
|
|
221
244
|
case 1:
|
|
222
245
|
approves = (0, lodash_1.concat)(approves, {
|
|
223
246
|
userIds: [materialApproval.owner],
|
|
224
247
|
type: consts_1.ProcessApprovalType.Others
|
|
225
248
|
});
|
|
226
|
-
return [3,
|
|
249
|
+
return [3, 36];
|
|
227
250
|
case 2:
|
|
228
251
|
approves = (0, lodash_1.concat)(approves, {
|
|
229
252
|
userIds: [process.env.PEPSICO_CONTENT_APPROVAL_AI_USERID],
|
|
230
253
|
type: consts_1.ProcessApprovalType.AI
|
|
231
254
|
});
|
|
232
|
-
return [3,
|
|
255
|
+
return [3, 36];
|
|
233
256
|
case 3:
|
|
234
257
|
console.log('[getNextApprovers] departmental_review 串行判断:', JSON.stringify({
|
|
235
258
|
pre_ns_reviewer: materialApproval.pre_ns_reviewer,
|
|
@@ -240,6 +263,8 @@ var getNextApprovers = function (ctx, materialApproval, nextStep) { return tslib
|
|
|
240
263
|
pre_sra_approval_status: materialApproval.pre_sra_approval_status,
|
|
241
264
|
pre_ca_reviewer: materialApproval.pre_ca_reviewer,
|
|
242
265
|
pre_ca_approval_status: materialApproval.pre_ca_approval_status,
|
|
266
|
+
pre_qc_reviewer: materialApproval.pre_qc_reviewer,
|
|
267
|
+
pre_qc_approval_status: materialApproval.pre_qc_approval_status,
|
|
243
268
|
}));
|
|
244
269
|
if (!(materialApproval.pre_ns_reviewer && materialApproval.pre_ns_approval_status != true && materialApproval.pre_ns_approval_status !== consts_1.ApprovalStatus.pass)) return [3, 5];
|
|
245
270
|
return [4, (0, agent_1.getReviewerAgentsInfo)(ctx, materialApproval.space, [materialApproval.pre_ns_reviewer])];
|
|
@@ -297,49 +322,67 @@ var getNextApprovers = function (ctx, materialApproval, nextStep) { return tslib
|
|
|
297
322
|
approves = (0, lodash_1.concat)(approves, tslib_1.__assign(tslib_1.__assign({}, caAgents), { type: consts_1.ProcessApprovalType.CA }));
|
|
298
323
|
_b.label = 19;
|
|
299
324
|
case 19:
|
|
300
|
-
if (!(
|
|
301
|
-
|
|
325
|
+
if (!(0, exports.needsQcReview)(materialApproval)) return [3, 23];
|
|
326
|
+
if (_.isEmpty(materialApproval.qc_reviewer)) {
|
|
327
|
+
throw new Error('QC审核人缺失, 请确认审批单对应审核人员信息');
|
|
328
|
+
}
|
|
329
|
+
if (!(materialApproval.pre_qc_reviewer && materialApproval.pre_qc_approval_status != true && materialApproval.pre_qc_approval_status !== consts_1.ApprovalStatus.pass)) return [3, 21];
|
|
330
|
+
return [4, (0, agent_1.getReviewerAgentsInfo)(ctx, materialApproval.space, [materialApproval.pre_qc_reviewer])];
|
|
302
331
|
case 20:
|
|
332
|
+
preQcAgents = _b.sent();
|
|
333
|
+
approves = (0, lodash_1.concat)(approves, tslib_1.__assign(tslib_1.__assign({}, preQcAgents), { type: consts_1.ProcessApprovalType.PreQC }));
|
|
334
|
+
return [3, 23];
|
|
335
|
+
case 21:
|
|
336
|
+
if (!(materialApproval.qc_approval_status != true && materialApproval.qc_approval_status !== consts_1.ApprovalStatus.pass)) return [3, 23];
|
|
337
|
+
return [4, (0, agent_1.getReviewerAgentsInfo)(ctx, materialApproval.space, materialApproval.qc_reviewer)];
|
|
338
|
+
case 22:
|
|
339
|
+
qcAgents = _b.sent();
|
|
340
|
+
approves = (0, lodash_1.concat)(approves, tslib_1.__assign(tslib_1.__assign({}, qcAgents), { type: consts_1.ProcessApprovalType.QC }));
|
|
341
|
+
_b.label = 23;
|
|
342
|
+
case 23:
|
|
343
|
+
if (!(materialApproval.child_files == 'yes' && materialApproval.kids_approval_status != true && materialApproval.kids_approval_status !== consts_1.ApprovalStatus.pass)) return [3, 25];
|
|
344
|
+
return [4, (0, agent_1.getReviewerAgentsInfo)(ctx, materialApproval.space, [materialApproval.kids_reviewer])];
|
|
345
|
+
case 24:
|
|
303
346
|
kidsAgents = _b.sent();
|
|
304
347
|
approves = (0, lodash_1.concat)(approves, tslib_1.__assign(tslib_1.__assign({}, kidsAgents), { type: consts_1.ProcessApprovalType.Kids }));
|
|
305
|
-
_b.label =
|
|
306
|
-
case
|
|
307
|
-
case
|
|
308
|
-
if (!(materialApproval.pre_reviewer && materialApproval.pre_approval_status != true && materialApproval.pre_approval_status !== consts_1.ApprovalStatus.pass)) return [3,
|
|
348
|
+
_b.label = 25;
|
|
349
|
+
case 25: return [3, 36];
|
|
350
|
+
case 26:
|
|
351
|
+
if (!(materialApproval.pre_reviewer && materialApproval.pre_approval_status != true && materialApproval.pre_approval_status !== consts_1.ApprovalStatus.pass)) return [3, 28];
|
|
309
352
|
return [4, (0, agent_1.getReviewerAgentsInfo)(ctx, materialApproval.space, [materialApproval.pre_reviewer])];
|
|
310
|
-
case
|
|
353
|
+
case 27:
|
|
311
354
|
preAgents = _b.sent();
|
|
312
355
|
approves = (0, lodash_1.concat)(approves, tslib_1.__assign(tslib_1.__assign({}, preAgents), { type: consts_1.ProcessApprovalType.Preguding }));
|
|
313
|
-
return [3,
|
|
314
|
-
case
|
|
315
|
-
if (!(materialApproval.approval_status !== consts_1.ApprovalStatus.pass)) return [3,
|
|
356
|
+
return [3, 30];
|
|
357
|
+
case 28:
|
|
358
|
+
if (!(materialApproval.approval_status !== consts_1.ApprovalStatus.pass)) return [3, 30];
|
|
316
359
|
return [4, (0, agent_1.getReviewerAgentsInfo)(ctx, materialApproval.space, materialApproval.reviewer)];
|
|
317
|
-
case
|
|
360
|
+
case 29:
|
|
318
361
|
perAgents = _b.sent();
|
|
319
362
|
approves = (0, lodash_1.concat)(approves, tslib_1.__assign(tslib_1.__assign({}, perAgents), { type: consts_1.ProcessApprovalType.guding }));
|
|
320
|
-
_b.label =
|
|
321
|
-
case
|
|
322
|
-
if (!(materialApproval.child_files == 'yes' && materialApproval.kids_approval_status != true && materialApproval.kids_approval_status !== consts_1.ApprovalStatus.pass)) return [3,
|
|
363
|
+
_b.label = 30;
|
|
364
|
+
case 30:
|
|
365
|
+
if (!(materialApproval.child_files == 'yes' && materialApproval.kids_approval_status != true && materialApproval.kids_approval_status !== consts_1.ApprovalStatus.pass)) return [3, 32];
|
|
323
366
|
return [4, (0, agent_1.getReviewerAgentsInfo)(ctx, materialApproval.space, [materialApproval.kids_reviewer])];
|
|
324
|
-
case
|
|
367
|
+
case 31:
|
|
325
368
|
kidsAgents = _b.sent();
|
|
326
369
|
approves = (0, lodash_1.concat)(approves, tslib_1.__assign(tslib_1.__assign({}, kidsAgents), { type: consts_1.ProcessApprovalType.Kids }));
|
|
327
|
-
_b.label =
|
|
328
|
-
case
|
|
329
|
-
case
|
|
370
|
+
_b.label = 32;
|
|
371
|
+
case 32: return [3, 36];
|
|
372
|
+
case 33:
|
|
330
373
|
approves = (0, lodash_1.concat)(approves, {
|
|
331
374
|
userIds: [materialApproval.owner],
|
|
332
375
|
type: consts_1.ProcessApprovalType.Others
|
|
333
376
|
});
|
|
334
|
-
return [3,
|
|
335
|
-
case
|
|
377
|
+
return [3, 36];
|
|
378
|
+
case 34:
|
|
336
379
|
approves = (0, lodash_1.concat)(approves, {
|
|
337
380
|
userIds: [materialApproval.material_owner_id],
|
|
338
381
|
type: consts_1.ProcessApprovalType.Others
|
|
339
382
|
});
|
|
340
|
-
return [3,
|
|
341
|
-
case
|
|
342
|
-
case
|
|
383
|
+
return [3, 36];
|
|
384
|
+
case 35: return [3, 36];
|
|
385
|
+
case 36: return [2, (0, lodash_1.uniq)(approves)];
|
|
343
386
|
}
|
|
344
387
|
});
|
|
345
388
|
}); };
|
|
@@ -387,6 +430,9 @@ var updateUserStepStatus = function (ctx, materialApproval, _a) {
|
|
|
387
430
|
else if (approveField === 'ca_approval_status') {
|
|
388
431
|
filters.push(["type", "=", 'CA']);
|
|
389
432
|
}
|
|
433
|
+
else if (approveField === 'qc_approval_status') {
|
|
434
|
+
filters.push(["type", "=", 'QC']);
|
|
435
|
+
}
|
|
390
436
|
else if (approveField === 'sra_approval_status') {
|
|
391
437
|
filters.push(["type", "=", 'SRA']);
|
|
392
438
|
}
|
|
@@ -411,6 +457,9 @@ var updateUserStepStatus = function (ctx, materialApproval, _a) {
|
|
|
411
457
|
else if (approveField === 'pre_ca_approval_status') {
|
|
412
458
|
filters.push(["type", "=", 'PreCA']);
|
|
413
459
|
}
|
|
460
|
+
else if (approveField === 'pre_qc_approval_status') {
|
|
461
|
+
filters.push(["type", "=", 'PreQC']);
|
|
462
|
+
}
|
|
414
463
|
else if (approveField === 'pre_approval_status') {
|
|
415
464
|
filters.push(["type", "=", 'Preguding']);
|
|
416
465
|
}
|
|
@@ -736,6 +785,9 @@ var setPersonView = function (ctx, materialApproval) { return tslib_1.__awaiter(
|
|
|
736
785
|
}
|
|
737
786
|
else {
|
|
738
787
|
personView = (0, lodash_1.concat)(materialApproval.sra_reviewer, materialApproval.ns_reviewer, materialApproval.ca_reviewer, materialApproval.legal_reviewer, materialApproval.sra_assistance, materialApproval.ns_assistance, materialApproval.ca_assistance, materialApproval.legal_assistance);
|
|
788
|
+
if ((0, exports.needsQcReview)(materialApproval)) {
|
|
789
|
+
personView = (0, lodash_1.concat)(personView, materialApproval.qc_reviewer, materialApproval.qc_assistance);
|
|
790
|
+
}
|
|
739
791
|
if (materialApproval.pre_ns_reviewer)
|
|
740
792
|
personView = (0, lodash_1.concat)(personView, materialApproval.pre_ns_reviewer);
|
|
741
793
|
if (materialApproval.pre_legal_reviewer)
|
|
@@ -744,6 +796,8 @@ var setPersonView = function (ctx, materialApproval) { return tslib_1.__awaiter(
|
|
|
744
796
|
personView = (0, lodash_1.concat)(personView, materialApproval.pre_sra_reviewer);
|
|
745
797
|
if (materialApproval.pre_ca_reviewer)
|
|
746
798
|
personView = (0, lodash_1.concat)(personView, materialApproval.pre_ca_reviewer);
|
|
799
|
+
if ((0, exports.needsQcReview)(materialApproval) && materialApproval.pre_qc_reviewer)
|
|
800
|
+
personView = (0, lodash_1.concat)(personView, materialApproval.pre_qc_reviewer);
|
|
747
801
|
}
|
|
748
802
|
if (materialApproval.child_files == 'yes') {
|
|
749
803
|
personView = (0, lodash_1.concat)(personView, materialApproval.kids_reviewer);
|
|
@@ -767,6 +821,7 @@ var PRE_TO_FORMAL_MAPPING = {
|
|
|
767
821
|
'pre_legal_approval_status': { reviewerField: 'legal_reviewer', type: consts_1.ProcessApprovalType.Legal, statusField: 'legal_approval_status' },
|
|
768
822
|
'pre_sra_approval_status': { reviewerField: 'sra_reviewer', type: consts_1.ProcessApprovalType.SRA, statusField: 'sra_approval_status' },
|
|
769
823
|
'pre_ca_approval_status': { reviewerField: 'ca_reviewer', type: consts_1.ProcessApprovalType.CA, statusField: 'ca_approval_status' },
|
|
824
|
+
'pre_qc_approval_status': { reviewerField: 'qc_reviewer', type: consts_1.ProcessApprovalType.QC, statusField: 'qc_approval_status' },
|
|
770
825
|
'pre_approval_status': { reviewerField: 'reviewer', type: consts_1.ProcessApprovalType.guding, statusField: 'approval_status' },
|
|
771
826
|
};
|
|
772
827
|
var addFormalReviewerAfterPreApproval = function (ctx, recordId, approveField, materialApproval) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
@@ -875,6 +930,9 @@ var getPreReviewStatuses = function (materialApproval) {
|
|
|
875
930
|
if (materialApproval.pre_ca_reviewer) {
|
|
876
931
|
statuses.push({ dept: 'CA', status: materialApproval.pre_ca_approval_status, preField: 'pre_ca_approval_status', deptApprovalField: 'ca_approval_status' });
|
|
877
932
|
}
|
|
933
|
+
if ((0, exports.needsQcReview)(materialApproval) && materialApproval.pre_qc_reviewer) {
|
|
934
|
+
statuses.push({ dept: 'QC', status: materialApproval.pre_qc_approval_status, preField: 'pre_qc_approval_status', deptApprovalField: 'qc_approval_status' });
|
|
935
|
+
}
|
|
878
936
|
return statuses;
|
|
879
937
|
};
|
|
880
938
|
exports.getPreReviewStatuses = getPreReviewStatuses;
|
|
@@ -888,16 +946,40 @@ var hasNonPreReviewDepartments = function (materialApproval) {
|
|
|
888
946
|
return true;
|
|
889
947
|
if (!materialApproval.pre_ca_reviewer && !isPositive(materialApproval.ca_approval_status))
|
|
890
948
|
return true;
|
|
949
|
+
if ((0, exports.needsQcReview)(materialApproval) && !materialApproval.pre_qc_reviewer && !isPositive(materialApproval.qc_approval_status))
|
|
950
|
+
return true;
|
|
891
951
|
return false;
|
|
892
952
|
};
|
|
893
953
|
exports.hasNonPreReviewDepartments = hasNonPreReviewDepartments;
|
|
954
|
+
var areDepartmentReviewsComplete = function (materialApproval) {
|
|
955
|
+
var baseDepartmentsComplete = (0, exports.isDeptReviewComplete)(materialApproval, 'ns')
|
|
956
|
+
&& (0, exports.isDeptReviewComplete)(materialApproval, 'legal')
|
|
957
|
+
&& (0, exports.isDeptReviewComplete)(materialApproval, 'sra')
|
|
958
|
+
&& (0, exports.isDeptReviewComplete)(materialApproval, 'ca');
|
|
959
|
+
return baseDepartmentsComplete
|
|
960
|
+
&& (!(0, exports.needsQcReview)(materialApproval) || (0, exports.isDeptReviewComplete)(materialApproval, 'qc'));
|
|
961
|
+
};
|
|
962
|
+
exports.areDepartmentReviewsComplete = areDepartmentReviewsComplete;
|
|
963
|
+
var getDepartmentEffectiveStatuses = function (materialApproval) {
|
|
964
|
+
var statuses = [
|
|
965
|
+
(0, exports.getDeptEffectiveStatus)(materialApproval, 'ns'),
|
|
966
|
+
(0, exports.getDeptEffectiveStatus)(materialApproval, 'legal'),
|
|
967
|
+
(0, exports.getDeptEffectiveStatus)(materialApproval, 'sra'),
|
|
968
|
+
(0, exports.getDeptEffectiveStatus)(materialApproval, 'ca')
|
|
969
|
+
];
|
|
970
|
+
if ((0, exports.needsQcReview)(materialApproval)) {
|
|
971
|
+
statuses.push((0, exports.getDeptEffectiveStatus)(materialApproval, 'qc'));
|
|
972
|
+
}
|
|
973
|
+
return statuses;
|
|
974
|
+
};
|
|
975
|
+
exports.getDepartmentEffectiveStatuses = getDepartmentEffectiveStatuses;
|
|
894
976
|
var advanceApproval = function (ctx, recordId, currentStepApprovalStatus) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
895
977
|
var actionLabel, user, record, nextStep, skipApprover, nextApprovers, _nextApprovers, nextApprovers_2, nextApprovers_2_1, reviewer, fieldName, status, e_7_1, nextApproversUserIds_1, nextApproversClientUserIds_1, setDoc, nextApprovers_3, nextApprovers_3_1, nextApprover, e_8_1, setDoc_1, postponedUserIds_1, now, visibleAfter, pastPostponeRecords, postponedDepts, _loop_1, nextApprovers_4, nextApprovers_4_1, reviewer, e_9_1, currentRecord, currentPostponed, newPostponed, currentMarkerUsers, newMarkerUsers, notifyUserIds, initiator, materialOwner, error_1;
|
|
896
978
|
var e_7, _a, _b, _c, e_8, _d, e_9, _e;
|
|
897
979
|
return tslib_1.__generator(this, function (_f) {
|
|
898
980
|
switch (_f.label) {
|
|
899
981
|
case 0:
|
|
900
|
-
_f.trys.push([0,
|
|
982
|
+
_f.trys.push([0, 106, , 107]);
|
|
901
983
|
actionLabel = '请查看';
|
|
902
984
|
user = ctx.meta.user;
|
|
903
985
|
return [4, ctx.getObject('pepsico_material_approval').findOne(recordId)];
|
|
@@ -1071,206 +1153,234 @@ var advanceApproval = function (ctx, recordId, currentStepApprovalStatus) { retu
|
|
|
1071
1153
|
})];
|
|
1072
1154
|
case 31:
|
|
1073
1155
|
_f.sent();
|
|
1074
|
-
if (!(nextStep === consts_1.Step.ai_review)) return [3,
|
|
1075
|
-
|
|
1076
|
-
return [4, (0,
|
|
1156
|
+
if (!(nextStep === consts_1.Step.ai_review)) return [3, 34];
|
|
1157
|
+
if (!(record.current_step === consts_1.Step.submitter_revisions)) return [3, 33];
|
|
1158
|
+
return [4, (0, pls_1.invalidatePLSReviews)(ctx, recordId)];
|
|
1077
1159
|
case 32:
|
|
1078
1160
|
_f.sent();
|
|
1079
|
-
console.timeEnd('callAIReview: ' + recordId);
|
|
1080
1161
|
_f.label = 33;
|
|
1081
1162
|
case 33:
|
|
1082
|
-
|
|
1083
|
-
nextApprovers_3 = tslib_1.__values(nextApprovers), nextApprovers_3_1 = nextApprovers_3.next();
|
|
1163
|
+
(0, AI_1.callAIReview)(ctx, recordId).catch(function () { });
|
|
1084
1164
|
_f.label = 34;
|
|
1085
1165
|
case 34:
|
|
1086
|
-
|
|
1166
|
+
_f.trys.push([34, 76, 77, 78]);
|
|
1167
|
+
nextApprovers_3 = tslib_1.__values(nextApprovers), nextApprovers_3_1 = nextApprovers_3.next();
|
|
1168
|
+
_f.label = 35;
|
|
1169
|
+
case 35:
|
|
1170
|
+
if (!!nextApprovers_3_1.done) return [3, 75];
|
|
1087
1171
|
nextApprover = nextApprovers_3_1.value;
|
|
1088
|
-
if (!(nextApprover.type === consts_1.ProcessApprovalType.CA)) return [3,
|
|
1172
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.CA)) return [3, 38];
|
|
1089
1173
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1090
1174
|
ca_approval_status: ''
|
|
1091
1175
|
})];
|
|
1092
|
-
case
|
|
1176
|
+
case 36:
|
|
1093
1177
|
_f.sent();
|
|
1094
1178
|
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['ca_approval_status', '=', false]], {
|
|
1095
1179
|
ca_approval_status: ''
|
|
1096
1180
|
})];
|
|
1097
|
-
case 36:
|
|
1098
|
-
_f.sent();
|
|
1099
|
-
_f.label = 37;
|
|
1100
1181
|
case 37:
|
|
1101
|
-
|
|
1182
|
+
_f.sent();
|
|
1183
|
+
_f.label = 38;
|
|
1184
|
+
case 38:
|
|
1185
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.QC)) return [3, 41];
|
|
1186
|
+
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1187
|
+
qc_approval_status: ''
|
|
1188
|
+
})];
|
|
1189
|
+
case 39:
|
|
1190
|
+
_f.sent();
|
|
1191
|
+
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['qc_approval_status', '=', false]], {
|
|
1192
|
+
qc_approval_status: ''
|
|
1193
|
+
})];
|
|
1194
|
+
case 40:
|
|
1195
|
+
_f.sent();
|
|
1196
|
+
_f.label = 41;
|
|
1197
|
+
case 41:
|
|
1198
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.Legal)) return [3, 44];
|
|
1102
1199
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1103
1200
|
legal_approval_status: ''
|
|
1104
1201
|
})];
|
|
1105
|
-
case
|
|
1202
|
+
case 42:
|
|
1106
1203
|
_f.sent();
|
|
1107
1204
|
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['legal_approval_status', '=', false]], {
|
|
1108
1205
|
legal_approval_status: ''
|
|
1109
1206
|
})];
|
|
1110
|
-
case
|
|
1207
|
+
case 43:
|
|
1111
1208
|
_f.sent();
|
|
1112
|
-
_f.label =
|
|
1113
|
-
case
|
|
1114
|
-
if (!(nextApprover.type === consts_1.ProcessApprovalType.NS)) return [3,
|
|
1209
|
+
_f.label = 44;
|
|
1210
|
+
case 44:
|
|
1211
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.NS)) return [3, 47];
|
|
1115
1212
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1116
1213
|
ns_approval_status: ''
|
|
1117
1214
|
})];
|
|
1118
|
-
case
|
|
1215
|
+
case 45:
|
|
1119
1216
|
_f.sent();
|
|
1120
1217
|
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['ns_approval_status', '=', false]], {
|
|
1121
1218
|
ns_approval_status: ''
|
|
1122
1219
|
})];
|
|
1123
|
-
case
|
|
1220
|
+
case 46:
|
|
1124
1221
|
_f.sent();
|
|
1125
|
-
_f.label =
|
|
1126
|
-
case
|
|
1127
|
-
if (!(nextApprover.type === consts_1.ProcessApprovalType.SRA)) return [3,
|
|
1222
|
+
_f.label = 47;
|
|
1223
|
+
case 47:
|
|
1224
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.SRA)) return [3, 50];
|
|
1128
1225
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1129
1226
|
sra_approval_status: ''
|
|
1130
1227
|
})];
|
|
1131
|
-
case
|
|
1228
|
+
case 48:
|
|
1132
1229
|
_f.sent();
|
|
1133
1230
|
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['sra_approval_status', '=', false]], {
|
|
1134
1231
|
sra_approval_status: ''
|
|
1135
1232
|
})];
|
|
1136
|
-
case
|
|
1233
|
+
case 49:
|
|
1137
1234
|
_f.sent();
|
|
1138
|
-
_f.label =
|
|
1139
|
-
case
|
|
1140
|
-
if (!(nextApprover.type === consts_1.ProcessApprovalType.guding)) return [3,
|
|
1235
|
+
_f.label = 50;
|
|
1236
|
+
case 50:
|
|
1237
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.guding)) return [3, 53];
|
|
1141
1238
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1142
1239
|
approval_status: ''
|
|
1143
1240
|
})];
|
|
1144
|
-
case
|
|
1241
|
+
case 51:
|
|
1145
1242
|
_f.sent();
|
|
1146
1243
|
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['approval_status', '=', false]], {
|
|
1147
1244
|
approval_status: ''
|
|
1148
1245
|
})];
|
|
1149
|
-
case
|
|
1246
|
+
case 52:
|
|
1150
1247
|
_f.sent();
|
|
1151
|
-
_f.label =
|
|
1152
|
-
case
|
|
1153
|
-
if (!(nextApprover.type === consts_1.ProcessApprovalType.Kids)) return [3,
|
|
1248
|
+
_f.label = 53;
|
|
1249
|
+
case 53:
|
|
1250
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.Kids)) return [3, 56];
|
|
1154
1251
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1155
1252
|
kids_approval_status: ''
|
|
1156
1253
|
})];
|
|
1157
|
-
case
|
|
1254
|
+
case 54:
|
|
1158
1255
|
_f.sent();
|
|
1159
1256
|
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['kids_approval_status', '=', false]], {
|
|
1160
1257
|
kids_approval_status: ''
|
|
1161
1258
|
})];
|
|
1162
|
-
case
|
|
1259
|
+
case 55:
|
|
1163
1260
|
_f.sent();
|
|
1164
|
-
_f.label =
|
|
1165
|
-
case
|
|
1166
|
-
if (!(nextApprover.type === consts_1.ProcessApprovalType.PreNS)) return [3,
|
|
1261
|
+
_f.label = 56;
|
|
1262
|
+
case 56:
|
|
1263
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.PreNS)) return [3, 59];
|
|
1167
1264
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1168
1265
|
pre_ns_approval_status: ''
|
|
1169
1266
|
})];
|
|
1170
|
-
case
|
|
1267
|
+
case 57:
|
|
1171
1268
|
_f.sent();
|
|
1172
1269
|
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['pre_ns_approval_status', '=', false]], {
|
|
1173
1270
|
pre_ns_approval_status: ''
|
|
1174
1271
|
})];
|
|
1175
|
-
case
|
|
1272
|
+
case 58:
|
|
1176
1273
|
_f.sent();
|
|
1177
|
-
_f.label =
|
|
1178
|
-
case
|
|
1179
|
-
if (!(nextApprover.type === consts_1.ProcessApprovalType.PreLegal)) return [3,
|
|
1274
|
+
_f.label = 59;
|
|
1275
|
+
case 59:
|
|
1276
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.PreLegal)) return [3, 62];
|
|
1180
1277
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1181
1278
|
pre_legal_approval_status: ''
|
|
1182
1279
|
})];
|
|
1183
|
-
case
|
|
1280
|
+
case 60:
|
|
1184
1281
|
_f.sent();
|
|
1185
1282
|
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['pre_legal_approval_status', '=', false]], {
|
|
1186
1283
|
pre_legal_approval_status: ''
|
|
1187
1284
|
})];
|
|
1188
|
-
case
|
|
1285
|
+
case 61:
|
|
1189
1286
|
_f.sent();
|
|
1190
|
-
_f.label =
|
|
1191
|
-
case
|
|
1192
|
-
if (!(nextApprover.type === consts_1.ProcessApprovalType.PreSRA)) return [3,
|
|
1287
|
+
_f.label = 62;
|
|
1288
|
+
case 62:
|
|
1289
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.PreSRA)) return [3, 65];
|
|
1193
1290
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1194
1291
|
pre_sra_approval_status: ''
|
|
1195
1292
|
})];
|
|
1196
|
-
case
|
|
1293
|
+
case 63:
|
|
1197
1294
|
_f.sent();
|
|
1198
1295
|
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['pre_sra_approval_status', '=', false]], {
|
|
1199
1296
|
pre_sra_approval_status: ''
|
|
1200
1297
|
})];
|
|
1201
|
-
case
|
|
1298
|
+
case 64:
|
|
1202
1299
|
_f.sent();
|
|
1203
|
-
_f.label =
|
|
1204
|
-
case
|
|
1205
|
-
if (!(nextApprover.type === consts_1.ProcessApprovalType.PreCA)) return [3,
|
|
1300
|
+
_f.label = 65;
|
|
1301
|
+
case 65:
|
|
1302
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.PreCA)) return [3, 68];
|
|
1206
1303
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1207
1304
|
pre_ca_approval_status: ''
|
|
1208
1305
|
})];
|
|
1209
|
-
case
|
|
1306
|
+
case 66:
|
|
1210
1307
|
_f.sent();
|
|
1211
1308
|
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['pre_ca_approval_status', '=', false]], {
|
|
1212
1309
|
pre_ca_approval_status: ''
|
|
1213
1310
|
})];
|
|
1214
|
-
case
|
|
1311
|
+
case 67:
|
|
1215
1312
|
_f.sent();
|
|
1216
|
-
_f.label =
|
|
1217
|
-
case
|
|
1218
|
-
if (!(nextApprover.type === consts_1.ProcessApprovalType.
|
|
1313
|
+
_f.label = 68;
|
|
1314
|
+
case 68:
|
|
1315
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.PreQC)) return [3, 71];
|
|
1316
|
+
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1317
|
+
pre_qc_approval_status: ''
|
|
1318
|
+
})];
|
|
1319
|
+
case 69:
|
|
1320
|
+
_f.sent();
|
|
1321
|
+
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['pre_qc_approval_status', '=', false]], {
|
|
1322
|
+
pre_qc_approval_status: ''
|
|
1323
|
+
})];
|
|
1324
|
+
case 70:
|
|
1325
|
+
_f.sent();
|
|
1326
|
+
_f.label = 71;
|
|
1327
|
+
case 71:
|
|
1328
|
+
if (!(nextApprover.type === consts_1.ProcessApprovalType.Preguding)) return [3, 74];
|
|
1219
1329
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1220
1330
|
pre_approval_status: ''
|
|
1221
1331
|
})];
|
|
1222
|
-
case
|
|
1332
|
+
case 72:
|
|
1223
1333
|
_f.sent();
|
|
1224
1334
|
return [4, ctx.getObject('pepsico_material').directUpdateMany([['pepsico_material_approval', '=', recordId], ['pre_approval_status', '=', false]], {
|
|
1225
1335
|
pre_approval_status: ''
|
|
1226
1336
|
})];
|
|
1227
|
-
case
|
|
1337
|
+
case 73:
|
|
1228
1338
|
_f.sent();
|
|
1229
|
-
_f.label =
|
|
1230
|
-
case
|
|
1339
|
+
_f.label = 74;
|
|
1340
|
+
case 74:
|
|
1231
1341
|
nextApprovers_3_1 = nextApprovers_3.next();
|
|
1232
|
-
return [3,
|
|
1233
|
-
case
|
|
1234
|
-
case
|
|
1342
|
+
return [3, 35];
|
|
1343
|
+
case 75: return [3, 78];
|
|
1344
|
+
case 76:
|
|
1235
1345
|
e_8_1 = _f.sent();
|
|
1236
1346
|
e_8 = { error: e_8_1 };
|
|
1237
|
-
return [3,
|
|
1238
|
-
case
|
|
1347
|
+
return [3, 78];
|
|
1348
|
+
case 77:
|
|
1239
1349
|
try {
|
|
1240
1350
|
if (nextApprovers_3_1 && !nextApprovers_3_1.done && (_d = nextApprovers_3.return)) _d.call(nextApprovers_3);
|
|
1241
1351
|
}
|
|
1242
1352
|
finally { if (e_8) throw e_8.error; }
|
|
1243
1353
|
return [7];
|
|
1244
|
-
case
|
|
1245
|
-
if (!(nextStep === consts_1.Step.departmental_review || nextStep === consts_1.Step.personnel_review)) return [3,
|
|
1354
|
+
case 78:
|
|
1355
|
+
if (!(nextStep === consts_1.Step.departmental_review || nextStep === consts_1.Step.personnel_review)) return [3, 80];
|
|
1246
1356
|
return [4, setPersonView(ctx, record)];
|
|
1247
|
-
case
|
|
1357
|
+
case 79:
|
|
1248
1358
|
_f.sent();
|
|
1249
|
-
_f.label =
|
|
1250
|
-
case
|
|
1251
|
-
if (!(record.current_step === consts_1.Step.departmental_review || record.current_step === consts_1.Step.personnel_review)) return [3,
|
|
1359
|
+
_f.label = 80;
|
|
1360
|
+
case 80:
|
|
1361
|
+
if (!(record.current_step === consts_1.Step.departmental_review || record.current_step === consts_1.Step.personnel_review)) return [3, 82];
|
|
1252
1362
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1253
1363
|
materials_remove_share_link_from_onedrive_status: 'pending'
|
|
1254
1364
|
})];
|
|
1255
|
-
case
|
|
1365
|
+
case 81:
|
|
1256
1366
|
_f.sent();
|
|
1257
|
-
_f.label =
|
|
1258
|
-
case
|
|
1259
|
-
if (!(nextStep === consts_1.Step.awaiting_deployment)) return [3,
|
|
1367
|
+
_f.label = 82;
|
|
1368
|
+
case 82:
|
|
1369
|
+
if (!(nextStep === consts_1.Step.awaiting_deployment)) return [3, 84];
|
|
1260
1370
|
return [4, pendingDeployment(ctx, recordId)];
|
|
1261
|
-
case
|
|
1371
|
+
case 83:
|
|
1262
1372
|
_f.sent();
|
|
1263
|
-
_f.label =
|
|
1264
|
-
case
|
|
1265
|
-
if (!(nextStep === consts_1.Step.awaiting_deployment || (nextStep === consts_1.Step.conclusion && record.current_step === consts_1.Step.ai_review))) return [3,
|
|
1373
|
+
_f.label = 84;
|
|
1374
|
+
case 84:
|
|
1375
|
+
if (!(nextStep === consts_1.Step.awaiting_deployment || (nextStep === consts_1.Step.conclusion && record.current_step === consts_1.Step.ai_review))) return [3, 86];
|
|
1266
1376
|
setDoc_1 = {
|
|
1267
1377
|
materials_download_from_onedrive_status: 'pending'
|
|
1268
1378
|
};
|
|
1269
1379
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, setDoc_1)];
|
|
1270
|
-
case
|
|
1380
|
+
case 85:
|
|
1271
1381
|
_f.sent();
|
|
1272
|
-
_f.label =
|
|
1273
|
-
case
|
|
1382
|
+
_f.label = 86;
|
|
1383
|
+
case 86:
|
|
1274
1384
|
if (currentStepApprovalStatus === consts_1.ApprovalStatus.rejected) {
|
|
1275
1385
|
actionLabel = '内容审批被驳回';
|
|
1276
1386
|
}
|
|
@@ -1282,7 +1392,7 @@ var advanceApproval = function (ctx, recordId, currentStepApprovalStatus) { retu
|
|
|
1282
1392
|
actionLabel = "\u5185\u5BB9\u5BA1\u6279\u5DF2\u901A\u8FC7\u5F85\u4E0A\u7EBF";
|
|
1283
1393
|
}
|
|
1284
1394
|
postponedUserIds_1 = [];
|
|
1285
|
-
if (!(nextStep === consts_1.Step.departmental_review || nextStep === consts_1.Step.personnel_review)) return [3,
|
|
1395
|
+
if (!(nextStep === consts_1.Step.departmental_review || nextStep === consts_1.Step.personnel_review)) return [3, 98];
|
|
1286
1396
|
now = new Date();
|
|
1287
1397
|
visibleAfter = new Date(now.getTime() + 3 * 24 * 60 * 60 * 1000);
|
|
1288
1398
|
return [4, ctx.getObject('pepsico_review_postpone').directFind({
|
|
@@ -1291,9 +1401,9 @@ var advanceApproval = function (ctx, recordId, currentStepApprovalStatus) { retu
|
|
|
1291
1401
|
['is_marker', '=', true]
|
|
1292
1402
|
]
|
|
1293
1403
|
})];
|
|
1294
|
-
case
|
|
1404
|
+
case 87:
|
|
1295
1405
|
pastPostponeRecords = _f.sent();
|
|
1296
|
-
if (!(pastPostponeRecords && pastPostponeRecords.length > 0)) return [3,
|
|
1406
|
+
if (!(pastPostponeRecords && pastPostponeRecords.length > 0)) return [3, 98];
|
|
1297
1407
|
postponedDepts = new Set(pastPostponeRecords.map(function (r) { return r.department_type; }));
|
|
1298
1408
|
_loop_1 = function (reviewer) {
|
|
1299
1409
|
var deptUserIds, deptMarkers, deptMarkers_1, deptMarkers_1_1, marker, e_10_1;
|
|
@@ -1344,36 +1454,36 @@ var advanceApproval = function (ctx, recordId, currentStepApprovalStatus) { retu
|
|
|
1344
1454
|
}
|
|
1345
1455
|
});
|
|
1346
1456
|
};
|
|
1347
|
-
_f.label =
|
|
1348
|
-
case
|
|
1349
|
-
_f.trys.push([
|
|
1457
|
+
_f.label = 88;
|
|
1458
|
+
case 88:
|
|
1459
|
+
_f.trys.push([88, 93, 94, 95]);
|
|
1350
1460
|
nextApprovers_4 = tslib_1.__values(nextApprovers), nextApprovers_4_1 = nextApprovers_4.next();
|
|
1351
|
-
_f.label =
|
|
1352
|
-
case
|
|
1353
|
-
if (!!nextApprovers_4_1.done) return [3,
|
|
1461
|
+
_f.label = 89;
|
|
1462
|
+
case 89:
|
|
1463
|
+
if (!!nextApprovers_4_1.done) return [3, 92];
|
|
1354
1464
|
reviewer = nextApprovers_4_1.value;
|
|
1355
1465
|
return [5, _loop_1(reviewer)];
|
|
1356
|
-
case
|
|
1466
|
+
case 90:
|
|
1357
1467
|
_f.sent();
|
|
1358
|
-
_f.label =
|
|
1359
|
-
case
|
|
1468
|
+
_f.label = 91;
|
|
1469
|
+
case 91:
|
|
1360
1470
|
nextApprovers_4_1 = nextApprovers_4.next();
|
|
1361
|
-
return [3,
|
|
1362
|
-
case
|
|
1363
|
-
case
|
|
1471
|
+
return [3, 89];
|
|
1472
|
+
case 92: return [3, 95];
|
|
1473
|
+
case 93:
|
|
1364
1474
|
e_9_1 = _f.sent();
|
|
1365
1475
|
e_9 = { error: e_9_1 };
|
|
1366
|
-
return [3,
|
|
1367
|
-
case
|
|
1476
|
+
return [3, 95];
|
|
1477
|
+
case 94:
|
|
1368
1478
|
try {
|
|
1369
1479
|
if (nextApprovers_4_1 && !nextApprovers_4_1.done && (_e = nextApprovers_4.return)) _e.call(nextApprovers_4);
|
|
1370
1480
|
}
|
|
1371
1481
|
finally { if (e_9) throw e_9.error; }
|
|
1372
1482
|
return [7];
|
|
1373
|
-
case
|
|
1374
|
-
if (!(postponedUserIds_1.length > 0)) return [3,
|
|
1483
|
+
case 95:
|
|
1484
|
+
if (!(postponedUserIds_1.length > 0)) return [3, 98];
|
|
1375
1485
|
return [4, ctx.getObject('pepsico_material_approval').findOne(recordId)];
|
|
1376
|
-
case
|
|
1486
|
+
case 96:
|
|
1377
1487
|
currentRecord = _f.sent();
|
|
1378
1488
|
currentPostponed = currentRecord.review_postponed_users || [];
|
|
1379
1489
|
newPostponed = (0, lodash_1.compact)((0, lodash_1.uniq)((0, lodash_1.concat)(currentPostponed, postponedUserIds_1)));
|
|
@@ -1383,44 +1493,44 @@ var advanceApproval = function (ctx, recordId, currentStepApprovalStatus) { retu
|
|
|
1383
1493
|
review_postponed_users: newPostponed,
|
|
1384
1494
|
postpone_marker_users: newMarkerUsers
|
|
1385
1495
|
})];
|
|
1386
|
-
case
|
|
1496
|
+
case 97:
|
|
1387
1497
|
_f.sent();
|
|
1388
1498
|
console.log("[advanceApproval] \u81EA\u52A8\u5EF6\u540E\u5BA1\u6838\u4EBA: ".concat(postponedUserIds_1, ", visibleAfter: ").concat(visibleAfter));
|
|
1389
|
-
_f.label =
|
|
1390
|
-
case
|
|
1499
|
+
_f.label = 98;
|
|
1500
|
+
case 98:
|
|
1391
1501
|
notifyUserIds = postponedUserIds_1.length > 0
|
|
1392
1502
|
? nextApproversUserIds_1.filter(function (id) { return !postponedUserIds_1.includes(id); })
|
|
1393
1503
|
: nextApproversUserIds_1;
|
|
1394
1504
|
return [4, (0, notification_1.sendNotifications)(ctx, record, notifyUserIds, actionLabel)];
|
|
1395
|
-
case
|
|
1505
|
+
case 99:
|
|
1396
1506
|
_f.sent();
|
|
1397
|
-
if (!(actionLabel === '内容审批被驳回' || actionLabel === '内容审批已通过待上线')) return [3,
|
|
1507
|
+
if (!(actionLabel === '内容审批被驳回' || actionLabel === '内容审批已通过待上线')) return [3, 101];
|
|
1398
1508
|
return [4, (0, approval_cc_1.notifyApprovalCcUsers)(ctx, record, actionLabel, notification_1.sendCcNotifications, notifyUserIds)];
|
|
1399
|
-
case
|
|
1509
|
+
case 100:
|
|
1400
1510
|
_f.sent();
|
|
1401
|
-
_f.label =
|
|
1402
|
-
case
|
|
1403
|
-
if (!(nextStep === consts_1.Step.awaiting_deployment)) return [3,
|
|
1511
|
+
_f.label = 101;
|
|
1512
|
+
case 101:
|
|
1513
|
+
if (!(nextStep === consts_1.Step.awaiting_deployment)) return [3, 103];
|
|
1404
1514
|
initiator = record.owner;
|
|
1405
1515
|
materialOwner = record.material_owner_id;
|
|
1406
|
-
if (!(initiator && materialOwner && initiator !== materialOwner)) return [3,
|
|
1516
|
+
if (!(initiator && materialOwner && initiator !== materialOwner)) return [3, 103];
|
|
1407
1517
|
console.log("[advanceApproval] \u901A\u77E5\u53D1\u8D77\u4EBA\u5BA1\u6838\u5B8C\u6210: initiator=".concat(initiator, ", material_owner=").concat(materialOwner));
|
|
1408
1518
|
return [4, (0, notification_1.sendNotifications)(ctx, record, [initiator], '审核完成')];
|
|
1409
|
-
case
|
|
1519
|
+
case 102:
|
|
1410
1520
|
_f.sent();
|
|
1411
|
-
_f.label =
|
|
1412
|
-
case
|
|
1413
|
-
if (!(nextStep === consts_1.Step.conclusion)) return [3,
|
|
1521
|
+
_f.label = 103;
|
|
1522
|
+
case 103:
|
|
1523
|
+
if (!(nextStep === consts_1.Step.conclusion)) return [3, 105];
|
|
1414
1524
|
return [4, (0, approval_cc_1.notifyApprovalCcUsers)(ctx, record, '内容审批已完成', notification_1.sendCcNotifications, notifyUserIds)];
|
|
1415
|
-
case
|
|
1525
|
+
case 104:
|
|
1416
1526
|
_f.sent();
|
|
1417
|
-
_f.label =
|
|
1418
|
-
case
|
|
1419
|
-
case
|
|
1527
|
+
_f.label = 105;
|
|
1528
|
+
case 105: return [2, {}];
|
|
1529
|
+
case 106:
|
|
1420
1530
|
error_1 = _f.sent();
|
|
1421
1531
|
console.error('[advanceApproval] Error:', error_1.message, error_1.stack);
|
|
1422
1532
|
throw error_1;
|
|
1423
|
-
case
|
|
1533
|
+
case 107: return [2];
|
|
1424
1534
|
}
|
|
1425
1535
|
});
|
|
1426
1536
|
}); };
|
|
@@ -1627,17 +1737,11 @@ var approvalContent = function (ctx, recordId, _a) {
|
|
|
1627
1737
|
isPositive = function (status) { return status === true || status === consts_1.ApprovalStatus.approved || status === consts_1.ApprovalStatus.pass; };
|
|
1628
1738
|
isPass = function (status) { return status === consts_1.ApprovalStatus.pass; };
|
|
1629
1739
|
if (approvalNew.current_step === consts_1.Step.departmental_review) {
|
|
1630
|
-
if (!(0, exports.
|
|
1631
|
-
!(0, exports.isDeptReviewComplete)(approvalNew, 'sra') || !(0, exports.isDeptReviewComplete)(approvalNew, 'ca')) {
|
|
1740
|
+
if (!(0, exports.areDepartmentReviewsComplete)(approvalNew)) {
|
|
1632
1741
|
console.log('[approvalContent]: 有部门审核周期未完成, 只结束当前用户审批任务,不推进审批进度.');
|
|
1633
1742
|
return [2, {}];
|
|
1634
1743
|
}
|
|
1635
|
-
effectiveStatuses =
|
|
1636
|
-
(0, exports.getDeptEffectiveStatus)(approvalNew, 'ns'),
|
|
1637
|
-
(0, exports.getDeptEffectiveStatus)(approvalNew, 'legal'),
|
|
1638
|
-
(0, exports.getDeptEffectiveStatus)(approvalNew, 'sra'),
|
|
1639
|
-
(0, exports.getDeptEffectiveStatus)(approvalNew, 'ca')
|
|
1640
|
-
];
|
|
1744
|
+
effectiveStatuses = (0, exports.getDepartmentEffectiveStatuses)(approvalNew);
|
|
1641
1745
|
allPositive = effectiveStatuses.every(isPositive);
|
|
1642
1746
|
if (allPositive) {
|
|
1643
1747
|
allPass = effectiveStatuses.every(isPass);
|
|
@@ -1708,8 +1812,7 @@ var rejectContent = function (ctx, recordId, _a) {
|
|
|
1708
1812
|
_b.sent();
|
|
1709
1813
|
isPositive = function (status) { return status === true || status === consts_1.ApprovalStatus.approved || status === consts_1.ApprovalStatus.pass; };
|
|
1710
1814
|
if (approvalNew.current_step === consts_1.Step.departmental_review) {
|
|
1711
|
-
if (!(0, exports.
|
|
1712
|
-
!(0, exports.isDeptReviewComplete)(approvalNew, 'sra') || !(0, exports.isDeptReviewComplete)(approvalNew, 'ca')) {
|
|
1815
|
+
if (!(0, exports.areDepartmentReviewsComplete)(approvalNew)) {
|
|
1713
1816
|
console.log('[rejectContent]: 有部门审核周期未完成, 只结束当前用户审批任务,不推进审批进度.');
|
|
1714
1817
|
return [2, {}];
|
|
1715
1818
|
}
|
|
@@ -1799,6 +1902,9 @@ var submitPreReviewContent = function (ctx, recordId, currentStepApprovalStatus)
|
|
|
1799
1902
|
else if (approval.pre_ca_reviewer === user.userId) {
|
|
1800
1903
|
approveField = 'pre_ca_approval_status';
|
|
1801
1904
|
}
|
|
1905
|
+
else if ((0, exports.needsQcReview)(approval) && approval.pre_qc_reviewer === user.userId) {
|
|
1906
|
+
approveField = 'pre_qc_approval_status';
|
|
1907
|
+
}
|
|
1802
1908
|
if (!!approveField) return [3, 3];
|
|
1803
1909
|
return [4, ctx.getObject("pepsico_approval_process").find({
|
|
1804
1910
|
filters: [
|
|
@@ -1823,6 +1929,8 @@ var submitPreReviewContent = function (ctx, recordId, currentStepApprovalStatus)
|
|
|
1823
1929
|
approveField = 'pre_sra_approval_status';
|
|
1824
1930
|
else if (type === consts_1.ProcessApprovalType.PreCA)
|
|
1825
1931
|
approveField = 'pre_ca_approval_status';
|
|
1932
|
+
else if (type === consts_1.ProcessApprovalType.PreQC)
|
|
1933
|
+
approveField = 'pre_qc_approval_status';
|
|
1826
1934
|
else if (type === consts_1.ProcessApprovalType.Preguding)
|
|
1827
1935
|
approveField = 'pre_approval_status';
|
|
1828
1936
|
}
|
|
@@ -1848,7 +1956,7 @@ var submitPreReviewContent = function (ctx, recordId, currentStepApprovalStatus)
|
|
|
1848
1956
|
exports.submitPreReviewContent = submitPreReviewContent;
|
|
1849
1957
|
var submitContent = function (ctx, recordId, currentStepApprovalStatus, skip) {
|
|
1850
1958
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
1851
|
-
var approvalNew, user, allow, aProcess, aProcess_1, aProcess_1_1, item, e_12_1, approvalType, allTrue1, allTrue, spaceUsers, owner, materials, pendingXmlToWordMaterials, pendingUploadMaterials;
|
|
1959
|
+
var approvalNew, user, allow, aProcess, aProcess_1, aProcess_1_1, item, e_12_1, scene, plsIdsBefore, uploadedFileIds, uploaded, plsIds, plsIdsAfter, hasExisting, hasUploaded, approvalType, allTrue1, allTrue, spaceUsers, owner, materials, pendingXmlToWordMaterials, pendingUploadMaterials;
|
|
1852
1960
|
var e_12, _a;
|
|
1853
1961
|
return tslib_1.__generator(this, function (_b) {
|
|
1854
1962
|
switch (_b.label) {
|
|
@@ -1937,18 +2045,65 @@ var submitContent = function (ctx, recordId, currentStepApprovalStatus, skip) {
|
|
|
1937
2045
|
_b.label = 13;
|
|
1938
2046
|
case 13: return [2];
|
|
1939
2047
|
case 14:
|
|
1940
|
-
if (!(approvalNew.current_step === consts_1.Step.draft)) return [3,
|
|
1941
|
-
|
|
2048
|
+
if (!(approvalNew.current_step === consts_1.Step.draft || approvalNew.current_step === consts_1.Step.submitter_revisions)) return [3, 20];
|
|
2049
|
+
scene = approvalNew.current_step === consts_1.Step.draft ? 'submit' : 'resubmit';
|
|
2050
|
+
plsIdsBefore = _.uniq(_.compact(approvalNew.pls_km_files || []));
|
|
2051
|
+
uploadedFileIds = _.compact(_.map(approvalNew.pls_upload_files || [], function (item) {
|
|
2052
|
+
var fileItem = item;
|
|
2053
|
+
return typeof fileItem === 'object' && fileItem !== null
|
|
2054
|
+
? (fileItem.value || fileItem._id)
|
|
2055
|
+
: fileItem;
|
|
2056
|
+
}));
|
|
2057
|
+
if (!(uploadedFileIds.length > 0)) return [3, 18];
|
|
2058
|
+
return [4, (0, pls_1.createApplicationPLSFiles)(ctx, uploadedFileIds, approvalNew)];
|
|
1942
2059
|
case 15:
|
|
2060
|
+
uploaded = _b.sent();
|
|
2061
|
+
plsIds = _.uniq(_.compact(plsIdsBefore.concat(uploaded.records.map(function (item) { return item.id; }))));
|
|
2062
|
+
return [4, ctx.getObject('pepsico_material_approval').directUpdate(approvalNew._id, {
|
|
2063
|
+
pls_km_files: plsIds,
|
|
2064
|
+
pls_upload_files: [],
|
|
2065
|
+
modified: new Date(),
|
|
2066
|
+
modified_by: user.userId
|
|
2067
|
+
})];
|
|
2068
|
+
case 16:
|
|
2069
|
+
_b.sent();
|
|
2070
|
+
return [4, ctx.getObject('pepsico_material_approval').findOne(recordId)];
|
|
2071
|
+
case 17:
|
|
2072
|
+
approvalNew = _b.sent();
|
|
2073
|
+
_b.label = 18;
|
|
2074
|
+
case 18:
|
|
2075
|
+
if (requiresPLS(approvalNew) && _.isEmpty(approvalNew.pls_km_files)) {
|
|
2076
|
+
throw new Error('请关联PLS知识库或上传本地PLS文件');
|
|
2077
|
+
}
|
|
2078
|
+
plsIdsAfter = _.uniq(_.compact(approvalNew.pls_km_files || []));
|
|
2079
|
+
hasExisting = plsIdsBefore.length > 0;
|
|
2080
|
+
hasUploaded = uploadedFileIds.length > 0;
|
|
2081
|
+
return [4, (0, pls_1.logPLSChange)(ctx, {
|
|
2082
|
+
approval: approvalNew,
|
|
2083
|
+
scene: scene,
|
|
2084
|
+
beforeIds: plsIdsBefore,
|
|
2085
|
+
afterIds: plsIdsAfter,
|
|
2086
|
+
source: hasExisting && hasUploaded ? 'mixed' : (hasUploaded ? 'upload' : 'existing')
|
|
2087
|
+
})];
|
|
2088
|
+
case 19:
|
|
2089
|
+
_b.sent();
|
|
2090
|
+
_b.label = 20;
|
|
2091
|
+
case 20:
|
|
2092
|
+
if (!(approvalNew.current_step === consts_1.Step.draft)) return [3, 28];
|
|
2093
|
+
return [4, getApproveType(ctx, approvalNew)];
|
|
2094
|
+
case 21:
|
|
1943
2095
|
approvalType = _b.sent();
|
|
2096
|
+
if (approvalType === consts_1.Step.departmental_review && (0, exports.needsQcReview)(approvalNew) && _.isEmpty(approvalNew.qc_reviewer)) {
|
|
2097
|
+
throw new Error('QC审核人缺失, 请确认审批单对应审核人员信息');
|
|
2098
|
+
}
|
|
1944
2099
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(approvalNew._id, {
|
|
1945
2100
|
approval_type: approvalType
|
|
1946
2101
|
})];
|
|
1947
|
-
case
|
|
2102
|
+
case 22:
|
|
1948
2103
|
_b.sent();
|
|
1949
|
-
if (!false) return [3,
|
|
2104
|
+
if (!false) return [3, 25];
|
|
1950
2105
|
return [4, (0, material_1.deleteBulkDocOneDriveShareLink)(ctx, recordId)];
|
|
1951
|
-
case
|
|
2106
|
+
case 23:
|
|
1952
2107
|
allTrue1 = _b.sent();
|
|
1953
2108
|
if (allTrue1 != true) {
|
|
1954
2109
|
return [2, {
|
|
@@ -1958,7 +2113,7 @@ var submitContent = function (ctx, recordId, currentStepApprovalStatus, skip) {
|
|
|
1958
2113
|
}];
|
|
1959
2114
|
}
|
|
1960
2115
|
return [4, (0, material_1.downloadBulkFromOneDriveDoc)(ctx, recordId)];
|
|
1961
|
-
case
|
|
2116
|
+
case 24:
|
|
1962
2117
|
allTrue = _b.sent();
|
|
1963
2118
|
if (allTrue != true) {
|
|
1964
2119
|
return [2, {
|
|
@@ -1967,29 +2122,29 @@ var submitContent = function (ctx, recordId, currentStepApprovalStatus, skip) {
|
|
|
1967
2122
|
data: {}
|
|
1968
2123
|
}];
|
|
1969
2124
|
}
|
|
1970
|
-
_b.label =
|
|
1971
|
-
case
|
|
1972
|
-
if (!(approvalNew && approvalNew.material_owner)) return [3,
|
|
2125
|
+
_b.label = 25;
|
|
2126
|
+
case 25:
|
|
2127
|
+
if (!(approvalNew && approvalNew.material_owner)) return [3, 28];
|
|
1973
2128
|
return [4, ctx.getObject('space_users').find({
|
|
1974
2129
|
filters: [['email', '=', approvalNew.material_owner], ['space', '=', approvalNew.space]]
|
|
1975
2130
|
})];
|
|
1976
|
-
case
|
|
2131
|
+
case 26:
|
|
1977
2132
|
spaceUsers = _b.sent();
|
|
1978
|
-
if (!(spaceUsers && spaceUsers.length > 0)) return [3,
|
|
2133
|
+
if (!(spaceUsers && spaceUsers.length > 0)) return [3, 28];
|
|
1979
2134
|
owner = spaceUsers[0];
|
|
1980
2135
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(recordId, {
|
|
1981
2136
|
material_owner_id: owner.user
|
|
1982
2137
|
})];
|
|
1983
|
-
case
|
|
2138
|
+
case 27:
|
|
1984
2139
|
_b.sent();
|
|
1985
|
-
_b.label =
|
|
1986
|
-
case
|
|
2140
|
+
_b.label = 28;
|
|
2141
|
+
case 28:
|
|
1987
2142
|
console.log("[submitContent] \u6B65\u9AA4\u63D0\u4EA4\uFF0C\u53C2\u6570\u4E3A \u5BA1\u6279\u5355: ".concat(recordId, " \u5F53\u524D\u6B65\u9AA4: ").concat(approvalNew.current_step, " \u5BA1\u6279\u7ED3\u679C\u4E3A: ").concat(currentStepApprovalStatus));
|
|
1988
|
-
if (!(approvalNew.current_step === consts_1.Step.ai_review && currentStepApprovalStatus === consts_1.ApprovalStatus.approved)) return [3,
|
|
2143
|
+
if (!(approvalNew.current_step === consts_1.Step.ai_review && currentStepApprovalStatus === consts_1.ApprovalStatus.approved)) return [3, 38];
|
|
1989
2144
|
return [4, (0, material_1.getOneDriveMaterials)(ctx, recordId)];
|
|
1990
|
-
case
|
|
2145
|
+
case 29:
|
|
1991
2146
|
materials = _b.sent();
|
|
1992
|
-
if (!(approvalNew.materials_xml_to_word_status != 'completed')) return [3,
|
|
2147
|
+
if (!(approvalNew.materials_xml_to_word_status != 'completed')) return [3, 32];
|
|
1993
2148
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(approvalNew._id, {
|
|
1994
2149
|
materials_download_from_onedrive_failed_count: 0,
|
|
1995
2150
|
materials_download_from_onedrive_status: 'not_started',
|
|
@@ -1998,56 +2153,56 @@ var submitContent = function (ctx, recordId, currentStepApprovalStatus, skip) {
|
|
|
1998
2153
|
materials_uploaded_to_onedrive_failed_count: 0,
|
|
1999
2154
|
materials_uploaded_to_onedrive_status: 'not_started'
|
|
2000
2155
|
})];
|
|
2001
|
-
case
|
|
2156
|
+
case 30:
|
|
2002
2157
|
_b.sent();
|
|
2003
2158
|
return [4, ctx.getObject('pepsico_material_approval').findOne(recordId)];
|
|
2004
|
-
case
|
|
2159
|
+
case 31:
|
|
2005
2160
|
approvalNew = _b.sent();
|
|
2006
|
-
_b.label =
|
|
2007
|
-
case
|
|
2008
|
-
if (!(approvalNew.materials_uploaded_to_onedrive_status != 'completed')) return [3,
|
|
2161
|
+
_b.label = 32;
|
|
2162
|
+
case 32:
|
|
2163
|
+
if (!(approvalNew.materials_uploaded_to_onedrive_status != 'completed')) return [3, 38];
|
|
2009
2164
|
console.log('materials:', materials.length);
|
|
2010
|
-
if (!(materials.length === 0)) return [3,
|
|
2165
|
+
if (!(materials.length === 0)) return [3, 34];
|
|
2011
2166
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(approvalNew._id, {
|
|
2012
2167
|
materials_uploaded_to_onedrive_status: 'no_materials',
|
|
2013
2168
|
materials_xml_to_word_status: 'no_materials'
|
|
2014
2169
|
})];
|
|
2015
|
-
case
|
|
2170
|
+
case 33:
|
|
2016
2171
|
_b.sent();
|
|
2017
|
-
return [3,
|
|
2018
|
-
case
|
|
2172
|
+
return [3, 38];
|
|
2173
|
+
case 34:
|
|
2019
2174
|
pendingXmlToWordMaterials = materials.filter(function (material) {
|
|
2020
2175
|
return material.xml_converted_word !== true;
|
|
2021
2176
|
});
|
|
2022
2177
|
console.log('pendingXmlToWordMaterials:', pendingXmlToWordMaterials.length);
|
|
2023
|
-
if (!(pendingXmlToWordMaterials.length > 0 && approvalNew.materials_xml_to_word_status != 'no_materials')) return [3,
|
|
2178
|
+
if (!(pendingXmlToWordMaterials.length > 0 && approvalNew.materials_xml_to_word_status != 'no_materials')) return [3, 36];
|
|
2024
2179
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(approvalNew._id, {
|
|
2025
2180
|
materials_xml_to_word_status: 'pending'
|
|
2026
2181
|
})];
|
|
2027
|
-
case
|
|
2182
|
+
case 35:
|
|
2028
2183
|
_b.sent();
|
|
2029
2184
|
return [2];
|
|
2030
|
-
case
|
|
2185
|
+
case 36:
|
|
2031
2186
|
pendingUploadMaterials = materials.filter(function (material) {
|
|
2032
2187
|
return material.uploaded_to_onedrive !== true;
|
|
2033
2188
|
});
|
|
2034
2189
|
console.log('pendingUploadMaterials:', pendingUploadMaterials.length);
|
|
2035
|
-
if (!(pendingUploadMaterials.length > 0)) return [3,
|
|
2190
|
+
if (!(pendingUploadMaterials.length > 0)) return [3, 38];
|
|
2036
2191
|
return [4, ctx.getObject('pepsico_material_approval').directUpdate(approvalNew._id, {
|
|
2037
2192
|
materials_uploaded_to_onedrive_status: 'pending'
|
|
2038
2193
|
})];
|
|
2039
|
-
case
|
|
2194
|
+
case 37:
|
|
2040
2195
|
_b.sent();
|
|
2041
2196
|
return [2];
|
|
2042
|
-
case
|
|
2197
|
+
case 38:
|
|
2043
2198
|
console.time('updateUserStepStatus: ' + recordId);
|
|
2044
2199
|
return [4, updateUserStepStatus(ctx, approvalNew, { approvalStatus: currentStepApprovalStatus, approveField: '' })];
|
|
2045
|
-
case
|
|
2200
|
+
case 39:
|
|
2046
2201
|
_b.sent();
|
|
2047
2202
|
console.timeEnd('updateUserStepStatus: ' + recordId);
|
|
2048
2203
|
console.time('advanceApproval: ' + recordId);
|
|
2049
2204
|
return [4, (0, exports.advanceApproval)(ctx, recordId, currentStepApprovalStatus)];
|
|
2050
|
-
case
|
|
2205
|
+
case 40:
|
|
2051
2206
|
_b.sent();
|
|
2052
2207
|
console.timeEnd('advanceApproval: ' + recordId);
|
|
2053
2208
|
return [2];
|
|
@@ -2068,12 +2223,14 @@ var TYPE_TO_REVIEWER_FIELD = (_a = {},
|
|
|
2068
2223
|
_a[consts_1.ProcessApprovalType.Legal] = 'legal_reviewer',
|
|
2069
2224
|
_a[consts_1.ProcessApprovalType.SRA] = 'sra_reviewer',
|
|
2070
2225
|
_a[consts_1.ProcessApprovalType.CA] = 'ca_reviewer',
|
|
2226
|
+
_a[consts_1.ProcessApprovalType.QC] = 'qc_reviewer',
|
|
2071
2227
|
_a[consts_1.ProcessApprovalType.guding] = 'reviewer',
|
|
2072
2228
|
_a[consts_1.ProcessApprovalType.Kids] = 'kids_reviewer',
|
|
2073
2229
|
_a[consts_1.ProcessApprovalType.PreNS] = 'pre_ns_reviewer',
|
|
2074
2230
|
_a[consts_1.ProcessApprovalType.PreLegal] = 'pre_legal_reviewer',
|
|
2075
2231
|
_a[consts_1.ProcessApprovalType.PreSRA] = 'pre_sra_reviewer',
|
|
2076
2232
|
_a[consts_1.ProcessApprovalType.PreCA] = 'pre_ca_reviewer',
|
|
2233
|
+
_a[consts_1.ProcessApprovalType.PreQC] = 'pre_qc_reviewer',
|
|
2077
2234
|
_a[consts_1.ProcessApprovalType.Preguding] = 'pre_reviewer',
|
|
2078
2235
|
_a);
|
|
2079
2236
|
var TYPE_TO_HANDLER_FIELD = (_b = {},
|
|
@@ -2081,12 +2238,14 @@ var TYPE_TO_HANDLER_FIELD = (_b = {},
|
|
|
2081
2238
|
_b[consts_1.ProcessApprovalType.Legal] = 'handler_legal',
|
|
2082
2239
|
_b[consts_1.ProcessApprovalType.SRA] = 'handler_sra',
|
|
2083
2240
|
_b[consts_1.ProcessApprovalType.CA] = 'handler_ca',
|
|
2241
|
+
_b[consts_1.ProcessApprovalType.QC] = 'handler_qc',
|
|
2084
2242
|
_b[consts_1.ProcessApprovalType.guding] = 'handler_guding',
|
|
2085
2243
|
_b[consts_1.ProcessApprovalType.Kids] = 'handler_kids',
|
|
2086
2244
|
_b[consts_1.ProcessApprovalType.PreNS] = 'handler_prens',
|
|
2087
2245
|
_b[consts_1.ProcessApprovalType.PreLegal] = 'handler_prelegal',
|
|
2088
2246
|
_b[consts_1.ProcessApprovalType.PreSRA] = 'handler_presra',
|
|
2089
2247
|
_b[consts_1.ProcessApprovalType.PreCA] = 'handler_preca',
|
|
2248
|
+
_b[consts_1.ProcessApprovalType.PreQC] = 'handler_preqc',
|
|
2090
2249
|
_b[consts_1.ProcessApprovalType.Preguding] = 'handler_preguding',
|
|
2091
2250
|
_b);
|
|
2092
2251
|
var TYPE_TO_STATUS_FIELD = (_c = {},
|
|
@@ -2094,21 +2253,25 @@ var TYPE_TO_STATUS_FIELD = (_c = {},
|
|
|
2094
2253
|
_c[consts_1.ProcessApprovalType.Legal] = 'legal_approval_status',
|
|
2095
2254
|
_c[consts_1.ProcessApprovalType.SRA] = 'sra_approval_status',
|
|
2096
2255
|
_c[consts_1.ProcessApprovalType.CA] = 'ca_approval_status',
|
|
2256
|
+
_c[consts_1.ProcessApprovalType.QC] = 'qc_approval_status',
|
|
2097
2257
|
_c[consts_1.ProcessApprovalType.guding] = 'approval_status',
|
|
2098
2258
|
_c[consts_1.ProcessApprovalType.Kids] = 'kids_approval_status',
|
|
2099
2259
|
_c[consts_1.ProcessApprovalType.PreNS] = 'pre_ns_approval_status',
|
|
2100
2260
|
_c[consts_1.ProcessApprovalType.PreLegal] = 'pre_legal_approval_status',
|
|
2101
2261
|
_c[consts_1.ProcessApprovalType.PreSRA] = 'pre_sra_approval_status',
|
|
2102
2262
|
_c[consts_1.ProcessApprovalType.PreCA] = 'pre_ca_approval_status',
|
|
2263
|
+
_c[consts_1.ProcessApprovalType.PreQC] = 'pre_qc_approval_status',
|
|
2103
2264
|
_c[consts_1.ProcessApprovalType.Preguding] = 'pre_approval_status',
|
|
2104
2265
|
_c);
|
|
2105
2266
|
var POSTPONE_REVIEW_TYPE_PRIORITY = [
|
|
2106
2267
|
consts_1.ProcessApprovalType.CA,
|
|
2268
|
+
consts_1.ProcessApprovalType.QC,
|
|
2107
2269
|
consts_1.ProcessApprovalType.SRA,
|
|
2108
2270
|
consts_1.ProcessApprovalType.NS,
|
|
2109
2271
|
consts_1.ProcessApprovalType.Legal,
|
|
2110
2272
|
consts_1.ProcessApprovalType.guding,
|
|
2111
2273
|
consts_1.ProcessApprovalType.PreCA,
|
|
2274
|
+
consts_1.ProcessApprovalType.PreQC,
|
|
2112
2275
|
consts_1.ProcessApprovalType.PreSRA,
|
|
2113
2276
|
consts_1.ProcessApprovalType.PreNS,
|
|
2114
2277
|
consts_1.ProcessApprovalType.PreLegal,
|
|
@@ -2155,12 +2318,16 @@ var getPostponeReviewDepartmentType = function (record, userProcessRecords, user
|
|
|
2155
2318
|
exports.getPostponeReviewDepartmentType = getPostponeReviewDepartmentType;
|
|
2156
2319
|
var postponeReview = function (ctx, recordId, data) {
|
|
2157
2320
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
2158
|
-
var user, record, reviewSteps, progessRecords, userProcessRecords, departmentType, statusField, reviewerField, handlerField, deptUserIds, now, unactivatedMarkers, latestMarker, _a, _b, marker, e_13_1, currentMarkerUsers, newMarkerUsers;
|
|
2321
|
+
var user, postponeReason, record, reviewSteps, progessRecords, userProcessRecords, departmentType, statusField, reviewerField, handlerField, deptUserIds, now, unactivatedMarkers, latestMarker, _a, _b, marker, e_13_1, currentMarkerUsers, newMarkerUsers;
|
|
2159
2322
|
var e_13, _c;
|
|
2160
2323
|
return tslib_1.__generator(this, function (_d) {
|
|
2161
2324
|
switch (_d.label) {
|
|
2162
2325
|
case 0:
|
|
2163
2326
|
user = ctx.meta.user;
|
|
2327
|
+
postponeReason = _.trim(data && data.postpone_reason || '');
|
|
2328
|
+
if (!postponeReason) {
|
|
2329
|
+
throw new Error('请填写延后原因');
|
|
2330
|
+
}
|
|
2164
2331
|
return [4, ctx.getObject('pepsico_material_approval').findOne(recordId)];
|
|
2165
2332
|
case 1:
|
|
2166
2333
|
record = _d.sent();
|
|
@@ -2236,7 +2403,7 @@ var postponeReview = function (ctx, recordId, data) {
|
|
|
2236
2403
|
latestMarker = unactivatedMarkers[0];
|
|
2237
2404
|
return [4, ctx.getObject('pepsico_review_postpone').directUpdate(latestMarker._id, {
|
|
2238
2405
|
department_type: departmentType,
|
|
2239
|
-
postpone_reason:
|
|
2406
|
+
postpone_reason: postponeReason,
|
|
2240
2407
|
postpone_date: now,
|
|
2241
2408
|
postponed_user_ids: deptUserIds.join(','),
|
|
2242
2409
|
notification_sent: false,
|
|
@@ -2282,7 +2449,7 @@ var postponeReview = function (ctx, recordId, data) {
|
|
|
2282
2449
|
pepsico_material_approval: recordId,
|
|
2283
2450
|
department_type: departmentType,
|
|
2284
2451
|
postpone_by: user.userId,
|
|
2285
|
-
postpone_reason:
|
|
2452
|
+
postpone_reason: postponeReason,
|
|
2286
2453
|
postpone_date: now,
|
|
2287
2454
|
is_marker: true,
|
|
2288
2455
|
notification_sent: false,
|