Commit ab3bdd91 authored by sghate's avatar sghate

Shital : Migrated ReportToChangeIC Master Component.

ReportToChangeIC.java
ReportToChangeLocal.java
ReportToChangePrc.java
ReportToChangePrcLocal.java
ReportToChangePrcRemote.java
ReportToChangeRemote.java


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@208584 ce508802-f39f-4f6c-b175-0d175dae99d5
parent d5cc8a0b
package ibase.webitm.ejb.adm;
import java.rmi.RemoteException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
//import java.text.SimpleDateFormat;
import java.util.ArrayList;
//import java.util.Date;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import ibase.utility.E12GenericUtility;
import ibase.webitm.ejb.ITMDBAccessEJB;
import ibase.webitm.ejb.ValidatorEJB;
import ibase.webitm.utility.ITMException;
public class ReportToChangeIC extends ValidatorEJB implements ReportToChangeLocal, ReportToChangeRemote
{
public String wfValData(String xmlString, String xmlString1, String xmlString2, String objContext, String editFlag,
String xtraParams) throws RemoteException, ITMException
{
System.out.println(xmlString);
Document dom = null;
Document dom1 = null;
Document dom2 = null;
String errString = "";
E12GenericUtility genericUtility = null;
try {
genericUtility = new E12GenericUtility();
if (xmlString != null && xmlString.trim().length() != 0)
{
dom = genericUtility.parseString(xmlString);
System.out.println("Print dom>>>> " + dom);
}
if (xmlString1 != null && xmlString1.trim().length() != 0)
{
dom1 = genericUtility.parseString(xmlString1);
}
if (xmlString2 != null && xmlString2.trim().length() != 0)
{
dom2 = genericUtility.parseString(xmlString2);
}
errString = wfValData(dom, dom1, dom2, objContext, editFlag, xtraParams);
System.out.println("ErrString :" + errString);
}
catch (Exception e)
{
System.out.println("Exception :ReportToChangeIC :wfValData(String xmlString):" + e.getMessage() + ":");
errString = genericUtility.createErrorString(e);
e.printStackTrace();
throw new ITMException(e);
}
System.out.println("returning from ReportToChangeIC wfvaldata");
return errString;
}
public String wfValData(Document dom, Document dom1, Document dom2, String objContext, String editFlag,
String xtraParams) throws RemoteException, ITMException
{
StringBuffer errStringXml = null;
PreparedStatement pstmt = null;
ITMDBAccessEJB itmDbAcess = null;
ResultSet rs = null;
Connection conn = null;
NodeList parentList = null;
NodeList childList = null;
Node parentNode = null;
Node childNode = null;
String childNodeName = null;
String errString = "";
String userId = "";
//String loginSite = "";
String reportingType = "";
String empCodeFr = "";
String empCodeAdminFr = "";
String empCodeAdminTo = "";
String sql = "";
String empCodeTo = "";
String msgType = "";
int currentFormNo = 0;
int noOfChilds = 0;
int cnt = 0;
int counter;
E12GenericUtility genericUtility = null;
errStringXml = new StringBuffer("<?xml version=\"1.0\"?>\r\n<Root><Errors>");
ArrayList<String> errList = new ArrayList<String>();
ArrayList<String> errFields = new ArrayList<String>();
try
{
genericUtility = new E12GenericUtility();
itmDbAcess = new ITMDBAccessEJB();
conn = getConnection();
userId = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode");
//loginSite = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSite");
System.out.println("Line no----");
if (objContext != null && objContext.trim().length() > 0)
{
currentFormNo = Integer.parseInt(objContext);
}
parentList = dom.getElementsByTagName("Detail" + currentFormNo);
parentNode = parentList.item(0);
childList = parentNode.getChildNodes();
noOfChilds = childList.getLength();
System.out.println("noOfChilds--->>>" + noOfChilds);
for (counter = 0; counter < noOfChilds; counter++)
{
childNode = childList.item(counter);
childNodeName = childNode.getNodeName();
System.out.println("childNodeName>>>>>" + childNodeName);
System.out.println("childNode>>>>>>" + childNode);
System.out.println("counter>>>" + counter);
reportingType = checkNull(genericUtility.getColumnValue("reporting_type", dom));
switch (currentFormNo)
{
case 1:
NodeList parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
NodeList childNodeList = parentNode.getChildNodes();
int childNodeListLength = childNodeList.getLength();
System.out.println("child Node List Length::::::" + childNodeListLength);
for (int ctr = 0; ctr < childNodeListLength; ctr++)
{
childNode = childNodeList.item(ctr);
System.out.println("childNode" + childNode);
if (childNode.getNodeType() != Node.ELEMENT_NODE)
{
continue;
}
childNodeName = childNode.getNodeName();
System.out.println("childNodeName.editFlag." + childNodeName + "" + editFlag);
System.out.println("@V@ Edit flag :- [" + editFlag + "");
if ("emp_code__fr".equalsIgnoreCase(childNodeName))
{
if( reportingType.equalsIgnoreCase("R"))
{
empCodeFr = checkNull(genericUtility.getColumnValue("emp_code__fr", dom));
cnt = 0;
sql = "select count(*) as cnt from employee where emp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, empCodeFr);
rs = pstmt.executeQuery();
if (rs.next())
{
cnt = rs.getInt("cnt");
}
System.out.println("cnt:::: " + cnt+editFlag);
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
if(cnt != 1)
{
errList.add("VMEMP1");
errFields.add(childNodeName.toLowerCase());
}
}
}
else if("emp_code__to".equalsIgnoreCase(childNodeName))
{
if( reportingType.equalsIgnoreCase("R"))
{
empCodeTo = checkNull(genericUtility.getColumnValue("emp_code__to", dom));
cnt = 0;
sql = "select count(*) as cnt from employee where emp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, empCodeTo);
rs = pstmt.executeQuery();
if (rs.next())
{
cnt = rs.getInt("cnt");
}
System.out.println("cnt:::: " + cnt+editFlag);
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
if(cnt != 1)
{
errList.add("VMEMP20");
errFields.add(childNodeName.toLowerCase());
}
}
}
else if("emp_code__admin_fr".equalsIgnoreCase(childNodeName))
{
if( reportingType.equalsIgnoreCase("A"))
{
empCodeAdminFr = checkNull(genericUtility.getColumnValue("emp_code__admin_fr", dom));
cnt = 0;
sql = "select count(*) as cnt from employee where emp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, empCodeAdminFr);
rs = pstmt.executeQuery();
if (rs.next())
{
cnt = rs.getInt("cnt");
}
System.out.println("cnt:::: " + cnt+editFlag);
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
if(cnt != 1)
{
errList.add("VMEMP1");
errFields.add(childNodeName.toLowerCase());
}
}
}
else if("emp_code__admin_to".equalsIgnoreCase(childNodeName))
{
if( reportingType.equalsIgnoreCase("A"))
{
empCodeAdminTo = checkNull(genericUtility.getColumnValue("emp_code__admin_to", dom));
cnt = 0;
sql = "select count(*) as cnt from employee where emp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, empCodeAdminTo);
rs = pstmt.executeQuery();
if (rs.next())
{
cnt = rs.getInt("cnt");
}
System.out.println("cnt:::: " + cnt+editFlag);
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
if(cnt != 1)
{
errList.add("VMEMP20");
errFields.add(childNodeName.toLowerCase());
}
}
}
}
break;
}
}
System.out.println("errStringXml.toString()---1= "+errStringXml.toString());
if (errList != null && errList.size() > 0)
{
System.out.println("errList==[" + errList + "]");
int errListSize = errList.size();
System.out.println("errListSize:::::::[" + errListSize + "]");
System.out.println("in error::::::::::");
for (int i = 0; i < errListSize; i++)
{
System.out.println("in error For:::::::::::::::");
String errCode = (String) errList.get(i);
String errFldName = (String) errFields.get(i);
System.out.println("errCode .........." + errCode);
errString = itmDbAcess.getErrorString(errFldName, errCode, userId, "", conn);
System.out.println("errString is : ::::>>>> " + errString);
msgType = errorType(conn, errCode);
if (errString.length() > 0)
{
String bifurErrString = errString.substring(errString.indexOf("<Errors>") + 8,errString.indexOf("<trace>"));
bifurErrString = bifurErrString + errString.substring(errString.indexOf("</trace>") + 8,errString.indexOf("</Errors>"));
errStringXml.append(bifurErrString);
System.out.println("errStringXml .........." + errStringXml);
errString = "";
}
if (msgType.equalsIgnoreCase("E"))
{
break;
}
}
errList.clear();
errFields.clear();
}
errStringXml.append("</Errors></Root>\r\n");
System.out.println("errStringXml.toString()---2= "+errStringXml.toString());
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
if (conn != null)
{
conn.close();
conn = null;
}
}
catch (Exception e)
{
System.out.println("Exception ::" + e);
e.printStackTrace();
throw new ITMException(e);
}
}
errString = errStringXml.toString();
return errString;
}
public String itemChanged(String xmlString, String xmlString1, String xmlString2, String objContext,
String currentColumn, String editFlag, String xtraParams) throws RemoteException, ITMException
{
Document dom1 = null;
Document dom = null;
Document dom2 = null;
String valueXmlString = "";
E12GenericUtility genericUtility = null;
try
{
genericUtility = new E12GenericUtility();
if (xmlString != null && xmlString.trim().length() != 0)
{
dom = genericUtility.parseString(xmlString);
}
if (xmlString1 != null && xmlString1.trim().length() != 0)
{
dom1 = genericUtility.parseString(xmlString1);
}
if (xmlString2 != null && xmlString2.trim().length() != 0)
{
dom2 = genericUtility.parseString(xmlString2);
}
valueXmlString = itemChanged(dom, dom1, dom2, objContext, currentColumn, editFlag, xtraParams);
}
catch (Exception e)
{
System.out.println("Exception :ReportToChangeIC :itemChanged(String,String):" + e.getMessage() + ":");
valueXmlString = genericUtility.createErrorString(e);
e.printStackTrace();
throw new ITMException(e);
}
System.out.println("returning from ReportToChangeIC itemChanged");
return valueXmlString;
}
public String itemChanged(Document dom, Document dom1, Document dom2, String objContext, String currentColumn,
String editFlag, String xtraParams) throws RemoteException, ITMException
{
StringBuffer valueXmlString = null;
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
E12GenericUtility genericUtility = null;
int currentFormNo = 0;
String reportingType = "";
String empCodeAdminFr = "";
String empCodeAdminTo = "";
String empCodeFr = "";
String empCodeTo = "";
String siteCodeFr = "";
String sql = "";
String empFname = "";
String empMname = "";
String empLname = "";
String modStr = "";
String loginSite = "";
String userId = "";
String descr = "";
String msetval = "";
String siteCodeTo = "";
String lsDescr = "";
int mlevl = 0;
try
{
genericUtility = new E12GenericUtility();
//SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
//todayStr = sdf.format(new Date());
System.out.println("currentFormNo...." + currentFormNo);
conn = getConnection();
userId = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode");
loginSite = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSite");
if (objContext != null && objContext.trim().length() > 0)
{
currentFormNo = Integer.parseInt(objContext);
}
valueXmlString = new StringBuffer("<?xml version=\"1.0\"?>\r\n<Root>\r\n<Header>\r\n<editFlag>");
valueXmlString.append(editFlag).append("</editFlag>\r\n</Header>\r\n");
System.out.println("current form no: " + currentFormNo);
if(mlevl == 0)
{
sql = "select usr_lev as mlevl from users where code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, userId);
rs = pstmt.executeQuery();
if (rs.next())
{
mlevl = rs.getInt("mlevl");
}
System.out.println("mlevl::::::"+mlevl);
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
switch (currentFormNo)
{
case 1:
{
System.out.println("=========================================Case1============================");
valueXmlString.append("<Detail1>\r\n");
if ("reporting_type".equalsIgnoreCase(currentColumn))
{
reportingType = checkNull(genericUtility.getColumnValue("reporting_type", dom));
if(reportingType.equalsIgnoreCase("R"))
{
valueXmlString.append("<emp_code__fr protect=\"0\"><![CDATA[").append("").append("]]></emp_code__fr>\r\n");
valueXmlString.append("<emp_code__to protect=\"0\"><![CDATA[").append("").append("]]></emp_code__to>\r\n");
valueXmlString.append("<emp_code__admin_fr ><![CDATA[").append("").append("]]></emp_code__admin_fr>\r\n");
valueXmlString.append("<emp_code__admin_to ><![CDATA[").append("").append("]]></emp_code__admin_to>\r\n");
valueXmlString.append("<emp_code_admin__fr_name ><![CDATA[").append("").append("]]></emp_code_admin__fr_name>\r\n");
valueXmlString.append("<emp_code_admin__to_name ><![CDATA[").append("").append("]]></emp_code_admin__to_name>\r\n");
valueXmlString.append("<emp_code__admin_fr protect=\"1\"><![CDATA[").append("").append("]]></emp_code__admin_fr>\r\n");
valueXmlString.append("<emp_code__admin_to protect=\"1\"><![CDATA[").append("").append("]]></emp_code__admin_to>\r\n");
itemChanged(dom1, dom2, objContext,"emp_code__fr", editFlag, xtraParams);
itemChanged(dom1, dom2, objContext,"emp_code__to", editFlag, xtraParams);
}
else
{
valueXmlString.append("<emp_code__fr ><![CDATA[").append("").append("]]></emp_code__fr>\r\n");
valueXmlString.append("<emp_code__to ><![CDATA[").append("").append("]]></emp_code__to>\r\n");
valueXmlString.append("<emp_name__fr ><![CDATA[").append("").append("]]></emp_name__fr>\r\n");
valueXmlString.append("<emp_name__to ><![CDATA[").append("").append("]]></emp_name__to>\r\n");
valueXmlString.append("<emp_code__fr protect=\"1\"><![CDATA[").append("").append("]]></emp_code__fr>\r\n");
valueXmlString.append("<emp_code__to protect=\"1\"><![CDATA[").append("").append("]]></emp_code__to>\r\n");
valueXmlString.append("<emp_code__admin_fr protect=\"0\"><![CDATA[").append("").append("]]></emp_code__admin_fr>\r\n");
valueXmlString.append("<emp_code__admin_to protect=\"0\"><![CDATA[").append("").append("]]></emp_code__admin_to>\r\n");
itemChanged(dom1, dom2, objContext,"emp_code__admin_fr", editFlag, xtraParams);
itemChanged(dom1, dom2, objContext,"emp_code__admin_to", editFlag, xtraParams);
}
}
else if("emp_code__admin_fr".equalsIgnoreCase(currentColumn))
{
empCodeAdminFr = checkNull(genericUtility.getColumnValue("emp_code__admin_fr", dom));
sql = "select emp_fname, case when emp_mname is null then ' ' else emp_mname end as msetval2, emp_lname from employee where emp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, empCodeAdminFr);
rs = pstmt.executeQuery();
if (rs.next())
{
empFname = checkNull(rs.getString("emp_fname"));
empMname = checkNull(rs.getString("msetval2"));
empLname = checkNull(rs.getString("emp_lname"));
}
System.out.println("empFname:["+empFname+"]\t empMname:["+empMname+"]\t empLname:["+empLname+"]");
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
modStr = empFname+" "+empMname+" "+empLname;
valueXmlString.append("<emp_code_admin__fr_name><![CDATA[").append(modStr).append("]]></emp_code_admin__fr_name>\r\n");
}
else if("emp_code__admin_to".equalsIgnoreCase(currentColumn))
{
empCodeAdminTo = checkNull(genericUtility.getColumnValue("emp_code__admin_to", dom));
sql = "select emp_fname, case when emp_mname is null then ' ' else emp_mname end as msetval2, emp_lname from employee where emp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, empCodeAdminTo);
rs = pstmt.executeQuery();
if (rs.next())
{
empFname = checkNull(rs.getString("emp_fname"));
empMname = checkNull(rs.getString("msetval2"));
empLname = checkNull(rs.getString("emp_lname"));
}
System.out.println("empFname:["+empFname+"]\t empMname:["+empMname+"]\t empLname:["+empLname+"]");
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
modStr = empFname+" "+empMname+""+empLname;
valueXmlString.append("<emp_code_admin__to_name ><![CDATA[").append(modStr).append("]]></emp_code_admin__to_name>\r\n");
}
else if("emp_code__fr".equalsIgnoreCase(currentColumn))
{
empCodeFr = checkNull(genericUtility.getColumnValue("emp_code__fr", dom));
sql = "select emp_fname, case when emp_mname is null then ' ' else emp_mname end as msetval2, emp_lname from employee where emp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, empCodeFr);
rs = pstmt.executeQuery();
if (rs.next())
{
empFname = checkNull(rs.getString("emp_fname"));
empMname = checkNull(rs.getString("msetval2"));
empLname = checkNull(rs.getString("emp_lname"));
}
System.out.println("empFname:["+empFname+"]\t empMname:["+empMname+"]\t empLname:["+empLname+"]");
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
modStr = empFname+" "+empMname+""+empLname;
valueXmlString.append("<emp_name__fr ><![CDATA[").append(modStr).append("]]></emp_name__fr>\r\n");
}
else if("emp_code__to".equalsIgnoreCase(currentColumn))
{
empCodeTo = checkNull(genericUtility.getColumnValue("emp_code__to", dom));
sql = "select emp_fname, case when emp_mname is null then ' ' else emp_mname end as msetval2, emp_lname from employee where emp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, empCodeTo);
rs = pstmt.executeQuery();
if (rs.next())
{
empFname = checkNull(rs.getString("emp_fname"));
empMname = checkNull(rs.getString("msetval2"));
empLname = checkNull(rs.getString("emp_lname"));
}
System.out.println("empFname:["+empFname+"]\t empMname:["+empMname+"]\t empLname:["+empLname+"]");
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
modStr = empFname+" "+empMname+""+empLname;
valueXmlString.append("<emp_name__to ><![CDATA[").append(modStr).append("]]></emp_name__to>\r\n");
}
else if("itm_default".equalsIgnoreCase(currentColumn))
{
if(loginSite != null && loginSite.trim().length() > 0)
{
valueXmlString.append("<site_code__fr ><![CDATA[").append(loginSite).append("]]></site_code__fr>\r\n");
valueXmlString.append("<site_code__to ><![CDATA[").append(loginSite).append("]]></site_code__to>\r\n");
sql = "select descr as ls_descr from site where site_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, loginSite);
rs = pstmt.executeQuery();
if (rs.next())
{
lsDescr = checkNull(rs.getString("ls_descr"));
}
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
valueXmlString.append("<site_code__fr_descr ><![CDATA[").append(lsDescr).append("]]></site_code__fr_descr>\r\n");
valueXmlString.append("<site_code__to_descr ><![CDATA[").append(lsDescr).append("]]></site_code__to_descr>\r\n");
}
if(mlevl > 1)
{
valueXmlString.append("<site_code__fr protect=\"1\"><![CDATA[").append("").append("]]></site_code__fr>\r\n");
valueXmlString.append("<site_code__to protect=\"1\"><![CDATA[").append("").append("]]></site_code__to>\r\n");
}
}
else if("site_code__fr".equalsIgnoreCase(currentColumn))
{
siteCodeFr = checkNull(genericUtility.getColumnValue("site_code__fr", dom));
sql = "select descr as msetval from site where site_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, siteCodeFr);
rs = pstmt.executeQuery();
if (rs.next())
{
msetval = checkNull(rs.getString("msetval"));
}
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
valueXmlString.append("<site_code__fr_descr ><![CDATA[").append(msetval).append("]]></site_code__fr_descr>\r\n");
}
else if("site_code__to".equalsIgnoreCase(currentColumn))
{
siteCodeTo = checkNull(genericUtility.getColumnValue("site_code__to", dom));
sql = "select descr from site where site_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, siteCodeTo);
rs = pstmt.executeQuery();
if (rs.next())
{
descr = checkNull(rs.getString("descr"));
}
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
valueXmlString.append("<site_code__fr_descr ><![CDATA[").append(descr).append("]]></site_code__fr_descr>\r\n");
}
}
valueXmlString.append("</Detail1>");
break;
}
valueXmlString.append("</Root>");
}
catch(Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
if (conn != null)
{
conn.close();
conn = null;
}
}
catch (Exception e)
{
System.out.println("Exception ::" + e);
e.printStackTrace();
throw new ITMException(e);
}
}
return valueXmlString.toString();
}
private String errorType(Connection conn, String errorCode) throws ITMException
{
String msgType = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
try
{
if (conn == null)
{
System.out.println("Connection is null");
} else
{
System.out.println("Connection is not null");
}
String sql = " SELECT MSG_TYPE FROM MESSAGES WHERE MSG_NO = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, errorCode);
rs = pstmt.executeQuery();
if (rs.next())
{
msgType = rs.getString("MSG_TYPE");
}
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch (Exception ex)
{
ex.printStackTrace();
throw new ITMException(ex);
}
finally
{
try
{
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
}
return msgType;
}
private String checkNull(String input)
{
if (input == null)
{
input = "";
}
return input;
}
}
package ibase.webitm.ejb.adm;
import java.rmi.RemoteException;
import org.w3c.dom.Document;
import ibase.webitm.ejb.ValidatorLocal;
import ibase.webitm.utility.ITMException;
public interface ReportToChangeLocal extends ValidatorLocal
{
public String itemChanged(String xmlString, String xmlString1, String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag,String xtraParams) throws RemoteException,ITMException ;
public String wfValData(Document dom, Document dom1, Document dom2,String objContext, String editFlag, String xtraParams)throws RemoteException, ITMException;
}
package ibase.webitm.ejb.adm;
import java.rmi.RemoteException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import org.w3c.dom.Document;
import ibase.utility.CommonConstants;
import ibase.utility.E12GenericUtility;
import ibase.webitm.ejb.ITMDBAccessEJB;
import ibase.webitm.ejb.ProcessEJB;
import ibase.webitm.ejb.sys.UtilMethods;
import ibase.webitm.utility.ITMException;
import ibase.webitm.utility.TransIDGenerator;
public class ReportToChangePrc extends ProcessEJB //implements ReportToChangePrcLocal,ReportToChangePrcRemote
{
E12GenericUtility genericUtility = new ibase.utility.E12GenericUtility();
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB();
UtilMethods utilmethod = new UtilMethods();
public String process(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException, ITMException
{
Document detailDom = null;
Document headerDom = null;
String retStr = "";
Connection conn = null;
boolean isError = false;
try
{
conn = getConnection();
System.out.println("xmlString ["+xmlString+"] \t xmlString2 ["+xmlString2+"]");
if (xmlString != null && xmlString.trim().length() > 0)
{
headerDom = genericUtility.parseString(xmlString);
}
if (xmlString2 != null && xmlString2.trim().length() > 0)
{
detailDom = genericUtility.parseString(xmlString2);
}
retStr = process(headerDom, detailDom, windowName, xtraParams, conn);
System.out.println("Process forReportToChangePrc :::: " + retStr);
if(retStr != null && retStr.trim().length() > 0)
{
isError = true;
return retStr;
}
else
{
isError = false;
retStr = itmDBAccessEJB.getErrorString("","VPSUCC1","","",conn);
}
}
catch (Exception e)
{
System.out.println("Exception :ReportToChangePrc :process(String xmlString, String xmlString2, String windowName, String xtraParams):"
+ e.getMessage() + ":");
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if(conn != null)
{
if(isError)
{
conn.rollback();
}
else
{
conn.commit();
}
conn.close();
conn = null;
}
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
}
return retStr;
}// END OF PROCESS
public String process(Document headerDom, Document detailDom, String windowName, String xtraParams, Connection conn) throws RemoteException, ITMException
{
ResultSet rs = null, rs1 = null;
PreparedStatement pstmt = null, pstmt1 = null;
String errString = "";
String userId = "", chgTerm = "", loginSite = "";
String sql1 = "";
String lsEmpCode = "";
String lsReportTo = "";
String lsEmpSite = "";
String lsSiteCodeFr = "";
String lsSiteCodeTo = "";
String lsReportingType = "";
String lsReportToAdminO = "";
String lsReportToO = "";
String lsReportToAdminN = "";
String lsReportToN = "";
String mkeyStr = "";
String lsmTranid = "";
String sql = "";
String ldTranDateStr = "";
String xmlValues = "";
int llRowCnt = 0;
Timestamp ldToday = null;
Timestamp ldTranDate = null;
SimpleDateFormat sdf = null;
try
{
System.out.println("************* Inside process method ****************");
ldToday = utilmethod.dateTime(utilmethod.today() , utilmethod.stringToTime("00:00"));
sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
ldTranDateStr = sdf.format(new java.util.Date());
ldTranDate = Timestamp.valueOf(genericUtility.getValidDateString(ldTranDateStr,genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
System.out.println("ldToday ["+ldToday+"] \t ldTranDate ["+ldTranDate+"]");
userId = checkNull(genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode"));
chgTerm = checkNull(genericUtility.getValueFromXTRA_PARAMS(xtraParams, "termId"));
loginSite = checkNull(genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode"));
System.out.println("loginCode ["+userId+"] \t termId ["+chgTerm+"] \t loginSiteCode ["+loginSite+"]");
sql = "select "
+ "key_string as mkeystr "
+ "from "
+ "transetup "
+ "where "
+ "tran_window = 'w_emp_repchg_trace'";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
mkeyStr = checkNull(rs.getString("mkeystr"));
}
if(rs != null)
{
rs.close();
rs = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
System.out.println("mkeyStr:["+mkeyStr+"]");
lsReportingType = genericUtility.getColumnValue("reporting_type", headerDom);
lsSiteCodeFr = genericUtility.getColumnValue("site_code__fr", headerDom);
lsSiteCodeTo = genericUtility.getColumnValue("site_code__to", headerDom);
System.out.println("reporting_type ["+lsReportingType+"] "
+ "\t site_code__fr ["+lsSiteCodeFr+"] "
+ "\t site_code__to ["+lsSiteCodeTo+"]");
if(lsSiteCodeFr == null || lsSiteCodeTo.trim().length() == 0)
{
lsSiteCodeFr = "0";
}
if(lsSiteCodeTo == null || lsSiteCodeTo.trim().length() == 0)
{
lsSiteCodeTo = "ZZ";
}
if("R".equalsIgnoreCase(lsReportingType))
{
lsEmpCode = genericUtility.getColumnValue("emp_code__fr", headerDom);
lsReportTo = genericUtility.getColumnValue("emp_code__to", headerDom);
}
else
{
lsEmpCode = genericUtility.getColumnValue("emp_code__admin_fr", headerDom);
lsReportTo = genericUtility.getColumnValue("emp_code__admin_to", headerDom);
}
System.out.println("emp_code__fr ["+lsEmpCode+"] \t emp_code__to ["+lsReportTo+"] "
+ "\t emp_code__admin_fr ["+lsEmpCode+"] \t emp_code__admin_to ["+lsReportTo+"]");
sql= "SELECT EMPLOYEE.EMP_CODE, "
+ "EMPLOYEE.REPORT_TO, "
+ "EMPLOYEE.REPORT_TO__ADMIN "
+ "FROM EMPLOYEE "
+ "WHERE ( case when ? = 'R' then report_to else report_to__admin end = ?) "
+ "AND ( case when status is null then ' ' else status end <> 'S' ) "
+ "AND ( employee.work_site >= ?) "
+ "AND ( employee.work_site <= ?) ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, lsReportingType);
pstmt.setString(2, lsEmpCode);
pstmt.setString(3, lsSiteCodeFr);
pstmt.setString(4, lsSiteCodeTo);
rs = pstmt.executeQuery();
while(rs.next())
{
llRowCnt++;
lsEmpCode = checkNull(rs.getString("EMP_CODE"));
lsReportToO = checkNull(rs.getString("REPORT_TO"));
lsReportToAdminO = checkNull(rs.getString("REPORT_TO__ADMIN"));
lsReportToN = lsReportToO;
lsReportToAdminN = lsReportToAdminO;
if("R".equalsIgnoreCase(lsReportingType))
{
lsReportToN = lsReportTo;
}
else
{
lsReportToAdminN = lsReportTo;
}
System.out.println("llRowCnt ["+llRowCnt+"] \t EMP_CODE ["+lsEmpCode+"] \t REPORT_TO ["+lsReportToO+"] "
+ "\t REPORT_TO__ADMIN ["+lsReportToAdminO+"] \t lsReportToN ["+lsReportToN+"] "
+ "\t lsReportToAdminN ["+lsReportToAdminN+"]");
sql1 = "select "
+ "emp_site as ls_emp_site "
+ "from "
+ "employee "
+ "where "
+ "emp_code = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, lsEmpCode);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
lsEmpSite = checkNull(rs1.getString("ls_emp_site"));
}
System.out.println("ls_emp_site:["+lsEmpSite+"]");
if(rs1 != null)
{
rs1.close();
rs1 = null;
}
if(pstmt1 != null)
{
pstmt1.close();
pstmt1 = null;
}
xmlValues = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Root>";
xmlValues = xmlValues + "<Header></Header>";
xmlValues = xmlValues + "<Detail1>";
xmlValues = xmlValues + "<tran_id></tran_id>";
xmlValues = xmlValues + "<emp_site>" + lsEmpSite + "</emp_site>";
xmlValues = xmlValues + "<tran_type>" + lsReportingType + "</tran_type>";
xmlValues = xmlValues + "<tran_date>" + ldTranDateStr + "</tran_date>";
xmlValues = xmlValues + "</Detail1></Root>";
System.out.println("xmlValues :[" + xmlValues + "]");
TransIDGenerator tg = new TransIDGenerator(xmlValues, "BASE", CommonConstants.DB_NAME);
lsmTranid = tg.generateTranSeqID("EREPCH", "tran_id", mkeyStr, conn);
System.out.println("Generated Tran ID ::[" + lsmTranid + "]");
if(lsmTranid == null || lsmTranid.trim().length() == 0)
{
errString = itmDBAccessEJB.getErrorString("","VTTRANID",userId,"",conn);
return errString;
}
sql1 ="insert into emp_repchg_trace"+
"(tran_id , tran_date, tran_type, emp_code, report_to__o, "+
"report_to__n, report_to__admin_o, report_to__admin_n, confirmed, "+
"chg_date, chg_user, chg_term)"+
" values (?, ?, ?, ?, ? ,?, ?, ?, 'N',?, ?, ? )";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1,lsmTranid);
pstmt1.setTimestamp(2,ldTranDate);
pstmt1.setString(3,lsReportingType);
pstmt1.setString(4,lsEmpCode);
pstmt1.setString(5,lsReportToO);
pstmt1.setString(6,lsReportToN);
pstmt1.setString(7,lsReportToAdminO);
pstmt1.setString(8,lsReportToAdminN);
pstmt1.setTimestamp(9,ldToday);
pstmt1.setString(10,userId);
pstmt1.setString(11,chgTerm);
int data = pstmt1.executeUpdate();
if(data > 0) {System.out.println("Data Inserted into emp_repchg_trace table..");}
if(pstmt1 != null)
{
pstmt1.close();
pstmt1 = null;
}
errString = gbfPostLogic(lsmTranid,2,xtraParams,conn);
System.out.println("ReturnString gbfPostLogic ::" +errString);
if(errString != null && errString.trim().length() > 0)
{
return errString;
}
}
if(rs != null)
{
rs.close();
rs = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch (Exception e)
{
System.out.println("Exception :ReportToChangePrc :process(String xmlString, String xmlString2, String xtraParams):"
+ e.getMessage() + ":");
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch (Exception e)
{
errString = e.getMessage();
e.printStackTrace();
throw new ITMException(e);
}
}
return errString;
}
public String gbfPostLogic(String tranId, int aiCommit , String xtraParams,Connection conn) throws ITMException
{
String lsTranid = "" , lsConfirm = "" , lsTranType = "" , lsReportToN = "", lsReportToAdminN = "" ,lsEmpCode = "";
Timestamp ldToday = null;
String sql = "" , sql1 = "";
String userId = "" , chgTerm = "" , loginEmpCode = "", errString = "";
PreparedStatement pstmt = null , pstmt1 = null;
ResultSet rs = null;
try
{
System.out.println(" ************** Inside Post Logic Method ****************");
userId = checkNull(genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode"));
chgTerm = checkNull(genericUtility.getValueFromXTRA_PARAMS(xtraParams, "termId"));
loginEmpCode = checkNull(genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginEmpCode"));
System.out.println("userId["+userId+"]\t chgTerm["+chgTerm+"]\t loginEmpCode["+loginEmpCode+"]");
ldToday = utilmethod.dateTime(utilmethod.today() , utilmethod.stringToTime("00:00"));
System.out.println("Today's Date is ::" +ldToday);
sql = "select "
+ "confirmed, "
+ "report_to__n, "
+ "report_to__admin_n, "
+ "emp_code , "
+ "tran_type "
+ "from "
+ "emp_repchg_trace "
+ "where "
+ "tran_id = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
rs = pstmt.executeQuery();
if(rs.next())
{
lsConfirm = checkNull(rs.getString("confirmed"));
lsReportToN = checkNull(rs.getString("report_to__n"));
lsReportToAdminN = checkNull(rs.getString("report_to__admin_n"));
lsEmpCode = checkNull(rs.getString("emp_code"));
lsTranType = checkNull(rs.getString("tran_type"));
}
else
{
errString = itmDBAccessEJB.getErrorString("", "VTMCONF20", "", "", conn);
return errString;
}
System.out.println("lsConfirm:["+lsConfirm+"]\t "
+ "lsReportToN:["+lsReportToN+"]\t "
+ "lsReportToAdminN:["+lsReportToAdminN+"]\t "
+ "lsEmpCode:["+lsEmpCode+"]\t "
+ "lsTranType:["+lsTranType+"]");
if(rs != null)
{
rs.close();
rs = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
if("Y".equalsIgnoreCase(lsConfirm) )
{
errString = itmDBAccessEJB.getErrorString("", "VTMCONF1", "", "", conn);
return errString;
}
else
{
sql = "update "
+ "emp_repchg_trace "
+ "set "
+ "confirmed ='Y', "
+ "conf_date = ?, "
+ "emp_code__conf = ? "
+ "where "
+ "tran_id = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setTimestamp(1, ldToday);
pstmt.setString(2, loginEmpCode);
pstmt.setString(3, tranId);
int cnt1 = pstmt.executeUpdate();
System.out.println("cnt1 is ["+cnt1+"]");
if(cnt1 > 0)
{
System.out.println("Data Updated in emp_repchg_trace table..");
sql1 = "update "
+ "employee set "
+ "report_to = case when ? = 'R' then ? else report_to end, "
+ "report_to__admin = case when ? = 'A' then ? else report_to__admin end "
+ "where "
+ "emp_code = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, lsTranType);
pstmt1.setString(2, lsReportToN);
pstmt1.setString(3, lsTranType);
pstmt1.setString(4, lsReportToAdminN);
pstmt1.setString(5, lsEmpCode);
int cnt2 = pstmt1.executeUpdate();
System.out.println("cnt2 is ["+cnt2+"]");
if(cnt2 > 0)
{
System.out.println("Data Updated in employee table..");
}
if(pstmt1 != null)
{
pstmt1.close();
pstmt1 = null;
}
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if(rs != null)
{
rs.close();
rs = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
if(pstmt1 != null)
{
pstmt1.close();
pstmt1 = null;
}
}
catch(Exception e1)
{
e1.printStackTrace();
throw new ITMException(e1);
}
}
return errString;
}
private String checkNull(String input)
{
if (input == null)
{
input = "";
}
else
{
input = input.trim();
}
return input;
}
}
package ibase.webitm.ejb.adm;
import java.rmi.RemoteException;
import ibase.webitm.utility.ITMException;
public interface ReportToChangePrcLocal extends ibase.webitm.ejb.ProcessLocal
{
public String process() throws RemoteException,ITMException;
public String process(String xmlString, String xmlString2,String windowName, String xtraParams) throws RemoteException,ITMException;
}
package ibase.webitm.ejb.adm;
import java.rmi.RemoteException;
import ibase.webitm.utility.ITMException;
public interface ReportToChangePrcRemote extends ibase.webitm.ejb.ProcessRemote
{
public String process() throws RemoteException,ITMException;
public String process(String xmlString, String xmlString2,String windowName, String xtraParams) throws RemoteException,ITMException;
}
package ibase.webitm.ejb.adm;
import java.rmi.RemoteException;
import org.w3c.dom.Document;
import ibase.webitm.ejb.ValidatorRemote;
import ibase.webitm.utility.ITMException;
public interface ReportToChangeRemote extends ValidatorRemote
{
public String itemChanged(String xmlString, String xmlString1, String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag,String xtraParams) throws RemoteException,ITMException ;
public String wfValData(Document dom, Document dom1, Document dom2,String objContext, String editFlag, String xtraParams)throws RemoteException, ITMException;
}
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