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;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
......@@ -31,6 +33,8 @@ import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import java.sql.Timestamp;
@Stateless
public class InterCompReconcile extends ValidatorEJB implements InterCompReconcileProcessLocal, InterCompReconcileProcessRemote {
......@@ -38,6 +42,7 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
String userId = null;
String chgUser = null;
String chgTerm = null;
NumberFormat nf = null;
public InterCompReconcile() {
System.out.println("^^^^^^^ inside Inter Compompany Reconciliation ^^^^^^^");
......@@ -293,20 +298,58 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
{
siteCodeTo = genericUtility.getColumnValue("site_code_to",dom1);
siteCodeFr = genericUtility.getColumnValue("site_code_fr",dom1);
fromTranDate = genericUtility.getColumnValue("from_tran_date", dom);
toTranDate = genericUtility.getColumnValue("to_tran_date", dom);
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 (?,?,?,?, ?,?,?,?, ?,?,?,? )";
//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,insertQuery,objName,new StringBuffer(genericUtility.serializeDom(dom))));
valueXmlString.append(getXMLTransData(conn,adpQuery,"",objName,new StringBuffer(""),"CallByItemChange"));
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;
}
......@@ -430,8 +473,63 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
}
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("");
TransIDGenerator generator = null;
if(conn!=null){
......@@ -441,16 +539,19 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
int columnCnt = 0;
int columnItr = 0, detailListCnt = 1;
ResultSetMetaData resultSetMetaData = null;
ArrayList<ArrayList<String>> arrayListData = null;
ArrayList<String> traceData = null;
ArrayList<ArrayList> arrayListData = null;
ArrayList traceData = null;
ArrayList<ArrayList> queryData = new ArrayList<ArrayList>();
try {
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if ( rs != null ) {
System.out.println("In First If");
resultSetMetaData = rs.getMetaData();
columnCnt = resultSetMetaData.getColumnCount();
while(rs.next())
{
traceData = new ArrayList<String>();
valueXmlString.append("<Detail domID='"+ detailListCnt++ +"' selected = 'N'>\r\n");
for (columnItr = 1;columnItr <= columnCnt;columnItr++) {
valueXmlString.append("<");
......@@ -462,15 +563,25 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
valueXmlString.append("</");
valueXmlString.append(resultSetMetaData.getColumnLabel(columnItr));
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");
queryData.add(traceData);
traceData = null;
}
if ("CallByManually".equalsIgnoreCase(callBy)) {
arrayListData = buildTraceData(queryData);
}
arrayListData = buildTraceData(rs);
pstmt = null;
rs = null;
traceData = null;
}
if(arrayListData != null && arrayListData.size() > 0)
{
System.out.println("In Second If");
String keyString = null;
sql = null;
sql = "SELECT KEY_STRING FROM TRANSETUP WHERE TRAN_WINDOW = ? ";
......@@ -484,24 +595,51 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
}
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);
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++) {
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);
for (int cnt = 0;cnt < traceData.size();cnt++) {
pstmt.setString(cnt+2, traceData.get(cnt));
}
pstmt.setTimestamp(2, (Timestamp)traceData.get(0));
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();
}
int rowsInsertedWorkOrder[] = pstmt.executeBatch();
pstmt.close();
conn.commit();
uniqueKey = null;
pstmt.close();
//uniqueKey = null;
}
}
catch(SQLException e) {
......@@ -528,6 +666,7 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
insertSql = null;
objName = null;
stringBuffer = null;
queryData = null;
}
}else{
try {
......@@ -539,38 +678,103 @@ public class InterCompReconcile extends ValidatorEJB implements InterCompReconci
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 {
ArrayList<String> traceData = null;
if ( rs != null ) {
//rs.first();
//System.out.println("Position of RS["+rs.getRow()+"]");
while(rs.next())
ArrayList traceData = null;
if ( rs != null && rs.size() > 0 ) {
System.out.println("Position of RS");
boolean flag = true;
String siteCode = null;
double amount = 0.0;
for (int itr = 0;itr < rs.size();itr++)
{
if( flag ){
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);
}
}
traceData = null;
} catch(SQLException e) {
rs = null;
} catch(Exception 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(rs!=null){
rs.close();
rs = null;
}
}catch (SQLException se) {
}catch (Exception se) {
se.printStackTrace();
}
}
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