@@ -93,8 +93,8 @@ import type {
9393 OracleFusionHcmGetTimeRecordRequestBody ,
9494 OracleFusionHcmGetWorkerAssignmentBody ,
9595 OracleFusionHcmGetWorkerBody ,
96- OracleFusionHcmListAbsenceTypesBody ,
9796 OracleFusionHcmListAbsencesBody ,
97+ OracleFusionHcmListAbsenceTypesBody ,
9898 OracleFusionHcmListAssignedPayrollsBody ,
9999 OracleFusionHcmListBusinessUnitsBody ,
100100 OracleFusionHcmListDepartmentsBody ,
@@ -118,8 +118,8 @@ import type {
118118 OracleFusionHcmListPayrollTimePeriodsBody ,
119119 OracleFusionHcmListPerformanceDocumentParticipantsBody ,
120120 OracleFusionHcmListPerformanceDocumentRolesBody ,
121- OracleFusionHcmListPerformanceDocumentTasksBody ,
122121 OracleFusionHcmListPerformanceDocumentsBody ,
122+ OracleFusionHcmListPerformanceDocumentTasksBody ,
123123 OracleFusionHcmListPerformanceGoalsBody ,
124124 OracleFusionHcmListPersonProcessResultsBody ,
125125 OracleFusionHcmListPersonTypesBody ,
@@ -133,8 +133,8 @@ import type {
133133 OracleFusionHcmListTalentProfilesBody ,
134134 OracleFusionHcmListTimeAttributeCriteriaBindsBody ,
135135 OracleFusionHcmListTimeAttributeDataSourcesBody ,
136- OracleFusionHcmListTimeAttributeValuesBody ,
137136 OracleFusionHcmListTimeAttributesBody ,
137+ OracleFusionHcmListTimeAttributeValuesBody ,
138138 OracleFusionHcmListTimeCardsBody ,
139139 OracleFusionHcmListTimeRecordEventMessagesBody ,
140140 OracleFusionHcmListTimeRecordRequestEventsBody ,
@@ -956,19 +956,40 @@ async function assignedPayrollPath(
956956 )
957957}
958958
959- async function elementEntryPath ( input : Credentials & { elementEntryId : string ; effectiveDate ?: string } , signal ?: AbortSignal ) {
960- return resolveResourcePath ( input , 'elementEntries' , 'ElementEntryId' , input . elementEntryId , signal )
959+ async function elementEntryPath (
960+ input : Credentials & { elementEntryId : string ; effectiveDate ?: string } ,
961+ signal ?: AbortSignal
962+ ) {
963+ return resolveResourcePath (
964+ input ,
965+ 'elementEntries' ,
966+ 'ElementEntryId' ,
967+ input . elementEntryId ,
968+ signal
969+ )
961970}
962971
963- async function performanceDocumentPath ( input : Credentials & { evaluationId : string } , signal ?: AbortSignal ) {
964- return resolveResourcePath ( input , 'performanceEvaluations' , 'EvaluationId' , input . evaluationId , signal )
972+ async function performanceDocumentPath (
973+ input : Credentials & { evaluationId : string } ,
974+ signal ?: AbortSignal
975+ ) {
976+ return resolveResourcePath (
977+ input ,
978+ 'performanceEvaluations' ,
979+ 'EvaluationId' ,
980+ input . evaluationId ,
981+ signal
982+ )
965983}
966984
967985async function talentProfilePath ( input : Credentials & { profileId : string } , signal ?: AbortSignal ) {
968986 return resolveResourcePath ( input , 'talentPersonProfiles' , 'ProfileId' , input . profileId , signal )
969987}
970988
971- async function timeAttributePath ( input : Credentials & { timeAttributeId : string } , signal ?: AbortSignal ) {
989+ async function timeAttributePath (
990+ input : Credentials & { timeAttributeId : string } ,
991+ signal ?: AbortSignal
992+ ) {
972993 return resolveResourcePath ( input , 'timeAttributes' , 'tmAtrbFldId' , input . timeAttributeId , signal )
973994}
974995
@@ -981,10 +1002,21 @@ async function readResource<T>(
9811002 project : ( value : unknown ) => T ,
9821003 signal ?: AbortSignal
9831004) : Promise < T > {
984- const raw = await request ( input , path , { fields, links : 'self' , effectiveDate : input . effectiveDate } , signal )
1005+ const raw = await request (
1006+ input ,
1007+ path ,
1008+ { fields, links : 'self' , effectiveDate : input . effectiveDate } ,
1009+ signal
1010+ )
9851011 validateSelfLink ( raw , input , path )
986- if ( ! isRecordLike ( raw ) || normalizeOracleFusionDecimalIdentifier ( raw [ idField ] , { maxDigits : 19 } ) !== id ) {
987- throw new OracleFusionProviderError ( 'Oracle Fusion HCM returned a different resource than requested' , 502 )
1012+ if (
1013+ ! isRecordLike ( raw ) ||
1014+ normalizeOracleFusionDecimalIdentifier ( raw [ idField ] , { maxDigits : 19 } ) !== id
1015+ ) {
1016+ throw new OracleFusionProviderError (
1017+ 'Oracle Fusion HCM returned a different resource than requested' ,
1018+ 502
1019+ )
9881020 }
9891021 return project ( raw )
9901022}
@@ -1016,16 +1048,25 @@ export async function executeOracleFusionHcmListPayrollRelationships(
10161048 signal ?: AbortSignal
10171049) {
10181050 const path = 'payrollRelationships'
1019- const result = await list ( input , path , PAYROLL_RELATIONSHIP_FIELDS , projectPayrollRelationship , ( query ) => {
1020- const clauses : string [ ] = [ ]
1021- addSearch ( query , input . search , [ 'PersonNumber' , 'PayrollRelationshipNumber' ] )
1022- if ( query . q ) clauses . push ( `(${ query . q } )` )
1023- if ( input . personNumber ) clauses . push ( `PersonNumber='${ quoteOracle ( input . personNumber ) } '` )
1024- addEffectiveDate ( query , input . effectiveDate )
1025- if ( clauses . length > 0 ) query . q = clauses . join ( ' AND ' )
1026- } ,
1027- signal )
1028- return { success : true as const , output : { payrollRelationships : result . items , ...withoutItems ( result ) } }
1051+ const result = await list (
1052+ input ,
1053+ path ,
1054+ PAYROLL_RELATIONSHIP_FIELDS ,
1055+ projectPayrollRelationship ,
1056+ ( query ) => {
1057+ const clauses : string [ ] = [ ]
1058+ addSearch ( query , input . search , [ 'PersonNumber' , 'PayrollRelationshipNumber' ] )
1059+ if ( query . q ) clauses . push ( `(${ query . q } )` )
1060+ if ( input . personNumber ) clauses . push ( `PersonNumber='${ quoteOracle ( input . personNumber ) } '` )
1061+ addEffectiveDate ( query , input . effectiveDate )
1062+ if ( clauses . length > 0 ) query . q = clauses . join ( ' AND ' )
1063+ } ,
1064+ signal
1065+ )
1066+ return {
1067+ success : true as const ,
1068+ output : { payrollRelationships : result . items , ...withoutItems ( result ) } ,
1069+ }
10291070}
10301071
10311072/** Oracle contract: https://docs.oracle.com/en/cloud/saas/human-resources/farws/op-payrollrelationships-get.html */
@@ -1034,7 +1075,15 @@ export async function executeOracleFusionHcmGetPayrollRelationship(
10341075 signal ?: AbortSignal
10351076) {
10361077 const path = await payrollRelationshipPath ( input , signal )
1037- const result = await readResource ( input , path , PAYROLL_RELATIONSHIP_FIELDS , 'PayrollRelationshipId' , input . payrollRelationshipId , projectPayrollRelationship , signal )
1078+ const result = await readResource (
1079+ input ,
1080+ path ,
1081+ PAYROLL_RELATIONSHIP_FIELDS ,
1082+ 'PayrollRelationshipId' ,
1083+ input . payrollRelationshipId ,
1084+ projectPayrollRelationship ,
1085+ signal
1086+ )
10381087 return { success : true as const , output : { payrollRelationship : result } }
10391088}
10401089
@@ -1044,13 +1093,22 @@ export async function executeOracleFusionHcmListPayrollAssignments(
10441093 signal ?: AbortSignal
10451094) {
10461095 const path = `${ await payrollRelationshipPath ( input , signal ) } /child/payrollAssignments`
1047- const result = await list ( input , path , PAYROLL_ASSIGNMENT_FIELDS , projectPayrollAssignment , ( query ) => {
1048- const clauses : string [ ] = [ ]
1049- addEffectiveDate ( query , input . effectiveDate )
1050- if ( clauses . length > 0 ) query . q = clauses . join ( ' AND ' )
1051- } ,
1052- signal )
1053- return { success : true as const , output : { payrollAssignments : result . items , ...withoutItems ( result ) } }
1096+ const result = await list (
1097+ input ,
1098+ path ,
1099+ PAYROLL_ASSIGNMENT_FIELDS ,
1100+ projectPayrollAssignment ,
1101+ ( query ) => {
1102+ const clauses : string [ ] = [ ]
1103+ addEffectiveDate ( query , input . effectiveDate )
1104+ if ( clauses . length > 0 ) query . q = clauses . join ( ' AND ' )
1105+ } ,
1106+ signal
1107+ )
1108+ return {
1109+ success : true as const ,
1110+ output : { payrollAssignments : result . items , ...withoutItems ( result ) } ,
1111+ }
10541112}
10551113
10561114/** Oracle contract: https://docs.oracle.com/en/cloud/saas/human-resources/farws/op-payrollrelationships-payrollrelationshipsuniqid-child-payrollassignments-get.html */
0 commit comments