You are on page 1of 4

PayEarnings Service

Model: PayEarnings.java
Repository: PayEarningsRepository.java
Service: PayEarningsServiceImpl.java (interface PayEarningsService.java)
Controller: PayEarningsController.java
Example URLs:
http://javadev1.yrcw.com:5069/api/v1/payearnings/emplid/100412616/pay/enddate/2018-01-
06

Database table: PSFT88.PS_PAY_EARNINGS number of columns: 70


PSFT88.PS_PAY_OTH_EARNS number of columns: 34
View: PSFT88. YRC_PAYEARNINGS_SERVICE
Public Synonym: YRC_ PAYEARNINGS _SERVICE

Note: This is an inquiry only service.


(patterned after PAY002.sqr)

Service Data items:


Java name Database column
id ID
emplid EMPLID
payEndDt PAY_END_DT
regHrs REG_HRS
regEarnHrs REG_EARN_HRS
regEarns REG_EARNS
regHrlyEarns REG_HRLY_EARNS
otHrs OT_HRS
otHrlyEarns OT_HRLY_EARNS
addlNbr ADDL_NBR
ernCd ERNCD
othHrs OTH_HRS
othEarns OTH_EARNS
erndcRegHrsDesc select ernCD, DESCR
erncdRegEarnsDesc from PSFT88.PS_EARNINGS_TBL pet
erncdOtHrsDesc where pet.EFF_STATUS = 'A'
oeErncdDesc and pet.EFFDT = (select max(effdt)
from PSFT88.PS_earnings_TBL y
where y.EFF_STATUS = 'A'
and y.erncd = pet.erncd)

SQL for returning data from table:


SELECT rowidtochar(pe.rowid) as id, pc.EMPLID, pc.PAY_END_DT
,pc.TOTAL_GROSS
,pe.REG_HRS + pe.REG_EARN_HRS as Hours
,pe.REG_EARNS + pe.REG_HRLY_EARNS as Earnings
,pe.OT_HRS as Ot_Hrs
PayEarnings Service

,pe.OT_HRLY_EARNS as Ot_Hrly_Earns
,pe.ADDL_NBR
,oe.erncd
,oe.OTH_HRS
,oe.OTH_EARNS
from psft88.ps_pay_check pc
join psft88.PS_PAY_EARNINGS pe
on pc.COMPANY = pe.COMPANY
AND pc.PAYGROUP = pe.PAYGROUP
AND pc.PAY_END_DT = pe.PAY_END_DT
and pc.COMPANY = pe.COMPANY
AND pc.PAYGROUP = pe.PayGroup
AND pc.PAY_END_DT = pe.Pay_End_Dt
AND pc.OFF_CYCLE = pe.OFF_CYCLE
AND pc.Page_Num = pe.Page_Num
AND pc.Line_Num = pe.Line_Num
left outer join PSFT88.PS_PAY_OTH_EARNS oe
on pc.COMPANY = pe.COMPANY
AND pc.PAYGROUP = oe.PAYGROUP
AND pc.PAY_END_DT = oe.PAY_END_DT
and pc.COMPANY = oe.COMPANY
AND pc.PAYGROUP = oe.PayGroup
AND pc.PAY_END_DT = oe.Pay_End_Dt
AND pc.OFF_CYCLE = oe.OFF_CYCLE
AND pc.Page_Num = oe.Page_Num
AND pc.Line_Num = oe.Line_Num
and pe.ADDL_NBR = oe.ADDL_NBR
where pc.PAY_END_DT = to_date('2017-12-31','yyyy-mm-dd')
and trim(pc.emplid) = '0079439'

SQL for returning data from table with translations:


SELECT rowidtochar(pe.rowid) as id, trim(pc.EMPLID) as EMPLID, pc.PAY_END_DT
,pc.TOTAL_GROSS
,ERNCD_REG_HRS
,trim(erhc.DESCR) as erndcRegHrsDesc
,pe.REG_HRS + pe.REG_EARN_HRS as Hours
,trim(ERNCD_REG_EARNS)as ERNCD_REG_EARNS
,trim(erec.DESCR) as erncdRegEarnsDesc
,pe.REG_EARNS + pe.REG_HRLY_EARNS as Earnings
,ERNCD_OT_HRS
,trim(eohc.DESCR) as erncdOtHrsDesc
,pe.OT_HRS as Ot_Hrs
,pe.OT_HRLY_EARNS as Ot_Hrly_Earns
,pe.ADDL_NBR
,oe.erncd
,trim(ecd.DESCR) as oeErncdDesc
,oe.OTH_HRS
,oe.OTH_EARNS
PayEarnings Service

from psft88.ps_pay_check pc
join psft88.PS_PAY_EARNINGS pe
on pc.COMPANY = pe.COMPANY
AND pc.PAYGROUP = pe.PAYGROUP
AND pc.PAY_END_DT = pe.PAY_END_DT
and pc.COMPANY = pe.COMPANY
AND pc.PAYGROUP = pe.PayGroup
AND pc.PAY_END_DT = pe.Pay_End_Dt
AND pc.OFF_CYCLE = pe.OFF_CYCLE
AND pc.Page_Num = pe.Page_Num
AND pc.Line_Num = pe.Line_Num
left outer join PSFT88.PS_PAY_OTH_EARNS oe
on pc.COMPANY = pe.COMPANY
AND pc.PAYGROUP = oe.PAYGROUP
AND pc.PAY_END_DT = oe.PAY_END_DT
and pc.COMPANY = oe.COMPANY
AND pc.PAYGROUP = oe.PayGroup
AND pc.PAY_END_DT = oe.Pay_End_Dt
AND pc.OFF_CYCLE = oe.OFF_CYCLE
AND pc.Page_Num = oe.Page_Num
AND pc.Line_Num = oe.Line_Num
and pe.ADDL_NBR = oe.ADDL_NBR
left outer join (select ernCD, DESCR
from PSFT88.PS_EARNINGS_TBL pet
where pet.EFF_STATUS = 'A'
and pet.EFFDT = (select max(effdt)
from PSFT88.PS_earnings_TBL y
where y.EFF_STATUS = 'A'
and y.erncd = pet.erncd)
)erhc
on pe.ERNCD_REG_HRS = erhc.erncd
left outer join (select ernCD, DESCR
from PSFT88.PS_EARNINGS_TBL pet
where pet.EFF_STATUS = 'A'
and pet.EFFDT = (select max(effdt)
from PSFT88.PS_earnings_TBL y
where y.EFF_STATUS = 'A'
and y.erncd = pet.erncd)
)erec
on pe.ERNCD_REG_EARNS = erec.erncd
left outer join (select ernCD, DESCR
from PSFT88.PS_EARNINGS_TBL pet
where pet.EFF_STATUS = 'A'
and pet.EFFDT = (select max(effdt)
from PSFT88.PS_earnings_TBL y
where y.EFF_STATUS = 'A'
and y.erncd = pet.erncd)
)eohc
PayEarnings Service

on pe.ERNCD_OT_HRS = eohc.erncd
left outer join (select ernCD, DESCR
from PSFT88.PS_EARNINGS_TBL pet
where pet.EFF_STATUS = 'A'
and pet.EFFDT = (select max(effdt)
from PSFT88.PS_earnings_TBL y
where y.EFF_STATUS = 'A'
and y.erncd = pet.erncd)
)ecd
on oe.erncd = ecd.ernCD
where pc.PAY_END_DT = to_date('2017-12-31','yyyy-mm-dd')
and trim(pc.emplid) = '0079439'

You might also like