Commit 1a791957 authored by kdabholkar's avatar kdabholkar

adding new functionality for GSTR3B offlien download data sheet

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@182742 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 50508a1c
......@@ -19,7 +19,12 @@ import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Objects;
import java.util.Set;
import java.util.TreeSet;
import java.util.UUID;
import javax.annotation.PostConstruct;
......@@ -59,6 +64,7 @@ import ibase.webitm.util.gst.GSPSignature;
import ibase.webitm.util.gst.GSTCommonUtil;
import ibase.webitm.util.gst.PubKeyEncryption;
import ibase.webitm.utility.ITMException;
//import javassist.runtime.Desc;
@javax.ejb.Stateless
public class GSTDataSubmitWizEJB extends ValidatorEJB implements GSTDataSubmitWizEJBLocal, GSTDataSubmitWizEJBRemote
......@@ -3433,20 +3439,32 @@ public class GSTDataSubmitWizEJB extends ValidatorEJB implements GSTDataSubmitWi
public Object generateOfflineFile(String periodCode, String siteCode, String recType) throws ITMException
{
XSSFWorkbook retDataWorkbook = null;
String gstr1WorkBookPath = "", gstr2WorkBookPath = "";
String gstr1WorkBookPath = "", gstr2WorkBookPath = "", gstr3WorkBookPath= "",stateCode = "";
String sep = File.separator;
String tranType = "", tranId = "", udfStr1 = "", udfStr2 = "", udfStr3 = "", ctin = "", posStateCode = "", docNo = "", docDateStr = "",
reverseCharge = "", etin = "", invoiceType = "", errorCode = "", dataErrMsg = "", stateDscr = "", refInvId = "", refInvDtStr = "",
preGST = "", refTranType = "", customerType = "", portCode = "", shipBillNo = "", shipBillDateStr = "", gstDateFormat = "", supplyType = "",
itcType = "", itcTypeDescr = "", supplierName = "", placeOfBusiness = "", documentType = "", customerName = "";
itcType = "", itcTypeDescr = "", supplierName = "", placeOfBusiness = "", documentType = "", customerName = "",refId= "",gstCode="",descr="";
boolean noDataFound = false;
double amount =0.0, gstRate = 0.0, taxableAmt = 0.0, cessAmt = 0.0, nilAmount = 0.0, exemtAmount = 0.0, nonGSTAmount = 0.0, compDlrAmount = 0.0;
double amount =0.0, amount1= 0.0 ,gstRate = 0.0, taxableAmt = 0.0, cessAmt = 0.0, nilAmount = 0.0, exemtAmount = 0.0, nonGSTAmount = 0.0, compDlrAmount = 0.0;
int b2bRowNum = 4, b2clRowNum = 4, b2csRowNum = 4, cdnrRowNum = 4, cdnurRowNum = 4, expRowNum = 4, atRowNum = 4, atAdjRowNum = 4, hsnRowNum = 4,
b2burRowNum = 4, impsRowNum = 4, impgRowNum = 4;
b2burRowNum = 4, impsRowNum = 4, impgRowNum = 4, statewiseData = 78;
double igstAmt = 0.0, cgstAmt = 0.0, sgstAmt = 0.0, igstITCAmt = 0.0, cgstITCAmt = 0.0, sgstITCAmt = 0.0, cessITCAmt = 0.0;
HashMap<String,String> itcTypeHMap = new HashMap<String,String>();
HashMap<String,List> UINDataMap = new HashMap<String,List>();
HashMap<String,List> compDataMap = new HashMap<String,List>();
HashMap<String,List> unrgDataMap = new HashMap<String,List>();
List<Object> compList = null;
List<Object> UINList = null;
List<Object> unrgList = null;
Iterator<Object> itr = null;
TreeSet<String> finalDataSet = new TreeSet<String>();
itcTypeHMap.put("CP", "Capital goods");
itcTypeHMap.put("IS", "Input services");
itcTypeHMap.put("IP", "Inputs");
......@@ -3519,11 +3537,26 @@ public class GSTDataSubmitWizEJB extends ValidatorEJB implements GSTDataSubmitWi
File gstr2ExcleFile = new File(gstr2WorkBookPath);
if(gstr2ExcleFile.exists())
{
{
retDataWorkbook = new XSSFWorkbook(new FileInputStream(gstr2ExcleFile));
}
}
/* Added by kaustubh on 19 march for GSTR-3B offline download xsl start */
else if("6".equalsIgnoreCase(recType))
{
gstr3WorkBookPath = CommonConstants.JBOSSHOME + sep + "DOWNLOAD" + sep + "template" + sep + "GSTR3B_Offline_Template.xlsm";
File gstr3ExcleFile = new File(gstr3WorkBookPath);
System.out.println("gstr3WorkBookPath"+gstr3WorkBookPath);
if(gstr3ExcleFile.exists())
{
System.out.println("inside if of gstr3ExcleFile");
retDataWorkbook = new XSSFWorkbook(new FileInputStream(gstr3ExcleFile));
}
}
/* Added by kaustubh on 19 march for GSTR-3B offline download xsl end */
gstDateFormat = finCommon.getFinparams("999999", "GST_EXCL_DATE_FORMAT", conn);
CellStyle dateCellStyle = retDataWorkbook.createCellStyle();
......@@ -3567,7 +3600,8 @@ public class GSTDataSubmitWizEJB extends ValidatorEJB implements GSTDataSubmitWi
shipBillNo = checkNull(hdrRs.getString("LR_NO"));
shipBillDate = hdrRs.getDate("LR_DATE");
customerName = checkNull(hdrRs.getString("CUST_NAME"));
refId = checkNull(hdrRs.getString("REF_ID"));
sql = "SELECT DESCR FROM STATE WHERE GST_CODE = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, posStateCode);
......@@ -3809,9 +3843,17 @@ public class GSTDataSubmitWizEJB extends ValidatorEJB implements GSTDataSubmitWi
if(refInvDate!=null && refInvDate.after(gstStartDate))
{
sql = "SELECT TRAN_TYPE FROM GST_DATA_HDR WHERE DOC_NO = ? ";
/*Changed by kaustubh on 14 march 2018 start Query correction start */
//sql = "SELECT TRAN_TYPE FROM GST_DATA_HDR WHERE DOC_NO = ? ";
sql = " SELECT TRAN_TYPE FROM GST_DATA_HDR WHERE tran_id = ? and ref_id= ?";
/*Changed by kaustubh on 14 march 2018 start Query correction end */
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
pstmt.setString(2, refId);
rs = pstmt.executeQuery();
if(rs.next())
{
......@@ -5324,6 +5366,766 @@ public class GSTDataSubmitWizEJB extends ValidatorEJB implements GSTDataSubmitWi
}
/* Added by Kaustubh between 23 march 2018 - 28 march 2018 start
* for downlaod GSTR3B data in offline sheet
*/
else if("6".equalsIgnoreCase(recType))
{
XSSFSheet dataSheetForGSTR3B = retDataWorkbook.getSheet("GSTR-3B");
System.out.println("inside rec_type=6");
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET\n" +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' " +
" AND SITE_CODE = ? and tran_type='1' and prd_code= ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2,siteCode);
detPstmt.setString(3,periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CGST_AMT")));
sgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("SGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(10);
outWorkdTaxDataRow.getCell(2).setCellValue(taxableAmt);
outWorkdTaxDataRow.getCell(3).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(4).setCellValue(cgstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(sgstAmt);
outWorkdTaxDataRow.getCell(6).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET\n" +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? " +
" AND SUBMIT_STATUS = 'P' AND SITE_CODE = ? and tran_type='2' and prd_code= ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CGST_AMT")));
sgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("SGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(11);
outWorkdTaxDataRow.getCell(2).setCellValue(taxableAmt);
outWorkdTaxDataRow.getCell(3).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(6).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET\n" +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' " +
" AND SITE_CODE = ? and tran_type='3' and prd_code= ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(12);
outWorkdTaxDataRow.getCell(2).setCellValue(taxableAmt);
}
closeResources(detRs, detPstmt);
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET\n" +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P'" +
" AND SITE_CODE = ? and tran_type='4' and prd_code= ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CGST_AMT")));
sgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("SGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(13);
outWorkdTaxDataRow.getCell(2).setCellValue(taxableAmt);
outWorkdTaxDataRow.getCell(3).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(4).setCellValue(cgstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(sgstAmt);
outWorkdTaxDataRow.getCell(6).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET\n" +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P'" +
" AND SITE_CODE = ? and tran_type='5' and prd_code= ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(14);
outWorkdTaxDataRow.getCell(2).setCellValue(taxableAmt);
}
XSSFRow sumDataRow = dataSheetForGSTR3B.getRow(15);
sumDataRow.getCell(2).setCellFormula("SUM(C11:C15)");
sumDataRow.getCell(3).setCellFormula("SUM(D11:D12) + D14");
sumDataRow.getCell(4).setCellFormula("E11 + E14");
sumDataRow.getCell(5).setCellFormula("F11 + F14");
sumDataRow.getCell(6).setCellFormula("SUM(G11:G12) + G14");
closeResources(detRs, detPstmt);
/* To set data for (1) IMPG(import of goods) ITC avilable */
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET " +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' AND SITE_CODE = ? and tran_type='09' and PRD_CODE = ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(21);
outWorkdTaxDataRow.getCell(2).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
/* To set data for (1) IMPS(import of service) ITC avilable */
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET " +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' AND SITE_CODE = ? and tran_type='10' and PRD_CODE = ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(22);
outWorkdTaxDataRow.getCell(2).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
/* To set data for (3) Inward supplies liable to reverse charge (other than 1 &2 above) */
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET " +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' AND SITE_CODE = ? and tran_type='11' and PRD_CODE = ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CGST_AMT")));
sgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("SGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(23);
outWorkdTaxDataRow.getCell(2).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(3).setCellValue(cgstAmt);
outWorkdTaxDataRow.getCell(4).setCellValue(sgstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
/* To set data for (4) Inward supplies from ISD */
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET " +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' AND SITE_CODE = ? and tran_type='12' and PRD_CODE = ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CGST_AMT")));
sgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("SGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(24);
outWorkdTaxDataRow.getCell(2).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(3).setCellValue(cgstAmt);
outWorkdTaxDataRow.getCell(4).setCellValue(sgstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
/* To set data for (5) All other ITC */
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET " +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' AND SITE_CODE = ? and tran_type='14' and PRD_CODE = ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CGST_AMT")));
sgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("SGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(25);
outWorkdTaxDataRow.getCell(2).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(3).setCellValue(cgstAmt);
outWorkdTaxDataRow.getCell(4).setCellValue(sgstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
/* To set data for B.(1) As per Rule 42 & 43 of SGST/CGST rules */
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET " +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' AND SITE_CODE = ? and tran_type='19' and PRD_CODE = ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CGST_AMT")));
sgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("SGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(27);
outWorkdTaxDataRow.getCell(2).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(3).setCellValue(cgstAmt);
outWorkdTaxDataRow.getCell(4).setCellValue(sgstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
/* B.(2) ITC Reversed (Others) */
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET " +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' AND SITE_CODE = ? and tran_type='20' and PRD_CODE = ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CGST_AMT")));
sgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("SGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(28);
outWorkdTaxDataRow.getCell(2).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(3).setCellValue(cgstAmt);
outWorkdTaxDataRow.getCell(4).setCellValue(sgstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(cessAmt);
}
XSSFRow substrcnOfITCDataRow = dataSheetForGSTR3B.getRow(29);
substrcnOfITCDataRow.getCell(2).setCellFormula("SUM(ROUND(C22,2),ROUND(C23,2),ROUND(C24,2),ROUND(C25,2),ROUND(C26,2))-SUM(ROUND(C28,2),ROUND(C29,2))");
substrcnOfITCDataRow.getCell(3).setCellFormula("SUM(ROUND(D22,2),ROUND(D23,2),ROUND(D24,2),ROUND(D25,2),ROUND(D26,2))-SUM(ROUND(D28,2),ROUND(D29,2))");
substrcnOfITCDataRow.getCell(4).setCellFormula("SUM(ROUND(E22,2),ROUND(E23,2),ROUND(E24,2),ROUND(E25,2),ROUND(E26,2))-SUM(ROUND(E28,2),ROUND(E29,2))");
substrcnOfITCDataRow.getCell(5).setCellFormula("SUM(ROUND(F22,2),ROUND(F23,2),ROUND(F24,2),ROUND(F25,2),ROUND(F26,2))-SUM(ROUND(F28,2),ROUND(F29,2))");
closeResources(detRs, detPstmt);
/* (D)Ineligible ITC (1) As per section 17(5) of CGST//SGST Act */
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET " +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' AND SITE_CODE = ? and tran_type='26' and PRD_CODE = ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CGST_AMT")));
sgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("SGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(31);
outWorkdTaxDataRow.getCell(2).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(3).setCellValue(cgstAmt);
outWorkdTaxDataRow.getCell(4).setCellValue(sgstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
/* (D)Ineligible ITC (2)   Others*/
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET " +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' AND SITE_CODE = ? and tran_type='27' and PRD_CODE = ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CGST_AMT")));
sgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("SGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(32);
outWorkdTaxDataRow.getCell(2).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(3).setCellValue(cgstAmt);
outWorkdTaxDataRow.getCell(4).setCellValue(sgstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
/* 5. Values of exempt, Nil-rated and non-GST inward supplies
* (From a supplier under composition scheme, Exempt and Nil rated supply)*/
detSql = " select AMOUNT,tran_type from gst_data_hdr where PRD_CODE= ? and REC_TYPE= ? and SUBMIT_STATUS = 'P' and "
+" SITE_CODE= ? and tran_type in ('28','29','30','31') ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1, periodCode);
detPstmt.setString(2, recType);
detPstmt.setString(3, siteCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
amount = Double.parseDouble(String.format("%.2f",detRs.getDouble("AMOUNT")));
tranType = detRs.getString("tran_type");
if("28".equalsIgnoreCase(tranType))
{
amount1 =amount1 +amount;
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(38);
outWorkdTaxDataRow.getCell(3).setCellValue(amount1);
}
if("29".equalsIgnoreCase(tranType))
{
amount1 =amount1 +amount;
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(39);
outWorkdTaxDataRow.getCell(3).setCellValue(amount1);
}
if("30".equalsIgnoreCase(tranType))
{
amount1 =amount1 +amount;
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(38);
outWorkdTaxDataRow.getCell(4).setCellValue(amount1);
}
if("31".equalsIgnoreCase(tranType))
{
amount1 =amount1 +amount;
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(39);
outWorkdTaxDataRow.getCell(4).setCellValue(amount1);
}
}
XSSFRow sumOfNillTaxDataRow = dataSheetForGSTR3B.getRow(40);
sumOfNillTaxDataRow.getCell(3).setCellFormula("SUM(D39:D40)");
sumOfNillTaxDataRow.getCell(4).setCellFormula("SUM(E39:E40)");
closeResources(detRs, detPstmt);
/* 5.1 Interest & late fee payable */
detSql = " SELECT GST_RATE, SUM(TAXABLE_AMT) AS TAXABLE_AMT, SUM(IGST_AMT) AS IGST_AMT," +
" SUM(CGST_AMT) AS CGST_AMT, SUM(SGST_AMT) AS SGST_AMT, SUM(CESS_AMT) AS CESS_AMT," +
" ITC_TYPE,SUM(ITC_IGST) AS ITC_IGST, SUM(ITC_CGST) AS ITC_CGST, SUM(ITC_SGST) AS ITC_SGST," +
" SUM(ITC_CESS) AS ITC_CESS FROM GST_DATA_DET " +
" where tran_id in (select TRAN_ID from GST_DATA_HDR where REC_TYPE= ? AND SUBMIT_STATUS = 'P' AND SITE_CODE = ? and tran_type='32' and PRD_CODE = ? ) " +
" GROUP BY GST_RATE, ITC_TYPE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, siteCode);
detPstmt.setString(3, periodCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstRate = Double.parseDouble(String.format("%.2f",detRs.getDouble("GST_RATE")));
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
cgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CGST_AMT")));
sgstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("SGST_AMT")));
cessAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("CESS_AMT")));
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(55);
outWorkdTaxDataRow.getCell(2).setCellValue(igstAmt);
outWorkdTaxDataRow.getCell(3).setCellValue(cgstAmt);
outWorkdTaxDataRow.getCell(4).setCellValue(sgstAmt);
outWorkdTaxDataRow.getCell(5).setCellValue(cessAmt);
}
closeResources(detRs, detPstmt);
/*3.2 Of the supplies shown in 3.1 (a), details of inter-state supplies made to unregistered persons,
* composition taxable person and UIN holders */
detSql = " SELECT GDH.TRAN_TYPE, GDH.GST_CODE, S.DESCR, SUM(GDD.TAXABLE_AMT) AS TAXABLE_AMT, SUM(GDD.IGST_AMT) AS IGST_AMT, SUM(GDD.CGST_AMT) AS CGST_AMT " +
" FROM GST_DATA_HDR GDH, GST_DATA_DET GDD, STATE S " +
" WHERE GDH.TRAN_ID=GDD.TRAN_ID AND GDH.GST_CODE = S.GST_CODE " +
" AND GDH.REC_TYPE = ? AND GDH.PRD_CODE = ? " +
" AND GDH.SITE_CODE = ? " +
" AND GDH.TRAN_TYPE ='08' " +
" GROUP BY TRAN_TYPE, GDH.GST_CODE, S.DESCR ORDER BY GDH.GST_CODE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, periodCode);
detPstmt.setString(3, siteCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstCode = detRs.getString("GST_CODE");
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
descr =detRs.getNString("DESCR");
UINList = new ArrayList<>();
UINList.add(taxableAmt);
UINList.add(igstAmt);
UINList.add(descr);
UINDataMap.put(gstCode, UINList);
System.out.println("key"+UINDataMap);
}
closeResources(detRs, detPstmt);
detSql = " SELECT GDH.TRAN_TYPE, GDH.GST_CODE, S.DESCR, SUM(GDD.TAXABLE_AMT) AS TAXABLE_AMT, SUM(GDD.IGST_AMT) AS IGST_AMT, SUM(GDD.CGST_AMT) AS CGST_AMT " +
" FROM GST_DATA_HDR GDH, GST_DATA_DET GDD, STATE S " +
" WHERE GDH.TRAN_ID=GDD.TRAN_ID AND GDH.GST_CODE = S.GST_CODE " +
" AND GDH.REC_TYPE = ? AND GDH.PRD_CODE = ? " +
" AND GDH.SITE_CODE = ? " +
" AND GDH.TRAN_TYPE ='07' " +
" GROUP BY TRAN_TYPE, GDH.GST_CODE, S.DESCR ORDER BY GDH.GST_CODE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, periodCode);
detPstmt.setString(3, siteCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstCode = detRs.getString("GST_CODE");
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
descr =detRs.getNString("DESCR");
compList = new ArrayList<>();
compList.add(taxableAmt);
compList.add(igstAmt);
compList.add(descr);
compDataMap.put(gstCode, compList);
System.out.println("key"+compDataMap);
}
closeResources(detRs, detPstmt);
detSql = " SELECT GDH.TRAN_TYPE, GDH.GST_CODE, S.DESCR, SUM(GDD.TAXABLE_AMT) AS TAXABLE_AMT, SUM(GDD.IGST_AMT) AS IGST_AMT, SUM(GDD.CGST_AMT) AS CGST_AMT " +
" FROM GST_DATA_HDR GDH, GST_DATA_DET GDD, STATE S " +
" WHERE GDH.TRAN_ID=GDD.TRAN_ID AND GDH.GST_CODE = S.GST_CODE " +
" AND GDH.REC_TYPE = ? AND GDH.PRD_CODE = ? " +
" AND GDH.SITE_CODE = ? " +
" AND GDH.TRAN_TYPE ='06' " +
" GROUP BY TRAN_TYPE, GDH.GST_CODE, S.DESCR ORDER BY GDH.GST_CODE ";
detPstmt = conn.prepareStatement(detSql);
detPstmt.setString(1,recType);
detPstmt.setString(2, periodCode);
detPstmt.setString(3, siteCode);
detRs = detPstmt.executeQuery();
while(detRs.next())
{
gstCode = detRs.getString("GST_CODE");
taxableAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("TAXABLE_AMT")));
igstAmt = Double.parseDouble(String.format("%.2f",detRs.getDouble("IGST_AMT")));
descr =detRs.getNString("DESCR");
unrgList = new ArrayList<>();
unrgList.add(taxableAmt);
unrgList.add(igstAmt);
unrgList.add(descr);
unrgDataMap.put(gstCode, unrgList);
System.out.println("key"+unrgDataMap);
}
closeResources(detRs, detPstmt);
finalDataSet.addAll(unrgDataMap.keySet());
finalDataSet.addAll(compDataMap.keySet());
finalDataSet.addAll(UINDataMap.keySet());
System.out.println("finalDataSet"+finalDataSet);
if(finalDataSet.size() > 0)
{
for(String final_data : finalDataSet)
{
double taxAmt = 0.0,intTax1=0.0,intTax2=0.0;
double intTax = 0.0,taxAmt1=0.0,taxAmt2=0.0;
if (UINDataMap.containsKey(final_data))
{
stateCode= final_data+"-"+(String) UINDataMap.get(final_data).get(2);
intTax = (double) UINDataMap.get(final_data).get(1);
taxAmt = (double) UINDataMap.get(final_data).get(0);
System.out.println("value of state unrgDataMap12"+UINDataMap.get(final_data).get(0)+"second value"+
UINDataMap.get(final_data).get(2)+"Third value"+UINDataMap.get(final_data).get(1));
System.out.println("stateCode"+stateCode+"intTax"+intTax+"taxAmt"+taxAmt);
}
else
{
intTax=0.0;
taxAmt=0.0;
}
if (compDataMap.containsKey(final_data))
{
if(stateCode== null || stateCode.trim().length() == 0)
{
stateCode= final_data+"-"+(String) compDataMap.get(final_data).get(2);
}
intTax1 = (double) compDataMap.get(final_data).get(1);
taxAmt1 = (double) compDataMap.get(final_data).get(0);
System.out.println("stateCode"+stateCode+"intTax"+intTax+"taxAmt"+taxAmt);
}
else
{
intTax1=0.0;
taxAmt1=0.0;
}
if (unrgDataMap.containsKey(final_data))
{
if(stateCode== null || stateCode.trim().length() == 0)
{
stateCode= final_data+"-"+(String) unrgDataMap.get(final_data).get(2);
}
intTax2 = (double) unrgDataMap.get(final_data).get(1);
taxAmt2 = (double) unrgDataMap.get(final_data).get(0);
System.out.println("stateCode"+stateCode+"intTax"+intTax+"taxAmt"+taxAmt);
}
else
{
intTax2=0.0;
taxAmt2=0.0;
}
XSSFRow outWorkdTaxDataRow = dataSheetForGSTR3B.getRow(statewiseData++);
outWorkdTaxDataRow.getCell(1).setCellValue(stateCode);
outWorkdTaxDataRow.getCell(2).setCellValue(taxAmt2);
outWorkdTaxDataRow.getCell(3).setCellValue(intTax2);
outWorkdTaxDataRow.getCell(4).setCellValue(taxAmt1);
outWorkdTaxDataRow.getCell(5).setCellValue(intTax1);
outWorkdTaxDataRow.getCell(6).setCellValue(taxAmt);
outWorkdTaxDataRow.getCell(7).setCellValue(intTax);
}
}
}
/* Added by Kaustubh between 23 march 2018 - 28 march 2018 END
* for downlaod GSTR3B data in offline sheet
*/
return retDataWorkbook;
}
}
......
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