Skip to content

Commit

Permalink
Merge pull request #28 from transcom/b-21327-processing-fix
Browse files Browse the repository at this point in the history
B 21327 processing fix
  • Loading branch information
cameroncaci authored Oct 11, 2024
2 parents d03a7df + 032f7fe commit 5006a28
Show file tree
Hide file tree
Showing 9 changed files with 356 additions and 131 deletions.
26 changes: 26 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -357,6 +357,32 @@ workflows:
filters:
branches:
only: main
- approve:
name: approve before production release
type: approval
context:
- Workflow Approvers
requires:
- upload and set ssm param for stg
filters:
branches:
only: main
- auth_check:
name: auth check before production release
requires:
- approve before production release
filters:
branches:
only: main
- upload_and_set_ssm_version_control_param:
environment: prd
name: upload and set ssm param for prd
requires:
- auth check before production release
filters:
branches:
only: main

# Awaiting further security review and permissions
# - plan:
# name: terraform plan for exp
Expand Down
4 changes: 2 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
</parent>
<groupId>com.milmove.trdmlambda</groupId>
<artifactId>trdm-lambda</artifactId>
<version>1.0.3.17</version>
<version>1.0.3.18</version>
<name>trdm java spring interface</name>
<description>Project for deploying a Java TRDM interfacer for TGET data.</description>
<properties>
Expand Down Expand Up @@ -189,4 +189,4 @@
</plugin>
</plugins>
</build>
</project>
</project>
Original file line number Diff line number Diff line change
Expand Up @@ -123,33 +123,47 @@ private LineOfAccounting processLineIntoLOA(String[] values, Map<String, Integer

try {
LineOfAccounting loa = new LineOfAccounting();
loa.setLoaSysID(values[columnHeaders.get("LOA_SYS_ID")]);
loa.setLoaDptID(values[columnHeaders.get("LOA_DPT_ID")]);
loa.setLoaTnsfrDptNm(values[columnHeaders.get("LOA_TNSFR_DPT_NM")]);
loa.setLoaBafID(values[columnHeaders.get("LOA_BAF_ID")]);
loa.setLoaTrsySfxTx(values[columnHeaders.get("LOA_TRSY_SFX_TX")]);
loa.setLoaMajClmNm(values[columnHeaders.get("LOA_MAJ_CLM_NM")]);
loa.setLoaOpAgncyID(values[columnHeaders.get("LOA_OP_AGNCY_ID")]);
loa.setLoaAlltSnID(values[columnHeaders.get("LOA_ALLT_SN_ID")]);
loa.setLoaPgmElmntID(values[columnHeaders.get("LOA_PGM_ELMNT_ID")]);
loa.setLoaTskBdgtSblnTx(values[columnHeaders.get("LOA_TSK_BDGT_SBLN_TX")]);
loa.setLoaDfAgncyAlctnRcpntID(values[columnHeaders.get("LOA_DF_AGNCY_ALCTN_RCPNT_ID")]);
loa.setLoaJbOrdNm(values[columnHeaders.get("LOA_JB_ORD_NM")]);
loa.setLoaSbaltmtRcpntID(values[columnHeaders.get("LOA_SBALTMT_RCPNT_ID")]);
loa.setLoaWkCntrRcpntNm(values[columnHeaders.get("LOA_WK_CNTR_RCPNT_NM")]);
loa.setLoaMajRmbsmtSrcID(values[columnHeaders.get("LOA_MAJ_RMBSMT_SRC_ID")]);
loa.setLoaDtlRmbsmtSrcID(values[columnHeaders.get("LOA_DTL_RMBSMT_SRC_ID")]);
loa.setLoaCustNm(values[columnHeaders.get("LOA_CUST_NM")]);
loa.setLoaObjClsID(values[columnHeaders.get("LOA_OBJ_CLS_ID")]);
loa.setLoaSrvSrcID(values[columnHeaders.get("LOA_SRV_SRC_ID")]);
loa.setLoaSpclIntrID(values[columnHeaders.get("LOA_SPCL_INTR_ID")]);
loa.setLoaBdgtAcntClsNm(values[columnHeaders.get("LOA_BDGT_ACNT_CLS_NM")]);
loa.setLoaDocID(values[columnHeaders.get("LOA_DOC_ID")]);
loa.setLoaClsRefID(values[columnHeaders.get("LOA_CLS_REF_ID")]);
loa.setLoaInstlAcntgActID(values[columnHeaders.get("LOA_INSTL_ACNTG_ACT_ID")]);
loa.setLoaLclInstlID(values[columnHeaders.get("LOA_LCL_INSTL_ID")]);
loa.setLoaFmsTrnsactnID(values[columnHeaders.get("LOA_FMS_TRNSACTN_ID")]);
loa.setLoaDscTx(values[columnHeaders.get("LOA_DSC_TX")]);
loa.setLoaSysID((String) getDelimitedValue(values[columnHeaders.get("LOA_SYS_ID")]));
loa.setLoaDptID((String) getDelimitedValue(values[columnHeaders.get("LOA_DPT_ID")]));
loa.setLoaTnsfrDptNm(
(String) getDelimitedValue(values[columnHeaders.get("LOA_TNSFR_DPT_NM")]));
loa.setLoaBafID((String) getDelimitedValue(values[columnHeaders.get("LOA_BAF_ID")]));
loa.setLoaTrsySfxTx((String) getDelimitedValue(values[columnHeaders.get("LOA_TRSY_SFX_TX")]));
loa.setLoaMajClmNm((String) getDelimitedValue(values[columnHeaders.get("LOA_MAJ_CLM_NM")]));
loa.setLoaOpAgncyID((String) getDelimitedValue(values[columnHeaders.get("LOA_OP_AGNCY_ID")]));
loa.setLoaAlltSnID((String) getDelimitedValue(values[columnHeaders.get("LOA_ALLT_SN_ID")]));
loa.setLoaPgmElmntID(
(String) getDelimitedValue(values[columnHeaders.get("LOA_PGM_ELMNT_ID")]));
loa.setLoaTskBdgtSblnTx(
(String) getDelimitedValue(values[columnHeaders.get("LOA_TSK_BDGT_SBLN_TX")]));
loa.setLoaDfAgncyAlctnRcpntID(
(String) getDelimitedValue(values[columnHeaders.get("LOA_DF_AGNCY_ALCTN_RCPNT_ID")]));
loa.setLoaJbOrdNm((String) getDelimitedValue(values[columnHeaders.get("LOA_JB_ORD_NM")]));
loa.setLoaSbaltmtRcpntID(
(String) getDelimitedValue(values[columnHeaders.get("LOA_SBALTMT_RCPNT_ID")]));
loa.setLoaWkCntrRcpntNm(
(String) getDelimitedValue(values[columnHeaders.get("LOA_WK_CNTR_RCPNT_NM")]));
loa.setLoaMajRmbsmtSrcID(
(String) getDelimitedValue(values[columnHeaders.get("LOA_MAJ_RMBSMT_SRC_ID")]));
loa.setLoaDtlRmbsmtSrcID(
(String) getDelimitedValue(values[columnHeaders.get("LOA_DTL_RMBSMT_SRC_ID")]));
loa.setLoaCustNm((String) getDelimitedValue(values[columnHeaders.get("LOA_CUST_NM")]));
loa.setLoaObjClsID((String) getDelimitedValue(values[columnHeaders.get("LOA_OBJ_CLS_ID")]));
loa.setLoaSrvSrcID((String) getDelimitedValue(values[columnHeaders.get("LOA_SRV_SRC_ID")]));
loa.setLoaSpclIntrID(
(String) getDelimitedValue(values[columnHeaders.get("LOA_SPCL_INTR_ID")]));
loa.setLoaBdgtAcntClsNm(
(String) getDelimitedValue(values[columnHeaders.get("LOA_BDGT_ACNT_CLS_NM")]));
loa.setLoaDocID((String) getDelimitedValue(values[columnHeaders.get("LOA_DOC_ID")]));
loa.setLoaClsRefID((String) getDelimitedValue(values[columnHeaders.get("LOA_CLS_REF_ID")]));
loa.setLoaInstlAcntgActID(
(String) getDelimitedValue(values[columnHeaders.get("LOA_INSTL_ACNTG_ACT_ID")]));
loa.setLoaLclInstlID(
(String) getDelimitedValue(values[columnHeaders.get("LOA_LCL_INSTL_ID")]));
loa.setLoaFmsTrnsactnID(
(String) getDelimitedValue(values[columnHeaders.get("LOA_FMS_TRNSACTN_ID")]));
loa.setLoaDscTx((String) getDelimitedValue(values[columnHeaders.get("LOA_DSC_TX")]));

if (values[columnHeaders.get("LOA_BGN_DT")] != null) {
LocalDateTime beginDate = LocalDateTime.parse(values[columnHeaders.get("LOA_BGN_DT")],
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
Expand All @@ -160,30 +174,40 @@ private LineOfAccounting processLineIntoLOA(String[] values, Map<String, Integer
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
loa.setLoaEndDt(endDate);
}
loa.setLoaFnctPrsNm(values[columnHeaders.get("LOA_FNCT_PRS_NM")]);
loa.setLoaStatCd(values[columnHeaders.get("LOA_STAT_CD")]);
loa.setLoaHistStatCd(values[columnHeaders.get("LOA_HIST_STAT_CD")]);
loa.setLoaHsGdsCd(values[columnHeaders.get("LOA_HS_GDS_CD")]);
loa.setOrgGrpDfasCd(values[columnHeaders.get("ORG_GRP_DFAS_CD")]);
loa.setLoaUic(values[columnHeaders.get("LOA_UIC")]);
loa.setLoaTrnsnID(values[columnHeaders.get("LOA_TRNSN_ID")]);
loa.setLoaSubAcntID(values[columnHeaders.get("LOA_SUB_ACNT_ID")]);
loa.setLoaBetCd(values[columnHeaders.get("LOA_BET_CD")]);
loa.setLoaFndTyFgCd(values[columnHeaders.get("LOA_FND_TY_FG_CD")]);
loa.setLoaBgtLnItmID(values[columnHeaders.get("LOA_BGT_LN_ITM_ID")]);
loa.setLoaScrtyCoopImplAgncCd(values[columnHeaders.get("LOA_SCRTY_COOP_IMPL_AGNC_CD")]);
loa.setLoaScrtyCoopDsgntrCd(values[columnHeaders.get("LOA_SCRTY_COOP_DSGNTR_CD")]);
loa.setLoaScrtyCoopLnItmID(values[columnHeaders.get("LOA_SCRTY_COOP_LN_ITM_ID")]);
loa.setLoaAgncDsbrCd(values[columnHeaders.get("LOA_AGNC_DSBR_CD")]);
loa.setLoaAgncAcntngCd(values[columnHeaders.get("LOA_AGNC_ACNTNG_CD")]);
loa.setLoaFndCntrID(values[columnHeaders.get("LOA_FND_CNTR_ID")]);
loa.setLoaCstCntrID(values[columnHeaders.get("LOA_CST_CNTR_ID")]);
loa.setLoaPrjID(values[columnHeaders.get("LOA_PRJ_ID")]);
loa.setLoaActvtyID(values[columnHeaders.get("LOA_ACTVTY_ID")]);
loa.setLoaCstCd(values[columnHeaders.get("LOA_CST_CD")]);
loa.setLoaWrkOrdID(values[columnHeaders.get("LOA_WRK_ORD_ID")]);
loa.setLoaFnclArID(values[columnHeaders.get("LOA_FNCL_AR_ID")]);
loa.setLoaScrtyCoopCustCd(values[columnHeaders.get("LOA_SCRTY_COOP_CUST_CD")]);
loa.setLoaFnctPrsNm((String) getDelimitedValue(values[columnHeaders.get("LOA_FNCT_PRS_NM")]));
loa.setLoaStatCd((String) getDelimitedValue(values[columnHeaders.get("LOA_STAT_CD")]));
loa.setLoaHistStatCd(
(String) getDelimitedValue(values[columnHeaders.get("LOA_HIST_STAT_CD")]));
loa.setLoaHsGdsCd((String) getDelimitedValue(values[columnHeaders.get("LOA_HS_GDS_CD")]));
loa.setOrgGrpDfasCd((String) getDelimitedValue(values[columnHeaders.get("ORG_GRP_DFAS_CD")]));
loa.setLoaUic((String) getDelimitedValue(values[columnHeaders.get("LOA_UIC")]));
loa.setLoaTrnsnID((String) getDelimitedValue(values[columnHeaders.get("LOA_TRNSN_ID")]));
loa.setLoaSubAcntID((String) getDelimitedValue(values[columnHeaders.get("LOA_SUB_ACNT_ID")]));
loa.setLoaBetCd((String) getDelimitedValue(values[columnHeaders.get("LOA_BET_CD")]));
loa.setLoaFndTyFgCd(
(String) getDelimitedValue(values[columnHeaders.get("LOA_FND_TY_FG_CD")]));
loa.setLoaBgtLnItmID(
(String) getDelimitedValue(values[columnHeaders.get("LOA_BGT_LN_ITM_ID")]));
loa.setLoaScrtyCoopImplAgncCd(
(String) getDelimitedValue(values[columnHeaders.get("LOA_SCRTY_COOP_IMPL_AGNC_CD")]));
loa.setLoaScrtyCoopDsgntrCd(
(String) getDelimitedValue(values[columnHeaders.get("LOA_SCRTY_COOP_DSGNTR_CD")]));
loa.setLoaScrtyCoopLnItmID(
(String) getDelimitedValue(values[columnHeaders.get("LOA_SCRTY_COOP_LN_ITM_ID")]));
loa.setLoaAgncDsbrCd(
(String) getDelimitedValue(values[columnHeaders.get("LOA_AGNC_DSBR_CD")]));
loa.setLoaAgncAcntngCd(
(String) getDelimitedValue(values[columnHeaders.get("LOA_AGNC_ACNTNG_CD")]));
loa.setLoaFndCntrID((String) getDelimitedValue(values[columnHeaders.get("LOA_FND_CNTR_ID")]));
loa.setLoaCstCntrID((String) getDelimitedValue(values[columnHeaders.get("LOA_CST_CNTR_ID")]));
loa.setLoaPrjID((String) getDelimitedValue(values[columnHeaders.get("LOA_PRJ_ID")]));
loa.setLoaActvtyID((String) getDelimitedValue(values[columnHeaders.get("LOA_ACTVTY_ID")]));
loa.setLoaCstCd((String) getDelimitedValue(values[columnHeaders.get("LOA_CST_CD")]));
loa.setLoaWrkOrdID((String) getDelimitedValue(values[columnHeaders.get("LOA_WRK_ORD_ID")]));
loa.setLoaFnclArID((String) getDelimitedValue(values[columnHeaders.get("LOA_FNCL_AR_ID")]));
loa.setLoaScrtyCoopCustCd(
(String) getDelimitedValue(values[columnHeaders.get("LOA_SCRTY_COOP_CUST_CD")]));

String loaEndFyTxValue = values[columnHeaders.get("LOA_END_FY_TX")];
if (!loaEndFyTxValue.equals("")) {
loa.setLoaEndFyTx(Integer.parseInt(loaEndFyTxValue));
Expand All @@ -196,8 +220,9 @@ private LineOfAccounting processLineIntoLOA(String[] values, Map<String, Integer
} else {
loa.setLoaBgFyTx(null);
}
loa.setLoaBgtRstrCd(values[columnHeaders.get("LOA_BGT_RSTR_CD")]);
loa.setLoaBgtSubActCd(values[columnHeaders.get("LOA_BGT_SUB_ACT_CD")]);
loa.setLoaBgtRstrCd((String) getDelimitedValue(values[columnHeaders.get("LOA_BGT_RSTR_CD")]));
loa.setLoaBgtSubActCd(
(String) getDelimitedValue(values[columnHeaders.get("LOA_BGT_SUB_ACT_CD")]));
loa.setUpdatedAt(convertXMLGregorianCalendarToLocalDateTime(lastLoaUpdate));
return loa;
} catch (DateTimeParseException e) {
Expand All @@ -218,4 +243,11 @@ public ArrayList<String> getMalformedLoaList() {
return malformedLoaSysIds;
}

}
// Helper function to to support null and trimming from the file
private Object getDelimitedValue(String value) {
if (value == null || value.trim().isEmpty()) {
return null;
}
return value.trim();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -117,28 +117,28 @@ private TransportationAccountingCode processLineIntoTAC(String[] values, Map<Str
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));

TransportationAccountingCode code = new TransportationAccountingCode();
code.setTacSysID(values[columnHeaders.get("TAC_SYS_ID")]);
code.setLoaSysID(values[columnHeaders.get("LOA_SYS_ID")]);
code.setTac(values[columnHeaders.get("TRNSPRTN_ACNT_CD")]);
code.setTacFyTxt(values[columnHeaders.get("TAC_FY_TXT")]);
code.setTacFnBlModCd(values[columnHeaders.get("TAC_FN_BL_MOD_CD")]);
code.setOrgGrpDfasCd(values[columnHeaders.get("ORG_GRP_DFAS_CD")]);
code.setTacMvtDsgID(values[columnHeaders.get("TAC_MVT_DSG_ID")]);
code.setTacTyCd(values[columnHeaders.get("TAC_TY_CD")]);
code.setTacUseCd(values[columnHeaders.get("TAC_USE_CD")]);
code.setTacMajClmtID(values[columnHeaders.get("TAC_MAJ_CLMT_ID")]);
code.setTacBillActTxt(values[columnHeaders.get("TAC_BILL_ACT_TXT")]);
code.setTacCostCtrNm(values[columnHeaders.get("TAC_COST_CTR_NM")]);
code.setBuic(values[columnHeaders.get("BUIC")]);
code.setTacHistCd(values[columnHeaders.get("TAC_HIST_CD")]);
code.setTacStatCd(values[columnHeaders.get("TAC_STAT_CD")]);
code.setTrnsprtnAcntTx(values[columnHeaders.get("TRNSPRTN_ACNT_TX")]);
code.setDdActvtyAdrsID(values[columnHeaders.get("DD_ACTVTY_ADRS_ID")]);
code.setTacBlldAddFrstLnTx(values[columnHeaders.get("TAC_BLLD_ADD_FRST_LN_TX")]);
code.setTacBlldAddScndLnTx(values[columnHeaders.get("TAC_BLLD_ADD_SCND_LN_TX")]);
code.setTacBlldAddThrdLnTx(values[columnHeaders.get("TAC_BLLD_ADD_THRD_LN_TX")]);
code.setTacBlldAddFrthLnTx(values[columnHeaders.get("TAC_BLLD_ADD_FRTH_LN_TX")]);
code.setTacFnctPocNm(values[columnHeaders.get("TAC_FNCT_POC_NM")]);
code.setTacSysID((String) getDelimitedValue(values[columnHeaders.get("TAC_SYS_ID")]));
code.setLoaSysID((String) getDelimitedValue(values[columnHeaders.get("LOA_SYS_ID")]));
code.setTac((String) getDelimitedValue(values[columnHeaders.get("TRNSPRTN_ACNT_CD")]));
code.setTacFyTxt((String) getDelimitedValue(values[columnHeaders.get("TAC_FY_TXT")]));
code.setTacFnBlModCd((String) getDelimitedValue(values[columnHeaders.get("TAC_FN_BL_MOD_CD")]));
code.setOrgGrpDfasCd((String) getDelimitedValue(values[columnHeaders.get("ORG_GRP_DFAS_CD")]));
code.setTacMvtDsgID((String) getDelimitedValue(values[columnHeaders.get("TAC_MVT_DSG_ID")]));
code.setTacTyCd((String) getDelimitedValue(values[columnHeaders.get("TAC_TY_CD")]));
code.setTacUseCd((String) getDelimitedValue(values[columnHeaders.get("TAC_USE_CD")]));
code.setTacMajClmtID((String) getDelimitedValue(values[columnHeaders.get("TAC_MAJ_CLMT_ID")]));
code.setTacBillActTxt((String) getDelimitedValue(values[columnHeaders.get("TAC_BILL_ACT_TXT")]));
code.setTacCostCtrNm((String) getDelimitedValue(values[columnHeaders.get("TAC_COST_CTR_NM")]));
code.setBuic((String) getDelimitedValue(values[columnHeaders.get("BUIC")]));
code.setTacHistCd((String) getDelimitedValue(values[columnHeaders.get("TAC_HIST_CD")]));
code.setTacStatCd((String) getDelimitedValue(values[columnHeaders.get("TAC_STAT_CD")]));
code.setTrnsprtnAcntTx((String) getDelimitedValue(values[columnHeaders.get("TRNSPRTN_ACNT_TX")]));
code.setDdActvtyAdrsID((String) getDelimitedValue(values[columnHeaders.get("DD_ACTVTY_ADRS_ID")]));
code.setTacBlldAddFrstLnTx((String) getDelimitedValue(values[columnHeaders.get("TAC_BLLD_ADD_FRST_LN_TX")]));
code.setTacBlldAddScndLnTx((String) getDelimitedValue(values[columnHeaders.get("TAC_BLLD_ADD_SCND_LN_TX")]));
code.setTacBlldAddThrdLnTx((String) getDelimitedValue(values[columnHeaders.get("TAC_BLLD_ADD_THRD_LN_TX")]));
code.setTacBlldAddFrthLnTx((String) getDelimitedValue(values[columnHeaders.get("TAC_BLLD_ADD_FRTH_LN_TX")]));
code.setTacFnctPocNm((String) getDelimitedValue(values[columnHeaders.get("TAC_FNCT_POC_NM")]));
code.setTrnsprtnAcntBgnDt(effectiveDate);
code.setTrnsprtnAcntEndDt(expiredDate);
code.setUpdatedAt(convertXMLGregorianCalendarToLocalDateTime(trdmLastUpdate));
Expand All @@ -161,4 +161,11 @@ public ArrayList<String> getMalformedTacList() {
return malformedTacSysIds;
}

}
// Helper function to support null and trimming from the file
private Object getDelimitedValue(String value) {
if (value == null || value.trim().isEmpty()) {
return null;
}
return value.trim();
}
}
Loading

0 comments on commit 5006a28

Please sign in to comment.