Commit dbbafc44 authored by skumbhar's avatar skumbhar

changes


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@94228 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 64255a5f
...@@ -20,6 +20,8 @@ import java.sql.PreparedStatement; ...@@ -20,6 +20,8 @@ import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.ResultSetMetaData; import java.sql.ResultSetMetaData;
import java.sql.SQLException; import java.sql.SQLException;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Calendar; import java.util.Calendar;
...@@ -31,6 +33,8 @@ import org.w3c.dom.Document; ...@@ -31,6 +33,8 @@ import org.w3c.dom.Document;
import org.w3c.dom.Node; import org.w3c.dom.Node;
import org.w3c.dom.NodeList; import org.w3c.dom.NodeList;
import java.sql.Timestamp;
@Stateless @Stateless
public class InterCompReconcile extends ValidatorEJB implements InterCompReconcileProcessLocal, InterCompReconcileProcessRemote { public class InterCompReconcile extends ValidatorEJB implements InterCompReconcileProcessLocal, InterCompReconcileProcessRemote {
...@@ -38,6 +42,7 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci ...@@ -38,6 +42,7 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
String userId = null; String userId = null;
String chgUser = null; String chgUser = null;
String chgTerm = null; String chgTerm = null;
NumberFormat nf = null;
public InterCompReconcile() { public InterCompReconcile() {
System.out.println("^^^^^^^ inside Inter Compompany Reconciliation ^^^^^^^"); System.out.println("^^^^^^^ inside Inter Compompany Reconciliation ^^^^^^^");
...@@ -293,20 +298,58 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci ...@@ -293,20 +298,58 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
{ {
siteCodeTo = genericUtility.getColumnValue("site_code_to",dom1); siteCodeTo = genericUtility.getColumnValue("site_code_to",dom1);
siteCodeFr = genericUtility.getColumnValue("site_code_fr",dom1); siteCodeFr = genericUtility.getColumnValue("site_code_fr",dom1);
fromTranDate = genericUtility.getColumnValue("from_tran_date", dom); fromTranDate = genericUtility.getColumnValue("from_tran_date", dom1);
toTranDate = genericUtility.getColumnValue("to_tran_date", dom); toTranDate = genericUtility.getColumnValue("to_tran_date", dom1);
System.out.println("siteCodeTo="+siteCodeTo+ " siteCodeFr ="+siteCodeFr); System.out.println("siteCodeTo="+siteCodeTo+ " siteCodeFr ="+siteCodeFr);
path = CommonConstants.JBOSSHOME + File.separator + "sql" + File.separator + "oracle/relatePartyConsoleSupply.sql"; path = CommonConstants.JBOSSHOME + File.separator + "sql" + File.separator + "oracle/relatePartyConsoleSupply.sql";
String adpQuery = genericUtility.readFile(path); String adpQuery = genericUtility.readFile(path);
insertQuery = "Insert Into Intercomp_Reco_Trace ( Tran_Id,Tran_Date,Ref_Ser,Ref_Id,Ref_Ser__To,Ref_Id__To,Site_Code,Site_Code__To,Amount,Chg_Date,Chg_User,Chg_Term) values (?,?,?,?, ?,?,?,?, ?,?,?,? )"; //insertQuery = "Insert Into Intercomp_Reco_Trace ( Tran_Id,Tran_Date,Ref_Ser,Ref_Id,Ref_Ser__To,Ref_Id__To,Site_Code,Site_Code__To,Amount,Chg_Date,Chg_User,Chg_Term) values (?,?,?,?, ?,?,?,?, ?,?,?,? )";
valueXmlString.append("<Detail1>");
valueXmlString.append("<from_tran_date><![CDATA[").append(fromTranDate).append("]]></from_tran_date>");
valueXmlString.append("<to_tran_date><![CDATA[").append(toTranDate).append("]]></to_tran_date>");
valueXmlString.append("<site_code_fr><![CDATA[").append(siteCodeFr).append("]]></site_code_fr>"); valueXmlString.append("<site_code_fr><![CDATA[").append(siteCodeFr).append("]]></site_code_fr>");
valueXmlString.append("<site_code_to><![CDATA[").append(siteCodeTo).append("]]></site_code_to>"); valueXmlString.append("<site_code_to><![CDATA[").append(siteCodeTo).append("]]></site_code_to>");
valueXmlString.append("<chg_user><![CDATA[").append(chgUser).append("]]></chg_user>");
valueXmlString.append("<chg_term><![CDATA[").append(chgTerm).append("]]></chg_term>");
valueXmlString.append("</Detail1>");
valueXmlString.append("<Detail2>"); valueXmlString.append("<Detail2>");
valueXmlString.append(getXMLTransData(conn,adpQuery,insertQuery,objName,new StringBuffer(genericUtility.serializeDom(dom)))); valueXmlString.append(getXMLTransData(conn,adpQuery,"",objName,new StringBuffer(""),"CallByItemChange"));
valueXmlString.append("</Detail2>"); valueXmlString.append("</Detail2>");
}
break;
case 3 :
parentNodeList = dom.getElementsByTagName("Detail3");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
System.out.println("DOM2 Elements["+genericUtility.serializeDom(dom2).toString()+"]");
//childNodeListLength = childNodeList.getLength();
if(currentColumn.trim().equalsIgnoreCase("itm_default"))
{
/*siteCodeTo = genericUtility.getColumnValue("site_code_to",dom1);
siteCodeFr = genericUtility.getColumnValue("site_code_fr",dom1);
fromTranDate = genericUtility.getColumnValue("from_tran_date", dom1);
toTranDate = genericUtility.getColumnValue("to_tran_date", dom1);
System.out.println("siteCodeTo="+siteCodeTo+ " siteCodeFr ="+siteCodeFr);
path = CommonConstants.JBOSSHOME + File.separator + "sql" + File.separator + "oracle/relatePartyConsoleSupply.sql";
String adpQuery = genericUtility.readFile(path);
//insertQuery = "Insert Into Intercomp_Reco_Trace ( Tran_Id,Tran_Date,Ref_Ser,Ref_Id,Ref_Ser__To,Ref_Id__To,Site_Code,Site_Code__To,Amount,Chg_Date,Chg_User,Chg_Term) values (?,?,?,?, ?,?,?,?, ?,?,?,? )";
valueXmlString.append("<Detail1>");
valueXmlString.append("<from_tran_date><![CDATA[").append(fromTranDate).append("]]></from_tran_date>");
valueXmlString.append("<to_tran_date><![CDATA[").append(toTranDate).append("]]></to_tran_date>");
valueXmlString.append("<site_code_fr><![CDATA[").append(siteCodeFr).append("]]></site_code_fr>");
valueXmlString.append("<site_code_to><![CDATA[").append(siteCodeTo).append("]]></site_code_to>");
valueXmlString.append("<CHG_USER><![CDATA[").append(chgUser).append("]]></CHG_USER>");
valueXmlString.append("<CHG_TERM><![CDATA[").append(chgTerm).append("]]></CHG_TERM>");
valueXmlString.append("</Detail1>");
valueXmlString.append("<Detail2>");
valueXmlString.append(getXMLTransData(conn,adpQuery,"",objName,new StringBuffer(""),"CallByItemChange"));
valueXmlString.append("</Detail2>");*/
} }
break; break;
} }
...@@ -430,8 +473,63 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci ...@@ -430,8 +473,63 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
} }
return count; return count;
} }
private StringBuffer getXMLTransData(Connection conn, String sql, String insertSql, String objName, StringBuffer stringBuffer) throws Exception
public String preSaveForm(String xmlString1 )throws ITMException
{
Document dom = null;
System.out.println("@@@@@@@@@---------preSaveForm EJB called...");
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
try
{ {
conn = connDriver.getConnectDB("DriverITM");
conn.setAutoCommit(false);
connDriver = null;
System.out.println("@@@@@@@xmlString1["+xmlString1+"]@@@@@@@");
if (xmlString1 != null && xmlString1.trim().length() > 0)
{
dom = GenericUtility.getInstance().parseString(xmlString1);
chgUser = genericUtility.getColumnValue("chg_user",dom);
chgTerm = genericUtility.getColumnValue("chg_term",dom);
String path = CommonConstants.JBOSSHOME + File.separator + "sql" + File.separator + "oracle/relatePartyConsoleSupply.sql";
String adpQuery = genericUtility.readFile(path);
String objName = "intercomp_reconcile";
String insertQuery = "Insert Into Intercomp_Reco_Trace ( Tran_Id,Tran_Date,Ref_Ser,Ref_Id,Ref_Ser__To,Ref_Id__To,Site_Code,Site_Code__To,Amount,Chg_Date,Chg_User,Chg_Term) values (?,?,?,?, ?,?,?,?, ?,?,?,? )";
getXMLTransData(conn,adpQuery,insertQuery,objName,new StringBuffer(genericUtility.serializeDom(dom)),"CallByManually");
path = null;
adpQuery = null;
objName = null;
insertQuery = null;
}
}
catch(SQLException e) {
System.out.println("SQL Exception In getXMLTransData method of InterCompReconcileProcess Class : "+e.getMessage());
e.printStackTrace();
}
catch(Exception ex) {
System.out.println("Exception In getXMLTransData method of InterCompReconcileProcess Class : "+ex.getMessage());
ex.printStackTrace();
} finally {
try {
if(conn != null) {
conn.close();
}
conn = null;
xmlString1 = null;
} catch(Exception d) {
d.printStackTrace();
}
}
return "";
}
private StringBuffer getXMLTransData(Connection conn, String sql, String insertSql, String objName, StringBuffer stringBuffer, String callBy) throws Exception
{
System.out.println("In getXMLTransData");
StringBuffer valueXmlString = new StringBuffer(""); StringBuffer valueXmlString = new StringBuffer("");
TransIDGenerator generator = null; TransIDGenerator generator = null;
if(conn!=null){ if(conn!=null){
...@@ -441,16 +539,19 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci ...@@ -441,16 +539,19 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
int columnCnt = 0; int columnCnt = 0;
int columnItr = 0, detailListCnt = 1; int columnItr = 0, detailListCnt = 1;
ResultSetMetaData resultSetMetaData = null; ResultSetMetaData resultSetMetaData = null;
ArrayList<ArrayList<String>> arrayListData = null; ArrayList<ArrayList> arrayListData = null;
ArrayList<String> traceData = null; ArrayList traceData = null;
ArrayList<ArrayList> queryData = new ArrayList<ArrayList>();
try { try {
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
if ( rs != null ) { if ( rs != null ) {
System.out.println("In First If");
resultSetMetaData = rs.getMetaData(); resultSetMetaData = rs.getMetaData();
columnCnt = resultSetMetaData.getColumnCount(); columnCnt = resultSetMetaData.getColumnCount();
while(rs.next()) while(rs.next())
{ {
traceData = new ArrayList<String>();
valueXmlString.append("<Detail domID='"+ detailListCnt++ +"' selected = 'N'>\r\n"); valueXmlString.append("<Detail domID='"+ detailListCnt++ +"' selected = 'N'>\r\n");
for (columnItr = 1;columnItr <= columnCnt;columnItr++) { for (columnItr = 1;columnItr <= columnCnt;columnItr++) {
valueXmlString.append("<"); valueXmlString.append("<");
...@@ -462,15 +563,25 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci ...@@ -462,15 +563,25 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
valueXmlString.append("</"); valueXmlString.append("</");
valueXmlString.append(resultSetMetaData.getColumnLabel(columnItr)); valueXmlString.append(resultSetMetaData.getColumnLabel(columnItr));
valueXmlString.append(">\r\n"); valueXmlString.append(">\r\n");
System.out.println("ColumnType:["+resultSetMetaData.getColumnType(columnItr)+"]");
System.out.println("ColumnTypeName:["+resultSetMetaData.getColumnTypeName(columnItr)+"]");
System.out.println("ColumnValue:["+rs.getString(columnItr)+"]");
traceData.add(rs.getString(columnItr) == null ? "" : rs.getString(columnItr).trim());
} }
valueXmlString.append("</Detail>\r\n"); valueXmlString.append("</Detail>\r\n");
queryData.add(traceData);
traceData = null;
}
if ("CallByManually".equalsIgnoreCase(callBy)) {
arrayListData = buildTraceData(queryData);
} }
arrayListData = buildTraceData(rs);
pstmt = null; pstmt = null;
rs = null; rs = null;
traceData = null;
} }
if(arrayListData != null && arrayListData.size() > 0) if(arrayListData != null && arrayListData.size() > 0)
{ {
System.out.println("In Second If");
String keyString = null; String keyString = null;
sql = null; sql = null;
sql = "SELECT KEY_STRING FROM TRANSETUP WHERE TRAN_WINDOW = ? "; sql = "SELECT KEY_STRING FROM TRANSETUP WHERE TRAN_WINDOW = ? ";
...@@ -484,24 +595,51 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci ...@@ -484,24 +595,51 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
} }
pstmt = null; pstmt = null;
pstmt = conn.prepareStatement(insertSql); /*generator = new TransIDGenerator(stringBuffer.toString(),userId,CommonConstants.DB_NAME);
generator = new TransIDGenerator(stringBuffer.toString(),userId,CommonConstants.DB_NAME);
String uniqueKey = generator.generateTranSeqID("INCORE", "tran_id", keyString, conn); String uniqueKey = generator.generateTranSeqID("INCORE", "tran_id", keyString, conn);
System.out.print("uniqueKey:["+uniqueKey+"]");
String [] uniqueKeyArr = getUniqueIntValue(uniqueKey);
int intS = Integer.parseInt(uniqueKeyArr[1]);*/
System.out.println("@@@@@@@stringBuffer1["+stringBuffer+"]@@@@@@@");
pstmt = conn.prepareStatement(insertSql);
for (int itr = 0;itr < arrayListData.size();itr++) { for (int itr = 0;itr < arrayListData.size();itr++) {
traceData = arrayListData.get(itr); traceData = arrayListData.get(itr);
generator = new TransIDGenerator(stringBuffer.toString(),userId,CommonConstants.DB_NAME);
String uniqueKey = generator.generateTranSeqID("INCORE", "tran_id", keyString, conn);
//System.out.print("uniqueKeyERR:["+uniqueKeyArr[0].toString()+nf.format(intS)+"]");
System.out.print("1:["+uniqueKey+"]");
System.out.print("2:["+traceData.get(0)+"]");
System.out.print("3:["+traceData.get(1)+"]");
System.out.print("4:["+traceData.get(2)+"]");
System.out.print("5:["+traceData.get(3)+"]");
System.out.print("6:["+traceData.get(4)+"]");
System.out.print("7:["+traceData.get(5)+"]");
System.out.print("8:["+traceData.get(6)+"]");
System.out.print("9:["+traceData.get(7)+"]");
pstmt.setString(1, uniqueKey); pstmt.setString(1, uniqueKey);
for (int cnt = 0;cnt < traceData.size();cnt++) { pstmt.setTimestamp(2, (Timestamp)traceData.get(0));
pstmt.setString(cnt+2, traceData.get(cnt)); pstmt.setString(3, (String)traceData.get(1));
} pstmt.setString(4, (String)traceData.get(2));
pstmt.setString(5, (String)traceData.get(3));
pstmt.setString(6, (String)traceData.get(4));
pstmt.setString(7, (String)traceData.get(5));
pstmt.setString(8, (String)traceData.get(6));
pstmt.setDouble(9, (Double)traceData.get(7));
pstmt.setTimestamp(10, new Timestamp(System.currentTimeMillis()));
pstmt.setString(11, chgUser);
pstmt.setString(12, chgTerm);
pstmt.addBatch(); pstmt.addBatch();
} }
int rowsInsertedWorkOrder[] = pstmt.executeBatch(); int rowsInsertedWorkOrder[] = pstmt.executeBatch();
pstmt.close();
conn.commit(); conn.commit();
uniqueKey = null; pstmt.close();
//uniqueKey = null;
} }
} }
catch(SQLException e) { catch(SQLException e) {
...@@ -528,6 +666,7 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci ...@@ -528,6 +666,7 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
insertSql = null; insertSql = null;
objName = null; objName = null;
stringBuffer = null; stringBuffer = null;
queryData = null;
} }
}else{ }else{
try { try {
...@@ -539,38 +678,103 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci ...@@ -539,38 +678,103 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
return valueXmlString; return valueXmlString;
} }
private ArrayList<ArrayList<String>> buildTraceData(ResultSet rs) throws Exception private ArrayList<ArrayList> buildTraceData(ArrayList<ArrayList> rs) throws Exception
{ {
ArrayList<ArrayList<String>> arrayListData = new ArrayList<ArrayList<String>>(); System.out.println("In buildTraceData");
ArrayList<ArrayList> arrayListData = new ArrayList<ArrayList>();
try { try {
ArrayList<String> traceData = null; ArrayList traceData = null;
if ( rs != null ) { if ( rs != null && rs.size() > 0 ) {
//rs.first(); System.out.println("Position of RS");
//System.out.println("Position of RS["+rs.getRow()+"]"); boolean flag = true;
while(rs.next()) String siteCode = null;
double amount = 0.0;
for (int itr = 0;itr < rs.size();itr++)
{ {
if( flag ){
traceData = new ArrayList<String>(); traceData = new ArrayList<String>();
java.util.Date date = new java.util.Date(rs.get(itr).get(0).toString());
Timestamp time = new Timestamp(date.getTime());
System.out.println("1:["+time+"]");
System.out.print(" 2:["+rs.get(itr).get(1)+"]");
System.out.print(" 3:["+rs.get(itr).get(2)+"]");
traceData.add(time);
traceData.add(rs.get(itr).get(1) == null ? "" : rs.get(itr).get(1));
traceData.add(rs.get(itr).get(2) == null ? "" : rs.get(itr).get(2));
siteCode = rs.get(itr).get(7) == null ? "" : rs.get(itr).get(7).toString();
amount = rs.get(itr).get(5) == null ? 0.0 : Double.parseDouble(rs.get(itr).get(5).toString());
flag = false;
} else {
System.out.print(" 4:["+rs.get(itr).get(1)+"]");
System.out.print(" 5:["+rs.get(itr).get(2)+"]");
System.out.print(" 6:["+siteCode+"]");
System.out.print(" 7:["+rs.get(itr).get(7)+"]");
System.out.print(" 8:["+rs.get(itr).get(5)+"]");
traceData.add(rs.get(itr).get(1) == null ? "" : rs.get(itr).get(1));
traceData.add(rs.get(itr).get(2) == null ? "" : rs.get(itr).get(2));
traceData.add(siteCode);
traceData.add(rs.get(itr).get(7) == null ? "" : rs.get(itr).get(7));
traceData.add(amount > 0 ? amount : rs.get(itr).get(5) == null ? 0.0 : Double.parseDouble(rs.get(itr).get(5).toString()));
arrayListData.add(traceData);
flag = true;
}
}
if ( arrayListData.size() % 2 > 0) {
System.out.print(" 4:[ ]");
System.out.print(" 5:[ ]");
System.out.print(" 6:["+siteCode+"]");
System.out.print(" 7:[ ]");
System.out.print(" 8:["+amount+"]");
traceData.add("");
traceData.add("");
traceData.add(siteCode);
traceData.add("");
traceData.add(amount);
arrayListData.add(traceData); arrayListData.add(traceData);
} }
} }
traceData = null; traceData = null;
} catch(SQLException e) { rs = null;
} catch(Exception e) {
System.out.println("SQL Exception In getXMLTransData method of InterCompReconcileProcess Class : "+e.getMessage()); System.out.println("SQL Exception In getXMLTransData method of InterCompReconcileProcess Class : "+e.getMessage());
e.printStackTrace(); e.printStackTrace();
} catch(Exception ex) {
System.out.println("Exception In getXMLTransData method of InterCompReconcileProcess Class : "+ex.getMessage());
ex.printStackTrace();
} finally { } finally {
try{ try{
if(rs!=null){ }catch (Exception se) {
rs.close();
rs = null;
}
}catch (SQLException se) {
se.printStackTrace(); se.printStackTrace();
} }
} }
return arrayListData; return arrayListData;
} }
private String[] getUniqueIntValue(String uniqueNo)
{
System.out.println("In getUniqueIntValue");
String [] returnVal = new String[2];
int strcnt = 0;
StringBuffer sbInt = new StringBuffer("");
StringBuffer sbStr = new StringBuffer("");
for(strcnt = 0;strcnt < uniqueNo.length();strcnt++)
{
if((int)uniqueNo.charAt(strcnt) >= 48 && (int)uniqueNo.charAt(strcnt) <= 57)
{
sbInt.append(uniqueNo.charAt(strcnt));
} else {
sbStr.append(uniqueNo.charAt(strcnt));
}
}
returnVal[0] = sbStr.toString();
returnVal[1] = sbInt.toString();
sbInt.delete(0, sbInt.length());
for(strcnt = 0;strcnt < 10 - sbStr.length();strcnt++)
{
sbInt.append("0");
}
nf = new DecimalFormat(sbInt.toString());
sbInt = null;
sbStr = null;
return returnVal;
}
} }
\ No newline at end of file
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