Commit 9bf8ff87 authored by ajadhav's avatar ajadhav

unclosed connection, statment and resultset to be closed

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@184487 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 903269b1
......@@ -10,18 +10,34 @@ Modification:-
.............................................*/
package ibase.webitm.ejb.dis;
import java.io.ByteArrayInputStream;
import java.io.OutputStreamWriter;
import java.rmi.RemoteException;
import java.sql.*;
import java.util.*;
import java.text.NumberFormat;
import java.text.DecimalFormat;
import ibase.webitm.ejb.*;
import ibase.webitm.utility.*;
import ibase.utility.CommonConstants;
import ibase.utility.E12GenericUtility;
import ibase.webitm.ejb.fin.FinCommon;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import ibase.webitm.ejb.sys.UtilMethods;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import com.ibm.db2.jcc.a.p;
public class DistCommon {
E12GenericUtility genericUtility = new E12GenericUtility();
......@@ -2110,7 +2126,7 @@ public class DistCommon {
e.printStackTrace();
throw new ITMException(e);
}
//Add by Ajay Jadhav on 27/04/2018:START
//Add by Ajay Jadhav on 27/04/2018:START
finally {
try {
if (conn != null) {
......@@ -2131,7 +2147,8 @@ public class DistCommon {
}
}
//Add by Ajay Jadhav on 27/04/2018:END
}// else
}// else
}// if(type.trim().equals("I")) //Inventory
// System.out.println("Rate From DisCommon***:::::["+rate+"]");
return (rate);
......@@ -11598,7 +11615,8 @@ public class DistCommon {
}
public String checkNull(String input) {
public String checkNull(String input)
{
if (input == null) {
input = "";
}
......@@ -11607,4 +11625,204 @@ public class DistCommon {
// Added by kaustubh 14 Nov 2017 End
}// class
\ No newline at end of file
//Added by Anjali R. on[13/04/2018][To calculate rate][Start]
public HashMap<String, String> calcRate (String priceListTar , HashMap<String, Object> calcRate , String calcMethod , String errCode ,Connection conn)
{
ArrayList inputVal = null;
ArrayList temp = null;
String sqlStmt = "" , sql = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
HashMap< String , String> errMap = new HashMap<String, String>();
String varName = "";
String varExpr = "";
String varInput = "";
String varSrc = "";
String finalRate = "";
//HashMap<String,String> sqlInputDataMap = new HashMap<String, String>();
GenericUtility genericUtility ;
try
{
System.out.println("-----------------------------Inside calc method---------------------------");
genericUtility = new GenericUtility();
inputVal = new ArrayList();
temp = new ArrayList();
if(errCode.trim().length() == 0 || errCode == null)
{
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine exprsEngine = manager.getEngineByName("js");
sqlStmt = "select var_name, var_expr, var_source, var_input from calc_method_var where calc_method = ? order by calc_seq ";
pstmt = conn.prepareStatement(sqlStmt);
pstmt.setString(1, calcMethod);
rs = pstmt.executeQuery();
while(rs.next())
{
varName = checkNull(rs.getString("var_name"));
varExpr = checkNull(rs.getString("var_expr"));
varSrc = checkNull(rs.getString("var_source"));
varInput = checkNull(rs.getString("var_input"));
String inputValues[] = null;
System.out.println("varName["+varName+"]varSrc["+varSrc+"]varInput["+varInput+"]varExpr--["+varExpr+"]");
if((varName != null && varName.trim().length() > 0) && (varExpr != null && varExpr.trim().length() > 0))
{
varExpr = varExpr.trim();
sql = "";
inputVal = temp;
if(varSrc.equalsIgnoreCase("S"))
{
if(varInput != null && varInput.trim().length() > 0)
{
PreparedStatement exprPsmt = null;
ResultSet exprRs = null;
exprPsmt = conn.prepareStatement(varExpr);
inputValues = varInput.split(",");
int index = 1;
for(String eachSqlInput : inputValues)
{
System.out.println("[inputValues]------------["+inputValues+"]");
String var = eachSqlInput.toUpperCase().trim();
System.out.println("Variable Name---["+var+"]Variable Value--["+calcRate.get(var)+"]");
if(calcRate.containsKey(var))
{
if( "EFF_FROM".equalsIgnoreCase(var) )
{
exprPsmt.setTimestamp(index++, (Timestamp) calcRate.get("EFF_FROM"));
}
else if("VALID_UPTO".equalsIgnoreCase(var))
{
exprPsmt.setTimestamp(index++, (Timestamp) calcRate.get("VALID_UPTO"));
}
else
{
exprPsmt.setString(index++, (String) calcRate.get(var));
}
}
else
{
exprPsmt.setString(index++, "");
}
}
exprRs = exprPsmt.executeQuery();
if(exprRs.next())
{
finalRate = E12GenericUtility.checkNull(exprRs.getString(1));
exprsEngine.put(varName, getDoubleValue(finalRate));
}
else
{
exprsEngine.put(varName, 0);
}
}
}
else if("E".equalsIgnoreCase(varSrc))
{
if( varExpr.indexOf("ROUND(") != -1 )
{
varExpr = varExpr.replaceAll("ROUND\\(", "Math.round(");
System.out.println("in 1st if updated varExpr["+varExpr+"]");
}
else if( varExpr.indexOf("ROUND (") != -1 )
{
varExpr = varExpr.replaceAll("ROUND \\(", "Math.round(");
System.out.println("in 2nd if updated varExpr["+varExpr+"]");
}
finalRate = String.valueOf(exprsEngine.eval(varExpr));
System.out.println("inside E :::"+varName+"=["+finalRate+"]");
if("NaN".equalsIgnoreCase(finalRate))
{
exprsEngine.put(varName, 0);
}
else
{
exprsEngine.put(varName, getDoubleValue(finalRate));
}
}
}
}
if(getDoubleValue(finalRate) <= 0)
{
errCode = "VTRATE2";
errMap.put("error", errCode);
}
}
}
catch(Exception e)
{
System.out.println("Exception in calcRate-------["+e.getMessage()+"]");
}
if(errCode == null || errCode.trim().length() == 0)
{
errMap.put("rate", finalRate);
}
return errMap;
}
//Added by Anjali R. on[13/04/2018][To calculate rate][End]
//Added by Anjali R. on[13/04/2018][To parse string value into Timestamp][Start]
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 = genericUtility.getValidDateTimeString(dateStr, genericUtility.getApplDateFormat(), genericUtility.getDBDateTimeFormat());
return java.sql.Timestamp.valueOf(dbDateStr);
}
}
else
{
java.util.Date today = new java.util.Date();
System.out.println(new java.sql.Timestamp(today.getTime()));
java.sql.Timestamp dateTime = (new java.sql.Timestamp(today.getTime()));
return dateTime;
}
}
//Added by Anjali R. on[13/04/2018][To parse string value into Timestamp][End]
//Added by Anjali R. on[13/04/2018][To parse string value into double][Start]
private double getDoubleValue(String input) throws Exception
{
double value = 0.0;
try
{
if(input == null)
{
value = 0.0;
}
else
{
if(input.trim().length() > 0)
{
value = Double.valueOf(E12GenericUtility.checkNull(input));
}
}
System.out.println("retutn value["+value+"]");
}
catch(Exception e)
{
System.out.println("PriceListGenEJB.getDoubleValue()["+e.getMessage()+"]");
throw e;
}
return value;
}
//Added by Anjali R. on[13/04/2018][To parse string value into double][End]
}// class
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