@stssocialst-stp/fe-payroll 0.3.4 → 0.3.6
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.es.js +166 -15
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +157 -6
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -762,7 +762,12 @@ var messages_en = {
|
|
|
762
762
|
"payroll.bistp.status.pending": "Sent to Bank",
|
|
763
763
|
"payroll.bistp.status.skippedNib": "No NIB",
|
|
764
764
|
"payroll.bistp.status.sendFailed": "Send Failed",
|
|
765
|
+
"payroll.bistp.status.enviados": "Sent to BISTP",
|
|
765
766
|
"payroll.bistp.progress": "BISTP Progress",
|
|
767
|
+
"payroll.async.generating": "Generating beneficiaries in background...",
|
|
768
|
+
"payroll.async.createdSoFar": "{benefitCount} created so far",
|
|
769
|
+
"payroll.async.note": "This process may take a few minutes. You can close this page - the process continues in the background.",
|
|
770
|
+
"payroll.async.timedOut": "The background generation process took too long. Please refresh this page to check the current status.",
|
|
766
771
|
"payroll.route.beneficiariesManagement": "Beneficiary Management",
|
|
767
772
|
"payroll.beneficiaries.management.title": "Beneficiary Management",
|
|
768
773
|
"payroll.beneficiaries.management.noPermission": "You do not have permission to manage beneficiaries.",
|
|
@@ -932,10 +937,8 @@ function makePaymentForPayroll(payroll, clientMutationLabel) {
|
|
|
932
937
|
return PERFORM_MUTATION(MUTATION_SERVICE.PAYROLL.MAKE_PAYMENT, payrollUuids, ACTION_TYPE.MAKE_PAYMENT_PAYROLL, clientMutationLabel);
|
|
933
938
|
}
|
|
934
939
|
function fetchBistpSummary(payrollId) {
|
|
935
|
-
var query = "\n
|
|
936
|
-
return feCore.graphql(query, ACTION_TYPE.GET_BISTP_SUMMARY
|
|
937
|
-
payrollId: payrollId
|
|
938
|
-
});
|
|
940
|
+
var query = "\n {\n total: benefitConsumptionByPayroll(payrollUuid: \"".concat(payrollId, "\", first: 0) { totalCount }\n pendentes: benefitConsumptionByPayroll(payrollUuid: \"").concat(payrollId, "\", status: ACCEPTED, first: 0) { totalCount }\n enviados: benefitConsumptionByPayroll(payrollUuid: \"").concat(payrollId, "\", status: APPROVE_FOR_PAYMENT, first: 0) { totalCount }\n confirmados: benefitConsumptionByPayroll(payrollUuid: \"").concat(payrollId, "\", status: RECONCILED, first: 0) { totalCount }\n rejeitados: benefitConsumptionByPayroll(payrollUuid: \"").concat(payrollId, "\", status: REJECTED, first: 0) { totalCount }\n }\n ");
|
|
941
|
+
return feCore.graphql(query, ACTION_TYPE.GET_BISTP_SUMMARY);
|
|
939
942
|
}
|
|
940
943
|
|
|
941
944
|
var pageTitle = function pageTitle(item) {
|
|
@@ -3213,6 +3216,99 @@ var mapDispatchToProps$b = function mapDispatchToProps(dispatch) {
|
|
|
3213
3216
|
};
|
|
3214
3217
|
var PaymentApproveForPaymentSummary = reactRedux.connect(mapStateToProps$b, mapDispatchToProps$b)(PaymentApproveForPaymentDialog);
|
|
3215
3218
|
|
|
3219
|
+
var POLL_INTERVAL_MS = 5000;
|
|
3220
|
+
var TIMEOUT_MS = 600000;
|
|
3221
|
+
var COUNT_QUERY = function COUNT_QUERY(payrollUuid) {
|
|
3222
|
+
return "\n {\n benefitConsumptionByPayroll(payrollUuid: \"".concat(payrollUuid, "\", first: 0, isDeleted: false) {\n totalCount\n }\n }\n");
|
|
3223
|
+
};
|
|
3224
|
+
function useAsyncPayrollProgress(_ref) {
|
|
3225
|
+
var payrollUuid = _ref.payrollUuid,
|
|
3226
|
+
payrollStatus = _ref.payrollStatus;
|
|
3227
|
+
var dispatch = reactRedux.useDispatch();
|
|
3228
|
+
var _useState = React.useState(0),
|
|
3229
|
+
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
3230
|
+
benefitCount = _useState2[0],
|
|
3231
|
+
setBenefitCount = _useState2[1];
|
|
3232
|
+
var _useState3 = React.useState(false),
|
|
3233
|
+
_useState4 = _slicedToArray__default["default"](_useState3, 2),
|
|
3234
|
+
isGenerating = _useState4[0],
|
|
3235
|
+
setIsGenerating = _useState4[1];
|
|
3236
|
+
var _useState5 = React.useState(false),
|
|
3237
|
+
_useState6 = _slicedToArray__default["default"](_useState5, 2),
|
|
3238
|
+
timedOut = _useState6[0],
|
|
3239
|
+
setTimedOut = _useState6[1];
|
|
3240
|
+
var pollRef = React.useRef(null);
|
|
3241
|
+
var startTimeRef = React.useRef(null);
|
|
3242
|
+
var prevCountRef = React.useRef(0);
|
|
3243
|
+
var stableCountRounds = React.useRef(0);
|
|
3244
|
+
var stopPolling = React.useCallback(function () {
|
|
3245
|
+
if (pollRef.current) {
|
|
3246
|
+
clearInterval(pollRef.current);
|
|
3247
|
+
pollRef.current = null;
|
|
3248
|
+
}
|
|
3249
|
+
}, []);
|
|
3250
|
+
var fetchCount = React.useCallback(function () {
|
|
3251
|
+
if (!payrollUuid) return;
|
|
3252
|
+
dispatch(feCore.graphql(COUNT_QUERY(payrollUuid), 'POLL_BENEFIT_COUNT')).then(function (response) {
|
|
3253
|
+
var _response$payload$dat, _response$payload;
|
|
3254
|
+
var count = (_response$payload$dat = response === null || response === void 0 || (_response$payload = response.payload) === null || _response$payload === void 0 || (_response$payload = _response$payload.data) === null || _response$payload === void 0 || (_response$payload = _response$payload.benefitConsumptionByPayroll) === null || _response$payload === void 0 ? void 0 : _response$payload.totalCount) !== null && _response$payload$dat !== void 0 ? _response$payload$dat : 0;
|
|
3255
|
+
if (count === 0) {
|
|
3256
|
+
setBenefitCount(count);
|
|
3257
|
+
setIsGenerating(true);
|
|
3258
|
+
stableCountRounds.current = 0;
|
|
3259
|
+
prevCountRef.current = count;
|
|
3260
|
+
return;
|
|
3261
|
+
}
|
|
3262
|
+
setBenefitCount(count);
|
|
3263
|
+
if (count === prevCountRef.current) {
|
|
3264
|
+
stableCountRounds.current += 1;
|
|
3265
|
+
} else {
|
|
3266
|
+
stableCountRounds.current = 0;
|
|
3267
|
+
}
|
|
3268
|
+
prevCountRef.current = count;
|
|
3269
|
+
if (stableCountRounds.current >= 2) {
|
|
3270
|
+
setIsGenerating(false);
|
|
3271
|
+
stopPolling();
|
|
3272
|
+
}
|
|
3273
|
+
})["catch"](function () {
|
|
3274
|
+
setBenefitCount(function (c) {
|
|
3275
|
+
return Math.max(c, 0);
|
|
3276
|
+
});
|
|
3277
|
+
});
|
|
3278
|
+
}, [payrollUuid, dispatch, stopPolling]);
|
|
3279
|
+
React.useEffect(function () {
|
|
3280
|
+
var shouldPoll = payrollUuid && payrollStatus === 'PENDING_APPROVAL';
|
|
3281
|
+
if (shouldPoll && !pollRef.current) {
|
|
3282
|
+
setTimedOut(false);
|
|
3283
|
+
startTimeRef.current = Date.now();
|
|
3284
|
+
stableCountRounds.current = 0;
|
|
3285
|
+
prevCountRef.current = 0;
|
|
3286
|
+
fetchCount();
|
|
3287
|
+
pollRef.current = setInterval(function () {
|
|
3288
|
+
if (Date.now() - startTimeRef.current >= TIMEOUT_MS) {
|
|
3289
|
+
setIsGenerating(false);
|
|
3290
|
+
setTimedOut(true);
|
|
3291
|
+
stopPolling();
|
|
3292
|
+
return;
|
|
3293
|
+
}
|
|
3294
|
+
fetchCount();
|
|
3295
|
+
}, POLL_INTERVAL_MS);
|
|
3296
|
+
}
|
|
3297
|
+
if (!shouldPoll && pollRef.current) {
|
|
3298
|
+
setIsGenerating(false);
|
|
3299
|
+
stopPolling();
|
|
3300
|
+
}
|
|
3301
|
+
return function () {
|
|
3302
|
+
return stopPolling();
|
|
3303
|
+
};
|
|
3304
|
+
}, [payrollUuid, payrollStatus, fetchCount, stopPolling]);
|
|
3305
|
+
return {
|
|
3306
|
+
isGenerating: isGenerating,
|
|
3307
|
+
benefitCount: benefitCount,
|
|
3308
|
+
timedOut: timedOut
|
|
3309
|
+
};
|
|
3310
|
+
}
|
|
3311
|
+
|
|
3216
3312
|
var useStyles$b = styles$7.makeStyles(function (theme) {
|
|
3217
3313
|
return {
|
|
3218
3314
|
paper: theme.paper.paper,
|
|
@@ -3259,12 +3355,64 @@ function PayrollTab(_ref) {
|
|
|
3259
3355
|
var modulesManager = feCore.useModulesManager();
|
|
3260
3356
|
var _useTranslations = feCore.useTranslations(MODULE_NAME, modulesManager),
|
|
3261
3357
|
formatMessage = _useTranslations.formatMessage;
|
|
3358
|
+
var _useAsyncPayrollProgr = useAsyncPayrollProgress({
|
|
3359
|
+
payrollUuid: payrollUuid,
|
|
3360
|
+
payrollStatus: payroll === null || payroll === void 0 ? void 0 : payroll.status
|
|
3361
|
+
}),
|
|
3362
|
+
isGenerating = _useAsyncPayrollProgr.isGenerating,
|
|
3363
|
+
benefitCount = _useAsyncPayrollProgr.benefitCount,
|
|
3364
|
+
timedOut = _useAsyncPayrollProgr.timedOut;
|
|
3365
|
+
var _useState3 = React.useState(false),
|
|
3366
|
+
_useState4 = _slicedToArray__default["default"](_useState3, 2),
|
|
3367
|
+
generationComplete = _useState4[0],
|
|
3368
|
+
setGenerationComplete = _useState4[1];
|
|
3369
|
+
var _useState5 = React.useState(0),
|
|
3370
|
+
_useState6 = _slicedToArray__default["default"](_useState5, 2),
|
|
3371
|
+
refreshBenefitsKey = _useState6[0],
|
|
3372
|
+
setRefreshBenefitsKey = _useState6[1];
|
|
3373
|
+
React.useEffect(function () {
|
|
3374
|
+
if (!isGenerating && benefitCount > 0 && !generationComplete) {
|
|
3375
|
+
setGenerationComplete(true);
|
|
3376
|
+
setRefreshBenefitsKey(function (k) {
|
|
3377
|
+
return k + 1;
|
|
3378
|
+
});
|
|
3379
|
+
}
|
|
3380
|
+
}, [isGenerating, benefitCount, generationComplete]);
|
|
3262
3381
|
var downloadPayrollData = function downloadPayrollData(payrollUuid, payrollName) {
|
|
3263
3382
|
downloadPayroll(payrollUuid, payrollName);
|
|
3264
3383
|
};
|
|
3265
3384
|
return /*#__PURE__*/React__default["default"].createElement(core.Paper, {
|
|
3266
3385
|
className: classes.paper
|
|
3386
|
+
}, (isGenerating || timedOut) && payrollUuid && !isPayrollFromFailedInvoices && /*#__PURE__*/React__default["default"].createElement(core.Grid, {
|
|
3387
|
+
container: true,
|
|
3388
|
+
spacing: 2,
|
|
3389
|
+
style: {
|
|
3390
|
+
padding: '16px'
|
|
3391
|
+
}
|
|
3267
3392
|
}, /*#__PURE__*/React__default["default"].createElement(core.Grid, {
|
|
3393
|
+
item: true,
|
|
3394
|
+
xs: 12
|
|
3395
|
+
}, /*#__PURE__*/React__default["default"].createElement(core.Typography, {
|
|
3396
|
+
variant: "body1"
|
|
3397
|
+
}, timedOut ? formatMessage('payroll.async.timedOut') : formatMessage('payroll.async.generating')), !timedOut && /*#__PURE__*/React__default["default"].createElement(core.LinearProgress, {
|
|
3398
|
+
variant: "indeterminate",
|
|
3399
|
+
style: {
|
|
3400
|
+
marginTop: '8px'
|
|
3401
|
+
}
|
|
3402
|
+
}), /*#__PURE__*/React__default["default"].createElement(core.Typography, {
|
|
3403
|
+
variant: "caption",
|
|
3404
|
+
style: {
|
|
3405
|
+
display: 'block',
|
|
3406
|
+
marginTop: '4px'
|
|
3407
|
+
}
|
|
3408
|
+
}, !timedOut && formatMessage('payroll.async.createdSoFar', {
|
|
3409
|
+
benefitCount: benefitCount
|
|
3410
|
+
})), /*#__PURE__*/React__default["default"].createElement(core.Typography, {
|
|
3411
|
+
variant: "caption",
|
|
3412
|
+
style: {
|
|
3413
|
+
display: 'block'
|
|
3414
|
+
}
|
|
3415
|
+
}, !timedOut && formatMessage('payroll.async.note')))), /*#__PURE__*/React__default["default"].createElement(core.Grid, {
|
|
3268
3416
|
container: true,
|
|
3269
3417
|
className: "".concat(classes.tableTitle, " ").concat(classes.tabs)
|
|
3270
3418
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
@@ -3315,7 +3463,8 @@ function PayrollTab(_ref) {
|
|
|
3315
3463
|
payrollUuid: payrollUuid,
|
|
3316
3464
|
isInTask: isInTask,
|
|
3317
3465
|
isPayrollFromFailedInvoices: isPayrollFromFailedInvoices,
|
|
3318
|
-
payroll: payroll
|
|
3466
|
+
payroll: payroll,
|
|
3467
|
+
refreshBenefitsKey: refreshBenefitsKey
|
|
3319
3468
|
}));
|
|
3320
3469
|
}
|
|
3321
3470
|
|
|
@@ -5708,13 +5857,15 @@ function BenefitConsumptionsTabPanel(_ref2) {
|
|
|
5708
5857
|
var value = _ref2.value,
|
|
5709
5858
|
rights = _ref2.rights,
|
|
5710
5859
|
payrollUuid = _ref2.payrollUuid,
|
|
5711
|
-
isPayrollFromFailedInvoices = _ref2.isPayrollFromFailedInvoices
|
|
5860
|
+
isPayrollFromFailedInvoices = _ref2.isPayrollFromFailedInvoices,
|
|
5861
|
+
refreshBenefitsKey = _ref2.refreshBenefitsKey;
|
|
5712
5862
|
return /*#__PURE__*/React__default["default"].createElement(feCore.PublishedComponent, {
|
|
5713
5863
|
pubRef: "policyHolder.TabPanel",
|
|
5714
5864
|
module: "payroll",
|
|
5715
5865
|
index: BENEFIT_CONSUMPTION_LIST_TAB_VALUE,
|
|
5716
5866
|
value: value
|
|
5717
5867
|
}, rights.includes(RIGHT_PAYROLL_SEARCH) && payrollUuid && /*#__PURE__*/React__default["default"].createElement(BenefitConsumptionSearcher$1, {
|
|
5868
|
+
key: refreshBenefitsKey,
|
|
5718
5869
|
rights: rights,
|
|
5719
5870
|
payrollUuid: payrollUuid,
|
|
5720
5871
|
isPayrollFromFailedInvoices: isPayrollFromFailedInvoices
|