@stssocialst-stp/fe-payroll 0.3.6 → 0.3.8
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 +407 -115
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +409 -117
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/constants.js","../src/utils/action-type.js","../src/reducer.js","../src/utils/advanced-filters-utils.js","../src/actions.js","../src/utils/string-utils.js","../src/pages/payment-point/PaymentPointHeadPanel.js","../src/pages/payment-point/PaymentPointPage.js","../src/components/payment-point/PaymentPointFilter.js","../src/components/payment-point/PaymentPointSearcher.js","../src/pages/payment-point/PaymentPointsPage.js","../src/components/payroll/AdvancedFiltersRowValue.js","../src/components/payroll/AdvancedFiltersDialog.js","../src/components/payroll/PayrollStatusPicker.js","../src/pickers/PaymentMethodPicker.js","../src/components/payroll/PayrollHeadPanel.js","../src/components/payroll/dialogs/PayrollPaymentDataUploadDialog.js","../src/components/payroll/BenefitConsumptionFilterModal.js","../src/components/payroll/dialogs/ErrorSummaryModal.js","../src/components/payroll/dialogs/AdditionalFieldsDialog.js","../src/components/PayrollBenefitPrintTemplate.js","../src/components/payroll/BenefitConsumptionSearcherModal.js","../src/utils/export.js","../src/components/payroll/dialogs/PaymentApproveForPaymentSummary.js","../src/hooks/useAsyncPayrollProgress.js","../src/components/payroll/PayrollTab.js","../src/pages/payroll/PayrollPage.js","../src/components/payroll/PayrollFilter.js","../src/components/payroll/PayrollSearcher.js","../src/pages/payroll/PayrollsPage.js","../src/components/payroll/PayrollPaymentFilesSearcher.js","../src/components/payroll/dialogs/PayrollReconciliationFilesDialog.js","../src/components/payroll/PayrollSearcherApproved.js","../src/pages/payroll/ApprovedPayrollsPage.js","../src/components/payroll/dialogs/PaymentReconciliationSummaryDialog.js","../src/components/payroll/PayrollSearcherReconciled.js","../src/pages/payroll/ReconciledPayrollsPage.js","../src/components/payment-point/PaymentPointPicker.js","../src/pickers/BenefitConsumptionStatusPicker.js","../src/components/payroll/BenefitConsumptionPayrollFilter.js","../src/components/payroll/BenefitConsumptionPayrollSearcher.js","../src/components/tasks/PayrollTasks.js","../src/components/tasks/PayrollReconciliationTasks.js","../src/components/payroll/BenefitConsumptionFilter.js","../src/components/PayrollPrintTemplate.js","../src/components/payroll/BenefitConsumptionSearcher.js","../src/components/payroll/BenefitConsumptionTabPanel.js","../src/components/tasks/PayrollRejectedTasks.js","../src/components/payroll/PayrollTaskTabPanel.js","../src/components/tasks/PayrollDeleteTasks.js","../src/components/payroll/PayrollPaymentFilesTab.js","../src/components/payroll/BistpPaymentStatusPanel.js","../src/components/payroll/dialogs/PayrollPendingPayrollSummary.js","../src/components/payroll/PayrollSearcherPending.js","../src/pages/payroll/PendingPayrollsPage.js","../src/hooks/useBeneficiarios.js","../src/pages/payroll/BeneficiaryManagementPage.js","../src/index.js"],"sourcesContent":["// TODO: Change to proper rights after BE implementation\nexport const RIGHT_PAYROLL_SEARCH = 202001;\nexport const RIGHT_PAYROLL_CREATE = 202002;\nexport const RIGHT_PAYROLL_DELETE = 202004;\n\nexport const PAYROLL_PAYMENT_POINT_ROUTE = 'payroll.route.paymentPoint';\nexport const PAYROLL_PAYROLL_ROUTE = 'payroll.route.payroll';\nexport const RIGHT_PAYMENT_POINT_SEARCH = 201001;\nexport const RIGHT_PAYMENT_POINT_CREATE = 201002;\nexport const RIGHT_PAYMENT_POINT_UPDATE = 201003;\nexport const RIGHT_PAYMENT_POINT_DELETE = 201004;\n\nexport const DEFAULT_DEBOUNCE_TIME = 500;\nexport const DEFAULT_PAGE_SIZE = 10;\nexport const CONTAINS_LOOKUP = 'Icontains';\nexport const ROWS_PER_PAGE_OPTIONS = [10, 20, 50, 100];\nexport const EMPTY_STRING = '';\n\nexport const MAX_LENGTH = {\n NAME: 50,\n};\n\nexport const MODULE_NAME = 'payroll';\n\nexport const BENEFIT_CONSUMPTION_LIST_TAB_VALUE = 'benefitConsumptionsTab';\nexport const BISTP_PAYMENT_STATUS_TAB_VALUE = 'bistpPaymentStatusTab';\nexport const PAYROLL_TASK_TAB_VALUE = 'payrollTaskTab';\nexport const PAYROLL_PAYMENT_FILES_TAB_VALUE = 'payrollPaymentFilesTab';\nexport const PAYROLL_TABS_LABEL_CONTRIBUTION_KEY = 'payroll.TabPanel.label';\nexport const PAYROLL_TABS_PANEL_CONTRIBUTION_KEY = 'payroll.TabPanel.panel';\n\nexport const RIGHT_BILL_SEARCH = 156101;\nexport const RIGHT_BILL_CREATE = 156102;\nexport const RIGHT_BILL_UPDATE = 156103;\nexport const RIGHT_BILL_DELETE = 156104;\n\nexport const INVOICE_BILL_ROUTE = 'bill.route.bill';\nexport const GET_SUBJECT_AND_THIRDPARTY_TYPE_PICKER_REF = 'bill.util.getSubjectAndThirdpartyTypePicker';\nexport const ENUM_PREFIX_LENGTH = 2;\n\nexport const STATUS = {\n DRAFT: '0',\n VALIDATED: '1',\n PAYED: '2',\n CANCELLED: '3',\n DELETED: '4',\n SUSPENDED: '5',\n};\n\nexport const CLEARED_STATE_FILTER = {\n field: '', filter: '', type: '', value: '',\n};\nexport const BENEFIT_PLAN = 'BenefitPlan';\nexport const INTEGER = 'integer';\nexport const STRING = 'string';\nexport const BOOLEAN = 'boolean';\nexport const DATE = 'date';\nexport const BOOL_OPTIONS = [\n { value: 'True', label: 'True' },\n { value: 'False', label: 'False' },\n];\n\nexport const PAYROLL_STATUS = {\n PENDING_APPROVAL: 'PENDING_APPROVAL',\n APPROVE_FOR_PAYMENT: 'APPROVE_FOR_PAYMENT',\n REJECTED: 'REJECTED',\n RECONCILIATED: 'RECONCILIATED',\n RECONCILED: 'RECONCILED',\n};\n\nexport const PAYROLL_STATUS_LIST = [\n PAYROLL_STATUS.PENDING_APPROVAL,\n PAYROLL_STATUS.APPROVE_FOR_PAYMENT,\n PAYROLL_STATUS.REJECTED,\n PAYROLL_STATUS.RECONCILIATED,\n PAYROLL_STATUS.RECONCILED,\n];\n\nexport const BENEFIT_CONSUMPTION_STATUS = {\n ACCEPTED: 'ACCEPTED',\n CREATED: 'CREATED',\n APPROVE_FOR_PAYMENT: 'APPROVE_FOR_PAYMENT',\n REJECTED: 'REJECTED',\n DUPLICATE: 'DUPLICATE',\n RECONCILED: 'RECONCILED',\n};\n\nexport const PAYROLL_PAYMENT_FILE_STATUS = {\n TRIGGERED: 'TRIGGERED',\n IN_PROGRESS: 'IN_PROGRESS',\n SUCCESS: 'SUCCESS',\n PARTIAL_SUCCESS: 'PARTIAL_SUCCESS',\n WAITING_FOR_VERIFICATION: 'WAITING_FOR_VERIFICATION',\n FAIL: 'FAIL',\n};\n\nexport const BENEFIT_CONSUMPTION_STATUS_LIST = [\n BENEFIT_CONSUMPTION_STATUS.ACCEPTED, BENEFIT_CONSUMPTION_STATUS.CREATED,\n BENEFIT_CONSUMPTION_STATUS.APPROVE_FOR_PAYMENT, BENEFIT_CONSUMPTION_STATUS.REJECTED,\n BENEFIT_CONSUMPTION_STATUS.DUPLICATE, BENEFIT_CONSUMPTION_STATUS.RECONCILED,\n];\n\nexport const PAYROLL_PAYMENT_FILE_STATUS_LIST = [\n PAYROLL_PAYMENT_FILE_STATUS.TRIGGERED, PAYROLL_PAYMENT_FILE_STATUS.IN_PROGRESS, PAYROLL_PAYMENT_FILE_STATUS.SUCCESS,\n PAYROLL_PAYMENT_FILE_STATUS.WAITING_FOR_VERIFICATION, PAYROLL_PAYMENT_FILE_STATUS.FAIL,\n];\n\nexport const BENEFIT_PLAN_CONTENT_TYPE_ID = 175;\n\nexport const PAYROLL_FROM_FAILED_INVOICES_URL_PARAM = 'createPayrollFromFailedInvoices=true';\n\nexport const PAYMENT_METHOD = {\n STRATEGY_OFFLINE_PAYMENT: 'StrategyOfflinePayment',\n STRATEGY_ONLINE_PAYMENT: 'StrategyOnlinePayment',\n STRATEGY_BISTP_PAYMENT: 'StrategyBistpPayment',\n};\n\nexport const BISTP_SUMMARY_STATUS = {\n RECONCILED: 'reconciled',\n REJECTED: 'rejected',\n PENDING: 'pending',\n SKIPPED_NIB: 'skippedNib',\n SEND_FAILED: 'sendFailed',\n};\n","export const REQUEST = (actionTypeName) => `${actionTypeName}_REQ`;\nexport const SUCCESS = (actionTypeName) => `${actionTypeName}_RESP`;\nexport const ERROR = (actionTypeName) => `${actionTypeName}_ERR`;\nexport const CLEAR = (actionTypeName) => `${actionTypeName}_CLEAR`;\nexport const VALID = (actionTypeName) => `${actionTypeName}_VALID`;\n","/* eslint-disable default-param-last */\n\nimport {\n dispatchMutationErr,\n dispatchMutationReq,\n dispatchMutationResp,\n formatGraphQLError,\n formatServerError,\n pageInfo,\n parseData,\n decodeId,\n} from '@stssocialst-stp/fe-core';\nimport {\n CLEAR, ERROR, REQUEST, SUCCESS,\n} from './utils/action-type';\n\nexport const ACTION_TYPE = {\n MUTATION: 'PAYROLL_MUTATION',\n CREATE_PAYMENT_POINT: 'PAYROLL_MUTATION_CREATE_PAYMENT_POINT',\n DELETE_PAYMENT_POINT: 'PAYROLL_MUTATION_DELETE_PAYMENT_POINT',\n UPDATE_PAYMENT_POINT: 'PAYROLL_MUTATION_UPDATE_PAYMENT_POINT',\n SEARCH_PAYMENT_POINTS: 'PAYROLL_PAYMENT_POINTS',\n CREATE_PAYROLL: 'PAYROLL_MUTATION_CREATE_PAYROLL',\n DELETE_PAYROLL: 'PAYROLL_MUTATION_DELETE_PAYROLL',\n SEARCH_PAYROLLS: 'PAYROLL_PAYROLLS',\n GET_PAYMENT_POINT: 'PAYROLL_PAYMENT_POINT',\n GET_PAYROLL: 'PAYROLL_GET_PAYROLL',\n GET_BENEFIT_CONSUMPTION: 'PAYROLL_BENEFIT_CONSUMPTION',\n GET_PAYROLL_BENEFIT_CONSUMPTION: 'PAYROLL_PAYROLL_BENEFIT_CONSUMPTION',\n GET_BENEFIT_ATTACHMENT: 'PAYROLL_BENEFIT_ATTACHMENT',\n GET_PAYMENT_METHODS: 'PAYROLL_PAYMENT_METHODS',\n CLOSE_PAYROLL: 'PAYROLL_MUTATION_CLOSE_PAYROLL',\n REJECT_PAYROLL: 'PAYROLL_MUTATION_REJECT_PAYROLL',\n MAKE_PAYMENT_PAYROLL: 'PAYROLL_MUTATION_MAKE_PAYMENT_PAYROLL',\n GET_PAYROLL_PAYMENT_FILES: 'GET_PAYROLL_PAYMENT_FILES',\n BENEFITS_SUMMARY: 'PAYROLL_BENEFITS_SUMMARY',\n GET_BISTP_SUMMARY: 'PAYROLL_BISTP_SUMMARY',\n DELETE_BENEFIT_CONSUMPTION: 'BENEFIT_CONSUMPTION_MUTATION_DELETE_BENEFIT_CONSUMPTION',\n};\n\nexport const MUTATION_SERVICE = {\n PAYMENT_POINT: {\n CREATE: 'createPaymentPoint',\n DELETE: 'deletePaymentPoint',\n UPDATE: 'updatePaymentPoint',\n },\n PAYROLL: {\n CREATE: 'createPayroll',\n DELETE: 'deletePayroll',\n CLOSE: 'closePayroll',\n REJECT: 'rejectPayroll',\n MAKE_PAYMENT: 'makePaymentForPayroll',\n },\n BENEFIT_CONSUMPTION: {\n DELETE: 'deleteBenefitConsumption',\n },\n};\n\nconst STORE_STATE = {\n submittingMutation: false,\n mutation: {},\n fetchingPaymentPoints: false,\n fetchedPaymentPoints: false,\n errorPaymentPoints: null,\n paymentPoints: [],\n paymentPointsPageInfo: {},\n paymentPointsTotalCount: 0,\n fetchingPaymentPoint: false,\n fetchedPaymentPoint: false,\n paymentPoint: {},\n errorPaymentPoint: null,\n\n fetchingPayrolls: false,\n fetchedPayrolls: false,\n errorPayrolls: null,\n payrolls: [],\n payrollsPageInfo: {},\n payrollsTotalCount: 0,\n\n fetchingPayroll: false,\n fetchedPayroll: false,\n payroll: {},\n errorPayroll: null,\n\n fetchingBenefitConsumptions: true,\n benefitConsumption: [],\n benefitConsumptionTotalCount: 0,\n fetchedBenefitConsumption: false,\n errorBenefitConsumption: null,\n benefitConsumptionsPageInfo: {},\n\n fetchingBenefitAttachments: false,\n benefitAttachments: [],\n benefitAttachmentsTotalCount: 0,\n fetchedBenefitAttachments: false,\n errorBenefitAttachments: null,\n benefitAttachmentsPageInfo: {},\n\n fetchingPaymentMethods: true,\n paymentMethods: [],\n fetchedPaymentMethods: false,\n errorPaymentMethods: null,\n\n fetchingPayrollFiles: false,\n fetchedPayrollFiles: false,\n errorPayrollFiles: null,\n payrollFiles: [],\n payrollFilesPageInfo: {},\n payrollFilesTotalCount: 0,\n\n fetchingPayrollBenefitConsumptions: true,\n payrollBenefitConsumption: [],\n payrollBenefitConsumptionTotalCount: 0,\n fetchedPayrollBenefitConsumption: false,\n errorPayrollBenefitConsumption: null,\n payrollBenefitConsumptionsPageInfo: {},\n\n benefitsSummary: [],\n benefitsSummaryError: null,\n fetchingBenefitsSummary: true,\n fetchedBenefitsSummary: false,\n fetchingBistpSummary: false,\n fetchedBistpSummary: false,\n bistpSummary: {},\n errorBistpSummary: null,\n};\n\nfunction reducer(\n state = STORE_STATE,\n action,\n) {\n switch (action.type) {\n case REQUEST(ACTION_TYPE.SEARCH_PAYMENT_POINTS):\n return {\n ...state,\n fetchingPaymentPoints: true,\n fetchedPaymentPoints: false,\n paymentPoints: [],\n errorPaymentPoints: null,\n paymentPointsPageInfo: {},\n paymentPointsTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.SEARCH_PAYMENT_POINTS):\n return {\n ...state,\n paymentPoints: parseData(action.payload.data.paymentPoint)?.map((paymentPoint) => ({\n ...paymentPoint,\n id: decodeId(paymentPoint.id),\n })),\n fetchingPaymentPoints: false,\n fetchedPaymentPoints: true,\n errorPaymentPoints: formatGraphQLError(action.payload),\n paymentPointsPageInfo: pageInfo(action.payload.data.paymentPoint),\n paymentPointsTotalCount: action.payload.data.paymentPoint?.totalCount ?? 0,\n };\n case ERROR(ACTION_TYPE.SEARCH_PAYMENT_POINTS):\n return {\n ...state,\n fetchingPaymentPoints: false,\n errorPaymentPoints: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.SEARCH_PAYROLLS):\n return {\n ...state,\n fetchingPayrolls: true,\n fetchedPayrolls: false,\n payrolls: [],\n errorPayrolls: null,\n payrollsPageInfo: {},\n payrollsTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.SEARCH_PAYROLLS):\n return {\n ...state,\n payrolls: parseData(action.payload.data.payroll)?.map((payroll) => ({\n ...payroll,\n id: decodeId(payroll.id),\n })),\n fetchingPayrolls: false,\n fetchedPayrolls: true,\n errorPayrolls: formatGraphQLError(action.payload),\n payrollsPageInfo: pageInfo(action.payload.data.payroll),\n payrollsTotalCount: action.payload.data.payroll?.totalCount ?? 0,\n };\n case ERROR(ACTION_TYPE.SEARCH_PAYROLLS):\n return {\n ...state,\n fetchingPayrolls: false,\n errorPayrolls: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.GET_PAYMENT_POINT):\n return {\n ...state,\n fetchingPaymentPoint: true,\n fetchedPaymentPoint: false,\n paymentPoint: [],\n errorPaymentPoint: null,\n };\n case SUCCESS(ACTION_TYPE.GET_PAYMENT_POINT):\n return {\n ...state,\n fetchingPaymentPoint: false,\n fetchedPaymentPoint: true,\n paymentPoint: parseData(action.payload.data.paymentPoint)?.map((paymentPoint) => ({\n ...paymentPoint,\n id: decodeId(paymentPoint.id),\n }))?.[0],\n errorPaymentPoint: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_PAYMENT_POINT):\n return {\n ...state,\n fetchingPaymentPoint: false,\n errorPaymentPoint: formatServerError(action.payload),\n };\n case CLEAR(ACTION_TYPE.GET_PAYMENT_POINT):\n return {\n ...state,\n fetchingPaymentPoint: false,\n fetchedPaymentPoint: false,\n paymentPoint: {},\n errorPaymentPoint: null,\n };\n case REQUEST(ACTION_TYPE.GET_PAYROLL):\n return {\n ...state,\n fetchingPayroll: true,\n fetchedPayroll: false,\n payroll: {},\n errorPayroll: null,\n };\n case SUCCESS(ACTION_TYPE.GET_PAYROLL):\n return {\n ...state,\n fetchingPayroll: false,\n fetchedPayroll: true,\n payroll: parseData(action.payload.data.payroll)?.map((payroll) => ({\n ...payroll,\n id: decodeId(payroll.id),\n dateValidTo: payroll?.dateValidTo ? payroll?.dateValidTo.split('T')[0] : null,\n dateValidFrom: payroll?.dateValidFrom ? payroll?.dateValidFrom.split('T')[0] : null,\n }))?.[0],\n errorPayroll: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_PAYROLL):\n return {\n ...state,\n fetchingPayroll: false,\n errorPayroll: formatServerError(action.payload),\n };\n case CLEAR(ACTION_TYPE.GET_PAYROLL):\n return {\n ...state,\n fetchingPayroll: true,\n fetchedPayroll: false,\n payroll: null,\n errorPayroll: null,\n payrollBills: [],\n };\n case REQUEST(ACTION_TYPE.GET_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingBenefitConsumptions: true,\n fetchedBenefitConsumptions: false,\n benefitConsumptions: [],\n errorBenefitConsumptions: null,\n benefitConsumptionsPageInfo: {},\n benefitConsumptionsTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.GET_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingBenefitConsumptions: false,\n fetchedBenefitConsumptions: true,\n benefitConsumptions: parseData(action.payload.data.benefitConsumptionByPayroll)?.map((benefitConsumption) => ({\n ...benefitConsumption,\n id: decodeId(benefitConsumption.id),\n })),\n benefitConsumptionsPageInfo: pageInfo(action.payload.data.benefitConsumptionByPayroll),\n benefitConsumptionsTotalCount: action.payload.data.benefitConsumptionByPayroll?.totalCount ?? 0,\n errorBenefitConsumptions: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingBenefitConsumptions: false,\n errorBenefitConsumptions: formatServerError(action.payload),\n };\n case CLEAR(ACTION_TYPE.GET_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingBenefitConsumptions: false,\n fetchedBenefitConsumptions: false,\n errorBenefitConsumptions: null,\n benefitConsumptions: [],\n };\n case REQUEST(ACTION_TYPE.GET_BENEFIT_ATTACHMENT):\n return {\n ...state,\n fetchingBenefitAttachments: true,\n fetchedBenefitAttachments: false,\n benefitAttachments: [],\n errorBenefitAttachments: null,\n benefitAttachmentsPageInfo: {},\n benefitAttachmentsTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.GET_BENEFIT_ATTACHMENT):\n return {\n ...state,\n fetchingBenefitAttachments: false,\n fetchedBenefitAttachments: true,\n benefitAttachments: parseData(action.payload.data.benefitAttachmentByPayroll)?.map((benefitAttachment) => ({\n ...benefitAttachment,\n })),\n benefitAttachmentsPageInfo: pageInfo(action.payload.data.benefitAttachmentByPayroll),\n benefitAttachmentsTotalCount: action.payload.data.benefitAttachmentByPayroll?.totalCount ?? 0,\n errorBenefitAttachments: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_BENEFIT_ATTACHMENT):\n return {\n ...state,\n fetchingBenefitAttachments: false,\n errorBenefitAttachments: formatServerError(action.payload),\n };\n case CLEAR(ACTION_TYPE.GET_BENEFIT_ATTACHMENT):\n return {\n ...state,\n fetchingBenefitAttachments: false,\n fetchedBenefitAttachments: false,\n errorBenefitAttachments: null,\n benefitAttachments: [],\n };\n\n case REQUEST(ACTION_TYPE.GET_PAYMENT_METHODS):\n return {\n ...state,\n fetchingPaymentMethods: true,\n fetchedPaymentMethods: false,\n paymentMethods: [],\n errorPaymentMethods: null,\n };\n case SUCCESS(ACTION_TYPE.GET_PAYMENT_METHODS):\n return {\n ...state,\n fetchingPaymentMethods: false,\n fetchedPaymentMethods: true,\n paymentMethods: action.payload.data.paymentMethods ? action.payload.data.paymentMethods.paymentMethods : [],\n errorPaymentMethods: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_PAYMENT_METHODS):\n return {\n ...state,\n fetchingPaymentMethods: false,\n errorPaymentMethods: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.GET_PAYROLL_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingPayrollBenefitConsumptions: true,\n fetchedPayrollBenefitConsumptions: false,\n payrollBenefitConsumptions: [],\n errorPayrollBenefitConsumptions: null,\n payrollBenefitConsumptionsPageInfo: {},\n payrollBenefitConsumptionsTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.GET_PAYROLL_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingPayrollBenefitConsumptions: false,\n fetchedPayrollBenefitConsumptions: true,\n // eslint-disable-next-line max-len\n payrollBenefitConsumptions: parseData(action.payload.data.payrollBenefitConsumption)?.map((payrollBenefitConsumption) => ({\n ...payrollBenefitConsumption,\n id: decodeId(payrollBenefitConsumption.id),\n })),\n payrollBenefitConsumptionsPageInfo: pageInfo(action.payload.data.payrollBenefitConsumption),\n payrollBenefitConsumptionsTotalCount: action.payload.data.payrollBenefitConsumption?.totalCount ?? 0,\n errorPayrollBenefitConsumptions: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_PAYROLL_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingPayrollBenefitConsumptions: false,\n errorPayrollBenefitConsumptions: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.GET_PAYROLL_PAYMENT_FILES):\n return {\n ...state,\n fetchingPayrollFiles: true,\n fetchedPayrollFiles: false,\n errorPayrollFiles: null,\n payrollFiles: [],\n payrollFilesPageInfo: {},\n payrollFilesTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.GET_PAYROLL_PAYMENT_FILES):\n return {\n ...state,\n fetchingPayrollFiles: false,\n fetchedPayrollFiles: true,\n errorPayrollFiles: formatGraphQLError(action.payload),\n payrollFiles: parseData(action.payload.data.csvReconciliationUpload)?.map((file) => ({\n ...file,\n })),\n payrollFilesPageInfo: pageInfo(action.payload.data.csvReconciliationUpload),\n payrollFilesTotalCount: action.payload.data.csvReconciliationUpload?.totalCount ?? 0,\n };\n case ERROR(ACTION_TYPE.GET_PAYROLL_PAYMENT_FILES):\n return {\n ...state,\n fetchingPayrollFiles: false,\n errorPayrollFiles: formatGraphQLError(action.payload),\n };\n case CLEAR(ACTION_TYPE.GET_PAYROLL_PAYMENT_FILES):\n return {\n ...state,\n fetchingPayrollFiles: false,\n fetchedPayrollFiles: false,\n errorPayrollFiles: null,\n payrollFiles: [],\n payrollFilesPageInfo: {},\n payrollFilesTotalCount: 0,\n };\n case REQUEST(ACTION_TYPE.BENEFITS_SUMMARY):\n return {\n ...state,\n fetchingBenefitsSummary: true,\n fetchedBenefitsSummary: false,\n benefitsSummary: {},\n benefitsSummaryError: null,\n };\n case SUCCESS(ACTION_TYPE.BENEFITS_SUMMARY):\n return {\n ...state,\n fetchingBenefitsSummary: false,\n fetchedBenefitsSummary: true,\n benefitsSummary: action.payload.data.benefitsSummary,\n benefitsSummaryError: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.BENEFITS_SUMMARY):\n return {\n ...state,\n fetchingBenefitsSummary: false,\n benefitsSummaryError: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.GET_BISTP_SUMMARY):\n return {\n ...state,\n fetchingBistpSummary: true,\n fetchedBistpSummary: false,\n bistpSummary: {},\n errorBistpSummary: null,\n };\n case SUCCESS(ACTION_TYPE.GET_BISTP_SUMMARY):\n return {\n ...state,\n fetchingBistpSummary: false,\n fetchedBistpSummary: true,\n bistpSummary: action.payload.data,\n errorBistpSummary: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_BISTP_SUMMARY):\n return {\n ...state,\n fetchingBistpSummary: false,\n errorBistpSummary: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.MUTATION):\n return dispatchMutationReq(state, action);\n case ERROR(ACTION_TYPE.MUTATION):\n return dispatchMutationErr(state, action);\n case SUCCESS(ACTION_TYPE.CREATE_PAYMENT_POINT):\n return dispatchMutationResp(state, MUTATION_SERVICE.PAYMENT_POINT.CREATE, action);\n case SUCCESS(ACTION_TYPE.DELETE_PAYMENT_POINT):\n return dispatchMutationResp(state, MUTATION_SERVICE.PAYMENT_POINT.DELETE, action);\n case SUCCESS(ACTION_TYPE.UPDATE_PAYMENT_POINT):\n return dispatchMutationResp(state, MUTATION_SERVICE.PAYMENT_POINT.UPDATE, action);\n case SUCCESS(ACTION_TYPE.CREATE_PAYROLL):\n return dispatchMutationResp(state, MUTATION_SERVICE.PAYROLL.CREATE, action);\n case SUCCESS(ACTION_TYPE.DELETE_PAYROLL):\n return dispatchMutationResp(state, MUTATION_SERVICE.PAYROLL.DELETE, action);\n case SUCCESS(ACTION_TYPE.DELETE_BENEFIT_CONSUMPTION):\n return dispatchMutationResp(state, MUTATION_SERVICE.BENEFIT_CONSUMPTION.DELETE, action);\n default:\n return state;\n }\n}\n\nexport default reducer;\n","// eslint-disable-next-line import/prefer-default-export\nexport function isBase64Encoded(str) {\n // Base64 encoded strings can only contain characters from [A-Za-z0-9+/=]\n const base64RegExp = /^[A-Za-z0-9+/=]+$/;\n return base64RegExp.test(str);\n}\n","/* eslint-disable max-len */\nimport {\n decodeId,\n formatGQLString,\n formatMutation,\n formatPageQueryWithCount,\n formatQuery,\n graphql,\n} from '@stssocialst-stp/fe-core';\n\nimport { ACTION_TYPE, MUTATION_SERVICE } from './reducer';\nimport {\n CLEAR, ERROR, REQUEST, SUCCESS,\n} from './utils/action-type';\nimport { isBase64Encoded } from './utils/advanced-filters-utils';\nimport { PAYROLL_STATUS } from './constants';\n\nexport const PAYMENT_POINT_PROJECTION = (modulesManager) => [\n 'id',\n 'name',\n 'isDeleted',\n `location ${modulesManager.getProjection('location.Location.FlatProjection')}`,\n `ppm ${modulesManager.getProjection('admin.UserPicker.projection')}`,\n];\n\nconst BENEFIT_CONSUMPTION_PROJECTION = () => [\n 'id',\n 'jsonExt',\n 'code',\n 'individual {firstName, lastName, nib}',\n 'benefitAttachment {bill {id, code, terms, amountTotal, datePayed}}',\n 'receipt',\n 'photo',\n 'amount',\n 'type',\n 'status',\n 'dateDue',\n];\n\nconst PAYROLL_BENEFIT_CONSUMPTION_PROJECTION = () => [\n 'id',\n // eslint-disable-next-line max-len\n 'benefit{id,isDeleted,jsonExt,dateCreated,dateUpdated,dateValidFrom,dateValidTo,id,code,individual {firstName, lastName},benefitAttachment {bill {id, code, terms, datePayed}},receipt,photo,amount,type,status,dateDue}',\n 'payroll {id, name, status, paymentCycle {code, startDate, endDate}, paymentMethod, benefitPlanNameCode}',\n];\n\nconst BENEFIT_CONSUMPTION_SUMMARY_PROJECTION = () => [\n 'totalAmountReceived', 'totalAmountDue',\n];\n\nconst BENEFIT_ATTACHMENT_PROJECTION = () => [\n 'benefit{id, status, code, dateDue, receipt, individual {firstName, lastName}, jsonExt, type, status, amount, receipt}',\n 'bill{id, code, terms, amountTotal, datePayed}',\n];\n\nconst BISTP_SUMMARY_PROJECTION = () => [\n 'bistpSummary { total reconciled rejected pending skippedNib sendFailed }',\n];\n\nconst PAYROLL_PROJECTION = (modulesManager) => [\n 'id',\n 'name',\n 'paymentMethod',\n 'paymentPlan { code, id, name, benefitPlanType }',\n 'benefitPlanNameCode',\n `paymentPoint { ${PAYMENT_POINT_PROJECTION(modulesManager).join(' ')} }`,\n 'paymentCycle { code, startDate, endDate }',\n 'jsonExt',\n 'status',\n 'dateValidFrom',\n 'dateValidTo',\n 'isDeleted',\n ...BISTP_SUMMARY_PROJECTION(),\n];\n\nconst PAYROLL_SEARCHER_PROJECTION = (modulesManager) => [\n 'id',\n 'name',\n 'paymentMethod',\n 'paymentPlan { code, id, name, benefitPlanType }',\n 'benefitPlanNameCode',\n `paymentPoint { ${PAYMENT_POINT_PROJECTION(modulesManager).join(' ')} }`,\n 'paymentCycle { code, startDate, endDate }',\n 'jsonExt',\n 'status',\n 'dateValidFrom',\n 'dateValidTo',\n 'isDeleted',\n ...BISTP_SUMMARY_PROJECTION(),\n];\n\nconst CSV_RECONCILIATION_PROJECTION = () => [\n 'fileName',\n 'status',\n 'error',\n 'jsonExt',\n];\n\nconst PAYMENT_METHOD_PROJECTION = () => [\n 'paymentMethods {name}',\n];\n\nconst formatPaymentPointGQL = (paymentPoint) => `\n ${paymentPoint?.id ? `id: \"${paymentPoint.id}\"` : ''}\n ${paymentPoint?.name ? `name: \"${formatGQLString(paymentPoint.name)}\"` : ''}\n ${paymentPoint?.location ? `locationId: ${decodeId(paymentPoint.location.id)}` : ''}\n ${paymentPoint?.ppm ? `ppmId: \"${decodeId(paymentPoint.ppm.id)}\"` : ''}\n `;\n\nconst formatPayrollGQL = (payroll) => `\n ${payroll?.id ? `id: \"${payroll.id}\"` : ''}\n ${payroll?.name ? `name: \"${formatGQLString(payroll.name)}\"` : ''}\n ${payroll?.paymentPoint ? `paymentPointId: \"${decodeId(payroll.paymentPoint.id)}\"` : ''}\n ${payroll?.paymentPlan ? `paymentPlanId: \"${decodeId(payroll.paymentPlan.id)}\"` : ''}\n ${payroll?.paymentCycle ? `paymentCycleId: \"${decodeId(payroll.paymentCycle.id)}\"` : ''}\n ${payroll?.paymentMethod ? `paymentMethod: \"${payroll.paymentMethod}\"` : ''}\n ${`status: ${PAYROLL_STATUS.PENDING_APPROVAL}`}\n ${\n payroll?.jsonExt\n ? `jsonExt: ${JSON.stringify(payroll.jsonExt)}`\n : ''\n}\n ${\n payroll?.dateValidFrom\n ? `dateValidFrom: \"${payroll.dateValidFrom}\"`\n : ''\n}\n ${\n payroll?.dateValidTo\n ? `dateValidTo: \"${payroll.dateValidTo}\"`\n : ''\n}\n ${\n payroll?.fromFailedInvoicesPayrollId\n ? `fromFailedInvoicesPayrollId: \"${payroll.fromFailedInvoicesPayrollId}\"`\n : ''\n}\n `;\n\nconst PERFORM_MUTATION = (mutationType, mutationInput, ACTION, clientMutationLabel) => {\n const mutation = formatMutation(mutationType, mutationInput, clientMutationLabel);\n const requestedDateTime = new Date();\n return graphql(\n mutation.payload,\n [REQUEST(ACTION_TYPE.MUTATION), SUCCESS(ACTION), ERROR(ACTION_TYPE.MUTATION)],\n {\n actionType: ACTION,\n clientMutationId: mutation.clientMutationId,\n clientMutationLabel,\n requestedDateTime,\n },\n );\n};\n\nexport function fetchPaymentPoints(modulesManager, params) {\n const payload = formatPageQueryWithCount('paymentPoint', params, PAYMENT_POINT_PROJECTION(modulesManager));\n return graphql(payload, ACTION_TYPE.SEARCH_PAYMENT_POINTS);\n}\n\nexport function fetchPaymentPoint(modulesManager, params) {\n const payload = formatPageQueryWithCount('paymentPoint', params, PAYMENT_POINT_PROJECTION(modulesManager));\n return graphql(payload, ACTION_TYPE.GET_PAYMENT_POINT);\n}\n\nexport function fetchPayrollPaymentFiles(modulesManager, params) {\n const payload = formatPageQueryWithCount('csvReconciliationUpload', params, CSV_RECONCILIATION_PROJECTION());\n return graphql(payload, ACTION_TYPE.GET_PAYROLL_PAYMENT_FILES);\n}\n\nexport const clearPaymentPoint = () => (dispatch) => {\n dispatch({\n type: CLEAR(ACTION_TYPE.GET_PAYMENT_POINT),\n });\n};\n\nexport function deletePaymentPoint(paymentPoint, clientMutationLabel) {\n const paymentPointUuids = `ids: [\"${paymentPoint?.id}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYMENT_POINT.DELETE,\n paymentPointUuids,\n ACTION_TYPE.DELETE_PAYMENT_POINT,\n clientMutationLabel,\n );\n}\n\nexport function createPaymentPoint(paymentPoint, clientMutationLabel) {\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYMENT_POINT.CREATE,\n formatPaymentPointGQL(paymentPoint),\n ACTION_TYPE.CREATE_PAYMENT_POINT,\n clientMutationLabel,\n );\n}\n\nexport function updatePaymentPoint(paymentPoint, clientMutationLabel) {\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYMENT_POINT.UPDATE,\n formatPaymentPointGQL(paymentPoint),\n ACTION_TYPE.UPDATE_PAYMENT_POINT,\n clientMutationLabel,\n );\n}\n\nexport function fetchPayrolls(modulesManager, params) {\n const payload = formatPageQueryWithCount('payroll', params, PAYROLL_SEARCHER_PROJECTION(modulesManager));\n return graphql(payload, ACTION_TYPE.SEARCH_PAYROLLS);\n}\n\nexport function fetchPayroll(modulesManager, params) {\n const payload = formatPageQueryWithCount('payroll', params, PAYROLL_PROJECTION(modulesManager));\n return graphql(payload, ACTION_TYPE.GET_PAYROLL);\n}\n\nexport function deletePayrolls(payroll, clientMutationLabel) {\n const uuid = isBase64Encoded(payroll.id) ? decodeId(payroll?.id) : payroll?.id;\n const payrollUuids = `ids: [\"${uuid}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYROLL.DELETE,\n payrollUuids,\n ACTION_TYPE.DELETE_PAYROLL,\n clientMutationLabel,\n );\n}\n\nexport function deleteBenefitConsumption(benefit, clientMutationLabel) {\n const uuid = isBase64Encoded(benefit.id) ? decodeId(benefit?.id) : benefit?.id;\n const benefitUuids = `ids: [\"${uuid}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.BENEFIT_CONSUMPTION.DELETE,\n benefitUuids,\n ACTION_TYPE.DELETE_BENEFIT_CONSUMPTION,\n clientMutationLabel,\n );\n}\n\nexport function createPayroll(payroll, clientMutationLabel) {\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYROLL.CREATE,\n formatPayrollGQL(payroll),\n ACTION_TYPE.CREATE_PAYROLL,\n clientMutationLabel,\n );\n}\n\nexport function fetchBenefitConsumptions(modulesManager, params) {\n const payload = formatPageQueryWithCount('benefitConsumptionByPayroll', params, BENEFIT_CONSUMPTION_PROJECTION());\n return graphql(payload, ACTION_TYPE.GET_BENEFIT_CONSUMPTION);\n}\n\nexport function fetchBenefitAttachments(modulesManager, params) {\n const payload = formatPageQueryWithCount('benefitAttachmentByPayroll', params, BENEFIT_ATTACHMENT_PROJECTION());\n return graphql(payload, ACTION_TYPE.GET_BENEFIT_ATTACHMENT);\n}\n\nexport function fetchPayrollBenefitConsumptions(modulesManager, params) {\n // eslint-disable-next-line max-len\n const payload = formatPageQueryWithCount('payrollBenefitConsumption', params, PAYROLL_BENEFIT_CONSUMPTION_PROJECTION());\n return graphql(payload, ACTION_TYPE.GET_PAYROLL_BENEFIT_CONSUMPTION);\n}\n\nexport function fetchBenefitsSummary(params) {\n const payload = formatQuery(\n 'benefitsSummary',\n params,\n BENEFIT_CONSUMPTION_SUMMARY_PROJECTION(),\n );\n return graphql(payload, ACTION_TYPE.BENEFITS_SUMMARY);\n}\n\nexport const clearPayrollBills = () => (dispatch) => {\n dispatch({\n type: CLEAR(ACTION_TYPE.GET_BENEFIT_CONSUMPTION),\n });\n};\n\nexport const clearPayroll = () => (dispatch) => {\n dispatch({\n type: CLEAR(ACTION_TYPE.GET_PAYROLL),\n });\n};\n\nexport function fetchPaymentMethods(params) {\n const payload = formatQuery('paymentMethods', params, PAYMENT_METHOD_PROJECTION());\n return graphql(payload, ACTION_TYPE.GET_PAYMENT_METHODS);\n}\n\nexport function closePayroll(payroll, clientMutationLabel) {\n const payrollUuids = `ids: [\"${payroll?.id}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYROLL.CLOSE,\n payrollUuids,\n ACTION_TYPE.CLOSE_PAYROLL,\n clientMutationLabel,\n );\n}\n\nexport function rejectPayroll(payroll, clientMutationLabel) {\n const payrollUuids = `ids: [\"${payroll?.id}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYROLL.REJECT,\n payrollUuids,\n ACTION_TYPE.REJECT_PAYROLL,\n clientMutationLabel,\n );\n}\n\nexport function makePaymentForPayroll(payroll, clientMutationLabel) {\n const payrollUuids = `ids: [\"${payroll?.id}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYROLL.MAKE_PAYMENT,\n payrollUuids,\n ACTION_TYPE.MAKE_PAYMENT_PAYROLL,\n clientMutationLabel,\n );\n}\n\nexport function fetchBistpSummary(payrollId) {\n const query = `\n {\n total: benefitConsumptionByPayroll(payrollUuid: \"${payrollId}\", first: 0) { totalCount }\n pendentes: benefitConsumptionByPayroll(payrollUuid: \"${payrollId}\", status: ACCEPTED, first: 0) { totalCount }\n enviados: benefitConsumptionByPayroll(payrollUuid: \"${payrollId}\", status: APPROVE_FOR_PAYMENT, first: 0) { totalCount }\n confirmados: benefitConsumptionByPayroll(payrollUuid: \"${payrollId}\", status: RECONCILED, first: 0) { totalCount }\n rejeitados: benefitConsumptionByPayroll(payrollUuid: \"${payrollId}\", status: REJECTED, first: 0) { totalCount }\n }\n `;\n return graphql(query, ACTION_TYPE.GET_BISTP_SUMMARY);\n}\n","export const pageTitle = (item) => ({\n name: item?.name,\n});\n\nexport const mutationLabel = (item) => ({\n id: item?.id,\n});\n","import React from 'react';\nimport { injectIntl } from 'react-intl';\n\nimport { Grid } from '@material-ui/core';\nimport { withTheme, withStyles } from '@material-ui/core/styles';\n\nimport {\n TextInput,\n FormPanel,\n withModulesManager,\n PublishedComponent,\n} from '@stssocialst-stp/fe-core';\nimport { MAX_LENGTH } from '../../constants';\n\nconst styles = (theme) => ({\n tableTitle: theme.table.title,\n item: theme.paper.item,\n fullHeight: {\n height: '100%',\n },\n});\n\nclass PaymentPointHeadPanel extends FormPanel {\n render() {\n const { edited, classes, readOnly } = this.props;\n const paymentPoint = { ...edited };\n return (\n <Grid container className={classes.item}>\n <Grid xs={12}>\n <PublishedComponent\n pubRef=\"location.DetailedLocation\"\n withNull\n required\n readOnly={readOnly}\n filterLabels={false}\n value={paymentPoint?.location}\n onChange={(locations) => this.updateAttribute('location', locations)}\n />\n </Grid>\n <Grid xs={3} className={classes.item}>\n <PublishedComponent\n pubRef=\"admin.PaymentPointManagerPicker\"\n required\n withPlaceholder\n withLabel\n readOnly={readOnly}\n value={paymentPoint?.ppm}\n onChange={(ppm) => this.updateAttribute('ppm', ppm)}\n />\n </Grid>\n <Grid xs={3} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"paymentPoint.name\"\n required\n readOnly={readOnly}\n inputProps={{ maxLength: MAX_LENGTH.NAME }}\n value={paymentPoint?.name}\n onChange={(name) => this.updateAttribute('name', name)}\n />\n </Grid>\n </Grid>\n );\n }\n}\n\nexport default withModulesManager(injectIntl(withTheme(withStyles(styles)(PaymentPointHeadPanel))));\n","import React, { useState, useRef, useEffect } from 'react';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\n\nimport { makeStyles } from '@material-ui/styles';\nimport DeleteIcon from '@material-ui/icons/Delete';\n\nimport {\n Form,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport {\n clearPaymentPoint,\n createPaymentPoint,\n deletePaymentPoint,\n fetchPaymentPoint,\n updatePaymentPoint,\n} from '../../actions';\nimport {\n MODULE_NAME,\n RIGHT_PAYMENT_POINT_UPDATE,\n} from '../../constants';\nimport { ACTION_TYPE } from '../../reducer';\nimport { mutationLabel, pageTitle } from '../../utils/string-utils';\nimport PaymentPointHeadPanel from './PaymentPointHeadPanel';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n lockedPage: theme.page.locked,\n}));\n\nfunction PaymentPointPage({\n clearPaymentPoint,\n createPaymentPoint,\n deletePaymentPoint,\n updatePaymentPoint,\n paymentPointUuid,\n fetchPaymentPoint,\n rights,\n confirmed,\n submittingMutation,\n mutation,\n paymentPoint,\n coreConfirm,\n clearConfirm,\n}) {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const history = useHistory();\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n\n const [editedPaymentPoint, setEditedPaymentPoint] = useState({});\n const [confirmedAction, setConfirmedAction] = useState(() => null);\n const prevSubmittingMutationRef = useRef();\n const pageLocked = editedPaymentPoint?.isDeleted;\n\n const back = () => history.goBack();\n\n useEffect(() => {\n if (paymentPointUuid) {\n fetchPaymentPoint(modulesManager, [`id: \"${paymentPointUuid}\"`]);\n }\n }, [paymentPointUuid]);\n\n useEffect(() => {\n if (confirmed) confirmedAction();\n return () => confirmed && clearConfirm(null);\n }, [confirmed]);\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n if (mutation?.actionType === ACTION_TYPE.DELETE_PAYMENT_POINT) {\n back();\n }\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n useEffect(() => setEditedPaymentPoint(paymentPoint), [paymentPoint]);\n\n useEffect(() => () => clearPaymentPoint(), []);\n\n const mandatoryFieldsEmpty = () => {\n if (\n editedPaymentPoint?.name\n && editedPaymentPoint?.location\n && editedPaymentPoint?.ppm\n && !editedPaymentPoint?.isDeleted) return false;\n return true;\n };\n\n const canSave = () => !mandatoryFieldsEmpty();\n\n const handleSave = () => {\n if (paymentPoint?.id) {\n updatePaymentPoint(\n editedPaymentPoint,\n formatMessageWithValues('paymentPoint.mutation.updateLabel', mutationLabel(paymentPoint)),\n );\n } else {\n createPaymentPoint(\n editedPaymentPoint,\n formatMessageWithValues('paymentPoint.mutation.createLabel', mutationLabel(paymentPoint)),\n );\n }\n back();\n };\n\n const deletePaymentPointCallback = () => deletePaymentPoint(\n paymentPoint,\n formatMessageWithValues('paymentPoint.mutation.deleteLabel', mutationLabel(paymentPoint)),\n );\n\n const openDeletePaymentPointConfirmDialog = () => {\n setConfirmedAction(() => deletePaymentPointCallback);\n coreConfirm(\n formatMessageWithValues('paymentPoint.delete.confirm.title', pageTitle(paymentPoint)),\n formatMessage('paymentPoint.delete.confirm.message'),\n );\n };\n\n const actions = [\n !!paymentPointUuid && !pageLocked && {\n doIt: openDeletePaymentPointConfirmDialog,\n icon: <DeleteIcon />,\n tooltip: formatMessage('tooltip.delete'),\n },\n ];\n\n return (\n rights.includes(RIGHT_PAYMENT_POINT_UPDATE) && (\n <div className={pageLocked ? classes.lockedPage : null}>\n <div className={classes.page}>\n <Form\n module=\"payroll\"\n title={formatMessageWithValues('PaymentPointPage.title', pageTitle(paymentPoint))}\n titleParams={pageTitle(paymentPoint)}\n openDirty\n edited={editedPaymentPoint}\n onEditedChanged={setEditedPaymentPoint}\n back={back}\n mandatoryFieldsEmpty={mandatoryFieldsEmpty}\n canSave={canSave}\n save={handleSave}\n HeadPanel={PaymentPointHeadPanel}\n readOnly={pageLocked}\n rights={rights}\n actions={actions}\n setConfirmedAction={setConfirmedAction}\n saveTooltip={formatMessage('tooltip.save')}\n />\n </div>\n\n </div>\n )\n );\n}\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n clearPaymentPoint,\n createPaymentPoint,\n deletePaymentPoint,\n updatePaymentPoint,\n fetchPaymentPoint,\n coreConfirm,\n clearConfirm,\n journalize,\n}, dispatch);\n\nconst mapStateToProps = (state, props) => ({\n paymentPointUuid: props.match.params.payment_point_uuid,\n rights: state.core?.user?.i_user?.rights ?? [],\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n paymentPoint: state.payroll.paymentPoint,\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentPointPage);\n","import React from 'react';\nimport _debounce from 'lodash/debounce';\n\nimport { FormControlLabel, Grid, Checkbox } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n TextInput,\n ControlledField,\n useModulesManager,\n useTranslations,\n PublishedComponent,\n decodeId,\n} from '@stssocialst-stp/fe-core';\nimport {\n CONTAINS_LOOKUP,\n DEFAULT_DEBOUNCE_TIME,\n EMPTY_STRING,\n MODULE_NAME,\n} from '../../constants';\n\nconst useStyles = makeStyles((theme) => ({\n form: {\n padding: '0 0 10px 0',\n width: '100%',\n },\n item: {\n padding: theme.spacing(1),\n },\n}));\n\nfunction PaymentPointFilter({\n filters, onChangeFilters,\n}) {\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n const debouncedOnChangeFilters = _debounce(onChangeFilters, DEFAULT_DEBOUNCE_TIME);\n\n const filterValue = (filterName) => filters?.[filterName]?.value ?? null;\n\n const filterTextFieldValue = (filterName) => filters?.[filterName]?.value ?? EMPTY_STRING;\n\n const onChangeStringFilter = (filterName, lookup = null) => (value) => {\n if (lookup) {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}_${lookup}: \"${value}\"`,\n },\n ]);\n } else {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}: \"${value}\"`,\n },\n ]);\n }\n };\n\n return (\n <Grid container className={classes.form}>\n <ControlledField\n module=\"payroll\"\n id=\"PaymentPointFilter.location\"\n field={(\n <Grid xs={12}>\n <PublishedComponent\n pubRef=\"location.DetailedLocationFilter\"\n withNull\n filters={filters}\n onChangeFilters={onChangeFilters}\n anchor=\"parentLocation\"\n />\n </Grid>\n )}\n />\n <ControlledField\n module=\"payroll\"\n id=\"admin.PaymentPointManagerPicker\"\n field={(\n <Grid className={classes.item} xs={3}>\n <PublishedComponent\n pubRef=\"admin.PaymentPointManagerPicker\"\n value={filterValue('ppm_Id')}\n withPlaceholder\n withLabel\n onChange={(ppm) => onChangeFilters([\n {\n id: 'ppm_Id',\n value: ppm,\n filter: `ppm_Id: \"${ppm?.id && decodeId(ppm?.id)}\"`,\n },\n ])}\n />\n </Grid>\n )}\n />\n <Grid xs={3} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label={formatMessage('paymentPoint.name')}\n value={filterTextFieldValue('name')}\n onChange={onChangeStringFilter('name', CONTAINS_LOOKUP)}\n />\n </Grid>\n <ControlledField\n module=\"payroll\"\n id=\"paymentPointFilter.isDeleted\"\n field={(\n <Grid xs={12} className={classes.item}>\n <FormControlLabel\n control={(\n <Checkbox\n color=\"primary\"\n checked={filters?.isDeleted?.value}\n onChange={() => onChangeFilters([\n {\n id: 'isDeleted',\n value: !filters?.isDeleted?.value,\n filter: `isDeleted: ${!filters?.isDeleted?.value}`,\n },\n ])}\n />\n )}\n label={formatMessage('tooltip.isDeleted')}\n />\n </Grid>\n )}\n />\n </Grid>\n );\n}\n\nexport default PaymentPointFilter;\n","import React, { useState, useRef, useEffect } from 'react';\nimport { bindActionCreators } from 'redux';\nimport { connect, useSelector } from 'react-redux';\n\nimport { IconButton, Tooltip } from '@material-ui/core';\nimport VisibilityIcon from '@material-ui/icons/Visibility';\nimport DeleteIcon from '@material-ui/icons/Delete';\n\nimport {\n Searcher,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport { deletePaymentPoint, fetchPaymentPoints } from '../../actions';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME, PAYROLL_PAYMENT_POINT_ROUTE, RIGHT_PAYMENT_POINT_SEARCH, ROWS_PER_PAGE_OPTIONS,\n} from '../../constants';\nimport { mutationLabel, pageTitle } from '../../utils/string-utils';\nimport PaymentPointFilter from './PaymentPointFilter';\n\nfunction PaymentPointSearcher({\n fetchPaymentPoints,\n fetchingPaymentPoints,\n fetchedPaymentPoints,\n errorPaymentPoints,\n deletePaymentPoint,\n paymentPoints,\n coreConfirm,\n clearConfirm,\n pageInfo,\n totalCount,\n confirmed,\n submittingMutation,\n mutation,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n\n const [paymentPointToDelete, setPaymentPointToDelete] = useState(null);\n const [deletedPaymentPointUuids, setDeletedPaymentPointUuids] = useState([]);\n const prevSubmittingMutationRef = useRef();\n\n const openDeletePaymentPointConfirmDialog = () => {\n coreConfirm(\n formatMessageWithValues('paymentPoint.delete.confirm.title', pageTitle(paymentPointToDelete)),\n formatMessage('paymentPoint.delete.confirm.message'),\n );\n };\n\n useEffect(() => paymentPointToDelete && openDeletePaymentPointConfirmDialog(), [paymentPointToDelete]);\n\n useEffect(() => {\n if (paymentPointToDelete && confirmed) {\n deletePaymentPoint(\n paymentPointToDelete,\n formatMessageWithValues('paymentPoint.mutation.deleteLabel', mutationLabel(paymentPointToDelete)),\n );\n setDeletedPaymentPointUuids([...deletedPaymentPointUuids, paymentPointToDelete.id]);\n }\n if (paymentPointToDelete && confirmed !== null) {\n setPaymentPointToDelete(null);\n }\n return () => confirmed && clearConfirm(false);\n }, [confirmed]);\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n const headers = () => [\n 'paymentPoint.name',\n 'paymentPoint.ppm',\n 'paymentPoint.location',\n 'emptyLabel',\n ];\n\n const sorts = () => [\n ['name', true],\n ['ppm', true],\n ['location', true],\n ];\n\n const fetch = (params) => fetchPaymentPoints(modulesManager, params);\n\n const rowIdentifier = (paymentPoint) => paymentPoint.id;\n\n const openPaymentPoint = (paymentPoint) => rights.includes(RIGHT_PAYMENT_POINT_SEARCH) && history.push(\n `/${modulesManager.getRef(PAYROLL_PAYMENT_POINT_ROUTE)}/${paymentPoint?.id}`,\n );\n\n const onDelete = (paymentPoint) => setPaymentPointToDelete(paymentPoint);\n\n const itemFormatters = () => [\n (paymentPoint) => paymentPoint.name,\n ({ ppm }) => `${ppm?.username} ${ppm?.iUser?.lastName} ${ppm?.iUser?.otherNames}`,\n ({ location }) => `${location?.code} ${location?.name}`,\n (paymentPoint) => (\n <Tooltip title={formatMessage('tooltip.viewDetails')}>\n <IconButton\n onClick={() => openPaymentPoint(paymentPoint)}\n >\n <VisibilityIcon />\n </IconButton>\n </Tooltip>\n ),\n (paymentPoint) => (\n <Tooltip title={formatMessage('tooltip.delete')}>\n <IconButton\n onClick={() => onDelete(paymentPoint)}\n disabled={deletedPaymentPointUuids.includes(paymentPoint.id)}\n >\n <DeleteIcon />\n </IconButton>\n </Tooltip>\n ),\n ];\n\n const onDoubleClick = (paymentPoint) => openPaymentPoint(paymentPoint);\n\n const paymentPointFilter = ({ filters, onChangeFilters }) => (\n <PaymentPointFilter filters={filters} onChangeFilters={onChangeFilters} />\n );\n\n const defaultFilters = () => ({\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n });\n\n const isRowDisabled = (_, paymentPoint) => deletedPaymentPointUuids.includes(paymentPoint.id);\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={paymentPointFilter}\n fetch={fetch}\n items={paymentPoints}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPaymentPoints}\n fetchingItems={fetchingPaymentPoints}\n errorItems={errorPaymentPoints}\n tableTitle={formatMessageWithValues('PaymentPointSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n onDoubleClick={onDoubleClick}\n defaultFilters={defaultFilters()}\n rowDisabled={isRowDisabled}\n rowLocked={isRowDisabled}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPaymentPoints: state.payroll.fetchingPaymentPoints,\n fetchedPaymentPoints: state.payroll.fetchedPaymentPoints,\n errorPaymentPoints: state.payroll.errorPaymentPoints,\n paymentPoints: state.payroll.paymentPoints,\n pageInfo: state.payroll.paymentPointsPageInfo,\n totalCount: state.payroll.paymentPointsTotalCount,\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPaymentPoints,\n deletePaymentPoint,\n journalize,\n clearConfirm,\n coreConfirm,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentPointSearcher);\n","import React from 'react';\nimport { useSelector } from 'react-redux';\n\nimport { Fab } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\nimport AddIcon from '@material-ui/icons/Add';\n\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n useHistory,\n withTooltip,\n} from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME,\n PAYROLL_PAYMENT_POINT_ROUTE,\n RIGHT_PAYMENT_POINT_CREATE,\n RIGHT_PAYMENT_POINT_SEARCH,\n} from '../../constants';\nimport PaymentPointSearcher from '../../components/payment-point/PaymentPointSearcher';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n fab: theme.fab,\n}));\n\nfunction PaymentPointsPage() {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const history = useHistory();\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n const onCreate = () => history.push(\n `/${modulesManager.getRef(PAYROLL_PAYMENT_POINT_ROUTE)}`,\n );\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('paymentPoint.page.title')} />\n {rights.includes(RIGHT_PAYMENT_POINT_SEARCH)\n && <PaymentPointSearcher />}\n {rights.includes(RIGHT_PAYMENT_POINT_CREATE)\n && withTooltip(\n <div className={classes.fab}>\n <Fab color=\"primary\" onClick={onCreate}>\n <AddIcon />\n </Fab>\n </div>,\n formatMessage('tooltip.createButton'),\n )}\n </div>\n );\n}\n\nexport default PaymentPointsPage;\n","/* eslint-disable react/jsx-no-useless-fragment */\n/* eslint-disable jsx-a11y/no-static-element-interactions */\n/* eslint-disable jsx-a11y/click-events-have-key-events */\n/* eslint-disable react/jsx-props-no-spreading */\nimport React from 'react';\nimport { injectIntl } from 'react-intl';\nimport {\n PublishedComponent,\n TextInput,\n NumberInput,\n SelectInput,\n CustomFilterTypeStatusPicker,\n CustomFilterFieldStatusPicker,\n} from '@stssocialst-stp/fe-core';\nimport { Grid } from '@material-ui/core';\nimport { withTheme, withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport {\n BOOLEAN,\n INTEGER,\n STRING,\n CLEARED_STATE_FILTER,\n DATE,\n BOOL_OPTIONS,\n} from '../../constants';\n\nconst styles = (theme) => ({\n item: theme.paper.item,\n});\n\nfunction AdvancedFiltersRowValue({\n classes,\n customFilters,\n currentFilter,\n setCurrentFilter,\n index,\n filters,\n setFilters,\n readOnly,\n}) {\n const onAttributeChange = (attribute) => (value) => {\n let updatedFilter = { ...currentFilter };\n\n if (attribute === 'field') {\n updatedFilter = {\n ...{ filter: '', value: '', type: value.type },\n };\n }\n\n const attributeValue = attribute === 'field' ? value.field : value;\n updatedFilter = {\n ...updatedFilter,\n [attribute]: attributeValue,\n ...(attribute === 'filter' && { value: '' }),\n };\n\n setCurrentFilter(updatedFilter);\n\n setFilters((prevFilters) => {\n const updatedRows = [...prevFilters];\n updatedRows[index] = { ...updatedFilter };\n return updatedRows;\n });\n };\n\n const removeFilter = () => {\n const newArray = [...filters];\n newArray.splice(index, 1);\n setFilters(newArray.length === 0 ? [CLEARED_STATE_FILTER] : newArray);\n };\n\n const renderInputBasedOnType = (type) => {\n const commonProps = {\n module: 'payroll',\n label: 'payroll.advancedFilters.value',\n value: currentFilter.value,\n onChange: onAttributeChange('value'),\n };\n\n switch (type) {\n case BOOLEAN:\n return (\n <SelectInput\n options={BOOL_OPTIONS}\n readOnly={readOnly}\n {...commonProps}\n />\n );\n case INTEGER:\n return (\n <NumberInput\n min={0}\n displayZero\n readOnly={readOnly}\n {...commonProps}\n />\n );\n case STRING:\n default:\n if (currentFilter.field.toLowerCase().includes(DATE)) {\n return (\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n readOnly={readOnly}\n {...commonProps}\n />\n );\n }\n return (\n <TextInput\n readOnly={readOnly}\n {...commonProps}\n />\n );\n }\n };\n\n return (\n <Grid\n container\n direction=\"row\"\n className={classes.item}\n style={{ backgroundColor: '#DFEDEF' }}\n >\n {filters.length > 0 && !readOnly ? (\n <div style={{\n backgroundColor: '#DFEDEF', width: '10px', height: '25px', marginTop: '25px',\n }}\n >\n <span\n style={{\n transform: 'translate(-50%, -50%)',\n fontSize: '16px',\n color: '#006273',\n }}\n onClick={removeFilter}\n >\n ✖\n </span>\n </div>\n ) : (<></>)}\n <Grid item xs={3} className={classes.item}>\n <CustomFilterFieldStatusPicker\n module=\"payroll\"\n label=\"payroll.advancedFilters.field\"\n value={{ field: currentFilter.field, type: currentFilter.type }}\n onChange={onAttributeChange('field')}\n customFilters={customFilters}\n readOnly={readOnly}\n />\n </Grid>\n {currentFilter.field !== '' ? (\n <Grid item xs={3} className={classes.item}>\n <CustomFilterTypeStatusPicker\n module=\"payroll\"\n label=\"payroll.advancedFilters.filter\"\n value={currentFilter.filter}\n onChange={onAttributeChange('filter')}\n customFilters={customFilters}\n customFilterField={currentFilter.field}\n readOnly={readOnly}\n />\n </Grid>\n ) : (<></>) }\n {currentFilter.field !== '' && currentFilter.filter !== '' ? (\n <Grid item xs={3} className={classes.item}>\n {renderInputBasedOnType(currentFilter.type)}\n </Grid>\n ) : (<></>) }\n </Grid>\n );\n}\n\nexport default injectIntl(withTheme(withStyles(styles)(connect(null, null)(AdvancedFiltersRowValue))));\n","/* eslint-disable no-unused-vars */\n/* eslint-disable react/jsx-no-useless-fragment */\n/* eslint-disable no-prototype-builtins */\nimport React, { useEffect, useState } from 'react';\nimport { injectIntl } from 'react-intl';\nimport Button from '@material-ui/core/Button';\nimport {\n decodeId,\n formatMessage,\n fetchCustomFilter,\n} from '@stssocialst-stp/fe-core';\nimport { withTheme, withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport AddCircle from '@material-ui/icons/Add';\nimport _ from 'lodash';\nimport AdvancedFiltersRowValue from './AdvancedFiltersRowValue';\nimport { BENEFIT_PLAN, CLEARED_STATE_FILTER } from '../../constants';\nimport { isBase64Encoded } from '../../utils/advanced-filters-utils';\n\nconst styles = (theme) => ({\n item: theme.paper.item,\n});\n\nfunction AdvancedFiltersDialog({\n intl,\n classes,\n object,\n objectToSave,\n fetchCustomFilter,\n customFilters,\n moduleName,\n objectType,\n setAppliedCustomFilters,\n // eslint-disable-next-line no-unused-vars\n appliedFiltersRowStructure,\n setAppliedFiltersRowStructure,\n updateAttributes,\n getDefaultAppliedCustomFilters,\n readOnly,\n additionalParams,\n confirmed,\n edited,\n}) {\n const [isOpen, setIsOpen] = useState(false);\n // eslint-disable-next-line no-unused-vars\n const [currentFilter, setCurrentFilter] = useState({\n field: '', filter: '', type: '', value: '', amount: '',\n });\n const [filters, setFilters] = useState(getDefaultAppliedCustomFilters(objectToSave.jsonExt));\n\n useEffect(() => {\n setFilters(getDefaultAppliedCustomFilters(objectToSave.jsonExt));\n }, [objectToSave.jsonExt]);\n\n useEffect(() => {\n }, [edited]);\n\n const createParams = (moduleName, objectTypeName, uuidOfObject = null, additionalParams = null) => {\n const params = [\n `moduleName: \"${moduleName}\"`,\n `objectTypeName: \"${objectTypeName}\"`,\n ];\n if (uuidOfObject) {\n params.push(`uuidOfObject: \"${uuidOfObject}\"`);\n }\n if (additionalParams) {\n params.push(`additionalParams: ${JSON.stringify(JSON.stringify(additionalParams))}`);\n }\n return params;\n };\n\n const fetchFilters = (params) => fetchCustomFilter(params);\n\n const handleClose = () => {\n setCurrentFilter(CLEARED_STATE_FILTER);\n };\n\n const handleRemoveFilter = () => {\n setCurrentFilter(CLEARED_STATE_FILTER);\n setAppliedFiltersRowStructure([CLEARED_STATE_FILTER]);\n setFilters([]);\n };\n\n const handleAddFilter = () => {\n setCurrentFilter(CLEARED_STATE_FILTER);\n setFilters([...filters, CLEARED_STATE_FILTER]);\n };\n\n function updateJsonExt(inputJsonExt, outputFilters) {\n const existingData = JSON.parse(inputJsonExt || '{}');\n if (!existingData.hasOwnProperty('advanced_criteria')) {\n existingData.advanced_criteria = [];\n }\n const filterData = JSON.parse(outputFilters);\n existingData.advanced_criteria = filterData;\n const updatedJsonExt = JSON.stringify(existingData);\n return updatedJsonExt;\n }\n\n const saveCriteria = () => {\n setAppliedFiltersRowStructure(filters);\n const outputFilters = JSON.stringify(\n filters.map(({\n filter, value, field, type,\n }) => ({\n custom_filter_condition: `${field}__${filter}__${type}=${value}`,\n })),\n );\n const jsonExt = updateJsonExt(objectToSave.jsonExt, outputFilters);\n updateAttributes(jsonExt);\n setAppliedCustomFilters(outputFilters);\n handleClose();\n };\n\n useEffect(() => {\n if (object && _.isEmpty(object) === false) {\n let paramsToFetchFilters = [];\n if (objectType === BENEFIT_PLAN) {\n paramsToFetchFilters = createParams(\n moduleName,\n objectType,\n isBase64Encoded(object.id) ? decodeId(object.id) : object.id,\n additionalParams,\n );\n } else {\n paramsToFetchFilters = createParams(\n moduleName,\n objectType,\n additionalParams,\n );\n }\n fetchFilters(paramsToFetchFilters);\n }\n }, [object]);\n return (\n <>\n {filters.map((filter, index) => (\n <AdvancedFiltersRowValue\n customFilters={customFilters}\n currentFilter={filter}\n setCurrentFilter={setCurrentFilter}\n index={index}\n filters={filters}\n setFilters={setFilters}\n readOnly={readOnly || confirmed}\n />\n ))}\n { !readOnly && !confirmed ? (\n <div\n style={{ backgroundColor: '#DFEDEF', paddingLeft: '10px', paddingBottom: '10px' }}\n >\n <AddCircle\n style={{\n border: 'thin solid',\n borderRadius: '40px',\n width: '16px',\n height: '16px',\n }}\n onClick={handleAddFilter}\n disabled={readOnly || confirmed}\n />\n <Button\n onClick={handleAddFilter}\n variant=\"outlined\"\n style={{\n border: '0px',\n marginBottom: '6px',\n fontSize: '0.8rem',\n }}\n disabled={readOnly || confirmed}\n >\n {formatMessage(intl, 'payroll', 'payroll.advancedFilters.button.addFilters')}\n </Button>\n </div>\n ) : (<></>) }\n <div>\n { !readOnly && !confirmed ? (\n <>\n <div style={{ float: 'left' }}>\n <Button\n onClick={handleRemoveFilter}\n variant=\"outlined\"\n style={{\n border: '0px',\n }}\n >\n {formatMessage(intl, 'payroll', 'payroll.advancedFilters.button.clearAllFilters')}\n </Button>\n </div>\n <div style={{\n float: 'right',\n paddingRight: '16px',\n }}\n >\n <Button\n onClick={saveCriteria}\n variant=\"contained\"\n color=\"primary\"\n autoFocus\n disabled={!object || confirmed || readOnly}\n >\n {formatMessage(intl, 'payroll', 'payroll.advancedFilters.button.filter')}\n </Button>\n </div>\n </>\n ) : <></> }\n </div>\n </>\n );\n}\n\nconst mapStateToProps = (state, props) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n fetchingCustomFilters: state.core.fetchingCustomFilters,\n errorCustomFilters: state.core.errorCustomFilters,\n fetchedCustomFilters: state.core.fetchedCustomFilters,\n customFilters: state.core.customFilters,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchCustomFilter,\n}, dispatch);\n\nexport default injectIntl(\n withTheme(withStyles(styles)(connect(mapStateToProps, mapDispatchToProps)(AdvancedFiltersDialog))),\n);\n","import React from 'react';\nimport { ConstantBasedPicker } from '@stssocialst-stp/fe-core';\n\nimport { PAYROLL_STATUS_LIST } from '../../constants';\n\nfunction PayrollStatusPicker({\n required,\n withNull,\n readOnly,\n onChange,\n value,\n nullLabel,\n withLabel,\n}) {\n return (\n <ConstantBasedPicker\n module=\"payroll\"\n label=\"payroll.payroll.payrollStatusPicker\"\n constants={PAYROLL_STATUS_LIST}\n required={required}\n withNull={withNull}\n readOnly={readOnly}\n onChange={onChange}\n value={value}\n nullLabel={nullLabel}\n withLabel={withLabel}\n />\n );\n}\n\nexport default PayrollStatusPicker;\n","import React, { useEffect } from 'react';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport { SelectInput } from '@stssocialst-stp/fe-core';\nimport { fetchPaymentMethods } from '../actions';\n\nfunction PaymentMethodPicker({\n value,\n label,\n onChange,\n readOnly = false,\n withNull = false,\n nullLabel = null,\n withLabel = true,\n required = false,\n paymentMethods,\n fetchPaymentMethods,\n}) {\n const fetch = () => {\n fetchPaymentMethods({});\n };\n\n useEffect(() => {\n fetch();\n }, []);\n\n const options = Array.isArray(paymentMethods) && paymentMethods !== undefined ? [\n ...paymentMethods.map((paymentMethod) => ({\n value: paymentMethod.name,\n label: paymentMethod.name,\n })),\n ] : [];\n\n if (withNull) {\n options.unshift({\n value: null,\n label: nullLabel || '',\n });\n }\n\n return (\n <SelectInput\n module=\"payroll\"\n label={withLabel && label}\n options={options}\n value={value}\n onChange={onChange}\n readOnly={readOnly}\n required={required}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n fetchingPaymentMethods: state.payroll.fetchingPaymentMethods,\n errorPaymentMethods: state.payroll.errorPaymentMethods,\n fetchedPaymentMethods: state.payroll.fetchedPaymentMethods,\n paymentMethods: state.payroll.paymentMethods,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPaymentMethods,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentMethodPicker);\n","/* eslint-disable camelcase */\nimport React from 'react';\nimport { injectIntl } from 'react-intl';\n\nimport { Grid, Divider, Typography } from '@material-ui/core';\nimport { withStyles, withTheme } from '@material-ui/core/styles';\n\nimport {\n formatMessage,\n FormPanel,\n PublishedComponent,\n TextInput,\n withModulesManager,\n FormattedMessage,\n} from '@stssocialst-stp/fe-core';\nimport AdvancedFiltersDialog from './AdvancedFiltersDialog';\nimport { CLEARED_STATE_FILTER } from '../../constants';\nimport PayrollStatusPicker from './PayrollStatusPicker';\nimport PaymentMethodPicker from '../../pickers/PaymentMethodPicker';\n\nconst styles = (theme) => ({\n tableTitle: theme.table.title,\n item: theme.paper.item,\n fullHeight: {\n height: '100%',\n },\n});\n\nclass PayrollHeadPanel extends FormPanel {\n constructor(props) {\n super(props);\n this.state = {\n appliedCustomFilters: [CLEARED_STATE_FILTER],\n appliedFiltersRowStructure: [CLEARED_STATE_FILTER],\n };\n }\n\n componentDidMount() {\n this.setStateFromProps(this.props);\n }\n\n setStateFromProps = (props) => {\n const { jsonExt } = props?.edited ?? {};\n if (jsonExt) {\n const filters = this.getDefaultAppliedCustomFilters(jsonExt);\n this.setState({ appliedCustomFilters: filters, appliedFiltersRowStructure: filters });\n }\n };\n\n updateJsonExt = (value) => {\n this.updateAttributes({\n jsonExt: value,\n });\n };\n\n // eslint-disable-next-line class-methods-use-this\n getDefaultAppliedCustomFilters = (jsonExt) => {\n try {\n const jsonData = JSON.parse(jsonExt);\n const advancedCriteria = jsonData.advanced_criteria || [];\n const transformedCriteria = advancedCriteria.map(({ custom_filter_condition }) => {\n const [field, filter, typeValue] = custom_filter_condition.split('__');\n const [type, value] = typeValue.split('=');\n return {\n custom_filter_condition,\n field,\n filter,\n type,\n value,\n };\n });\n return transformedCriteria;\n } catch (error) {\n return [];\n }\n };\n\n setAppliedCustomFilters = (appliedCustomFilters) => {\n this.setState({ appliedCustomFilters });\n };\n\n setAppliedFiltersRowStructure = (appliedFiltersRowStructure) => {\n this.setState({ appliedFiltersRowStructure });\n };\n\n render() {\n const {\n edited, classes, intl, readOnly, isPayrollFromFailedInvoices, benefitPlanId,\n } = this.props;\n const payroll = { ...edited };\n const { appliedCustomFilters, appliedFiltersRowStructure } = this.state;\n return (\n <>\n <Grid container className={classes.item}>\n <Grid item xs={3} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label={formatMessage(intl, 'payroll', 'paymentPoint.name')}\n value={payroll?.name}\n required\n onChange={(name) => this.updateAttribute('name', name)}\n readOnly={isPayrollFromFailedInvoices ? !isPayrollFromFailedInvoices : readOnly}\n />\n </Grid>\n <Grid item xs={3} className={classes.item}>\n <PublishedComponent\n pubRef=\"contributionPlan.PaymentPlanPicker\"\n required\n filterLabels={false}\n onChange={(paymentPlan) => this.updateAttribute('paymentPlan', paymentPlan)}\n value={payroll?.paymentPlan}\n readOnly={readOnly}\n benefitPlanId={benefitPlanId}\n />\n </Grid>\n <Grid item xs={3} className={classes.item}>\n <PublishedComponent\n pubRef=\"paymentCycle.PaymentCyclePicker\"\n withLabel\n required\n withPlaceholder\n filterLabels={false}\n onChange={(paymentCycle) => this.updateAttribute('paymentCycle', paymentCycle)}\n value={payroll?.paymentCycle}\n readOnly={isPayrollFromFailedInvoices ? !isPayrollFromFailedInvoices : readOnly}\n />\n </Grid>\n {readOnly && !isPayrollFromFailedInvoices && (\n <Grid item xs={3} className={classes.item}>\n <PayrollStatusPicker\n required\n withNull={false}\n readOnly={readOnly}\n value={!!payroll?.status && payroll.status}\n />\n </Grid>\n )}\n <Grid item xs={3} className={classes.item}>\n <PaymentMethodPicker\n required\n withNull={false}\n readOnly={readOnly}\n value={!!payroll?.paymentMethod && payroll.paymentMethod}\n onChange={(paymentMethod) => this.updateAttribute('paymentMethod', paymentMethod)}\n label={formatMessage(intl, 'payroll', 'paymentMethod')}\n />\n </Grid>\n </Grid>\n <Divider />\n {!isPayrollFromFailedInvoices\n && (\n <>\n <>\n <Typography>\n <div className={classes.item}>\n <FormattedMessage module=\"contributionPlan\" id=\"paymentPlan.advancedCriteria\" />\n </div>\n </Typography>\n {!readOnly && (\n <div className={classes.item}>\n <FormattedMessage module=\"contributionPlan\" id=\"paymentPlan.advancedCriteria.tip\" />\n </div>\n )}\n <Divider />\n <Grid container className={classes.item}>\n\n <AdvancedFiltersDialog\n object={null}\n objectToSave={payroll}\n moduleName=\"social_protection\"\n objectType=\"BenefitPlan\"\n setAppliedCustomFilters={this.setAppliedCustomFilters}\n appliedCustomFilters={appliedCustomFilters}\n appliedFiltersRowStructure={appliedFiltersRowStructure}\n setAppliedFiltersRowStructure={this.setAppliedFiltersRowStructure}\n updateAttributes={this.updateJsonExt}\n getDefaultAppliedCustomFilters={() => this.getDefaultAppliedCustomFilters(payroll.jsonExt)}\n readOnly={readOnly}\n edited={this.props.edited}\n />\n\n </Grid>\n </>\n <Divider />\n </>\n )}\n </>\n );\n }\n}\n\nexport default withModulesManager(injectIntl(withTheme(withStyles(styles)(PayrollHeadPanel))));\n","import React, { useState } from 'react';\nimport { Input, Grid } from '@material-ui/core';\nimport { injectIntl } from 'react-intl';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n apiHeaders,\n baseApiUrl,\n formatMessage,\n} from '@stssocialst-stp/fe-core';\nimport { withTheme, withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nconst styles = (theme) => ({\n item: theme.paper.item,\n});\n\nfunction PayrollPaymentDataUploadDialog({\n intl,\n classes,\n payrollUuid,\n}) {\n const [isOpen, setIsOpen] = useState(false);\n const [forms, setForms] = useState({});\n\n const handleOpen = () => {\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setForms({});\n setIsOpen(false);\n };\n\n const handleFieldChange = (formName, fieldName, value) => {\n setForms({\n ...forms,\n [formName]: {\n ...(forms[formName] ?? {}),\n [fieldName]: value,\n },\n });\n };\n\n const onSubmit = async (values) => {\n const fileFormat = values.file.type;\n const formData = new FormData();\n\n formData.append('file', values.file);\n\n let urlImport;\n if (fileFormat.includes('/csv')) {\n urlImport = `${baseApiUrl}/payroll/csv_reconciliation/?payroll_id=${payrollUuid}`;\n }\n\n try {\n const response = await fetch(urlImport, {\n headers: apiHeaders,\n body: formData,\n method: 'POST',\n credentials: 'same-origin',\n });\n\n await response.json();\n\n if (response.status >= 400) {\n handleClose();\n return;\n }\n handleClose();\n } catch (error) {\n handleClose();\n }\n };\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"outlined\"\n color=\"#DFEDEF\"\n className={classes.button}\n style={{\n border: '0px',\n marginTop: '6px',\n }}\n >\n {formatMessage(intl, 'payroll', 'payroll.paymentData.upload.label')}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n width: 600,\n maxWidth: 1000,\n },\n }}\n >\n <form noValidate>\n <DialogTitle\n style={{\n marginTop: '10px',\n }}\n >\n {formatMessage(intl, 'payroll', 'payroll.paymentData.upload.label')}\n </DialogTitle>\n <DialogContent>\n <div\n style={{ backgroundColor: '#DFEDEF', paddingLeft: '10px', paddingBottom: '10px' }}\n >\n <Grid item>\n <Grid container spacing={4} direction=\"column\">\n <Grid item>\n <Input\n onChange={(event) => handleFieldChange('paymentData', 'file', event.target.files[0])}\n required\n id=\"import-button\"\n inputProps={{\n accept: '.csv, application/csv, text/csv',\n }}\n type=\"file\"\n />\n </Grid>\n </Grid>\n </Grid>\n </div>\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n }}\n >\n <div style={{ maxWidth: '1000px' }}>\n <div style={{ float: 'left' }}>\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n Cancel\n </Button>\n </div>\n <div style={{ float: 'right', paddingRight: '16px' }}>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={() => onSubmit(forms.paymentData)}\n disabled={!(forms.paymentData?.file && payrollUuid)}\n >\n {formatMessage(intl, 'payroll', 'payroll.paymentData.upload.label')}\n </Button>\n </div>\n </div>\n </DialogActions>\n </form>\n </Dialog>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n}, dispatch);\n\nexport default injectIntl(\n withTheme(\n withStyles(styles)(\n connect(mapStateToProps, mapDispatchToProps)(PayrollPaymentDataUploadDialog),\n ),\n ),\n);\n","import React from 'react';\nimport _debounce from 'lodash/debounce';\n\nimport { Grid } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n PublishedComponent,\n useModulesManager,\n useTranslations,\n TextInput,\n NumberInput,\n} from '@stssocialst-stp/fe-core';\nimport { CONTAINS_LOOKUP, DEFAULT_DEBOUNCE_TIME, EMPTY_STRING } from '../../constants';\n\nconst useStyles = makeStyles((theme) => ({\n form: {\n padding: 0,\n },\n item: {\n padding: theme.spacing(1),\n },\n}));\n\nfunction BenefitConsumptionFilterModal({ filters, onChangeFilters }) {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const { formatMessage } = useTranslations('payroll', modulesManager);\n\n const debouncedOnChangeFilters = _debounce(onChangeFilters, DEFAULT_DEBOUNCE_TIME);\n\n const filterTextFieldValue = (filterName) => filters?.[filterName]?.value ?? EMPTY_STRING;\n\n const filterValue = (filterName) => filters?.[filterName]?.value ?? null;\n\n const onChangeFilter = (filterName) => (value) => {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value: value || null,\n filter: `${filterName}: ${value}`,\n },\n ]);\n };\n\n const onChangeStringFilter = (filterName, lookup = null) => (value) => {\n if (lookup) {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}_${lookup}: \"${value}\"`,\n },\n ]);\n } else {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}: \"${value}\"`,\n },\n ]);\n }\n };\n\n return (\n <Grid container className={classes.form}>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.individual.firstName\"\n value={filterTextFieldValue('benefit_Individual_FirstName')}\n onChange={onChangeStringFilter('benefit_Individual_FirstName', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.individual.lastName\"\n value={filterTextFieldValue('benefit_Individual_LastName')}\n onChange={onChangeStringFilter('benefit_Individual_LastName', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <NumberInput\n module=\"payroll\"\n label={formatMessage('benefitConsumption.amount')}\n min={0}\n value={filterValue('bill_AmountTotal')}\n onChange={onChangeFilter('bill_AmountTotal')}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.receipt\"\n value={filterTextFieldValue('benefit_Receipt')}\n onChange={onChangeStringFilter('benefit_Receipt', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.dateDue')}\n value={filterValue('benefit_DateDue')}\n onChange={(v) => onChangeFilters([\n {\n id: 'benefit_DateDue',\n value: v,\n filter: `benefit_DateDue: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.paymentDate')}\n value={filterValue('bill_DatePayed_Gte')}\n onChange={(v) => onChangeFilters([\n {\n id: 'bill_DatePayed_Gte',\n value: v,\n filter: `bill_DatePayed_Gte: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n </Grid>\n );\n}\n\nexport default BenefitConsumptionFilterModal;\n","import React from 'react';\nimport {\n Modal, Backdrop, Fade, Box, Typography, Button,\n} from '@material-ui/core';\nimport { useTranslations, useModulesManager } from '@stssocialst-stp/fe-core';\n\nfunction ErrorSummaryModal({ open, onClose, benefitAttachment }) {\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations('payroll', modulesManager);\n\n const jsonExt = benefitAttachment?.benefit?.jsonExt ? JSON.parse(benefitAttachment.benefit.jsonExt) : {};\n const outputGateway = `${jsonExt?.output_gateway}`;\n\n return (\n <Modal\n open={open}\n onClose={onClose}\n closeAfterTransition\n BackdropComponent={Backdrop}\n BackdropProps={{\n timeout: 500,\n }}\n >\n <Fade in={open}>\n <Box\n p={4}\n style={{\n backgroundColor: 'white', margin: 'auto', maxWidth: 400, outline: 'none',\n }}\n >\n <Typography variant=\"h6\">{formatMessage('payroll.errorSummary.title')}</Typography>\n {/* Conditional rendering based on output_gateway */}\n {outputGateway === null || outputGateway === 'undefined' ? (\n <Typography>\n {formatMessage('payroll.errorSummary.outputGateway.noInfo')}\n </Typography>\n ) : (\n <Typography>\n {outputGateway}\n </Typography>\n )}\n <Box display=\"flex\" justifyContent=\"center\" mt={2}>\n <Button onClick={onClose} variant=\"contained\" color=\"primary\">\n {formatMessage('payroll.errorSummary.close')}\n </Button>\n </Box>\n </Box>\n </Fade>\n </Modal>\n );\n}\n\nexport default ErrorSummaryModal;\n","import React, { useState } from 'react';\nimport { Grid } from '@material-ui/core';\nimport { injectIntl } from 'react-intl';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n formatMessage,\n renderInputComponent,\n createFieldsBasedOnJSON,\n} from '@stssocialst-stp/fe-core';\nimport { withTheme, withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport { MODULE_NAME } from '../../../constants';\n\nconst styles = (theme) => ({\n item: theme.paper.item,\n});\n\nfunction AdditionalFieldsDialog({\n intl,\n classes,\n jsonExt,\n buttonLabel,\n title,\n}) {\n // eslint-disable-next-line no-param-reassign\n if (!jsonExt) jsonExt = '{}';\n const [isOpen, setIsOpen] = useState(false);\n\n const handleOpen = () => {\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setIsOpen(false);\n };\n const jsonExtFields = createFieldsBasedOnJSON(JSON.stringify(JSON.parse(jsonExt).extra_info));\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"outlined\"\n color=\"#DFEDEF\"\n className={classes.button}\n style={{\n border: '0px',\n marginTop: '6px',\n }}\n >\n {formatMessage(intl, 'payroll', buttonLabel)}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n width: 1200,\n maxWidth: 1200,\n maxHeight: 900,\n },\n }}\n >\n <form noValidate>\n <DialogTitle\n style={{\n marginTop: '10px',\n }}\n >\n {formatMessage(intl, 'payroll', title)}\n </DialogTitle>\n <DialogContent>\n <div\n style={{ backgroundColor: '#DFEDEF', paddingLeft: '10px', paddingBottom: '10px' }}\n >\n <Grid container className={classes.item}>\n {jsonExtFields?.map((jsonExtField) => (\n <Grid item xs={6} className={classes.item}>\n {renderInputComponent(MODULE_NAME, jsonExtField)}\n </Grid>\n ))}\n </Grid>\n </div>\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n }}\n >\n <div style={{ maxWidth: '1000px' }}>\n <div style={{ float: 'left' }}>\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage(intl, 'payroll', 'payroll.additonalFields.close')}\n </Button>\n </div>\n <div style={{ float: 'right', paddingRight: '16px' }} />\n </div>\n </DialogActions>\n </form>\n </Dialog>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n}, dispatch);\n\nexport default injectIntl(\n withTheme(\n withStyles(styles)(\n connect(mapStateToProps, mapDispatchToProps)(AdditionalFieldsDialog),\n ),\n ),\n);\n","/* eslint-disable max-len */\n/* eslint-disable react/no-array-index-key */\n/* eslint-disable no-nested-ternary */\n/* eslint-disable no-undef */\nimport React, {\n forwardRef,\n} from 'react';\n\nimport { Divider } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n useTranslations, useModulesManager,\n} from '@stssocialst-stp/fe-core';\nimport { MODULE_NAME } from '../constants';\n\nconst useStyles = makeStyles(() => ({\n topHeader: {\n display: 'flex',\n justifyContent: 'start',\n alignItems: 'center',\n width: '100%',\n\n '& img': {\n minWidth: '250px',\n maxWidth: '300px',\n width: 'auto',\n height: 'auto',\n },\n },\n printContainer: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n padding: '20px',\n fontWeight: '500',\n },\n date: {\n fontSize: '16px',\n },\n detailsContainer: {\n display: 'flex',\n flexDirection: 'column',\n padding: '12px',\n width: '100%',\n },\n detailRow: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n padding: '4px',\n },\n detailName: {\n fontWeight: '600',\n fontSize: '16px',\n textTransform: 'uppercase',\n },\n detailValue: {\n fontWeight: '500',\n backgroundColor: '#f5f5f5',\n padding: '6px',\n borderRadius: '8px',\n fontSize: '15px',\n },\n containerPadding: {\n padding: '32px',\n },\n dividerMargin: {\n margin: '12px 0',\n },\n sectionTitle: {\n fontWeight: '700',\n fontSize: '18px',\n textTransform: 'uppercase',\n marginBottom: '12px',\n },\n}));\n\nconst PayrollBenefitPrintTemplate = forwardRef(({ benefitAttachments }, ref) => {\n if (!benefitAttachments) return null;\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(modulesManager, MODULE_NAME);\n\n return (\n <div ref={ref} className={classes.printContainer}>\n {benefitAttachments.map((benefitAttachment, index) => (\n <div key={index} className={classes.detailsContainer}>\n <div className={classes.sectionTitle}>\n {`Payment: ${benefitAttachment.benefit.code} - ${benefitAttachment.benefit.individual.firstName}, ${benefitAttachment.benefit.individual.lastName}`}\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.individual.firstName')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.individual.firstName}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.individual.lastName')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.individual.lastName}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.code')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.code}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.dateDue')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.dateDue}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.receipt')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.receipt}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.amount')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.amount}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.type')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.type}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.status')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.status}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.payedOnTime')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.payedOnTime ? 'Yes' : 'No'}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.paymentDate')}</div>\n <div className={classes.detailValue}>\n {!benefitAttachment.benefit.receipt\n ? ''\n : benefitAttachment?.bill?.datePayed}\n </div>\n </div>\n <Divider className={classes.dividerMargin} />\n </div>\n ))}\n </div>\n );\n});\n\nexport default PayrollBenefitPrintTemplate;\n","/* eslint-disable max-len */\n/* eslint-disable no-param-reassign */\nimport React, { useState, useRef } from 'react';\nimport { useReactToPrint } from 'react-to-print';\nimport PrintIcon from '@material-ui/icons/Print';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport Typography from '@material-ui/core/Typography';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogContentText from '@material-ui/core/DialogContentText';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n Searcher, useModulesManager, useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport PhotoCameraOutlinedIcon from '@material-ui/icons/PhotoCameraOutlined';\nimport { fetchBenefitAttachments, deleteBenefitConsumption } from '../../actions';\nimport {\n DEFAULT_PAGE_SIZE, ROWS_PER_PAGE_OPTIONS, PAYROLL_STATUS, PAYMENT_METHOD,\n} from '../../constants';\nimport BenefitConsumptionFilterModal from './BenefitConsumptionFilterModal';\nimport ErrorSummaryModal from './dialogs/ErrorSummaryModal';\nimport { mutationLabel } from '../../utils/string-utils';\nimport AdditionalFieldsDialog from './dialogs/AdditionalFieldsDialog';\nimport PayrollBenefitPrintTemplate from '../PayrollBenefitPrintTemplate';\n\nfunction BenefitConsumptionSearcherModal({\n fetchBenefitAttachments,\n fetchingBenefitAttachments,\n fetchedBenefitAttachments,\n errorBenefitAttachments,\n benefitAttachments,\n benefitAttachmentsPageInfo,\n benefitAttachmentsTotalCount,\n payrollUuid,\n reconciledMode,\n payrollDetail,\n deleteBenefitConsumption,\n}) {\n const modulesManager = useModulesManager();\n const { formatMessage, formatMessageWithValues } = useTranslations('payroll', modulesManager);\n const [selectedBenefitAttachment, setSelectedBenefitAttachment] = useState(null);\n const [openConfirmDialog, setOpenConfirmDialog] = useState(false);\n const [benefitToDelete, setBenefitToDelete] = useState(null);\n const payrollPrintTemplateRef = useRef(null);\n\n const handlePrint = useReactToPrint({\n documentTitle: `${payrollUuid}`,\n });\n\n const fetch = (params) => {\n fetchBenefitAttachments(modulesManager, params);\n };\n\n const defaultFilters = () => {\n const filters = {\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n payrollUuid: {\n value: payrollUuid,\n filter: `payrollUuid: \"${payrollUuid}\"`,\n },\n };\n if (reconciledMode && payrollDetail.paymentMethod !== PAYMENT_METHOD.STRATEGY_ONLINE_PAYMENT\n && payrollDetail.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) {\n filters.benefit_Status = {\n value: 'RECONCILED',\n filter: `benefit_Status: ${PAYROLL_STATUS.RECONCILED}`,\n };\n }\n return filters;\n };\n\n const defaultFiltersArray = () => {\n const filters = [\n 'isDeleted: false',\n `first: ${DEFAULT_PAGE_SIZE}`,\n `payrollUuid: \"${payrollUuid}\"`,\n ];\n if (reconciledMode && payrollDetail.paymentMethod !== PAYMENT_METHOD.STRATEGY_ONLINE_PAYMENT\n && payrollDetail.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) {\n filters.push(`benefit_Status: ${PAYROLL_STATUS.RECONCILED}`);\n }\n return filters;\n };\n\n const headers = () => [\n 'benefitConsumption.photo',\n 'benefitConsumption.individual.firstName',\n 'benefitConsumption.individual.lastName',\n 'benefitConsumption.amount',\n 'benefitConsumption.receipt',\n 'benefitConsumption.dateDue',\n 'benefitConsumption.payedOnTime',\n 'benefitConsumption.paymentDate',\n 'benefitConsumption.status',\n '',\n '',\n ];\n\n const confirmDeleteBenefitConsumption = (benefit) => {\n setBenefitToDelete(benefit);\n setOpenConfirmDialog(true);\n };\n\n const handleDeleteBenefitConsumption = () => {\n deleteBenefitConsumption(\n benefitToDelete.benefit,\n formatMessageWithValues('payroll.mutation.deleteLabel', mutationLabel(benefitToDelete.benefit.code)),\n );\n setOpenConfirmDialog(false);\n setBenefitToDelete(null);\n const filters = defaultFiltersArray();\n fetchBenefitAttachments(modulesManager, filters); // Refresh the searcher after deletion\n };\n\n const checkBenefitDueDate = (benefitAttachment) => {\n if (!benefitAttachment.benefit.receipt) {\n return ''; // return empty string if datePayed is null\n }\n\n return (\n benefitAttachment.benefit && benefitAttachment.benefit.dateDue >= benefitAttachment.bill.datePayed\n ) ? 'True' : 'False';\n };\n\n const itemFormatters = () => [\n (benefitAttachment) => (\n benefitAttachment.benefit.receipt ? (\n <PhotoCameraOutlinedIcon style={{ fontSize: 150 }} />\n ) : null\n ),\n (benefitAttachment) => benefitAttachment?.benefit?.individual?.firstName,\n (benefitAttachment) => benefitAttachment?.benefit?.individual?.lastName,\n (benefitAttachment) => benefitAttachment?.bill?.amountTotal,\n (benefitAttachment) => benefitAttachment?.benefit?.receipt,\n (benefitAttachment) => benefitAttachment?.benefit?.dateDue,\n (benefitAttachment) => checkBenefitDueDate(benefitAttachment),\n (benefitAttachment) => (\n !benefitAttachment.benefit.receipt\n ? ''\n : benefitAttachment?.bill?.datePayed\n ),\n (benefitAttachment) => benefitAttachment?.benefit?.status,\n (benefitAttachment) => (\n <AdditionalFieldsDialog\n jsonExt={benefitAttachment?.benefit?.jsonExt}\n buttonLabel=\"payroll.additonalFields.showAdditionalFields\"\n title=\"payroll.additonalFields.label\"\n />\n ),\n (benefitAttachment) => (\n <Button\n onClick={() => {}}\n variant=\"contained\"\n color=\"primary\"\n disabled={!!benefitAttachment.benefit.receipt}\n >\n {formatMessage('payroll.summary.confirm')}\n </Button>\n ),\n (benefitAttachment) => (\n (payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_ONLINE_PAYMENT\n || payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) && payrollDetail.status === PAYROLL_STATUS.RECONCILED\n && benefitAttachment.benefit.status !== 'RECONCILED' && (\n <Button\n onClick={() => setSelectedBenefitAttachment(benefitAttachment)}\n variant=\"contained\"\n style={{ backgroundColor: '#b80000', color: 'white' }}\n >\n {formatMessage('payroll.summary.benefit_error')}\n </Button>\n )\n ),\n (benefitAttachment) => (\n payrollDetail.status === PAYROLL_STATUS.PENDING_APPROVAL\n && benefitAttachment.benefit.status !== 'PENDING_DELETION' && (\n <Button\n onClick={() => confirmDeleteBenefitConsumption(benefitAttachment)}\n variant=\"contained\"\n style={{ backgroundColor: '#b80000', color: 'white' }}\n >\n {formatMessage('payroll.summary.benefit_delete')}\n </Button>\n )\n ),\n ];\n\n const rowIdentifier = (benefitAttachment) => benefitAttachment.id;\n\n const sorts = () => [\n ['benefit_photo', false],\n ['benefit_individual_FirstName', true],\n ['benefit_individual_LastName', true],\n ['bill_amountTotal', true],\n ['benefit_receipt', true],\n ['benefit_dateDue', true],\n ];\n\n const benefitConsumptionFilterModal = ({ filters, onChangeFilters }) => (\n <BenefitConsumptionFilterModal filters={filters} onChangeFilters={onChangeFilters} />\n );\n\n return (\n <>\n <div>\n <Button\n size=\"small\"\n variant=\"contained\"\n color=\"primary\"\n startIcon={<PrintIcon />}\n onClick={(e) => {\n e.preventDefault();\n handlePrint(null, () => payrollPrintTemplateRef.current);\n }}\n >\n <Typography variant=\"subtitle1\">Print</Typography>\n </Button>\n </div>\n <div>\n <Searcher\n module=\"payroll\"\n FilterPane={benefitConsumptionFilterModal}\n fetch={fetch}\n items={benefitAttachments}\n itemsPageInfo={benefitAttachmentsPageInfo}\n fetchingItems={fetchingBenefitAttachments}\n fetchedItems={fetchedBenefitAttachments}\n errorItems={errorBenefitAttachments}\n tableTitle={formatMessageWithValues('benefitAttachment.searcherResultsTitle', { benefitAttachmentsTotalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n defaultFilters={defaultFilters()}\n />\n {selectedBenefitAttachment && (\n <ErrorSummaryModal\n open={!!selectedBenefitAttachment}\n onClose={() => setSelectedBenefitAttachment(null)}\n benefitAttachment={selectedBenefitAttachment}\n />\n )}\n <Dialog\n open={openConfirmDialog}\n onClose={() => setOpenConfirmDialog(false)}\n >\n <DialogTitle>{formatMessage('benefitConsumption.delete.confirm.title')}</DialogTitle>\n <DialogContent>\n <DialogContentText>\n {formatMessage('benefitConsumption.delete.confirm.message')}\n </DialogContentText>\n </DialogContent>\n <DialogActions>\n <Button onClick={() => setOpenConfirmDialog(false)} color=\"primary\">\n {formatMessage('benefitConsumption.cancel')}\n </Button>\n <Button onClick={handleDeleteBenefitConsumption} color=\"primary\" autoFocus>\n {formatMessage('benefitConsumption.confirm')}\n </Button>\n </DialogActions>\n </Dialog>\n <div style={{ display: 'none' }}>\n <PayrollBenefitPrintTemplate\n ref={payrollPrintTemplateRef}\n benefitAttachments={benefitAttachments}\n />\n </div>\n </div>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingBenefitAttachments: state.payroll.fetchingBenefitAttachments,\n fetchedBenefitAttachments: state.payroll.fetchedBenefitAttachments,\n errorBenefitAttachments: state.payroll.errorBenefitAttachments,\n benefitAttachments: state.payroll.benefitAttachments,\n benefitAttachmentsPageInfo: state.payroll.benefitAttachmentsPageInfo,\n benefitAttachmentsTotalCount: state.payroll.benefitAttachmentsTotalCount,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators(\n { fetchBenefitAttachments, deleteBenefitConsumption },\n dispatch,\n);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(BenefitConsumptionSearcherModal);\n","import { baseApiUrl } from '@stssocialst-stp/fe-core';\n\nexport default function downloadPayroll(payrollId, payrollFileName, blank = true) {\n const url = new URL(\n `${window.location.origin}${baseApiUrl}/payroll/csv_reconciliation/`,\n );\n url.searchParams.append('payroll_id', payrollId);\n url.searchParams.append('blank', blank);\n url.searchParams.append('payroll_file_name', payrollFileName);\n\n fetch(url)\n .then((response) => response.blob())\n .then((blob) => {\n const link = document.createElement('a');\n link.href = URL.createObjectURL(blob);\n link.download = blank ? `reconciliation_${payrollFileName}.csv` : payrollFileName;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n })\n .catch((error) => {\n // eslint-disable-next-line no-console\n console.error('Export failed, reason: ', error);\n });\n}\n","/* eslint-disable max-len */\nimport React, { useEffect, useState } from 'react';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n Paper,\n Grid,\n} from '@material-ui/core';\nimport Typography from '@material-ui/core/Typography';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport { MODULE_NAME, BENEFIT_CONSUMPTION_STATUS, PAYMENT_METHOD } from '../../../constants';\nimport {\n closePayroll, fetchPayroll, makePaymentForPayroll, rejectPayroll,\n} from '../../../actions';\nimport { mutationLabel } from '../../../utils/string-utils';\nimport BenefitConsumptionSearcherModal from '../BenefitConsumptionSearcherModal';\nimport downloadPayroll from '../../../utils/export';\n\nfunction PaymentApproveForPaymentDialog({\n classes,\n payroll,\n closePayroll,\n rejectPayroll,\n payrollDetail,\n fetchPayroll,\n makePaymentForPayroll,\n}) {\n const modulesManager = useModulesManager();\n const [payrollUuid] = useState(payrollDetail?.id ?? null);\n const [isOpen, setIsOpen] = useState(false);\n const [totalBeneficiaries, setTotalBeneficiaries] = useState(0);\n const [selectedBeneficiaries, setSelectedBeneficiaries] = useState(0);\n const [approvedBeneficiaries, setApprovedBeneficiaries] = useState(0);\n const [totalBillAmount, setTotalBillAmount] = useState(0);\n const [totalReconciledBillAmount, setTotalReconciledBillAmount] = useState(0);\n\n const handleOpen = () => {\n if (payrollUuid) {\n fetchPayroll(modulesManager, [`id: \"${payrollUuid}\"`]);\n }\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setIsOpen(false);\n };\n\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n\n useEffect(() => {\n if (isOpen && Object.keys(payroll).length > 0) {\n // Calculate total benefits and reconciled benefits\n const total = payroll.benefitConsumption?.length ?? 0;\n const selected = (payroll.benefitConsumption ?? []).filter(\n (benefit) => benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED,\n ).length;\n const approved = (payroll.benefitConsumption ?? []).filter(\n (benefit) => benefit.status === BENEFIT_CONSUMPTION_STATUS.APPROVE_FOR_PAYMENT,\n ).length;\n\n setTotalBeneficiaries(total);\n setSelectedBeneficiaries(selected);\n setApprovedBeneficiaries(approved);\n\n let totalAmount = 0;\n let reconciledAmount = 0;\n if (payroll?.benefitConsumption) {\n payroll.benefitConsumption.forEach((benefit) => {\n if (benefit.benefitAttachment && benefit.benefitAttachment.length > 0) {\n benefit.benefitAttachment.forEach((attachment) => {\n if (attachment.bill && attachment.bill.amountTotal) {\n totalAmount += parseFloat(attachment.bill.amountTotal);\n if (benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED) {\n reconciledAmount += parseFloat(attachment.bill.amountTotal);\n }\n }\n });\n }\n });\n }\n setTotalBillAmount(totalAmount);\n setTotalReconciledBillAmount(reconciledAmount);\n }\n }, [isOpen, payroll]);\n\n const closePayrollCallback = () => {\n handleClose();\n closePayroll(\n payrollDetail,\n formatMessageWithValues('payroll.mutation.closeLabel', mutationLabel(payrollDetail)),\n );\n };\n\n const rejectPayrollCallback = () => {\n handleClose();\n rejectPayroll(\n payrollDetail,\n formatMessageWithValues('payroll.mutation.closeLabel', mutationLabel(payrollDetail)),\n );\n };\n\n const makePaymentForPayrollCallback = () => {\n handleClose();\n makePaymentForPayroll(\n payrollDetail,\n formatMessageWithValues('payroll.mutation.closeLabel', mutationLabel(payrollDetail)),\n );\n };\n\n const downloadPayrollData = (payrollUuid, payrollName) => {\n downloadPayroll(payrollUuid, payrollName);\n };\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"contained\"\n color=\"primary\"\n className={classes.button}\n >\n {formatMessage('payroll.viewReconciliationSummary')}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%,-50%)',\n width: '75%',\n maxWidth: '75%',\n },\n }}\n >\n <DialogTitle\n style={{\n marginTop: '10px',\n }}\n >\n {formatMessageWithValues('payroll.reconciliationSummary', { payrollName: payrollDetail.name })}\n </DialogTitle>\n <DialogContent>\n (\n <Grid container spacing={2}>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.selectedBeneficiaries')}\n </Typography>\n <Typography variant=\"body1\">\n {formatMessageWithValues('payroll.summary.beneficiariesCount', { selectedBeneficiaries, totalBeneficiaries })}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalAmountForInvoice')}\n </Typography>\n <Typography variant=\"body1\">\n {totalBillAmount}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.deliveredReconciliation')}\n </Typography>\n <Typography variant=\"body1\">\n {totalReconciledBillAmount}\n </Typography>\n </Paper>\n </Grid>\n </Grid>\n )}\n <div\n style={{ backgroundColor: '#DFEDEF' }}\n >\n <BenefitConsumptionSearcherModal payrollUuid={payrollDetail.id} payrollDetail={payrollDetail} />\n </div>\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n width: '100%',\n }}\n >\n <div style={{ maxWidth: '3000px' }}>\n <div style={{ float: 'left' }}>\n <Button\n onClick={() => closePayrollCallback(payrollDetail)}\n variant=\"contained\"\n color=\"primary\"\n disabled={\n payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_ONLINE_PAYMENT\n ? approvedBeneficiaries === 0\n : selectedBeneficiaries === 0\n }\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.approveAndClose')}\n </Button>\n <Button\n onClick={() => makePaymentForPayrollCallback(payrollDetail)}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT\n ? formatMessage('payroll.bistp.submitPayment')\n : formatMessage('payroll.summary.makePayment')}\n </Button>\n <Button\n onClick={() => downloadPayrollData(payrollDetail.id, payrollDetail.name)}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.download')}\n </Button>\n <Button\n onClick={() => rejectPayrollCallback(payrollDetail)}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.reject')}\n </Button>\n </div>\n <div style={{\n float: 'right',\n paddingRight: '16px',\n }}\n >\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{ margin: '0 16px' }}\n >\n {formatMessage('payroll.summary.close')}\n </Button>\n </div>\n </div>\n </DialogActions>\n </Dialog>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n payroll: state.payroll.payroll,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n closePayroll,\n rejectPayroll,\n fetchPayroll,\n makePaymentForPayroll,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentApproveForPaymentDialog);\n","import { useState, useEffect, useRef, useCallback } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { graphql } from '@stssocialst-stp/fe-core';\n\nconst POLL_INTERVAL_MS = 5000;\nconst TIMEOUT_MS = 600000;\n\nconst COUNT_QUERY = (payrollUuid) => `\n {\n benefitConsumptionByPayroll(payrollUuid: \"${payrollUuid}\", first: 0, isDeleted: false) {\n totalCount\n }\n }\n`;\n\nexport default function useAsyncPayrollProgress({ payrollUuid, payrollStatus }) {\n const dispatch = useDispatch();\n const [benefitCount, setBenefitCount] = useState(0);\n const [isGenerating, setIsGenerating] = useState(false);\n const [timedOut, setTimedOut] = useState(false);\n const pollRef = useRef(null);\n const startTimeRef = useRef(null);\n const prevCountRef = useRef(0);\n const stableCountRounds = useRef(0);\n\n const stopPolling = useCallback(() => {\n if (pollRef.current) {\n clearInterval(pollRef.current);\n pollRef.current = null;\n }\n }, []);\n\n const fetchCount = useCallback(() => {\n if (!payrollUuid) return;\n dispatch(graphql(COUNT_QUERY(payrollUuid), 'POLL_BENEFIT_COUNT'))\n .then((response) => {\n const count = response?.payload?.data?.benefitConsumptionByPayroll?.totalCount ?? 0;\n\n if (count === 0) {\n setBenefitCount(count);\n setIsGenerating(true);\n stableCountRounds.current = 0;\n prevCountRef.current = count;\n return;\n }\n\n setBenefitCount(count);\n\n if (count === prevCountRef.current) {\n stableCountRounds.current += 1;\n } else {\n stableCountRounds.current = 0;\n }\n prevCountRef.current = count;\n\n if (stableCountRounds.current >= 2) {\n setIsGenerating(false);\n stopPolling();\n }\n })\n .catch(() => {\n setBenefitCount((c) => Math.max(c, 0));\n });\n }, [payrollUuid, dispatch, stopPolling]);\n\n useEffect(() => {\n const shouldPoll = payrollUuid && payrollStatus === 'PENDING_APPROVAL';\n\n if (shouldPoll && !pollRef.current) {\n setTimedOut(false);\n startTimeRef.current = Date.now();\n stableCountRounds.current = 0;\n prevCountRef.current = 0;\n\n fetchCount();\n\n pollRef.current = setInterval(() => {\n if (Date.now() - startTimeRef.current >= TIMEOUT_MS) {\n setIsGenerating(false);\n setTimedOut(true);\n stopPolling();\n return;\n }\n fetchCount();\n }, POLL_INTERVAL_MS);\n }\n\n if (!shouldPoll && pollRef.current) {\n setIsGenerating(false);\n stopPolling();\n }\n\n return () => stopPolling();\n }, [payrollUuid, payrollStatus, fetchCount, stopPolling]);\n\n return { isGenerating, benefitCount, timedOut };\n}","/* eslint-disable max-len */\nimport React, { useState, useEffect } from 'react';\nimport {\n Paper, Grid, LinearProgress, Typography,\n} from '@material-ui/core';\nimport {\n Contributions,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport { makeStyles } from '@material-ui/styles';\nimport Button from '@material-ui/core/Button';\nimport {\n BENEFIT_CONSUMPTION_LIST_TAB_VALUE,\n PAYROLL_TABS_LABEL_CONTRIBUTION_KEY,\n PAYROLL_TABS_PANEL_CONTRIBUTION_KEY,\n PAYROLL_STATUS,\n MODULE_NAME,\n PAYMENT_METHOD,\n} from '../../constants';\nimport PayrollPaymentDataUploadDialog from './dialogs/PayrollPaymentDataUploadDialog';\nimport PaymentApproveForPaymentSummary from './dialogs/PaymentApproveForPaymentSummary';\nimport downloadPayroll from '../../utils/export';\nimport useAsyncPayrollProgress from '../../hooks/useAsyncPayrollProgress';\n\nconst useStyles = makeStyles((theme) => ({\n paper: theme.paper.paper,\n tableTitle: theme.table.title,\n tabs: {\n display: 'flex',\n alignItems: 'center',\n },\n selectedTab: {\n borderBottom: '4px solid white',\n },\n unselectedTab: {\n borderBottom: '4px solid transparent',\n },\n button: {\n marginLeft: 'auto',\n padding: theme.spacing(1),\n fontSize: '0.875rem',\n textTransform: 'none',\n },\n}));\n\nfunction PayrollTab({\n rights, setConfirmedAction, payrollUuid, isInTask, payroll, isPayrollFromFailedInvoices,\n}) {\n const classes = useStyles();\n\n const [activeTab, setActiveTab] = useState(BENEFIT_CONSUMPTION_LIST_TAB_VALUE);\n\n const isSelected = (tab) => tab === activeTab;\n\n const tabStyle = (tab) => (isSelected(tab) ? classes.selectedTab : classes.unselectedTab);\n\n const handleChange = (_, tab) => setActiveTab(tab);\n\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n const { isGenerating, benefitCount, timedOut } = useAsyncPayrollProgress({\n payrollUuid,\n payrollStatus: payroll?.status,\n });\n\n const [generationComplete, setGenerationComplete] = useState(false);\n const [refreshBenefitsKey, setRefreshBenefitsKey] = useState(0);\n\n useEffect(() => {\n if (!isGenerating && benefitCount > 0 && !generationComplete) {\n setGenerationComplete(true);\n setRefreshBenefitsKey((k) => k + 1);\n }\n }, [isGenerating, benefitCount, generationComplete]);\n\n const downloadPayrollData = (payrollUuid, payrollName) => {\n downloadPayroll(payrollUuid, payrollName);\n };\n\n return (\n <Paper className={classes.paper}>\n {(isGenerating || timedOut) && payrollUuid && !isPayrollFromFailedInvoices && (\n <Grid container spacing={2} style={{ padding: '16px' }}>\n <Grid item xs={12}>\n <Typography variant=\"body1\">\n {timedOut\n ? formatMessage('payroll.async.timedOut')\n : formatMessage('payroll.async.generating')}\n </Typography>\n {!timedOut && (\n <LinearProgress\n variant=\"indeterminate\"\n style={{ marginTop: '8px' }}\n />\n )}\n <Typography variant=\"caption\" style={{ display: 'block', marginTop: '4px' }}>\n {!timedOut && formatMessage('payroll.async.createdSoFar', { benefitCount })}\n </Typography>\n <Typography variant=\"caption\" style={{ display: 'block' }}>\n {!timedOut && formatMessage('payroll.async.note')}\n </Typography>\n </Grid>\n </Grid>\n )}\n <Grid container className={`${classes.tableTitle} ${classes.tabs}`}>\n <div style={{ width: '100%' }}>\n <div style={{ float: 'left' }}>\n <Contributions\n contributionKey={PAYROLL_TABS_LABEL_CONTRIBUTION_KEY}\n rights={rights}\n value={activeTab}\n onChange={handleChange}\n isSelected={isSelected}\n tabStyle={tabStyle}\n payroll={payroll}\n payrollUuid={payrollUuid}\n isInTask={isInTask}\n isPayrollFromFailedInvoices={isPayrollFromFailedInvoices}\n />\n </div>\n <div style={{ float: 'right', paddingRight: '16px' }}>\n {payrollUuid && !isPayrollFromFailedInvoices && (\n <Button\n onClick={() => downloadPayrollData(payrollUuid, payroll.name)}\n color=\"#DFEDEF\"\n className={classes.button}\n style={{\n border: '0px',\n marginTop: '6px',\n textTransform: 'uppercase',\n }}\n >\n {formatMessage('payroll.summary.download')}\n </Button>\n )}\n {payrollUuid && payroll?.status === PAYROLL_STATUS.APPROVE_FOR_PAYMENT && payroll.paymentMethod === PAYMENT_METHOD.STRATEGY_OFFLINE_PAYMENT\n && (\n <PayrollPaymentDataUploadDialog\n payrollUuid={payrollUuid}\n />\n )}\n {payrollUuid && payroll?.status === PAYROLL_STATUS.APPROVE_FOR_PAYMENT && payroll.paymentMethod === PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT\n && (\n <PaymentApproveForPaymentSummary\n classes={{}}\n payrollDetail={payroll}\n />\n )}\n </div>\n </div>\n </Grid>\n <Contributions\n contributionKey={PAYROLL_TABS_PANEL_CONTRIBUTION_KEY}\n rights={rights}\n value={activeTab}\n setConfirmedAction={setConfirmedAction}\n payrollUuid={payrollUuid}\n isInTask={isInTask}\n isPayrollFromFailedInvoices={isPayrollFromFailedInvoices}\n payroll={payroll}\n refreshBenefitsKey={refreshBenefitsKey}\n />\n </Paper>\n );\n}\n\nexport default PayrollTab;\n","import React, { useState, useRef, useEffect } from 'react';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\n\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n Form,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport {\n fetchPayroll,\n clearPayroll,\n createPayroll,\n} from '../../actions';\nimport {\n MODULE_NAME, PAYROLL_FROM_FAILED_INVOICES_URL_PARAM,\n RIGHT_PAYROLL_CREATE,\n} from '../../constants';\nimport { ACTION_TYPE } from '../../reducer';\nimport { mutationLabel, pageTitle } from '../../utils/string-utils';\nimport PayrollHeadPanel from '../../components/payroll/PayrollHeadPanel';\nimport PayrollTab from '../../components/payroll/PayrollTab';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n}));\n\nfunction PayrollPage({\n statePayrollUuid,\n taskPayrollUuid,\n rights,\n confirmed,\n submittingMutation,\n mutation,\n payroll,\n fetchPayroll,\n createPayroll,\n clearPayroll,\n clearConfirm,\n createPayrollFromFailedInvoices,\n journalize,\n benefitPlanId,\n}) {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const history = useHistory();\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n\n const [editedPayroll, setEditedPayroll] = useState({});\n const [payrollUuid, setPayrollUuid] = useState(null);\n const [isInTask, setIsInTask] = useState(false);\n const [readOnly, setReadOnly] = useState(false);\n const [isPayrollFromFailedInvoices, setIsPayrollFromFailedInvoices] = useState(false);\n const [confirmedAction, setConfirmedAction] = useState(() => null);\n const prevSubmittingMutationRef = useRef();\n\n const back = () => history.goBack();\n\n useEffect(() => {\n if (createPayrollFromFailedInvoices === PAYROLL_FROM_FAILED_INVOICES_URL_PARAM) {\n setIsPayrollFromFailedInvoices(true);\n }\n }, [createPayrollFromFailedInvoices, payrollUuid]);\n\n useEffect(() => {\n setPayrollUuid(statePayrollUuid ?? taskPayrollUuid);\n setIsInTask(!!taskPayrollUuid);\n }, [taskPayrollUuid, statePayrollUuid]);\n\n useEffect(() => {\n if (payrollUuid) {\n fetchPayroll(modulesManager, [`id: \"${payrollUuid}\"`]);\n }\n }, [payrollUuid]);\n\n useEffect(() => {\n if (confirmed && typeof confirmed === 'function') confirmedAction();\n return () => confirmed && clearConfirm(null);\n }, [confirmed]);\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n if (mutation?.actionType === ACTION_TYPE.DELETE_PAYROLL) {\n back();\n }\n if (mutation?.clientMutationId && (!payrollUuid || isPayrollFromFailedInvoices)) {\n fetchPayroll(modulesManager, [`clientMutationId: \"${mutation.clientMutationId}\"`]);\n setIsPayrollFromFailedInvoices(false);\n }\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n useEffect(() => {\n if (payroll) {\n setReadOnly(payroll?.id);\n if (isPayrollFromFailedInvoices) {\n setEditedPayroll({\n ...payroll, id: null, name: null, paymentCycle: null, status: null, fromFailedInvoicesPayrollId: payroll?.id,\n });\n } else {\n setEditedPayroll(payroll);\n }\n if (!payrollUuid && payroll?.id && !isPayrollFromFailedInvoices) {\n const payrollRouteRef = modulesManager.getRef('payroll.route.payroll');\n history.replace(`/${payrollRouteRef}/${payroll.id}`);\n }\n }\n }, [payroll]);\n\n useEffect(() => () => clearPayroll(), []);\n\n const mandatoryFieldsEmpty = () => {\n if (\n editedPayroll?.name\n && editedPayroll?.paymentPlan\n && editedPayroll?.paymentCycle\n && editedPayroll?.paymentMethod\n && !editedPayroll?.isDeleted) return false;\n return true;\n };\n\n const canSave = () => !mandatoryFieldsEmpty() && (!readOnly || isPayrollFromFailedInvoices);\n\n const handleSave = () => {\n createPayroll(\n editedPayroll,\n formatMessageWithValues('payroll.mutation.create', mutationLabel(payroll)),\n );\n if (benefitPlanId) {\n back();\n }\n };\n\n const actions = [];\n\n return (\n rights.includes(RIGHT_PAYROLL_CREATE) && (\n <div className={classes.page}>\n <Form\n key={payrollUuid}\n module=\"payroll\"\n title={formatMessageWithValues('payrollPage.title', pageTitle(payroll))}\n titleParams={pageTitle(payroll)}\n openDirty={isPayrollFromFailedInvoices ? true : !payrollUuid}\n benefitPlan={editedPayroll}\n edited={editedPayroll}\n onEditedChanged={setEditedPayroll}\n back={!isInTask && back}\n mandatoryFieldsEmpty={mandatoryFieldsEmpty}\n canSave={canSave}\n save={handleSave}\n HeadPanel={PayrollHeadPanel}\n Panels={[PayrollTab]}\n rights={rights}\n actions={actions}\n setConfirmedAction={setConfirmedAction}\n payrollUuid={payrollUuid}\n saveTooltip={formatMessage('tooltip.save')}\n isInTask={!!taskPayrollUuid}\n payroll={payroll}\n readOnly={readOnly}\n isPayrollFromFailedInvoices={isPayrollFromFailedInvoices}\n benefitPlanId={benefitPlanId}\n />\n </div>\n )\n );\n}\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayroll,\n createPayroll,\n clearPayroll,\n coreConfirm,\n clearConfirm,\n journalize,\n}, dispatch);\n\nconst mapStateToProps = (state, props) => ({\n statePayrollUuid: props?.match?.params?.payroll_uuid === 'null' ? null : props?.match?.params.payroll_uuid,\n createPayrollFromFailedInvoices: props?.match?.params?.createPayrollFromFailedInvoices,\n benefitPlanId: props?.match?.params?.benefitPlanId,\n rights: state.core?.user?.i_user?.rights ?? [],\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n payroll: state.payroll.payroll,\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollPage);\n","import React from 'react';\nimport _debounce from 'lodash/debounce';\n\nimport { FormControlLabel, Grid, Checkbox } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n TextInput,\n ControlledField,\n useModulesManager,\n useTranslations,\n PublishedComponent,\n decodeId,\n} from '@stssocialst-stp/fe-core';\nimport {\n CONTAINS_LOOKUP,\n DEFAULT_DEBOUNCE_TIME,\n EMPTY_STRING,\n MODULE_NAME,\n} from '../../constants';\nimport PayrollStatusPicker from './PayrollStatusPicker';\nimport PaymentMethodPicker from '../../pickers/PaymentMethodPicker';\n\nconst useStyles = makeStyles((theme) => ({\n form: {\n padding: '0 0 10px 0',\n width: '100%',\n },\n item: {\n padding: theme.spacing(1),\n },\n}));\n\nfunction PayrollFilter({\n filters, onChangeFilters, statusReadOnly = false,\n}) {\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n const debouncedOnChangeFilters = _debounce(onChangeFilters, DEFAULT_DEBOUNCE_TIME);\n\n const filterTextFieldValue = (filterName) => filters?.[filterName]?.value ?? EMPTY_STRING;\n\n const filterValue = (filterName) => filters?.[filterName]?.value ?? null;\n\n const onChangeStringFilter = (filterName, lookup = null) => (value) => {\n if (lookup) {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}_${lookup}: \"${value}\"`,\n },\n ]);\n } else {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}: \"${value}\"`,\n },\n ]);\n }\n };\n\n return (\n <Grid container className={classes.form}>\n <Grid item xs={3} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label={formatMessage('payroll.name')}\n value={filterTextFieldValue('name')}\n onChange={onChangeStringFilter('name', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={3} className={classes.item}>\n <PublishedComponent\n pubRef=\"contributionPlan.PaymentPlanPicker\"\n filters={filters}\n value={filterValue('paymentPlan_Id')}\n onChange={(paymentPlan) => onChangeFilters([\n {\n id: 'paymentPlan_Id',\n value: paymentPlan,\n filter: `paymentPlan_Id: \"${paymentPlan?.id && decodeId(paymentPlan.id)}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={3} className={classes.item}>\n <PublishedComponent\n pubRef=\"paymentCycle.PaymentCyclePicker\"\n withLabel\n withPlaceholder\n filters={filters}\n value={filterValue('paymentCycle_Id')}\n onChange={(paymentCycle) => onChangeFilters([\n {\n id: 'paymentCycle_Id',\n value: paymentCycle,\n filter: `paymentCycle_Id: \"${paymentCycle?.id && decodeId(paymentCycle.id)}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PayrollStatusPicker\n withNull\n nullLabel={formatMessage('any')}\n label={formatMessage('paymentMethod')}\n value={filterValue('status')}\n readOnly={statusReadOnly}\n onChange={(value) => onChangeFilters([\n {\n id: 'status',\n value,\n filter: value ? `status: ${value}` : EMPTY_STRING,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PaymentMethodPicker\n withNull\n nullLabel={formatMessage('any')}\n label={formatMessage('payroll.paymentMethod')}\n value={filterValue('paymentMethod')}\n onChange={(value) => onChangeFilters([\n {\n id: 'paymentMethod',\n value,\n filter: `paymentMethod: \"${value}\"`,\n },\n ])}\n />\n </Grid>\n <ControlledField\n module=\"payroll\"\n id=\"payrollFilter.showHistory\"\n field={(\n <Grid item xs={12} className={classes.item}>\n <FormControlLabel\n control={(\n <Checkbox\n color=\"primary\"\n checked={filters?.isDeleted?.value}\n onChange={() => onChangeFilters([\n {\n id: 'isDeleted',\n value: !filters?.isDeleted?.value,\n filter: `isDeleted: ${!filters?.isDeleted?.value}`,\n },\n ])}\n />\n )}\n label={formatMessage('tooltip.isDeleted')}\n />\n </Grid>\n )}\n />\n </Grid>\n );\n}\n\nexport default PayrollFilter;\n","import React, { useState, useRef, useEffect } from 'react';\nimport { connect, useSelector } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport { IconButton, Tooltip } from '@material-ui/core';\nimport VisibilityIcon from '@material-ui/icons/Visibility';\nimport DeleteIcon from '@material-ui/icons/Delete';\n\nimport {\n Searcher,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport LinearProgress from '@material-ui/core/LinearProgress';\nimport PayrollFilter from './PayrollFilter';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME, PAYROLL_PAYROLL_ROUTE,\n RIGHT_PAYROLL_SEARCH, ROWS_PER_PAGE_OPTIONS, PAYROLL_STATUS, PAYMENT_METHOD,\n} from '../../constants';\nimport { mutationLabel, pageTitle } from '../../utils/string-utils';\nimport { fetchPayrolls, deletePayrolls } from '../../actions';\n\nfunction PayrollSearcher({\n deletePayrolls,\n fetchingPayrolls,\n fetchedPayrolls,\n errorPayrolls,\n payrolls,\n pageInfo,\n totalCount,\n fetchPayrolls,\n coreConfirm,\n clearConfirm,\n confirmed,\n submittingMutation,\n mutation,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n\n const [payrollToDelete, setPayrollToDelete] = useState(null);\n const [deletedPayrollUuids, setDeletedPayrollUuids] = useState([]);\n const prevSubmittingMutationRef = useRef();\n\n const openDeletePayrollConfirmDialog = () => {\n coreConfirm(\n formatMessageWithValues('payroll.delete.confirm.title', pageTitle(payrollToDelete)),\n formatMessage('payroll.delete.confirm.message'),\n );\n };\n\n useEffect(() => payrollToDelete && openDeletePayrollConfirmDialog(), [payrollToDelete]);\n\n useEffect(() => {\n if (payrollToDelete && confirmed) {\n deletePayrolls(\n payrollToDelete,\n formatMessageWithValues('payroll.mutation.deleteLabel', mutationLabel(payrollToDelete)),\n );\n setDeletedPayrollUuids([...deletedPayrollUuids, payrollToDelete.id]);\n }\n if (payrollToDelete && confirmed !== null) {\n setPayrollToDelete(null);\n }\n return () => confirmed && clearConfirm(false);\n }, [confirmed]);\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n const headers = () => [\n 'payroll.name',\n 'payroll.benefitPlan',\n 'payroll.paymentPoint',\n 'payroll.status',\n 'payroll.paymentMethod',\n 'payroll.bistp.progress',\n 'emptyLabel',\n ];\n\n const sorts = () => [\n ['name', true],\n ['benefitPlanNameCode', true],\n ['paymentPoint', true],\n ['status', true],\n ['paymentMethod', true],\n ];\n\n const renderBistpProgress = (payroll) => {\n if (payroll.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) return null;\n const summary = payroll.bistpSummary || {};\n const total = summary.total || 0;\n const reconciled = summary.reconciled || 0;\n const progress = total > 0 ? (reconciled / total) * 100 : 0;\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, minWidth: 120 }}>\n <LinearProgress\n variant=\"determinate\"\n value={progress}\n style={{ flex: 1, height: 8, borderRadius: 4 }}\n />\n <span style={{ fontSize: '0.75rem', whiteSpace: 'nowrap' }}>\n {reconciled}/{total}\n </span>\n </div>\n );\n };\n\n const defaultFilters = () => ({\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n });\n\n const fetch = (params) => fetchPayrolls(modulesManager, params);\n\n const rowIdentifier = (payroll) => payroll.id;\n\n const openPayroll = (payroll) => rights.includes(RIGHT_PAYROLL_SEARCH) && history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}/${payroll?.id}`,\n );\n\n const onDelete = (payroll) => setPayrollToDelete(payroll);\n\n const itemFormatters = () => [\n (payroll) => payroll.name,\n (payroll) => payroll.benefitPlanNameCode ?? '',\n (payroll) => (payroll.paymentPoint\n ? `${payroll.paymentPoint.name}` : ''),\n (payroll) => (payroll.status\n ? `${payroll.status}` : ''),\n (payroll) => (payroll.paymentMethod\n ? `${payroll.paymentMethod}` : ''),\n (payroll) => renderBistpProgress(payroll),\n (payroll) => (\n <Tooltip title={formatMessage('tooltip.viewDetails')}>\n <IconButton\n onClick={() => openPayroll(payroll)}\n >\n <VisibilityIcon />\n </IconButton>\n </Tooltip>\n ),\n (payroll) => (\n <Tooltip title={formatMessage('tooltip.delete')}>\n <IconButton\n onClick={() => onDelete(payroll)}\n disabled={deletedPayrollUuids.includes(payroll.id) || payroll.status !== PAYROLL_STATUS.PENDING_APPROVAL}\n >\n <DeleteIcon />\n </IconButton>\n </Tooltip>\n ),\n ];\n\n const onDoubleClick = (payroll) => openPayroll(payroll);\n\n const payrollFilter = ({ filters, onChangeFilters }) => (\n <PayrollFilter filters={filters} onChangeFilters={onChangeFilters} />\n );\n\n const isRowDisabled = (_, payroll) => deletedPayrollUuids.includes(payroll.id);\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={payrollFilter}\n fetch={fetch}\n items={payrolls}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPayrolls}\n fetchingItems={fetchingPayrolls}\n errorItems={errorPayrolls}\n tableTitle={formatMessageWithValues('payrollSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n onDoubleClick={onDoubleClick}\n defaultFilters={defaultFilters()}\n rowDisabled={isRowDisabled}\n rowLocked={isRowDisabled}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPayrolls: state.payroll.fetchingPayrolls,\n fetchedPayrolls: state.payroll.fetchedPayrolls,\n errorPayrolls: state.payroll.errorPayrolls,\n payrolls: state.payroll.payrolls,\n pageInfo: state.payroll.payrollsPageInfo,\n totalCount: state.payroll.payrollsTotalCount,\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayrolls,\n deletePayrolls,\n journalize,\n clearConfirm,\n coreConfirm,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollSearcher);\n","import React from 'react';\nimport { useSelector } from 'react-redux';\n\nimport { Fab } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\nimport AddIcon from '@material-ui/icons/Add';\n\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n useHistory,\n withTooltip,\n} from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME,\n PAYROLL_PAYROLL_ROUTE,\n RIGHT_PAYROLL_CREATE,\n RIGHT_PAYROLL_SEARCH,\n} from '../../constants';\nimport PayrollSearcher from '../../components/payroll/PayrollSearcher';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n fab: theme.fab,\n}));\n\nfunction PayrollsPage() {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const history = useHistory();\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n const onCreate = () => history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}`,\n );\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.page.title')} />\n {rights.includes(RIGHT_PAYROLL_SEARCH)\n && <PayrollSearcher />}\n {rights.includes(RIGHT_PAYROLL_CREATE)\n && withTooltip(\n <div className={classes.fab}>\n <Fab color=\"primary\" onClick={onCreate}>\n <AddIcon />\n </Fab>\n </div>,\n formatMessage('tooltip.createButton'),\n )}\n </div>\n );\n}\n\nexport default PayrollsPage;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport { IconButton, Tooltip } from '@material-ui/core';\nimport DownloadIcon from '@material-ui/icons/CloudDownload';\n\nimport {\n Searcher,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME,\n ROWS_PER_PAGE_OPTIONS, PAYROLL_PAYMENT_FILE_STATUS,\n} from '../../constants';\nimport { fetchPayrollPaymentFiles } from '../../actions';\nimport downloadPayroll from '../../utils/export';\nimport AdditionalFieldsDialog from './dialogs/AdditionalFieldsDialog';\n\nfunction PayrollPaymentFilesSearcher({\n fetchingPayrollFiles,\n fetchedPayrollFiles,\n errorPayrollFiles,\n files,\n pageInfo,\n totalCount,\n fetchPayrollPaymentFiles,\n payrollUuid,\n}) {\n const modulesManager = useModulesManager();\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n\n const headers = () => [\n 'payrollPaymentFile.fileName',\n 'payrollPaymentFile.status',\n 'payrollPaymentFile.error',\n 'payrollPaymentFile.download',\n '',\n ];\n\n const defaultFilters = () => {\n const filters = {\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n };\n if (payrollUuid) {\n filters.payrollId = {\n value: payrollUuid,\n filter: `payroll_Id: \"${payrollUuid}\"`,\n };\n }\n return filters;\n };\n\n const download = (payrollId, fileName) => {\n downloadPayroll(payrollId, fileName, false);\n };\n\n const fetchFiles = (params) => fetchPayrollPaymentFiles(modulesManager, params);\n\n const rowIdentifier = (file) => file.fileName;\n\n const itemFormatters = () => [\n (file) => file.fileName,\n (file) => file.status,\n (file) => file.error,\n (file) => (\n <Tooltip title={formatMessage('tooltip.download')}>\n <IconButton\n onClick={() => download(payrollUuid, file.fileName)}\n disabled={![PAYROLL_PAYMENT_FILE_STATUS.SUCCESS,\n PAYROLL_PAYMENT_FILE_STATUS.PARTIAL_SUCCESS].includes(file.status)}\n >\n <DownloadIcon />\n </IconButton>\n </Tooltip>\n ),\n (file) => (\n <AdditionalFieldsDialog\n jsonExt={file?.jsonExt}\n buttonLabel=\"payroll.summaryUpload\"\n title=\"payroll.summaryUpload\"\n />\n ),\n ];\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={null}\n fetch={fetchFiles}\n items={files}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPayrollFiles}\n fetchingItems={fetchingPayrollFiles}\n errorItems={errorPayrollFiles}\n tableTitle={formatMessageWithValues('payrollPaymentFilesSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n defaultFilters={defaultFilters()}\n />\n );\n}\nconst mapStateToProps = (state) => ({\n fetchingPayrollFiles: state.payroll.fetchingPayrollFiles,\n fetchedPayrollFiles: state.payroll.fetchedPayrollFiles,\n errorPayrollFiles: state.payroll.errorPayrollFiles,\n files: state.payroll.payrollFiles,\n pageInfo: state.payroll.payrollFilesPageInfo,\n totalCount: state.payroll.payrollFilesTotalCount,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayrollPaymentFiles,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollPaymentFilesSearcher);\n","import React, { useState } from 'react';\nimport { useSelector } from 'react-redux';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport {\n useTranslations,\n useModulesManager,\n} from '@stssocialst-stp/fe-core';\nimport PayrollPaymentFilesSearcher from '../PayrollPaymentFilesSearcher';\nimport { MODULE_NAME } from '../../../constants';\n\nfunction PayrollReconciliationFilesDialog({\n payroll, classes,\n}) {\n const modulesManager = useModulesManager();\n const rights = useSelector((state) => state.core?.user?.i_user?.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n const [isOpen, setIsOpen] = useState(false);\n\n const handleClose = () => {\n setIsOpen(false);\n };\n\n const handleOpen = () => {\n setIsOpen(true);\n };\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"contained\"\n color=\"primary\"\n className={classes.button}\n >\n {formatMessage('payroll.viewReconciliationFiles')}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n width: 1000,\n maxWidth: 1000,\n },\n }}\n >\n <form noValidate>\n <DialogContent>\n <PayrollPaymentFilesSearcher\n module=\"payroll\"\n payrollUuid={payroll?.id}\n rights={rights}\n showFilters={false}\n />\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n }}\n >\n <div style={{ maxWidth: '1000px' }}>\n <div style={{ float: 'right' }}>\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.close')}\n </Button>\n </div>\n </div>\n </DialogActions>\n </form>\n </Dialog>\n </>\n );\n}\n\nexport default PayrollReconciliationFilesDialog;\n","import React, { useRef, useEffect } from 'react';\nimport { connect, useSelector } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport {\n Searcher,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport LinearProgress from '@material-ui/core/LinearProgress';\nimport PayrollFilter from './PayrollFilter';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME, PAYROLL_PAYROLL_ROUTE, RIGHT_PAYROLL_SEARCH, ROWS_PER_PAGE_OPTIONS, PAYROLL_STATUS, PAYMENT_METHOD,\n} from '../../constants';\nimport { fetchPayrolls } from '../../actions';\nimport PaymentApproveForPaymentSummary from './dialogs/PaymentApproveForPaymentSummary';\nimport PayrollReconciliationFilesDialog from './dialogs/PayrollReconciliationFilesDialog';\n\nfunction PayrollSearcherApproved({\n fetchingPayrolls,\n fetchedPayrolls,\n errorPayrolls,\n payrolls,\n pageInfo,\n totalCount,\n fetchPayrolls,\n submittingMutation,\n mutation,\n classes,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const { formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n\n const prevSubmittingMutationRef = useRef();\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n const renderBistpProgress = (payroll) => {\n if (payroll.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) return null;\n const summary = payroll.bistpSummary || {};\n const total = summary.total || 0;\n const reconciled = summary.reconciled || 0;\n const progress = total > 0 ? (reconciled / total) * 100 : 0;\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, minWidth: 120 }}>\n <LinearProgress\n variant=\"determinate\"\n value={progress}\n style={{ flex: 1, height: 8, borderRadius: 4 }}\n />\n <span style={{ fontSize: '0.75rem', whiteSpace: 'nowrap' }}>\n {reconciled}/{total}\n </span>\n </div>\n );\n };\n\n const headers = () => [\n 'payroll.name',\n 'payroll.paymentPlan',\n 'payroll.paymentPoint',\n 'payroll.status',\n 'payroll.paymentMethod',\n 'payroll.bistp.progress',\n 'emptyLabel',\n ];\n\n const sorts = () => [\n ['name', true],\n ['paymentPlan', true],\n ['paymentPoint', true],\n ['status', true],\n ['paymentMethod', true],\n ];\n\n const defaultFilters = () => ({\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n status: {\n value: PAYROLL_STATUS.APPROVE_FOR_PAYMENT,\n filter: `status: ${PAYROLL_STATUS.APPROVE_FOR_PAYMENT}`,\n },\n });\n\n const fetch = (params) => fetchPayrolls(modulesManager, params);\n\n const rowIdentifier = (payroll) => payroll.id;\n\n const openPayroll = (payroll) => rights.includes(RIGHT_PAYROLL_SEARCH) && history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}/${payroll?.id}`,\n );\n\n const itemFormatters = () => [\n (payroll) => payroll.name,\n (payroll) => payroll.benefitPlanNameCode ?? '',\n (payroll) => (payroll.paymentPoint\n ? `${payroll.paymentPoint.name}` : ''),\n (payroll) => (payroll.status\n ? `${payroll.status}` : ''),\n (payroll) => (payroll.paymentMethod\n ? `${payroll.paymentMethod}` : ''),\n (payroll) => renderBistpProgress(payroll),\n (payroll) => (\n <PayrollReconciliationFilesDialog\n classes={classes}\n payroll={payroll}\n />\n ),\n (payroll) => (\n <PaymentApproveForPaymentSummary\n classes={classes}\n payrollDetail={payroll}\n />\n ),\n ];\n\n const onDoubleClick = (payroll) => openPayroll(payroll);\n\n const payrollFilter = ({ filters, onChangeFilters }) => (\n <PayrollFilter filters={filters} onChangeFilters={onChangeFilters} statusReadOnly />\n );\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={payrollFilter}\n fetch={fetch}\n items={payrolls}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPayrolls}\n fetchingItems={fetchingPayrolls}\n errorItems={errorPayrolls}\n tableTitle={formatMessageWithValues('payrollSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n onDoubleClick={onDoubleClick}\n defaultFilters={defaultFilters()}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPayrolls: state.payroll.fetchingPayrolls,\n fetchedPayrolls: state.payroll.fetchedPayrolls,\n errorPayrolls: state.payroll.errorPayrolls,\n payrolls: state.payroll.payrolls,\n pageInfo: state.payroll.payrollsPageInfo,\n totalCount: state.payroll.payrollsTotalCount,\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayrolls,\n journalize,\n clearConfirm,\n coreConfirm,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollSearcherApproved);\n","import React from 'react';\nimport { useSelector } from 'react-redux';\n\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME,\n RIGHT_PAYROLL_SEARCH,\n} from '../../constants';\nimport PayrollSearcherApproved from '../../components/payroll/PayrollSearcherApproved';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n fab: theme.fab,\n}));\n\nfunction ApprovedPayrollsPage() {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.page.title')} />\n {rights.includes(RIGHT_PAYROLL_SEARCH)\n && <PayrollSearcherApproved classes={classes} />}\n </div>\n );\n}\n\nexport default ApprovedPayrollsPage;\n","/* eslint-disable max-len */\nimport React, { useEffect, useState } from 'react';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n useModulesManager,\n useTranslations,\n useHistory,\n} from '@stssocialst-stp/fe-core';\nimport {\n Paper,\n Grid,\n} from '@material-ui/core';\nimport Typography from '@material-ui/core/Typography';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport {\n MODULE_NAME,\n BENEFIT_CONSUMPTION_STATUS,\n PAYROLL_PAYROLL_ROUTE,\n PAYROLL_FROM_FAILED_INVOICES_URL_PARAM,\n} from '../../../constants';\nimport downloadPayroll from '../../../utils/export';\n\nimport BenefitConsumptionSearcherModal from '../BenefitConsumptionSearcherModal';\nimport { fetchPayroll } from '../../../actions';\n\nfunction PaymentReconcilationSummarytDialog({\n classes,\n payroll,\n payrollDetail,\n fetchPayroll,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const [payrollUuid] = useState(payrollDetail?.id ?? null);\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const [isOpen, setIsOpen] = useState(false);\n const [totalBeneficiaries, setTotalBeneficiaries] = useState(0);\n const [selectedBeneficiaries, setSelectedBeneficiaries] = useState(0);\n const [totalBillAmount, setTotalBillAmount] = useState(0);\n const [totalReconciledBillAmount, setTotalReconciledBillAmount] = useState(0);\n\n const handleOpen = () => {\n if (payrollUuid) {\n fetchPayroll(modulesManager, [`id: \"${payrollUuid}\"`]);\n }\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setIsOpen(false);\n };\n\n const handleCreatePaymentForFailedInvoice = () => {\n history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}/${payrollDetail?.id}/${PAYROLL_FROM_FAILED_INVOICES_URL_PARAM}`,\n );\n };\n\n useEffect(() => {\n if (isOpen && Object.keys(payroll).length > 0) {\n // Calculate total benefits and reconciled benefits\n const total = payroll.benefitConsumption?.length ?? 0;\n const selected = (payroll.benefitConsumption ?? []).filter(\n (benefit) => benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED,\n ).length;\n\n setTotalBeneficiaries(total);\n setSelectedBeneficiaries(selected);\n\n let totalAmount = 0;\n let reconciledAmount = 0;\n if (payroll?.benefitConsumption) {\n payroll.benefitConsumption.forEach((benefit) => {\n if (benefit.benefitAttachment && benefit.benefitAttachment.length > 0) {\n benefit.benefitAttachment.forEach((attachment) => {\n if (attachment.bill && attachment.bill.amountTotal) {\n totalAmount += parseFloat(attachment.bill.amountTotal);\n if (benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED) {\n reconciledAmount += parseFloat(attachment.bill.amountTotal);\n }\n }\n });\n }\n });\n }\n setTotalBillAmount(totalAmount);\n setTotalReconciledBillAmount(reconciledAmount);\n }\n }, [isOpen, payroll]);\n\n const downloadPayrollData = (payrollUuid, payrollName) => {\n downloadPayroll(payrollUuid, payrollName);\n };\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"contained\"\n color=\"primary\"\n className={classes.button}\n >\n {formatMessage('payroll.viewReconciliationSummary')}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%,-50%)',\n width: '90%',\n maxWidth: '90%',\n },\n }}\n >\n <DialogTitle\n style={{\n marginTop: '10px',\n }}\n >\n {formatMessageWithValues('payroll.reconciliationSummary', { payrollName: payrollDetail.name })}\n </DialogTitle>\n <DialogContent>\n <Grid container spacing={2}>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.selectedBeneficiaries')}\n </Typography>\n <Typography variant=\"body1\">\n {formatMessageWithValues('payroll.summary.beneficiariesCount', { selectedBeneficiaries, totalBeneficiaries })}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalAmountForInvoice')}\n </Typography>\n <Typography variant=\"body1\">\n {totalBillAmount}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.deliveredReconciliation')}\n </Typography>\n <Typography variant=\"body1\">\n {totalReconciledBillAmount}\n </Typography>\n </Paper>\n </Grid>\n </Grid>\n <div\n style={{ backgroundColor: '#DFEDEF' }}\n >\n <BenefitConsumptionSearcherModal payrollUuid={payrollDetail.id} payrollDetail={payrollDetail} reconciledMode />\n </div>\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n width: '100%',\n }}\n >\n <div style={{ maxWidth: '3000px' }}>\n <div style={{ float: 'left' }}>\n <Button\n onClick={handleCreatePaymentForFailedInvoice}\n variant=\"contained\"\n color=\"primary\"\n disabled={totalBeneficiaries === selectedBeneficiaries}\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.createPaymentForFailedInvoice')}\n </Button>\n <Button\n onClick={() => downloadPayrollData(payrollDetail.id, payrollDetail.name)}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.download')}\n </Button>\n </div>\n <div style={{\n float: 'right',\n paddingRight: '16px',\n }}\n >\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{ margin: '0 16px' }}\n >\n {formatMessage('payroll.summary.close')}\n </Button>\n </div>\n </div>\n </DialogActions>\n </Dialog>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n payroll: state.payroll.payroll,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayroll,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentReconcilationSummarytDialog);\n","import React, { useRef, useEffect } from 'react';\nimport { connect, useSelector } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport {\n Searcher,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport LinearProgress from '@material-ui/core/LinearProgress';\nimport PayrollFilter from './PayrollFilter';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME, PAYROLL_PAYROLL_ROUTE, RIGHT_PAYROLL_SEARCH, ROWS_PER_PAGE_OPTIONS, PAYROLL_STATUS, PAYMENT_METHOD,\n} from '../../constants';\nimport { fetchPayrolls } from '../../actions';\nimport PaymentReconciliationSummaryDialog from './dialogs/PaymentReconciliationSummaryDialog';\nimport PayrollReconciliationFilesDialog from './dialogs/PayrollReconciliationFilesDialog';\n\nfunction PayrollSearcherReconciled({\n fetchingPayrolls,\n fetchedPayrolls,\n errorPayrolls,\n payrolls,\n pageInfo,\n totalCount,\n fetchPayrolls,\n submittingMutation,\n mutation,\n classes,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const { formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n\n const prevSubmittingMutationRef = useRef();\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n const renderBistpProgress = (payroll) => {\n if (payroll.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) return null;\n const summary = payroll.bistpSummary || {};\n const total = summary.total || 0;\n const reconciled = summary.reconciled || 0;\n const progress = total > 0 ? (reconciled / total) * 100 : 0;\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, minWidth: 120 }}>\n <LinearProgress\n variant=\"determinate\"\n value={progress}\n style={{ flex: 1, height: 8, borderRadius: 4 }}\n />\n <span style={{ fontSize: '0.75rem', whiteSpace: 'nowrap' }}>\n {reconciled}/{total}\n </span>\n </div>\n );\n };\n\n const headers = () => [\n 'payroll.name',\n 'payroll.paymentPlan',\n 'payroll.paymentPoint',\n 'payroll.status',\n 'payroll.paymentMethod',\n 'payroll.bistp.progress',\n 'emptyLabel',\n ];\n\n const sorts = () => [\n ['name', true],\n ['paymentPlan', true],\n ['paymentPoint', true],\n ['status', true],\n ['paymentMethod', true],\n ];\n\n const defaultFilters = () => ({\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n status: {\n value: PAYROLL_STATUS.RECONCILED,\n filter: `status: ${PAYROLL_STATUS.RECONCILED}`,\n },\n });\n\n const fetch = (params) => fetchPayrolls(modulesManager, params);\n\n const rowIdentifier = (payroll) => payroll.id;\n\n const openPayroll = (payroll) => rights.includes(RIGHT_PAYROLL_SEARCH) && history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}/${payroll?.id}`,\n );\n\n const itemFormatters = () => [\n (payroll) => payroll.name,\n (payroll) => payroll.benefitPlanNameCode ?? '',\n (payroll) => (payroll.paymentPoint\n ? `${payroll.paymentPoint.name}` : ''),\n (payroll) => (payroll.status\n ? `${payroll.status}` : ''),\n (payroll) => (payroll.paymentMethod\n ? `${payroll.paymentMethod}` : ''),\n (payroll) => renderBistpProgress(payroll),\n (payroll) => (\n <PayrollReconciliationFilesDialog\n classes={classes}\n payroll={payroll}\n />\n ),\n (payroll) => (\n <PaymentReconciliationSummaryDialog\n classes={classes}\n payrollDetail={payroll}\n />\n ),\n ];\n\n const onDoubleClick = (payroll) => openPayroll(payroll);\n\n const payrollFilter = ({ filters, onChangeFilters }) => (\n <PayrollFilter filters={filters} onChangeFilters={onChangeFilters} statusReadOnly />\n );\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={payrollFilter}\n fetch={fetch}\n items={payrolls}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPayrolls}\n fetchingItems={fetchingPayrolls}\n errorItems={errorPayrolls}\n tableTitle={formatMessageWithValues('payrollSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n onDoubleClick={onDoubleClick}\n defaultFilters={defaultFilters()}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPayrolls: state.payroll.fetchingPayrolls,\n fetchedPayrolls: state.payroll.fetchedPayrolls,\n errorPayrolls: state.payroll.errorPayrolls,\n payrolls: state.payroll.payrolls,\n pageInfo: state.payroll.payrollsPageInfo,\n totalCount: state.payroll.payrollsTotalCount,\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayrolls,\n journalize,\n clearConfirm,\n coreConfirm,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollSearcherReconciled);\n","import React from 'react';\nimport { useSelector } from 'react-redux';\n\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME,\n RIGHT_PAYROLL_SEARCH,\n} from '../../constants';\nimport PayrollSearcherReconciled from '../../components/payroll/PayrollSearcherReconciled';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n fab: theme.fab,\n}));\n\nfunction ReconciledPayrollsPage() {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.page.title')} />\n {rights.includes(RIGHT_PAYROLL_SEARCH)\n && <PayrollSearcherReconciled classes={classes} />}\n </div>\n );\n}\n\nexport default ReconciledPayrollsPage;\n","/* eslint-disable react/jsx-props-no-spreading */\nimport React, { useState } from 'react';\n\nimport { TextField } from '@material-ui/core';\n\nimport {\n useGraphqlQuery, useTranslations, Autocomplete, useModulesManager,\n} from '@stssocialst-stp/fe-core';\nimport { PAYMENT_POINT_PROJECTION } from '../../actions';\n\nfunction PaymentPointPicker({\n readOnly,\n value,\n onChange,\n required,\n withLabel,\n withPlaceholder,\n filterOptions,\n filterSelectedOptions,\n}) {\n const [searchString, setSearchString] = useState();\n const { formatMessage } = useTranslations('payroll');\n\n const modulesManager = useModulesManager();\n\n const formatSuggestion = (paymentPoint) => [paymentPoint?.name].filter(Boolean).join(' ');\n\n const { isLoading, data, error } = useGraphqlQuery(\n `\n query paymentPoint {\n paymentPoint {\n edges {\n node {\n ${PAYMENT_POINT_PROJECTION(modulesManager).join(' ')}\n }\n }\n }\n }\n `,\n {},\n );\n\n const paymentPoints = data?.paymentPoint?.edges.map((edge) => edge.node) ?? [];\n\n return (\n <Autocomplete\n withLabel={withLabel}\n withPlaceholder={withPlaceholder}\n readOnly={readOnly}\n value={value}\n placeholder={formatMessage('paymentPointPicker.placeholder')}\n label={formatMessage('paymentPointPicker.label')}\n isLoading={isLoading}\n options={paymentPoints}\n error={error}\n getOptionLabel={(option) => formatSuggestion(option)}\n onChange={(user) => onChange(user)}\n filterOptions={filterOptions}\n filterSelectedOptions={filterSelectedOptions}\n onInputChange={() => setSearchString(searchString)}\n renderInput={(inputProps) => (\n <TextField\n {...inputProps}\n variant=\"standard\"\n required={required}\n label={withLabel && formatMessage('paymentPointPicker.label')}\n placeholder={withPlaceholder && formatMessage('paymentPointPicker.placeholder')}\n />\n )}\n />\n );\n}\n\nexport default PaymentPointPicker;\n","import React from 'react';\nimport { ConstantBasedPicker } from '@stssocialst-stp/fe-core';\n\nimport { BENEFIT_CONSUMPTION_STATUS_LIST } from '../constants';\n\nfunction BenefitConsumptionStatusPicker(props) {\n const {\n required, withNull, readOnly, onChange, value, nullLabel, withLabel,\n } = props;\n return (\n <ConstantBasedPicker\n module=\"payroll\"\n label=\"payroll.benefitConsumptionStatusPicker\"\n constants={BENEFIT_CONSUMPTION_STATUS_LIST}\n required={required}\n withNull={withNull}\n readOnly={readOnly}\n onChange={onChange}\n value={value}\n nullLabel={nullLabel}\n withLabel={withLabel}\n />\n );\n}\n\nexport default BenefitConsumptionStatusPicker;\n","import React from 'react';\nimport _debounce from 'lodash/debounce';\n\nimport { Grid } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n PublishedComponent,\n useModulesManager,\n useTranslations,\n TextInput,\n NumberInput,\n} from '@stssocialst-stp/fe-core';\nimport { CONTAINS_LOOKUP, DEFAULT_DEBOUNCE_TIME, EMPTY_STRING } from '../../constants';\nimport BenefitConsumptionStatusPicker from '../../pickers/BenefitConsumptionStatusPicker';\n\nconst useStyles = makeStyles((theme) => ({\n form: {\n padding: 0,\n },\n item: {\n padding: theme.spacing(1),\n },\n}));\n\nfunction BenefitConsumptionPayrollFilter({ filters, onChangeFilters, benefitPlan }) {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const { formatMessage } = useTranslations('payroll', modulesManager);\n\n const debouncedOnChangeFilters = _debounce(onChangeFilters, DEFAULT_DEBOUNCE_TIME);\n\n const filterTextFieldValue = (filterName) => filters?.[filterName]?.value ?? EMPTY_STRING;\n\n const filterValue = (filterName) => filters?.[filterName]?.value ?? null;\n\n const onChangeStringFilter = (filterName, lookup = null) => (value) => {\n if (lookup) {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}_${lookup}: \"${value}\"`,\n },\n ]);\n } else {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}: \"${value}\"`,\n },\n ]);\n }\n };\n\n return (\n <Grid container className={classes.form}>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.payroll.name\"\n value={filterTextFieldValue('payroll_Name')}\n onChange={onChangeStringFilter('payroll_Name', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.payroll.benefitPlan\"\n value={filterTextFieldValue('benefitPlanName')}\n onChange={onChangeStringFilter('benefitPlanName')}\n readOnly={benefitPlan !== null && benefitPlan !== undefined}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.payroll.startDate')}\n value={filterValue('payroll_PaymentCycle_StartDate')}\n onChange={(v) => onChangeFilters([\n {\n id: 'payroll_PaymentCycle_StartDate',\n value: v,\n filter: `payroll_PaymentCycle_StartDate: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.payroll.endDate')}\n value={filterValue('payroll_PaymentCycle_EndDate')}\n onChange={(v) => onChangeFilters([\n {\n id: 'payroll_PaymentCycle_EndDate',\n value: v,\n filter: `payroll_PaymentCycle_EndDate: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <BenefitConsumptionStatusPicker\n module=\"payroll\"\n label={formatMessage('benefitConsumptions.status.label')}\n withNull\n nullLabel={formatMessage('tooltip.any')}\n value={filterValue('benefit_Status')}\n onChange={(value) => onChangeFilters([\n {\n id: 'benefit_Status',\n value,\n filter: `benefit_Status: ${value}`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.code\"\n value={filterTextFieldValue('benefit_Code')}\n onChange={onChangeStringFilter('benefit_Code', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.receipt\"\n value={filterTextFieldValue('benefit_Receipt')}\n onChange={onChangeStringFilter('benefit_Receipt', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.dateDue')}\n value={filterValue('benefit_DateDue')}\n onChange={(v) => onChangeFilters([\n {\n id: 'benefit_DateDue',\n value: v,\n filter: `benefit_DateDue: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <NumberInput\n module=\"payroll\"\n label={formatMessage('benefitConsumption.amount')}\n min={0}\n value={filterValue('benefit_Amount')}\n onChange={onChangeStringFilter('benefit_Amount')}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.type\"\n value={filterTextFieldValue('benefit_Type')}\n onChange={onChangeStringFilter('benefit_Type', CONTAINS_LOOKUP)}\n />\n </Grid>\n </Grid>\n );\n}\n\nexport default BenefitConsumptionPayrollFilter;\n","/* eslint-disable no-param-reassign */\nimport React, { useEffect, useState } from 'react';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\n\nimport {\n Searcher, useModulesManager, useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n Paper,\n Grid,\n} from '@material-ui/core';\nimport Typography from '@material-ui/core/Typography';\nimport { fetchPayrollBenefitConsumptions, fetchBenefitsSummary } from '../../actions';\nimport { DEFAULT_PAGE_SIZE, ROWS_PER_PAGE_OPTIONS } from '../../constants';\nimport BenefitConsumptionPayrollFilter from './BenefitConsumptionPayrollFilter';\n\nfunction BenefitConsumptionPayrollSearcher({\n fetchPayrollBenefitConsumptions,\n fetchingPayrollBenefitConsumptions,\n fetchedPayrollBenefitConsumptions,\n errorPayrollBenefitConsumptions,\n payrollBenefitConsumptions,\n payrollBenefitConsumptionsPageInfo,\n payrollBenefitConsumptionsTotalCount,\n fetchBenefitsSummary,\n fetchedBenefitsSummary,\n benefitsSummary,\n individualUuid,\n benefitPlan,\n groupBeneficiaries,\n paymentCycleUuid,\n}) {\n const modulesManager = useModulesManager();\n const { formatMessage, formatMessageWithValues } = useTranslations('payroll', modulesManager);\n const [totalNumberOfBenefits, setTotalNumberOfBenefits] = useState(0);\n\n const fetch = (params) => fetchPayrollBenefitConsumptions(modulesManager, params);\n\n const headers = () => [\n 'benefitConsumption.payroll.name',\n 'benefitConsumption.payroll.benefitPlan',\n 'benefitConsumption.payroll.startDate',\n 'benefitConsumption.payroll.endDate',\n 'benefitConsumption.status',\n 'benefitConsumption.code',\n 'benefitConsumption.receipt',\n 'benefitConsumption.dateDue',\n 'benefitConsumption.amount',\n 'benefitConsumption.type',\n 'benefitConsumption.payedOnTime',\n 'benefitConsumption.paymentDate',\n ];\n\n const checkBenefitDueDate = (payrollBenefitConsumption) => {\n if (!payrollBenefitConsumption.benefit.receipt) {\n return ''; // return empty string if datePayed is null\n }\n\n return (\n payrollBenefitConsumption.benefit\n && payrollBenefitConsumption.benefit.dateDue\n >= payrollBenefitConsumption.benefit.benefitAttachment[0].bill.datePayed)\n ? 'True' : 'False';\n };\n\n const itemFormatters = () => [\n (payrollBenefitConsumption) => payrollBenefitConsumption?.payroll?.name,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.payroll?.benefitPlanNameCode,\n // eslint-disable-next-line max-len\n (payrollBenefitConsumption) => payrollBenefitConsumption?.payroll?.paymentCycle?.startDate,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.payroll?.paymentCycle?.endDate,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.status,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.code,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.receipt,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.dateDue,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.amount,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.type,\n (payrollBenefitConsumption) => checkBenefitDueDate(payrollBenefitConsumption),\n (payrollBenefitConsumption) => (\n !payrollBenefitConsumption.benefit.receipt\n ? ''\n : payrollBenefitConsumption?.benefit?.benefitAttachment[0]?.bill?.datePayed\n ),\n ];\n\n const rowIdentifier = (benefitConsumption) => benefitConsumption.id;\n\n const sorts = () => [\n ['payroll_Name', true],\n ['payroll_benefitPlanName', false],\n ['payroll_PaymentCycle_StartDate', true],\n ['payroll_PaymentCycle_EndDate', true],\n ['benefit_Status', true],\n ['benefit_Code', true],\n ['benefit_Receipt', true],\n ['benefit_DateDue', true],\n ['benefit_Amount', true],\n ['benefit_Type', true],\n ];\n\n const defaultFilters = () => {\n const filters = {\n isDeleted: {\n value: false,\n filter:\n 'isDeleted: false',\n },\n };\n if (groupBeneficiaries !== null && groupBeneficiaries !== undefined) {\n filters.benefit_Individual_Id = {\n value: groupBeneficiaries?.group?.head?.uuid,\n filter: `benefit_Individual_Id: \"${groupBeneficiaries?.group?.head?.uuid}\"`,\n };\n } else if (individualUuid !== null && individualUuid !== undefined) {\n filters.benefit_Individual_Id = {\n value: individualUuid,\n filter: `benefit_Individual_Id: \"${individualUuid}\"`,\n };\n }\n if (benefitPlan?.id) {\n filters.benefitPlanUuid = {\n value: benefitPlan.id,\n filter: `benefitPlanUuid: \"${benefitPlan.id}\"`,\n };\n }\n if (paymentCycleUuid) {\n filters.paymentCycleUuid = {\n value: paymentCycleUuid,\n filter: `paymentCycleUuid: \"${paymentCycleUuid}\"`,\n };\n }\n return filters;\n };\n\n useEffect(() => {\n const params = [];\n if (individualUuid) {\n params.push(\n `individualId: \"${individualUuid}\"`,\n );\n }\n if (groupBeneficiaries) {\n params.push(\n `individualId: \"${groupBeneficiaries?.group?.head?.uuid}\"`,\n );\n }\n if (benefitPlan?.id) {\n params.push(\n `benefitPlanUuid: \"${benefitPlan.id}\"`,\n );\n }\n if (paymentCycleUuid) {\n params.push(\n `paymentCycleUuid: \"${paymentCycleUuid}\"`,\n );\n }\n fetchBenefitsSummary(params);\n }, []);\n\n useEffect(() => {\n if (payrollBenefitConsumptionsTotalCount > totalNumberOfBenefits) {\n setTotalNumberOfBenefits(payrollBenefitConsumptionsTotalCount);\n }\n }, [payrollBenefitConsumptionsTotalCount]);\n\n const benefitConsumptionPayrollFilter = ({ filters, onChangeFilters }) => (\n <BenefitConsumptionPayrollFilter\n filters={filters}\n onChangeFilters={onChangeFilters}\n benefitPlan={benefitPlan}\n />\n );\n\n return (\n <div>\n {fetchedBenefitsSummary && (\n <Grid container spacing={2}>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalNumberOfBenefits')}\n </Typography>\n <Typography variant=\"body1\">\n {totalNumberOfBenefits}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalAmountDue')}\n </Typography>\n <Typography variant=\"body1\">\n {benefitsSummary?.totalAmountDue ?? 0}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalAmountReceived')}\n </Typography>\n <Typography variant=\"body1\">\n {benefitsSummary?.totalAmountReceived ?? 0}\n </Typography>\n </Paper>\n </Grid>\n </Grid>\n )}\n <Searcher\n module=\"payroll\"\n FilterPane={benefitConsumptionPayrollFilter}\n fetch={fetch}\n items={payrollBenefitConsumptions}\n itemsPageInfo={payrollBenefitConsumptionsPageInfo}\n fetchingItems={fetchingPayrollBenefitConsumptions}\n fetchedItems={fetchedPayrollBenefitConsumptions}\n errorItems={errorPayrollBenefitConsumptions}\n tableTitle={\n // eslint-disable-next-line max-len\n formatMessageWithValues('payrollBenefitConsumption.searcherResultsTitle', { payrollBenefitConsumptionsTotalCount })\n }\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n defaultFilters={defaultFilters()}\n />\n </div>\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPayrollBenefitConsumptions: state.payroll.fetchingPayrollBenefitConsumptions,\n fetchedPayrollBenefitConsumptions: state.payroll.fetchedPayrollBenefitConsumptions,\n errorPayrollBenefitConsumptions: state.payroll.errorPayrollBenefitConsumptions,\n payrollBenefitConsumptions: state.payroll.payrollBenefitConsumptions,\n payrollBenefitConsumptionsPageInfo: state.payroll.payrollBenefitConsumptionsPageInfo,\n payrollBenefitConsumptionsTotalCount: state.payroll.payrollBenefitConsumptionsTotalCount,\n fetchingBenefitsSummary: state.payroll.fetchingBenefitsSummary,\n errorBenefitsSummary: state.payroll.errorBenefitsSummary,\n fetchedBenefitsSummary: state.payroll.fetchedBenefitsSummary,\n benefitsSummary: state.payroll.benefitsSummary,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators(\n { fetchPayrollBenefitConsumptions, fetchBenefitsSummary },\n dispatch,\n);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(BenefitConsumptionPayrollSearcher);\n","import React from 'react';\nimport PayrollPage from '../../pages/payroll/PayrollPage';\nimport { EMPTY_STRING } from '../../constants';\n\nconst PayrollTaskTableHeaders = () => [\n EMPTY_STRING,\n];\n\nconst PayrollTaskItemFormatters = () => [\n (payroll) => <PayrollPage taskPayrollUuid={payroll?.id} />,\n];\n\nexport { PayrollTaskTableHeaders, PayrollTaskItemFormatters };\n","const PayrollReconciliationTaskTableHeaders = () => [\n];\n\nconst PayrollReconciliationTaskItemFormatters = () => [\n];\n\nexport { PayrollReconciliationTaskTableHeaders, PayrollReconciliationTaskItemFormatters };\n","import React from 'react';\nimport _debounce from 'lodash/debounce';\n\nimport { Grid } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n PublishedComponent,\n useModulesManager,\n useTranslations,\n TextInput,\n NumberInput,\n} from '@stssocialst-stp/fe-core';\nimport { CONTAINS_LOOKUP, DEFAULT_DEBOUNCE_TIME, EMPTY_STRING } from '../../constants';\nimport BenefitConsumptionStatusPicker from '../../pickers/BenefitConsumptionStatusPicker';\n\nconst useStyles = makeStyles((theme) => ({\n form: {\n padding: 0,\n },\n item: {\n padding: theme.spacing(1),\n },\n}));\n\nfunction BenefitConsumptionFilter({ filters, onChangeFilters }) {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const { formatMessage } = useTranslations('payroll', modulesManager);\n\n const debouncedOnChangeFilters = _debounce(onChangeFilters, DEFAULT_DEBOUNCE_TIME);\n\n const filterTextFieldValue = (filterName) => filters?.[filterName]?.value ?? EMPTY_STRING;\n\n const filterValue = (filterName) => filters?.[filterName]?.value ?? null;\n\n const onChangeFilter = (filterName) => (value) => {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value: value || null,\n filter: `${filterName}: ${value}`,\n },\n ]);\n };\n\n const onChangeStringFilter = (filterName, lookup = null) => (value) => {\n if (lookup) {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}_${lookup}: \"${value}\"`,\n },\n ]);\n } else {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}: \"${value}\"`,\n },\n ]);\n }\n };\n\n return (\n <Grid container className={classes.form}>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.individual.firstName\"\n value={filterTextFieldValue('individual_FirstName')}\n onChange={onChangeStringFilter('individual_FirstName', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.individual.lastName\"\n value={filterTextFieldValue('individual_LastName')}\n onChange={onChangeStringFilter('individual_LastName', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.photo\"\n value={filterTextFieldValue('photo')}\n onChange={onChangeStringFilter('photo', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.code\"\n value={filterTextFieldValue('code')}\n onChange={onChangeStringFilter('code', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.dateDue')}\n value={filterValue('dateDue')}\n onChange={(v) => onChangeFilters([\n {\n id: 'dateDue',\n value: v,\n filter: `dateDue: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.receipt\"\n value={filterTextFieldValue('receipt')}\n onChange={onChangeStringFilter('receipt', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.type\"\n value={filterTextFieldValue('type')}\n onChange={onChangeStringFilter('type', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <BenefitConsumptionStatusPicker\n module=\"payroll\"\n label={formatMessage('benefitConsumptions.status.label')}\n withNull\n nullLabel={formatMessage('tooltip.any')}\n value={filterValue('status')}\n onChange={(value) => onChangeFilters([\n {\n id: 'status',\n value,\n filter: `status: ${value}`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <NumberInput\n module=\"payroll\"\n label={formatMessage('benefitConsumption.amount')}\n min={0}\n value={filterValue('amount')}\n onChange={onChangeFilter('amount')}\n />\n </Grid>\n </Grid>\n );\n}\n\nexport default BenefitConsumptionFilter;\n","/* eslint-disable max-len */\n/* eslint-disable react/no-array-index-key */\n/* eslint-disable no-nested-ternary */\n/* eslint-disable no-undef */\nimport React, {\n forwardRef,\n} from 'react';\n\nimport { Divider } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n useTranslations, useModulesManager,\n} from '@stssocialst-stp/fe-core';\nimport { MODULE_NAME } from '../constants';\n\nconst useStyles = makeStyles(() => ({\n topHeader: {\n display: 'flex',\n justifyContent: 'start',\n alignItems: 'center',\n width: '100%',\n\n '& img': {\n minWidth: '250px',\n maxWidth: '300px',\n width: 'auto',\n height: 'auto',\n },\n },\n printContainer: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n padding: '20px',\n fontWeight: '500',\n },\n date: {\n fontSize: '16px',\n },\n detailsContainer: {\n display: 'flex',\n flexDirection: 'column',\n padding: '12px',\n width: '100%',\n },\n detailRow: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n padding: '4px',\n },\n detailName: {\n fontWeight: '600',\n fontSize: '16px',\n textTransform: 'uppercase',\n },\n detailValue: {\n fontWeight: '500',\n backgroundColor: '#f5f5f5',\n padding: '6px',\n borderRadius: '8px',\n fontSize: '15px',\n },\n containerPadding: {\n padding: '32px',\n },\n dividerMargin: {\n margin: '12px 0',\n },\n sectionTitle: {\n fontWeight: '700',\n fontSize: '18px',\n textTransform: 'uppercase',\n marginBottom: '12px',\n },\n}));\n\nconst PayrollPrintTemplate = forwardRef(({ benefitConsumptions }, ref) => {\n if (!benefitConsumptions) return null;\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(modulesManager, MODULE_NAME);\n\n return (\n <div ref={ref} className={classes.printContainer}>\n {benefitConsumptions.map((benefitConsumption, index) => (\n <div key={index} className={classes.detailsContainer}>\n <div className={classes.sectionTitle}>\n {`Payment: ${benefitConsumption.code} - ${benefitConsumption.individual.firstName}, ${benefitConsumption.individual.lastName}`}\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.individual.firstName')}</div>\n <div className={classes.detailValue}>{benefitConsumption.individual.firstName}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.individual.lastName')}</div>\n <div className={classes.detailValue}>{benefitConsumption.individual.lastName}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.code')}</div>\n <div className={classes.detailValue}>{benefitConsumption.code}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.dateDue')}</div>\n <div className={classes.detailValue}>{benefitConsumption.dateDue}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.receipt')}</div>\n <div className={classes.detailValue}>{benefitConsumption.receipt}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.amount')}</div>\n <div className={classes.detailValue}>{benefitConsumption.amount}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.type')}</div>\n <div className={classes.detailValue}>{benefitConsumption.type}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.status')}</div>\n <div className={classes.detailValue}>{benefitConsumption.status}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.paymentDate')}</div>\n <div className={classes.detailValue}>\n {!benefitConsumption.receipt\n ? ''\n : benefitConsumption?.benefitAttachment[0]?.bill?.datePayed}\n </div>\n </div>\n <Divider className={classes.dividerMargin} />\n </div>\n ))}\n </div>\n );\n});\n\nexport default PayrollPrintTemplate;\n","/* eslint-disable max-len */\n/* eslint-disable no-return-assign */\n/* eslint-disable no-param-reassign */\nimport React, { useRef } from 'react';\nimport { useReactToPrint } from 'react-to-print';\nimport PrintIcon from '@material-ui/icons/Print';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\nimport {\n Typography, Button,\n} from '@material-ui/core';\n\nimport {\n Searcher, useModulesManager, useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport Chip from '@material-ui/core/Chip';\nimport PhotoCameraOutlinedIcon from '@material-ui/icons/PhotoCameraOutlined';\nimport { fetchBenefitConsumptions } from '../../actions';\nimport { BENEFIT_CONSUMPTION_STATUS, DEFAULT_PAGE_SIZE, ROWS_PER_PAGE_OPTIONS, PAYMENT_METHOD } from '../../constants';\nimport BenefitConsumptionFilter from './BenefitConsumptionFilter';\nimport AdditionalFieldsDialog from './dialogs/AdditionalFieldsDialog';\nimport PayrollPrintTemplate from '../PayrollPrintTemplate';\n\nfunction BenefitConsumptionSearcher({\n fetchBenefitConsumptions,\n fetchingBenefitConsumptions,\n fetchedBenefitConsumptions,\n errorBenefitConsumptions,\n benefitConsumptions,\n benefitConsumptionsPageInfo,\n benefitConsumptionsTotalCount,\n isPayrollFromFailedInvoices,\n payrollUuid,\n}) {\n const modulesManager = useModulesManager();\n const { formatMessageWithValues } = useTranslations('payroll', modulesManager);\n const payrollPrintTemplateRef = useRef(null);\n\n const handlePrint = useReactToPrint({\n documentTitle: `${payrollUuid}`,\n });\n\n const fetch = (params) => fetchBenefitConsumptions(modulesManager, params);\n\n const headers = () => {\n const cols = [\n 'benefitConsumption.individual.firstName',\n 'benefitConsumption.individual.lastName',\n 'benefitConsumption.nib',\n 'benefitConsumption.photo',\n 'benefitConsumption.code',\n 'benefitConsumption.dateDue',\n 'benefitConsumption.receipt',\n 'benefitConsumption.amount',\n 'benefitConsumption.type',\n 'benefitConsumption.status',\n 'benefitConsumption.payedOnTime',\n 'benefitConsumption.paymentDate',\n '',\n ];\n return cols;\n };\n\n const checkBenefitDueDate = (benefitConsumption) => {\n if (!benefitConsumption.receipt) {\n return ''; // return empty string if datePayed is null\n }\n\n return (\n benefitConsumption\n && benefitConsumption.dateDue\n >= benefitConsumption.benefitAttachment[0].bill.datePayed)\n ? 'True' : 'False';\n };\n\n const getBistpStatusBadge = (benefitConsumption) => {\n if (!benefitConsumption) return null;\n const jsonExt = benefitConsumption.jsonExt || {};\n const { status } = benefitConsumption;\n\n if (status === BENEFIT_CONSUMPTION_STATUS.RECONCILED) {\n return <Chip label={formatMessage('payroll.bistp.status.reconciled')} style={{ backgroundColor: '#4caf50', color: 'white' }} size=\"small\" />;\n }\n if (status === BENEFIT_CONSUMPTION_STATUS.REJECTED) {\n return <Chip label={`${formatMessage('payroll.bistp.status.rejected')}${jsonExt.bistp_rejection_reason ? `: ${jsonExt.bistp_rejection_reason}` : ''}`} style={{ backgroundColor: '#f44336', color: 'white' }} size=\"small\" />;\n }\n if (status === BENEFIT_CONSUMPTION_STATUS.APPROVE_FOR_PAYMENT) {\n return <Chip label={formatMessage('payroll.bistp.status.pending')} style={{ backgroundColor: '#ff9800', color: 'white' }} size=\"small\" />;\n }\n if (jsonExt.bistp_skip_reason === 'nib_ausente') {\n return <Chip label={formatMessage('payroll.bistp.status.skippedNib')} style={{ backgroundColor: '#9e9e9e', color: 'white' }} size=\"small\" />;\n }\n if (jsonExt.bistp_skip_reason === 'envio_falhou') {\n return <Chip label={formatMessage('payroll.bistp.status.sendFailed')} style={{ backgroundColor: '#f44336', color: 'white' }} size=\"small\" />;\n }\n return null;\n };\n\n const itemFormatters = () => [\n (benefitConsumption) => benefitConsumption?.individual?.firstName,\n (benefitConsumption) => benefitConsumption?.individual?.lastName,\n (benefitConsumption) => benefitConsumption?.individual?.nib || '',\n (benefitConsumption) => (\n benefitConsumption.receipt ? (\n <PhotoCameraOutlinedIcon style={{ fontSize: 150 }} />\n ) : null\n ),\n (benefitConsumption) => benefitConsumption?.code,\n (benefitConsumption) => benefitConsumption?.dateDue,\n (benefitConsumption) => benefitConsumption?.receipt,\n (benefitConsumption) => benefitConsumption?.amount,\n (benefitConsumption) => benefitConsumption?.type,\n (benefitConsumption) => (isPayrollFromFailedInvoices\n ? BENEFIT_CONSUMPTION_STATUS.APPROVE_FOR_PAYMENT : benefitConsumption?.status),\n (benefitConsumption) => checkBenefitDueDate(benefitConsumption),\n (benefitConsumption) => (\n !benefitConsumption.receipt\n ? ''\n : benefitConsumption?.benefitAttachment[0]?.bill?.datePayed\n ),\n (benefitConsumption) => {\n const jsonExt = benefitConsumption?.jsonExt || {};\n const hasBistpFields = jsonExt.bistp_skip_reason || jsonExt.bistp_processed || jsonExt.bistp_rejection_reason;\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 4 }}>\n {hasBistpFields && getBistpStatusBadge(benefitConsumption)}\n <AdditionalFieldsDialog\n jsonExt={benefitConsumption?.jsonExt}\n buttonLabel=\"payroll.additonalFields.showAdditionalFields\"\n title=\"payroll.additonalFields.label\"\n />\n </div>\n );\n },\n ];\n\n const rowIdentifier = (benefitConsumption) => benefitConsumption.id;\n\n const sorts = () => [\n ['individual_FirstName', true],\n ['individual_LastName', true],\n ['individual_Nib', true],\n ['photo', true],\n ['code', true],\n ['dateDue', true],\n ['receipt', true],\n ['amount', true],\n ['type', true],\n ['status', true],\n ];\n\n const defaultFilters = () => {\n const filters = {\n isDeleted: {\n value: false,\n filter:\n 'isDeleted: false',\n },\n payrollUuid: {\n value: payrollUuid,\n filter:\n `payrollUuid: \"${payrollUuid}\"`,\n },\n };\n if (isPayrollFromFailedInvoices) {\n filters.status = {\n value: true,\n filter:\n `filterOnlyUnpaid: ${true}`,\n };\n }\n return filters;\n };\n\n const benefitConsumptionFilter = ({ filters, onChangeFilters }) => (\n <BenefitConsumptionFilter filters={filters} onChangeFilters={onChangeFilters} />\n );\n\n return (\n <>\n <div>\n <Button\n size=\"small\"\n variant=\"contained\"\n color=\"primary\"\n startIcon={<PrintIcon />}\n onClick={(e) => {\n e.preventDefault();\n handlePrint(null, () => payrollPrintTemplateRef.current);\n }}\n >\n <Typography variant=\"subtitle1\">Print</Typography>\n </Button>\n </div>\n <div>\n <Searcher\n module=\"payroll\"\n FilterPane={!isPayrollFromFailedInvoices && benefitConsumptionFilter}\n fetch={fetch}\n items={benefitConsumptions}\n itemsPageInfo={benefitConsumptionsPageInfo}\n fetchingItems={fetchingBenefitConsumptions}\n fetchedItems={fetchedBenefitConsumptions}\n errorItems={errorBenefitConsumptions}\n tableTitle={formatMessageWithValues('benefitConsumption.searcherResultsTitle', { benefitConsumptionsTotalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n defaultFilters={defaultFilters()}\n />\n <div style={{ display: 'none' }}>\n <PayrollPrintTemplate\n ref={payrollPrintTemplateRef}\n benefitConsumptions={benefitConsumptions}\n />\n </div>\n </div>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingBenefitConsumptions: state.payroll.fetchingBenefitConsumptions,\n fetchedBenefitConsumptions: state.payroll.fetchedBenefitConsumptions,\n errorBenefitConsumptions: state.payroll.errorBenefitConsumptions,\n benefitConsumptions: state.payroll.benefitConsumptions,\n benefitConsumptionsPageInfo: state.payroll.benefitConsumptionsPageInfo,\n benefitConsumptionsTotalCount: state.payroll.benefitConsumptionsTotalCount,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators(\n { fetchBenefitConsumptions },\n dispatch,\n);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(BenefitConsumptionSearcher);\n","import React from 'react';\nimport { Tab } from '@material-ui/core';\nimport { PublishedComponent, useTranslations } from '@stssocialst-stp/fe-core';\nimport {\n BENEFIT_CONSUMPTION_LIST_TAB_VALUE,\n MODULE_NAME,\n RIGHT_PAYROLL_SEARCH,\n} from '../../constants';\nimport BenefitConsumptionSearcher from './BenefitConsumptionSearcher';\n\nfunction BenefitConsumptionsTabLabel({\n onChange, tabStyle, isSelected, modulesManager,\n}) {\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n return (\n <Tab\n onChange={onChange}\n className={tabStyle(BENEFIT_CONSUMPTION_LIST_TAB_VALUE)}\n selected={isSelected(BENEFIT_CONSUMPTION_LIST_TAB_VALUE)}\n value={BENEFIT_CONSUMPTION_LIST_TAB_VALUE}\n label={formatMessage('PayrollBenefitConsumptionTab.label')}\n />\n );\n}\n\nfunction BenefitConsumptionsTabPanel({\n value, rights, payrollUuid, isPayrollFromFailedInvoices, refreshBenefitsKey,\n}) {\n return (\n <PublishedComponent\n pubRef=\"policyHolder.TabPanel\"\n module=\"payroll\"\n index={BENEFIT_CONSUMPTION_LIST_TAB_VALUE}\n value={value}\n >\n {\n rights.includes(RIGHT_PAYROLL_SEARCH) && payrollUuid && (\n <BenefitConsumptionSearcher\n key={refreshBenefitsKey}\n rights={rights}\n payrollUuid={payrollUuid}\n isPayrollFromFailedInvoices={isPayrollFromFailedInvoices}\n />\n )\n }\n </PublishedComponent>\n );\n}\n\nexport { BenefitConsumptionsTabLabel, BenefitConsumptionsTabPanel };\n","const PayrollRejectedTaskTableHeaders = () => [\n];\n\nconst PayrollRejectedTaskItemFormatters = () => [\n];\n\nexport { PayrollRejectedTaskTableHeaders, PayrollRejectedTaskItemFormatters };\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport { Tab } from '@material-ui/core';\nimport { PublishedComponent, useTranslations } from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME, PAYROLL_TASK_TAB_VALUE,\n} from '../../constants';\n\nfunction PayrollTaskTabLabel({\n onChange, tabStyle, isSelected, modulesManager, payrollUuid, isInTask, isPayrollFromFailedInvoices,\n}) {\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n if (!payrollUuid || isInTask || isPayrollFromFailedInvoices) {\n return null;\n }\n return (\n <Tab\n onChange={onChange}\n className={tabStyle(PAYROLL_TASK_TAB_VALUE)}\n selected={isSelected(PAYROLL_TASK_TAB_VALUE)}\n value={PAYROLL_TASK_TAB_VALUE}\n label={formatMessage('PayrollTaskTab.label')}\n />\n );\n}\n\nfunction PayrollTaskTabPanel({ value, payrollUuid, isInTask }) {\n const rights = useSelector((store) => store?.core?.user?.i_user?.rights ?? []);\n if (isInTask) return null;\n\n return (\n <PublishedComponent\n pubRef=\"policyHolder.TabPanel\"\n module=\"payroll\"\n index={PAYROLL_TASK_TAB_VALUE}\n value={value}\n >\n {\n payrollUuid && (\n <PublishedComponent\n pubRef=\"tasksManagement.taskSearcher\"\n module=\"payroll\"\n entityId={payrollUuid}\n rights={rights}\n showFilters={false}\n />\n )\n }\n </PublishedComponent>\n );\n}\n\nexport { PayrollTaskTabLabel, PayrollTaskTabPanel };\n","const PayrollDeleteTaskTableHeaders = () => [\n];\n\nconst PayrollDeleteTaskItemFormatters = () => [\n];\n\nexport { PayrollDeleteTaskTableHeaders, PayrollDeleteTaskItemFormatters };\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport { Tab } from '@material-ui/core';\nimport { PublishedComponent, useTranslations } from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME, PAYROLL_PAYMENT_FILES_TAB_VALUE,\n} from '../../constants';\nimport PayrollPaymentFilesSearcher from './PayrollPaymentFilesSearcher';\n\nfunction PayrollPaymentFilesTabLabel({\n onChange, tabStyle, isSelected, modulesManager, payrollUuid, isInTask, isPayrollFromFailedInvoices,\n}) {\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n if (!payrollUuid || isInTask || isPayrollFromFailedInvoices) {\n return null;\n }\n return (\n <Tab\n onChange={onChange}\n className={tabStyle(PAYROLL_PAYMENT_FILES_TAB_VALUE)}\n selected={isSelected(PAYROLL_PAYMENT_FILES_TAB_VALUE)}\n value={PAYROLL_PAYMENT_FILES_TAB_VALUE}\n label={formatMessage('PayrollPaymentFilesTab.label')}\n />\n );\n}\n\nfunction PayrollPaymentFilesTabPanel({ value, payrollUuid, isInTask }) {\n const rights = useSelector((store) => store?.core?.user?.i_user?.rights ?? []);\n if (isInTask) return null;\n\n return (\n <PublishedComponent\n pubRef=\"policyHolder.TabPanel\"\n module=\"payroll\"\n index={PAYROLL_PAYMENT_FILES_TAB_VALUE}\n value={value}\n >\n {\n payrollUuid && (\n <PayrollPaymentFilesSearcher\n module=\"payroll\"\n payrollUuid={payrollUuid}\n rights={rights}\n showFilters={false}\n />\n )\n }\n </PublishedComponent>\n );\n}\n\nexport { PayrollPaymentFilesTabLabel, PayrollPaymentFilesTabPanel };\n","import React, { useEffect } from 'react';\nimport {\n Grid, LinearProgress, Paper, Tab, Typography,\n} from '@material-ui/core';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\nimport { PublishedComponent, useModulesManager, useTranslations } from '@stssocialst-stp/fe-core';\nimport { makeStyles } from '@material-ui/styles';\nimport {\n BISTP_PAYMENT_STATUS_TAB_VALUE,\n MODULE_NAME,\n PAYMENT_METHOD,\n} from '../../constants';\nimport { fetchBistpSummary } from '../../actions';\n\nconst useStyles = makeStyles((theme) => ({\n paper: theme.paper.paper,\n content: {\n padding: theme.spacing(2),\n },\n metric: {\n padding: theme.spacing(1.5),\n border: '1px solid rgba(0, 0, 0, 0.12)',\n },\n metricValue: {\n fontSize: '1.5rem',\n fontWeight: 600,\n },\n progress: {\n marginTop: theme.spacing(2),\n },\n}));\n\nfunction BistpPaymentStatusTabLabel({\n onChange, tabStyle, isSelected, modulesManager, payrollUuid, payroll, isInTask, isPayrollFromFailedInvoices,\n}) {\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n if (\n !payrollUuid\n || payroll?.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT\n || isInTask\n || isPayrollFromFailedInvoices\n ) return null;\n\n return (\n <Tab\n onChange={onChange}\n className={tabStyle(BISTP_PAYMENT_STATUS_TAB_VALUE)}\n selected={isSelected(BISTP_PAYMENT_STATUS_TAB_VALUE)}\n value={BISTP_PAYMENT_STATUS_TAB_VALUE}\n label={formatMessage('payroll.bistp.viewSummary')}\n />\n );\n}\n\nfunction BistpMetric({ label, value, classes }) {\n return (\n <Grid item xs={12} sm={6} md={3}>\n <div className={classes.metric}>\n <Typography variant=\"body2\">{label}</Typography>\n <Typography className={classes.metricValue}>{value}</Typography>\n </div>\n </Grid>\n );\n}\n\nfunction BistpPaymentStatusPanel({\n value, payrollUuid, payroll, fetchBistpSummary, bistpSummary,\n}) {\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n useEffect(() => {\n if (payrollUuid) {\n fetchBistpSummary(payrollUuid);\n }\n }, [payrollUuid]);\n\n if (payroll?.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) return null;\n\n const total = bistpSummary?.total?.totalCount || 0;\n const confirmados = bistpSummary?.confirmados?.totalCount || 0;\n const pendentes = bistpSummary?.pendentes?.totalCount || 0;\n const rejeitados = bistpSummary?.rejeitados?.totalCount || 0;\n const enviados = bistpSummary?.enviados?.totalCount || 0;\n const progress = total > 0 ? Math.min((confirmados / total) * 100, 100) : 0;\n\n return (\n <PublishedComponent\n pubRef=\"policyHolder.TabPanel\"\n module=\"payroll\"\n index={BISTP_PAYMENT_STATUS_TAB_VALUE}\n value={value}\n >\n {payrollUuid && (\n <Paper className={classes.paper}>\n <div className={classes.content}>\n <Grid container spacing={2}>\n <BistpMetric\n classes={classes}\n label={formatMessage('payroll.summary.totalNumberOfBenefits')}\n value={total}\n />\n <BistpMetric\n classes={classes}\n label={formatMessage('payroll.bistp.status.reconciled')}\n value={confirmados}\n />\n <BistpMetric\n classes={classes}\n label={formatMessage('payroll.bistp.status.pending')}\n value={pendentes}\n />\n <BistpMetric\n classes={classes}\n label={formatMessage('payroll.bistp.status.rejected')}\n value={rejeitados}\n />\n <BistpMetric\n classes={classes}\n label={formatMessage('payroll.bistp.status.enviados')}\n value={enviados}\n />\n </Grid>\n <div className={classes.progress}>\n <Typography variant=\"body2\">\n {formatMessage('payroll.bistp.progress')}: {confirmados}/{total}\n </Typography>\n <LinearProgress variant=\"determinate\" value={progress} />\n </div>\n </div>\n </Paper>\n )}\n </PublishedComponent>\n );\n}\n\nconst mapStateToProps = (state) => ({\n bistpSummary: state.payroll.bistpSummary,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators(\n { fetchBistpSummary },\n dispatch,\n);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(BistpPaymentStatusPanel);\nexport { BistpPaymentStatusTabLabel, BistpPaymentStatusPanel };\n","/* eslint-disable max-len */\nimport React, { useEffect, useState } from 'react';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n Paper,\n Grid,\n} from '@material-ui/core';\nimport Typography from '@material-ui/core/Typography';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport { MODULE_NAME, BENEFIT_CONSUMPTION_STATUS } from '../../../constants';\nimport BenefitConsumptionSearcherModal from '../BenefitConsumptionSearcherModal';\nimport downloadPayroll from '../../../utils/export';\nimport { fetchPayroll, closePayroll } from '../../../actions';\nimport { mutationLabel } from '../../../utils/string-utils';\n\nfunction PaymentPendingPayrollPaymentDialog({\n classes,\n payroll,\n fetchPayroll,\n closePayroll,\n payrollDetail,\n}) {\n const modulesManager = useModulesManager();\n const [payrollUuid] = useState(payrollDetail?.id ?? null);\n const [isOpen, setIsOpen] = useState(false);\n const [totalBeneficiaries, setTotalBeneficiaries] = useState(0);\n const [selectedBeneficiaries, setSelectedBeneficiaries] = useState(0);\n const [totalBillAmount, setTotalBillAmount] = useState(0);\n const [totalReconciledBillAmount, setTotalReconciledBillAmount] = useState(0);\n\n const handleOpen = () => {\n if (payrollUuid) {\n fetchPayroll(modulesManager, [`id: \"${payrollUuid}\"`]);\n }\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setIsOpen(false);\n };\n\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n\n useEffect(() => {\n if (isOpen && Object.keys(payroll).length > 0) {\n // Calculate total benefits and reconciled benefits\n const total = payroll.benefitConsumption?.length ?? 0;\n const selected = (payroll.benefitConsumption ?? []).filter(\n (benefit) => benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED,\n ).length;\n\n setTotalBeneficiaries(total);\n setSelectedBeneficiaries(selected);\n\n let totalAmount = 0;\n let reconciledAmount = 0;\n if (payroll?.benefitConsumption) {\n payroll.benefitConsumption.forEach((benefit) => {\n if (benefit.benefitAttachment && benefit.benefitAttachment.length > 0) {\n benefit.benefitAttachment.forEach((attachment) => {\n if (attachment.bill && attachment.bill.amountTotal) {\n totalAmount += parseFloat(attachment.bill.amountTotal);\n if (benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED) {\n reconciledAmount += parseFloat(attachment.bill.amountTotal);\n }\n }\n });\n }\n });\n }\n setTotalBillAmount(totalAmount);\n setTotalReconciledBillAmount(reconciledAmount);\n }\n }, [isOpen, payroll]);\n\n const closePayrollCallback = () => {\n closePayroll(\n payrollDetail,\n formatMessageWithValues('payroll.mutation.closeLabel', mutationLabel(payrollDetail)),\n );\n handleClose();\n };\n\n const downloadPayrollData = (payrollUuid, payrollName) => {\n downloadPayroll(payrollUuid, payrollName);\n };\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"contained\"\n color=\"primary\"\n className={classes.button}\n >\n {formatMessage('payroll.viewReconciliationSummary')}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%,-50%)',\n width: '90%',\n maxWidth: '90%',\n },\n }}\n >\n <DialogTitle\n style={{\n marginTop: '10px',\n }}\n >\n {formatMessageWithValues('payroll.reconciliationSummary', { payrollName: payrollDetail.name })}\n </DialogTitle>\n <DialogContent>\n <Grid container spacing={2}>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.selectedBeneficiaries')}\n </Typography>\n <Typography variant=\"body1\">\n {formatMessageWithValues('payroll.summary.beneficiariesCount', { selectedBeneficiaries, totalBeneficiaries })}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalAmountForInvoice')}\n </Typography>\n <Typography variant=\"body1\">\n {totalBillAmount}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.deliveredReconciliation')}\n </Typography>\n <Typography variant=\"body1\">\n {totalReconciledBillAmount}\n </Typography>\n </Paper>\n </Grid>\n </Grid>\n <div\n style={{ backgroundColor: '#DFEDEF' }}\n >\n <BenefitConsumptionSearcherModal payrollUuid={payrollDetail.id} payrollDetail={payrollDetail} />\n </div>\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n width: '100%',\n }}\n >\n <div style={{ maxWidth: '3000px' }}>\n <div style={{ float: 'left' }}>\n <Button\n onClick={() => downloadPayrollData(payrollDetail.id, payrollDetail.name)}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.download')}\n </Button>\n <Button\n onClick={closePayrollCallback}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.approveAndClose')}\n </Button>\n </div>\n <div style={{\n float: 'right',\n paddingRight: '16px',\n }}\n >\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{ margin: '0 16px' }}\n >\n {formatMessage('payroll.summary.close')}\n </Button>\n </div>\n </div>\n </DialogActions>\n </Dialog>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n payroll: state.payroll.payroll,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayroll,\n closePayroll,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentPendingPayrollPaymentDialog);\n","import React, { useRef, useEffect } from 'react';\nimport { connect, useSelector } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport {\n Searcher,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport LinearProgress from '@material-ui/core/LinearProgress';\nimport PayrollFilter from './PayrollFilter';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME, PAYROLL_PAYROLL_ROUTE, RIGHT_PAYROLL_SEARCH, ROWS_PER_PAGE_OPTIONS, PAYROLL_STATUS, PAYMENT_METHOD,\n} from '../../constants';\nimport { fetchPayrolls } from '../../actions';\nimport PayrollReconciliationFilesDialog from './dialogs/PayrollReconciliationFilesDialog';\nimport PayrollPendingPayrollSummary from './dialogs/PayrollPendingPayrollSummary';\n\nfunction PayrollSearcherPending({\n fetchingPayrolls,\n fetchedPayrolls,\n errorPayrolls,\n payrolls,\n pageInfo,\n totalCount,\n fetchPayrolls,\n submittingMutation,\n mutation,\n classes,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const { formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n\n const prevSubmittingMutationRef = useRef();\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n const renderBistpProgress = (payroll) => {\n if (payroll.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) return null;\n const summary = payroll.bistpSummary || {};\n const total = summary.total || 0;\n const reconciled = summary.reconciled || 0;\n const progress = total > 0 ? (reconciled / total) * 100 : 0;\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, minWidth: 120 }}>\n <LinearProgress\n variant=\"determinate\"\n value={progress}\n style={{ flex: 1, height: 8, borderRadius: 4 }}\n />\n <span style={{ fontSize: '0.75rem', whiteSpace: 'nowrap' }}>\n {reconciled}/{total}\n </span>\n </div>\n );\n };\n\n const headers = () => [\n 'payroll.name',\n 'payroll.paymentPlan',\n 'payroll.paymentPoint',\n 'payroll.status',\n 'payroll.paymentMethod',\n 'payroll.bistp.progress',\n 'emptyLabel',\n ];\n\n const sorts = () => [\n ['name', true],\n ['paymentPlan', true],\n ['paymentPoint', true],\n ['status', true],\n ['paymentMethod', true],\n ];\n\n const defaultFilters = () => ({\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n status: {\n value: PAYROLL_STATUS.PENDING_APPROVAL,\n filter: `status: ${PAYROLL_STATUS.PENDING_APPROVAL}`,\n },\n });\n\n const fetch = (params) => fetchPayrolls(modulesManager, params);\n\n const rowIdentifier = (payroll) => payroll.id;\n\n const openPayroll = (payroll) => rights.includes(RIGHT_PAYROLL_SEARCH) && history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}/${payroll?.id}`,\n );\n\n const itemFormatters = () => [\n (payroll) => payroll.name,\n (payroll) => payroll.benefitPlanNameCode ?? '',\n (payroll) => (payroll.paymentPoint\n ? `${payroll.paymentPoint.name}` : ''),\n (payroll) => (payroll.status\n ? `${payroll.status}` : ''),\n (payroll) => (payroll.paymentMethod\n ? `${payroll.paymentMethod}` : ''),\n (payroll) => renderBistpProgress(payroll),\n (payroll) => (\n <PayrollReconciliationFilesDialog\n classes={classes}\n payroll={payroll}\n />\n ),\n (payroll) => (\n <PayrollPendingPayrollSummary\n classes={classes}\n payrollDetail={payroll}\n />\n ),\n ];\n\n const onDoubleClick = (payroll) => openPayroll(payroll);\n\n const payrollFilter = ({ filters, onChangeFilters }) => (\n <PayrollFilter filters={filters} onChangeFilters={onChangeFilters} statusReadOnly />\n );\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={payrollFilter}\n fetch={fetch}\n items={payrolls}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPayrolls}\n fetchingItems={fetchingPayrolls}\n errorItems={errorPayrolls}\n tableTitle={formatMessageWithValues('payrollSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n onDoubleClick={onDoubleClick}\n defaultFilters={defaultFilters()}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPayrolls: state.payroll.fetchingPayrolls,\n fetchedPayrolls: state.payroll.fetchedPayrolls,\n errorPayrolls: state.payroll.errorPayrolls,\n payrolls: state.payroll.payrolls,\n pageInfo: state.payroll.payrollsPageInfo,\n totalCount: state.payroll.payrollsTotalCount,\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayrolls,\n journalize,\n clearConfirm,\n coreConfirm,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollSearcherPending);\n","import React from 'react';\nimport { useSelector } from 'react-redux';\n\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME,\n RIGHT_PAYROLL_SEARCH,\n} from '../../constants';\nimport PayrollSearcherPending from '../../components/payroll/PayrollSearcherPending';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n fab: theme.fab,\n}));\n\nfunction PendingPayrollsPage() {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.page.title')} />\n {rights.includes(RIGHT_PAYROLL_SEARCH)\n && <PayrollSearcherPending classes={classes} />}\n </div>\n );\n}\n\nexport default PendingPayrollsPage;\n","import { useState } from 'react';\nimport { baseApiUrl } from '@stssocialst-stp/fe-core';\n\nconst BASE = `${baseApiUrl}/payroll/beneficiarios`;\n\nfunction buildHeaders() {\n return { 'Content-Type': 'application/json' };\n}\n\nexport function useBeneficiarios() {\n const [loading, setLoading] = useState(false);\n const [output, setOutput] = useState('');\n const [error, setError] = useState(null);\n\n async function request(path, { multipart = false, body = null } = {}) {\n setLoading(true);\n setError(null);\n try {\n const init = {\n method: 'POST',\n credentials: 'same-origin',\n };\n if (multipart) {\n init.body = body;\n } else {\n init.headers = buildHeaders();\n if (body) init.body = JSON.stringify(body);\n }\n const response = await fetch(`${BASE}${path}`, init);\n let data = null;\n const contentType = response.headers.get('content-type') || '';\n if (contentType.includes('application/json')) {\n data = await response.json();\n }\n if (!response.ok) {\n const message = data?.message || `HTTP ${response.status}`;\n setError(message);\n return { ok: false, message, data };\n }\n return { ok: true, data };\n } catch (e) {\n setError(e.message);\n return { ok: false, message: e.message };\n } finally {\n setLoading(false);\n }\n }\n\n async function backup(payrollId = null) {\n const { ok, data } = await request('/backup/', {\n body: payrollId ? { payroll_id: payrollId } : {},\n });\n if (ok) {\n const blob = new Blob([JSON.stringify(data, null, 2)], { type: 'application/json' });\n const a = document.createElement('a');\n a.href = URL.createObjectURL(blob);\n a.download = `backup_beneficiarios_${new Date().toISOString().slice(0, 19).replace(/:/g, '-')}.json`;\n document.body.appendChild(a);\n a.click();\n document.body.removeChild(a);\n URL.revokeObjectURL(a.href);\n setOutput(`Backup concluído: ${JSON.stringify(data.counts)}`);\n }\n return { ok, data };\n }\n\n async function limpar({ dryRun = true, forceSkipFinancial = false } = {}) {\n const { ok, data } = await request('/limpar/', {\n body: { username: 'admin', dry_run: dryRun, force_skip_financial: forceSkipFinancial },\n });\n if (ok) setOutput(data.output);\n return { ok, data };\n }\n\n async function importar(\n file,\n { dryRun = false, payrollId, benefitPlanId, benefitType, sheet } = {},\n ) {\n const fd = new FormData();\n fd.append('file', file);\n fd.append('username', 'admin');\n fd.append('dry_run', String(dryRun));\n if (payrollId) fd.append('payroll_id', payrollId);\n if (benefitPlanId) fd.append('benefit_plan_id', benefitPlanId);\n if (benefitType) fd.append('benefit_type', benefitType);\n if (sheet) fd.append('sheet', sheet);\n const { ok, data } = await request('/importar/', { multipart: true, body: fd });\n if (ok) setOutput(data.output);\n return { ok, data };\n }\n\n async function restore(file, { dryRun = true, skipPhases = [] } = {}) {\n const fd = new FormData();\n fd.append('file', file);\n fd.append('username', 'admin');\n fd.append('dry_run', String(dryRun));\n if (skipPhases.length) fd.append('skip_phases', skipPhases.join(','));\n const { ok, data } = await request('/restore/', { multipart: true, body: fd });\n if (ok) setOutput(data.output);\n return { ok, data };\n }\n\n return {\n backup, limpar, importar, restore, loading, output, error, setOutput, setError,\n };\n}\n","import React, { useState } from 'react';\nimport { useSelector } from 'react-redux';\nimport { makeStyles } from '@material-ui/styles';\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport Paper from '@material-ui/core/Paper';\nimport Button from '@material-ui/core/Button';\nimport TextField from '@material-ui/core/TextField';\nimport Typography from '@material-ui/core/Typography';\nimport Box from '@material-ui/core/Box';\nimport Divider from '@material-ui/core/Divider';\nimport CircularProgress from '@material-ui/core/CircularProgress';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogContentText from '@material-ui/core/DialogContentText';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport { Alert } from '@material-ui/lab';\nimport { RIGHT_PAYROLL_SEARCH, MODULE_NAME } from '../../constants';\nimport { useBeneficiarios } from '../../hooks/useBeneficiarios';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n card: {\n padding: theme.spacing(3),\n marginBottom: theme.spacing(3),\n },\n sectionTitle: {\n marginBottom: theme.spacing(2),\n },\n field: {\n marginBottom: theme.spacing(2),\n },\n output: {\n marginTop: theme.spacing(2),\n padding: theme.spacing(2),\n backgroundColor: '#1e1e1e',\n color: '#d4d4d4',\n fontFamily: 'monospace',\n fontSize: 12,\n whiteSpace: 'pre-wrap',\n maxHeight: 320,\n overflow: 'auto',\n borderRadius: 4,\n },\n actions: {\n display: 'flex',\n gap: theme.spacing(1),\n flexWrap: 'wrap',\n },\n}));\n\nfunction Card({ title, children, classes }) {\n return (\n <Paper className={classes.card}>\n <Typography variant=\"h6\" className={classes.sectionTitle}>{title}</Typography>\n {children}\n </Paper>\n );\n}\n\nfunction BeneficiaryManagementPage() {\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user?.i_user?.rights ?? []);\n const {\n backup, limpar, importar, restore, loading, output, error, setOutput, setError,\n } = useBeneficiarios();\n\n const [payrollId, setPayrollId] = useState('');\n const [backupPayrollId, setBackupPayrollId] = useState('');\n\n const [limparForce, setLimparForce] = useState(false);\n const [confirmLimpar, setConfirmLimpar] = useState(false);\n\n const [importFile, setImportFile] = useState(null);\n const [importPayrollId, setImportPayrollId] = useState('');\n const [importBenefitPlanId, setImportBenefitPlanId] = useState('');\n const [importDryRun, setImportDryRun] = useState(false);\n\n const [restoreFile, setRestoreFile] = useState(null);\n const [restoreDryRun, setRestoreDryRun] = useState(true);\n\n if (!rights.includes(RIGHT_PAYROLL_SEARCH)) {\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.beneficiaries.management.title')} />\n <Alert severity=\"warning\">\n {formatMessage('payroll.beneficiaries.management.noPermission')}\n </Alert>\n </div>\n );\n }\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.beneficiaries.management.title')} />\n <Typography variant=\"h5\" className={classes.sectionTitle}>\n {formatMessage('payroll.beneficiaries.management.title')}\n </Typography>\n\n {error && (\n <Alert severity=\"error\" onClose={() => setError(null)} className={classes.field}>\n {error}\n </Alert>\n )}\n\n <Card title={formatMessage('payroll.beneficiaries.backup.title')} classes={classes}>\n <TextField\n className={classes.field}\n fullWidth\n label={formatMessage('payroll.beneficiaries.payrollId.optional')}\n value={backupPayrollId}\n onChange={(e) => setBackupPayrollId(e.target.value)}\n />\n <div className={classes.actions}>\n <Button\n variant=\"contained\"\n color=\"primary\"\n disabled={loading}\n onClick={() => backup(backupPayrollId || null)}\n >\n {formatMessage('payroll.beneficiaries.backup.button')}\n </Button>\n </div>\n </Card>\n\n <Card title={formatMessage('payroll.beneficiaries.limpar.title')} classes={classes}>\n <FormControlLabel\n control={(\n <Checkbox\n checked={limparForce}\n onChange={(e) => setLimparForce(e.target.checked)}\n />\n )}\n label={formatMessage('payroll.beneficiaries.limpar.forceSkipFinancial')}\n />\n <div className={classes.actions}>\n <Button\n variant=\"outlined\"\n disabled={loading}\n onClick={() => limpar({ dryRun: true, forceSkipFinancial: limparForce })}\n >\n {formatMessage('payroll.beneficiaries.limpar.dryRun')}\n </Button>\n <Button\n variant=\"contained\"\n color=\"secondary\"\n disabled={loading}\n onClick={() => setConfirmLimpar(true)}\n >\n {formatMessage('payroll.beneficiaries.limpar.execute')}\n </Button>\n </div>\n <Dialog open={confirmLimpar} onClose={() => setConfirmLimpar(false)}>\n <DialogTitle>{formatMessage('payroll.beneficiaries.limpar.confirm.title')}</DialogTitle>\n <DialogContent>\n <DialogContentText>\n {formatMessage('payroll.beneficiaries.limpar.confirm.message')}\n {limparForce && (\n ` ${formatMessage('payroll.beneficiaries.limpar.confirm.forceNote')}`\n )}\n </DialogContentText>\n </DialogContent>\n <DialogActions>\n <Button onClick={() => setConfirmLimpar(false)}>\n {formatMessage('payroll.beneficiaries.cancel')}\n </Button>\n <Button\n color=\"secondary\"\n variant=\"contained\"\n onClick={async () => {\n setConfirmLimpar(false);\n await limpar({ dryRun: false, forceSkipFinancial: limparForce });\n }}\n >\n {formatMessage('payroll.beneficiaries.confirm')}\n </Button>\n </DialogActions>\n </Dialog>\n </Card>\n\n <Card title={formatMessage('payroll.beneficiaries.import.title')} classes={classes}>\n <input\n className={classes.field}\n type=\"file\"\n accept=\".xlsx\"\n onChange={(e) => setImportFile(e.target.files[0])}\n />\n <TextField\n className={classes.field}\n fullWidth\n label=\"Payroll UUID\"\n value={importPayrollId}\n onChange={(e) => setImportPayrollId(e.target.value)}\n />\n <TextField\n className={classes.field}\n fullWidth\n label=\"Benefit Plan UUID\"\n value={importBenefitPlanId}\n onChange={(e) => setImportBenefitPlanId(e.target.value)}\n />\n <FormControlLabel\n control={(\n <Checkbox\n checked={importDryRun}\n onChange={(e) => setImportDryRun(e.target.checked)}\n />\n )}\n label={formatMessage('payroll.beneficiaries.dryRun')}\n />\n <div className={classes.actions}>\n <Button\n variant=\"contained\"\n color=\"primary\"\n disabled={loading || !importFile}\n onClick={() => importar(importFile, {\n dryRun: importDryRun,\n payrollId: importPayrollId || null,\n benefitPlanId: importBenefitPlanId || null,\n })}\n >\n {formatMessage('payroll.beneficiaries.import.button')}\n </Button>\n </div>\n </Card>\n\n <Card title={formatMessage('payroll.beneficiaries.restore.title')} classes={classes}>\n <input\n className={classes.field}\n type=\"file\"\n accept=\".json\"\n onChange={(e) => setRestoreFile(e.target.files[0])}\n />\n <FormControlLabel\n control={(\n <Checkbox\n checked={restoreDryRun}\n onChange={(e) => setRestoreDryRun(e.target.checked)}\n />\n )}\n label={formatMessage('payroll.beneficiaries.dryRun')}\n />\n <div className={classes.actions}>\n <Button\n variant=\"contained\"\n color=\"primary\"\n disabled={loading || !restoreFile}\n onClick={() => restore(restoreFile, { dryRun: restoreDryRun })}\n >\n {formatMessage('payroll.beneficiaries.restore.button')}\n </Button>\n </div>\n </Card>\n\n {output && (\n <Paper className={classes.card}>\n <Typography variant=\"subtitle1\" className={classes.sectionTitle}>\n {formatMessage('payroll.beneficiaries.output')}\n </Typography>\n <Divider className={classes.field} />\n {loading && <CircularProgress size={18} />}\n <Box className={classes.output}>{output}</Box>\n </Paper>\n )}\n </div>\n );\n}\n\nexport default BeneficiaryManagementPage;\n","/* eslint-disable import/prefer-default-export */\n/* eslint-disable camelcase */\n\nimport React from 'react';\n\nimport { PinDrop } from '@material-ui/icons';\nimport MonetizationOnIcon from '@material-ui/icons/MonetizationOn';\n\nimport { FormattedMessage } from '@stssocialst-stp/fe-core';\nimport {\n RIGHT_PAYMENT_POINT_SEARCH,\n RIGHT_PAYROLL_CREATE,\n RIGHT_PAYROLL_SEARCH,\n} from './constants';\nimport reducer from './reducer';\nimport messages_en from './translations/en.json';\nimport PaymentPointPage from './pages/payment-point/PaymentPointPage';\nimport PaymentPointsPage from './pages/payment-point/PaymentPointsPage';\nimport PayrollPage from './pages/payroll/PayrollPage';\nimport PayrollsPage from './pages/payroll/PayrollsPage';\nimport ApprovedPayrollsPage from './pages/payroll/ApprovedPayrollsPage';\nimport ReconciledPayrollsPage from './pages/payroll/ReconciledPayrollsPage';\nimport PaymentPointPicker from './components/payment-point/PaymentPointPicker';\nimport BenefitConsumptionPayrollSearcher from './components/payroll/BenefitConsumptionPayrollSearcher';\nimport {\n PayrollTaskItemFormatters,\n PayrollTaskTableHeaders,\n} from './components/tasks/PayrollTasks';\nimport {\n PayrollReconciliationTaskItemFormatters,\n PayrollReconciliationTaskTableHeaders,\n} from './components/tasks/PayrollReconciliationTasks';\nimport {\n BenefitConsumptionsTabLabel,\n BenefitConsumptionsTabPanel,\n} from './components/payroll/BenefitConsumptionTabPanel';\nimport {\n PayrollRejectedTaskItemFormatters,\n PayrollRejectedTaskTableHeaders,\n} from './components/tasks/PayrollRejectedTasks';\nimport {\n PayrollTaskTabLabel,\n PayrollTaskTabPanel,\n} from './components/payroll/PayrollTaskTabPanel';\nimport { PayrollDeleteTaskItemFormatters, PayrollDeleteTaskTableHeaders } from './components/tasks/PayrollDeleteTasks';\nimport { PayrollPaymentFilesTabLabel, PayrollPaymentFilesTabPanel } from './components/payroll/PayrollPaymentFilesTab';\nimport BistpPaymentStatusPanel from './components/payroll/BistpPaymentStatusPanel';\nimport { BistpPaymentStatusTabLabel } from './components/payroll/BistpPaymentStatusPanel';\nimport PendingPayrollsPage from './pages/payroll/PendingPayrollsPage';\nimport BeneficiaryManagementPage from './pages/payroll/BeneficiaryManagementPage';\n\nconst ROUTE_PAYMENT_POINTS = 'paymentPoints';\nconst ROUTE_PAYMENT_POINT = 'paymentPoints/paymentPoint';\nconst ROUTE_PAYROLLS = 'payrolls';\nconst ROUTE_PAYROLLS_APPROVED = 'payrollsApproved';\nconst ROUTE_PAYROLLS_PENDING = 'payrollsPending';\nconst ROUTE_PAYROLLS_RECONCILED = 'payrollsReconciled';\nconst ROUTE_BENEFICIARIES_MANAGEMENT = 'beneficiariesManagement';\nconst ROUTE_PAYROLL = 'payrolls/payroll';\n\nconst DEFAULT_CONFIG = {\n translations: [{ key: 'en', messages: messages_en }],\n reducers: [{ key: 'payroll', reducer }],\n refs: [\n { key: 'payroll.route.paymentPoints', ref: ROUTE_PAYMENT_POINTS },\n { key: 'payroll.route.paymentPoint', ref: ROUTE_PAYMENT_POINT },\n { key: 'payroll.route.payrolls', ref: ROUTE_PAYROLLS },\n { key: 'payroll.route.payrollsApproved', ref: ROUTE_PAYROLLS_APPROVED },\n { key: 'payroll.route.payrollsPending', ref: ROUTE_PAYROLLS_PENDING },\n { key: 'payroll.route.payrollsReconciled', ref: ROUTE_PAYROLLS_RECONCILED },\n { key: 'payroll.route.beneficiariesManagement', ref: ROUTE_BENEFICIARIES_MANAGEMENT },\n { key: 'payroll.route.payroll', ref: ROUTE_PAYROLL },\n { key: 'payroll.PaymentPointPicker', ref: PaymentPointPicker },\n { key: 'payroll.PaymentPointPicker.projection', ref: ['id', 'name', 'location'] },\n { key: 'payroll.benefitConsumptionPayrollSearcher', ref: BenefitConsumptionPayrollSearcher },\n { key: 'payroll.payrollCreateRight', ref: RIGHT_PAYROLL_CREATE },\n ],\n 'core.Router': [\n { path: ROUTE_PAYMENT_POINTS, component: PaymentPointsPage },\n { path: `${ROUTE_PAYMENT_POINT}/:payment_point_uuid?`, component: PaymentPointPage },\n { path: ROUTE_PAYROLLS, component: PayrollsPage },\n { path: ROUTE_PAYROLLS_APPROVED, component: ApprovedPayrollsPage },\n { path: ROUTE_PAYROLLS_PENDING, component: PendingPayrollsPage },\n {\n path: ROUTE_PAYROLLS_RECONCILED, component: ReconciledPayrollsPage },\n {\n path: ROUTE_BENEFICIARIES_MANAGEMENT, component: BeneficiaryManagementPage },\n {\n path: `${ROUTE_PAYROLL}/:payroll_uuid?/:createPayrollFromFailedInvoices?/:benefitPlanId?`,\n component: PayrollPage,\n },\n ],\n 'invoice.MainMenu': [\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.paymentPoint.route\" />,\n icon: <PinDrop />,\n route: `/${ROUTE_PAYMENT_POINTS}`,\n filter: (rights) => rights.includes(RIGHT_PAYMENT_POINT_SEARCH),\n id: 'legalAndFinance.paymentPoint',\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.payroll.route\" />,\n icon: <MonetizationOnIcon />,\n route: `/${ROUTE_PAYROLLS}`,\n filter: (rights) => rights.includes(RIGHT_PAYROLL_SEARCH),\n id: 'legalAndFinance.payrolls',\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.route.payrollsPending\" />,\n icon: <MonetizationOnIcon />,\n route: `/${ROUTE_PAYROLLS_PENDING}`,\n filter: (rights) => rights.includes(RIGHT_PAYROLL_SEARCH),\n id: 'legalAndFinance.payrollsPending',\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.route.payrollsApproved\" />,\n icon: <MonetizationOnIcon />,\n route: `/${ROUTE_PAYROLLS_APPROVED}`,\n filter: (rights) => rights.includes(RIGHT_PAYROLL_SEARCH),\n id: 'legalAndFinance.payrollsApproved',\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.route.payrollsReconciled\" />,\n icon: <MonetizationOnIcon />,\n route: `/${ROUTE_PAYROLLS_RECONCILED}`,\n filter: (rights) => rights.includes(RIGHT_PAYROLL_SEARCH),\n id: 'legalAndFinance.payrollsReconciled',\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.route.beneficiariesManagement\" />,\n icon: <MonetizationOnIcon />,\n route: `/${ROUTE_BENEFICIARIES_MANAGEMENT}`,\n filter: (rights) => rights.includes(RIGHT_PAYROLL_SEARCH),\n id: 'legalAndFinance.beneficiariesManagement',\n },\n ],\n 'payroll.TabPanel.label': [\n BenefitConsumptionsTabLabel, PayrollTaskTabLabel, PayrollPaymentFilesTabLabel, BistpPaymentStatusTabLabel,\n ],\n 'payroll.TabPanel.panel': [\n BenefitConsumptionsTabPanel, PayrollTaskTabPanel, PayrollPaymentFilesTabPanel, BistpPaymentStatusPanel,\n ],\n 'tasksManagement.tasks': [{\n text: <FormattedMessage module=\"payroll\" id=\"payroll.tasks.update.title\" />,\n tableHeaders: PayrollTaskTableHeaders,\n itemFormatters: PayrollTaskItemFormatters,\n taskSource: ['payroll'],\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.tasks.reconciliation.title\" />,\n tableHeaders: PayrollReconciliationTaskTableHeaders,\n itemFormatters: PayrollReconciliationTaskItemFormatters,\n taskSource: ['payroll_reconciliation'],\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.tasks.rejected.title\" />,\n tableHeaders: PayrollRejectedTaskTableHeaders,\n itemFormatters: PayrollRejectedTaskItemFormatters,\n taskSource: ['payroll_reject'],\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.tasks.delete.title\" />,\n tableHeaders: PayrollDeleteTaskTableHeaders,\n itemFormatters: PayrollDeleteTaskItemFormatters,\n taskSource: ['payroll_delete'],\n }],\n};\n\nexport const PayrollModule = (cfg) => ({ ...DEFAULT_CONFIG, ...cfg });\n"],"names":["RIGHT_PAYROLL_SEARCH","RIGHT_PAYROLL_CREATE","PAYROLL_PAYMENT_POINT_ROUTE","PAYROLL_PAYROLL_ROUTE","RIGHT_PAYMENT_POINT_SEARCH","RIGHT_PAYMENT_POINT_CREATE","RIGHT_PAYMENT_POINT_UPDATE","DEFAULT_DEBOUNCE_TIME","DEFAULT_PAGE_SIZE","CONTAINS_LOOKUP","ROWS_PER_PAGE_OPTIONS","EMPTY_STRING","MAX_LENGTH","NAME","MODULE_NAME","BENEFIT_CONSUMPTION_LIST_TAB_VALUE","BISTP_PAYMENT_STATUS_TAB_VALUE","PAYROLL_TASK_TAB_VALUE","PAYROLL_PAYMENT_FILES_TAB_VALUE","PAYROLL_TABS_LABEL_CONTRIBUTION_KEY","PAYROLL_TABS_PANEL_CONTRIBUTION_KEY","CLEARED_STATE_FILTER","field","filter","type","value","BENEFIT_PLAN","INTEGER","STRING","BOOLEAN","DATE","BOOL_OPTIONS","label","PAYROLL_STATUS","PENDING_APPROVAL","APPROVE_FOR_PAYMENT","REJECTED","RECONCILIATED","RECONCILED","PAYROLL_STATUS_LIST","BENEFIT_CONSUMPTION_STATUS","ACCEPTED","CREATED","DUPLICATE","PAYROLL_PAYMENT_FILE_STATUS","TRIGGERED","IN_PROGRESS","SUCCESS","PARTIAL_SUCCESS","WAITING_FOR_VERIFICATION","FAIL","BENEFIT_CONSUMPTION_STATUS_LIST","PAYROLL_FROM_FAILED_INVOICES_URL_PARAM","PAYMENT_METHOD","STRATEGY_OFFLINE_PAYMENT","STRATEGY_ONLINE_PAYMENT","STRATEGY_BISTP_PAYMENT","REQUEST","actionTypeName","concat","ERROR","CLEAR","ACTION_TYPE","MUTATION","CREATE_PAYMENT_POINT","DELETE_PAYMENT_POINT","UPDATE_PAYMENT_POINT","SEARCH_PAYMENT_POINTS","CREATE_PAYROLL","DELETE_PAYROLL","SEARCH_PAYROLLS","GET_PAYMENT_POINT","GET_PAYROLL","GET_BENEFIT_CONSUMPTION","GET_PAYROLL_BENEFIT_CONSUMPTION","GET_BENEFIT_ATTACHMENT","GET_PAYMENT_METHODS","CLOSE_PAYROLL","REJECT_PAYROLL","MAKE_PAYMENT_PAYROLL","GET_PAYROLL_PAYMENT_FILES","BENEFITS_SUMMARY","GET_BISTP_SUMMARY","DELETE_BENEFIT_CONSUMPTION","MUTATION_SERVICE","PAYMENT_POINT","CREATE","DELETE","UPDATE","PAYROLL","CLOSE","REJECT","MAKE_PAYMENT","BENEFIT_CONSUMPTION","STORE_STATE","submittingMutation","mutation","fetchingPaymentPoints","fetchedPaymentPoints","errorPaymentPoints","paymentPoints","paymentPointsPageInfo","paymentPointsTotalCount","fetchingPaymentPoint","fetchedPaymentPoint","paymentPoint","errorPaymentPoint","fetchingPayrolls","fetchedPayrolls","errorPayrolls","payrolls","payrollsPageInfo","payrollsTotalCount","fetchingPayroll","fetchedPayroll","payroll","errorPayroll","fetchingBenefitConsumptions","benefitConsumption","benefitConsumptionTotalCount","fetchedBenefitConsumption","errorBenefitConsumption","benefitConsumptionsPageInfo","fetchingBenefitAttachments","benefitAttachments","benefitAttachmentsTotalCount","fetchedBenefitAttachments","errorBenefitAttachments","benefitAttachmentsPageInfo","fetchingPaymentMethods","paymentMethods","fetchedPaymentMethods","errorPaymentMethods","fetchingPayrollFiles","fetchedPayrollFiles","errorPayrollFiles","payrollFiles","payrollFilesPageInfo","payrollFilesTotalCount","fetchingPayrollBenefitConsumptions","payrollBenefitConsumption","payrollBenefitConsumptionTotalCount","fetchedPayrollBenefitConsumption","errorPayrollBenefitConsumption","payrollBenefitConsumptionsPageInfo","benefitsSummary","benefitsSummaryError","fetchingBenefitsSummary","fetchedBenefitsSummary","fetchingBistpSummary","fetchedBistpSummary","bistpSummary","errorBistpSummary","reducer","_parseData","_action$payload$data$","_action$payload$data$2","_parseData2","_action$payload$data$3","_action$payload$data$4","_parseData3","_parseData4","_parseData5","_action$payload$data$5","_action$payload$data$6","_parseData6","_action$payload$data$7","_action$payload$data$8","_parseData7","_action$payload$data$9","_action$payload$data$0","_parseData8","_action$payload$data$1","_action$payload$data$10","state","arguments","length","undefined","action","_objectSpread","parseData","payload","data","map","id","decodeId","formatGraphQLError","pageInfo","totalCount","formatServerError","dateValidTo","split","dateValidFrom","payrollBills","fetchedBenefitConsumptions","benefitConsumptions","errorBenefitConsumptions","benefitConsumptionsTotalCount","benefitConsumptionByPayroll","benefitAttachmentByPayroll","benefitAttachment","fetchedPayrollBenefitConsumptions","payrollBenefitConsumptions","errorPayrollBenefitConsumptions","payrollBenefitConsumptionsTotalCount","csvReconciliationUpload","file","dispatchMutationReq","dispatchMutationErr","dispatchMutationResp","isBase64Encoded","str","base64RegExp","test","PAYMENT_POINT_PROJECTION","modulesManager","getProjection","BENEFIT_CONSUMPTION_PROJECTION","PAYROLL_BENEFIT_CONSUMPTION_PROJECTION","BENEFIT_CONSUMPTION_SUMMARY_PROJECTION","BENEFIT_ATTACHMENT_PROJECTION","BISTP_SUMMARY_PROJECTION","PAYROLL_PROJECTION","join","_toConsumableArray","PAYROLL_SEARCHER_PROJECTION","CSV_RECONCILIATION_PROJECTION","PAYMENT_METHOD_PROJECTION","formatPaymentPointGQL","name","formatGQLString","location","ppm","formatPayrollGQL","paymentPlan","paymentCycle","paymentMethod","jsonExt","JSON","stringify","fromFailedInvoicesPayrollId","PERFORM_MUTATION","mutationType","mutationInput","ACTION","clientMutationLabel","formatMutation","requestedDateTime","Date","graphql","actionType","clientMutationId","fetchPaymentPoints","params","formatPageQueryWithCount","fetchPaymentPoint","fetchPayrollPaymentFiles","clearPaymentPoint","dispatch","deletePaymentPoint","paymentPointUuids","createPaymentPoint","updatePaymentPoint","fetchPayrolls","fetchPayroll","deletePayrolls","uuid","payrollUuids","deleteBenefitConsumption","benefit","benefitUuids","createPayroll","fetchBenefitConsumptions","fetchBenefitAttachments","fetchPayrollBenefitConsumptions","fetchBenefitsSummary","formatQuery","clearPayroll","fetchPaymentMethods","closePayroll","rejectPayroll","makePaymentForPayroll","fetchBistpSummary","payrollId","query","pageTitle","item","mutationLabel","styles","theme","tableTitle","table","title","paper","fullHeight","height","PaymentPointHeadPanel","_FormPanel","_classCallCheck","_callSuper","_inherits","_createClass","key","render","_this","_this$props","props","edited","classes","readOnly","React","createElement","Grid","container","className","xs","PublishedComponent","pubRef","withNull","required","filterLabels","onChange","locations","updateAttribute","withPlaceholder","withLabel","TextInput","module","inputProps","maxLength","FormPanel","withModulesManager","injectIntl","withTheme","withStyles","useStyles","makeStyles","page","lockedPage","locked","PaymentPointPage","_ref","paymentPointUuid","rights","confirmed","coreConfirm","clearConfirm","useModulesManager","history","useHistory","_useTranslations","useTranslations","formatMessage","formatMessageWithValues","_useState","useState","_useState2","_slicedToArray","editedPaymentPoint","setEditedPaymentPoint","_useState3","_useState4","confirmedAction","setConfirmedAction","prevSubmittingMutationRef","useRef","pageLocked","isDeleted","back","goBack","useEffect","current","journalize","mandatoryFieldsEmpty","canSave","handleSave","deletePaymentPointCallback","openDeletePaymentPointConfirmDialog","actions","doIt","icon","DeleteIcon","tooltip","includes","Form","titleParams","openDirty","onEditedChanged","save","HeadPanel","saveTooltip","mapDispatchToProps","bindActionCreators","mapStateToProps","_state$core$user$i_us","_state$core","match","payment_point_uuid","core","user","i_user","connect","form","padding","width","spacing","PaymentPointFilter","_filters$isDeleted","filters","onChangeFilters","debouncedOnChangeFilters","_debounce","filterValue","filterName","_filters$filterName$v","_filters$filterName","filterTextFieldValue","_filters$filterName$v2","_filters$filterName2","onChangeStringFilter","lookup","ControlledField","anchor","FormControlLabel","control","Checkbox","color","checked","_filters$isDeleted2","_filters$isDeleted3","PaymentPointSearcher","useSelector","store","_store$core$user$i_us","paymentPointToDelete","setPaymentPointToDelete","deletedPaymentPointUuids","setDeletedPaymentPointUuids","headers","sorts","fetch","rowIdentifier","openPaymentPoint","push","getRef","onDelete","itemFormatters","_ref2","_ppm$iUser","_ppm$iUser2","username","iUser","lastName","otherNames","_ref3","code","Tooltip","IconButton","onClick","VisibilityIcon","disabled","onDoubleClick","paymentPointFilter","_ref4","defaultFilters","isRowDisabled","_","Searcher","FilterPane","items","itemsPageInfo","fetchedItems","fetchingItems","errorItems","rowsPerPageOptions","defaultPageSize","rowDisabled","rowLocked","fab","PaymentPointsPage","onCreate","Helmet","withTooltip","Fab","AddIcon","AdvancedFiltersRowValue","customFilters","currentFilter","setCurrentFilter","index","setFilters","onAttributeChange","attribute","updatedFilter","attributeValue","_defineProperty","prevFilters","updatedRows","removeFilter","newArray","splice","renderInputBasedOnType","commonProps","SelectInput","_extends","options","NumberInput","min","displayZero","toLowerCase","direction","style","backgroundColor","marginTop","transform","fontSize","Fragment","CustomFilterFieldStatusPicker","CustomFilterTypeStatusPicker","customFilterField","AdvancedFiltersDialog","intl","object","objectToSave","fetchCustomFilter","moduleName","objectType","setAppliedCustomFilters","appliedFiltersRowStructure","setAppliedFiltersRowStructure","updateAttributes","getDefaultAppliedCustomFilters","additionalParams","isOpen","setIsOpen","amount","_useState5","_useState6","createParams","objectTypeName","uuidOfObject","fetchFilters","handleClose","handleRemoveFilter","handleAddFilter","updateJsonExt","inputJsonExt","outputFilters","existingData","parse","hasOwnProperty","advanced_criteria","filterData","updatedJsonExt","saveCriteria","custom_filter_condition","isEmpty","paramsToFetchFilters","paddingLeft","paddingBottom","AddCircle","border","borderRadius","Button","variant","marginBottom","paddingRight","autoFocus","fetchingCustomFilters","errorCustomFilters","fetchedCustomFilters","PayrollStatusPicker","nullLabel","ConstantBasedPicker","constants","PaymentMethodPicker","_ref$readOnly","_ref$withNull","_ref$nullLabel","_ref$withLabel","_ref$required","Array","isArray","unshift","PayrollHeadPanel","_props$edited","setState","appliedCustomFilters","jsonData","advancedCriteria","transformedCriteria","_custom_filter_condit","_custom_filter_condit2","typeValue","_typeValue$split","_typeValue$split2","error","componentDidMount","setStateFromProps","_this2","isPayrollFromFailedInvoices","benefitPlanId","_this$state","status","Divider","Typography","FormattedMessage","PayrollPaymentDataUploadDialog","_forms$paymentData","payrollUuid","forms","setForms","handleOpen","handleFieldChange","formName","fieldName","_forms$formName","onSubmit","_asyncToGenerator","_regeneratorRuntime","mark","_callee","values","fileFormat","formData","urlImport","response","wrap","_context","prev","next","FormData","append","baseApiUrl","apiHeaders","body","method","credentials","sent","json","abrupt","_t","stop","_x","apply","button","Dialog","open","onClose","PaperProps","maxWidth","noValidate","DialogTitle","DialogContent","Input","event","target","files","accept","DialogActions","display","margin","paymentData","BenefitConsumptionFilterModal","onChangeFilter","v","ErrorSummaryModal","_benefitAttachment$be","outputGateway","output_gateway","Modal","closeAfterTransition","BackdropComponent","Backdrop","BackdropProps","timeout","Fade","Box","p","outline","justifyContent","mt","AdditionalFieldsDialog","buttonLabel","jsonExtFields","createFieldsBasedOnJSON","extra_info","maxHeight","jsonExtField","renderInputComponent","topHeader","alignItems","minWidth","printContainer","flexDirection","fontWeight","date","detailsContainer","detailRow","detailName","textTransform","detailValue","containerPadding","dividerMargin","sectionTitle","PayrollBenefitPrintTemplate","forwardRef","ref","_benefitAttachment$bi","individual","firstName","dateDue","receipt","payedOnTime","bill","datePayed","BenefitConsumptionSearcherModal","reconciledMode","payrollDetail","selectedBenefitAttachment","setSelectedBenefitAttachment","openConfirmDialog","setOpenConfirmDialog","benefitToDelete","setBenefitToDelete","payrollPrintTemplateRef","handlePrint","useReactToPrint","documentTitle","benefit_Status","defaultFiltersArray","confirmDeleteBenefitConsumption","handleDeleteBenefitConsumption","checkBenefitDueDate","PhotoCameraOutlinedIcon","_benefitAttachment$be2","amountTotal","_benefitAttachment$be3","_benefitAttachment$be4","_benefitAttachment$bi2","_benefitAttachment$be5","_benefitAttachment$be6","benefitConsumptionFilterModal","size","startIcon","PrintIcon","e","preventDefault","DialogContentText","downloadPayroll","payrollFileName","blank","url","URL","window","origin","searchParams","then","blob","link","document","href","createObjectURL","download","appendChild","click","removeChild","console","PaymentApproveForPaymentDialog","_payrollDetail$id","totalBeneficiaries","setTotalBeneficiaries","_useState7","_useState8","selectedBeneficiaries","setSelectedBeneficiaries","_useState9","_useState0","approvedBeneficiaries","setApprovedBeneficiaries","_useState1","_useState10","totalBillAmount","setTotalBillAmount","_useState11","_useState12","totalReconciledBillAmount","setTotalReconciledBillAmount","Object","keys","_payroll$benefitConsu","_payroll$benefitConsu2","_payroll$benefitConsu3","_payroll$benefitConsu4","total","selected","approved","totalAmount","reconciledAmount","forEach","attachment","parseFloat","closePayrollCallback","rejectPayrollCallback","makePaymentForPayrollCallback","downloadPayrollData","payrollName","position","top","left","Paper","elevation","gutterBottom","POLL_INTERVAL_MS","TIMEOUT_MS","COUNT_QUERY","useAsyncPayrollProgress","payrollStatus","useDispatch","benefitCount","setBenefitCount","isGenerating","setIsGenerating","timedOut","setTimedOut","pollRef","startTimeRef","prevCountRef","stableCountRounds","stopPolling","useCallback","clearInterval","fetchCount","_response$payload$dat","_response$payload","count","c","Math","max","shouldPoll","now","setInterval","tabs","selectedTab","borderBottom","unselectedTab","marginLeft","PayrollTab","isInTask","activeTab","setActiveTab","isSelected","tab","tabStyle","handleChange","_useAsyncPayrollProgr","generationComplete","setGenerationComplete","refreshBenefitsKey","setRefreshBenefitsKey","k","LinearProgress","Contributions","contributionKey","PaymentApproveForPaymentSummary","PayrollPage","statePayrollUuid","taskPayrollUuid","createPayrollFromFailedInvoices","editedPayroll","setEditedPayroll","setPayrollUuid","setIsInTask","setReadOnly","setIsPayrollFromFailedInvoices","payrollRouteRef","replace","benefitPlan","Panels","_props$match","_props$match2","_props$match3","_props$match4","payroll_uuid","PayrollFilter","_ref$statusReadOnly","statusReadOnly","PayrollSearcher","payrollToDelete","setPayrollToDelete","deletedPayrollUuids","setDeletedPayrollUuids","openDeletePayrollConfirmDialog","renderBistpProgress","summary","reconciled","progress","gap","flex","whiteSpace","openPayroll","_payroll$benefitPlanN","benefitPlanNameCode","payrollFilter","PayrollsPage","PayrollPaymentFilesSearcher","fileName","fetchFiles","DownloadIcon","PayrollReconciliationFilesDialog","showFilters","PayrollSearcherApproved","ApprovedPayrollsPage","PaymentReconcilationSummarytDialog","handleCreatePaymentForFailedInvoice","PayrollSearcherReconciled","PaymentReconciliationSummaryDialog","ReconciledPayrollsPage","PaymentPointPicker","_data$paymentPoint$ed","_data$paymentPoint","filterOptions","filterSelectedOptions","searchString","setSearchString","formatSuggestion","Boolean","_useGraphqlQuery","useGraphqlQuery","isLoading","edges","edge","node","Autocomplete","placeholder","getOptionLabel","option","onInputChange","renderInput","TextField","BenefitConsumptionStatusPicker","BenefitConsumptionPayrollFilter","BenefitConsumptionPayrollSearcher","_benefitsSummary$tota","_benefitsSummary$tota2","individualUuid","groupBeneficiaries","paymentCycleUuid","totalNumberOfBenefits","setTotalNumberOfBenefits","_payrollBenefitConsum","_payrollBenefitConsum2","_payrollBenefitConsum3","startDate","_payrollBenefitConsum4","endDate","_payrollBenefitConsum5","_payrollBenefitConsum6","_payrollBenefitConsum7","_payrollBenefitConsum8","_payrollBenefitConsum9","_payrollBenefitConsum0","_payrollBenefitConsum1","_groupBeneficiaries$g","_groupBeneficiaries$g2","benefit_Individual_Id","group","head","benefitPlanUuid","_groupBeneficiaries$g3","benefitConsumptionPayrollFilter","totalAmountDue","totalAmountReceived","errorBenefitsSummary","PayrollTaskTableHeaders","PayrollTaskItemFormatters","PayrollReconciliationTaskTableHeaders","PayrollReconciliationTaskItemFormatters","BenefitConsumptionFilter","PayrollPrintTemplate","_benefitConsumption$b","BenefitConsumptionSearcher","cols","getBistpStatusBadge","Chip","bistp_rejection_reason","bistp_skip_reason","_benefitConsumption$i","_benefitConsumption$i2","_benefitConsumption$i3","nib","hasBistpFields","bistp_processed","benefitConsumptionFilter","BenefitConsumptionsTabLabel","Tab","BenefitConsumptionsTabPanel","PayrollRejectedTaskTableHeaders","PayrollRejectedTaskItemFormatters","PayrollTaskTabLabel","PayrollTaskTabPanel","_store$core","entityId","PayrollDeleteTaskTableHeaders","PayrollDeleteTaskItemFormatters","PayrollPaymentFilesTabLabel","PayrollPaymentFilesTabPanel","content","metric","metricValue","BistpPaymentStatusTabLabel","BistpMetric","sm","md","BistpPaymentStatusPanel","_bistpSummary$total","_bistpSummary$confirm","_bistpSummary$pendent","_bistpSummary$rejeita","_bistpSummary$enviado","_useTranslations2","confirmados","pendentes","rejeitados","enviados","PaymentPendingPayrollPaymentDialog","PayrollSearcherPending","PayrollPendingPayrollSummary","PendingPayrollsPage","BASE","buildHeaders","useBeneficiarios","loading","setLoading","output","setOutput","setError","request","_request","path","_ref$multipart","multipart","_ref$body","init","contentType","_data","message","_args","get","ok","finish","backup","_backup","_callee2","_yield$request","a","_args2","_context2","payroll_id","Blob","toISOString","slice","revokeObjectURL","counts","limpar","_limpar","_callee3","_ref2$dryRun","dryRun","_ref2$forceSkipFinanc","forceSkipFinancial","_yield$request2","_args3","_context3","dry_run","force_skip_financial","importar","_x2","_importar","_callee4","_ref3$dryRun","benefitType","sheet","fd","_yield$request3","_args4","_context4","String","restore","_x3","_restore","_callee5","_ref4$dryRun","_ref4$skipPhases","skipPhases","_yield$request4","_args5","_context5","card","fontFamily","overflow","flexWrap","Card","children","BeneficiaryManagementPage","_store$core$user","_useBeneficiarios","setPayrollId","backupPayrollId","setBackupPayrollId","limparForce","setLimparForce","confirmLimpar","setConfirmLimpar","importFile","setImportFile","importPayrollId","setImportPayrollId","importBenefitPlanId","setImportBenefitPlanId","_useState13","_useState14","importDryRun","setImportDryRun","_useState15","_useState16","restoreFile","setRestoreFile","_useState17","_useState18","restoreDryRun","setRestoreDryRun","Alert","severity","fullWidth","CircularProgress","ROUTE_PAYMENT_POINTS","ROUTE_PAYMENT_POINT","ROUTE_PAYROLLS","ROUTE_PAYROLLS_APPROVED","ROUTE_PAYROLLS_PENDING","ROUTE_PAYROLLS_RECONCILED","ROUTE_BENEFICIARIES_MANAGEMENT","ROUTE_PAYROLL","DEFAULT_CONFIG","translations","messages","messages_en","reducers","refs","component","text","PinDrop","route","MonetizationOnIcon","tableHeaders","taskSource","PayrollModule","cfg"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/constants.js","../src/utils/action-type.js","../src/reducer.js","../src/utils/advanced-filters-utils.js","../src/actions.js","../src/utils/string-utils.js","../src/pages/payment-point/PaymentPointHeadPanel.js","../src/pages/payment-point/PaymentPointPage.js","../src/components/payment-point/PaymentPointFilter.js","../src/components/payment-point/PaymentPointSearcher.js","../src/pages/payment-point/PaymentPointsPage.js","../src/components/payroll/AdvancedFiltersRowValue.js","../src/components/payroll/AdvancedFiltersDialog.js","../src/components/payroll/PayrollStatusPicker.js","../src/pickers/PaymentMethodPicker.js","../src/components/payroll/dialogs/PayrollPaymentDateDialog.js","../src/components/payroll/PayrollHeadPanel.js","../src/components/payroll/dialogs/PayrollPaymentDataUploadDialog.js","../src/components/payroll/BenefitConsumptionFilterModal.js","../src/components/payroll/dialogs/ErrorSummaryModal.js","../src/components/payroll/dialogs/AdditionalFieldsDialog.js","../src/components/PayrollBenefitPrintTemplate.js","../src/components/payroll/BenefitConsumptionSearcherModal.js","../src/utils/export.js","../src/components/payroll/dialogs/PaymentApproveForPaymentSummary.js","../src/hooks/useAsyncPayrollProgress.js","../src/components/payroll/PayrollTab.js","../src/pages/payroll/PayrollPage.js","../src/components/payroll/PayrollFilter.js","../src/components/payroll/PayrollSearcher.js","../src/pages/payroll/PayrollsPage.js","../src/components/payroll/PayrollPaymentFilesSearcher.js","../src/components/payroll/dialogs/PayrollReconciliationFilesDialog.js","../src/components/payroll/PayrollSearcherApproved.js","../src/pages/payroll/ApprovedPayrollsPage.js","../src/components/payroll/dialogs/PaymentReconciliationSummaryDialog.js","../src/components/payroll/PayrollSearcherReconciled.js","../src/pages/payroll/ReconciledPayrollsPage.js","../src/components/payment-point/PaymentPointPicker.js","../src/pickers/BenefitConsumptionStatusPicker.js","../src/components/payroll/BenefitConsumptionPayrollFilter.js","../src/components/payroll/BenefitConsumptionPayrollSearcher.js","../src/components/tasks/PayrollTasks.js","../src/components/tasks/PayrollReconciliationTasks.js","../src/components/payroll/BenefitConsumptionFilter.js","../src/components/PayrollPrintTemplate.js","../src/components/payroll/BenefitConsumptionSearcher.js","../src/components/payroll/BenefitConsumptionTabPanel.js","../src/components/tasks/PayrollRejectedTasks.js","../src/components/payroll/PayrollTaskTabPanel.js","../src/components/tasks/PayrollDeleteTasks.js","../src/components/payroll/PayrollPaymentFilesTab.js","../src/components/payroll/BistpPaymentStatusPanel.js","../src/components/payroll/dialogs/PayrollPendingPayrollSummary.js","../src/components/payroll/PayrollSearcherPending.js","../src/pages/payroll/PendingPayrollsPage.js","../src/hooks/useBeneficiarios.js","../src/pages/payroll/BeneficiaryManagementPage.js","../src/index.js"],"sourcesContent":["// TODO: Change to proper rights after BE implementation\nexport const RIGHT_PAYROLL_SEARCH = 202001;\nexport const RIGHT_PAYROLL_CREATE = 202002;\nexport const RIGHT_PAYROLL_DELETE = 202004;\n\nexport const PAYROLL_PAYMENT_POINT_ROUTE = 'payroll.route.paymentPoint';\nexport const PAYROLL_PAYROLL_ROUTE = 'payroll.route.payroll';\nexport const RIGHT_PAYMENT_POINT_SEARCH = 201001;\nexport const RIGHT_PAYMENT_POINT_CREATE = 201002;\nexport const RIGHT_PAYMENT_POINT_UPDATE = 201003;\nexport const RIGHT_PAYMENT_POINT_DELETE = 201004;\n\nexport const DEFAULT_DEBOUNCE_TIME = 500;\nexport const DEFAULT_PAGE_SIZE = 10;\nexport const CONTAINS_LOOKUP = 'Icontains';\nexport const ROWS_PER_PAGE_OPTIONS = [10, 20, 50, 100];\nexport const EMPTY_STRING = '';\n\nexport const MAX_LENGTH = {\n NAME: 50,\n};\n\nexport const MODULE_NAME = 'payroll';\n\nexport const BENEFIT_CONSUMPTION_LIST_TAB_VALUE = 'benefitConsumptionsTab';\nexport const BISTP_PAYMENT_STATUS_TAB_VALUE = 'bistpPaymentStatusTab';\nexport const PAYROLL_TASK_TAB_VALUE = 'payrollTaskTab';\nexport const PAYROLL_PAYMENT_FILES_TAB_VALUE = 'payrollPaymentFilesTab';\nexport const PAYROLL_TABS_LABEL_CONTRIBUTION_KEY = 'payroll.TabPanel.label';\nexport const PAYROLL_TABS_PANEL_CONTRIBUTION_KEY = 'payroll.TabPanel.panel';\n\nexport const RIGHT_BILL_SEARCH = 156101;\nexport const RIGHT_BILL_CREATE = 156102;\nexport const RIGHT_BILL_UPDATE = 156103;\nexport const RIGHT_BILL_DELETE = 156104;\n\nexport const INVOICE_BILL_ROUTE = 'bill.route.bill';\nexport const GET_SUBJECT_AND_THIRDPARTY_TYPE_PICKER_REF = 'bill.util.getSubjectAndThirdpartyTypePicker';\nexport const ENUM_PREFIX_LENGTH = 2;\n\nexport const STATUS = {\n DRAFT: '0',\n VALIDATED: '1',\n PAYED: '2',\n CANCELLED: '3',\n DELETED: '4',\n SUSPENDED: '5',\n};\n\nexport const CLEARED_STATE_FILTER = {\n field: '', filter: '', type: '', value: '',\n};\nexport const BENEFIT_PLAN = 'BenefitPlan';\nexport const INTEGER = 'integer';\nexport const STRING = 'string';\nexport const BOOLEAN = 'boolean';\nexport const DATE = 'date';\nexport const BOOL_OPTIONS = [\n { value: 'True', label: 'True' },\n { value: 'False', label: 'False' },\n];\n\nexport const PAYROLL_STATUS = {\n PENDING_APPROVAL: 'PENDING_APPROVAL',\n APPROVE_FOR_PAYMENT: 'APPROVE_FOR_PAYMENT',\n REJECTED: 'REJECTED',\n RECONCILIATED: 'RECONCILIATED',\n RECONCILED: 'RECONCILED',\n};\n\nexport const PAYROLL_STATUS_LIST = [\n PAYROLL_STATUS.PENDING_APPROVAL,\n PAYROLL_STATUS.APPROVE_FOR_PAYMENT,\n PAYROLL_STATUS.REJECTED,\n PAYROLL_STATUS.RECONCILIATED,\n PAYROLL_STATUS.RECONCILED,\n];\n\nexport const BENEFIT_CONSUMPTION_STATUS = {\n ACCEPTED: 'ACCEPTED',\n CREATED: 'CREATED',\n APPROVE_FOR_PAYMENT: 'APPROVE_FOR_PAYMENT',\n REJECTED: 'REJECTED',\n DUPLICATE: 'DUPLICATE',\n RECONCILED: 'RECONCILED',\n};\n\nexport const PAYROLL_PAYMENT_FILE_STATUS = {\n TRIGGERED: 'TRIGGERED',\n IN_PROGRESS: 'IN_PROGRESS',\n SUCCESS: 'SUCCESS',\n PARTIAL_SUCCESS: 'PARTIAL_SUCCESS',\n WAITING_FOR_VERIFICATION: 'WAITING_FOR_VERIFICATION',\n FAIL: 'FAIL',\n};\n\nexport const BENEFIT_CONSUMPTION_STATUS_LIST = [\n BENEFIT_CONSUMPTION_STATUS.ACCEPTED, BENEFIT_CONSUMPTION_STATUS.CREATED,\n BENEFIT_CONSUMPTION_STATUS.APPROVE_FOR_PAYMENT, BENEFIT_CONSUMPTION_STATUS.REJECTED,\n BENEFIT_CONSUMPTION_STATUS.DUPLICATE, BENEFIT_CONSUMPTION_STATUS.RECONCILED,\n];\n\nexport const PAYROLL_PAYMENT_FILE_STATUS_LIST = [\n PAYROLL_PAYMENT_FILE_STATUS.TRIGGERED, PAYROLL_PAYMENT_FILE_STATUS.IN_PROGRESS, PAYROLL_PAYMENT_FILE_STATUS.SUCCESS,\n PAYROLL_PAYMENT_FILE_STATUS.WAITING_FOR_VERIFICATION, PAYROLL_PAYMENT_FILE_STATUS.FAIL,\n];\n\nexport const BENEFIT_PLAN_CONTENT_TYPE_ID = 175;\n\nexport const PAYROLL_FROM_FAILED_INVOICES_URL_PARAM = 'createPayrollFromFailedInvoices=true';\n\nexport const PAYMENT_METHOD = {\n STRATEGY_OFFLINE_PAYMENT: 'StrategyOfflinePayment',\n STRATEGY_ONLINE_PAYMENT: 'StrategyOnlinePayment',\n STRATEGY_BISTP_PAYMENT: 'StrategyBistpPayment',\n};\n\nexport const BISTP_SUMMARY_STATUS = {\n RECONCILED: 'reconciled',\n REJECTED: 'rejected',\n PENDING: 'pending',\n SKIPPED_NIB: 'skippedNib',\n SEND_FAILED: 'sendFailed',\n};\n","export const REQUEST = (actionTypeName) => `${actionTypeName}_REQ`;\nexport const SUCCESS = (actionTypeName) => `${actionTypeName}_RESP`;\nexport const ERROR = (actionTypeName) => `${actionTypeName}_ERR`;\nexport const CLEAR = (actionTypeName) => `${actionTypeName}_CLEAR`;\nexport const VALID = (actionTypeName) => `${actionTypeName}_VALID`;\n","/* eslint-disable default-param-last */\n\nimport {\n dispatchMutationErr,\n dispatchMutationReq,\n dispatchMutationResp,\n formatGraphQLError,\n formatServerError,\n pageInfo,\n parseData,\n decodeId,\n} from '@stssocialst-stp/fe-core';\nimport {\n CLEAR, ERROR, REQUEST, SUCCESS,\n} from './utils/action-type';\n\nexport const ACTION_TYPE = {\n MUTATION: 'PAYROLL_MUTATION',\n CREATE_PAYMENT_POINT: 'PAYROLL_MUTATION_CREATE_PAYMENT_POINT',\n DELETE_PAYMENT_POINT: 'PAYROLL_MUTATION_DELETE_PAYMENT_POINT',\n UPDATE_PAYMENT_POINT: 'PAYROLL_MUTATION_UPDATE_PAYMENT_POINT',\n SEARCH_PAYMENT_POINTS: 'PAYROLL_PAYMENT_POINTS',\n CREATE_PAYROLL: 'PAYROLL_MUTATION_CREATE_PAYROLL',\n DELETE_PAYROLL: 'PAYROLL_MUTATION_DELETE_PAYROLL',\n SEARCH_PAYROLLS: 'PAYROLL_PAYROLLS',\n GET_PAYMENT_POINT: 'PAYROLL_PAYMENT_POINT',\n GET_PAYROLL: 'PAYROLL_GET_PAYROLL',\n GET_BENEFIT_CONSUMPTION: 'PAYROLL_BENEFIT_CONSUMPTION',\n GET_PAYROLL_BENEFIT_CONSUMPTION: 'PAYROLL_PAYROLL_BENEFIT_CONSUMPTION',\n GET_BENEFIT_ATTACHMENT: 'PAYROLL_BENEFIT_ATTACHMENT',\n GET_PAYMENT_METHODS: 'PAYROLL_PAYMENT_METHODS',\n CLOSE_PAYROLL: 'PAYROLL_MUTATION_CLOSE_PAYROLL',\n REJECT_PAYROLL: 'PAYROLL_MUTATION_REJECT_PAYROLL',\n MAKE_PAYMENT_PAYROLL: 'PAYROLL_MUTATION_MAKE_PAYMENT_PAYROLL',\n UPDATE_PAYROLL_PAYMENT_DATE: 'PAYROLL_MUTATION_UPDATE_PAYROLL_PAYMENT_DATE',\n GET_PAYROLL_PAYMENT_FILES: 'GET_PAYROLL_PAYMENT_FILES',\n BENEFITS_SUMMARY: 'PAYROLL_BENEFITS_SUMMARY',\n GET_BISTP_SUMMARY: 'PAYROLL_BISTP_SUMMARY',\n DELETE_BENEFIT_CONSUMPTION: 'BENEFIT_CONSUMPTION_MUTATION_DELETE_BENEFIT_CONSUMPTION',\n};\n\nexport const MUTATION_SERVICE = {\n PAYMENT_POINT: {\n CREATE: 'createPaymentPoint',\n DELETE: 'deletePaymentPoint',\n UPDATE: 'updatePaymentPoint',\n },\n PAYROLL: {\n CREATE: 'createPayroll',\n DELETE: 'deletePayroll',\n CLOSE: 'closePayroll',\n REJECT: 'rejectPayroll',\n MAKE_PAYMENT: 'makePaymentForPayroll',\n UPDATE_PAYMENT_DATE: 'updatePayrollPaymentDate',\n },\n BENEFIT_CONSUMPTION: {\n DELETE: 'deleteBenefitConsumption',\n },\n};\n\nconst STORE_STATE = {\n submittingMutation: false,\n mutation: {},\n fetchingPaymentPoints: false,\n fetchedPaymentPoints: false,\n errorPaymentPoints: null,\n paymentPoints: [],\n paymentPointsPageInfo: {},\n paymentPointsTotalCount: 0,\n fetchingPaymentPoint: false,\n fetchedPaymentPoint: false,\n paymentPoint: {},\n errorPaymentPoint: null,\n\n fetchingPayrolls: false,\n fetchedPayrolls: false,\n errorPayrolls: null,\n payrolls: [],\n payrollsPageInfo: {},\n payrollsTotalCount: 0,\n\n fetchingPayroll: false,\n fetchedPayroll: false,\n payroll: {},\n errorPayroll: null,\n\n fetchingBenefitConsumptions: true,\n benefitConsumption: [],\n benefitConsumptionTotalCount: 0,\n fetchedBenefitConsumption: false,\n errorBenefitConsumption: null,\n benefitConsumptionsPageInfo: {},\n\n fetchingBenefitAttachments: false,\n benefitAttachments: [],\n benefitAttachmentsTotalCount: 0,\n fetchedBenefitAttachments: false,\n errorBenefitAttachments: null,\n benefitAttachmentsPageInfo: {},\n\n fetchingPaymentMethods: true,\n paymentMethods: [],\n fetchedPaymentMethods: false,\n errorPaymentMethods: null,\n\n fetchingPayrollFiles: false,\n fetchedPayrollFiles: false,\n errorPayrollFiles: null,\n payrollFiles: [],\n payrollFilesPageInfo: {},\n payrollFilesTotalCount: 0,\n\n fetchingPayrollBenefitConsumptions: true,\n payrollBenefitConsumption: [],\n payrollBenefitConsumptionTotalCount: 0,\n fetchedPayrollBenefitConsumption: false,\n errorPayrollBenefitConsumption: null,\n payrollBenefitConsumptionsPageInfo: {},\n\n benefitsSummary: [],\n benefitsSummaryError: null,\n fetchingBenefitsSummary: true,\n fetchedBenefitsSummary: false,\n fetchingBistpSummary: false,\n fetchedBistpSummary: false,\n bistpSummary: {},\n errorBistpSummary: null,\n};\n\nfunction reducer(\n state = STORE_STATE,\n action,\n) {\n switch (action.type) {\n case REQUEST(ACTION_TYPE.SEARCH_PAYMENT_POINTS):\n return {\n ...state,\n fetchingPaymentPoints: true,\n fetchedPaymentPoints: false,\n paymentPoints: [],\n errorPaymentPoints: null,\n paymentPointsPageInfo: {},\n paymentPointsTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.SEARCH_PAYMENT_POINTS):\n return {\n ...state,\n paymentPoints: parseData(action.payload.data.paymentPoint)?.map((paymentPoint) => ({\n ...paymentPoint,\n id: decodeId(paymentPoint.id),\n })),\n fetchingPaymentPoints: false,\n fetchedPaymentPoints: true,\n errorPaymentPoints: formatGraphQLError(action.payload),\n paymentPointsPageInfo: pageInfo(action.payload.data.paymentPoint),\n paymentPointsTotalCount: action.payload.data.paymentPoint?.totalCount ?? 0,\n };\n case ERROR(ACTION_TYPE.SEARCH_PAYMENT_POINTS):\n return {\n ...state,\n fetchingPaymentPoints: false,\n errorPaymentPoints: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.SEARCH_PAYROLLS):\n return {\n ...state,\n fetchingPayrolls: true,\n fetchedPayrolls: false,\n payrolls: [],\n errorPayrolls: null,\n payrollsPageInfo: {},\n payrollsTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.SEARCH_PAYROLLS):\n return {\n ...state,\n payrolls: parseData(action.payload.data.payroll)?.map((payroll) => ({\n ...payroll,\n id: decodeId(payroll.id),\n })),\n fetchingPayrolls: false,\n fetchedPayrolls: true,\n errorPayrolls: formatGraphQLError(action.payload),\n payrollsPageInfo: pageInfo(action.payload.data.payroll),\n payrollsTotalCount: action.payload.data.payroll?.totalCount ?? 0,\n };\n case ERROR(ACTION_TYPE.SEARCH_PAYROLLS):\n return {\n ...state,\n fetchingPayrolls: false,\n errorPayrolls: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.GET_PAYMENT_POINT):\n return {\n ...state,\n fetchingPaymentPoint: true,\n fetchedPaymentPoint: false,\n paymentPoint: [],\n errorPaymentPoint: null,\n };\n case SUCCESS(ACTION_TYPE.GET_PAYMENT_POINT):\n return {\n ...state,\n fetchingPaymentPoint: false,\n fetchedPaymentPoint: true,\n paymentPoint: parseData(action.payload.data.paymentPoint)?.map((paymentPoint) => ({\n ...paymentPoint,\n id: decodeId(paymentPoint.id),\n }))?.[0],\n errorPaymentPoint: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_PAYMENT_POINT):\n return {\n ...state,\n fetchingPaymentPoint: false,\n errorPaymentPoint: formatServerError(action.payload),\n };\n case CLEAR(ACTION_TYPE.GET_PAYMENT_POINT):\n return {\n ...state,\n fetchingPaymentPoint: false,\n fetchedPaymentPoint: false,\n paymentPoint: {},\n errorPaymentPoint: null,\n };\n case REQUEST(ACTION_TYPE.GET_PAYROLL):\n return {\n ...state,\n fetchingPayroll: true,\n fetchedPayroll: false,\n payroll: {},\n errorPayroll: null,\n };\n case SUCCESS(ACTION_TYPE.GET_PAYROLL):\n return {\n ...state,\n fetchingPayroll: false,\n fetchedPayroll: true,\n payroll: parseData(action.payload.data.payroll)?.map((payroll) => ({\n ...payroll,\n id: decodeId(payroll.id),\n dateValidTo: payroll?.dateValidTo ? payroll?.dateValidTo.split('T')[0] : null,\n dateValidFrom: payroll?.dateValidFrom ? payroll?.dateValidFrom.split('T')[0] : null,\n paymentDate: payroll?.paymentDate ? payroll?.paymentDate.split('T')[0] : null,\n }))?.[0],\n errorPayroll: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_PAYROLL):\n return {\n ...state,\n fetchingPayroll: false,\n errorPayroll: formatServerError(action.payload),\n };\n case CLEAR(ACTION_TYPE.GET_PAYROLL):\n return {\n ...state,\n fetchingPayroll: true,\n fetchedPayroll: false,\n payroll: null,\n errorPayroll: null,\n payrollBills: [],\n };\n case REQUEST(ACTION_TYPE.GET_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingBenefitConsumptions: true,\n fetchedBenefitConsumptions: false,\n benefitConsumptions: [],\n errorBenefitConsumptions: null,\n benefitConsumptionsPageInfo: {},\n benefitConsumptionsTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.GET_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingBenefitConsumptions: false,\n fetchedBenefitConsumptions: true,\n benefitConsumptions: parseData(action.payload.data.benefitConsumptionByPayroll)?.map((benefitConsumption) => ({\n ...benefitConsumption,\n id: decodeId(benefitConsumption.id),\n })),\n benefitConsumptionsPageInfo: pageInfo(action.payload.data.benefitConsumptionByPayroll),\n benefitConsumptionsTotalCount: action.payload.data.benefitConsumptionByPayroll?.totalCount ?? 0,\n errorBenefitConsumptions: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingBenefitConsumptions: false,\n errorBenefitConsumptions: formatServerError(action.payload),\n };\n case CLEAR(ACTION_TYPE.GET_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingBenefitConsumptions: false,\n fetchedBenefitConsumptions: false,\n errorBenefitConsumptions: null,\n benefitConsumptions: [],\n };\n case REQUEST(ACTION_TYPE.GET_BENEFIT_ATTACHMENT):\n return {\n ...state,\n fetchingBenefitAttachments: true,\n fetchedBenefitAttachments: false,\n benefitAttachments: [],\n errorBenefitAttachments: null,\n benefitAttachmentsPageInfo: {},\n benefitAttachmentsTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.GET_BENEFIT_ATTACHMENT):\n return {\n ...state,\n fetchingBenefitAttachments: false,\n fetchedBenefitAttachments: true,\n benefitAttachments: parseData(action.payload.data.benefitAttachmentByPayroll)?.map((benefitAttachment) => ({\n ...benefitAttachment,\n })),\n benefitAttachmentsPageInfo: pageInfo(action.payload.data.benefitAttachmentByPayroll),\n benefitAttachmentsTotalCount: action.payload.data.benefitAttachmentByPayroll?.totalCount ?? 0,\n errorBenefitAttachments: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_BENEFIT_ATTACHMENT):\n return {\n ...state,\n fetchingBenefitAttachments: false,\n errorBenefitAttachments: formatServerError(action.payload),\n };\n case CLEAR(ACTION_TYPE.GET_BENEFIT_ATTACHMENT):\n return {\n ...state,\n fetchingBenefitAttachments: false,\n fetchedBenefitAttachments: false,\n errorBenefitAttachments: null,\n benefitAttachments: [],\n };\n\n case REQUEST(ACTION_TYPE.GET_PAYMENT_METHODS):\n return {\n ...state,\n fetchingPaymentMethods: true,\n fetchedPaymentMethods: false,\n paymentMethods: [],\n errorPaymentMethods: null,\n };\n case SUCCESS(ACTION_TYPE.GET_PAYMENT_METHODS):\n return {\n ...state,\n fetchingPaymentMethods: false,\n fetchedPaymentMethods: true,\n paymentMethods: action.payload.data.paymentMethods ? action.payload.data.paymentMethods.paymentMethods : [],\n errorPaymentMethods: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_PAYMENT_METHODS):\n return {\n ...state,\n fetchingPaymentMethods: false,\n errorPaymentMethods: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.GET_PAYROLL_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingPayrollBenefitConsumptions: true,\n fetchedPayrollBenefitConsumptions: false,\n payrollBenefitConsumptions: [],\n errorPayrollBenefitConsumptions: null,\n payrollBenefitConsumptionsPageInfo: {},\n payrollBenefitConsumptionsTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.GET_PAYROLL_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingPayrollBenefitConsumptions: false,\n fetchedPayrollBenefitConsumptions: true,\n // eslint-disable-next-line max-len\n payrollBenefitConsumptions: parseData(action.payload.data.payrollBenefitConsumption)?.map((payrollBenefitConsumption) => ({\n ...payrollBenefitConsumption,\n id: decodeId(payrollBenefitConsumption.id),\n })),\n payrollBenefitConsumptionsPageInfo: pageInfo(action.payload.data.payrollBenefitConsumption),\n payrollBenefitConsumptionsTotalCount: action.payload.data.payrollBenefitConsumption?.totalCount ?? 0,\n errorPayrollBenefitConsumptions: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_PAYROLL_BENEFIT_CONSUMPTION):\n return {\n ...state,\n fetchingPayrollBenefitConsumptions: false,\n errorPayrollBenefitConsumptions: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.GET_PAYROLL_PAYMENT_FILES):\n return {\n ...state,\n fetchingPayrollFiles: true,\n fetchedPayrollFiles: false,\n errorPayrollFiles: null,\n payrollFiles: [],\n payrollFilesPageInfo: {},\n payrollFilesTotalCount: 0,\n };\n case SUCCESS(ACTION_TYPE.GET_PAYROLL_PAYMENT_FILES):\n return {\n ...state,\n fetchingPayrollFiles: false,\n fetchedPayrollFiles: true,\n errorPayrollFiles: formatGraphQLError(action.payload),\n payrollFiles: parseData(action.payload.data.csvReconciliationUpload)?.map((file) => ({\n ...file,\n })),\n payrollFilesPageInfo: pageInfo(action.payload.data.csvReconciliationUpload),\n payrollFilesTotalCount: action.payload.data.csvReconciliationUpload?.totalCount ?? 0,\n };\n case ERROR(ACTION_TYPE.GET_PAYROLL_PAYMENT_FILES):\n return {\n ...state,\n fetchingPayrollFiles: false,\n errorPayrollFiles: formatGraphQLError(action.payload),\n };\n case CLEAR(ACTION_TYPE.GET_PAYROLL_PAYMENT_FILES):\n return {\n ...state,\n fetchingPayrollFiles: false,\n fetchedPayrollFiles: false,\n errorPayrollFiles: null,\n payrollFiles: [],\n payrollFilesPageInfo: {},\n payrollFilesTotalCount: 0,\n };\n case REQUEST(ACTION_TYPE.BENEFITS_SUMMARY):\n return {\n ...state,\n fetchingBenefitsSummary: true,\n fetchedBenefitsSummary: false,\n benefitsSummary: {},\n benefitsSummaryError: null,\n };\n case SUCCESS(ACTION_TYPE.BENEFITS_SUMMARY):\n return {\n ...state,\n fetchingBenefitsSummary: false,\n fetchedBenefitsSummary: true,\n benefitsSummary: action.payload.data.benefitsSummary,\n benefitsSummaryError: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.BENEFITS_SUMMARY):\n return {\n ...state,\n fetchingBenefitsSummary: false,\n benefitsSummaryError: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.GET_BISTP_SUMMARY):\n return {\n ...state,\n fetchingBistpSummary: true,\n fetchedBistpSummary: false,\n bistpSummary: {},\n errorBistpSummary: null,\n };\n case SUCCESS(ACTION_TYPE.GET_BISTP_SUMMARY):\n return {\n ...state,\n fetchingBistpSummary: false,\n fetchedBistpSummary: true,\n bistpSummary: action.payload.data,\n errorBistpSummary: formatGraphQLError(action.payload),\n };\n case ERROR(ACTION_TYPE.GET_BISTP_SUMMARY):\n return {\n ...state,\n fetchingBistpSummary: false,\n errorBistpSummary: formatServerError(action.payload),\n };\n case REQUEST(ACTION_TYPE.MUTATION):\n return dispatchMutationReq(state, action);\n case ERROR(ACTION_TYPE.MUTATION):\n return dispatchMutationErr(state, action);\n case SUCCESS(ACTION_TYPE.CREATE_PAYMENT_POINT):\n return dispatchMutationResp(state, MUTATION_SERVICE.PAYMENT_POINT.CREATE, action);\n case SUCCESS(ACTION_TYPE.DELETE_PAYMENT_POINT):\n return dispatchMutationResp(state, MUTATION_SERVICE.PAYMENT_POINT.DELETE, action);\n case SUCCESS(ACTION_TYPE.UPDATE_PAYMENT_POINT):\n return dispatchMutationResp(state, MUTATION_SERVICE.PAYMENT_POINT.UPDATE, action);\n case SUCCESS(ACTION_TYPE.CREATE_PAYROLL):\n return dispatchMutationResp(state, MUTATION_SERVICE.PAYROLL.CREATE, action);\n case SUCCESS(ACTION_TYPE.UPDATE_PAYROLL_PAYMENT_DATE):\n return dispatchMutationResp(state, MUTATION_SERVICE.PAYROLL.UPDATE_PAYMENT_DATE, action);\n case SUCCESS(ACTION_TYPE.DELETE_PAYROLL):\n return dispatchMutationResp(state, MUTATION_SERVICE.PAYROLL.DELETE, action);\n case SUCCESS(ACTION_TYPE.DELETE_BENEFIT_CONSUMPTION):\n return dispatchMutationResp(state, MUTATION_SERVICE.BENEFIT_CONSUMPTION.DELETE, action);\n default:\n return state;\n }\n}\n\nexport default reducer;\n","// eslint-disable-next-line import/prefer-default-export\nexport function isBase64Encoded(str) {\n // Base64 encoded strings can only contain characters from [A-Za-z0-9+/=]\n const base64RegExp = /^[A-Za-z0-9+/=]+$/;\n return base64RegExp.test(str);\n}\n","/* eslint-disable max-len */\nimport {\n decodeId,\n formatGQLString,\n formatMutation,\n formatPageQueryWithCount,\n formatQuery,\n graphql,\n} from '@stssocialst-stp/fe-core';\n\nimport { ACTION_TYPE, MUTATION_SERVICE } from './reducer';\nimport {\n CLEAR, ERROR, REQUEST, SUCCESS,\n} from './utils/action-type';\nimport { isBase64Encoded } from './utils/advanced-filters-utils';\nimport { PAYROLL_STATUS } from './constants';\n\nexport const PAYMENT_POINT_PROJECTION = (modulesManager) => [\n 'id',\n 'name',\n 'isDeleted',\n `location ${modulesManager.getProjection('location.Location.FlatProjection')}`,\n `ppm ${modulesManager.getProjection('admin.UserPicker.projection')}`,\n];\n\nconst BENEFIT_CONSUMPTION_PROJECTION = () => [\n 'id',\n 'jsonExt',\n 'code',\n 'individual {firstName, lastName, nib}',\n 'benefitAttachment {bill {id, code, terms, amountTotal, datePayed}}',\n 'receipt',\n 'photo',\n 'amount',\n 'type',\n 'status',\n 'dateDue',\n 'paymentDate',\n];\n\nconst PAYROLL_BENEFIT_CONSUMPTION_PROJECTION = () => [\n 'id',\n // eslint-disable-next-line max-len\n 'benefit{id,isDeleted,jsonExt,dateCreated,dateUpdated,dateValidFrom,dateValidTo,id,code,individual {firstName, lastName},benefitAttachment {bill {id, code, terms, datePayed}},receipt,photo,amount,type,status,dateDue,paymentDate}',\n 'payroll {id, name, status, paymentCycle {code, startDate, endDate}, paymentMethod, paymentDate, benefitPlanNameCode}',\n];\n\nconst BENEFIT_CONSUMPTION_SUMMARY_PROJECTION = () => [\n 'totalAmountReceived', 'totalAmountDue',\n];\n\nconst BENEFIT_ATTACHMENT_PROJECTION = () => [\n 'benefit{id, status, code, dateDue, receipt, individual {firstName, lastName}, jsonExt, type, status, amount, receipt}',\n 'bill{id, code, terms, amountTotal, datePayed}',\n];\n\nconst BISTP_SUMMARY_PROJECTION = () => [\n 'bistpSummary { total reconciled rejected pending skippedNib sendFailed }',\n];\n\nconst PAYROLL_PROJECTION = (modulesManager) => [\n 'id',\n 'name',\n 'paymentMethod',\n 'paymentDate',\n 'paymentPlan { code, id, name, benefitPlanType }',\n 'benefitPlanNameCode',\n `paymentPoint { ${PAYMENT_POINT_PROJECTION(modulesManager).join(' ')} }`,\n 'paymentCycle { code, startDate, endDate }',\n 'jsonExt',\n 'status',\n 'dateValidFrom',\n 'dateValidTo',\n 'isDeleted',\n ...BISTP_SUMMARY_PROJECTION(),\n];\n\nconst PAYROLL_SEARCHER_PROJECTION = (modulesManager) => [\n 'id',\n 'name',\n 'paymentMethod',\n 'paymentDate',\n 'paymentPlan { code, id, name, benefitPlanType }',\n 'benefitPlanNameCode',\n `paymentPoint { ${PAYMENT_POINT_PROJECTION(modulesManager).join(' ')} }`,\n 'paymentCycle { code, startDate, endDate }',\n 'jsonExt',\n 'status',\n 'dateValidFrom',\n 'dateValidTo',\n 'isDeleted',\n ...BISTP_SUMMARY_PROJECTION(),\n];\n\nconst CSV_RECONCILIATION_PROJECTION = () => [\n 'fileName',\n 'status',\n 'error',\n 'jsonExt',\n];\n\nconst PAYMENT_METHOD_PROJECTION = () => [\n 'paymentMethods {name}',\n];\n\nconst formatPaymentPointGQL = (paymentPoint) => `\n ${paymentPoint?.id ? `id: \"${paymentPoint.id}\"` : ''}\n ${paymentPoint?.name ? `name: \"${formatGQLString(paymentPoint.name)}\"` : ''}\n ${paymentPoint?.location ? `locationId: ${decodeId(paymentPoint.location.id)}` : ''}\n ${paymentPoint?.ppm ? `ppmId: \"${decodeId(paymentPoint.ppm.id)}\"` : ''}\n `;\n\nconst formatPayrollGQL = (payroll) => `\n ${payroll?.id ? `id: \"${payroll.id}\"` : ''}\n ${payroll?.name ? `name: \"${formatGQLString(payroll.name)}\"` : ''}\n ${payroll?.paymentPoint ? `paymentPointId: \"${decodeId(payroll.paymentPoint.id)}\"` : ''}\n ${payroll?.paymentPlan ? `paymentPlanId: \"${decodeId(payroll.paymentPlan.id)}\"` : ''}\n ${payroll?.paymentCycle ? `paymentCycleId: \"${decodeId(payroll.paymentCycle.id)}\"` : ''}\n ${payroll?.paymentMethod ? `paymentMethod: \"${payroll.paymentMethod}\"` : ''}\n ${payroll?.paymentDate ? `paymentDate: \"${payroll.paymentDate}\"` : ''}\n ${`status: ${PAYROLL_STATUS.PENDING_APPROVAL}`}\n ${\n payroll?.jsonExt\n ? `jsonExt: ${JSON.stringify(payroll.jsonExt)}`\n : ''\n}\n ${\n payroll?.dateValidFrom\n ? `dateValidFrom: \"${payroll.dateValidFrom}\"`\n : ''\n}\n ${\n payroll?.dateValidTo\n ? `dateValidTo: \"${payroll.dateValidTo}\"`\n : ''\n}\n ${\n payroll?.fromFailedInvoicesPayrollId\n ? `fromFailedInvoicesPayrollId: \"${payroll.fromFailedInvoicesPayrollId}\"`\n : ''\n}\n `;\n\nconst PERFORM_MUTATION = (mutationType, mutationInput, ACTION, clientMutationLabel) => {\n const mutation = formatMutation(mutationType, mutationInput, clientMutationLabel);\n const requestedDateTime = new Date();\n return graphql(\n mutation.payload,\n [REQUEST(ACTION_TYPE.MUTATION), SUCCESS(ACTION), ERROR(ACTION_TYPE.MUTATION)],\n {\n actionType: ACTION,\n clientMutationId: mutation.clientMutationId,\n clientMutationLabel,\n requestedDateTime,\n },\n );\n};\n\nexport function fetchPaymentPoints(modulesManager, params) {\n const payload = formatPageQueryWithCount('paymentPoint', params, PAYMENT_POINT_PROJECTION(modulesManager));\n return graphql(payload, ACTION_TYPE.SEARCH_PAYMENT_POINTS);\n}\n\nexport function fetchPaymentPoint(modulesManager, params) {\n const payload = formatPageQueryWithCount('paymentPoint', params, PAYMENT_POINT_PROJECTION(modulesManager));\n return graphql(payload, ACTION_TYPE.GET_PAYMENT_POINT);\n}\n\nexport function fetchPayrollPaymentFiles(modulesManager, params) {\n const payload = formatPageQueryWithCount('csvReconciliationUpload', params, CSV_RECONCILIATION_PROJECTION());\n return graphql(payload, ACTION_TYPE.GET_PAYROLL_PAYMENT_FILES);\n}\n\nexport const clearPaymentPoint = () => (dispatch) => {\n dispatch({\n type: CLEAR(ACTION_TYPE.GET_PAYMENT_POINT),\n });\n};\n\nexport function deletePaymentPoint(paymentPoint, clientMutationLabel) {\n const paymentPointUuids = `ids: [\"${paymentPoint?.id}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYMENT_POINT.DELETE,\n paymentPointUuids,\n ACTION_TYPE.DELETE_PAYMENT_POINT,\n clientMutationLabel,\n );\n}\n\nexport function createPaymentPoint(paymentPoint, clientMutationLabel) {\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYMENT_POINT.CREATE,\n formatPaymentPointGQL(paymentPoint),\n ACTION_TYPE.CREATE_PAYMENT_POINT,\n clientMutationLabel,\n );\n}\n\nexport function updatePaymentPoint(paymentPoint, clientMutationLabel) {\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYMENT_POINT.UPDATE,\n formatPaymentPointGQL(paymentPoint),\n ACTION_TYPE.UPDATE_PAYMENT_POINT,\n clientMutationLabel,\n );\n}\n\nexport function fetchPayrolls(modulesManager, params) {\n const payload = formatPageQueryWithCount('payroll', params, PAYROLL_SEARCHER_PROJECTION(modulesManager));\n return graphql(payload, ACTION_TYPE.SEARCH_PAYROLLS);\n}\n\nexport function fetchPayroll(modulesManager, params) {\n const payload = formatPageQueryWithCount('payroll', params, PAYROLL_PROJECTION(modulesManager));\n return graphql(payload, ACTION_TYPE.GET_PAYROLL);\n}\n\nexport function deletePayrolls(payroll, clientMutationLabel) {\n const uuid = isBase64Encoded(payroll.id) ? decodeId(payroll?.id) : payroll?.id;\n const payrollUuids = `ids: [\"${uuid}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYROLL.DELETE,\n payrollUuids,\n ACTION_TYPE.DELETE_PAYROLL,\n clientMutationLabel,\n );\n}\n\nexport function deleteBenefitConsumption(benefit, clientMutationLabel) {\n const uuid = isBase64Encoded(benefit.id) ? decodeId(benefit?.id) : benefit?.id;\n const benefitUuids = `ids: [\"${uuid}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.BENEFIT_CONSUMPTION.DELETE,\n benefitUuids,\n ACTION_TYPE.DELETE_BENEFIT_CONSUMPTION,\n clientMutationLabel,\n );\n}\n\nexport function createPayroll(payroll, clientMutationLabel) {\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYROLL.CREATE,\n formatPayrollGQL(payroll),\n ACTION_TYPE.CREATE_PAYROLL,\n clientMutationLabel,\n );\n}\n\nexport function fetchBenefitConsumptions(modulesManager, params) {\n const payload = formatPageQueryWithCount('benefitConsumptionByPayroll', params, BENEFIT_CONSUMPTION_PROJECTION());\n return graphql(payload, ACTION_TYPE.GET_BENEFIT_CONSUMPTION);\n}\n\nexport function fetchBenefitAttachments(modulesManager, params) {\n const payload = formatPageQueryWithCount('benefitAttachmentByPayroll', params, BENEFIT_ATTACHMENT_PROJECTION());\n return graphql(payload, ACTION_TYPE.GET_BENEFIT_ATTACHMENT);\n}\n\nexport function fetchPayrollBenefitConsumptions(modulesManager, params) {\n // eslint-disable-next-line max-len\n const payload = formatPageQueryWithCount('payrollBenefitConsumption', params, PAYROLL_BENEFIT_CONSUMPTION_PROJECTION());\n return graphql(payload, ACTION_TYPE.GET_PAYROLL_BENEFIT_CONSUMPTION);\n}\n\nexport function fetchBenefitsSummary(params) {\n const payload = formatQuery(\n 'benefitsSummary',\n params,\n BENEFIT_CONSUMPTION_SUMMARY_PROJECTION(),\n );\n return graphql(payload, ACTION_TYPE.BENEFITS_SUMMARY);\n}\n\nexport const clearPayrollBills = () => (dispatch) => {\n dispatch({\n type: CLEAR(ACTION_TYPE.GET_BENEFIT_CONSUMPTION),\n });\n};\n\nexport const clearPayroll = () => (dispatch) => {\n dispatch({\n type: CLEAR(ACTION_TYPE.GET_PAYROLL),\n });\n};\n\nexport function fetchPaymentMethods(params) {\n const payload = formatQuery('paymentMethods', params, PAYMENT_METHOD_PROJECTION());\n return graphql(payload, ACTION_TYPE.GET_PAYMENT_METHODS);\n}\n\nexport function closePayroll(payroll, clientMutationLabel) {\n const payrollUuids = `ids: [\"${payroll?.id}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYROLL.CLOSE,\n payrollUuids,\n ACTION_TYPE.CLOSE_PAYROLL,\n clientMutationLabel,\n );\n}\n\nexport function rejectPayroll(payroll, clientMutationLabel) {\n const payrollUuids = `ids: [\"${payroll?.id}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYROLL.REJECT,\n payrollUuids,\n ACTION_TYPE.REJECT_PAYROLL,\n clientMutationLabel,\n );\n}\n\nexport function makePaymentForPayroll(payroll, clientMutationLabel) {\n const payrollUuids = `ids: [\"${payroll?.id}\"]`;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYROLL.MAKE_PAYMENT,\n payrollUuids,\n ACTION_TYPE.MAKE_PAYMENT_PAYROLL,\n clientMutationLabel,\n );\n}\n\nexport function updatePayrollPaymentDate(payroll, paymentDate, clientMutationLabel) {\n const mutationInput = `\n id: \"${payroll?.id}\"\n paymentDate: \"${paymentDate}\"\n `;\n return PERFORM_MUTATION(\n MUTATION_SERVICE.PAYROLL.UPDATE_PAYMENT_DATE,\n mutationInput,\n ACTION_TYPE.UPDATE_PAYROLL_PAYMENT_DATE,\n clientMutationLabel,\n );\n}\n\nexport function fetchBistpSummary(payrollId) {\n const query = `\n {\n total: benefitConsumptionByPayroll(payrollUuid: \"${payrollId}\", first: 0) { totalCount }\n pendentes: benefitConsumptionByPayroll(payrollUuid: \"${payrollId}\", status: ACCEPTED, first: 0) { totalCount }\n enviados: benefitConsumptionByPayroll(payrollUuid: \"${payrollId}\", status: APPROVE_FOR_PAYMENT, first: 0) { totalCount }\n confirmados: benefitConsumptionByPayroll(payrollUuid: \"${payrollId}\", status: RECONCILED, first: 0) { totalCount }\n rejeitados: benefitConsumptionByPayroll(payrollUuid: \"${payrollId}\", status: REJECTED, first: 0) { totalCount }\n }\n `;\n return graphql(query, ACTION_TYPE.GET_BISTP_SUMMARY);\n}\n","export const pageTitle = (item) => ({\n name: item?.name,\n});\n\nexport const mutationLabel = (item) => ({\n id: item?.id,\n});\n","import React from 'react';\nimport { injectIntl } from 'react-intl';\n\nimport { Grid } from '@material-ui/core';\nimport { withTheme, withStyles } from '@material-ui/core/styles';\n\nimport {\n TextInput,\n FormPanel,\n withModulesManager,\n PublishedComponent,\n} from '@stssocialst-stp/fe-core';\nimport { MAX_LENGTH } from '../../constants';\n\nconst styles = (theme) => ({\n tableTitle: theme.table.title,\n item: theme.paper.item,\n fullHeight: {\n height: '100%',\n },\n});\n\nclass PaymentPointHeadPanel extends FormPanel {\n render() {\n const { edited, classes, readOnly } = this.props;\n const paymentPoint = { ...edited };\n return (\n <Grid container className={classes.item}>\n <Grid xs={12}>\n <PublishedComponent\n pubRef=\"location.DetailedLocation\"\n withNull\n required\n readOnly={readOnly}\n filterLabels={false}\n value={paymentPoint?.location}\n onChange={(locations) => this.updateAttribute('location', locations)}\n />\n </Grid>\n <Grid xs={3} className={classes.item}>\n <PublishedComponent\n pubRef=\"admin.PaymentPointManagerPicker\"\n required\n withPlaceholder\n withLabel\n readOnly={readOnly}\n value={paymentPoint?.ppm}\n onChange={(ppm) => this.updateAttribute('ppm', ppm)}\n />\n </Grid>\n <Grid xs={3} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"paymentPoint.name\"\n required\n readOnly={readOnly}\n inputProps={{ maxLength: MAX_LENGTH.NAME }}\n value={paymentPoint?.name}\n onChange={(name) => this.updateAttribute('name', name)}\n />\n </Grid>\n </Grid>\n );\n }\n}\n\nexport default withModulesManager(injectIntl(withTheme(withStyles(styles)(PaymentPointHeadPanel))));\n","import React, { useState, useRef, useEffect } from 'react';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\n\nimport { makeStyles } from '@material-ui/styles';\nimport DeleteIcon from '@material-ui/icons/Delete';\n\nimport {\n Form,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport {\n clearPaymentPoint,\n createPaymentPoint,\n deletePaymentPoint,\n fetchPaymentPoint,\n updatePaymentPoint,\n} from '../../actions';\nimport {\n MODULE_NAME,\n RIGHT_PAYMENT_POINT_UPDATE,\n} from '../../constants';\nimport { ACTION_TYPE } from '../../reducer';\nimport { mutationLabel, pageTitle } from '../../utils/string-utils';\nimport PaymentPointHeadPanel from './PaymentPointHeadPanel';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n lockedPage: theme.page.locked,\n}));\n\nfunction PaymentPointPage({\n clearPaymentPoint,\n createPaymentPoint,\n deletePaymentPoint,\n updatePaymentPoint,\n paymentPointUuid,\n fetchPaymentPoint,\n rights,\n confirmed,\n submittingMutation,\n mutation,\n paymentPoint,\n coreConfirm,\n clearConfirm,\n}) {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const history = useHistory();\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n\n const [editedPaymentPoint, setEditedPaymentPoint] = useState({});\n const [confirmedAction, setConfirmedAction] = useState(() => null);\n const prevSubmittingMutationRef = useRef();\n const pageLocked = editedPaymentPoint?.isDeleted;\n\n const back = () => history.goBack();\n\n useEffect(() => {\n if (paymentPointUuid) {\n fetchPaymentPoint(modulesManager, [`id: \"${paymentPointUuid}\"`]);\n }\n }, [paymentPointUuid]);\n\n useEffect(() => {\n if (confirmed) confirmedAction();\n return () => confirmed && clearConfirm(null);\n }, [confirmed]);\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n if (mutation?.actionType === ACTION_TYPE.DELETE_PAYMENT_POINT) {\n back();\n }\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n useEffect(() => setEditedPaymentPoint(paymentPoint), [paymentPoint]);\n\n useEffect(() => () => clearPaymentPoint(), []);\n\n const mandatoryFieldsEmpty = () => {\n if (\n editedPaymentPoint?.name\n && editedPaymentPoint?.location\n && editedPaymentPoint?.ppm\n && !editedPaymentPoint?.isDeleted) return false;\n return true;\n };\n\n const canSave = () => !mandatoryFieldsEmpty();\n\n const handleSave = () => {\n if (paymentPoint?.id) {\n updatePaymentPoint(\n editedPaymentPoint,\n formatMessageWithValues('paymentPoint.mutation.updateLabel', mutationLabel(paymentPoint)),\n );\n } else {\n createPaymentPoint(\n editedPaymentPoint,\n formatMessageWithValues('paymentPoint.mutation.createLabel', mutationLabel(paymentPoint)),\n );\n }\n back();\n };\n\n const deletePaymentPointCallback = () => deletePaymentPoint(\n paymentPoint,\n formatMessageWithValues('paymentPoint.mutation.deleteLabel', mutationLabel(paymentPoint)),\n );\n\n const openDeletePaymentPointConfirmDialog = () => {\n setConfirmedAction(() => deletePaymentPointCallback);\n coreConfirm(\n formatMessageWithValues('paymentPoint.delete.confirm.title', pageTitle(paymentPoint)),\n formatMessage('paymentPoint.delete.confirm.message'),\n );\n };\n\n const actions = [\n !!paymentPointUuid && !pageLocked && {\n doIt: openDeletePaymentPointConfirmDialog,\n icon: <DeleteIcon />,\n tooltip: formatMessage('tooltip.delete'),\n },\n ];\n\n return (\n rights.includes(RIGHT_PAYMENT_POINT_UPDATE) && (\n <div className={pageLocked ? classes.lockedPage : null}>\n <div className={classes.page}>\n <Form\n module=\"payroll\"\n title={formatMessageWithValues('PaymentPointPage.title', pageTitle(paymentPoint))}\n titleParams={pageTitle(paymentPoint)}\n openDirty\n edited={editedPaymentPoint}\n onEditedChanged={setEditedPaymentPoint}\n back={back}\n mandatoryFieldsEmpty={mandatoryFieldsEmpty}\n canSave={canSave}\n save={handleSave}\n HeadPanel={PaymentPointHeadPanel}\n readOnly={pageLocked}\n rights={rights}\n actions={actions}\n setConfirmedAction={setConfirmedAction}\n saveTooltip={formatMessage('tooltip.save')}\n />\n </div>\n\n </div>\n )\n );\n}\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n clearPaymentPoint,\n createPaymentPoint,\n deletePaymentPoint,\n updatePaymentPoint,\n fetchPaymentPoint,\n coreConfirm,\n clearConfirm,\n journalize,\n}, dispatch);\n\nconst mapStateToProps = (state, props) => ({\n paymentPointUuid: props.match.params.payment_point_uuid,\n rights: state.core?.user?.i_user?.rights ?? [],\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n paymentPoint: state.payroll.paymentPoint,\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentPointPage);\n","import React from 'react';\nimport _debounce from 'lodash/debounce';\n\nimport { FormControlLabel, Grid, Checkbox } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n TextInput,\n ControlledField,\n useModulesManager,\n useTranslations,\n PublishedComponent,\n decodeId,\n} from '@stssocialst-stp/fe-core';\nimport {\n CONTAINS_LOOKUP,\n DEFAULT_DEBOUNCE_TIME,\n EMPTY_STRING,\n MODULE_NAME,\n} from '../../constants';\n\nconst useStyles = makeStyles((theme) => ({\n form: {\n padding: '0 0 10px 0',\n width: '100%',\n },\n item: {\n padding: theme.spacing(1),\n },\n}));\n\nfunction PaymentPointFilter({\n filters, onChangeFilters,\n}) {\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n const debouncedOnChangeFilters = _debounce(onChangeFilters, DEFAULT_DEBOUNCE_TIME);\n\n const filterValue = (filterName) => filters?.[filterName]?.value ?? null;\n\n const filterTextFieldValue = (filterName) => filters?.[filterName]?.value ?? EMPTY_STRING;\n\n const onChangeStringFilter = (filterName, lookup = null) => (value) => {\n if (lookup) {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}_${lookup}: \"${value}\"`,\n },\n ]);\n } else {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}: \"${value}\"`,\n },\n ]);\n }\n };\n\n return (\n <Grid container className={classes.form}>\n <ControlledField\n module=\"payroll\"\n id=\"PaymentPointFilter.location\"\n field={(\n <Grid xs={12}>\n <PublishedComponent\n pubRef=\"location.DetailedLocationFilter\"\n withNull\n filters={filters}\n onChangeFilters={onChangeFilters}\n anchor=\"parentLocation\"\n />\n </Grid>\n )}\n />\n <ControlledField\n module=\"payroll\"\n id=\"admin.PaymentPointManagerPicker\"\n field={(\n <Grid className={classes.item} xs={3}>\n <PublishedComponent\n pubRef=\"admin.PaymentPointManagerPicker\"\n value={filterValue('ppm_Id')}\n withPlaceholder\n withLabel\n onChange={(ppm) => onChangeFilters([\n {\n id: 'ppm_Id',\n value: ppm,\n filter: `ppm_Id: \"${ppm?.id && decodeId(ppm?.id)}\"`,\n },\n ])}\n />\n </Grid>\n )}\n />\n <Grid xs={3} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label={formatMessage('paymentPoint.name')}\n value={filterTextFieldValue('name')}\n onChange={onChangeStringFilter('name', CONTAINS_LOOKUP)}\n />\n </Grid>\n <ControlledField\n module=\"payroll\"\n id=\"paymentPointFilter.isDeleted\"\n field={(\n <Grid xs={12} className={classes.item}>\n <FormControlLabel\n control={(\n <Checkbox\n color=\"primary\"\n checked={filters?.isDeleted?.value}\n onChange={() => onChangeFilters([\n {\n id: 'isDeleted',\n value: !filters?.isDeleted?.value,\n filter: `isDeleted: ${!filters?.isDeleted?.value}`,\n },\n ])}\n />\n )}\n label={formatMessage('tooltip.isDeleted')}\n />\n </Grid>\n )}\n />\n </Grid>\n );\n}\n\nexport default PaymentPointFilter;\n","import React, { useState, useRef, useEffect } from 'react';\nimport { bindActionCreators } from 'redux';\nimport { connect, useSelector } from 'react-redux';\n\nimport { IconButton, Tooltip } from '@material-ui/core';\nimport VisibilityIcon from '@material-ui/icons/Visibility';\nimport DeleteIcon from '@material-ui/icons/Delete';\n\nimport {\n Searcher,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport { deletePaymentPoint, fetchPaymentPoints } from '../../actions';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME, PAYROLL_PAYMENT_POINT_ROUTE, RIGHT_PAYMENT_POINT_SEARCH, ROWS_PER_PAGE_OPTIONS,\n} from '../../constants';\nimport { mutationLabel, pageTitle } from '../../utils/string-utils';\nimport PaymentPointFilter from './PaymentPointFilter';\n\nfunction PaymentPointSearcher({\n fetchPaymentPoints,\n fetchingPaymentPoints,\n fetchedPaymentPoints,\n errorPaymentPoints,\n deletePaymentPoint,\n paymentPoints,\n coreConfirm,\n clearConfirm,\n pageInfo,\n totalCount,\n confirmed,\n submittingMutation,\n mutation,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n\n const [paymentPointToDelete, setPaymentPointToDelete] = useState(null);\n const [deletedPaymentPointUuids, setDeletedPaymentPointUuids] = useState([]);\n const prevSubmittingMutationRef = useRef();\n\n const openDeletePaymentPointConfirmDialog = () => {\n coreConfirm(\n formatMessageWithValues('paymentPoint.delete.confirm.title', pageTitle(paymentPointToDelete)),\n formatMessage('paymentPoint.delete.confirm.message'),\n );\n };\n\n useEffect(() => paymentPointToDelete && openDeletePaymentPointConfirmDialog(), [paymentPointToDelete]);\n\n useEffect(() => {\n if (paymentPointToDelete && confirmed) {\n deletePaymentPoint(\n paymentPointToDelete,\n formatMessageWithValues('paymentPoint.mutation.deleteLabel', mutationLabel(paymentPointToDelete)),\n );\n setDeletedPaymentPointUuids([...deletedPaymentPointUuids, paymentPointToDelete.id]);\n }\n if (paymentPointToDelete && confirmed !== null) {\n setPaymentPointToDelete(null);\n }\n return () => confirmed && clearConfirm(false);\n }, [confirmed]);\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n const headers = () => [\n 'paymentPoint.name',\n 'paymentPoint.ppm',\n 'paymentPoint.location',\n 'emptyLabel',\n ];\n\n const sorts = () => [\n ['name', true],\n ['ppm', true],\n ['location', true],\n ];\n\n const fetch = (params) => fetchPaymentPoints(modulesManager, params);\n\n const rowIdentifier = (paymentPoint) => paymentPoint.id;\n\n const openPaymentPoint = (paymentPoint) => rights.includes(RIGHT_PAYMENT_POINT_SEARCH) && history.push(\n `/${modulesManager.getRef(PAYROLL_PAYMENT_POINT_ROUTE)}/${paymentPoint?.id}`,\n );\n\n const onDelete = (paymentPoint) => setPaymentPointToDelete(paymentPoint);\n\n const itemFormatters = () => [\n (paymentPoint) => paymentPoint.name,\n ({ ppm }) => `${ppm?.username} ${ppm?.iUser?.lastName} ${ppm?.iUser?.otherNames}`,\n ({ location }) => `${location?.code} ${location?.name}`,\n (paymentPoint) => (\n <Tooltip title={formatMessage('tooltip.viewDetails')}>\n <IconButton\n onClick={() => openPaymentPoint(paymentPoint)}\n >\n <VisibilityIcon />\n </IconButton>\n </Tooltip>\n ),\n (paymentPoint) => (\n <Tooltip title={formatMessage('tooltip.delete')}>\n <IconButton\n onClick={() => onDelete(paymentPoint)}\n disabled={deletedPaymentPointUuids.includes(paymentPoint.id)}\n >\n <DeleteIcon />\n </IconButton>\n </Tooltip>\n ),\n ];\n\n const onDoubleClick = (paymentPoint) => openPaymentPoint(paymentPoint);\n\n const paymentPointFilter = ({ filters, onChangeFilters }) => (\n <PaymentPointFilter filters={filters} onChangeFilters={onChangeFilters} />\n );\n\n const defaultFilters = () => ({\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n });\n\n const isRowDisabled = (_, paymentPoint) => deletedPaymentPointUuids.includes(paymentPoint.id);\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={paymentPointFilter}\n fetch={fetch}\n items={paymentPoints}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPaymentPoints}\n fetchingItems={fetchingPaymentPoints}\n errorItems={errorPaymentPoints}\n tableTitle={formatMessageWithValues('PaymentPointSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n onDoubleClick={onDoubleClick}\n defaultFilters={defaultFilters()}\n rowDisabled={isRowDisabled}\n rowLocked={isRowDisabled}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPaymentPoints: state.payroll.fetchingPaymentPoints,\n fetchedPaymentPoints: state.payroll.fetchedPaymentPoints,\n errorPaymentPoints: state.payroll.errorPaymentPoints,\n paymentPoints: state.payroll.paymentPoints,\n pageInfo: state.payroll.paymentPointsPageInfo,\n totalCount: state.payroll.paymentPointsTotalCount,\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPaymentPoints,\n deletePaymentPoint,\n journalize,\n clearConfirm,\n coreConfirm,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentPointSearcher);\n","import React from 'react';\nimport { useSelector } from 'react-redux';\n\nimport { Fab } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\nimport AddIcon from '@material-ui/icons/Add';\n\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n useHistory,\n withTooltip,\n} from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME,\n PAYROLL_PAYMENT_POINT_ROUTE,\n RIGHT_PAYMENT_POINT_CREATE,\n RIGHT_PAYMENT_POINT_SEARCH,\n} from '../../constants';\nimport PaymentPointSearcher from '../../components/payment-point/PaymentPointSearcher';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n fab: theme.fab,\n}));\n\nfunction PaymentPointsPage() {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const history = useHistory();\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n const onCreate = () => history.push(\n `/${modulesManager.getRef(PAYROLL_PAYMENT_POINT_ROUTE)}`,\n );\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('paymentPoint.page.title')} />\n {rights.includes(RIGHT_PAYMENT_POINT_SEARCH)\n && <PaymentPointSearcher />}\n {rights.includes(RIGHT_PAYMENT_POINT_CREATE)\n && withTooltip(\n <div className={classes.fab}>\n <Fab color=\"primary\" onClick={onCreate}>\n <AddIcon />\n </Fab>\n </div>,\n formatMessage('tooltip.createButton'),\n )}\n </div>\n );\n}\n\nexport default PaymentPointsPage;\n","/* eslint-disable react/jsx-no-useless-fragment */\n/* eslint-disable jsx-a11y/no-static-element-interactions */\n/* eslint-disable jsx-a11y/click-events-have-key-events */\n/* eslint-disable react/jsx-props-no-spreading */\nimport React from 'react';\nimport { injectIntl } from 'react-intl';\nimport {\n PublishedComponent,\n TextInput,\n NumberInput,\n SelectInput,\n CustomFilterTypeStatusPicker,\n CustomFilterFieldStatusPicker,\n} from '@stssocialst-stp/fe-core';\nimport { Grid } from '@material-ui/core';\nimport { withTheme, withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport {\n BOOLEAN,\n INTEGER,\n STRING,\n CLEARED_STATE_FILTER,\n DATE,\n BOOL_OPTIONS,\n} from '../../constants';\n\nconst styles = (theme) => ({\n item: theme.paper.item,\n});\n\nfunction AdvancedFiltersRowValue({\n classes,\n customFilters,\n currentFilter,\n setCurrentFilter,\n index,\n filters,\n setFilters,\n readOnly,\n}) {\n const onAttributeChange = (attribute) => (value) => {\n let updatedFilter = { ...currentFilter };\n\n if (attribute === 'field') {\n updatedFilter = {\n ...{ filter: '', value: '', type: value.type },\n };\n }\n\n const attributeValue = attribute === 'field' ? value.field : value;\n updatedFilter = {\n ...updatedFilter,\n [attribute]: attributeValue,\n ...(attribute === 'filter' && { value: '' }),\n };\n\n setCurrentFilter(updatedFilter);\n\n setFilters((prevFilters) => {\n const updatedRows = [...prevFilters];\n updatedRows[index] = { ...updatedFilter };\n return updatedRows;\n });\n };\n\n const removeFilter = () => {\n const newArray = [...filters];\n newArray.splice(index, 1);\n setFilters(newArray.length === 0 ? [CLEARED_STATE_FILTER] : newArray);\n };\n\n const renderInputBasedOnType = (type) => {\n const commonProps = {\n module: 'payroll',\n label: 'payroll.advancedFilters.value',\n value: currentFilter.value,\n onChange: onAttributeChange('value'),\n };\n\n switch (type) {\n case BOOLEAN:\n return (\n <SelectInput\n options={BOOL_OPTIONS}\n readOnly={readOnly}\n {...commonProps}\n />\n );\n case INTEGER:\n return (\n <NumberInput\n min={0}\n displayZero\n readOnly={readOnly}\n {...commonProps}\n />\n );\n case STRING:\n default:\n if (currentFilter.field.toLowerCase().includes(DATE)) {\n return (\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n readOnly={readOnly}\n {...commonProps}\n />\n );\n }\n return (\n <TextInput\n readOnly={readOnly}\n {...commonProps}\n />\n );\n }\n };\n\n return (\n <Grid\n container\n direction=\"row\"\n className={classes.item}\n style={{ backgroundColor: '#DFEDEF' }}\n >\n {filters.length > 0 && !readOnly ? (\n <div style={{\n backgroundColor: '#DFEDEF', width: '10px', height: '25px', marginTop: '25px',\n }}\n >\n <span\n style={{\n transform: 'translate(-50%, -50%)',\n fontSize: '16px',\n color: '#006273',\n }}\n onClick={removeFilter}\n >\n ✖\n </span>\n </div>\n ) : (<></>)}\n <Grid item xs={3} className={classes.item}>\n <CustomFilterFieldStatusPicker\n module=\"payroll\"\n label=\"payroll.advancedFilters.field\"\n value={{ field: currentFilter.field, type: currentFilter.type }}\n onChange={onAttributeChange('field')}\n customFilters={customFilters}\n readOnly={readOnly}\n />\n </Grid>\n {currentFilter.field !== '' ? (\n <Grid item xs={3} className={classes.item}>\n <CustomFilterTypeStatusPicker\n module=\"payroll\"\n label=\"payroll.advancedFilters.filter\"\n value={currentFilter.filter}\n onChange={onAttributeChange('filter')}\n customFilters={customFilters}\n customFilterField={currentFilter.field}\n readOnly={readOnly}\n />\n </Grid>\n ) : (<></>) }\n {currentFilter.field !== '' && currentFilter.filter !== '' ? (\n <Grid item xs={3} className={classes.item}>\n {renderInputBasedOnType(currentFilter.type)}\n </Grid>\n ) : (<></>) }\n </Grid>\n );\n}\n\nexport default injectIntl(withTheme(withStyles(styles)(connect(null, null)(AdvancedFiltersRowValue))));\n","/* eslint-disable no-unused-vars */\n/* eslint-disable react/jsx-no-useless-fragment */\n/* eslint-disable no-prototype-builtins */\nimport React, { useEffect, useState } from 'react';\nimport { injectIntl } from 'react-intl';\nimport Button from '@material-ui/core/Button';\nimport {\n decodeId,\n formatMessage,\n fetchCustomFilter,\n} from '@stssocialst-stp/fe-core';\nimport { withTheme, withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport AddCircle from '@material-ui/icons/Add';\nimport _ from 'lodash';\nimport AdvancedFiltersRowValue from './AdvancedFiltersRowValue';\nimport { BENEFIT_PLAN, CLEARED_STATE_FILTER } from '../../constants';\nimport { isBase64Encoded } from '../../utils/advanced-filters-utils';\n\nconst styles = (theme) => ({\n item: theme.paper.item,\n});\n\nfunction AdvancedFiltersDialog({\n intl,\n classes,\n object,\n objectToSave,\n fetchCustomFilter,\n customFilters,\n moduleName,\n objectType,\n setAppliedCustomFilters,\n // eslint-disable-next-line no-unused-vars\n appliedFiltersRowStructure,\n setAppliedFiltersRowStructure,\n updateAttributes,\n getDefaultAppliedCustomFilters,\n readOnly,\n additionalParams,\n confirmed,\n edited,\n}) {\n const [isOpen, setIsOpen] = useState(false);\n // eslint-disable-next-line no-unused-vars\n const [currentFilter, setCurrentFilter] = useState({\n field: '', filter: '', type: '', value: '', amount: '',\n });\n const [filters, setFilters] = useState(getDefaultAppliedCustomFilters(objectToSave.jsonExt));\n\n useEffect(() => {\n setFilters(getDefaultAppliedCustomFilters(objectToSave.jsonExt));\n }, [objectToSave.jsonExt]);\n\n useEffect(() => {\n }, [edited]);\n\n const createParams = (moduleName, objectTypeName, uuidOfObject = null, additionalParams = null) => {\n const params = [\n `moduleName: \"${moduleName}\"`,\n `objectTypeName: \"${objectTypeName}\"`,\n ];\n if (uuidOfObject) {\n params.push(`uuidOfObject: \"${uuidOfObject}\"`);\n }\n if (additionalParams) {\n params.push(`additionalParams: ${JSON.stringify(JSON.stringify(additionalParams))}`);\n }\n return params;\n };\n\n const fetchFilters = (params) => fetchCustomFilter(params);\n\n const handleClose = () => {\n setCurrentFilter(CLEARED_STATE_FILTER);\n };\n\n const handleRemoveFilter = () => {\n setCurrentFilter(CLEARED_STATE_FILTER);\n setAppliedFiltersRowStructure([CLEARED_STATE_FILTER]);\n setFilters([]);\n };\n\n const handleAddFilter = () => {\n setCurrentFilter(CLEARED_STATE_FILTER);\n setFilters([...filters, CLEARED_STATE_FILTER]);\n };\n\n function updateJsonExt(inputJsonExt, outputFilters) {\n const existingData = JSON.parse(inputJsonExt || '{}');\n if (!existingData.hasOwnProperty('advanced_criteria')) {\n existingData.advanced_criteria = [];\n }\n const filterData = JSON.parse(outputFilters);\n existingData.advanced_criteria = filterData;\n const updatedJsonExt = JSON.stringify(existingData);\n return updatedJsonExt;\n }\n\n const saveCriteria = () => {\n setAppliedFiltersRowStructure(filters);\n const outputFilters = JSON.stringify(\n filters.map(({\n filter, value, field, type,\n }) => ({\n custom_filter_condition: `${field}__${filter}__${type}=${value}`,\n })),\n );\n const jsonExt = updateJsonExt(objectToSave.jsonExt, outputFilters);\n updateAttributes(jsonExt);\n setAppliedCustomFilters(outputFilters);\n handleClose();\n };\n\n useEffect(() => {\n if (object && _.isEmpty(object) === false) {\n let paramsToFetchFilters = [];\n if (objectType === BENEFIT_PLAN) {\n paramsToFetchFilters = createParams(\n moduleName,\n objectType,\n isBase64Encoded(object.id) ? decodeId(object.id) : object.id,\n additionalParams,\n );\n } else {\n paramsToFetchFilters = createParams(\n moduleName,\n objectType,\n additionalParams,\n );\n }\n fetchFilters(paramsToFetchFilters);\n }\n }, [object]);\n return (\n <>\n {filters.map((filter, index) => (\n <AdvancedFiltersRowValue\n customFilters={customFilters}\n currentFilter={filter}\n setCurrentFilter={setCurrentFilter}\n index={index}\n filters={filters}\n setFilters={setFilters}\n readOnly={readOnly || confirmed}\n />\n ))}\n { !readOnly && !confirmed ? (\n <div\n style={{ backgroundColor: '#DFEDEF', paddingLeft: '10px', paddingBottom: '10px' }}\n >\n <AddCircle\n style={{\n border: 'thin solid',\n borderRadius: '40px',\n width: '16px',\n height: '16px',\n }}\n onClick={handleAddFilter}\n disabled={readOnly || confirmed}\n />\n <Button\n onClick={handleAddFilter}\n variant=\"outlined\"\n style={{\n border: '0px',\n marginBottom: '6px',\n fontSize: '0.8rem',\n }}\n disabled={readOnly || confirmed}\n >\n {formatMessage(intl, 'payroll', 'payroll.advancedFilters.button.addFilters')}\n </Button>\n </div>\n ) : (<></>) }\n <div>\n { !readOnly && !confirmed ? (\n <>\n <div style={{ float: 'left' }}>\n <Button\n onClick={handleRemoveFilter}\n variant=\"outlined\"\n style={{\n border: '0px',\n }}\n >\n {formatMessage(intl, 'payroll', 'payroll.advancedFilters.button.clearAllFilters')}\n </Button>\n </div>\n <div style={{\n float: 'right',\n paddingRight: '16px',\n }}\n >\n <Button\n onClick={saveCriteria}\n variant=\"contained\"\n color=\"primary\"\n autoFocus\n disabled={!object || confirmed || readOnly}\n >\n {formatMessage(intl, 'payroll', 'payroll.advancedFilters.button.filter')}\n </Button>\n </div>\n </>\n ) : <></> }\n </div>\n </>\n );\n}\n\nconst mapStateToProps = (state, props) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n fetchingCustomFilters: state.core.fetchingCustomFilters,\n errorCustomFilters: state.core.errorCustomFilters,\n fetchedCustomFilters: state.core.fetchedCustomFilters,\n customFilters: state.core.customFilters,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchCustomFilter,\n}, dispatch);\n\nexport default injectIntl(\n withTheme(withStyles(styles)(connect(mapStateToProps, mapDispatchToProps)(AdvancedFiltersDialog))),\n);\n","import React from 'react';\nimport { ConstantBasedPicker } from '@stssocialst-stp/fe-core';\n\nimport { PAYROLL_STATUS_LIST } from '../../constants';\n\nfunction PayrollStatusPicker({\n required,\n withNull,\n readOnly,\n onChange,\n value,\n nullLabel,\n withLabel,\n}) {\n return (\n <ConstantBasedPicker\n module=\"payroll\"\n label=\"payroll.payroll.payrollStatusPicker\"\n constants={PAYROLL_STATUS_LIST}\n required={required}\n withNull={withNull}\n readOnly={readOnly}\n onChange={onChange}\n value={value}\n nullLabel={nullLabel}\n withLabel={withLabel}\n />\n );\n}\n\nexport default PayrollStatusPicker;\n","import React, { useEffect } from 'react';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport { SelectInput } from '@stssocialst-stp/fe-core';\nimport { fetchPaymentMethods } from '../actions';\n\nfunction PaymentMethodPicker({\n value,\n label,\n onChange,\n readOnly = false,\n withNull = false,\n nullLabel = null,\n withLabel = true,\n required = false,\n paymentMethods,\n fetchPaymentMethods,\n}) {\n const fetch = () => {\n fetchPaymentMethods({});\n };\n\n useEffect(() => {\n fetch();\n }, []);\n\n const options = Array.isArray(paymentMethods) && paymentMethods !== undefined ? [\n ...paymentMethods.map((paymentMethod) => ({\n value: paymentMethod.name,\n label: paymentMethod.name,\n })),\n ] : [];\n\n if (withNull) {\n options.unshift({\n value: null,\n label: nullLabel || '',\n });\n }\n\n return (\n <SelectInput\n module=\"payroll\"\n label={withLabel && label}\n options={options}\n value={value}\n onChange={onChange}\n readOnly={readOnly}\n required={required}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n fetchingPaymentMethods: state.payroll.fetchingPaymentMethods,\n errorPaymentMethods: state.payroll.errorPaymentMethods,\n fetchedPaymentMethods: state.payroll.fetchedPaymentMethods,\n paymentMethods: state.payroll.paymentMethods,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPaymentMethods,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentMethodPicker);\n","import React, { useEffect, useState } from 'react';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n PublishedComponent,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport { MODULE_NAME, PAYROLL_STATUS } from '../../../constants';\nimport { updatePayrollPaymentDate, fetchPayroll } from '../../../actions';\nimport { ACTION_TYPE } from '../../../reducer';\nimport { mutationLabel } from '../../../utils/string-utils';\n\nconst EDITABLE_STATUSES = [PAYROLL_STATUS.PENDING_APPROVAL, PAYROLL_STATUS.APPROVE_FOR_PAYMENT];\n\nfunction PayrollPaymentDateDialog({\n payroll,\n updatePayrollPaymentDate,\n fetchPayroll,\n submittingMutation,\n mutation,\n}) {\n const modulesManager = useModulesManager();\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const [isOpen, setIsOpen] = useState(false);\n const [paymentDate, setPaymentDate] = useState(null);\n\n const handleOpen = () => {\n setPaymentDate(payroll?.paymentDate ?? null);\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setIsOpen(false);\n };\n\n const handleSave = () => {\n if (!paymentDate) return;\n updatePayrollPaymentDate(\n payroll,\n paymentDate,\n formatMessageWithValues('payroll.paymentDate.mutation.updateLabel', mutationLabel(payroll)),\n );\n };\n\n useEffect(() => {\n if (!submittingMutation && mutation?.actionType === ACTION_TYPE.UPDATE_PAYROLL_PAYMENT_DATE\n && mutation?.clientMutationId && isOpen) {\n handleClose();\n if (payroll?.id) {\n fetchPayroll(modulesManager, [`id: \"${payroll.id}\"`]);\n }\n }\n }, [submittingMutation]);\n\n if (!payroll?.id) return null;\n if (!EDITABLE_STATUSES.includes(payroll?.status)) return null;\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"outlined\"\n color=\"primary\"\n style={{ marginTop: '16px' }}\n >\n {formatMessage('payroll.paymentDate.update')}\n </Button>\n <Dialog open={isOpen} onClose={handleClose}>\n <DialogTitle>{formatMessage('payroll.paymentDate.update')}</DialogTitle>\n <DialogContent style={{ minWidth: 400 }}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label=\"payroll.paymentDate\"\n value={paymentDate}\n onChange={setPaymentDate}\n required\n disablePast\n />\n </DialogContent>\n <DialogActions>\n <Button onClick={handleClose} color=\"primary\">\n {formatMessage('payroll.beneficiaries.cancel')}\n </Button>\n <Button\n onClick={handleSave}\n color=\"primary\"\n variant=\"contained\"\n disabled={!paymentDate}\n >\n {formatMessage('payroll.beneficiaries.confirm')}\n </Button>\n </DialogActions>\n </Dialog>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n updatePayrollPaymentDate,\n fetchPayroll,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollPaymentDateDialog);\n","/* eslint-disable camelcase */\nimport React from 'react';\nimport { injectIntl } from 'react-intl';\n\nimport { Grid, Divider, Typography } from '@material-ui/core';\nimport { withStyles, withTheme } from '@material-ui/core/styles';\n\nimport {\n formatMessage,\n FormPanel,\n PublishedComponent,\n TextInput,\n withModulesManager,\n FormattedMessage,\n} from '@stssocialst-stp/fe-core';\nimport AdvancedFiltersDialog from './AdvancedFiltersDialog';\nimport { CLEARED_STATE_FILTER, PAYMENT_METHOD } from '../../constants';\nimport PayrollStatusPicker from './PayrollStatusPicker';\nimport PaymentMethodPicker from '../../pickers/PaymentMethodPicker';\nimport PayrollPaymentDateDialog from './dialogs/PayrollPaymentDateDialog';\n\nconst styles = (theme) => ({\n tableTitle: theme.table.title,\n item: theme.paper.item,\n fullHeight: {\n height: '100%',\n },\n});\n\nclass PayrollHeadPanel extends FormPanel {\n constructor(props) {\n super(props);\n this.state = {\n appliedCustomFilters: [CLEARED_STATE_FILTER],\n appliedFiltersRowStructure: [CLEARED_STATE_FILTER],\n };\n }\n\n componentDidMount() {\n this.setStateFromProps(this.props);\n }\n\n setStateFromProps = (props) => {\n const { jsonExt } = props?.edited ?? {};\n if (jsonExt) {\n const filters = this.getDefaultAppliedCustomFilters(jsonExt);\n this.setState({ appliedCustomFilters: filters, appliedFiltersRowStructure: filters });\n }\n };\n\n updateJsonExt = (value) => {\n this.updateAttributes({\n jsonExt: value,\n });\n };\n\n // eslint-disable-next-line class-methods-use-this\n getDefaultAppliedCustomFilters = (jsonExt) => {\n try {\n const jsonData = JSON.parse(jsonExt);\n const advancedCriteria = jsonData.advanced_criteria || [];\n const transformedCriteria = advancedCriteria.map(({ custom_filter_condition }) => {\n const [field, filter, typeValue] = custom_filter_condition.split('__');\n const [type, value] = typeValue.split('=');\n return {\n custom_filter_condition,\n field,\n filter,\n type,\n value,\n };\n });\n return transformedCriteria;\n } catch (error) {\n return [];\n }\n };\n\n setAppliedCustomFilters = (appliedCustomFilters) => {\n this.setState({ appliedCustomFilters });\n };\n\n setAppliedFiltersRowStructure = (appliedFiltersRowStructure) => {\n this.setState({ appliedFiltersRowStructure });\n };\n\n render() {\n const {\n edited, classes, intl, readOnly, isPayrollFromFailedInvoices, benefitPlanId,\n } = this.props;\n const payroll = { ...edited };\n const { appliedCustomFilters, appliedFiltersRowStructure } = this.state;\n return (\n <>\n <Grid container className={classes.item}>\n <Grid item xs={3} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label={formatMessage(intl, 'payroll', 'paymentPoint.name')}\n value={payroll?.name}\n required\n onChange={(name) => this.updateAttribute('name', name)}\n readOnly={isPayrollFromFailedInvoices ? !isPayrollFromFailedInvoices : readOnly}\n />\n </Grid>\n <Grid item xs={3} className={classes.item}>\n <PublishedComponent\n pubRef=\"contributionPlan.PaymentPlanPicker\"\n required\n filterLabels={false}\n onChange={(paymentPlan) => this.updateAttribute('paymentPlan', paymentPlan)}\n value={payroll?.paymentPlan}\n readOnly={readOnly}\n benefitPlanId={benefitPlanId}\n />\n </Grid>\n <Grid item xs={3} className={classes.item}>\n <PublishedComponent\n pubRef=\"paymentCycle.PaymentCyclePicker\"\n withLabel\n required\n withPlaceholder\n filterLabels={false}\n onChange={(paymentCycle) => this.updateAttribute('paymentCycle', paymentCycle)}\n value={payroll?.paymentCycle}\n readOnly={isPayrollFromFailedInvoices ? !isPayrollFromFailedInvoices : readOnly}\n />\n </Grid>\n {readOnly && !isPayrollFromFailedInvoices && (\n <Grid item xs={3} className={classes.item}>\n <PayrollStatusPicker\n required\n withNull={false}\n readOnly={readOnly}\n value={!!payroll?.status && payroll.status}\n />\n </Grid>\n )}\n <Grid item xs={3} className={classes.item}>\n <PaymentMethodPicker\n required\n withNull={false}\n readOnly={readOnly}\n value={!!payroll?.paymentMethod && payroll.paymentMethod}\n onChange={(paymentMethod) => this.updateAttribute('paymentMethod', paymentMethod)}\n label={formatMessage(intl, 'payroll', 'paymentMethod')}\n />\n </Grid>\n <Grid item xs={3} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label=\"payroll.paymentDate\"\n value={payroll?.paymentDate}\n required={payroll?.paymentMethod === PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT}\n readOnly={readOnly}\n disablePast={!readOnly}\n onChange={(paymentDate) => this.updateAttribute('paymentDate', paymentDate)}\n />\n </Grid>\n {readOnly && (\n <Grid item xs={3} className={classes.item}>\n <PayrollPaymentDateDialog payroll={payroll} readOnly={readOnly} />\n </Grid>\n )}\n </Grid>\n <Divider />\n {!isPayrollFromFailedInvoices\n && (\n <>\n <>\n <Typography>\n <div className={classes.item}>\n <FormattedMessage module=\"contributionPlan\" id=\"paymentPlan.advancedCriteria\" />\n </div>\n </Typography>\n {!readOnly && (\n <div className={classes.item}>\n <FormattedMessage module=\"contributionPlan\" id=\"paymentPlan.advancedCriteria.tip\" />\n </div>\n )}\n <Divider />\n <Grid container className={classes.item}>\n\n <AdvancedFiltersDialog\n object={null}\n objectToSave={payroll}\n moduleName=\"social_protection\"\n objectType=\"BenefitPlan\"\n setAppliedCustomFilters={this.setAppliedCustomFilters}\n appliedCustomFilters={appliedCustomFilters}\n appliedFiltersRowStructure={appliedFiltersRowStructure}\n setAppliedFiltersRowStructure={this.setAppliedFiltersRowStructure}\n updateAttributes={this.updateJsonExt}\n getDefaultAppliedCustomFilters={() => this.getDefaultAppliedCustomFilters(payroll.jsonExt)}\n readOnly={readOnly}\n edited={this.props.edited}\n />\n\n </Grid>\n </>\n <Divider />\n </>\n )}\n </>\n );\n }\n}\n\nexport default withModulesManager(injectIntl(withTheme(withStyles(styles)(PayrollHeadPanel))));\n","import React, { useState } from 'react';\nimport { Input, Grid } from '@material-ui/core';\nimport { injectIntl } from 'react-intl';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n apiHeaders,\n baseApiUrl,\n formatMessage,\n} from '@stssocialst-stp/fe-core';\nimport { withTheme, withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nconst styles = (theme) => ({\n item: theme.paper.item,\n});\n\nfunction PayrollPaymentDataUploadDialog({\n intl,\n classes,\n payrollUuid,\n}) {\n const [isOpen, setIsOpen] = useState(false);\n const [forms, setForms] = useState({});\n\n const handleOpen = () => {\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setForms({});\n setIsOpen(false);\n };\n\n const handleFieldChange = (formName, fieldName, value) => {\n setForms({\n ...forms,\n [formName]: {\n ...(forms[formName] ?? {}),\n [fieldName]: value,\n },\n });\n };\n\n const onSubmit = async (values) => {\n const fileFormat = values.file.type;\n const formData = new FormData();\n\n formData.append('file', values.file);\n\n let urlImport;\n if (fileFormat.includes('/csv')) {\n urlImport = `${baseApiUrl}/payroll/csv_reconciliation/?payroll_id=${payrollUuid}`;\n }\n\n try {\n const response = await fetch(urlImport, {\n headers: apiHeaders,\n body: formData,\n method: 'POST',\n credentials: 'same-origin',\n });\n\n await response.json();\n\n if (response.status >= 400) {\n handleClose();\n return;\n }\n handleClose();\n } catch (error) {\n handleClose();\n }\n };\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"outlined\"\n color=\"#DFEDEF\"\n className={classes.button}\n style={{\n border: '0px',\n marginTop: '6px',\n }}\n >\n {formatMessage(intl, 'payroll', 'payroll.paymentData.upload.label')}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n width: 600,\n maxWidth: 1000,\n },\n }}\n >\n <form noValidate>\n <DialogTitle\n style={{\n marginTop: '10px',\n }}\n >\n {formatMessage(intl, 'payroll', 'payroll.paymentData.upload.label')}\n </DialogTitle>\n <DialogContent>\n <div\n style={{ backgroundColor: '#DFEDEF', paddingLeft: '10px', paddingBottom: '10px' }}\n >\n <Grid item>\n <Grid container spacing={4} direction=\"column\">\n <Grid item>\n <Input\n onChange={(event) => handleFieldChange('paymentData', 'file', event.target.files[0])}\n required\n id=\"import-button\"\n inputProps={{\n accept: '.csv, application/csv, text/csv',\n }}\n type=\"file\"\n />\n </Grid>\n </Grid>\n </Grid>\n </div>\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n }}\n >\n <div style={{ maxWidth: '1000px' }}>\n <div style={{ float: 'left' }}>\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n Cancel\n </Button>\n </div>\n <div style={{ float: 'right', paddingRight: '16px' }}>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={() => onSubmit(forms.paymentData)}\n disabled={!(forms.paymentData?.file && payrollUuid)}\n >\n {formatMessage(intl, 'payroll', 'payroll.paymentData.upload.label')}\n </Button>\n </div>\n </div>\n </DialogActions>\n </form>\n </Dialog>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n}, dispatch);\n\nexport default injectIntl(\n withTheme(\n withStyles(styles)(\n connect(mapStateToProps, mapDispatchToProps)(PayrollPaymentDataUploadDialog),\n ),\n ),\n);\n","import React from 'react';\nimport _debounce from 'lodash/debounce';\n\nimport { Grid } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n PublishedComponent,\n useModulesManager,\n useTranslations,\n TextInput,\n NumberInput,\n} from '@stssocialst-stp/fe-core';\nimport { CONTAINS_LOOKUP, DEFAULT_DEBOUNCE_TIME, EMPTY_STRING } from '../../constants';\n\nconst useStyles = makeStyles((theme) => ({\n form: {\n padding: 0,\n },\n item: {\n padding: theme.spacing(1),\n },\n}));\n\nfunction BenefitConsumptionFilterModal({ filters, onChangeFilters }) {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const { formatMessage } = useTranslations('payroll', modulesManager);\n\n const debouncedOnChangeFilters = _debounce(onChangeFilters, DEFAULT_DEBOUNCE_TIME);\n\n const filterTextFieldValue = (filterName) => filters?.[filterName]?.value ?? EMPTY_STRING;\n\n const filterValue = (filterName) => filters?.[filterName]?.value ?? null;\n\n const onChangeFilter = (filterName) => (value) => {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value: value || null,\n filter: `${filterName}: ${value}`,\n },\n ]);\n };\n\n const onChangeStringFilter = (filterName, lookup = null) => (value) => {\n if (lookup) {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}_${lookup}: \"${value}\"`,\n },\n ]);\n } else {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}: \"${value}\"`,\n },\n ]);\n }\n };\n\n return (\n <Grid container className={classes.form}>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.individual.firstName\"\n value={filterTextFieldValue('benefit_Individual_FirstName')}\n onChange={onChangeStringFilter('benefit_Individual_FirstName', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.individual.lastName\"\n value={filterTextFieldValue('benefit_Individual_LastName')}\n onChange={onChangeStringFilter('benefit_Individual_LastName', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <NumberInput\n module=\"payroll\"\n label={formatMessage('benefitConsumption.amount')}\n min={0}\n value={filterValue('bill_AmountTotal')}\n onChange={onChangeFilter('bill_AmountTotal')}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.receipt\"\n value={filterTextFieldValue('benefit_Receipt')}\n onChange={onChangeStringFilter('benefit_Receipt', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.dateDue')}\n value={filterValue('benefit_DateDue')}\n onChange={(v) => onChangeFilters([\n {\n id: 'benefit_DateDue',\n value: v,\n filter: `benefit_DateDue: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.paymentDate')}\n value={filterValue('bill_DatePayed_Gte')}\n onChange={(v) => onChangeFilters([\n {\n id: 'bill_DatePayed_Gte',\n value: v,\n filter: `bill_DatePayed_Gte: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n </Grid>\n );\n}\n\nexport default BenefitConsumptionFilterModal;\n","import React from 'react';\nimport {\n Modal, Backdrop, Fade, Box, Typography, Button,\n} from '@material-ui/core';\nimport { useTranslations, useModulesManager } from '@stssocialst-stp/fe-core';\n\nfunction ErrorSummaryModal({ open, onClose, benefitAttachment }) {\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations('payroll', modulesManager);\n\n const jsonExt = benefitAttachment?.benefit?.jsonExt ? JSON.parse(benefitAttachment.benefit.jsonExt) : {};\n const outputGateway = `${jsonExt?.output_gateway}`;\n\n return (\n <Modal\n open={open}\n onClose={onClose}\n closeAfterTransition\n BackdropComponent={Backdrop}\n BackdropProps={{\n timeout: 500,\n }}\n >\n <Fade in={open}>\n <Box\n p={4}\n style={{\n backgroundColor: 'white', margin: 'auto', maxWidth: 400, outline: 'none',\n }}\n >\n <Typography variant=\"h6\">{formatMessage('payroll.errorSummary.title')}</Typography>\n {/* Conditional rendering based on output_gateway */}\n {outputGateway === null || outputGateway === 'undefined' ? (\n <Typography>\n {formatMessage('payroll.errorSummary.outputGateway.noInfo')}\n </Typography>\n ) : (\n <Typography>\n {outputGateway}\n </Typography>\n )}\n <Box display=\"flex\" justifyContent=\"center\" mt={2}>\n <Button onClick={onClose} variant=\"contained\" color=\"primary\">\n {formatMessage('payroll.errorSummary.close')}\n </Button>\n </Box>\n </Box>\n </Fade>\n </Modal>\n );\n}\n\nexport default ErrorSummaryModal;\n","import React, { useState } from 'react';\nimport { Grid } from '@material-ui/core';\nimport { injectIntl } from 'react-intl';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n formatMessage,\n renderInputComponent,\n createFieldsBasedOnJSON,\n} from '@stssocialst-stp/fe-core';\nimport { withTheme, withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport { MODULE_NAME } from '../../../constants';\n\nconst styles = (theme) => ({\n item: theme.paper.item,\n});\n\nfunction AdditionalFieldsDialog({\n intl,\n classes,\n jsonExt,\n buttonLabel,\n title,\n}) {\n // eslint-disable-next-line no-param-reassign\n if (!jsonExt) jsonExt = '{}';\n const [isOpen, setIsOpen] = useState(false);\n\n const handleOpen = () => {\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setIsOpen(false);\n };\n const jsonExtFields = createFieldsBasedOnJSON(JSON.stringify(JSON.parse(jsonExt).extra_info));\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"outlined\"\n color=\"#DFEDEF\"\n className={classes.button}\n style={{\n border: '0px',\n marginTop: '6px',\n }}\n >\n {formatMessage(intl, 'payroll', buttonLabel)}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n width: 1200,\n maxWidth: 1200,\n maxHeight: 900,\n },\n }}\n >\n <form noValidate>\n <DialogTitle\n style={{\n marginTop: '10px',\n }}\n >\n {formatMessage(intl, 'payroll', title)}\n </DialogTitle>\n <DialogContent>\n <div\n style={{ backgroundColor: '#DFEDEF', paddingLeft: '10px', paddingBottom: '10px' }}\n >\n <Grid container className={classes.item}>\n {jsonExtFields?.map((jsonExtField) => (\n <Grid item xs={6} className={classes.item}>\n {renderInputComponent(MODULE_NAME, jsonExtField)}\n </Grid>\n ))}\n </Grid>\n </div>\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n }}\n >\n <div style={{ maxWidth: '1000px' }}>\n <div style={{ float: 'left' }}>\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage(intl, 'payroll', 'payroll.additonalFields.close')}\n </Button>\n </div>\n <div style={{ float: 'right', paddingRight: '16px' }} />\n </div>\n </DialogActions>\n </form>\n </Dialog>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n}, dispatch);\n\nexport default injectIntl(\n withTheme(\n withStyles(styles)(\n connect(mapStateToProps, mapDispatchToProps)(AdditionalFieldsDialog),\n ),\n ),\n);\n","/* eslint-disable max-len */\n/* eslint-disable react/no-array-index-key */\n/* eslint-disable no-nested-ternary */\n/* eslint-disable no-undef */\nimport React, {\n forwardRef,\n} from 'react';\n\nimport { Divider } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n useTranslations, useModulesManager,\n} from '@stssocialst-stp/fe-core';\nimport { MODULE_NAME } from '../constants';\n\nconst useStyles = makeStyles(() => ({\n topHeader: {\n display: 'flex',\n justifyContent: 'start',\n alignItems: 'center',\n width: '100%',\n\n '& img': {\n minWidth: '250px',\n maxWidth: '300px',\n width: 'auto',\n height: 'auto',\n },\n },\n printContainer: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n padding: '20px',\n fontWeight: '500',\n },\n date: {\n fontSize: '16px',\n },\n detailsContainer: {\n display: 'flex',\n flexDirection: 'column',\n padding: '12px',\n width: '100%',\n },\n detailRow: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n padding: '4px',\n },\n detailName: {\n fontWeight: '600',\n fontSize: '16px',\n textTransform: 'uppercase',\n },\n detailValue: {\n fontWeight: '500',\n backgroundColor: '#f5f5f5',\n padding: '6px',\n borderRadius: '8px',\n fontSize: '15px',\n },\n containerPadding: {\n padding: '32px',\n },\n dividerMargin: {\n margin: '12px 0',\n },\n sectionTitle: {\n fontWeight: '700',\n fontSize: '18px',\n textTransform: 'uppercase',\n marginBottom: '12px',\n },\n}));\n\nconst PayrollBenefitPrintTemplate = forwardRef(({ benefitAttachments }, ref) => {\n if (!benefitAttachments) return null;\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(modulesManager, MODULE_NAME);\n\n return (\n <div ref={ref} className={classes.printContainer}>\n {benefitAttachments.map((benefitAttachment, index) => (\n <div key={index} className={classes.detailsContainer}>\n <div className={classes.sectionTitle}>\n {`Payment: ${benefitAttachment.benefit.code} - ${benefitAttachment.benefit.individual.firstName}, ${benefitAttachment.benefit.individual.lastName}`}\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.individual.firstName')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.individual.firstName}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.individual.lastName')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.individual.lastName}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.code')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.code}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.dateDue')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.dateDue}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.receipt')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.receipt}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.amount')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.amount}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.type')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.type}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.status')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.status}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.payedOnTime')}</div>\n <div className={classes.detailValue}>{benefitAttachment.benefit.payedOnTime ? 'Yes' : 'No'}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.paymentDate')}</div>\n <div className={classes.detailValue}>\n {!benefitAttachment.benefit.receipt\n ? ''\n : benefitAttachment?.bill?.datePayed}\n </div>\n </div>\n <Divider className={classes.dividerMargin} />\n </div>\n ))}\n </div>\n );\n});\n\nexport default PayrollBenefitPrintTemplate;\n","/* eslint-disable max-len */\n/* eslint-disable no-param-reassign */\nimport React, { useState, useRef } from 'react';\nimport { useReactToPrint } from 'react-to-print';\nimport PrintIcon from '@material-ui/icons/Print';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport Typography from '@material-ui/core/Typography';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogContentText from '@material-ui/core/DialogContentText';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n Searcher, useModulesManager, useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport PhotoCameraOutlinedIcon from '@material-ui/icons/PhotoCameraOutlined';\nimport { fetchBenefitAttachments, deleteBenefitConsumption } from '../../actions';\nimport {\n DEFAULT_PAGE_SIZE, ROWS_PER_PAGE_OPTIONS, PAYROLL_STATUS, PAYMENT_METHOD,\n} from '../../constants';\nimport BenefitConsumptionFilterModal from './BenefitConsumptionFilterModal';\nimport ErrorSummaryModal from './dialogs/ErrorSummaryModal';\nimport { mutationLabel } from '../../utils/string-utils';\nimport AdditionalFieldsDialog from './dialogs/AdditionalFieldsDialog';\nimport PayrollBenefitPrintTemplate from '../PayrollBenefitPrintTemplate';\n\nfunction BenefitConsumptionSearcherModal({\n fetchBenefitAttachments,\n fetchingBenefitAttachments,\n fetchedBenefitAttachments,\n errorBenefitAttachments,\n benefitAttachments,\n benefitAttachmentsPageInfo,\n benefitAttachmentsTotalCount,\n payrollUuid,\n reconciledMode,\n payrollDetail,\n deleteBenefitConsumption,\n}) {\n const modulesManager = useModulesManager();\n const { formatMessage, formatMessageWithValues } = useTranslations('payroll', modulesManager);\n const [selectedBenefitAttachment, setSelectedBenefitAttachment] = useState(null);\n const [openConfirmDialog, setOpenConfirmDialog] = useState(false);\n const [benefitToDelete, setBenefitToDelete] = useState(null);\n const payrollPrintTemplateRef = useRef(null);\n\n const handlePrint = useReactToPrint({\n documentTitle: `${payrollUuid}`,\n });\n\n const fetch = (params) => {\n fetchBenefitAttachments(modulesManager, params);\n };\n\n const defaultFilters = () => {\n const filters = {\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n payrollUuid: {\n value: payrollUuid,\n filter: `payrollUuid: \"${payrollUuid}\"`,\n },\n };\n if (reconciledMode && payrollDetail.paymentMethod !== PAYMENT_METHOD.STRATEGY_ONLINE_PAYMENT\n && payrollDetail.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) {\n filters.benefit_Status = {\n value: 'RECONCILED',\n filter: `benefit_Status: ${PAYROLL_STATUS.RECONCILED}`,\n };\n }\n return filters;\n };\n\n const defaultFiltersArray = () => {\n const filters = [\n 'isDeleted: false',\n `first: ${DEFAULT_PAGE_SIZE}`,\n `payrollUuid: \"${payrollUuid}\"`,\n ];\n if (reconciledMode && payrollDetail.paymentMethod !== PAYMENT_METHOD.STRATEGY_ONLINE_PAYMENT\n && payrollDetail.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) {\n filters.push(`benefit_Status: ${PAYROLL_STATUS.RECONCILED}`);\n }\n return filters;\n };\n\n const headers = () => [\n 'benefitConsumption.photo',\n 'benefitConsumption.individual.firstName',\n 'benefitConsumption.individual.lastName',\n 'benefitConsumption.amount',\n 'benefitConsumption.receipt',\n 'benefitConsumption.dateDue',\n 'benefitConsumption.payedOnTime',\n 'benefitConsumption.paymentDate',\n 'benefitConsumption.status',\n '',\n '',\n ];\n\n const confirmDeleteBenefitConsumption = (benefit) => {\n setBenefitToDelete(benefit);\n setOpenConfirmDialog(true);\n };\n\n const handleDeleteBenefitConsumption = () => {\n deleteBenefitConsumption(\n benefitToDelete.benefit,\n formatMessageWithValues('payroll.mutation.deleteLabel', mutationLabel(benefitToDelete.benefit.code)),\n );\n setOpenConfirmDialog(false);\n setBenefitToDelete(null);\n const filters = defaultFiltersArray();\n fetchBenefitAttachments(modulesManager, filters); // Refresh the searcher after deletion\n };\n\n const checkBenefitDueDate = (benefitAttachment) => {\n if (!benefitAttachment.benefit.receipt) {\n return ''; // return empty string if datePayed is null\n }\n\n return (\n benefitAttachment.benefit && benefitAttachment.benefit.dateDue >= benefitAttachment.bill.datePayed\n ) ? 'True' : 'False';\n };\n\n const itemFormatters = () => [\n (benefitAttachment) => (\n benefitAttachment.benefit.receipt ? (\n <PhotoCameraOutlinedIcon style={{ fontSize: 150 }} />\n ) : null\n ),\n (benefitAttachment) => benefitAttachment?.benefit?.individual?.firstName,\n (benefitAttachment) => benefitAttachment?.benefit?.individual?.lastName,\n (benefitAttachment) => benefitAttachment?.bill?.amountTotal,\n (benefitAttachment) => benefitAttachment?.benefit?.receipt,\n (benefitAttachment) => benefitAttachment?.benefit?.dateDue,\n (benefitAttachment) => checkBenefitDueDate(benefitAttachment),\n (benefitAttachment) => (\n !benefitAttachment.benefit.receipt\n ? ''\n : benefitAttachment?.bill?.datePayed\n ),\n (benefitAttachment) => benefitAttachment?.benefit?.status,\n (benefitAttachment) => (\n <AdditionalFieldsDialog\n jsonExt={benefitAttachment?.benefit?.jsonExt}\n buttonLabel=\"payroll.additonalFields.showAdditionalFields\"\n title=\"payroll.additonalFields.label\"\n />\n ),\n (benefitAttachment) => (\n <Button\n onClick={() => {}}\n variant=\"contained\"\n color=\"primary\"\n disabled={!!benefitAttachment.benefit.receipt}\n >\n {formatMessage('payroll.summary.confirm')}\n </Button>\n ),\n (benefitAttachment) => (\n (payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_ONLINE_PAYMENT\n || payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) && payrollDetail.status === PAYROLL_STATUS.RECONCILED\n && benefitAttachment.benefit.status !== 'RECONCILED' && (\n <Button\n onClick={() => setSelectedBenefitAttachment(benefitAttachment)}\n variant=\"contained\"\n style={{ backgroundColor: '#b80000', color: 'white' }}\n >\n {formatMessage('payroll.summary.benefit_error')}\n </Button>\n )\n ),\n (benefitAttachment) => (\n payrollDetail.status === PAYROLL_STATUS.PENDING_APPROVAL\n && benefitAttachment.benefit.status !== 'PENDING_DELETION' && (\n <Button\n onClick={() => confirmDeleteBenefitConsumption(benefitAttachment)}\n variant=\"contained\"\n style={{ backgroundColor: '#b80000', color: 'white' }}\n >\n {formatMessage('payroll.summary.benefit_delete')}\n </Button>\n )\n ),\n ];\n\n const rowIdentifier = (benefitAttachment) => benefitAttachment.id;\n\n const sorts = () => [\n ['benefit_photo', false],\n ['benefit_individual_FirstName', true],\n ['benefit_individual_LastName', true],\n ['bill_amountTotal', true],\n ['benefit_receipt', true],\n ['benefit_dateDue', true],\n ];\n\n const benefitConsumptionFilterModal = ({ filters, onChangeFilters }) => (\n <BenefitConsumptionFilterModal filters={filters} onChangeFilters={onChangeFilters} />\n );\n\n return (\n <>\n <div>\n <Button\n size=\"small\"\n variant=\"contained\"\n color=\"primary\"\n startIcon={<PrintIcon />}\n onClick={(e) => {\n e.preventDefault();\n handlePrint(null, () => payrollPrintTemplateRef.current);\n }}\n >\n <Typography variant=\"subtitle1\">Print</Typography>\n </Button>\n </div>\n <div>\n <Searcher\n module=\"payroll\"\n FilterPane={benefitConsumptionFilterModal}\n fetch={fetch}\n items={benefitAttachments}\n itemsPageInfo={benefitAttachmentsPageInfo}\n fetchingItems={fetchingBenefitAttachments}\n fetchedItems={fetchedBenefitAttachments}\n errorItems={errorBenefitAttachments}\n tableTitle={formatMessageWithValues('benefitAttachment.searcherResultsTitle', { benefitAttachmentsTotalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n defaultFilters={defaultFilters()}\n />\n {selectedBenefitAttachment && (\n <ErrorSummaryModal\n open={!!selectedBenefitAttachment}\n onClose={() => setSelectedBenefitAttachment(null)}\n benefitAttachment={selectedBenefitAttachment}\n />\n )}\n <Dialog\n open={openConfirmDialog}\n onClose={() => setOpenConfirmDialog(false)}\n >\n <DialogTitle>{formatMessage('benefitConsumption.delete.confirm.title')}</DialogTitle>\n <DialogContent>\n <DialogContentText>\n {formatMessage('benefitConsumption.delete.confirm.message')}\n </DialogContentText>\n </DialogContent>\n <DialogActions>\n <Button onClick={() => setOpenConfirmDialog(false)} color=\"primary\">\n {formatMessage('benefitConsumption.cancel')}\n </Button>\n <Button onClick={handleDeleteBenefitConsumption} color=\"primary\" autoFocus>\n {formatMessage('benefitConsumption.confirm')}\n </Button>\n </DialogActions>\n </Dialog>\n <div style={{ display: 'none' }}>\n <PayrollBenefitPrintTemplate\n ref={payrollPrintTemplateRef}\n benefitAttachments={benefitAttachments}\n />\n </div>\n </div>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingBenefitAttachments: state.payroll.fetchingBenefitAttachments,\n fetchedBenefitAttachments: state.payroll.fetchedBenefitAttachments,\n errorBenefitAttachments: state.payroll.errorBenefitAttachments,\n benefitAttachments: state.payroll.benefitAttachments,\n benefitAttachmentsPageInfo: state.payroll.benefitAttachmentsPageInfo,\n benefitAttachmentsTotalCount: state.payroll.benefitAttachmentsTotalCount,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators(\n { fetchBenefitAttachments, deleteBenefitConsumption },\n dispatch,\n);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(BenefitConsumptionSearcherModal);\n","import { baseApiUrl } from '@stssocialst-stp/fe-core';\n\nexport default function downloadPayroll(payrollId, payrollFileName, blank = true) {\n const url = new URL(\n `${window.location.origin}${baseApiUrl}/payroll/csv_reconciliation/`,\n );\n url.searchParams.append('payroll_id', payrollId);\n url.searchParams.append('blank', blank);\n url.searchParams.append('payroll_file_name', payrollFileName);\n\n fetch(url)\n .then((response) => response.blob())\n .then((blob) => {\n const link = document.createElement('a');\n link.href = URL.createObjectURL(blob);\n link.download = blank ? `reconciliation_${payrollFileName}.csv` : payrollFileName;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n })\n .catch((error) => {\n // eslint-disable-next-line no-console\n console.error('Export failed, reason: ', error);\n });\n}\n","/* eslint-disable max-len */\nimport React, { useEffect, useState } from 'react';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n Paper,\n Grid,\n} from '@material-ui/core';\nimport Typography from '@material-ui/core/Typography';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport { MODULE_NAME, BENEFIT_CONSUMPTION_STATUS, PAYMENT_METHOD } from '../../../constants';\nimport {\n closePayroll, fetchPayroll, makePaymentForPayroll, rejectPayroll,\n} from '../../../actions';\nimport { mutationLabel } from '../../../utils/string-utils';\nimport BenefitConsumptionSearcherModal from '../BenefitConsumptionSearcherModal';\nimport downloadPayroll from '../../../utils/export';\n\nfunction PaymentApproveForPaymentDialog({\n classes,\n payroll,\n closePayroll,\n rejectPayroll,\n payrollDetail,\n fetchPayroll,\n makePaymentForPayroll,\n}) {\n const modulesManager = useModulesManager();\n const [payrollUuid] = useState(payrollDetail?.id ?? null);\n const [isOpen, setIsOpen] = useState(false);\n const [totalBeneficiaries, setTotalBeneficiaries] = useState(0);\n const [selectedBeneficiaries, setSelectedBeneficiaries] = useState(0);\n const [approvedBeneficiaries, setApprovedBeneficiaries] = useState(0);\n const [totalBillAmount, setTotalBillAmount] = useState(0);\n const [totalReconciledBillAmount, setTotalReconciledBillAmount] = useState(0);\n\n const handleOpen = () => {\n if (payrollUuid) {\n fetchPayroll(modulesManager, [`id: \"${payrollUuid}\"`]);\n }\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setIsOpen(false);\n };\n\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n\n useEffect(() => {\n if (isOpen && Object.keys(payroll).length > 0) {\n // Calculate total benefits and reconciled benefits\n const total = payroll.benefitConsumption?.length ?? 0;\n const selected = (payroll.benefitConsumption ?? []).filter(\n (benefit) => benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED,\n ).length;\n const approved = (payroll.benefitConsumption ?? []).filter(\n (benefit) => benefit.status === BENEFIT_CONSUMPTION_STATUS.APPROVE_FOR_PAYMENT,\n ).length;\n\n setTotalBeneficiaries(total);\n setSelectedBeneficiaries(selected);\n setApprovedBeneficiaries(approved);\n\n let totalAmount = 0;\n let reconciledAmount = 0;\n if (payroll?.benefitConsumption) {\n payroll.benefitConsumption.forEach((benefit) => {\n if (benefit.benefitAttachment && benefit.benefitAttachment.length > 0) {\n benefit.benefitAttachment.forEach((attachment) => {\n if (attachment.bill && attachment.bill.amountTotal) {\n totalAmount += parseFloat(attachment.bill.amountTotal);\n if (benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED) {\n reconciledAmount += parseFloat(attachment.bill.amountTotal);\n }\n }\n });\n }\n });\n }\n setTotalBillAmount(totalAmount);\n setTotalReconciledBillAmount(reconciledAmount);\n }\n }, [isOpen, payroll]);\n\n const closePayrollCallback = () => {\n handleClose();\n closePayroll(\n payrollDetail,\n formatMessageWithValues('payroll.mutation.closeLabel', mutationLabel(payrollDetail)),\n );\n };\n\n const rejectPayrollCallback = () => {\n handleClose();\n rejectPayroll(\n payrollDetail,\n formatMessageWithValues('payroll.mutation.closeLabel', mutationLabel(payrollDetail)),\n );\n };\n\n const makePaymentForPayrollCallback = () => {\n handleClose();\n makePaymentForPayroll(\n payrollDetail,\n formatMessageWithValues('payroll.mutation.closeLabel', mutationLabel(payrollDetail)),\n );\n };\n\n const downloadPayrollData = (payrollUuid, payrollName) => {\n downloadPayroll(payrollUuid, payrollName);\n };\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"contained\"\n color=\"primary\"\n className={classes.button}\n >\n {formatMessage('payroll.viewReconciliationSummary')}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%,-50%)',\n width: '75%',\n maxWidth: '75%',\n },\n }}\n >\n <DialogTitle\n style={{\n marginTop: '10px',\n }}\n >\n {formatMessageWithValues('payroll.reconciliationSummary', { payrollName: payrollDetail.name })}\n </DialogTitle>\n <DialogContent>\n (\n <Grid container spacing={2}>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.selectedBeneficiaries')}\n </Typography>\n <Typography variant=\"body1\">\n {formatMessageWithValues('payroll.summary.beneficiariesCount', { selectedBeneficiaries, totalBeneficiaries })}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalAmountForInvoice')}\n </Typography>\n <Typography variant=\"body1\">\n {totalBillAmount}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.deliveredReconciliation')}\n </Typography>\n <Typography variant=\"body1\">\n {totalReconciledBillAmount}\n </Typography>\n </Paper>\n </Grid>\n </Grid>\n )}\n <div\n style={{ backgroundColor: '#DFEDEF' }}\n >\n <BenefitConsumptionSearcherModal payrollUuid={payrollDetail.id} payrollDetail={payrollDetail} />\n </div>\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n width: '100%',\n }}\n >\n <div style={{ maxWidth: '3000px' }}>\n <div style={{ float: 'left' }}>\n <Button\n onClick={() => closePayrollCallback(payrollDetail)}\n variant=\"contained\"\n color=\"primary\"\n disabled={\n payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_ONLINE_PAYMENT\n ? approvedBeneficiaries === 0\n : selectedBeneficiaries === 0\n }\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.approveAndClose')}\n </Button>\n <Button\n onClick={() => makePaymentForPayrollCallback(payrollDetail)}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT\n ? formatMessage('payroll.bistp.submitPayment')\n : formatMessage('payroll.summary.makePayment')}\n </Button>\n <Button\n onClick={() => downloadPayrollData(payrollDetail.id, payrollDetail.name)}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.download')}\n </Button>\n <Button\n onClick={() => rejectPayrollCallback(payrollDetail)}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.reject')}\n </Button>\n </div>\n <div style={{\n float: 'right',\n paddingRight: '16px',\n }}\n >\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{ margin: '0 16px' }}\n >\n {formatMessage('payroll.summary.close')}\n </Button>\n </div>\n </div>\n </DialogActions>\n </Dialog>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n payroll: state.payroll.payroll,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n closePayroll,\n rejectPayroll,\n fetchPayroll,\n makePaymentForPayroll,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentApproveForPaymentDialog);\n","import { useState, useEffect, useRef, useCallback } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { graphql } from '@stssocialst-stp/fe-core';\n\nconst POLL_INTERVAL_MS = 5000;\nconst TIMEOUT_MS = 600000;\n\nconst COUNT_QUERY = (payrollUuid) => `\n {\n benefitConsumptionByPayroll(payrollUuid: \"${payrollUuid}\", first: 0, isDeleted: false) {\n totalCount\n }\n }\n`;\n\nexport default function useAsyncPayrollProgress({ payrollUuid, payrollStatus }) {\n const dispatch = useDispatch();\n const [benefitCount, setBenefitCount] = useState(0);\n const [isGenerating, setIsGenerating] = useState(false);\n const [timedOut, setTimedOut] = useState(false);\n const pollRef = useRef(null);\n const startTimeRef = useRef(null);\n const prevCountRef = useRef(0);\n const stableCountRounds = useRef(0);\n\n const stopPolling = useCallback(() => {\n if (pollRef.current) {\n clearInterval(pollRef.current);\n pollRef.current = null;\n }\n }, []);\n\n const fetchCount = useCallback(() => {\n if (!payrollUuid) return;\n dispatch(graphql(COUNT_QUERY(payrollUuid), 'POLL_BENEFIT_COUNT'))\n .then((response) => {\n const count = response?.payload?.data?.benefitConsumptionByPayroll?.totalCount ?? 0;\n\n if (count === 0) {\n setBenefitCount(count);\n setIsGenerating(true);\n stableCountRounds.current = 0;\n prevCountRef.current = count;\n return;\n }\n\n setBenefitCount(count);\n\n if (count === prevCountRef.current) {\n stableCountRounds.current += 1;\n } else {\n stableCountRounds.current = 0;\n }\n prevCountRef.current = count;\n\n if (stableCountRounds.current >= 2) {\n setIsGenerating(false);\n stopPolling();\n }\n })\n .catch(() => {\n setBenefitCount((c) => Math.max(c, 0));\n });\n }, [payrollUuid, dispatch, stopPolling]);\n\n useEffect(() => {\n const shouldPoll = payrollUuid && payrollStatus === 'PENDING_APPROVAL';\n\n if (shouldPoll && !pollRef.current) {\n setTimedOut(false);\n startTimeRef.current = Date.now();\n stableCountRounds.current = 0;\n prevCountRef.current = 0;\n\n fetchCount();\n\n pollRef.current = setInterval(() => {\n if (Date.now() - startTimeRef.current >= TIMEOUT_MS) {\n setIsGenerating(false);\n setTimedOut(true);\n stopPolling();\n return;\n }\n fetchCount();\n }, POLL_INTERVAL_MS);\n }\n\n if (!shouldPoll && pollRef.current) {\n setIsGenerating(false);\n stopPolling();\n }\n\n return () => stopPolling();\n }, [payrollUuid, payrollStatus, fetchCount, stopPolling]);\n\n return { isGenerating, benefitCount, timedOut };\n}","/* eslint-disable max-len */\nimport React, { useState, useEffect } from 'react';\nimport {\n Paper, Grid, LinearProgress, Typography,\n} from '@material-ui/core';\nimport {\n Contributions,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport { makeStyles } from '@material-ui/styles';\nimport Button from '@material-ui/core/Button';\nimport {\n BENEFIT_CONSUMPTION_LIST_TAB_VALUE,\n PAYROLL_TABS_LABEL_CONTRIBUTION_KEY,\n PAYROLL_TABS_PANEL_CONTRIBUTION_KEY,\n PAYROLL_STATUS,\n MODULE_NAME,\n PAYMENT_METHOD,\n} from '../../constants';\nimport PayrollPaymentDataUploadDialog from './dialogs/PayrollPaymentDataUploadDialog';\nimport PaymentApproveForPaymentSummary from './dialogs/PaymentApproveForPaymentSummary';\nimport downloadPayroll from '../../utils/export';\nimport useAsyncPayrollProgress from '../../hooks/useAsyncPayrollProgress';\n\nconst useStyles = makeStyles((theme) => ({\n paper: theme.paper.paper,\n tableTitle: theme.table.title,\n tabs: {\n display: 'flex',\n alignItems: 'center',\n },\n selectedTab: {\n borderBottom: '4px solid white',\n },\n unselectedTab: {\n borderBottom: '4px solid transparent',\n },\n button: {\n marginLeft: 'auto',\n padding: theme.spacing(1),\n fontSize: '0.875rem',\n textTransform: 'none',\n },\n}));\n\nfunction PayrollTab({\n rights, setConfirmedAction, payrollUuid, isInTask, payroll, isPayrollFromFailedInvoices,\n}) {\n const classes = useStyles();\n\n const [activeTab, setActiveTab] = useState(BENEFIT_CONSUMPTION_LIST_TAB_VALUE);\n\n const isSelected = (tab) => tab === activeTab;\n\n const tabStyle = (tab) => (isSelected(tab) ? classes.selectedTab : classes.unselectedTab);\n\n const handleChange = (_, tab) => setActiveTab(tab);\n\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n const { isGenerating, benefitCount, timedOut } = useAsyncPayrollProgress({\n payrollUuid,\n payrollStatus: payroll?.status,\n });\n\n const [generationComplete, setGenerationComplete] = useState(false);\n const [refreshBenefitsKey, setRefreshBenefitsKey] = useState(0);\n\n useEffect(() => {\n if (!isGenerating && benefitCount > 0 && !generationComplete) {\n setGenerationComplete(true);\n setRefreshBenefitsKey((k) => k + 1);\n }\n }, [isGenerating, benefitCount, generationComplete]);\n\n const downloadPayrollData = (payrollUuid, payrollName) => {\n downloadPayroll(payrollUuid, payrollName);\n };\n\n return (\n <Paper className={classes.paper}>\n {(isGenerating || timedOut) && payrollUuid && !isPayrollFromFailedInvoices && (\n <Grid container spacing={2} style={{ padding: '16px' }}>\n <Grid item xs={12}>\n <Typography variant=\"body1\">\n {timedOut\n ? formatMessage('payroll.async.timedOut')\n : formatMessage('payroll.async.generating')}\n </Typography>\n {!timedOut && (\n <LinearProgress\n variant=\"indeterminate\"\n style={{ marginTop: '8px' }}\n />\n )}\n <Typography variant=\"caption\" style={{ display: 'block', marginTop: '4px' }}>\n {!timedOut && formatMessage('payroll.async.createdSoFar', { benefitCount })}\n </Typography>\n <Typography variant=\"caption\" style={{ display: 'block' }}>\n {!timedOut && formatMessage('payroll.async.note')}\n </Typography>\n </Grid>\n </Grid>\n )}\n <Grid container className={`${classes.tableTitle} ${classes.tabs}`}>\n <div style={{ width: '100%' }}>\n <div style={{ float: 'left' }}>\n <Contributions\n contributionKey={PAYROLL_TABS_LABEL_CONTRIBUTION_KEY}\n rights={rights}\n value={activeTab}\n onChange={handleChange}\n isSelected={isSelected}\n tabStyle={tabStyle}\n payroll={payroll}\n payrollUuid={payrollUuid}\n isInTask={isInTask}\n isPayrollFromFailedInvoices={isPayrollFromFailedInvoices}\n />\n </div>\n <div style={{ float: 'right', paddingRight: '16px' }}>\n {payrollUuid && !isPayrollFromFailedInvoices && (\n <Button\n onClick={() => downloadPayrollData(payrollUuid, payroll.name)}\n color=\"#DFEDEF\"\n className={classes.button}\n style={{\n border: '0px',\n marginTop: '6px',\n textTransform: 'uppercase',\n }}\n >\n {formatMessage('payroll.summary.download')}\n </Button>\n )}\n {payrollUuid && payroll?.status === PAYROLL_STATUS.APPROVE_FOR_PAYMENT && payroll.paymentMethod === PAYMENT_METHOD.STRATEGY_OFFLINE_PAYMENT\n && (\n <PayrollPaymentDataUploadDialog\n payrollUuid={payrollUuid}\n />\n )}\n {payrollUuid && payroll?.status === PAYROLL_STATUS.APPROVE_FOR_PAYMENT && payroll.paymentMethod === PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT\n && (\n <PaymentApproveForPaymentSummary\n classes={{}}\n payrollDetail={payroll}\n />\n )}\n </div>\n </div>\n </Grid>\n <Contributions\n contributionKey={PAYROLL_TABS_PANEL_CONTRIBUTION_KEY}\n rights={rights}\n value={activeTab}\n setConfirmedAction={setConfirmedAction}\n payrollUuid={payrollUuid}\n isInTask={isInTask}\n isPayrollFromFailedInvoices={isPayrollFromFailedInvoices}\n payroll={payroll}\n refreshBenefitsKey={refreshBenefitsKey}\n />\n </Paper>\n );\n}\n\nexport default PayrollTab;\n","import React, { useState, useRef, useEffect } from 'react';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\n\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n Form,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport {\n fetchPayroll,\n clearPayroll,\n createPayroll,\n} from '../../actions';\nimport {\n MODULE_NAME, PAYROLL_FROM_FAILED_INVOICES_URL_PARAM,\n RIGHT_PAYROLL_CREATE, PAYMENT_METHOD,\n} from '../../constants';\nimport { ACTION_TYPE } from '../../reducer';\nimport { mutationLabel, pageTitle } from '../../utils/string-utils';\nimport PayrollHeadPanel from '../../components/payroll/PayrollHeadPanel';\nimport PayrollTab from '../../components/payroll/PayrollTab';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n}));\n\nfunction PayrollPage({\n statePayrollUuid,\n taskPayrollUuid,\n rights,\n confirmed,\n submittingMutation,\n mutation,\n payroll,\n fetchPayroll,\n createPayroll,\n clearPayroll,\n clearConfirm,\n createPayrollFromFailedInvoices,\n journalize,\n benefitPlanId,\n}) {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const history = useHistory();\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n\n const [editedPayroll, setEditedPayroll] = useState({});\n const [payrollUuid, setPayrollUuid] = useState(null);\n const [isInTask, setIsInTask] = useState(false);\n const [readOnly, setReadOnly] = useState(false);\n const [isPayrollFromFailedInvoices, setIsPayrollFromFailedInvoices] = useState(false);\n const [confirmedAction, setConfirmedAction] = useState(() => null);\n const prevSubmittingMutationRef = useRef();\n\n const back = () => history.goBack();\n\n useEffect(() => {\n if (createPayrollFromFailedInvoices === PAYROLL_FROM_FAILED_INVOICES_URL_PARAM) {\n setIsPayrollFromFailedInvoices(true);\n }\n }, [createPayrollFromFailedInvoices, payrollUuid]);\n\n useEffect(() => {\n setPayrollUuid(statePayrollUuid ?? taskPayrollUuid);\n setIsInTask(!!taskPayrollUuid);\n }, [taskPayrollUuid, statePayrollUuid]);\n\n useEffect(() => {\n if (payrollUuid) {\n fetchPayroll(modulesManager, [`id: \"${payrollUuid}\"`]);\n }\n }, [payrollUuid]);\n\n useEffect(() => {\n if (confirmed && typeof confirmed === 'function') confirmedAction();\n return () => confirmed && clearConfirm(null);\n }, [confirmed]);\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n if (mutation?.actionType === ACTION_TYPE.DELETE_PAYROLL) {\n back();\n }\n if (mutation?.clientMutationId && (!payrollUuid || isPayrollFromFailedInvoices)) {\n fetchPayroll(modulesManager, [`clientMutationId: \"${mutation.clientMutationId}\"`]);\n setIsPayrollFromFailedInvoices(false);\n }\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n useEffect(() => {\n if (payroll) {\n setReadOnly(payroll?.id);\n if (isPayrollFromFailedInvoices) {\n setEditedPayroll({\n ...payroll, id: null, name: null, paymentCycle: null, status: null, fromFailedInvoicesPayrollId: payroll?.id,\n });\n } else {\n setEditedPayroll(payroll);\n }\n if (!payrollUuid && payroll?.id && !isPayrollFromFailedInvoices) {\n const payrollRouteRef = modulesManager.getRef('payroll.route.payroll');\n history.replace(`/${payrollRouteRef}/${payroll.id}`);\n }\n }\n }, [payroll]);\n\n useEffect(() => () => clearPayroll(), []);\n\n const mandatoryFieldsEmpty = () => {\n if (\n editedPayroll?.name\n && editedPayroll?.paymentPlan\n && editedPayroll?.paymentCycle\n && editedPayroll?.paymentMethod\n && (editedPayroll?.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT || editedPayroll?.paymentDate)\n && !editedPayroll?.isDeleted) return false;\n return true;\n };\n\n const canSave = () => !mandatoryFieldsEmpty() && (!readOnly || isPayrollFromFailedInvoices);\n\n const handleSave = () => {\n createPayroll(\n editedPayroll,\n formatMessageWithValues('payroll.mutation.create', mutationLabel(payroll)),\n );\n if (benefitPlanId) {\n back();\n }\n };\n\n const actions = [];\n\n return (\n rights.includes(RIGHT_PAYROLL_CREATE) && (\n <div className={classes.page}>\n <Form\n key={payrollUuid}\n module=\"payroll\"\n title={formatMessageWithValues('payrollPage.title', pageTitle(payroll))}\n titleParams={pageTitle(payroll)}\n openDirty={isPayrollFromFailedInvoices ? true : !payrollUuid}\n benefitPlan={editedPayroll}\n edited={editedPayroll}\n onEditedChanged={setEditedPayroll}\n back={!isInTask && back}\n mandatoryFieldsEmpty={mandatoryFieldsEmpty}\n canSave={canSave}\n save={handleSave}\n HeadPanel={PayrollHeadPanel}\n Panels={[PayrollTab]}\n rights={rights}\n actions={actions}\n setConfirmedAction={setConfirmedAction}\n payrollUuid={payrollUuid}\n saveTooltip={formatMessage('tooltip.save')}\n isInTask={!!taskPayrollUuid}\n payroll={payroll}\n readOnly={readOnly}\n isPayrollFromFailedInvoices={isPayrollFromFailedInvoices}\n benefitPlanId={benefitPlanId}\n />\n </div>\n )\n );\n}\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayroll,\n createPayroll,\n clearPayroll,\n coreConfirm,\n clearConfirm,\n journalize,\n}, dispatch);\n\nconst mapStateToProps = (state, props) => ({\n statePayrollUuid: props?.match?.params?.payroll_uuid === 'null' ? null : props?.match?.params.payroll_uuid,\n createPayrollFromFailedInvoices: props?.match?.params?.createPayrollFromFailedInvoices,\n benefitPlanId: props?.match?.params?.benefitPlanId,\n rights: state.core?.user?.i_user?.rights ?? [],\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n payroll: state.payroll.payroll,\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollPage);\n","import React from 'react';\nimport _debounce from 'lodash/debounce';\n\nimport { FormControlLabel, Grid, Checkbox } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n TextInput,\n ControlledField,\n useModulesManager,\n useTranslations,\n PublishedComponent,\n decodeId,\n} from '@stssocialst-stp/fe-core';\nimport {\n CONTAINS_LOOKUP,\n DEFAULT_DEBOUNCE_TIME,\n EMPTY_STRING,\n MODULE_NAME,\n} from '../../constants';\nimport PayrollStatusPicker from './PayrollStatusPicker';\nimport PaymentMethodPicker from '../../pickers/PaymentMethodPicker';\n\nconst useStyles = makeStyles((theme) => ({\n form: {\n padding: '0 0 10px 0',\n width: '100%',\n },\n item: {\n padding: theme.spacing(1),\n },\n}));\n\nfunction PayrollFilter({\n filters, onChangeFilters, statusReadOnly = false,\n}) {\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n const debouncedOnChangeFilters = _debounce(onChangeFilters, DEFAULT_DEBOUNCE_TIME);\n\n const filterTextFieldValue = (filterName) => filters?.[filterName]?.value ?? EMPTY_STRING;\n\n const filterValue = (filterName) => filters?.[filterName]?.value ?? null;\n\n const onChangeStringFilter = (filterName, lookup = null) => (value) => {\n if (lookup) {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}_${lookup}: \"${value}\"`,\n },\n ]);\n } else {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}: \"${value}\"`,\n },\n ]);\n }\n };\n\n return (\n <Grid container className={classes.form}>\n <Grid item xs={3} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label={formatMessage('payroll.name')}\n value={filterTextFieldValue('name')}\n onChange={onChangeStringFilter('name', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={3} className={classes.item}>\n <PublishedComponent\n pubRef=\"contributionPlan.PaymentPlanPicker\"\n filters={filters}\n value={filterValue('paymentPlan_Id')}\n onChange={(paymentPlan) => onChangeFilters([\n {\n id: 'paymentPlan_Id',\n value: paymentPlan,\n filter: `paymentPlan_Id: \"${paymentPlan?.id && decodeId(paymentPlan.id)}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={3} className={classes.item}>\n <PublishedComponent\n pubRef=\"paymentCycle.PaymentCyclePicker\"\n withLabel\n withPlaceholder\n filters={filters}\n value={filterValue('paymentCycle_Id')}\n onChange={(paymentCycle) => onChangeFilters([\n {\n id: 'paymentCycle_Id',\n value: paymentCycle,\n filter: `paymentCycle_Id: \"${paymentCycle?.id && decodeId(paymentCycle.id)}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PayrollStatusPicker\n withNull\n nullLabel={formatMessage('any')}\n label={formatMessage('paymentMethod')}\n value={filterValue('status')}\n readOnly={statusReadOnly}\n onChange={(value) => onChangeFilters([\n {\n id: 'status',\n value,\n filter: value ? `status: ${value}` : EMPTY_STRING,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PaymentMethodPicker\n withNull\n nullLabel={formatMessage('any')}\n label={formatMessage('payroll.paymentMethod')}\n value={filterValue('paymentMethod')}\n onChange={(value) => onChangeFilters([\n {\n id: 'paymentMethod',\n value,\n filter: `paymentMethod: \"${value}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label=\"payroll.paymentDateFrom\"\n value={filterValue('paymentDate_Gte')}\n onChange={(value) => onChangeFilters([\n {\n id: 'paymentDate_Gte',\n value,\n filter: value ? `paymentDate_Gte: \"${value}\"` : EMPTY_STRING,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label=\"payroll.paymentDateTo\"\n value={filterValue('paymentDate_Lte')}\n onChange={(value) => onChangeFilters([\n {\n id: 'paymentDate_Lte',\n value,\n filter: value ? `paymentDate_Lte: \"${value}\"` : EMPTY_STRING,\n },\n ])}\n />\n </Grid>\n <ControlledField\n module=\"payroll\"\n id=\"payrollFilter.showHistory\"\n field={(\n <Grid item xs={12} className={classes.item}>\n <FormControlLabel\n control={(\n <Checkbox\n color=\"primary\"\n checked={filters?.isDeleted?.value}\n onChange={() => onChangeFilters([\n {\n id: 'isDeleted',\n value: !filters?.isDeleted?.value,\n filter: `isDeleted: ${!filters?.isDeleted?.value}`,\n },\n ])}\n />\n )}\n label={formatMessage('tooltip.isDeleted')}\n />\n </Grid>\n )}\n />\n </Grid>\n );\n}\n\nexport default PayrollFilter;\n","import React, { useState, useRef, useEffect } from 'react';\nimport { connect, useSelector } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport { IconButton, Tooltip } from '@material-ui/core';\nimport VisibilityIcon from '@material-ui/icons/Visibility';\nimport DeleteIcon from '@material-ui/icons/Delete';\n\nimport {\n Searcher,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport LinearProgress from '@material-ui/core/LinearProgress';\nimport PayrollFilter from './PayrollFilter';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME, PAYROLL_PAYROLL_ROUTE,\n RIGHT_PAYROLL_SEARCH, ROWS_PER_PAGE_OPTIONS, PAYROLL_STATUS, PAYMENT_METHOD,\n} from '../../constants';\nimport { mutationLabel, pageTitle } from '../../utils/string-utils';\nimport { fetchPayrolls, deletePayrolls } from '../../actions';\n\nfunction PayrollSearcher({\n deletePayrolls,\n fetchingPayrolls,\n fetchedPayrolls,\n errorPayrolls,\n payrolls,\n pageInfo,\n totalCount,\n fetchPayrolls,\n coreConfirm,\n clearConfirm,\n confirmed,\n submittingMutation,\n mutation,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n\n const [payrollToDelete, setPayrollToDelete] = useState(null);\n const [deletedPayrollUuids, setDeletedPayrollUuids] = useState([]);\n const prevSubmittingMutationRef = useRef();\n\n const openDeletePayrollConfirmDialog = () => {\n coreConfirm(\n formatMessageWithValues('payroll.delete.confirm.title', pageTitle(payrollToDelete)),\n formatMessage('payroll.delete.confirm.message'),\n );\n };\n\n useEffect(() => payrollToDelete && openDeletePayrollConfirmDialog(), [payrollToDelete]);\n\n useEffect(() => {\n if (payrollToDelete && confirmed) {\n deletePayrolls(\n payrollToDelete,\n formatMessageWithValues('payroll.mutation.deleteLabel', mutationLabel(payrollToDelete)),\n );\n setDeletedPayrollUuids([...deletedPayrollUuids, payrollToDelete.id]);\n }\n if (payrollToDelete && confirmed !== null) {\n setPayrollToDelete(null);\n }\n return () => confirmed && clearConfirm(false);\n }, [confirmed]);\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n const headers = () => [\n 'payroll.name',\n 'payroll.benefitPlan',\n 'payroll.paymentPoint',\n 'payroll.status',\n 'payroll.paymentMethod',\n 'payroll.paymentDate',\n 'payroll.bistp.progress',\n 'emptyLabel',\n ];\n\n const sorts = () => [\n ['name', true],\n ['benefitPlanNameCode', true],\n ['paymentPoint', true],\n ['status', true],\n ['paymentMethod', true],\n ['paymentDate', true],\n ];\n\n const renderBistpProgress = (payroll) => {\n if (payroll.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) return null;\n const summary = payroll.bistpSummary || {};\n const total = summary.total || 0;\n const reconciled = summary.reconciled || 0;\n const progress = total > 0 ? (reconciled / total) * 100 : 0;\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, minWidth: 120 }}>\n <LinearProgress\n variant=\"determinate\"\n value={progress}\n style={{ flex: 1, height: 8, borderRadius: 4 }}\n />\n <span style={{ fontSize: '0.75rem', whiteSpace: 'nowrap' }}>\n {reconciled}/{total}\n </span>\n </div>\n );\n };\n\n const defaultFilters = () => ({\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n });\n\n const fetch = (params) => fetchPayrolls(modulesManager, params);\n\n const rowIdentifier = (payroll) => payroll.id;\n\n const openPayroll = (payroll) => rights.includes(RIGHT_PAYROLL_SEARCH) && history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}/${payroll?.id}`,\n );\n\n const onDelete = (payroll) => setPayrollToDelete(payroll);\n\n const itemFormatters = () => [\n (payroll) => payroll.name,\n (payroll) => payroll.benefitPlanNameCode ?? '',\n (payroll) => (payroll.paymentPoint\n ? `${payroll.paymentPoint.name}` : ''),\n (payroll) => (payroll.status\n ? `${payroll.status}` : ''),\n (payroll) => (payroll.paymentMethod\n ? `${payroll.paymentMethod}` : ''),\n (payroll) => (payroll.paymentDate ?? '—'),\n (payroll) => renderBistpProgress(payroll),\n (payroll) => (\n <Tooltip title={formatMessage('tooltip.viewDetails')}>\n <IconButton\n onClick={() => openPayroll(payroll)}\n >\n <VisibilityIcon />\n </IconButton>\n </Tooltip>\n ),\n (payroll) => (\n <Tooltip title={formatMessage('tooltip.delete')}>\n <IconButton\n onClick={() => onDelete(payroll)}\n disabled={deletedPayrollUuids.includes(payroll.id) || payroll.status !== PAYROLL_STATUS.PENDING_APPROVAL}\n >\n <DeleteIcon />\n </IconButton>\n </Tooltip>\n ),\n ];\n\n const onDoubleClick = (payroll) => openPayroll(payroll);\n\n const payrollFilter = ({ filters, onChangeFilters }) => (\n <PayrollFilter filters={filters} onChangeFilters={onChangeFilters} />\n );\n\n const isRowDisabled = (_, payroll) => deletedPayrollUuids.includes(payroll.id);\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={payrollFilter}\n fetch={fetch}\n items={payrolls}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPayrolls}\n fetchingItems={fetchingPayrolls}\n errorItems={errorPayrolls}\n tableTitle={formatMessageWithValues('payrollSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n onDoubleClick={onDoubleClick}\n defaultFilters={defaultFilters()}\n rowDisabled={isRowDisabled}\n rowLocked={isRowDisabled}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPayrolls: state.payroll.fetchingPayrolls,\n fetchedPayrolls: state.payroll.fetchedPayrolls,\n errorPayrolls: state.payroll.errorPayrolls,\n payrolls: state.payroll.payrolls,\n pageInfo: state.payroll.payrollsPageInfo,\n totalCount: state.payroll.payrollsTotalCount,\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayrolls,\n deletePayrolls,\n journalize,\n clearConfirm,\n coreConfirm,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollSearcher);\n","import React from 'react';\nimport { useSelector } from 'react-redux';\n\nimport { Fab } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\nimport AddIcon from '@material-ui/icons/Add';\n\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n useHistory,\n withTooltip,\n} from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME,\n PAYROLL_PAYROLL_ROUTE,\n RIGHT_PAYROLL_CREATE,\n RIGHT_PAYROLL_SEARCH,\n} from '../../constants';\nimport PayrollSearcher from '../../components/payroll/PayrollSearcher';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n fab: theme.fab,\n}));\n\nfunction PayrollsPage() {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const history = useHistory();\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n const onCreate = () => history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}`,\n );\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.page.title')} />\n {rights.includes(RIGHT_PAYROLL_SEARCH)\n && <PayrollSearcher />}\n {rights.includes(RIGHT_PAYROLL_CREATE)\n && withTooltip(\n <div className={classes.fab}>\n <Fab color=\"primary\" onClick={onCreate}>\n <AddIcon />\n </Fab>\n </div>,\n formatMessage('tooltip.createButton'),\n )}\n </div>\n );\n}\n\nexport default PayrollsPage;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport { IconButton, Tooltip } from '@material-ui/core';\nimport DownloadIcon from '@material-ui/icons/CloudDownload';\n\nimport {\n Searcher,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME,\n ROWS_PER_PAGE_OPTIONS, PAYROLL_PAYMENT_FILE_STATUS,\n} from '../../constants';\nimport { fetchPayrollPaymentFiles } from '../../actions';\nimport downloadPayroll from '../../utils/export';\nimport AdditionalFieldsDialog from './dialogs/AdditionalFieldsDialog';\n\nfunction PayrollPaymentFilesSearcher({\n fetchingPayrollFiles,\n fetchedPayrollFiles,\n errorPayrollFiles,\n files,\n pageInfo,\n totalCount,\n fetchPayrollPaymentFiles,\n payrollUuid,\n}) {\n const modulesManager = useModulesManager();\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n\n const headers = () => [\n 'payrollPaymentFile.fileName',\n 'payrollPaymentFile.status',\n 'payrollPaymentFile.error',\n 'payrollPaymentFile.download',\n '',\n ];\n\n const defaultFilters = () => {\n const filters = {\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n };\n if (payrollUuid) {\n filters.payrollId = {\n value: payrollUuid,\n filter: `payroll_Id: \"${payrollUuid}\"`,\n };\n }\n return filters;\n };\n\n const download = (payrollId, fileName) => {\n downloadPayroll(payrollId, fileName, false);\n };\n\n const fetchFiles = (params) => fetchPayrollPaymentFiles(modulesManager, params);\n\n const rowIdentifier = (file) => file.fileName;\n\n const itemFormatters = () => [\n (file) => file.fileName,\n (file) => file.status,\n (file) => file.error,\n (file) => (\n <Tooltip title={formatMessage('tooltip.download')}>\n <IconButton\n onClick={() => download(payrollUuid, file.fileName)}\n disabled={![PAYROLL_PAYMENT_FILE_STATUS.SUCCESS,\n PAYROLL_PAYMENT_FILE_STATUS.PARTIAL_SUCCESS].includes(file.status)}\n >\n <DownloadIcon />\n </IconButton>\n </Tooltip>\n ),\n (file) => (\n <AdditionalFieldsDialog\n jsonExt={file?.jsonExt}\n buttonLabel=\"payroll.summaryUpload\"\n title=\"payroll.summaryUpload\"\n />\n ),\n ];\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={null}\n fetch={fetchFiles}\n items={files}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPayrollFiles}\n fetchingItems={fetchingPayrollFiles}\n errorItems={errorPayrollFiles}\n tableTitle={formatMessageWithValues('payrollPaymentFilesSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n defaultFilters={defaultFilters()}\n />\n );\n}\nconst mapStateToProps = (state) => ({\n fetchingPayrollFiles: state.payroll.fetchingPayrollFiles,\n fetchedPayrollFiles: state.payroll.fetchedPayrollFiles,\n errorPayrollFiles: state.payroll.errorPayrollFiles,\n files: state.payroll.payrollFiles,\n pageInfo: state.payroll.payrollFilesPageInfo,\n totalCount: state.payroll.payrollFilesTotalCount,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayrollPaymentFiles,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollPaymentFilesSearcher);\n","import React, { useState } from 'react';\nimport { useSelector } from 'react-redux';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport {\n useTranslations,\n useModulesManager,\n} from '@stssocialst-stp/fe-core';\nimport PayrollPaymentFilesSearcher from '../PayrollPaymentFilesSearcher';\nimport { MODULE_NAME } from '../../../constants';\n\nfunction PayrollReconciliationFilesDialog({\n payroll, classes,\n}) {\n const modulesManager = useModulesManager();\n const rights = useSelector((state) => state.core?.user?.i_user?.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n const [isOpen, setIsOpen] = useState(false);\n\n const handleClose = () => {\n setIsOpen(false);\n };\n\n const handleOpen = () => {\n setIsOpen(true);\n };\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"contained\"\n color=\"primary\"\n className={classes.button}\n >\n {formatMessage('payroll.viewReconciliationFiles')}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n width: 1000,\n maxWidth: 1000,\n },\n }}\n >\n <form noValidate>\n <DialogContent>\n <PayrollPaymentFilesSearcher\n module=\"payroll\"\n payrollUuid={payroll?.id}\n rights={rights}\n showFilters={false}\n />\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n }}\n >\n <div style={{ maxWidth: '1000px' }}>\n <div style={{ float: 'right' }}>\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.close')}\n </Button>\n </div>\n </div>\n </DialogActions>\n </form>\n </Dialog>\n </>\n );\n}\n\nexport default PayrollReconciliationFilesDialog;\n","import React, { useRef, useEffect } from 'react';\nimport { connect, useSelector } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport {\n Searcher,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport LinearProgress from '@material-ui/core/LinearProgress';\nimport PayrollFilter from './PayrollFilter';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME, PAYROLL_PAYROLL_ROUTE, RIGHT_PAYROLL_SEARCH, ROWS_PER_PAGE_OPTIONS, PAYROLL_STATUS, PAYMENT_METHOD,\n} from '../../constants';\nimport { fetchPayrolls } from '../../actions';\nimport PaymentApproveForPaymentSummary from './dialogs/PaymentApproveForPaymentSummary';\nimport PayrollReconciliationFilesDialog from './dialogs/PayrollReconciliationFilesDialog';\n\nfunction PayrollSearcherApproved({\n fetchingPayrolls,\n fetchedPayrolls,\n errorPayrolls,\n payrolls,\n pageInfo,\n totalCount,\n fetchPayrolls,\n submittingMutation,\n mutation,\n classes,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const { formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n\n const prevSubmittingMutationRef = useRef();\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n const renderBistpProgress = (payroll) => {\n if (payroll.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) return null;\n const summary = payroll.bistpSummary || {};\n const total = summary.total || 0;\n const reconciled = summary.reconciled || 0;\n const progress = total > 0 ? (reconciled / total) * 100 : 0;\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, minWidth: 120 }}>\n <LinearProgress\n variant=\"determinate\"\n value={progress}\n style={{ flex: 1, height: 8, borderRadius: 4 }}\n />\n <span style={{ fontSize: '0.75rem', whiteSpace: 'nowrap' }}>\n {reconciled}/{total}\n </span>\n </div>\n );\n };\n\n const headers = () => [\n 'payroll.name',\n 'payroll.paymentPlan',\n 'payroll.paymentPoint',\n 'payroll.status',\n 'payroll.paymentMethod',\n 'payroll.bistp.progress',\n 'emptyLabel',\n ];\n\n const sorts = () => [\n ['name', true],\n ['paymentPlan', true],\n ['paymentPoint', true],\n ['status', true],\n ['paymentMethod', true],\n ];\n\n const defaultFilters = () => ({\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n status: {\n value: PAYROLL_STATUS.APPROVE_FOR_PAYMENT,\n filter: `status: ${PAYROLL_STATUS.APPROVE_FOR_PAYMENT}`,\n },\n });\n\n const fetch = (params) => fetchPayrolls(modulesManager, params);\n\n const rowIdentifier = (payroll) => payroll.id;\n\n const openPayroll = (payroll) => rights.includes(RIGHT_PAYROLL_SEARCH) && history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}/${payroll?.id}`,\n );\n\n const itemFormatters = () => [\n (payroll) => payroll.name,\n (payroll) => payroll.benefitPlanNameCode ?? '',\n (payroll) => (payroll.paymentPoint\n ? `${payroll.paymentPoint.name}` : ''),\n (payroll) => (payroll.status\n ? `${payroll.status}` : ''),\n (payroll) => (payroll.paymentMethod\n ? `${payroll.paymentMethod}` : ''),\n (payroll) => renderBistpProgress(payroll),\n (payroll) => (\n <PayrollReconciliationFilesDialog\n classes={classes}\n payroll={payroll}\n />\n ),\n (payroll) => (\n <PaymentApproveForPaymentSummary\n classes={classes}\n payrollDetail={payroll}\n />\n ),\n ];\n\n const onDoubleClick = (payroll) => openPayroll(payroll);\n\n const payrollFilter = ({ filters, onChangeFilters }) => (\n <PayrollFilter filters={filters} onChangeFilters={onChangeFilters} statusReadOnly />\n );\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={payrollFilter}\n fetch={fetch}\n items={payrolls}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPayrolls}\n fetchingItems={fetchingPayrolls}\n errorItems={errorPayrolls}\n tableTitle={formatMessageWithValues('payrollSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n onDoubleClick={onDoubleClick}\n defaultFilters={defaultFilters()}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPayrolls: state.payroll.fetchingPayrolls,\n fetchedPayrolls: state.payroll.fetchedPayrolls,\n errorPayrolls: state.payroll.errorPayrolls,\n payrolls: state.payroll.payrolls,\n pageInfo: state.payroll.payrollsPageInfo,\n totalCount: state.payroll.payrollsTotalCount,\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayrolls,\n journalize,\n clearConfirm,\n coreConfirm,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollSearcherApproved);\n","import React from 'react';\nimport { useSelector } from 'react-redux';\n\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME,\n RIGHT_PAYROLL_SEARCH,\n} from '../../constants';\nimport PayrollSearcherApproved from '../../components/payroll/PayrollSearcherApproved';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n fab: theme.fab,\n}));\n\nfunction ApprovedPayrollsPage() {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.page.title')} />\n {rights.includes(RIGHT_PAYROLL_SEARCH)\n && <PayrollSearcherApproved classes={classes} />}\n </div>\n );\n}\n\nexport default ApprovedPayrollsPage;\n","/* eslint-disable max-len */\nimport React, { useEffect, useState } from 'react';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n useModulesManager,\n useTranslations,\n useHistory,\n} from '@stssocialst-stp/fe-core';\nimport {\n Paper,\n Grid,\n} from '@material-ui/core';\nimport Typography from '@material-ui/core/Typography';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport {\n MODULE_NAME,\n BENEFIT_CONSUMPTION_STATUS,\n PAYROLL_PAYROLL_ROUTE,\n PAYROLL_FROM_FAILED_INVOICES_URL_PARAM,\n} from '../../../constants';\nimport downloadPayroll from '../../../utils/export';\n\nimport BenefitConsumptionSearcherModal from '../BenefitConsumptionSearcherModal';\nimport { fetchPayroll } from '../../../actions';\n\nfunction PaymentReconcilationSummarytDialog({\n classes,\n payroll,\n payrollDetail,\n fetchPayroll,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const [payrollUuid] = useState(payrollDetail?.id ?? null);\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const [isOpen, setIsOpen] = useState(false);\n const [totalBeneficiaries, setTotalBeneficiaries] = useState(0);\n const [selectedBeneficiaries, setSelectedBeneficiaries] = useState(0);\n const [totalBillAmount, setTotalBillAmount] = useState(0);\n const [totalReconciledBillAmount, setTotalReconciledBillAmount] = useState(0);\n\n const handleOpen = () => {\n if (payrollUuid) {\n fetchPayroll(modulesManager, [`id: \"${payrollUuid}\"`]);\n }\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setIsOpen(false);\n };\n\n const handleCreatePaymentForFailedInvoice = () => {\n history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}/${payrollDetail?.id}/${PAYROLL_FROM_FAILED_INVOICES_URL_PARAM}`,\n );\n };\n\n useEffect(() => {\n if (isOpen && Object.keys(payroll).length > 0) {\n // Calculate total benefits and reconciled benefits\n const total = payroll.benefitConsumption?.length ?? 0;\n const selected = (payroll.benefitConsumption ?? []).filter(\n (benefit) => benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED,\n ).length;\n\n setTotalBeneficiaries(total);\n setSelectedBeneficiaries(selected);\n\n let totalAmount = 0;\n let reconciledAmount = 0;\n if (payroll?.benefitConsumption) {\n payroll.benefitConsumption.forEach((benefit) => {\n if (benefit.benefitAttachment && benefit.benefitAttachment.length > 0) {\n benefit.benefitAttachment.forEach((attachment) => {\n if (attachment.bill && attachment.bill.amountTotal) {\n totalAmount += parseFloat(attachment.bill.amountTotal);\n if (benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED) {\n reconciledAmount += parseFloat(attachment.bill.amountTotal);\n }\n }\n });\n }\n });\n }\n setTotalBillAmount(totalAmount);\n setTotalReconciledBillAmount(reconciledAmount);\n }\n }, [isOpen, payroll]);\n\n const downloadPayrollData = (payrollUuid, payrollName) => {\n downloadPayroll(payrollUuid, payrollName);\n };\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"contained\"\n color=\"primary\"\n className={classes.button}\n >\n {formatMessage('payroll.viewReconciliationSummary')}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%,-50%)',\n width: '90%',\n maxWidth: '90%',\n },\n }}\n >\n <DialogTitle\n style={{\n marginTop: '10px',\n }}\n >\n {formatMessageWithValues('payroll.reconciliationSummary', { payrollName: payrollDetail.name })}\n </DialogTitle>\n <DialogContent>\n <Grid container spacing={2}>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.selectedBeneficiaries')}\n </Typography>\n <Typography variant=\"body1\">\n {formatMessageWithValues('payroll.summary.beneficiariesCount', { selectedBeneficiaries, totalBeneficiaries })}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalAmountForInvoice')}\n </Typography>\n <Typography variant=\"body1\">\n {totalBillAmount}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.deliveredReconciliation')}\n </Typography>\n <Typography variant=\"body1\">\n {totalReconciledBillAmount}\n </Typography>\n </Paper>\n </Grid>\n </Grid>\n <div\n style={{ backgroundColor: '#DFEDEF' }}\n >\n <BenefitConsumptionSearcherModal payrollUuid={payrollDetail.id} payrollDetail={payrollDetail} reconciledMode />\n </div>\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n width: '100%',\n }}\n >\n <div style={{ maxWidth: '3000px' }}>\n <div style={{ float: 'left' }}>\n <Button\n onClick={handleCreatePaymentForFailedInvoice}\n variant=\"contained\"\n color=\"primary\"\n disabled={totalBeneficiaries === selectedBeneficiaries}\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.createPaymentForFailedInvoice')}\n </Button>\n <Button\n onClick={() => downloadPayrollData(payrollDetail.id, payrollDetail.name)}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.download')}\n </Button>\n </div>\n <div style={{\n float: 'right',\n paddingRight: '16px',\n }}\n >\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{ margin: '0 16px' }}\n >\n {formatMessage('payroll.summary.close')}\n </Button>\n </div>\n </div>\n </DialogActions>\n </Dialog>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n payroll: state.payroll.payroll,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayroll,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentReconcilationSummarytDialog);\n","import React, { useRef, useEffect } from 'react';\nimport { connect, useSelector } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport {\n Searcher,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport LinearProgress from '@material-ui/core/LinearProgress';\nimport PayrollFilter from './PayrollFilter';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME, PAYROLL_PAYROLL_ROUTE, RIGHT_PAYROLL_SEARCH, ROWS_PER_PAGE_OPTIONS, PAYROLL_STATUS, PAYMENT_METHOD,\n} from '../../constants';\nimport { fetchPayrolls } from '../../actions';\nimport PaymentReconciliationSummaryDialog from './dialogs/PaymentReconciliationSummaryDialog';\nimport PayrollReconciliationFilesDialog from './dialogs/PayrollReconciliationFilesDialog';\n\nfunction PayrollSearcherReconciled({\n fetchingPayrolls,\n fetchedPayrolls,\n errorPayrolls,\n payrolls,\n pageInfo,\n totalCount,\n fetchPayrolls,\n submittingMutation,\n mutation,\n classes,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const { formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n\n const prevSubmittingMutationRef = useRef();\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n const renderBistpProgress = (payroll) => {\n if (payroll.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) return null;\n const summary = payroll.bistpSummary || {};\n const total = summary.total || 0;\n const reconciled = summary.reconciled || 0;\n const progress = total > 0 ? (reconciled / total) * 100 : 0;\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, minWidth: 120 }}>\n <LinearProgress\n variant=\"determinate\"\n value={progress}\n style={{ flex: 1, height: 8, borderRadius: 4 }}\n />\n <span style={{ fontSize: '0.75rem', whiteSpace: 'nowrap' }}>\n {reconciled}/{total}\n </span>\n </div>\n );\n };\n\n const headers = () => [\n 'payroll.name',\n 'payroll.paymentPlan',\n 'payroll.paymentPoint',\n 'payroll.status',\n 'payroll.paymentMethod',\n 'payroll.bistp.progress',\n 'emptyLabel',\n ];\n\n const sorts = () => [\n ['name', true],\n ['paymentPlan', true],\n ['paymentPoint', true],\n ['status', true],\n ['paymentMethod', true],\n ];\n\n const defaultFilters = () => ({\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n status: {\n value: PAYROLL_STATUS.RECONCILED,\n filter: `status: ${PAYROLL_STATUS.RECONCILED}`,\n },\n });\n\n const fetch = (params) => fetchPayrolls(modulesManager, params);\n\n const rowIdentifier = (payroll) => payroll.id;\n\n const openPayroll = (payroll) => rights.includes(RIGHT_PAYROLL_SEARCH) && history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}/${payroll?.id}`,\n );\n\n const itemFormatters = () => [\n (payroll) => payroll.name,\n (payroll) => payroll.benefitPlanNameCode ?? '',\n (payroll) => (payroll.paymentPoint\n ? `${payroll.paymentPoint.name}` : ''),\n (payroll) => (payroll.status\n ? `${payroll.status}` : ''),\n (payroll) => (payroll.paymentMethod\n ? `${payroll.paymentMethod}` : ''),\n (payroll) => renderBistpProgress(payroll),\n (payroll) => (\n <PayrollReconciliationFilesDialog\n classes={classes}\n payroll={payroll}\n />\n ),\n (payroll) => (\n <PaymentReconciliationSummaryDialog\n classes={classes}\n payrollDetail={payroll}\n />\n ),\n ];\n\n const onDoubleClick = (payroll) => openPayroll(payroll);\n\n const payrollFilter = ({ filters, onChangeFilters }) => (\n <PayrollFilter filters={filters} onChangeFilters={onChangeFilters} statusReadOnly />\n );\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={payrollFilter}\n fetch={fetch}\n items={payrolls}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPayrolls}\n fetchingItems={fetchingPayrolls}\n errorItems={errorPayrolls}\n tableTitle={formatMessageWithValues('payrollSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n onDoubleClick={onDoubleClick}\n defaultFilters={defaultFilters()}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPayrolls: state.payroll.fetchingPayrolls,\n fetchedPayrolls: state.payroll.fetchedPayrolls,\n errorPayrolls: state.payroll.errorPayrolls,\n payrolls: state.payroll.payrolls,\n pageInfo: state.payroll.payrollsPageInfo,\n totalCount: state.payroll.payrollsTotalCount,\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayrolls,\n journalize,\n clearConfirm,\n coreConfirm,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollSearcherReconciled);\n","import React from 'react';\nimport { useSelector } from 'react-redux';\n\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME,\n RIGHT_PAYROLL_SEARCH,\n} from '../../constants';\nimport PayrollSearcherReconciled from '../../components/payroll/PayrollSearcherReconciled';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n fab: theme.fab,\n}));\n\nfunction ReconciledPayrollsPage() {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.page.title')} />\n {rights.includes(RIGHT_PAYROLL_SEARCH)\n && <PayrollSearcherReconciled classes={classes} />}\n </div>\n );\n}\n\nexport default ReconciledPayrollsPage;\n","/* eslint-disable react/jsx-props-no-spreading */\nimport React, { useState } from 'react';\n\nimport { TextField } from '@material-ui/core';\n\nimport {\n useGraphqlQuery, useTranslations, Autocomplete, useModulesManager,\n} from '@stssocialst-stp/fe-core';\nimport { PAYMENT_POINT_PROJECTION } from '../../actions';\n\nfunction PaymentPointPicker({\n readOnly,\n value,\n onChange,\n required,\n withLabel,\n withPlaceholder,\n filterOptions,\n filterSelectedOptions,\n}) {\n const [searchString, setSearchString] = useState();\n const { formatMessage } = useTranslations('payroll');\n\n const modulesManager = useModulesManager();\n\n const formatSuggestion = (paymentPoint) => [paymentPoint?.name].filter(Boolean).join(' ');\n\n const { isLoading, data, error } = useGraphqlQuery(\n `\n query paymentPoint {\n paymentPoint {\n edges {\n node {\n ${PAYMENT_POINT_PROJECTION(modulesManager).join(' ')}\n }\n }\n }\n }\n `,\n {},\n );\n\n const paymentPoints = data?.paymentPoint?.edges.map((edge) => edge.node) ?? [];\n\n return (\n <Autocomplete\n withLabel={withLabel}\n withPlaceholder={withPlaceholder}\n readOnly={readOnly}\n value={value}\n placeholder={formatMessage('paymentPointPicker.placeholder')}\n label={formatMessage('paymentPointPicker.label')}\n isLoading={isLoading}\n options={paymentPoints}\n error={error}\n getOptionLabel={(option) => formatSuggestion(option)}\n onChange={(user) => onChange(user)}\n filterOptions={filterOptions}\n filterSelectedOptions={filterSelectedOptions}\n onInputChange={() => setSearchString(searchString)}\n renderInput={(inputProps) => (\n <TextField\n {...inputProps}\n variant=\"standard\"\n required={required}\n label={withLabel && formatMessage('paymentPointPicker.label')}\n placeholder={withPlaceholder && formatMessage('paymentPointPicker.placeholder')}\n />\n )}\n />\n );\n}\n\nexport default PaymentPointPicker;\n","import React from 'react';\nimport { ConstantBasedPicker } from '@stssocialst-stp/fe-core';\n\nimport { BENEFIT_CONSUMPTION_STATUS_LIST } from '../constants';\n\nfunction BenefitConsumptionStatusPicker(props) {\n const {\n required, withNull, readOnly, onChange, value, nullLabel, withLabel,\n } = props;\n return (\n <ConstantBasedPicker\n module=\"payroll\"\n label=\"payroll.benefitConsumptionStatusPicker\"\n constants={BENEFIT_CONSUMPTION_STATUS_LIST}\n required={required}\n withNull={withNull}\n readOnly={readOnly}\n onChange={onChange}\n value={value}\n nullLabel={nullLabel}\n withLabel={withLabel}\n />\n );\n}\n\nexport default BenefitConsumptionStatusPicker;\n","import React from 'react';\nimport _debounce from 'lodash/debounce';\n\nimport { Grid } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n PublishedComponent,\n useModulesManager,\n useTranslations,\n TextInput,\n NumberInput,\n} from '@stssocialst-stp/fe-core';\nimport { CONTAINS_LOOKUP, DEFAULT_DEBOUNCE_TIME, EMPTY_STRING } from '../../constants';\nimport BenefitConsumptionStatusPicker from '../../pickers/BenefitConsumptionStatusPicker';\n\nconst useStyles = makeStyles((theme) => ({\n form: {\n padding: 0,\n },\n item: {\n padding: theme.spacing(1),\n },\n}));\n\nfunction BenefitConsumptionPayrollFilter({ filters, onChangeFilters, benefitPlan }) {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const { formatMessage } = useTranslations('payroll', modulesManager);\n\n const debouncedOnChangeFilters = _debounce(onChangeFilters, DEFAULT_DEBOUNCE_TIME);\n\n const filterTextFieldValue = (filterName) => filters?.[filterName]?.value ?? EMPTY_STRING;\n\n const filterValue = (filterName) => filters?.[filterName]?.value ?? null;\n\n const onChangeStringFilter = (filterName, lookup = null) => (value) => {\n if (lookup) {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}_${lookup}: \"${value}\"`,\n },\n ]);\n } else {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}: \"${value}\"`,\n },\n ]);\n }\n };\n\n return (\n <Grid container className={classes.form}>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.payroll.name\"\n value={filterTextFieldValue('payroll_Name')}\n onChange={onChangeStringFilter('payroll_Name', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.payroll.benefitPlan\"\n value={filterTextFieldValue('benefitPlanName')}\n onChange={onChangeStringFilter('benefitPlanName')}\n readOnly={benefitPlan !== null && benefitPlan !== undefined}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.payroll.startDate')}\n value={filterValue('payroll_PaymentCycle_StartDate')}\n onChange={(v) => onChangeFilters([\n {\n id: 'payroll_PaymentCycle_StartDate',\n value: v,\n filter: `payroll_PaymentCycle_StartDate: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.payroll.endDate')}\n value={filterValue('payroll_PaymentCycle_EndDate')}\n onChange={(v) => onChangeFilters([\n {\n id: 'payroll_PaymentCycle_EndDate',\n value: v,\n filter: `payroll_PaymentCycle_EndDate: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <BenefitConsumptionStatusPicker\n module=\"payroll\"\n label={formatMessage('benefitConsumptions.status.label')}\n withNull\n nullLabel={formatMessage('tooltip.any')}\n value={filterValue('benefit_Status')}\n onChange={(value) => onChangeFilters([\n {\n id: 'benefit_Status',\n value,\n filter: `benefit_Status: ${value}`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.code\"\n value={filterTextFieldValue('benefit_Code')}\n onChange={onChangeStringFilter('benefit_Code', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.receipt\"\n value={filterTextFieldValue('benefit_Receipt')}\n onChange={onChangeStringFilter('benefit_Receipt', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.dateDue')}\n value={filterValue('benefit_DateDue')}\n onChange={(v) => onChangeFilters([\n {\n id: 'benefit_DateDue',\n value: v,\n filter: `benefit_DateDue: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <NumberInput\n module=\"payroll\"\n label={formatMessage('benefitConsumption.amount')}\n min={0}\n value={filterValue('benefit_Amount')}\n onChange={onChangeStringFilter('benefit_Amount')}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.type\"\n value={filterTextFieldValue('benefit_Type')}\n onChange={onChangeStringFilter('benefit_Type', CONTAINS_LOOKUP)}\n />\n </Grid>\n </Grid>\n );\n}\n\nexport default BenefitConsumptionPayrollFilter;\n","/* eslint-disable no-param-reassign */\nimport React, { useEffect, useState } from 'react';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\n\nimport {\n Searcher, useModulesManager, useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n Paper,\n Grid,\n} from '@material-ui/core';\nimport Typography from '@material-ui/core/Typography';\nimport { fetchPayrollBenefitConsumptions, fetchBenefitsSummary } from '../../actions';\nimport { DEFAULT_PAGE_SIZE, ROWS_PER_PAGE_OPTIONS } from '../../constants';\nimport BenefitConsumptionPayrollFilter from './BenefitConsumptionPayrollFilter';\n\nfunction BenefitConsumptionPayrollSearcher({\n fetchPayrollBenefitConsumptions,\n fetchingPayrollBenefitConsumptions,\n fetchedPayrollBenefitConsumptions,\n errorPayrollBenefitConsumptions,\n payrollBenefitConsumptions,\n payrollBenefitConsumptionsPageInfo,\n payrollBenefitConsumptionsTotalCount,\n fetchBenefitsSummary,\n fetchedBenefitsSummary,\n benefitsSummary,\n individualUuid,\n benefitPlan,\n groupBeneficiaries,\n paymentCycleUuid,\n}) {\n const modulesManager = useModulesManager();\n const { formatMessage, formatMessageWithValues } = useTranslations('payroll', modulesManager);\n const [totalNumberOfBenefits, setTotalNumberOfBenefits] = useState(0);\n\n const fetch = (params) => fetchPayrollBenefitConsumptions(modulesManager, params);\n\n const headers = () => [\n 'benefitConsumption.payroll.name',\n 'benefitConsumption.payroll.benefitPlan',\n 'benefitConsumption.payroll.startDate',\n 'benefitConsumption.payroll.endDate',\n 'benefitConsumption.status',\n 'benefitConsumption.code',\n 'benefitConsumption.receipt',\n 'benefitConsumption.dateDue',\n 'benefitConsumption.amount',\n 'benefitConsumption.type',\n 'benefitConsumption.payedOnTime',\n 'benefitConsumption.paymentDate',\n ];\n\n const checkBenefitDueDate = (payrollBenefitConsumption) => {\n if (!payrollBenefitConsumption.benefit.receipt) {\n return ''; // return empty string if datePayed is null\n }\n\n return (\n payrollBenefitConsumption.benefit\n && payrollBenefitConsumption.benefit.dateDue\n >= payrollBenefitConsumption.benefit.benefitAttachment[0].bill.datePayed)\n ? 'True' : 'False';\n };\n\n const itemFormatters = () => [\n (payrollBenefitConsumption) => payrollBenefitConsumption?.payroll?.name,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.payroll?.benefitPlanNameCode,\n // eslint-disable-next-line max-len\n (payrollBenefitConsumption) => payrollBenefitConsumption?.payroll?.paymentCycle?.startDate,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.payroll?.paymentCycle?.endDate,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.status,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.code,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.receipt,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.dateDue,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.amount,\n (payrollBenefitConsumption) => payrollBenefitConsumption?.benefit?.type,\n (payrollBenefitConsumption) => checkBenefitDueDate(payrollBenefitConsumption),\n (payrollBenefitConsumption) => (\n !payrollBenefitConsumption.benefit.receipt\n ? ''\n : payrollBenefitConsumption?.benefit?.benefitAttachment[0]?.bill?.datePayed\n ),\n ];\n\n const rowIdentifier = (benefitConsumption) => benefitConsumption.id;\n\n const sorts = () => [\n ['payroll_Name', true],\n ['payroll_benefitPlanName', false],\n ['payroll_PaymentCycle_StartDate', true],\n ['payroll_PaymentCycle_EndDate', true],\n ['benefit_Status', true],\n ['benefit_Code', true],\n ['benefit_Receipt', true],\n ['benefit_DateDue', true],\n ['benefit_Amount', true],\n ['benefit_Type', true],\n ];\n\n const defaultFilters = () => {\n const filters = {\n isDeleted: {\n value: false,\n filter:\n 'isDeleted: false',\n },\n };\n if (groupBeneficiaries !== null && groupBeneficiaries !== undefined) {\n filters.benefit_Individual_Id = {\n value: groupBeneficiaries?.group?.head?.uuid,\n filter: `benefit_Individual_Id: \"${groupBeneficiaries?.group?.head?.uuid}\"`,\n };\n } else if (individualUuid !== null && individualUuid !== undefined) {\n filters.benefit_Individual_Id = {\n value: individualUuid,\n filter: `benefit_Individual_Id: \"${individualUuid}\"`,\n };\n }\n if (benefitPlan?.id) {\n filters.benefitPlanUuid = {\n value: benefitPlan.id,\n filter: `benefitPlanUuid: \"${benefitPlan.id}\"`,\n };\n }\n if (paymentCycleUuid) {\n filters.paymentCycleUuid = {\n value: paymentCycleUuid,\n filter: `paymentCycleUuid: \"${paymentCycleUuid}\"`,\n };\n }\n return filters;\n };\n\n useEffect(() => {\n const params = [];\n if (individualUuid) {\n params.push(\n `individualId: \"${individualUuid}\"`,\n );\n }\n if (groupBeneficiaries) {\n params.push(\n `individualId: \"${groupBeneficiaries?.group?.head?.uuid}\"`,\n );\n }\n if (benefitPlan?.id) {\n params.push(\n `benefitPlanUuid: \"${benefitPlan.id}\"`,\n );\n }\n if (paymentCycleUuid) {\n params.push(\n `paymentCycleUuid: \"${paymentCycleUuid}\"`,\n );\n }\n fetchBenefitsSummary(params);\n }, []);\n\n useEffect(() => {\n if (payrollBenefitConsumptionsTotalCount > totalNumberOfBenefits) {\n setTotalNumberOfBenefits(payrollBenefitConsumptionsTotalCount);\n }\n }, [payrollBenefitConsumptionsTotalCount]);\n\n const benefitConsumptionPayrollFilter = ({ filters, onChangeFilters }) => (\n <BenefitConsumptionPayrollFilter\n filters={filters}\n onChangeFilters={onChangeFilters}\n benefitPlan={benefitPlan}\n />\n );\n\n return (\n <div>\n {fetchedBenefitsSummary && (\n <Grid container spacing={2}>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalNumberOfBenefits')}\n </Typography>\n <Typography variant=\"body1\">\n {totalNumberOfBenefits}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalAmountDue')}\n </Typography>\n <Typography variant=\"body1\">\n {benefitsSummary?.totalAmountDue ?? 0}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalAmountReceived')}\n </Typography>\n <Typography variant=\"body1\">\n {benefitsSummary?.totalAmountReceived ?? 0}\n </Typography>\n </Paper>\n </Grid>\n </Grid>\n )}\n <Searcher\n module=\"payroll\"\n FilterPane={benefitConsumptionPayrollFilter}\n fetch={fetch}\n items={payrollBenefitConsumptions}\n itemsPageInfo={payrollBenefitConsumptionsPageInfo}\n fetchingItems={fetchingPayrollBenefitConsumptions}\n fetchedItems={fetchedPayrollBenefitConsumptions}\n errorItems={errorPayrollBenefitConsumptions}\n tableTitle={\n // eslint-disable-next-line max-len\n formatMessageWithValues('payrollBenefitConsumption.searcherResultsTitle', { payrollBenefitConsumptionsTotalCount })\n }\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n defaultFilters={defaultFilters()}\n />\n </div>\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPayrollBenefitConsumptions: state.payroll.fetchingPayrollBenefitConsumptions,\n fetchedPayrollBenefitConsumptions: state.payroll.fetchedPayrollBenefitConsumptions,\n errorPayrollBenefitConsumptions: state.payroll.errorPayrollBenefitConsumptions,\n payrollBenefitConsumptions: state.payroll.payrollBenefitConsumptions,\n payrollBenefitConsumptionsPageInfo: state.payroll.payrollBenefitConsumptionsPageInfo,\n payrollBenefitConsumptionsTotalCount: state.payroll.payrollBenefitConsumptionsTotalCount,\n fetchingBenefitsSummary: state.payroll.fetchingBenefitsSummary,\n errorBenefitsSummary: state.payroll.errorBenefitsSummary,\n fetchedBenefitsSummary: state.payroll.fetchedBenefitsSummary,\n benefitsSummary: state.payroll.benefitsSummary,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators(\n { fetchPayrollBenefitConsumptions, fetchBenefitsSummary },\n dispatch,\n);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(BenefitConsumptionPayrollSearcher);\n","import React from 'react';\nimport PayrollPage from '../../pages/payroll/PayrollPage';\nimport { EMPTY_STRING } from '../../constants';\n\nconst PayrollTaskTableHeaders = () => [\n EMPTY_STRING,\n];\n\nconst PayrollTaskItemFormatters = () => [\n (payroll) => <PayrollPage taskPayrollUuid={payroll?.id} />,\n];\n\nexport { PayrollTaskTableHeaders, PayrollTaskItemFormatters };\n","const PayrollReconciliationTaskTableHeaders = () => [\n];\n\nconst PayrollReconciliationTaskItemFormatters = () => [\n];\n\nexport { PayrollReconciliationTaskTableHeaders, PayrollReconciliationTaskItemFormatters };\n","import React from 'react';\nimport _debounce from 'lodash/debounce';\n\nimport { Grid } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n PublishedComponent,\n useModulesManager,\n useTranslations,\n TextInput,\n NumberInput,\n} from '@stssocialst-stp/fe-core';\nimport { CONTAINS_LOOKUP, DEFAULT_DEBOUNCE_TIME, EMPTY_STRING } from '../../constants';\nimport BenefitConsumptionStatusPicker from '../../pickers/BenefitConsumptionStatusPicker';\n\nconst useStyles = makeStyles((theme) => ({\n form: {\n padding: 0,\n },\n item: {\n padding: theme.spacing(1),\n },\n}));\n\nfunction BenefitConsumptionFilter({ filters, onChangeFilters }) {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const { formatMessage } = useTranslations('payroll', modulesManager);\n\n const debouncedOnChangeFilters = _debounce(onChangeFilters, DEFAULT_DEBOUNCE_TIME);\n\n const filterTextFieldValue = (filterName) => filters?.[filterName]?.value ?? EMPTY_STRING;\n\n const filterValue = (filterName) => filters?.[filterName]?.value ?? null;\n\n const onChangeFilter = (filterName) => (value) => {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value: value || null,\n filter: `${filterName}: ${value}`,\n },\n ]);\n };\n\n const onChangeStringFilter = (filterName, lookup = null) => (value) => {\n if (lookup) {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}_${lookup}: \"${value}\"`,\n },\n ]);\n } else {\n debouncedOnChangeFilters([\n {\n id: filterName,\n value,\n filter: `${filterName}: \"${value}\"`,\n },\n ]);\n }\n };\n\n return (\n <Grid container className={classes.form}>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.individual.firstName\"\n value={filterTextFieldValue('individual_FirstName')}\n onChange={onChangeStringFilter('individual_FirstName', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.individual.lastName\"\n value={filterTextFieldValue('individual_LastName')}\n onChange={onChangeStringFilter('individual_LastName', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.photo\"\n value={filterTextFieldValue('photo')}\n onChange={onChangeStringFilter('photo', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.code\"\n value={filterTextFieldValue('code')}\n onChange={onChangeStringFilter('code', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <PublishedComponent\n pubRef=\"core.DatePicker\"\n module=\"payroll\"\n label={formatMessage('benefitConsumption.dateDue')}\n value={filterValue('dateDue')}\n onChange={(v) => onChangeFilters([\n {\n id: 'dateDue',\n value: v,\n filter: `dateDue: \"${v}\"`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.receipt\"\n value={filterTextFieldValue('receipt')}\n onChange={onChangeStringFilter('receipt', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <TextInput\n module=\"payroll\"\n label=\"benefitConsumption.type\"\n value={filterTextFieldValue('type')}\n onChange={onChangeStringFilter('type', CONTAINS_LOOKUP)}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <BenefitConsumptionStatusPicker\n module=\"payroll\"\n label={formatMessage('benefitConsumptions.status.label')}\n withNull\n nullLabel={formatMessage('tooltip.any')}\n value={filterValue('status')}\n onChange={(value) => onChangeFilters([\n {\n id: 'status',\n value,\n filter: `status: ${value}`,\n },\n ])}\n />\n </Grid>\n <Grid item xs={2} className={classes.item}>\n <NumberInput\n module=\"payroll\"\n label={formatMessage('benefitConsumption.amount')}\n min={0}\n value={filterValue('amount')}\n onChange={onChangeFilter('amount')}\n />\n </Grid>\n </Grid>\n );\n}\n\nexport default BenefitConsumptionFilter;\n","/* eslint-disable max-len */\n/* eslint-disable react/no-array-index-key */\n/* eslint-disable no-nested-ternary */\n/* eslint-disable no-undef */\nimport React, {\n forwardRef,\n} from 'react';\n\nimport { Divider } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n useTranslations, useModulesManager,\n} from '@stssocialst-stp/fe-core';\nimport { MODULE_NAME } from '../constants';\n\nconst useStyles = makeStyles(() => ({\n topHeader: {\n display: 'flex',\n justifyContent: 'start',\n alignItems: 'center',\n width: '100%',\n\n '& img': {\n minWidth: '250px',\n maxWidth: '300px',\n width: 'auto',\n height: 'auto',\n },\n },\n printContainer: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n padding: '20px',\n fontWeight: '500',\n },\n date: {\n fontSize: '16px',\n },\n detailsContainer: {\n display: 'flex',\n flexDirection: 'column',\n padding: '12px',\n width: '100%',\n },\n detailRow: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n padding: '4px',\n },\n detailName: {\n fontWeight: '600',\n fontSize: '16px',\n textTransform: 'uppercase',\n },\n detailValue: {\n fontWeight: '500',\n backgroundColor: '#f5f5f5',\n padding: '6px',\n borderRadius: '8px',\n fontSize: '15px',\n },\n containerPadding: {\n padding: '32px',\n },\n dividerMargin: {\n margin: '12px 0',\n },\n sectionTitle: {\n fontWeight: '700',\n fontSize: '18px',\n textTransform: 'uppercase',\n marginBottom: '12px',\n },\n}));\n\nconst PayrollPrintTemplate = forwardRef(({ benefitConsumptions }, ref) => {\n if (!benefitConsumptions) return null;\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(modulesManager, MODULE_NAME);\n\n return (\n <div ref={ref} className={classes.printContainer}>\n {benefitConsumptions.map((benefitConsumption, index) => (\n <div key={index} className={classes.detailsContainer}>\n <div className={classes.sectionTitle}>\n {`Payment: ${benefitConsumption.code} - ${benefitConsumption.individual.firstName}, ${benefitConsumption.individual.lastName}`}\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.individual.firstName')}</div>\n <div className={classes.detailValue}>{benefitConsumption.individual.firstName}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.individual.lastName')}</div>\n <div className={classes.detailValue}>{benefitConsumption.individual.lastName}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.code')}</div>\n <div className={classes.detailValue}>{benefitConsumption.code}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.dateDue')}</div>\n <div className={classes.detailValue}>{benefitConsumption.dateDue}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.receipt')}</div>\n <div className={classes.detailValue}>{benefitConsumption.receipt}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.amount')}</div>\n <div className={classes.detailValue}>{benefitConsumption.amount}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.type')}</div>\n <div className={classes.detailValue}>{benefitConsumption.type}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.status')}</div>\n <div className={classes.detailValue}>{benefitConsumption.status}</div>\n </div>\n <div className={classes.detailRow}>\n <div className={classes.detailName}>{formatMessage('payroll.benefitConsumption.paymentDate')}</div>\n <div className={classes.detailValue}>\n {!benefitConsumption.receipt\n ? ''\n : benefitConsumption?.benefitAttachment[0]?.bill?.datePayed}\n </div>\n </div>\n <Divider className={classes.dividerMargin} />\n </div>\n ))}\n </div>\n );\n});\n\nexport default PayrollPrintTemplate;\n","/* eslint-disable max-len */\n/* eslint-disable no-return-assign */\n/* eslint-disable no-param-reassign */\nimport React, { useRef } from 'react';\nimport { useReactToPrint } from 'react-to-print';\nimport PrintIcon from '@material-ui/icons/Print';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\nimport {\n Typography, Button,\n} from '@material-ui/core';\n\nimport {\n Searcher, useModulesManager, useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport Chip from '@material-ui/core/Chip';\nimport PhotoCameraOutlinedIcon from '@material-ui/icons/PhotoCameraOutlined';\nimport { fetchBenefitConsumptions } from '../../actions';\nimport { BENEFIT_CONSUMPTION_STATUS, DEFAULT_PAGE_SIZE, ROWS_PER_PAGE_OPTIONS, PAYMENT_METHOD } from '../../constants';\nimport BenefitConsumptionFilter from './BenefitConsumptionFilter';\nimport AdditionalFieldsDialog from './dialogs/AdditionalFieldsDialog';\nimport PayrollPrintTemplate from '../PayrollPrintTemplate';\n\nfunction BenefitConsumptionSearcher({\n fetchBenefitConsumptions,\n fetchingBenefitConsumptions,\n fetchedBenefitConsumptions,\n errorBenefitConsumptions,\n benefitConsumptions,\n benefitConsumptionsPageInfo,\n benefitConsumptionsTotalCount,\n isPayrollFromFailedInvoices,\n payrollUuid,\n}) {\n const modulesManager = useModulesManager();\n const { formatMessageWithValues } = useTranslations('payroll', modulesManager);\n const payrollPrintTemplateRef = useRef(null);\n\n const handlePrint = useReactToPrint({\n documentTitle: `${payrollUuid}`,\n });\n\n const fetch = (params) => fetchBenefitConsumptions(modulesManager, params);\n\n const headers = () => {\n const cols = [\n 'benefitConsumption.individual.firstName',\n 'benefitConsumption.individual.lastName',\n 'benefitConsumption.nib',\n 'benefitConsumption.photo',\n 'benefitConsumption.code',\n 'benefitConsumption.dateDue',\n 'benefitConsumption.receipt',\n 'benefitConsumption.amount',\n 'benefitConsumption.type',\n 'benefitConsumption.status',\n 'benefitConsumption.payedOnTime',\n 'benefitConsumption.paymentDate',\n '',\n ];\n return cols;\n };\n\n const checkBenefitDueDate = (benefitConsumption) => {\n if (!benefitConsumption.receipt) {\n return ''; // return empty string if datePayed is null\n }\n\n return (\n benefitConsumption\n && benefitConsumption.dateDue\n >= benefitConsumption.benefitAttachment[0].bill.datePayed)\n ? 'True' : 'False';\n };\n\n const getBistpStatusBadge = (benefitConsumption) => {\n if (!benefitConsumption) return null;\n const jsonExt = benefitConsumption.jsonExt || {};\n const { status } = benefitConsumption;\n\n if (status === BENEFIT_CONSUMPTION_STATUS.RECONCILED) {\n return <Chip label={formatMessage('payroll.bistp.status.reconciled')} style={{ backgroundColor: '#4caf50', color: 'white' }} size=\"small\" />;\n }\n if (status === BENEFIT_CONSUMPTION_STATUS.REJECTED) {\n return <Chip label={`${formatMessage('payroll.bistp.status.rejected')}${jsonExt.bistp_rejection_reason ? `: ${jsonExt.bistp_rejection_reason}` : ''}`} style={{ backgroundColor: '#f44336', color: 'white' }} size=\"small\" />;\n }\n if (status === BENEFIT_CONSUMPTION_STATUS.APPROVE_FOR_PAYMENT) {\n return <Chip label={formatMessage('payroll.bistp.status.pending')} style={{ backgroundColor: '#ff9800', color: 'white' }} size=\"small\" />;\n }\n if (jsonExt.bistp_skip_reason === 'nib_ausente') {\n return <Chip label={formatMessage('payroll.bistp.status.skippedNib')} style={{ backgroundColor: '#9e9e9e', color: 'white' }} size=\"small\" />;\n }\n if (jsonExt.bistp_skip_reason === 'envio_falhou') {\n return <Chip label={formatMessage('payroll.bistp.status.sendFailed')} style={{ backgroundColor: '#f44336', color: 'white' }} size=\"small\" />;\n }\n return null;\n };\n\n const itemFormatters = () => [\n (benefitConsumption) => benefitConsumption?.individual?.firstName,\n (benefitConsumption) => benefitConsumption?.individual?.lastName,\n (benefitConsumption) => benefitConsumption?.individual?.nib || '',\n (benefitConsumption) => (\n benefitConsumption.receipt ? (\n <PhotoCameraOutlinedIcon style={{ fontSize: 150 }} />\n ) : null\n ),\n (benefitConsumption) => benefitConsumption?.code,\n (benefitConsumption) => benefitConsumption?.dateDue,\n (benefitConsumption) => benefitConsumption?.receipt,\n (benefitConsumption) => benefitConsumption?.amount,\n (benefitConsumption) => benefitConsumption?.type,\n (benefitConsumption) => (isPayrollFromFailedInvoices\n ? BENEFIT_CONSUMPTION_STATUS.APPROVE_FOR_PAYMENT : benefitConsumption?.status),\n (benefitConsumption) => checkBenefitDueDate(benefitConsumption),\n // paymentDate enviada ao BISTP; fallback para bill.datePayed (offline); \"—\" se ainda não enviado\n (benefitConsumption) => (\n benefitConsumption?.paymentDate\n ?? (!benefitConsumption.receipt\n ? '—'\n : benefitConsumption?.benefitAttachment?.[0]?.bill?.datePayed ?? '—')\n ),\n (benefitConsumption) => {\n const jsonExt = benefitConsumption?.jsonExt || {};\n const hasBistpFields = jsonExt.bistp_skip_reason || jsonExt.bistp_processed || jsonExt.bistp_rejection_reason;\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 4 }}>\n {hasBistpFields && getBistpStatusBadge(benefitConsumption)}\n <AdditionalFieldsDialog\n jsonExt={benefitConsumption?.jsonExt}\n buttonLabel=\"payroll.additonalFields.showAdditionalFields\"\n title=\"payroll.additonalFields.label\"\n />\n </div>\n );\n },\n ];\n\n const rowIdentifier = (benefitConsumption) => benefitConsumption.id;\n\n const sorts = () => [\n ['individual_FirstName', true],\n ['individual_LastName', true],\n ['individual_Nib', true],\n ['photo', true],\n ['code', true],\n ['dateDue', true],\n ['receipt', true],\n ['amount', true],\n ['type', true],\n ['status', true],\n ['paymentDate', true],\n ];\n\n const defaultFilters = () => {\n const filters = {\n isDeleted: {\n value: false,\n filter:\n 'isDeleted: false',\n },\n payrollUuid: {\n value: payrollUuid,\n filter:\n `payrollUuid: \"${payrollUuid}\"`,\n },\n };\n if (isPayrollFromFailedInvoices) {\n filters.status = {\n value: true,\n filter:\n `filterOnlyUnpaid: ${true}`,\n };\n }\n return filters;\n };\n\n const benefitConsumptionFilter = ({ filters, onChangeFilters }) => (\n <BenefitConsumptionFilter filters={filters} onChangeFilters={onChangeFilters} />\n );\n\n return (\n <>\n <div>\n <Button\n size=\"small\"\n variant=\"contained\"\n color=\"primary\"\n startIcon={<PrintIcon />}\n onClick={(e) => {\n e.preventDefault();\n handlePrint(null, () => payrollPrintTemplateRef.current);\n }}\n >\n <Typography variant=\"subtitle1\">Print</Typography>\n </Button>\n </div>\n <div>\n <Searcher\n module=\"payroll\"\n FilterPane={!isPayrollFromFailedInvoices && benefitConsumptionFilter}\n fetch={fetch}\n items={benefitConsumptions}\n itemsPageInfo={benefitConsumptionsPageInfo}\n fetchingItems={fetchingBenefitConsumptions}\n fetchedItems={fetchedBenefitConsumptions}\n errorItems={errorBenefitConsumptions}\n tableTitle={formatMessageWithValues('benefitConsumption.searcherResultsTitle', { benefitConsumptionsTotalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n defaultFilters={defaultFilters()}\n />\n <div style={{ display: 'none' }}>\n <PayrollPrintTemplate\n ref={payrollPrintTemplateRef}\n benefitConsumptions={benefitConsumptions}\n />\n </div>\n </div>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingBenefitConsumptions: state.payroll.fetchingBenefitConsumptions,\n fetchedBenefitConsumptions: state.payroll.fetchedBenefitConsumptions,\n errorBenefitConsumptions: state.payroll.errorBenefitConsumptions,\n benefitConsumptions: state.payroll.benefitConsumptions,\n benefitConsumptionsPageInfo: state.payroll.benefitConsumptionsPageInfo,\n benefitConsumptionsTotalCount: state.payroll.benefitConsumptionsTotalCount,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators(\n { fetchBenefitConsumptions },\n dispatch,\n);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(BenefitConsumptionSearcher);\n","import React from 'react';\nimport { Tab } from '@material-ui/core';\nimport { PublishedComponent, useTranslations } from '@stssocialst-stp/fe-core';\nimport {\n BENEFIT_CONSUMPTION_LIST_TAB_VALUE,\n MODULE_NAME,\n RIGHT_PAYROLL_SEARCH,\n} from '../../constants';\nimport BenefitConsumptionSearcher from './BenefitConsumptionSearcher';\n\nfunction BenefitConsumptionsTabLabel({\n onChange, tabStyle, isSelected, modulesManager,\n}) {\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n return (\n <Tab\n onChange={onChange}\n className={tabStyle(BENEFIT_CONSUMPTION_LIST_TAB_VALUE)}\n selected={isSelected(BENEFIT_CONSUMPTION_LIST_TAB_VALUE)}\n value={BENEFIT_CONSUMPTION_LIST_TAB_VALUE}\n label={formatMessage('PayrollBenefitConsumptionTab.label')}\n />\n );\n}\n\nfunction BenefitConsumptionsTabPanel({\n value, rights, payrollUuid, isPayrollFromFailedInvoices, refreshBenefitsKey,\n}) {\n return (\n <PublishedComponent\n pubRef=\"policyHolder.TabPanel\"\n module=\"payroll\"\n index={BENEFIT_CONSUMPTION_LIST_TAB_VALUE}\n value={value}\n >\n {\n rights.includes(RIGHT_PAYROLL_SEARCH) && payrollUuid && (\n <BenefitConsumptionSearcher\n key={refreshBenefitsKey}\n rights={rights}\n payrollUuid={payrollUuid}\n isPayrollFromFailedInvoices={isPayrollFromFailedInvoices}\n />\n )\n }\n </PublishedComponent>\n );\n}\n\nexport { BenefitConsumptionsTabLabel, BenefitConsumptionsTabPanel };\n","const PayrollRejectedTaskTableHeaders = () => [\n];\n\nconst PayrollRejectedTaskItemFormatters = () => [\n];\n\nexport { PayrollRejectedTaskTableHeaders, PayrollRejectedTaskItemFormatters };\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport { Tab } from '@material-ui/core';\nimport { PublishedComponent, useTranslations } from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME, PAYROLL_TASK_TAB_VALUE,\n} from '../../constants';\n\nfunction PayrollTaskTabLabel({\n onChange, tabStyle, isSelected, modulesManager, payrollUuid, isInTask, isPayrollFromFailedInvoices,\n}) {\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n if (!payrollUuid || isInTask || isPayrollFromFailedInvoices) {\n return null;\n }\n return (\n <Tab\n onChange={onChange}\n className={tabStyle(PAYROLL_TASK_TAB_VALUE)}\n selected={isSelected(PAYROLL_TASK_TAB_VALUE)}\n value={PAYROLL_TASK_TAB_VALUE}\n label={formatMessage('PayrollTaskTab.label')}\n />\n );\n}\n\nfunction PayrollTaskTabPanel({ value, payrollUuid, isInTask }) {\n const rights = useSelector((store) => store?.core?.user?.i_user?.rights ?? []);\n if (isInTask) return null;\n\n return (\n <PublishedComponent\n pubRef=\"policyHolder.TabPanel\"\n module=\"payroll\"\n index={PAYROLL_TASK_TAB_VALUE}\n value={value}\n >\n {\n payrollUuid && (\n <PublishedComponent\n pubRef=\"tasksManagement.taskSearcher\"\n module=\"payroll\"\n entityId={payrollUuid}\n rights={rights}\n showFilters={false}\n />\n )\n }\n </PublishedComponent>\n );\n}\n\nexport { PayrollTaskTabLabel, PayrollTaskTabPanel };\n","const PayrollDeleteTaskTableHeaders = () => [\n];\n\nconst PayrollDeleteTaskItemFormatters = () => [\n];\n\nexport { PayrollDeleteTaskTableHeaders, PayrollDeleteTaskItemFormatters };\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport { Tab } from '@material-ui/core';\nimport { PublishedComponent, useTranslations } from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME, PAYROLL_PAYMENT_FILES_TAB_VALUE,\n} from '../../constants';\nimport PayrollPaymentFilesSearcher from './PayrollPaymentFilesSearcher';\n\nfunction PayrollPaymentFilesTabLabel({\n onChange, tabStyle, isSelected, modulesManager, payrollUuid, isInTask, isPayrollFromFailedInvoices,\n}) {\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n if (!payrollUuid || isInTask || isPayrollFromFailedInvoices) {\n return null;\n }\n return (\n <Tab\n onChange={onChange}\n className={tabStyle(PAYROLL_PAYMENT_FILES_TAB_VALUE)}\n selected={isSelected(PAYROLL_PAYMENT_FILES_TAB_VALUE)}\n value={PAYROLL_PAYMENT_FILES_TAB_VALUE}\n label={formatMessage('PayrollPaymentFilesTab.label')}\n />\n );\n}\n\nfunction PayrollPaymentFilesTabPanel({ value, payrollUuid, isInTask }) {\n const rights = useSelector((store) => store?.core?.user?.i_user?.rights ?? []);\n if (isInTask) return null;\n\n return (\n <PublishedComponent\n pubRef=\"policyHolder.TabPanel\"\n module=\"payroll\"\n index={PAYROLL_PAYMENT_FILES_TAB_VALUE}\n value={value}\n >\n {\n payrollUuid && (\n <PayrollPaymentFilesSearcher\n module=\"payroll\"\n payrollUuid={payrollUuid}\n rights={rights}\n showFilters={false}\n />\n )\n }\n </PublishedComponent>\n );\n}\n\nexport { PayrollPaymentFilesTabLabel, PayrollPaymentFilesTabPanel };\n","import React, { useEffect } from 'react';\nimport {\n Grid, LinearProgress, Paper, Tab, Typography,\n} from '@material-ui/core';\nimport { bindActionCreators } from 'redux';\nimport { connect } from 'react-redux';\nimport { PublishedComponent, useModulesManager, useTranslations } from '@stssocialst-stp/fe-core';\nimport { makeStyles } from '@material-ui/styles';\nimport {\n BISTP_PAYMENT_STATUS_TAB_VALUE,\n MODULE_NAME,\n PAYMENT_METHOD,\n} from '../../constants';\nimport { fetchBistpSummary } from '../../actions';\n\nconst useStyles = makeStyles((theme) => ({\n paper: theme.paper.paper,\n content: {\n padding: theme.spacing(2),\n },\n metric: {\n padding: theme.spacing(1.5),\n border: '1px solid rgba(0, 0, 0, 0.12)',\n },\n metricValue: {\n fontSize: '1.5rem',\n fontWeight: 600,\n },\n progress: {\n marginTop: theme.spacing(2),\n },\n}));\n\nfunction BistpPaymentStatusTabLabel({\n onChange, tabStyle, isSelected, modulesManager, payrollUuid, payroll, isInTask, isPayrollFromFailedInvoices,\n}) {\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n if (\n !payrollUuid\n || payroll?.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT\n || isInTask\n || isPayrollFromFailedInvoices\n ) return null;\n\n return (\n <Tab\n onChange={onChange}\n className={tabStyle(BISTP_PAYMENT_STATUS_TAB_VALUE)}\n selected={isSelected(BISTP_PAYMENT_STATUS_TAB_VALUE)}\n value={BISTP_PAYMENT_STATUS_TAB_VALUE}\n label={formatMessage('payroll.bistp.viewSummary')}\n />\n );\n}\n\nfunction BistpMetric({ label, value, classes }) {\n return (\n <Grid item xs={12} sm={6} md={3}>\n <div className={classes.metric}>\n <Typography variant=\"body2\">{label}</Typography>\n <Typography className={classes.metricValue}>{value}</Typography>\n </div>\n </Grid>\n );\n}\n\nfunction BistpPaymentStatusPanel({\n value, payrollUuid, payroll, fetchBistpSummary, bistpSummary,\n}) {\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n useEffect(() => {\n if (payrollUuid) {\n fetchBistpSummary(payrollUuid);\n }\n }, [payrollUuid]);\n\n if (payroll?.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) return null;\n\n const total = bistpSummary?.total?.totalCount || 0;\n const confirmados = bistpSummary?.confirmados?.totalCount || 0;\n const pendentes = bistpSummary?.pendentes?.totalCount || 0;\n const rejeitados = bistpSummary?.rejeitados?.totalCount || 0;\n const enviados = bistpSummary?.enviados?.totalCount || 0;\n const progress = total > 0 ? Math.min((confirmados / total) * 100, 100) : 0;\n\n return (\n <PublishedComponent\n pubRef=\"policyHolder.TabPanel\"\n module=\"payroll\"\n index={BISTP_PAYMENT_STATUS_TAB_VALUE}\n value={value}\n >\n {payrollUuid && (\n <Paper className={classes.paper}>\n <div className={classes.content}>\n <Grid container spacing={2}>\n <BistpMetric\n classes={classes}\n label={formatMessage('payroll.summary.totalNumberOfBenefits')}\n value={total}\n />\n <BistpMetric\n classes={classes}\n label={formatMessage('payroll.bistp.status.reconciled')}\n value={confirmados}\n />\n <BistpMetric\n classes={classes}\n label={formatMessage('payroll.bistp.status.pending')}\n value={pendentes}\n />\n <BistpMetric\n classes={classes}\n label={formatMessage('payroll.bistp.status.rejected')}\n value={rejeitados}\n />\n <BistpMetric\n classes={classes}\n label={formatMessage('payroll.bistp.status.enviados')}\n value={enviados}\n />\n </Grid>\n <div className={classes.progress}>\n <Typography variant=\"body2\">\n {formatMessage('payroll.bistp.progress')}: {confirmados}/{total}\n </Typography>\n <LinearProgress variant=\"determinate\" value={progress} />\n </div>\n </div>\n </Paper>\n )}\n </PublishedComponent>\n );\n}\n\nconst mapStateToProps = (state) => ({\n bistpSummary: state.payroll.bistpSummary,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators(\n { fetchBistpSummary },\n dispatch,\n);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(BistpPaymentStatusPanel);\nexport { BistpPaymentStatusTabLabel, BistpPaymentStatusPanel };\n","/* eslint-disable max-len */\nimport React, { useEffect, useState } from 'react';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport {\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n Paper,\n Grid,\n} from '@material-ui/core';\nimport Typography from '@material-ui/core/Typography';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport { MODULE_NAME, BENEFIT_CONSUMPTION_STATUS } from '../../../constants';\nimport BenefitConsumptionSearcherModal from '../BenefitConsumptionSearcherModal';\nimport downloadPayroll from '../../../utils/export';\nimport { fetchPayroll, closePayroll } from '../../../actions';\nimport { mutationLabel } from '../../../utils/string-utils';\n\nfunction PaymentPendingPayrollPaymentDialog({\n classes,\n payroll,\n fetchPayroll,\n closePayroll,\n payrollDetail,\n}) {\n const modulesManager = useModulesManager();\n const [payrollUuid] = useState(payrollDetail?.id ?? null);\n const [isOpen, setIsOpen] = useState(false);\n const [totalBeneficiaries, setTotalBeneficiaries] = useState(0);\n const [selectedBeneficiaries, setSelectedBeneficiaries] = useState(0);\n const [totalBillAmount, setTotalBillAmount] = useState(0);\n const [totalReconciledBillAmount, setTotalReconciledBillAmount] = useState(0);\n\n const handleOpen = () => {\n if (payrollUuid) {\n fetchPayroll(modulesManager, [`id: \"${payrollUuid}\"`]);\n }\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setIsOpen(false);\n };\n\n const { formatMessage, formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n\n useEffect(() => {\n if (isOpen && Object.keys(payroll).length > 0) {\n // Calculate total benefits and reconciled benefits\n const total = payroll.benefitConsumption?.length ?? 0;\n const selected = (payroll.benefitConsumption ?? []).filter(\n (benefit) => benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED,\n ).length;\n\n setTotalBeneficiaries(total);\n setSelectedBeneficiaries(selected);\n\n let totalAmount = 0;\n let reconciledAmount = 0;\n if (payroll?.benefitConsumption) {\n payroll.benefitConsumption.forEach((benefit) => {\n if (benefit.benefitAttachment && benefit.benefitAttachment.length > 0) {\n benefit.benefitAttachment.forEach((attachment) => {\n if (attachment.bill && attachment.bill.amountTotal) {\n totalAmount += parseFloat(attachment.bill.amountTotal);\n if (benefit.status === BENEFIT_CONSUMPTION_STATUS.RECONCILED) {\n reconciledAmount += parseFloat(attachment.bill.amountTotal);\n }\n }\n });\n }\n });\n }\n setTotalBillAmount(totalAmount);\n setTotalReconciledBillAmount(reconciledAmount);\n }\n }, [isOpen, payroll]);\n\n const closePayrollCallback = () => {\n closePayroll(\n payrollDetail,\n formatMessageWithValues('payroll.mutation.closeLabel', mutationLabel(payrollDetail)),\n );\n handleClose();\n };\n\n const downloadPayrollData = (payrollUuid, payrollName) => {\n downloadPayroll(payrollUuid, payrollName);\n };\n\n return (\n <>\n <Button\n onClick={handleOpen}\n variant=\"contained\"\n color=\"primary\"\n className={classes.button}\n >\n {formatMessage('payroll.viewReconciliationSummary')}\n </Button>\n <Dialog\n open={isOpen}\n onClose={handleClose}\n PaperProps={{\n style: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%,-50%)',\n width: '90%',\n maxWidth: '90%',\n },\n }}\n >\n <DialogTitle\n style={{\n marginTop: '10px',\n }}\n >\n {formatMessageWithValues('payroll.reconciliationSummary', { payrollName: payrollDetail.name })}\n </DialogTitle>\n <DialogContent>\n <Grid container spacing={2}>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.selectedBeneficiaries')}\n </Typography>\n <Typography variant=\"body1\">\n {formatMessageWithValues('payroll.summary.beneficiariesCount', { selectedBeneficiaries, totalBeneficiaries })}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.totalAmountForInvoice')}\n </Typography>\n <Typography variant=\"body1\">\n {totalBillAmount}\n </Typography>\n </Paper>\n </Grid>\n <Grid item xs={4}>\n <Paper elevation={3} style={{ padding: '20px' }}>\n <Typography variant=\"h6\" gutterBottom>\n {formatMessage('payroll.summary.deliveredReconciliation')}\n </Typography>\n <Typography variant=\"body1\">\n {totalReconciledBillAmount}\n </Typography>\n </Paper>\n </Grid>\n </Grid>\n <div\n style={{ backgroundColor: '#DFEDEF' }}\n >\n <BenefitConsumptionSearcherModal payrollUuid={payrollDetail.id} payrollDetail={payrollDetail} />\n </div>\n </DialogContent>\n <DialogActions\n style={{\n display: 'inline',\n paddingLeft: '10px',\n marginTop: '25px',\n marginBottom: '15px',\n width: '100%',\n }}\n >\n <div style={{ maxWidth: '3000px' }}>\n <div style={{ float: 'left' }}>\n <Button\n onClick={() => downloadPayrollData(payrollDetail.id, payrollDetail.name)}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.download')}\n </Button>\n <Button\n onClick={closePayrollCallback}\n variant=\"contained\"\n color=\"primary\"\n style={{\n margin: '0 16px',\n marginBottom: '15px',\n }}\n >\n {formatMessage('payroll.summary.approveAndClose')}\n </Button>\n </div>\n <div style={{\n float: 'right',\n paddingRight: '16px',\n }}\n >\n <Button\n onClick={handleClose}\n variant=\"outlined\"\n autoFocus\n style={{ margin: '0 16px' }}\n >\n {formatMessage('payroll.summary.close')}\n </Button>\n </div>\n </div>\n </DialogActions>\n </Dialog>\n </>\n );\n}\n\nconst mapStateToProps = (state) => ({\n rights: !!state.core && !!state.core.user && !!state.core.user.i_user ? state.core.user.i_user.rights : [],\n confirmed: state.core.confirmed,\n payroll: state.payroll.payroll,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayroll,\n closePayroll,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PaymentPendingPayrollPaymentDialog);\n","import React, { useRef, useEffect } from 'react';\nimport { connect, useSelector } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport {\n Searcher,\n useHistory,\n useModulesManager,\n useTranslations,\n coreConfirm,\n clearConfirm,\n journalize,\n} from '@stssocialst-stp/fe-core';\nimport LinearProgress from '@material-ui/core/LinearProgress';\nimport PayrollFilter from './PayrollFilter';\nimport {\n DEFAULT_PAGE_SIZE, MODULE_NAME, PAYROLL_PAYROLL_ROUTE, RIGHT_PAYROLL_SEARCH, ROWS_PER_PAGE_OPTIONS, PAYROLL_STATUS, PAYMENT_METHOD,\n} from '../../constants';\nimport { fetchPayrolls } from '../../actions';\nimport PayrollReconciliationFilesDialog from './dialogs/PayrollReconciliationFilesDialog';\nimport PayrollPendingPayrollSummary from './dialogs/PayrollPendingPayrollSummary';\n\nfunction PayrollSearcherPending({\n fetchingPayrolls,\n fetchedPayrolls,\n errorPayrolls,\n payrolls,\n pageInfo,\n totalCount,\n fetchPayrolls,\n submittingMutation,\n mutation,\n classes,\n}) {\n const history = useHistory();\n const modulesManager = useModulesManager();\n const { formatMessageWithValues } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n\n const prevSubmittingMutationRef = useRef();\n\n useEffect(() => {\n if (prevSubmittingMutationRef.current && !submittingMutation) {\n journalize(mutation);\n }\n }, [submittingMutation]);\n\n useEffect(() => {\n prevSubmittingMutationRef.current = submittingMutation;\n });\n\n const renderBistpProgress = (payroll) => {\n if (payroll.paymentMethod !== PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) return null;\n const summary = payroll.bistpSummary || {};\n const total = summary.total || 0;\n const reconciled = summary.reconciled || 0;\n const progress = total > 0 ? (reconciled / total) * 100 : 0;\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, minWidth: 120 }}>\n <LinearProgress\n variant=\"determinate\"\n value={progress}\n style={{ flex: 1, height: 8, borderRadius: 4 }}\n />\n <span style={{ fontSize: '0.75rem', whiteSpace: 'nowrap' }}>\n {reconciled}/{total}\n </span>\n </div>\n );\n };\n\n const headers = () => [\n 'payroll.name',\n 'payroll.paymentPlan',\n 'payroll.paymentPoint',\n 'payroll.status',\n 'payroll.paymentMethod',\n 'payroll.bistp.progress',\n 'emptyLabel',\n ];\n\n const sorts = () => [\n ['name', true],\n ['paymentPlan', true],\n ['paymentPoint', true],\n ['status', true],\n ['paymentMethod', true],\n ];\n\n const defaultFilters = () => ({\n isDeleted: {\n value: false,\n filter: 'isDeleted: false',\n },\n status: {\n value: PAYROLL_STATUS.PENDING_APPROVAL,\n filter: `status: ${PAYROLL_STATUS.PENDING_APPROVAL}`,\n },\n });\n\n const fetch = (params) => fetchPayrolls(modulesManager, params);\n\n const rowIdentifier = (payroll) => payroll.id;\n\n const openPayroll = (payroll) => rights.includes(RIGHT_PAYROLL_SEARCH) && history.push(\n `/${modulesManager.getRef(PAYROLL_PAYROLL_ROUTE)}/${payroll?.id}`,\n );\n\n const itemFormatters = () => [\n (payroll) => payroll.name,\n (payroll) => payroll.benefitPlanNameCode ?? '',\n (payroll) => (payroll.paymentPoint\n ? `${payroll.paymentPoint.name}` : ''),\n (payroll) => (payroll.status\n ? `${payroll.status}` : ''),\n (payroll) => (payroll.paymentMethod\n ? `${payroll.paymentMethod}` : ''),\n (payroll) => renderBistpProgress(payroll),\n (payroll) => (\n <PayrollReconciliationFilesDialog\n classes={classes}\n payroll={payroll}\n />\n ),\n (payroll) => (\n <PayrollPendingPayrollSummary\n classes={classes}\n payrollDetail={payroll}\n />\n ),\n ];\n\n const onDoubleClick = (payroll) => openPayroll(payroll);\n\n const payrollFilter = ({ filters, onChangeFilters }) => (\n <PayrollFilter filters={filters} onChangeFilters={onChangeFilters} statusReadOnly />\n );\n\n return (\n <Searcher\n module=\"payroll\"\n FilterPane={payrollFilter}\n fetch={fetch}\n items={payrolls}\n itemsPageInfo={pageInfo}\n fetchedItems={fetchedPayrolls}\n fetchingItems={fetchingPayrolls}\n errorItems={errorPayrolls}\n tableTitle={formatMessageWithValues('payrollSearcher.results', { totalCount })}\n headers={headers}\n itemFormatters={itemFormatters}\n sorts={sorts}\n rowsPerPageOptions={ROWS_PER_PAGE_OPTIONS}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n rowIdentifier={rowIdentifier}\n onDoubleClick={onDoubleClick}\n defaultFilters={defaultFilters()}\n />\n );\n}\n\nconst mapStateToProps = (state) => ({\n fetchingPayrolls: state.payroll.fetchingPayrolls,\n fetchedPayrolls: state.payroll.fetchedPayrolls,\n errorPayrolls: state.payroll.errorPayrolls,\n payrolls: state.payroll.payrolls,\n pageInfo: state.payroll.payrollsPageInfo,\n totalCount: state.payroll.payrollsTotalCount,\n confirmed: state.core.confirmed,\n submittingMutation: state.payroll.submittingMutation,\n mutation: state.payroll.mutation,\n});\n\nconst mapDispatchToProps = (dispatch) => bindActionCreators({\n fetchPayrolls,\n journalize,\n clearConfirm,\n coreConfirm,\n}, dispatch);\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PayrollSearcherPending);\n","import React from 'react';\nimport { useSelector } from 'react-redux';\n\nimport { makeStyles } from '@material-ui/styles';\n\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport {\n MODULE_NAME,\n RIGHT_PAYROLL_SEARCH,\n} from '../../constants';\nimport PayrollSearcherPending from '../../components/payroll/PayrollSearcherPending';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n fab: theme.fab,\n}));\n\nfunction PendingPayrollsPage() {\n const modulesManager = useModulesManager();\n const classes = useStyles();\n const rights = useSelector((store) => store.core.user.i_user.rights ?? []);\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.page.title')} />\n {rights.includes(RIGHT_PAYROLL_SEARCH)\n && <PayrollSearcherPending classes={classes} />}\n </div>\n );\n}\n\nexport default PendingPayrollsPage;\n","import { useState } from 'react';\nimport { baseApiUrl } from '@stssocialst-stp/fe-core';\n\nconst BASE = `${baseApiUrl}/payroll/beneficiarios`;\n\nfunction buildHeaders() {\n return { 'Content-Type': 'application/json' };\n}\n\nexport function useBeneficiarios() {\n const [loading, setLoading] = useState(false);\n const [output, setOutput] = useState('');\n const [error, setError] = useState(null);\n\n async function poll(clientMutationId) {\n const INTERVAL_MS = 5000;\n const TIMEOUT_MS = 20 * 60 * 1000; // 20 minutos\n const started = Date.now();\n\n while (Date.now() - started < TIMEOUT_MS) {\n await new Promise((resolve) => setTimeout(resolve, INTERVAL_MS));\n\n const resp = await fetch(`${baseApiUrl}/graphql`, {\n method: 'POST',\n headers: buildHeaders(),\n credentials: 'same-origin',\n body: JSON.stringify({\n query: `\n query {\n mutationLogs(clientMutationId: \"${clientMutationId}\") {\n edges { node { status error jsonExt clientMutationLabel } }\n }\n }\n `,\n }),\n });\n const result = await resp.json();\n const node = result?.data?.mutationLogs?.edges?.[0]?.node;\n\n if (!node) continue;\n\n // Update UI with label if needed\n setOutput(`A processar: ${node.clientMutationLabel}...`);\n\n if (node.status === 2) return { success: true, output: node.jsonExt?.output ?? null, error: null };\n if (node.status === 1) return { success: false, output: null, error: node.error };\n }\n return { success: false, output: null, error: 'Timeout: operação excedeu 20 minutos' };\n }\n\n async function request(path, { multipart = false, body = null } = {}) {\n setLoading(true);\n setError(null);\n try {\n const init = {\n method: 'POST',\n credentials: 'same-origin',\n };\n if (multipart) {\n init.body = body;\n } else {\n init.headers = buildHeaders();\n if (body) init.body = JSON.stringify(body);\n }\n const response = await fetch(`${BASE}${path}`, init);\n let data = null;\n const contentType = response.headers.get('content-type') || '';\n if (contentType.includes('application/json')) {\n data = await response.json();\n }\n if (!response.ok) {\n const message = data?.message || `HTTP ${response.status}`;\n setError(message);\n return { ok: false, message, data };\n }\n return { ok: true, data };\n } catch (e) {\n setError(e.message);\n return { ok: false, message: e.message };\n }\n // Note: setLoading(false) is handled after polling in methods\n }\n\n async function backup(payrollId = null) {\n const { ok, data } = await request('/backup/', {\n body: payrollId ? { payroll_id: payrollId } : {},\n });\n if (ok) {\n setOutput('Backup iniciado. A aguardar conclusão...');\n const pollResult = await poll(data.clientMutationId);\n if (pollResult.success) {\n setOutput(`Backup concluído: ${pollResult.output}`);\n // Handle download trigger if file info is in jsonExt\n } else {\n setError(pollResult.error);\n }\n }\n setLoading(false);\n return { ok, data };\n }\n\n async function limpar({ dryRun = true, forceSkipFinancial = false } = {}) {\n const { ok, data } = await request('/limpar/', {\n body: { username: 'admin', dry_run: dryRun, force_skip_financial: forceSkipFinancial },\n });\n if (ok) {\n setOutput('Limpeza iniciada. A aguardar conclusão...');\n const pollResult = await poll(data.clientMutationId);\n if (pollResult.success) {\n setOutput(pollResult.output);\n } else {\n setError(pollResult.error);\n }\n }\n setLoading(false);\n return { ok, data };\n }\n\n async function importar(\n file,\n { dryRun = false, payrollId, benefitPlanId, benefitType, sheet } = {},\n ) {\n const fd = new FormData();\n fd.append('file', file);\n fd.append('username', 'admin');\n fd.append('dry_run', String(dryRun));\n if (payrollId) fd.append('payroll_id', payrollId);\n if (benefitPlanId) fd.append('benefit_plan_id', benefitPlanId);\n if (benefitType) fd.append('benefit_type', benefitType);\n if (sheet) fd.append('sheet', sheet);\n const { ok, data } = await request('/importar/', { multipart: true, body: fd });\n if (ok) {\n setOutput('Importação iniciada. A aguardar conclusão...');\n const pollResult = await poll(data.clientMutationId);\n if (pollResult.success) {\n setOutput(pollResult.output);\n } else {\n setError(pollResult.error);\n }\n }\n setLoading(false);\n return { ok, data };\n }\n\n async function restore(file, { dryRun = true, skipPhases = [] } = {}) {\n const fd = new FormData();\n fd.append('file', file);\n fd.append('username', 'admin');\n fd.append('dry_run', String(dryRun));\n if (skipPhases.length) fd.append('skip_phases', skipPhases.join(','));\n const { ok, data } = await request('/restore/', { multipart: true, body: fd });\n if (ok) {\n setOutput('Restore iniciado. A aguardar conclusão...');\n const pollResult = await poll(data.clientMutationId);\n if (pollResult.success) {\n setOutput(pollResult.output);\n } else {\n setError(pollResult.error);\n }\n }\n setLoading(false);\n return { ok, data };\n }\n\n return {\n backup, limpar, importar, restore, loading, output, error, setOutput, setError,\n };\n}","import React, { useState } from 'react';\nimport { useSelector } from 'react-redux';\nimport { makeStyles } from '@material-ui/styles';\nimport {\n Helmet,\n useModulesManager,\n useTranslations,\n} from '@stssocialst-stp/fe-core';\nimport Paper from '@material-ui/core/Paper';\nimport Button from '@material-ui/core/Button';\nimport TextField from '@material-ui/core/TextField';\nimport Typography from '@material-ui/core/Typography';\nimport Box from '@material-ui/core/Box';\nimport Divider from '@material-ui/core/Divider';\nimport CircularProgress from '@material-ui/core/CircularProgress';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogContentText from '@material-ui/core/DialogContentText';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport { Alert } from '@material-ui/lab';\nimport { RIGHT_PAYROLL_SEARCH, MODULE_NAME } from '../../constants';\nimport { useBeneficiarios } from '../../hooks/useBeneficiarios';\n\nconst useStyles = makeStyles((theme) => ({\n page: theme.page,\n card: {\n padding: theme.spacing(3),\n marginBottom: theme.spacing(3),\n },\n sectionTitle: {\n marginBottom: theme.spacing(2),\n },\n field: {\n marginBottom: theme.spacing(2),\n },\n output: {\n marginTop: theme.spacing(2),\n padding: theme.spacing(2),\n backgroundColor: '#1e1e1e',\n color: '#d4d4d4',\n fontFamily: 'monospace',\n fontSize: 12,\n whiteSpace: 'pre-wrap',\n maxHeight: 320,\n overflow: 'auto',\n borderRadius: 4,\n },\n actions: {\n display: 'flex',\n gap: theme.spacing(1),\n flexWrap: 'wrap',\n },\n}));\n\nfunction Card({ title, children, classes }) {\n return (\n <Paper className={classes.card}>\n <Typography variant=\"h6\" className={classes.sectionTitle}>{title}</Typography>\n {children}\n </Paper>\n );\n}\n\nfunction BeneficiaryManagementPage() {\n const classes = useStyles();\n const modulesManager = useModulesManager();\n const { formatMessage } = useTranslations(MODULE_NAME, modulesManager);\n const rights = useSelector((store) => store.core.user?.i_user?.rights ?? []);\n const {\n backup, limpar, importar, restore, loading, output, error, setOutput, setError,\n } = useBeneficiarios();\n\n const [payrollId, setPayrollId] = useState('');\n const [backupPayrollId, setBackupPayrollId] = useState('');\n\n const [limparForce, setLimparForce] = useState(false);\n const [confirmLimpar, setConfirmLimpar] = useState(false);\n\n const [importFile, setImportFile] = useState(null);\n const [importPayrollId, setImportPayrollId] = useState('');\n const [importBenefitPlanId, setImportBenefitPlanId] = useState('');\n const [importDryRun, setImportDryRun] = useState(false);\n\n const [restoreFile, setRestoreFile] = useState(null);\n const [restoreDryRun, setRestoreDryRun] = useState(true);\n\n if (!rights.includes(RIGHT_PAYROLL_SEARCH)) {\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.beneficiaries.management.title')} />\n <Alert severity=\"warning\">\n {formatMessage('payroll.beneficiaries.management.noPermission')}\n </Alert>\n </div>\n );\n }\n\n return (\n <div className={classes.page}>\n <Helmet title={formatMessage('payroll.beneficiaries.management.title')} />\n <Typography variant=\"h5\" className={classes.sectionTitle}>\n {formatMessage('payroll.beneficiaries.management.title')}\n </Typography>\n\n {error && (\n <Alert severity=\"error\" onClose={() => setError(null)} className={classes.field}>\n {error}\n </Alert>\n )}\n\n <Card title={formatMessage('payroll.beneficiaries.backup.title')} classes={classes}>\n <TextField\n className={classes.field}\n fullWidth\n label={formatMessage('payroll.beneficiaries.payrollId.optional')}\n value={backupPayrollId}\n onChange={(e) => setBackupPayrollId(e.target.value)}\n />\n <div className={classes.actions}>\n <Button\n variant=\"contained\"\n color=\"primary\"\n disabled={loading}\n onClick={() => backup(backupPayrollId || null)}\n >\n {formatMessage('payroll.beneficiaries.backup.button')}\n </Button>\n </div>\n </Card>\n\n <Card title={formatMessage('payroll.beneficiaries.limpar.title')} classes={classes}>\n <FormControlLabel\n control={(\n <Checkbox\n checked={limparForce}\n onChange={(e) => setLimparForce(e.target.checked)}\n />\n )}\n label={formatMessage('payroll.beneficiaries.limpar.forceSkipFinancial')}\n />\n <div className={classes.actions}>\n <Button\n variant=\"outlined\"\n disabled={loading}\n onClick={() => limpar({ dryRun: true, forceSkipFinancial: limparForce })}\n >\n {formatMessage('payroll.beneficiaries.limpar.dryRun')}\n </Button>\n <Button\n variant=\"contained\"\n color=\"secondary\"\n disabled={loading}\n onClick={() => setConfirmLimpar(true)}\n >\n {formatMessage('payroll.beneficiaries.limpar.execute')}\n </Button>\n </div>\n <Dialog open={confirmLimpar} onClose={() => setConfirmLimpar(false)}>\n <DialogTitle>{formatMessage('payroll.beneficiaries.limpar.confirm.title')}</DialogTitle>\n <DialogContent>\n <DialogContentText>\n {formatMessage('payroll.beneficiaries.limpar.confirm.message')}\n {limparForce && (\n ` ${formatMessage('payroll.beneficiaries.limpar.confirm.forceNote')}`\n )}\n </DialogContentText>\n </DialogContent>\n <DialogActions>\n <Button onClick={() => setConfirmLimpar(false)}>\n {formatMessage('payroll.beneficiaries.cancel')}\n </Button>\n <Button\n color=\"secondary\"\n variant=\"contained\"\n onClick={async () => {\n setConfirmLimpar(false);\n await limpar({ dryRun: false, forceSkipFinancial: limparForce });\n }}\n >\n {formatMessage('payroll.beneficiaries.confirm')}\n </Button>\n </DialogActions>\n </Dialog>\n </Card>\n\n <Card title={formatMessage('payroll.beneficiaries.import.title')} classes={classes}>\n <input\n className={classes.field}\n type=\"file\"\n accept=\".xlsx\"\n onChange={(e) => setImportFile(e.target.files[0])}\n />\n <TextField\n className={classes.field}\n fullWidth\n label=\"Payroll UUID\"\n value={importPayrollId}\n onChange={(e) => setImportPayrollId(e.target.value)}\n />\n <TextField\n className={classes.field}\n fullWidth\n label=\"Benefit Plan UUID\"\n value={importBenefitPlanId}\n onChange={(e) => setImportBenefitPlanId(e.target.value)}\n />\n <FormControlLabel\n control={(\n <Checkbox\n checked={importDryRun}\n onChange={(e) => setImportDryRun(e.target.checked)}\n />\n )}\n label={formatMessage('payroll.beneficiaries.dryRun')}\n />\n <div className={classes.actions}>\n <Button\n variant=\"contained\"\n color=\"primary\"\n disabled={loading || !importFile}\n onClick={() => importar(importFile, {\n dryRun: importDryRun,\n payrollId: importPayrollId || null,\n benefitPlanId: importBenefitPlanId || null,\n })}\n >\n {formatMessage('payroll.beneficiaries.import.button')}\n </Button>\n </div>\n </Card>\n\n <Card title={formatMessage('payroll.beneficiaries.restore.title')} classes={classes}>\n <input\n className={classes.field}\n type=\"file\"\n accept=\".json\"\n onChange={(e) => setRestoreFile(e.target.files[0])}\n />\n <FormControlLabel\n control={(\n <Checkbox\n checked={restoreDryRun}\n onChange={(e) => setRestoreDryRun(e.target.checked)}\n />\n )}\n label={formatMessage('payroll.beneficiaries.dryRun')}\n />\n <div className={classes.actions}>\n <Button\n variant=\"contained\"\n color=\"primary\"\n disabled={loading || !restoreFile}\n onClick={() => restore(restoreFile, { dryRun: restoreDryRun })}\n >\n {formatMessage('payroll.beneficiaries.restore.button')}\n </Button>\n </div>\n </Card>\n\n {output && (\n <Paper className={classes.card}>\n <Typography variant=\"subtitle1\" className={classes.sectionTitle}>\n {formatMessage('payroll.beneficiaries.output')}\n </Typography>\n <Divider className={classes.field} />\n {loading && <CircularProgress size={18} />}\n <Box className={classes.output}>{output}</Box>\n </Paper>\n )}\n </div>\n );\n}\n\nexport default BeneficiaryManagementPage;\n","/* eslint-disable import/prefer-default-export */\n/* eslint-disable camelcase */\n\nimport React from 'react';\n\nimport { PinDrop } from '@material-ui/icons';\nimport MonetizationOnIcon from '@material-ui/icons/MonetizationOn';\n\nimport { FormattedMessage } from '@stssocialst-stp/fe-core';\nimport {\n RIGHT_PAYMENT_POINT_SEARCH,\n RIGHT_PAYROLL_CREATE,\n RIGHT_PAYROLL_SEARCH,\n} from './constants';\nimport reducer from './reducer';\nimport messages_en from './translations/en.json';\nimport PaymentPointPage from './pages/payment-point/PaymentPointPage';\nimport PaymentPointsPage from './pages/payment-point/PaymentPointsPage';\nimport PayrollPage from './pages/payroll/PayrollPage';\nimport PayrollsPage from './pages/payroll/PayrollsPage';\nimport ApprovedPayrollsPage from './pages/payroll/ApprovedPayrollsPage';\nimport ReconciledPayrollsPage from './pages/payroll/ReconciledPayrollsPage';\nimport PaymentPointPicker from './components/payment-point/PaymentPointPicker';\nimport BenefitConsumptionPayrollSearcher from './components/payroll/BenefitConsumptionPayrollSearcher';\nimport {\n PayrollTaskItemFormatters,\n PayrollTaskTableHeaders,\n} from './components/tasks/PayrollTasks';\nimport {\n PayrollReconciliationTaskItemFormatters,\n PayrollReconciliationTaskTableHeaders,\n} from './components/tasks/PayrollReconciliationTasks';\nimport {\n BenefitConsumptionsTabLabel,\n BenefitConsumptionsTabPanel,\n} from './components/payroll/BenefitConsumptionTabPanel';\nimport {\n PayrollRejectedTaskItemFormatters,\n PayrollRejectedTaskTableHeaders,\n} from './components/tasks/PayrollRejectedTasks';\nimport {\n PayrollTaskTabLabel,\n PayrollTaskTabPanel,\n} from './components/payroll/PayrollTaskTabPanel';\nimport { PayrollDeleteTaskItemFormatters, PayrollDeleteTaskTableHeaders } from './components/tasks/PayrollDeleteTasks';\nimport { PayrollPaymentFilesTabLabel, PayrollPaymentFilesTabPanel } from './components/payroll/PayrollPaymentFilesTab';\nimport BistpPaymentStatusPanel from './components/payroll/BistpPaymentStatusPanel';\nimport { BistpPaymentStatusTabLabel } from './components/payroll/BistpPaymentStatusPanel';\nimport PendingPayrollsPage from './pages/payroll/PendingPayrollsPage';\nimport BeneficiaryManagementPage from './pages/payroll/BeneficiaryManagementPage';\n\nconst ROUTE_PAYMENT_POINTS = 'paymentPoints';\nconst ROUTE_PAYMENT_POINT = 'paymentPoints/paymentPoint';\nconst ROUTE_PAYROLLS = 'payrolls';\nconst ROUTE_PAYROLLS_APPROVED = 'payrollsApproved';\nconst ROUTE_PAYROLLS_PENDING = 'payrollsPending';\nconst ROUTE_PAYROLLS_RECONCILED = 'payrollsReconciled';\nconst ROUTE_BENEFICIARIES_MANAGEMENT = 'beneficiariesManagement';\nconst ROUTE_PAYROLL = 'payrolls/payroll';\n\nconst DEFAULT_CONFIG = {\n translations: [{ key: 'en', messages: messages_en }],\n reducers: [{ key: 'payroll', reducer }],\n refs: [\n { key: 'payroll.route.paymentPoints', ref: ROUTE_PAYMENT_POINTS },\n { key: 'payroll.route.paymentPoint', ref: ROUTE_PAYMENT_POINT },\n { key: 'payroll.route.payrolls', ref: ROUTE_PAYROLLS },\n { key: 'payroll.route.payrollsApproved', ref: ROUTE_PAYROLLS_APPROVED },\n { key: 'payroll.route.payrollsPending', ref: ROUTE_PAYROLLS_PENDING },\n { key: 'payroll.route.payrollsReconciled', ref: ROUTE_PAYROLLS_RECONCILED },\n { key: 'payroll.route.beneficiariesManagement', ref: ROUTE_BENEFICIARIES_MANAGEMENT },\n { key: 'payroll.route.payroll', ref: ROUTE_PAYROLL },\n { key: 'payroll.PaymentPointPicker', ref: PaymentPointPicker },\n { key: 'payroll.PaymentPointPicker.projection', ref: ['id', 'name', 'location'] },\n { key: 'payroll.benefitConsumptionPayrollSearcher', ref: BenefitConsumptionPayrollSearcher },\n { key: 'payroll.payrollCreateRight', ref: RIGHT_PAYROLL_CREATE },\n ],\n 'core.Router': [\n { path: ROUTE_PAYMENT_POINTS, component: PaymentPointsPage },\n { path: `${ROUTE_PAYMENT_POINT}/:payment_point_uuid?`, component: PaymentPointPage },\n { path: ROUTE_PAYROLLS, component: PayrollsPage },\n { path: ROUTE_PAYROLLS_APPROVED, component: ApprovedPayrollsPage },\n { path: ROUTE_PAYROLLS_PENDING, component: PendingPayrollsPage },\n {\n path: ROUTE_PAYROLLS_RECONCILED, component: ReconciledPayrollsPage },\n {\n path: ROUTE_BENEFICIARIES_MANAGEMENT, component: BeneficiaryManagementPage },\n {\n path: `${ROUTE_PAYROLL}/:payroll_uuid?/:createPayrollFromFailedInvoices?/:benefitPlanId?`,\n component: PayrollPage,\n },\n ],\n 'invoice.MainMenu': [\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.paymentPoint.route\" />,\n icon: <PinDrop />,\n route: `/${ROUTE_PAYMENT_POINTS}`,\n filter: (rights) => rights.includes(RIGHT_PAYMENT_POINT_SEARCH),\n id: 'legalAndFinance.paymentPoint',\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.payroll.route\" />,\n icon: <MonetizationOnIcon />,\n route: `/${ROUTE_PAYROLLS}`,\n filter: (rights) => rights.includes(RIGHT_PAYROLL_SEARCH),\n id: 'legalAndFinance.payrolls',\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.route.payrollsPending\" />,\n icon: <MonetizationOnIcon />,\n route: `/${ROUTE_PAYROLLS_PENDING}`,\n filter: (rights) => rights.includes(RIGHT_PAYROLL_SEARCH),\n id: 'legalAndFinance.payrollsPending',\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.route.payrollsApproved\" />,\n icon: <MonetizationOnIcon />,\n route: `/${ROUTE_PAYROLLS_APPROVED}`,\n filter: (rights) => rights.includes(RIGHT_PAYROLL_SEARCH),\n id: 'legalAndFinance.payrollsApproved',\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.route.payrollsReconciled\" />,\n icon: <MonetizationOnIcon />,\n route: `/${ROUTE_PAYROLLS_RECONCILED}`,\n filter: (rights) => rights.includes(RIGHT_PAYROLL_SEARCH),\n id: 'legalAndFinance.payrollsReconciled',\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.route.beneficiariesManagement\" />,\n icon: <MonetizationOnIcon />,\n route: `/${ROUTE_BENEFICIARIES_MANAGEMENT}`,\n filter: (rights) => rights.includes(RIGHT_PAYROLL_SEARCH),\n id: 'legalAndFinance.beneficiariesManagement',\n },\n ],\n 'payroll.TabPanel.label': [\n BenefitConsumptionsTabLabel, PayrollTaskTabLabel, PayrollPaymentFilesTabLabel, BistpPaymentStatusTabLabel,\n ],\n 'payroll.TabPanel.panel': [\n BenefitConsumptionsTabPanel, PayrollTaskTabPanel, PayrollPaymentFilesTabPanel, BistpPaymentStatusPanel,\n ],\n 'tasksManagement.tasks': [{\n text: <FormattedMessage module=\"payroll\" id=\"payroll.tasks.update.title\" />,\n tableHeaders: PayrollTaskTableHeaders,\n itemFormatters: PayrollTaskItemFormatters,\n taskSource: ['payroll'],\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.tasks.reconciliation.title\" />,\n tableHeaders: PayrollReconciliationTaskTableHeaders,\n itemFormatters: PayrollReconciliationTaskItemFormatters,\n taskSource: ['payroll_reconciliation'],\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.tasks.rejected.title\" />,\n tableHeaders: PayrollRejectedTaskTableHeaders,\n itemFormatters: PayrollRejectedTaskItemFormatters,\n taskSource: ['payroll_reject'],\n },\n {\n text: <FormattedMessage module=\"payroll\" id=\"payroll.tasks.delete.title\" />,\n tableHeaders: PayrollDeleteTaskTableHeaders,\n itemFormatters: PayrollDeleteTaskItemFormatters,\n taskSource: ['payroll_delete'],\n }],\n};\n\nexport const PayrollModule = (cfg) => ({ ...DEFAULT_CONFIG, ...cfg });\n"],"names":["RIGHT_PAYROLL_SEARCH","RIGHT_PAYROLL_CREATE","PAYROLL_PAYMENT_POINT_ROUTE","PAYROLL_PAYROLL_ROUTE","RIGHT_PAYMENT_POINT_SEARCH","RIGHT_PAYMENT_POINT_CREATE","RIGHT_PAYMENT_POINT_UPDATE","DEFAULT_DEBOUNCE_TIME","DEFAULT_PAGE_SIZE","CONTAINS_LOOKUP","ROWS_PER_PAGE_OPTIONS","EMPTY_STRING","MAX_LENGTH","NAME","MODULE_NAME","BENEFIT_CONSUMPTION_LIST_TAB_VALUE","BISTP_PAYMENT_STATUS_TAB_VALUE","PAYROLL_TASK_TAB_VALUE","PAYROLL_PAYMENT_FILES_TAB_VALUE","PAYROLL_TABS_LABEL_CONTRIBUTION_KEY","PAYROLL_TABS_PANEL_CONTRIBUTION_KEY","CLEARED_STATE_FILTER","field","filter","type","value","BENEFIT_PLAN","INTEGER","STRING","BOOLEAN","DATE","BOOL_OPTIONS","label","PAYROLL_STATUS","PENDING_APPROVAL","APPROVE_FOR_PAYMENT","REJECTED","RECONCILIATED","RECONCILED","PAYROLL_STATUS_LIST","BENEFIT_CONSUMPTION_STATUS","ACCEPTED","CREATED","DUPLICATE","PAYROLL_PAYMENT_FILE_STATUS","TRIGGERED","IN_PROGRESS","SUCCESS","PARTIAL_SUCCESS","WAITING_FOR_VERIFICATION","FAIL","BENEFIT_CONSUMPTION_STATUS_LIST","PAYROLL_FROM_FAILED_INVOICES_URL_PARAM","PAYMENT_METHOD","STRATEGY_OFFLINE_PAYMENT","STRATEGY_ONLINE_PAYMENT","STRATEGY_BISTP_PAYMENT","REQUEST","actionTypeName","concat","ERROR","CLEAR","ACTION_TYPE","MUTATION","CREATE_PAYMENT_POINT","DELETE_PAYMENT_POINT","UPDATE_PAYMENT_POINT","SEARCH_PAYMENT_POINTS","CREATE_PAYROLL","DELETE_PAYROLL","SEARCH_PAYROLLS","GET_PAYMENT_POINT","GET_PAYROLL","GET_BENEFIT_CONSUMPTION","GET_PAYROLL_BENEFIT_CONSUMPTION","GET_BENEFIT_ATTACHMENT","GET_PAYMENT_METHODS","CLOSE_PAYROLL","REJECT_PAYROLL","MAKE_PAYMENT_PAYROLL","UPDATE_PAYROLL_PAYMENT_DATE","GET_PAYROLL_PAYMENT_FILES","BENEFITS_SUMMARY","GET_BISTP_SUMMARY","DELETE_BENEFIT_CONSUMPTION","MUTATION_SERVICE","PAYMENT_POINT","CREATE","DELETE","UPDATE","PAYROLL","CLOSE","REJECT","MAKE_PAYMENT","UPDATE_PAYMENT_DATE","BENEFIT_CONSUMPTION","STORE_STATE","submittingMutation","mutation","fetchingPaymentPoints","fetchedPaymentPoints","errorPaymentPoints","paymentPoints","paymentPointsPageInfo","paymentPointsTotalCount","fetchingPaymentPoint","fetchedPaymentPoint","paymentPoint","errorPaymentPoint","fetchingPayrolls","fetchedPayrolls","errorPayrolls","payrolls","payrollsPageInfo","payrollsTotalCount","fetchingPayroll","fetchedPayroll","payroll","errorPayroll","fetchingBenefitConsumptions","benefitConsumption","benefitConsumptionTotalCount","fetchedBenefitConsumption","errorBenefitConsumption","benefitConsumptionsPageInfo","fetchingBenefitAttachments","benefitAttachments","benefitAttachmentsTotalCount","fetchedBenefitAttachments","errorBenefitAttachments","benefitAttachmentsPageInfo","fetchingPaymentMethods","paymentMethods","fetchedPaymentMethods","errorPaymentMethods","fetchingPayrollFiles","fetchedPayrollFiles","errorPayrollFiles","payrollFiles","payrollFilesPageInfo","payrollFilesTotalCount","fetchingPayrollBenefitConsumptions","payrollBenefitConsumption","payrollBenefitConsumptionTotalCount","fetchedPayrollBenefitConsumption","errorPayrollBenefitConsumption","payrollBenefitConsumptionsPageInfo","benefitsSummary","benefitsSummaryError","fetchingBenefitsSummary","fetchedBenefitsSummary","fetchingBistpSummary","fetchedBistpSummary","bistpSummary","errorBistpSummary","reducer","_parseData","_action$payload$data$","_action$payload$data$2","_parseData2","_action$payload$data$3","_action$payload$data$4","_parseData3","_parseData4","_parseData5","_action$payload$data$5","_action$payload$data$6","_parseData6","_action$payload$data$7","_action$payload$data$8","_parseData7","_action$payload$data$9","_action$payload$data$0","_parseData8","_action$payload$data$1","_action$payload$data$10","state","arguments","length","undefined","action","_objectSpread","parseData","payload","data","map","id","decodeId","formatGraphQLError","pageInfo","totalCount","formatServerError","dateValidTo","split","dateValidFrom","paymentDate","payrollBills","fetchedBenefitConsumptions","benefitConsumptions","errorBenefitConsumptions","benefitConsumptionsTotalCount","benefitConsumptionByPayroll","benefitAttachmentByPayroll","benefitAttachment","fetchedPayrollBenefitConsumptions","payrollBenefitConsumptions","errorPayrollBenefitConsumptions","payrollBenefitConsumptionsTotalCount","csvReconciliationUpload","file","dispatchMutationReq","dispatchMutationErr","dispatchMutationResp","isBase64Encoded","str","base64RegExp","test","PAYMENT_POINT_PROJECTION","modulesManager","getProjection","BENEFIT_CONSUMPTION_PROJECTION","PAYROLL_BENEFIT_CONSUMPTION_PROJECTION","BENEFIT_CONSUMPTION_SUMMARY_PROJECTION","BENEFIT_ATTACHMENT_PROJECTION","BISTP_SUMMARY_PROJECTION","PAYROLL_PROJECTION","join","_toConsumableArray","PAYROLL_SEARCHER_PROJECTION","CSV_RECONCILIATION_PROJECTION","PAYMENT_METHOD_PROJECTION","formatPaymentPointGQL","name","formatGQLString","location","ppm","formatPayrollGQL","paymentPlan","paymentCycle","paymentMethod","jsonExt","JSON","stringify","fromFailedInvoicesPayrollId","PERFORM_MUTATION","mutationType","mutationInput","ACTION","clientMutationLabel","formatMutation","requestedDateTime","Date","graphql","actionType","clientMutationId","fetchPaymentPoints","params","formatPageQueryWithCount","fetchPaymentPoint","fetchPayrollPaymentFiles","clearPaymentPoint","dispatch","deletePaymentPoint","paymentPointUuids","createPaymentPoint","updatePaymentPoint","fetchPayrolls","fetchPayroll","deletePayrolls","uuid","payrollUuids","deleteBenefitConsumption","benefit","benefitUuids","createPayroll","fetchBenefitConsumptions","fetchBenefitAttachments","fetchPayrollBenefitConsumptions","fetchBenefitsSummary","formatQuery","clearPayroll","fetchPaymentMethods","closePayroll","rejectPayroll","makePaymentForPayroll","updatePayrollPaymentDate","fetchBistpSummary","payrollId","query","pageTitle","item","mutationLabel","styles","theme","tableTitle","table","title","paper","fullHeight","height","PaymentPointHeadPanel","_FormPanel","_classCallCheck","_callSuper","_inherits","_createClass","key","render","_this","_this$props","props","edited","classes","readOnly","React","createElement","Grid","container","className","xs","PublishedComponent","pubRef","withNull","required","filterLabels","onChange","locations","updateAttribute","withPlaceholder","withLabel","TextInput","module","inputProps","maxLength","FormPanel","withModulesManager","injectIntl","withTheme","withStyles","useStyles","makeStyles","page","lockedPage","locked","PaymentPointPage","_ref","paymentPointUuid","rights","confirmed","coreConfirm","clearConfirm","useModulesManager","history","useHistory","_useTranslations","useTranslations","formatMessage","formatMessageWithValues","_useState","useState","_useState2","_slicedToArray","editedPaymentPoint","setEditedPaymentPoint","_useState3","_useState4","confirmedAction","setConfirmedAction","prevSubmittingMutationRef","useRef","pageLocked","isDeleted","back","goBack","useEffect","current","journalize","mandatoryFieldsEmpty","canSave","handleSave","deletePaymentPointCallback","openDeletePaymentPointConfirmDialog","actions","doIt","icon","DeleteIcon","tooltip","includes","Form","titleParams","openDirty","onEditedChanged","save","HeadPanel","saveTooltip","mapDispatchToProps","bindActionCreators","mapStateToProps","_state$core$user$i_us","_state$core","match","payment_point_uuid","core","user","i_user","connect","form","padding","width","spacing","PaymentPointFilter","_filters$isDeleted","filters","onChangeFilters","debouncedOnChangeFilters","_debounce","filterValue","filterName","_filters$filterName$v","_filters$filterName","filterTextFieldValue","_filters$filterName$v2","_filters$filterName2","onChangeStringFilter","lookup","ControlledField","anchor","FormControlLabel","control","Checkbox","color","checked","_filters$isDeleted2","_filters$isDeleted3","PaymentPointSearcher","useSelector","store","_store$core$user$i_us","paymentPointToDelete","setPaymentPointToDelete","deletedPaymentPointUuids","setDeletedPaymentPointUuids","headers","sorts","fetch","rowIdentifier","openPaymentPoint","push","getRef","onDelete","itemFormatters","_ref2","_ppm$iUser","_ppm$iUser2","username","iUser","lastName","otherNames","_ref3","code","Tooltip","IconButton","onClick","VisibilityIcon","disabled","onDoubleClick","paymentPointFilter","_ref4","defaultFilters","isRowDisabled","_","Searcher","FilterPane","items","itemsPageInfo","fetchedItems","fetchingItems","errorItems","rowsPerPageOptions","defaultPageSize","rowDisabled","rowLocked","fab","PaymentPointsPage","onCreate","Helmet","withTooltip","Fab","AddIcon","AdvancedFiltersRowValue","customFilters","currentFilter","setCurrentFilter","index","setFilters","onAttributeChange","attribute","updatedFilter","attributeValue","_defineProperty","prevFilters","updatedRows","removeFilter","newArray","splice","renderInputBasedOnType","commonProps","SelectInput","_extends","options","NumberInput","min","displayZero","toLowerCase","direction","style","backgroundColor","marginTop","transform","fontSize","Fragment","CustomFilterFieldStatusPicker","CustomFilterTypeStatusPicker","customFilterField","AdvancedFiltersDialog","intl","object","objectToSave","fetchCustomFilter","moduleName","objectType","setAppliedCustomFilters","appliedFiltersRowStructure","setAppliedFiltersRowStructure","updateAttributes","getDefaultAppliedCustomFilters","additionalParams","isOpen","setIsOpen","amount","_useState5","_useState6","createParams","objectTypeName","uuidOfObject","fetchFilters","handleClose","handleRemoveFilter","handleAddFilter","updateJsonExt","inputJsonExt","outputFilters","existingData","parse","hasOwnProperty","advanced_criteria","filterData","updatedJsonExt","saveCriteria","custom_filter_condition","isEmpty","paramsToFetchFilters","paddingLeft","paddingBottom","AddCircle","border","borderRadius","Button","variant","marginBottom","paddingRight","autoFocus","fetchingCustomFilters","errorCustomFilters","fetchedCustomFilters","PayrollStatusPicker","nullLabel","ConstantBasedPicker","constants","PaymentMethodPicker","_ref$readOnly","_ref$withNull","_ref$nullLabel","_ref$withLabel","_ref$required","Array","isArray","unshift","EDITABLE_STATUSES","PayrollPaymentDateDialog","setPaymentDate","handleOpen","_payroll$paymentDate","status","Dialog","open","onClose","DialogTitle","DialogContent","minWidth","disablePast","DialogActions","PayrollHeadPanel","_props$edited","setState","appliedCustomFilters","jsonData","advancedCriteria","transformedCriteria","_custom_filter_condit","_custom_filter_condit2","typeValue","_typeValue$split","_typeValue$split2","error","componentDidMount","setStateFromProps","_this2","isPayrollFromFailedInvoices","benefitPlanId","_this$state","Divider","Typography","FormattedMessage","PayrollPaymentDataUploadDialog","_forms$paymentData","payrollUuid","forms","setForms","handleFieldChange","formName","fieldName","_forms$formName","onSubmit","_asyncToGenerator","_regeneratorRuntime","mark","_callee","values","fileFormat","formData","urlImport","response","wrap","_context","prev","next","FormData","append","baseApiUrl","apiHeaders","body","method","credentials","sent","json","abrupt","_t","stop","_x","apply","button","PaperProps","maxWidth","noValidate","Input","event","target","files","accept","display","margin","paymentData","BenefitConsumptionFilterModal","onChangeFilter","v","ErrorSummaryModal","_benefitAttachment$be","outputGateway","output_gateway","Modal","closeAfterTransition","BackdropComponent","Backdrop","BackdropProps","timeout","Fade","Box","p","outline","justifyContent","mt","AdditionalFieldsDialog","buttonLabel","jsonExtFields","createFieldsBasedOnJSON","extra_info","maxHeight","jsonExtField","renderInputComponent","topHeader","alignItems","printContainer","flexDirection","fontWeight","date","detailsContainer","detailRow","detailName","textTransform","detailValue","containerPadding","dividerMargin","sectionTitle","PayrollBenefitPrintTemplate","forwardRef","ref","_benefitAttachment$bi","individual","firstName","dateDue","receipt","payedOnTime","bill","datePayed","BenefitConsumptionSearcherModal","reconciledMode","payrollDetail","selectedBenefitAttachment","setSelectedBenefitAttachment","openConfirmDialog","setOpenConfirmDialog","benefitToDelete","setBenefitToDelete","payrollPrintTemplateRef","handlePrint","useReactToPrint","documentTitle","benefit_Status","defaultFiltersArray","confirmDeleteBenefitConsumption","handleDeleteBenefitConsumption","checkBenefitDueDate","PhotoCameraOutlinedIcon","_benefitAttachment$be2","amountTotal","_benefitAttachment$be3","_benefitAttachment$be4","_benefitAttachment$bi2","_benefitAttachment$be5","_benefitAttachment$be6","benefitConsumptionFilterModal","size","startIcon","PrintIcon","e","preventDefault","DialogContentText","downloadPayroll","payrollFileName","blank","url","URL","window","origin","searchParams","then","blob","link","document","href","createObjectURL","download","appendChild","click","removeChild","console","PaymentApproveForPaymentDialog","_payrollDetail$id","totalBeneficiaries","setTotalBeneficiaries","_useState7","_useState8","selectedBeneficiaries","setSelectedBeneficiaries","_useState9","_useState0","approvedBeneficiaries","setApprovedBeneficiaries","_useState1","_useState10","totalBillAmount","setTotalBillAmount","_useState11","_useState12","totalReconciledBillAmount","setTotalReconciledBillAmount","Object","keys","_payroll$benefitConsu","_payroll$benefitConsu2","_payroll$benefitConsu3","_payroll$benefitConsu4","total","selected","approved","totalAmount","reconciledAmount","forEach","attachment","parseFloat","closePayrollCallback","rejectPayrollCallback","makePaymentForPayrollCallback","downloadPayrollData","payrollName","position","top","left","Paper","elevation","gutterBottom","POLL_INTERVAL_MS","TIMEOUT_MS","COUNT_QUERY","useAsyncPayrollProgress","payrollStatus","useDispatch","benefitCount","setBenefitCount","isGenerating","setIsGenerating","timedOut","setTimedOut","pollRef","startTimeRef","prevCountRef","stableCountRounds","stopPolling","useCallback","clearInterval","fetchCount","_response$payload$dat","_response$payload","count","c","Math","max","shouldPoll","now","setInterval","tabs","selectedTab","borderBottom","unselectedTab","marginLeft","PayrollTab","isInTask","activeTab","setActiveTab","isSelected","tab","tabStyle","handleChange","_useAsyncPayrollProgr","generationComplete","setGenerationComplete","refreshBenefitsKey","setRefreshBenefitsKey","k","LinearProgress","Contributions","contributionKey","PaymentApproveForPaymentSummary","PayrollPage","statePayrollUuid","taskPayrollUuid","createPayrollFromFailedInvoices","editedPayroll","setEditedPayroll","setPayrollUuid","setIsInTask","setReadOnly","setIsPayrollFromFailedInvoices","payrollRouteRef","replace","benefitPlan","Panels","_props$match","_props$match2","_props$match3","_props$match4","payroll_uuid","PayrollFilter","_ref$statusReadOnly","statusReadOnly","PayrollSearcher","payrollToDelete","setPayrollToDelete","deletedPayrollUuids","setDeletedPayrollUuids","openDeletePayrollConfirmDialog","renderBistpProgress","summary","reconciled","progress","gap","flex","whiteSpace","openPayroll","_payroll$benefitPlanN","benefitPlanNameCode","payrollFilter","PayrollsPage","PayrollPaymentFilesSearcher","fileName","fetchFiles","DownloadIcon","PayrollReconciliationFilesDialog","showFilters","PayrollSearcherApproved","ApprovedPayrollsPage","PaymentReconcilationSummarytDialog","handleCreatePaymentForFailedInvoice","PayrollSearcherReconciled","PaymentReconciliationSummaryDialog","ReconciledPayrollsPage","PaymentPointPicker","_data$paymentPoint$ed","_data$paymentPoint","filterOptions","filterSelectedOptions","searchString","setSearchString","formatSuggestion","Boolean","_useGraphqlQuery","useGraphqlQuery","isLoading","edges","edge","node","Autocomplete","placeholder","getOptionLabel","option","onInputChange","renderInput","TextField","BenefitConsumptionStatusPicker","BenefitConsumptionPayrollFilter","BenefitConsumptionPayrollSearcher","_benefitsSummary$tota","_benefitsSummary$tota2","individualUuid","groupBeneficiaries","paymentCycleUuid","totalNumberOfBenefits","setTotalNumberOfBenefits","_payrollBenefitConsum","_payrollBenefitConsum2","_payrollBenefitConsum3","startDate","_payrollBenefitConsum4","endDate","_payrollBenefitConsum5","_payrollBenefitConsum6","_payrollBenefitConsum7","_payrollBenefitConsum8","_payrollBenefitConsum9","_payrollBenefitConsum0","_payrollBenefitConsum1","_groupBeneficiaries$g","_groupBeneficiaries$g2","benefit_Individual_Id","group","head","benefitPlanUuid","_groupBeneficiaries$g3","benefitConsumptionPayrollFilter","totalAmountDue","totalAmountReceived","errorBenefitsSummary","PayrollTaskTableHeaders","PayrollTaskItemFormatters","PayrollReconciliationTaskTableHeaders","PayrollReconciliationTaskItemFormatters","BenefitConsumptionFilter","PayrollPrintTemplate","_benefitConsumption$b","BenefitConsumptionSearcher","cols","getBistpStatusBadge","Chip","bistp_rejection_reason","bistp_skip_reason","_benefitConsumption$i","_benefitConsumption$i2","_benefitConsumption$i3","nib","_benefitConsumption$p","_benefitConsumption$b2","hasBistpFields","bistp_processed","benefitConsumptionFilter","BenefitConsumptionsTabLabel","Tab","BenefitConsumptionsTabPanel","PayrollRejectedTaskTableHeaders","PayrollRejectedTaskItemFormatters","PayrollTaskTabLabel","PayrollTaskTabPanel","_store$core","entityId","PayrollDeleteTaskTableHeaders","PayrollDeleteTaskItemFormatters","PayrollPaymentFilesTabLabel","PayrollPaymentFilesTabPanel","content","metric","metricValue","BistpPaymentStatusTabLabel","BistpMetric","sm","md","BistpPaymentStatusPanel","_bistpSummary$total","_bistpSummary$confirm","_bistpSummary$pendent","_bistpSummary$rejeita","_bistpSummary$enviado","_useTranslations2","confirmados","pendentes","rejeitados","enviados","PaymentPendingPayrollPaymentDialog","PayrollSearcherPending","PayrollPendingPayrollSummary","PendingPayrollsPage","BASE","buildHeaders","useBeneficiarios","loading","setLoading","output","setOutput","setError","poll","_poll","INTERVAL_MS","started","_result$data","_node$jsonExt$output","_node$jsonExt","resp","result","Promise","resolve","setTimeout","mutationLogs","success","request","_x2","_request","_callee2","path","_ref$multipart","multipart","_ref$body","init","contentType","_data","message","_args2","_context2","get","ok","backup","_backup","_callee3","_yield$request","pollResult","_args3","_context3","payroll_id","limpar","_limpar","_callee4","_ref2$dryRun","dryRun","_ref2$forceSkipFinanc","forceSkipFinancial","_yield$request2","_args4","_context4","dry_run","force_skip_financial","importar","_x3","_importar","_callee5","_ref3$dryRun","benefitType","sheet","fd","_yield$request3","_args5","_context5","String","restore","_x4","_restore","_callee6","_ref4$dryRun","_ref4$skipPhases","skipPhases","_yield$request4","_args6","_context6","card","fontFamily","overflow","flexWrap","Card","children","BeneficiaryManagementPage","_store$core$user","_useBeneficiarios","setPayrollId","backupPayrollId","setBackupPayrollId","limparForce","setLimparForce","confirmLimpar","setConfirmLimpar","importFile","setImportFile","importPayrollId","setImportPayrollId","importBenefitPlanId","setImportBenefitPlanId","_useState13","_useState14","importDryRun","setImportDryRun","_useState15","_useState16","restoreFile","setRestoreFile","_useState17","_useState18","restoreDryRun","setRestoreDryRun","Alert","severity","fullWidth","CircularProgress","ROUTE_PAYMENT_POINTS","ROUTE_PAYMENT_POINT","ROUTE_PAYROLLS","ROUTE_PAYROLLS_APPROVED","ROUTE_PAYROLLS_PENDING","ROUTE_PAYROLLS_RECONCILED","ROUTE_BENEFICIARIES_MANAGEMENT","ROUTE_PAYROLL","DEFAULT_CONFIG","translations","messages","messages_en","reducers","refs","component","text","PinDrop","route","MonetizationOnIcon","tableHeaders","taskSource","PayrollModule","cfg"],"mappings":"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"}
|