Commit 5fd872fc authored by steurwadkar's avatar steurwadkar

F17ABAS001 source code commit


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@106326 ce508802-f39f-4f6c-b175-0d175dae99d5
parent e4ab5e33
......@@ -409,11 +409,13 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
if("AUTH4033".equalsIgnoreCase(errorJSON.getString("error_cd")))
{
retString = new ITMDBAccessEJB().getErrorString("","VTINVOTP","","",conn);
return retString;
}
else
{
String errMsg = "Message : "+errorJSON.getString("message")+" \nError code : "+errorJSON.getString("error_cd");
retString = getError(errMsg, "GSTAPIERR", conn);
return retString;
}
}
}
......@@ -423,12 +425,14 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
String errMsg = "Message : Error occurred at GSTN server \nResponse code : "+authTokenResp.getStatus();
responseJsonStr = errMsg;
retString = getError(errMsg, "GSTAPIERR", conn);
return retString;
}
else
{
JSONObject errorJSON = authTokenResp.getBody().getObject().getJSONObject("error");
String errMsg = "Message : "+errorJSON.getString("message")+" \nError code : "+errorJSON.getString("error_cd");
retString = getError(errMsg, "GSTAPIERR", conn);
return retString;
}
APICallData apiCallData = new APICallData();
......@@ -474,6 +478,10 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
}
}
}
else
{
}
}
catch(Exception e)
{
......@@ -2096,11 +2104,11 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
if("B2B".equalsIgnoreCase(action))
{
insertB2BInvoiceData(stateCode, periodCode, siteCode, gstr2InvoiceJsonObj, conn);
insertB2BInvoiceData(stateCode, periodCode, siteCode, gstr2InvoiceJsonObj, xtraParams, conn);
}
else if("CDN".equalsIgnoreCase(action))
{
insertCDNData(stateCode, periodCode, siteCode, gstr2InvoiceJsonObj, conn);
insertCDNData(stateCode, periodCode, siteCode, gstr2InvoiceJsonObj, xtraParams, conn);
}
}
else
......@@ -2155,7 +2163,7 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
return retString;
}
private void insertB2BInvoiceData(String stateCode, String periodCode, String siteCode, JSONObject gstr2InvoiceJsonObj, Connection conn) throws ITMException
private void insertB2BInvoiceData(String stateCode, String periodCode, String siteCode, JSONObject gstr2InvoiceJsonObj, String xtraParams, Connection conn) throws ITMException
{
JSONArray b2bInvArry = new JSONArray();
JSONObject b2bJsonObj = new JSONObject();
......@@ -2164,72 +2172,28 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
JSONArray b2bInvLineItmsArry = new JSONArray();
JSONObject b2bInvLineItemObj = new JSONObject();
String tranId = "", cptyGSTIN = "", iNum = "", iDate = "", reversCharge = "", docCheckSum = "", pos = "", invType = "", tranType = "";
String ecomOperetorGSTIN = "";
String ecomOperetorGSTIN = "", loginCode = "", chgTerm = "";
int lineNo;
double amount = 0.0, lineAmt = 0.0, irt = 0.0, iamt = 0.0, crt = 0.0, camt = 0.0, srt = 0.0, samt = 0.0, csamt = 0.0, rate = 0.0;
List<String> hdrColumnList = new ArrayList<String>(), hdrDataTypeList = new ArrayList<String>(), hdrDataList = null;
List<String> detColumnList = new ArrayList<String>(), detDataTypeList = new ArrayList<String>();
List<List<String>> detDataList = null;
int lineNo = 0, hdrInsCnt = 0;
double amount = 0.0, lineAmt = 0.0, irt = 0.0, iamt = 0.0, crt = 0.0, camt = 0.0, srt = 0.0, samt = 0.0, csamt = 0.0, rate = 0.0;
int [] detInsCnt = null;
String hdrInsSql = "", detInsSql = "";
PreparedStatement hdrInsPstmt = null, detInsPstmt = null;
boolean isError = false;
try
{
hdrColumnList.add("TRAN_ID");
hdrColumnList.add("TRAN_DATE");
hdrColumnList.add("REC_TYPE");
hdrColumnList.add("TRAN_TYPE");
hdrColumnList.add("GST_CODE");
hdrColumnList.add("SUBMIT_STATUS");
hdrColumnList.add("DOC_CHECKSUM");
hdrColumnList.add("DOC_NO");
hdrColumnList.add("DOC_DATE");
hdrColumnList.add("AMOUNT");
hdrColumnList.add("REVERSE_CHRG");
hdrColumnList.add("TAX_REG_NO");
hdrColumnList.add("SITE_CODE");
hdrColumnList.add("DOC_TYPE");
hdrColumnList.add("PRD_CODE");
hdrDataTypeList.add("STRING"); //TRAN_ID
hdrDataTypeList.add("TIMESTAMP"); //TRAN_DATE
hdrDataTypeList.add("STRING"); //REC_TYPE
hdrDataTypeList.add("STRING"); //TRAN_TYPE
hdrDataTypeList.add("STRING"); //GST_CODE
hdrDataTypeList.add("STRING"); //SUBMIT_STATUS
hdrDataTypeList.add("STRING"); //DOC_CHECKSUM
hdrDataTypeList.add("STRING"); //DOC_NO
hdrDataTypeList.add("TIMESTAMP"); //DOC_DATE
hdrDataTypeList.add("DOUBLE"); //AMOUNT
hdrDataTypeList.add("STRING"); //REVERSE_CHRG
hdrDataTypeList.add("STRING"); //TAX_REG_NO
hdrDataTypeList.add("STRING"); //SITE_CODE
hdrDataTypeList.add("STRING"); //DOC_TYPE
hdrDataTypeList.add("STRING"); //PRD_CODE
detColumnList.add("TRAN_ID");
detColumnList.add("LINE_NO");
detColumnList.add("TAXABLE_AMT");
detColumnList.add("GST_RATE");
detColumnList.add("IGST_PERC");
detColumnList.add("IGST_AMT");
detColumnList.add("CGST_PERC");
detColumnList.add("CGST_AMT");
detColumnList.add("SGST_PERC");
detColumnList.add("SGST_AMT");
detColumnList.add("CESS_AMT");
loginCode = e12GenericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode");
chgTerm = e12GenericUtility.getValueFromXTRA_PARAMS(xtraParams, "chgTerm");
detDataTypeList.add("STRING"); //TRAN_ID
detDataTypeList.add("INT"); //LINE_NO
detDataTypeList.add("DOUBLE"); //TAXABLE_AMT
detDataTypeList.add("DOUBLE"); //GST_RATE
detDataTypeList.add("DOUBLE"); //IGST_PERC
detDataTypeList.add("DOUBLE"); //IGST_AMT
detDataTypeList.add("DOUBLE"); //CGST_PERC
detDataTypeList.add("DOUBLE"); //CGST_AMT
detDataTypeList.add("DOUBLE"); //SGST_PERC
detDataTypeList.add("DOUBLE"); //SGST_AMT
detDataTypeList.add("DOUBLE"); //CESS_AMT
hdrInsSql = " INSERT INTO GST_DATA_HDR (TRAN_ID, TRAN_DATE, TRAN_ID__REF, SITE_CODE, PRD_CODE, REC_TYPE, TRAN_TYPE, CUST_CODE, CUST_NAME,"
+ " SUBMISSION_TYPE, DOC_CHECKSUM, DOC_TYPE, DOC_NO, DOC_DATE, AMOUNT, REVERSE_CHRG, LR_NO, LR_DATE, REAS_CODE, REF_ID__INV,"
+ " REF_DATE__INV, PROV_ASSMNT, ORDER_NO, ORDER_DATE, REMARKS, SUBMIT_STATUS, SUBMIT_DATE, ADD_USER, ADD_DATE, ADD_TERM, CHG_USER,"
+ " CHG_DATE, CHG_TERM, TAX_REG_NO, RECO_STATUS, ECOM_REG_NO, REF_SER, GST_CODE, GST_TYPE, REF_ID)"
+ " VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
hdrInsPstmt = conn.prepareStatement(hdrInsSql);
b2bInvArry = gstr2InvoiceJsonObj.getJSONArray("b2b");
......@@ -2243,7 +2207,6 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
for(int j=0; j<b2bInvJsonArry.length(); j++)
{
hdrDataList = new ArrayList<String>();
b2bInvJsonObj = b2bInvJsonArry.getJSONObject(j);
iNum = b2bInvJsonObj.getString("inum");
......@@ -2286,32 +2249,70 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
tranType = "09";
}
tranId = generateTranId("w_gstr_purc","","",conn);
hdrDataList.add(tranId);
hdrDataList.add(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateFormat()));
hdrDataList.add("2A");
hdrDataList.add(tranType);
hdrDataList.add(pos);
hdrDataList.add("D");
hdrDataList.add(docCheckSum);
hdrDataList.add(iNum);
hdrDataList.add(iDate);
hdrDataList.add(String.valueOf(amount));
hdrDataList.add(reversCharge);
hdrDataList.add(cptyGSTIN);
hdrDataList.add(siteCode);
hdrDataList.add(invType);
hdrDataList.add(periodCode);
detDataList = new ArrayList<List<String>>();
hdrInsPstmt.setString(1, tranId);
hdrInsPstmt.setTimestamp(2, java.sql.Timestamp.valueOf(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateTimeFormat())));
hdrInsPstmt.setString(3, null);
hdrInsPstmt.setString(4, siteCode);
hdrInsPstmt.setString(5, periodCode);
hdrInsPstmt.setString(6, "2");
hdrInsPstmt.setString(7, tranType);
hdrInsPstmt.setString(8, null);
hdrInsPstmt.setString(9, null);
hdrInsPstmt.setString(10, null);
hdrInsPstmt.setString(11, docCheckSum);
hdrInsPstmt.setString(12, null);
hdrInsPstmt.setString(13, iNum);
hdrInsPstmt.setTimestamp(14, getTimeStamp(iDate));
hdrInsPstmt.setDouble(15, amount);
hdrInsPstmt.setString(16, reversCharge);
hdrInsPstmt.setString(17, null);
hdrInsPstmt.setTimestamp(18, null);
hdrInsPstmt.setString(19, null);
hdrInsPstmt.setString(20, null);
hdrInsPstmt.setTimestamp(21, null);
hdrInsPstmt.setString(22, null);
hdrInsPstmt.setString(23, null);
hdrInsPstmt.setTimestamp(24, null);
hdrInsPstmt.setString(25, null);
hdrInsPstmt.setString(26, "D");
hdrInsPstmt.setTimestamp(27, null);
hdrInsPstmt.setString(28, loginCode);
hdrInsPstmt.setTimestamp(29, java.sql.Timestamp.valueOf(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateTimeFormat())));
hdrInsPstmt.setString(30, chgTerm);
hdrInsPstmt.setString(31, loginCode);
hdrInsPstmt.setTimestamp(32, java.sql.Timestamp.valueOf(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateTimeFormat())));
hdrInsPstmt.setString(33, chgTerm);
hdrInsPstmt.setString(34, cptyGSTIN);
hdrInsPstmt.setString(35, null);
hdrInsPstmt.setString(36, ecomOperetorGSTIN);
hdrInsPstmt.setString(37, null);
hdrInsPstmt.setString(38, stateCode);
hdrInsPstmt.setString(39, null);
hdrInsPstmt.setString(40, null);
hdrInsCnt = hdrInsPstmt.executeUpdate();
if(hdrInsPstmt != null)
{
hdrInsPstmt.close();
hdrInsPstmt = null;
}
System.out.println("header insert count for B2B GSTR2A invoices ["+hdrInsCnt+"]");
detInsSql = " INSERT INTO GST_DATA_DET (TRAN_ID, LINE_NO, STATUS, SR_NO__OLD, LINE_TYPE, GS_CODE, TAXABLE_AMT, IGST_PERC,"
+ " IGST_AMT, CGST_PERC, CGST_AMT, SGST_PERC, SGST_AMT, GS_DESCR, UNIT, QUANTITY, SUPPLY_TYPE, CESS_PERC, CESS_AMT,"
+ " REMARKS, ITC_TYPE, ITC_IGST, ITC_CGST, ITC_SGST, ITC_CESS, GST_RATE)"
+ " VALUES ()";
detInsPstmt = conn.prepareStatement(detInsSql);
b2bInvLineItmsArry = b2bInvJsonObj.getJSONArray("itms");
for(int k=0; k<b2bInvLineItmsArry.length(); k++)
{
List<String> tempList = new ArrayList<String>();
b2bInvLineItemObj = b2bInvLineItmsArry.getJSONObject(k);
lineNo = b2bInvLineItemObj.getInt("num");
......@@ -2335,31 +2336,86 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
srt = rate/2;
}
detInsPstmt.setString(1, tranId);
detInsPstmt.setInt(2, lineNo);
detInsPstmt.setString(3, null);
detInsPstmt.setInt(4, 0);
detInsPstmt.setString(5, null);
detInsPstmt.setString(6, null);
detInsPstmt.setDouble(7, lineAmt);
detInsPstmt.setDouble(8, irt);
detInsPstmt.setDouble(9, iamt);
detInsPstmt.setDouble(10, crt);
detInsPstmt.setDouble(11, camt);
detInsPstmt.setDouble(12, srt);
detInsPstmt.setDouble(13, samt);
detInsPstmt.setString(14, null);
detInsPstmt.setString(15, null);
detInsPstmt.setInt(16, 0);
detInsPstmt.setString(17, null);
detInsPstmt.setDouble(18, 0.0);
detInsPstmt.setDouble(19, csamt);
detInsPstmt.setString(20, null);
detInsPstmt.setString(21, null);
detInsPstmt.setDouble(22, 0.0);
detInsPstmt.setDouble(23, 0.0);
detInsPstmt.setDouble(24, 0.0);
detInsPstmt.setDouble(25, 0.0);
detInsPstmt.setDouble(26, rate);
tempList = new ArrayList<String>();
tempList.add(tranId);
tempList.add(String.valueOf(lineNo));
tempList.add(String.valueOf(lineAmt));
tempList.add(String.valueOf(rate));
tempList.add(String.valueOf(irt));
tempList.add(String.valueOf(iamt));
tempList.add(String.valueOf(crt));
tempList.add(String.valueOf(camt));
tempList.add(String.valueOf(srt));
tempList.add(String.valueOf(samt));
tempList.add(String.valueOf(csamt));
detDataList.add(tempList);
}
insertGSTHdrDetData(hdrColumnList, hdrDataTypeList, hdrDataList, detColumnList, detDataTypeList, detDataList, conn);
detInsPstmt.addBatch();
detInsPstmt.clearParameters();
}
detInsCnt = detInsPstmt.executeBatch();
if(detInsPstmt != null)
{
detInsPstmt.close();
detInsPstmt = null;
}
if(detInsCnt!=null)
{
for(int eachRowCnt : detInsCnt)
{
System.out.println("detail row insert count for B2B GSTR2A invoices ["+eachRowCnt+"]");
}
}
}
}
}
catch (Exception e)
{
isError = true;
System.out.println("GSTDataSubmitWizPos.insertB2BInvoiceData()["+e.getMessage()+"]");
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if(isError)
{
if(hdrInsPstmt != null)
{
hdrInsPstmt.close();
hdrInsPstmt = null;
}
if(detInsPstmt != null)
{
detInsPstmt.close();
detInsPstmt = null;
}
}
}
catch(SQLException se)
{
System.out.println("GSTDataSubmitWizPos.insertB2BInvoiceData()["+se.getMessage()+"]");
se.printStackTrace();
}
}
}
private void insertIMGInvoiceData(String stateCode, String periodCode, String siteCode, JSONObject gstr2InvoiceJsonObj, Connection conn) throws ITMException
{
......@@ -2660,7 +2716,7 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
throw new ITMException(e);
}
}
private void insertCDNData(String stateCode, String periodCode, String siteCode, JSONObject gstr2InvoiceJsonObj, Connection conn) throws ITMException
private void insertCDNData(String stateCode, String periodCode, String siteCode, JSONObject gstr2InvoiceJsonObj, String xtraParams, Connection conn) throws ITMException
{
JSONArray cdnArry = new JSONArray();
JSONObject cdnJsonObj = new JSONObject();
......@@ -2669,74 +2725,28 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
JSONArray cdnInvLineItmsArry = new JSONArray();
JSONObject cdnInvLineItemObj = new JSONObject();
String tranId = "", cptyGSTIN = "", invoiceId = "", invoiceDate = "", docCheckSum = "", tranType = "";
String creditDebitId = "", creditDebitDate = "", creditDebitType = "", reason = "";
String creditDebitId = "", creditDebitDate = "", creditDebitType = "", reason = "", loginCode = "", chgTerm = "";
int lineNo;
int lineNo = 0, hdrInsCnt = 0;
double amount = 0.0, lineAmt = 0.0, irt = 0.0, iamt = 0.0, crt = 0.0, camt = 0.0, srt = 0.0, samt = 0.0, csamt = 0.0, rate = 0.0;
int [] detInsCnt = null;
String hdrInsSql = "", detInsSql = "";
PreparedStatement hdrInsPstmt = null, detInsPstmt = null;
boolean isError = false;
List<String> hdrColumnList = new ArrayList<String>(), hdrDataTypeList = new ArrayList<String>(), hdrDataList = null;
List<String> detColumnList = new ArrayList<String>(), detDataTypeList = new ArrayList<String>();
List<List<String>> detDataList = null;
try
{
hdrColumnList.add("TRAN_ID");
hdrColumnList.add("TRAN_DATE");
hdrColumnList.add("REC_TYPE");
hdrColumnList.add("TRAN_TYPE");
hdrColumnList.add("SUBMIT_STATUS");
hdrColumnList.add("DOC_CHECKSUM");
hdrColumnList.add("DOC_NO");
hdrColumnList.add("DOC_DATE");
hdrColumnList.add("AMOUNT");
hdrColumnList.add("TAX_REG_NO");
hdrColumnList.add("SITE_CODE");
hdrColumnList.add("DOC_TYPE");
hdrColumnList.add("PRD_CODE");
hdrColumnList.add("REAS_CODE");
hdrColumnList.add("REF_ID__INV");
hdrColumnList.add("REF_DATE__INV");
hdrDataTypeList.add("STRING"); //TRAN_ID
hdrDataTypeList.add("TIMESTAMP"); //TRAN_DATE
hdrDataTypeList.add("STRING"); //REC_TYPE
hdrDataTypeList.add("STRING"); //TRAN_TYPE
hdrDataTypeList.add("STRING"); //SUBMIT_STATUS
hdrDataTypeList.add("STRING"); //DOC_CHECKSUM
hdrDataTypeList.add("STRING"); //DOC_NO
hdrDataTypeList.add("TIMESTAMP"); //DOC_DATE
hdrDataTypeList.add("DOUBLE"); //AMOUNT
hdrDataTypeList.add("STRING"); //TAX_REG_NO
hdrDataTypeList.add("STRING"); //SITE_CODE
hdrDataTypeList.add("STRING"); //DOC_TYPE
hdrDataTypeList.add("STRING"); //PRD_CODE
hdrDataTypeList.add("STRING"); //REAS_CODE
hdrDataTypeList.add("STRING"); //REF_ID__INV
hdrDataTypeList.add("TIMESTAMP"); //REF_DATE__INV
loginCode = e12GenericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode");
chgTerm = e12GenericUtility.getValueFromXTRA_PARAMS(xtraParams, "chgTerm");
detColumnList.add("TRAN_ID");
detColumnList.add("LINE_NO");
detColumnList.add("TAXABLE_AMT");
detColumnList.add("GST_RATE");
detColumnList.add("IGST_PERC");
detColumnList.add("IGST_AMT");
detColumnList.add("CGST_PERC");
detColumnList.add("CGST_AMT");
detColumnList.add("SGST_PERC");
detColumnList.add("SGST_AMT");
detColumnList.add("CESS_AMT");
detDataTypeList.add("STRING"); //TRAN_ID
detDataTypeList.add("INT"); //LINE_NO
detDataTypeList.add("DOUBLE"); //TAXABLE_AMT
detDataTypeList.add("DOUBLE"); //GST_RATE
detDataTypeList.add("DOUBLE"); //IGST_PERC
detDataTypeList.add("DOUBLE"); //IGST_AMT
detDataTypeList.add("DOUBLE"); //CGST_PERC
detDataTypeList.add("DOUBLE"); //CGST_AMT
detDataTypeList.add("DOUBLE"); //SGST_PERC
detDataTypeList.add("DOUBLE"); //SGST_AMT
detDataTypeList.add("DOUBLE"); //CESS_AMT
hdrInsSql = " INSERT INTO GST_DATA_HDR (TRAN_ID, TRAN_DATE, TRAN_ID__REF, SITE_CODE, PRD_CODE, REC_TYPE, TRAN_TYPE, CUST_CODE, CUST_NAME,"
+ " SUBMISSION_TYPE, DOC_CHECKSUM, DOC_TYPE, DOC_NO, DOC_DATE, AMOUNT, REVERSE_CHRG, LR_NO, LR_DATE, REAS_CODE, REF_ID__INV,"
+ " REF_DATE__INV, PROV_ASSMNT, ORDER_NO, ORDER_DATE, REMARKS, SUBMIT_STATUS, SUBMIT_DATE, ADD_USER, ADD_DATE, ADD_TERM, CHG_USER,"
+ " CHG_DATE, CHG_TERM, TAX_REG_NO, RECO_STATUS, ECOM_REG_NO, REF_SER, GST_CODE, GST_TYPE, REF_ID)"
+ " VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
hdrInsPstmt = conn.prepareStatement(hdrInsSql);
cdnArry = gstr2InvoiceJsonObj.getJSONArray("cdn");
......@@ -2750,7 +2760,6 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
for(int j=0; j<cdnJsonArry.length(); j++)
{
hdrDataList = new ArrayList<String>();
cdnDataJsonObj = cdnJsonArry.getJSONObject(j);
creditDebitId = cdnDataJsonObj.getString("nt_num");
......@@ -2773,29 +2782,68 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
tranId = generateTranId("w_gstr_purc","","",conn);
hdrDataList.add(tranId);
hdrDataList.add(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateFormat()));
hdrDataList.add("2A");
hdrDataList.add(tranType);
hdrDataList.add("D");
hdrDataList.add(docCheckSum);
hdrDataList.add(creditDebitId);
hdrDataList.add(creditDebitDate);
hdrDataList.add(String.valueOf(amount));
hdrDataList.add(cptyGSTIN);
hdrDataList.add(siteCode);
hdrDataList.add(periodCode);
hdrDataList.add(reason);
hdrDataList.add(invoiceId);
hdrDataList.add(invoiceDate);
detDataList = new ArrayList<List<String>>();
hdrInsPstmt.setString(1, tranId);
hdrInsPstmt.setTimestamp(2, java.sql.Timestamp.valueOf(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateTimeFormat())));
hdrInsPstmt.setString(3, null);
hdrInsPstmt.setString(4, siteCode);
hdrInsPstmt.setString(5, periodCode);
hdrInsPstmt.setString(6, "2");
hdrInsPstmt.setString(7, tranType);
hdrInsPstmt.setString(8, null);
hdrInsPstmt.setString(9, null);
hdrInsPstmt.setString(10, null);
hdrInsPstmt.setString(11, docCheckSum);
hdrInsPstmt.setString(12, null);
hdrInsPstmt.setString(13, creditDebitId);
hdrInsPstmt.setTimestamp(14, getTimeStamp(creditDebitDate));
hdrInsPstmt.setDouble(15, amount);
hdrInsPstmt.setString(16, null);
hdrInsPstmt.setString(17, null);
hdrInsPstmt.setTimestamp(18, null);
hdrInsPstmt.setString(19, reason);
hdrInsPstmt.setString(20, invoiceId);
hdrInsPstmt.setTimestamp(21, getTimeStamp(invoiceDate));
hdrInsPstmt.setString(22, null);
hdrInsPstmt.setString(23, null);
hdrInsPstmt.setTimestamp(24, null);
hdrInsPstmt.setString(25, null);
hdrInsPstmt.setString(26, "D");
hdrInsPstmt.setTimestamp(27, null);
hdrInsPstmt.setString(28, loginCode);
hdrInsPstmt.setTimestamp(29, java.sql.Timestamp.valueOf(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateTimeFormat())));
hdrInsPstmt.setString(30, chgTerm);
hdrInsPstmt.setString(31, loginCode);
hdrInsPstmt.setTimestamp(32, java.sql.Timestamp.valueOf(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateTimeFormat())));
hdrInsPstmt.setString(33, chgTerm);
hdrInsPstmt.setString(34, cptyGSTIN);
hdrInsPstmt.setString(35, null);
hdrInsPstmt.setString(36, null);
hdrInsPstmt.setString(37, null);
hdrInsPstmt.setString(38, stateCode);
hdrInsPstmt.setString(39, null);
hdrInsPstmt.setString(40, null);
hdrInsCnt = hdrInsPstmt.executeUpdate();
if(hdrInsPstmt != null)
{
hdrInsPstmt.close();
hdrInsPstmt = null;
}
System.out.println("header insert count for Credit/Debit note["+hdrInsCnt+"]");
detInsSql = " INSERT INTO GST_DATA_DET (TRAN_ID, LINE_NO, STATUS, SR_NO__OLD, LINE_TYPE, GS_CODE, TAXABLE_AMT, IGST_PERC,"
+ " IGST_AMT, CGST_PERC, CGST_AMT, SGST_PERC, SGST_AMT, GS_DESCR, UNIT, QUANTITY, SUPPLY_TYPE, CESS_PERC, CESS_AMT,"
+ " REMARKS, ITC_TYPE, ITC_IGST, ITC_CGST, ITC_SGST, ITC_CESS, GST_RATE)"
+ " VALUES ()";
detInsPstmt = conn.prepareStatement(detInsSql);
cdnInvLineItmsArry = cdnDataJsonObj.getJSONArray("itms");
for(int k=0; k<cdnInvLineItmsArry.length(); k++)
{
List<String> tempList = new ArrayList<String>();
cdnInvLineItemObj = cdnInvLineItmsArry.getJSONObject(k);
lineNo = cdnInvLineItemObj.getInt("num");
......@@ -2819,31 +2867,86 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
srt = rate/2;
}
tempList = new ArrayList<String>();
tempList.add(tranId);
tempList.add(String.valueOf(lineNo));
tempList.add(String.valueOf(lineAmt));
tempList.add(String.valueOf(rate));
tempList.add(String.valueOf(irt));
tempList.add(String.valueOf(iamt));
tempList.add(String.valueOf(crt));
tempList.add(String.valueOf(camt));
tempList.add(String.valueOf(srt));
tempList.add(String.valueOf(samt));
tempList.add(String.valueOf(csamt));
detInsPstmt.setString(1, tranId);
detInsPstmt.setInt(2, lineNo);
detInsPstmt.setString(3, null);
detInsPstmt.setInt(4, 0);
detInsPstmt.setString(5, null);
detInsPstmt.setString(6, null);
detInsPstmt.setDouble(7, lineAmt);
detInsPstmt.setDouble(8, irt);
detInsPstmt.setDouble(9, iamt);
detInsPstmt.setDouble(10, crt);
detInsPstmt.setDouble(11, camt);
detInsPstmt.setDouble(12, srt);
detInsPstmt.setDouble(13, samt);
detInsPstmt.setString(14, null);
detInsPstmt.setString(15, null);
detInsPstmt.setInt(16, 0);
detInsPstmt.setString(17, null);
detInsPstmt.setDouble(18, 0.0);
detInsPstmt.setDouble(19, csamt);
detInsPstmt.setString(20, null);
detInsPstmt.setString(21, null);
detInsPstmt.setDouble(22, 0.0);
detInsPstmt.setDouble(23, 0.0);
detInsPstmt.setDouble(24, 0.0);
detInsPstmt.setDouble(25, 0.0);
detInsPstmt.setDouble(26, rate);
detDataList.add(tempList);
detInsPstmt.addBatch();
detInsPstmt.clearParameters();
}
detInsCnt = detInsPstmt.executeBatch();
if(detInsPstmt != null)
{
detInsPstmt.close();
detInsPstmt = null;
}
if(detInsCnt!=null)
{
for(int eachRowCnt : detInsCnt)
{
System.out.println("detail row insert count for Credit/Debit note ["+eachRowCnt+"]");
}
}
insertGSTHdrDetData(hdrColumnList, hdrDataTypeList, hdrDataList, detColumnList, detDataTypeList, detDataList, conn);
}
}
}
catch (Exception e)
{
isError = true;
System.out.println("GSTDataSubmitWizPos.insertCDNData()["+e.getMessage()+"]");
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if(isError)
{
if(hdrInsPstmt != null)
{
hdrInsPstmt.close();
hdrInsPstmt = null;
}
if(detInsPstmt != null)
{
detInsPstmt.close();
detInsPstmt = null;
}
}
}
catch(SQLException se)
{
System.out.println("GSTDataSubmitWizPos.insertCDNData()["+se.getMessage()+"]");
se.printStackTrace();
}
}
}
private void insertNILData(String stateCode, String periodCode, String siteCode, JSONObject gstr2InvoiceJsonObj, Connection conn) throws ITMException
{
......@@ -3560,5 +3663,27 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
}
return tranId;
}
private java.sql.Timestamp getTimeStamp(String dateStr) throws ITMException, Exception
{
String dbDateStr = "";
if(dateStr != null && !dateStr.equals(""))
{
if(dateStr.indexOf(":") != -1)
{
System.out.println("inside logic"+dateStr);
return java.sql.Timestamp.valueOf(dateStr);
}
else
{
System.out.println("inside ");
dbDateStr =(new E12GenericUtility()).getValidDateTimeString(dateStr, (new E12GenericUtility()).getApplDateTimeFormat(), (new E12GenericUtility()).getDBDateTimeFormat());
return java.sql.Timestamp.valueOf(dbDateStr);
}
}
else
{
return null;
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment