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 ...@@ -409,11 +409,13 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
if("AUTH4033".equalsIgnoreCase(errorJSON.getString("error_cd"))) if("AUTH4033".equalsIgnoreCase(errorJSON.getString("error_cd")))
{ {
retString = new ITMDBAccessEJB().getErrorString("","VTINVOTP","","",conn); retString = new ITMDBAccessEJB().getErrorString("","VTINVOTP","","",conn);
return retString;
} }
else else
{ {
String errMsg = "Message : "+errorJSON.getString("message")+" \nError code : "+errorJSON.getString("error_cd"); String errMsg = "Message : "+errorJSON.getString("message")+" \nError code : "+errorJSON.getString("error_cd");
retString = getError(errMsg, "GSTAPIERR", conn); retString = getError(errMsg, "GSTAPIERR", conn);
return retString;
} }
} }
} }
...@@ -423,12 +425,14 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -423,12 +425,14 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
String errMsg = "Message : Error occurred at GSTN server \nResponse code : "+authTokenResp.getStatus(); String errMsg = "Message : Error occurred at GSTN server \nResponse code : "+authTokenResp.getStatus();
responseJsonStr = errMsg; responseJsonStr = errMsg;
retString = getError(errMsg, "GSTAPIERR", conn); retString = getError(errMsg, "GSTAPIERR", conn);
return retString;
} }
else else
{ {
JSONObject errorJSON = authTokenResp.getBody().getObject().getJSONObject("error"); JSONObject errorJSON = authTokenResp.getBody().getObject().getJSONObject("error");
String errMsg = "Message : "+errorJSON.getString("message")+" \nError code : "+errorJSON.getString("error_cd"); String errMsg = "Message : "+errorJSON.getString("message")+" \nError code : "+errorJSON.getString("error_cd");
retString = getError(errMsg, "GSTAPIERR", conn); retString = getError(errMsg, "GSTAPIERR", conn);
return retString;
} }
APICallData apiCallData = new APICallData(); APICallData apiCallData = new APICallData();
...@@ -474,6 +478,10 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -474,6 +478,10 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
} }
} }
} }
else
{
}
} }
catch(Exception e) catch(Exception e)
{ {
...@@ -2096,11 +2104,11 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -2096,11 +2104,11 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
if("B2B".equalsIgnoreCase(action)) if("B2B".equalsIgnoreCase(action))
{ {
insertB2BInvoiceData(stateCode, periodCode, siteCode, gstr2InvoiceJsonObj, conn); insertB2BInvoiceData(stateCode, periodCode, siteCode, gstr2InvoiceJsonObj, xtraParams, conn);
} }
else if("CDN".equalsIgnoreCase(action)) else if("CDN".equalsIgnoreCase(action))
{ {
insertCDNData(stateCode, periodCode, siteCode, gstr2InvoiceJsonObj, conn); insertCDNData(stateCode, periodCode, siteCode, gstr2InvoiceJsonObj, xtraParams, conn);
} }
} }
else else
...@@ -2155,7 +2163,7 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -2155,7 +2163,7 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
return retString; 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(); JSONArray b2bInvArry = new JSONArray();
JSONObject b2bJsonObj = new JSONObject(); JSONObject b2bJsonObj = new JSONObject();
...@@ -2164,72 +2172,28 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -2164,72 +2172,28 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
JSONArray b2bInvLineItmsArry = new JSONArray(); JSONArray b2bInvLineItmsArry = new JSONArray();
JSONObject b2bInvLineItemObj = new JSONObject(); JSONObject b2bInvLineItemObj = new JSONObject();
String tranId = "", cptyGSTIN = "", iNum = "", iDate = "", reversCharge = "", docCheckSum = "", pos = "", invType = "", tranType = ""; String tranId = "", cptyGSTIN = "", iNum = "", iDate = "", reversCharge = "", docCheckSum = "", pos = "", invType = "", tranType = "";
String ecomOperetorGSTIN = ""; String ecomOperetorGSTIN = "", 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; 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; int [] detInsCnt = null;
List<String> detColumnList = new ArrayList<String>(), detDataTypeList = new ArrayList<String>();
List<List<String>> detDataList = null; String hdrInsSql = "", detInsSql = "";
PreparedStatement hdrInsPstmt = null, detInsPstmt = null;
boolean isError = false;
try try
{ {
hdrColumnList.add("TRAN_ID"); loginCode = e12GenericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode");
hdrColumnList.add("TRAN_DATE"); chgTerm = e12GenericUtility.getValueFromXTRA_PARAMS(xtraParams, "chgTerm");
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"); 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,"
detColumnList.add("LINE_NO"); + " SUBMISSION_TYPE, DOC_CHECKSUM, DOC_TYPE, DOC_NO, DOC_DATE, AMOUNT, REVERSE_CHRG, LR_NO, LR_DATE, REAS_CODE, REF_ID__INV,"
detColumnList.add("TAXABLE_AMT"); + " REF_DATE__INV, PROV_ASSMNT, ORDER_NO, ORDER_DATE, REMARKS, SUBMIT_STATUS, SUBMIT_DATE, ADD_USER, ADD_DATE, ADD_TERM, CHG_USER,"
detColumnList.add("GST_RATE"); + " CHG_DATE, CHG_TERM, TAX_REG_NO, RECO_STATUS, ECOM_REG_NO, REF_SER, GST_CODE, GST_TYPE, REF_ID)"
detColumnList.add("IGST_PERC"); + " VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
detColumnList.add("IGST_AMT"); hdrInsPstmt = conn.prepareStatement(hdrInsSql);
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
b2bInvArry = gstr2InvoiceJsonObj.getJSONArray("b2b"); b2bInvArry = gstr2InvoiceJsonObj.getJSONArray("b2b");
...@@ -2243,7 +2207,6 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -2243,7 +2207,6 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
for(int j=0; j<b2bInvJsonArry.length(); j++) for(int j=0; j<b2bInvJsonArry.length(); j++)
{ {
hdrDataList = new ArrayList<String>();
b2bInvJsonObj = b2bInvJsonArry.getJSONObject(j); b2bInvJsonObj = b2bInvJsonArry.getJSONObject(j);
iNum = b2bInvJsonObj.getString("inum"); iNum = b2bInvJsonObj.getString("inum");
...@@ -2286,32 +2249,70 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -2286,32 +2249,70 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
tranType = "09"; tranType = "09";
} }
tranId = generateTranId("w_gstr_purc","","",conn); tranId = generateTranId("w_gstr_purc","","",conn);
hdrDataList.add(tranId); hdrInsPstmt.setString(1, tranId);
hdrDataList.add(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateFormat())); hdrInsPstmt.setTimestamp(2, java.sql.Timestamp.valueOf(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateTimeFormat())));
hdrDataList.add("2A"); hdrInsPstmt.setString(3, null);
hdrDataList.add(tranType); hdrInsPstmt.setString(4, siteCode);
hdrDataList.add(pos); hdrInsPstmt.setString(5, periodCode);
hdrDataList.add("D"); hdrInsPstmt.setString(6, "2");
hdrDataList.add(docCheckSum); hdrInsPstmt.setString(7, tranType);
hdrDataList.add(iNum); hdrInsPstmt.setString(8, null);
hdrDataList.add(iDate); hdrInsPstmt.setString(9, null);
hdrDataList.add(String.valueOf(amount)); hdrInsPstmt.setString(10, null);
hdrDataList.add(reversCharge); hdrInsPstmt.setString(11, docCheckSum);
hdrDataList.add(cptyGSTIN); hdrInsPstmt.setString(12, null);
hdrDataList.add(siteCode); hdrInsPstmt.setString(13, iNum);
hdrDataList.add(invType); hdrInsPstmt.setTimestamp(14, getTimeStamp(iDate));
hdrDataList.add(periodCode); hdrInsPstmt.setDouble(15, amount);
hdrInsPstmt.setString(16, reversCharge);
detDataList = new ArrayList<List<String>>(); 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"); b2bInvLineItmsArry = b2bInvJsonObj.getJSONArray("itms");
for(int k=0; k<b2bInvLineItmsArry.length(); k++) for(int k=0; k<b2bInvLineItmsArry.length(); k++)
{ {
List<String> tempList = new ArrayList<String>();
b2bInvLineItemObj = b2bInvLineItmsArry.getJSONObject(k); b2bInvLineItemObj = b2bInvLineItmsArry.getJSONObject(k);
lineNo = b2bInvLineItemObj.getInt("num"); lineNo = b2bInvLineItemObj.getInt("num");
...@@ -2335,31 +2336,86 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -2335,31 +2336,86 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
srt = rate/2; 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>(); detInsPstmt.addBatch();
tempList.add(tranId); detInsPstmt.clearParameters();
tempList.add(String.valueOf(lineNo)); }
tempList.add(String.valueOf(lineAmt));
tempList.add(String.valueOf(rate)); detInsCnt = detInsPstmt.executeBatch();
tempList.add(String.valueOf(irt));
tempList.add(String.valueOf(iamt)); if(detInsPstmt != null)
tempList.add(String.valueOf(crt)); {
tempList.add(String.valueOf(camt)); detInsPstmt.close();
tempList.add(String.valueOf(srt)); detInsPstmt = null;
tempList.add(String.valueOf(samt)); }
tempList.add(String.valueOf(csamt));
detDataList.add(tempList); if(detInsCnt!=null)
{
for(int eachRowCnt : detInsCnt)
{
System.out.println("detail row insert count for B2B GSTR2A invoices ["+eachRowCnt+"]");
}
} }
insertGSTHdrDetData(hdrColumnList, hdrDataTypeList, hdrDataList, detColumnList, detDataTypeList, detDataList, conn);
} }
} }
} }
catch (Exception e) catch (Exception e)
{ {
isError = true;
System.out.println("GSTDataSubmitWizPos.insertB2BInvoiceData()["+e.getMessage()+"]"); System.out.println("GSTDataSubmitWizPos.insertB2BInvoiceData()["+e.getMessage()+"]");
e.printStackTrace(); e.printStackTrace();
throw new ITMException(e); 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 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 ...@@ -2660,7 +2716,7 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
throw new ITMException(e); 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(); JSONArray cdnArry = new JSONArray();
JSONObject cdnJsonObj = new JSONObject(); JSONObject cdnJsonObj = new JSONObject();
...@@ -2669,74 +2725,28 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -2669,74 +2725,28 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
JSONArray cdnInvLineItmsArry = new JSONArray(); JSONArray cdnInvLineItmsArry = new JSONArray();
JSONObject cdnInvLineItemObj = new JSONObject(); JSONObject cdnInvLineItemObj = new JSONObject();
String tranId = "", cptyGSTIN = "", invoiceId = "", invoiceDate = "", docCheckSum = "", tranType = ""; 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; 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 try
{ {
hdrColumnList.add("TRAN_ID"); loginCode = e12GenericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode");
hdrColumnList.add("TRAN_DATE"); chgTerm = e12GenericUtility.getValueFromXTRA_PARAMS(xtraParams, "chgTerm");
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
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 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,"
detDataTypeList.add("INT"); //LINE_NO + " SUBMISSION_TYPE, DOC_CHECKSUM, DOC_TYPE, DOC_NO, DOC_DATE, AMOUNT, REVERSE_CHRG, LR_NO, LR_DATE, REAS_CODE, REF_ID__INV,"
detDataTypeList.add("DOUBLE"); //TAXABLE_AMT + " REF_DATE__INV, PROV_ASSMNT, ORDER_NO, ORDER_DATE, REMARKS, SUBMIT_STATUS, SUBMIT_DATE, ADD_USER, ADD_DATE, ADD_TERM, CHG_USER,"
detDataTypeList.add("DOUBLE"); //GST_RATE + " CHG_DATE, CHG_TERM, TAX_REG_NO, RECO_STATUS, ECOM_REG_NO, REF_SER, GST_CODE, GST_TYPE, REF_ID)"
detDataTypeList.add("DOUBLE"); //IGST_PERC + " VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
detDataTypeList.add("DOUBLE"); //IGST_AMT hdrInsPstmt = conn.prepareStatement(hdrInsSql);
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
cdnArry = gstr2InvoiceJsonObj.getJSONArray("cdn"); cdnArry = gstr2InvoiceJsonObj.getJSONArray("cdn");
...@@ -2750,7 +2760,6 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -2750,7 +2760,6 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
for(int j=0; j<cdnJsonArry.length(); j++) for(int j=0; j<cdnJsonArry.length(); j++)
{ {
hdrDataList = new ArrayList<String>();
cdnDataJsonObj = cdnJsonArry.getJSONObject(j); cdnDataJsonObj = cdnJsonArry.getJSONObject(j);
creditDebitId = cdnDataJsonObj.getString("nt_num"); creditDebitId = cdnDataJsonObj.getString("nt_num");
...@@ -2773,29 +2782,68 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -2773,29 +2782,68 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
tranId = generateTranId("w_gstr_purc","","",conn); tranId = generateTranId("w_gstr_purc","","",conn);
hdrDataList.add(tranId); hdrInsPstmt.setString(1, tranId);
hdrDataList.add(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateFormat())); hdrInsPstmt.setTimestamp(2, java.sql.Timestamp.valueOf(e12GenericUtility.getValidDateString(new Date(), e12GenericUtility.getDBDateTimeFormat())));
hdrDataList.add("2A"); hdrInsPstmt.setString(3, null);
hdrDataList.add(tranType); hdrInsPstmt.setString(4, siteCode);
hdrDataList.add("D"); hdrInsPstmt.setString(5, periodCode);
hdrDataList.add(docCheckSum); hdrInsPstmt.setString(6, "2");
hdrDataList.add(creditDebitId); hdrInsPstmt.setString(7, tranType);
hdrDataList.add(creditDebitDate); hdrInsPstmt.setString(8, null);
hdrDataList.add(String.valueOf(amount)); hdrInsPstmt.setString(9, null);
hdrDataList.add(cptyGSTIN); hdrInsPstmt.setString(10, null);
hdrDataList.add(siteCode); hdrInsPstmt.setString(11, docCheckSum);
hdrDataList.add(periodCode); hdrInsPstmt.setString(12, null);
hdrDataList.add(reason); hdrInsPstmt.setString(13, creditDebitId);
hdrDataList.add(invoiceId); hdrInsPstmt.setTimestamp(14, getTimeStamp(creditDebitDate));
hdrDataList.add(invoiceDate); hdrInsPstmt.setDouble(15, amount);
hdrInsPstmt.setString(16, null);
detDataList = new ArrayList<List<String>>(); 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"); cdnInvLineItmsArry = cdnDataJsonObj.getJSONArray("itms");
for(int k=0; k<cdnInvLineItmsArry.length(); k++) for(int k=0; k<cdnInvLineItmsArry.length(); k++)
{ {
List<String> tempList = new ArrayList<String>();
cdnInvLineItemObj = cdnInvLineItmsArry.getJSONObject(k); cdnInvLineItemObj = cdnInvLineItmsArry.getJSONObject(k);
lineNo = cdnInvLineItemObj.getInt("num"); lineNo = cdnInvLineItemObj.getInt("num");
...@@ -2819,31 +2867,86 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi ...@@ -2819,31 +2867,86 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
srt = rate/2; srt = rate/2;
} }
tempList = new ArrayList<String>(); detInsPstmt.setString(1, tranId);
tempList.add(tranId); detInsPstmt.setInt(2, lineNo);
tempList.add(String.valueOf(lineNo)); detInsPstmt.setString(3, null);
tempList.add(String.valueOf(lineAmt)); detInsPstmt.setInt(4, 0);
tempList.add(String.valueOf(rate)); detInsPstmt.setString(5, null);
tempList.add(String.valueOf(irt)); detInsPstmt.setString(6, null);
tempList.add(String.valueOf(iamt)); detInsPstmt.setDouble(7, lineAmt);
tempList.add(String.valueOf(crt)); detInsPstmt.setDouble(8, irt);
tempList.add(String.valueOf(camt)); detInsPstmt.setDouble(9, iamt);
tempList.add(String.valueOf(srt)); detInsPstmt.setDouble(10, crt);
tempList.add(String.valueOf(samt)); detInsPstmt.setDouble(11, camt);
tempList.add(String.valueOf(csamt)); 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) catch (Exception e)
{ {
isError = true;
System.out.println("GSTDataSubmitWizPos.insertCDNData()["+e.getMessage()+"]"); System.out.println("GSTDataSubmitWizPos.insertCDNData()["+e.getMessage()+"]");
e.printStackTrace(); e.printStackTrace();
throw new ITMException(e); 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 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 ...@@ -3560,5 +3663,27 @@ public class GSTDataSubmitWizPos extends ValidatorEJB implements GSTDataSubmitWi
} }
return tranId; 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