Commit 455e66f0 authored by piyush's avatar piyush

Changes done to resolve issue of unconfirmed transaction validation on employee bases

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@217277 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 6bc2ddc9
...@@ -4,6 +4,7 @@ import java.sql.Connection; ...@@ -4,6 +4,7 @@ import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date; import java.util.Date;
import javax.ejb.Stateless; import javax.ejb.Stateless;
...@@ -17,6 +18,7 @@ import ibase.utility.E12GenericUtility; ...@@ -17,6 +18,7 @@ import ibase.utility.E12GenericUtility;
import ibase.webitm.ejb.ITMDBAccessEJB; import ibase.webitm.ejb.ITMDBAccessEJB;
import ibase.webitm.ejb.ValidatorEJB; import ibase.webitm.ejb.ValidatorEJB;
import ibase.webitm.utility.ITMException; import ibase.webitm.utility.ITMException;
import ibase.utility.CommonConstants;
@Stateless @Stateless
public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLocal ,PayStruChgReqICRemote public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLocal ,PayStruChgReqICRemote
...@@ -32,6 +34,8 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -32,6 +34,8 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
Document dom2 = null; Document dom2 = null;
String errString = null; String errString = null;
String objName = null;
String wfStatus = null;
E12GenericUtility genericUtility = new E12GenericUtility(); E12GenericUtility genericUtility = new E12GenericUtility();
...@@ -68,42 +72,106 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -68,42 +72,106 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
public String itemChanged(Document dom, Document dom1,Document dom2, 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
{ {
System.out.println("ITEMCHANGED CALLING");
int currentFormNo = 0; int currentFormNo = 0;
String sql = "",sql1 = "",amount=""; int domID=0;
Connection conn = null; int ctr = 0;
PreparedStatement pstmt = null,pstmt1=null;
ResultSet rs = null,rs1 = null; String adAllocGroup = "";
String adAllocGroupDescr = "";
String tranRemarks = "";
String tranCancelRemarks = "";
String objName = "";
String wfStatus = "O";
String hrAction = "";
String reqStatus = "U";
String statusDateStr = "";
String empCodeAprv = "";
String empCodeAuth1 = "";
String empCodeAuth2 = "";
String empCodeAuth3 = "";
String addUser = "";
String addTerm = "";
String chgUser = "";
String chgTerm = "";
String empCode = ""; String empCode = "";
String adCode = ""; String adCode = "";
String descr = ""; String descr = "";
String empFname = ""; String empFname = "";
String empMname =""; String empMname ="";
String empLname = ""; String empLname = "";
String chgUser = "",loginSite="",siteDescr="",designCode="",designation=""; String loginSite="";
String chgTerm = "",deptCode="",deptDescr="",errString=""; String siteDescr="";
int domID=0,ctr = 0; String designCode="";
String designation="";
String deptCode="";
String deptDescr="";
String errString="";
String paySite = "";
String currentDatestr = "";
String sql = "";
String sql1 = "";
String amount="";
String addDateStr="";
String chgDateStr="";
String tranDateStr="";
String curDate = "";
String empNameAprv = "";
String empName = "";
String empNameAuth1 = "";
String empNameAuth2 = "";
String empNameAuth3 = "";
String tranId = "";
String attribStatus = "N";
String attribUpdFlag = "A";
String cancRemarkProtectFlag = "1";
String hrActionProtectFlag = "1";
String haTip = "";
StringBuffer valueXmlString = new StringBuffer();
java.sql.Date statusDate = null;
java.sql.Date tranDate = null;
java.sql.Date addDate = null;
java.sql.Date chgDate = null;
SimpleDateFormat sdfAppl = null;
SimpleDateFormat sdfApplDateTime = null;
Connection conn = null;
PreparedStatement pstmt = null;
PreparedStatement pstmt1 = null;
ResultSet rs = null;
ResultSet rs1 = null;
NodeList parentNodeList = null; NodeList parentNodeList = null;
Node parentNode = null; Node parentNode = null;
Node childNode = null; Node childNode = null;
NodeList childNodeList = null; NodeList childNodeList = null;
E12GenericUtility genericUtility = new E12GenericUtility(); E12GenericUtility genericUtility = new E12GenericUtility();
if ( chgUser == null || chgUser.trim().length() == 0 )
{
chgUser = "SYSTEM";
}
if ( chgTerm == null || chgTerm.trim().length() == 0 )
{
chgTerm = "SYSTEM";
}
StringBuffer valueXmlString = new StringBuffer();
try try
{ {
System.out.println("ITEMCHANGED CALLING");
conn = getConnection(); conn = getConnection();
sdfAppl = new SimpleDateFormat(genericUtility.getApplDateFormat());
String loginEmpCode = checkNull( genericUtility.getValueFromXTRA_PARAMS( xtraParams, "loginEmpCode" ) );
chgUser = genericUtility.getValueFromXTRA_PARAMS( xtraParams, "loginCode" );
chgTerm = genericUtility.getValueFromXTRA_PARAMS( xtraParams, "termId" );
loginSite = getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
if ( chgUser == null || chgUser.trim().length() == 0 )
{
chgUser = "SYSTEM";
}
if ( chgTerm == null || chgTerm.trim().length() == 0 )
{
chgTerm = "SYSTEM";
}
if( objContext != null && objContext.trim().length() > 0 ) if( objContext != null && objContext.trim().length() > 0 )
{ {
...@@ -112,131 +180,175 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -112,131 +180,175 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
System.out.println("currentFormNo ..:: ["+currentFormNo+"]"); System.out.println("currentFormNo ..:: ["+currentFormNo+"]");
String loginEmpCode = checkNull( genericUtility.getValueFromXTRA_PARAMS( xtraParams, "loginEmpCode" ) );
chgUser = genericUtility.getValueFromXTRA_PARAMS( xtraParams, "loginCode" ); editFlag = "A";
chgTerm = genericUtility.getValueFromXTRA_PARAMS( xtraParams, "termId" ); attribStatus = "N";
loginSite = getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode"); attribUpdFlag = "A";
tranId = checkNull( genericUtility.getColumnValue("tran_id",dom1) ) ;
if (tranId == null || tranId.trim().length() == 0)
{
tranId = checkNull( genericUtility.getColumnValue("prv_tran_id",dom1) ) ;
tranId = tranId.replace(":" , "");
tranId = tranId.trim();
}
if (tranId == null || tranId.trim().length() == 0)
{
tranId = "";
editFlag = "A";
}
else
{
sql = "SELECT EMP_CODE FROM PAY_STRU_CHG_REQ_HDR WHERE TRAN_ID = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString( 1, tranId );
rs = pstmt.executeQuery();
if(rs.next())
{
editFlag = "E";
attribStatus = "O";
attribUpdFlag = "E";
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
Calendar cal = Calendar.getInstance();
currentDatestr = sdfAppl.format(cal.getTime());
objName = checkNull( getObjNameFromDom(dom,"objName",1));
valueXmlString = new StringBuffer( "<?xml version=\"1.0\"?>\r\n<Root>\r\n<Header>\r\n<editFlag>" ); 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<Errors>\r\n</Errors>\r\n" ); valueXmlString.append( editFlag ).append( "</editFlag>\r\n</Header>\r\n<Errors>\r\n</Errors>\r\n" );
SimpleDateFormat sdf = new SimpleDateFormat( genericUtility.getApplDateFormat() );
Date currentDate = new Date(); Date currentDate = new Date();
String curDate = currentDate == null ? "" : sdf.format( currentDate ); curDate = currentDate == null ? "" : sdfAppl.format( currentDate );
System.out.println( "curDate::::::"+curDate ); System.out.println( "curDate::::::"+curDate );
System.out.println("**********ITEMCHANGE FOR CASE"+currentFormNo+"**************"); System.out.println("**********ITEMCHANGE FOR CASE"+currentFormNo+"**************");
switch ( currentFormNo ) switch ( currentFormNo )
{ {
case 1: case 1:
{
domID++;
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNode = childNodeList.item(ctr);
valueXmlString.append("<Detail1 domID='" + domID + "' selected=\"Y\">\r\n");
valueXmlString.append("<attribute selected=\"Y\" updateFlag=\"A\" status=\"N\" pkNames=\" \" />\r\n");
//valueXmlString.append("<attribute selected='Y' updateFlag='A' status='N' pkNames='' />");
empCode=loginEmpCode;
if( "itm_default".equalsIgnoreCase( currentColumn.trim() ) )
{ {
sql = "select emp_fname,emp_mname,emp_lname,dept_code,design_code,designation from employee where emp_code = ? "; domID++;
pstmt = conn.prepareStatement(sql);
pstmt.setString( 1, empCode );
rs = pstmt.executeQuery();
if(rs.next())
{
empFname = checkNull( rs.getString("emp_fname") );
empMname = checkNull( rs.getString("emp_mname") );
empLname = checkNull( rs.getString("emp_lname") );
deptCode = checkNull( rs.getString("dept_code") );
designCode = checkNull( rs.getString("design_code") );
designation = checkNull( rs.getString("designation") );
}
if( rs != null )
{
rs.close();
rs = null;
}
if( pstmt != null )
{
pstmt.close();
pstmt = null;
}
sql = "select descr as dept_descr from department where dept_code = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString( 1, deptCode );
rs = pstmt.executeQuery();
if(rs.next())
{
deptDescr = checkNull( rs.getString("dept_descr") );
System.out.println("deptDescr>>>"+deptDescr);
}
if( rs != null )
{
rs.close();
rs = null;
}
if( pstmt != null )
{
pstmt.close();
pstmt = null;
}
sql = "select DESCR from SITE where SITE_CODE= ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, loginSite);
rs = pstmt.executeQuery();
if(rs.next())
{
siteDescr = checkNull(rs.getString("DESCR"));
}
String empName=empFname+" "+empMname+" "+empLname;
valueXmlString.append( "<tran_id><![CDATA[").append( "" ).append("]]></tran_id>");
valueXmlString.append( "<selectbox><![CDATA[").append( "true" ).append("]]></selectbox>");
valueXmlString.append( "<emp_code><![CDATA[").append( empCode ).append("]]></emp_code>");
valueXmlString.append( "<emp_name><![CDATA[").append( empName ).append("]]></emp_name>" );
// valueXmlString.append( "<emp_mname><![CDATA[").append( empMname ).append("]]></emp_mname>" );
// valueXmlString.append( "<emp_lname><![CDATA[").append( empLname ).append("]]></emp_lname>" );
valueXmlString.append( "<dept_code><![CDATA[").append( deptCode ).append("]]></dept_code>" );
valueXmlString.append( "<dept_descr><![CDATA[").append( deptDescr ).append("]]></dept_descr>" );
valueXmlString.append( "<design_code><![CDATA[").append( designCode ).append("]]></design_code>" );
valueXmlString.append( "<designation><![CDATA[").append( designation ).append("]]></designation>" );
valueXmlString.append( "<site_descr><![CDATA[").append( siteDescr ).append("]]></site_descr>" );
valueXmlString.append( "<status_date><![CDATA[").append( "" ).append("]]></status_date>" ); parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
valueXmlString.append( "<tran_date><![CDATA[").append( curDate ).append("]]></tran_date>" ); childNodeList = parentNode.getChildNodes();
valueXmlString.append( "<add_user ><![CDATA[").append( chgUser ).append( "]]></add_user>" ); childNode = childNodeList.item(ctr);
valueXmlString.append( "<add_term ><![CDATA[").append( chgTerm ).append( "]]></add_term>" );
valueXmlString.append( "<add_date ><![CDATA[").append( curDate ).append( "]]></add_date>" );
valueXmlString.append( "<chg_date ><![CDATA[").append( curDate ).append( "]]></chg_date>" );
valueXmlString.append( "<chg_user ><![CDATA[").append( chgUser ).append( "]]></chg_user>" );
valueXmlString.append( "<chg_term ><![CDATA[").append( chgTerm ).append( "]]></chg_term>" );
valueXmlString.append( "<req_status><![CDATA[").append( "U" ).append("]]></req_status>" );
valueXmlString.append( "<wf_status><![CDATA[").append( "O" ).append("]]></wf_status>" ); valueXmlString.append("<Detail1 domID='" + domID + "' selected=\"Y\">\r\n");
} valueXmlString.append("<attribute selected=\"Y\" updateFlag=\"" + attribUpdFlag + "\" status=\"" + attribStatus + "\" pkNames=\"tran_id:\"/>\r\n");
else if ("ad_alloc_group".equalsIgnoreCase( currentColumn ) ) //valueXmlString.append("<attribute selected='Y' updateFlag='A' status='N' pkNames='' />");
{
adCode = checkNull( genericUtility.getColumnValue("ad_alloc_group",dom) ) ; empCode = loginEmpCode;
System.out.println("adCode in header>>>"+adCode); if( "itm_default".equalsIgnoreCase( currentColumn.trim() ) )
if(adCode != null && adCode.length() > 0)
{ {
sql = "select descr as ad_alloc_group_descr from ALLWDEDN where AD_CODE= ? "; if (tranId == null || tranId.trim().length() == 0)
{
tranId = "";
}
else
{
sql = "SELECT TRAN_DATE, EMP_CODE,AD_ALLOC_GROUP ,REMARKS,CANCEL_REMARKS,WF_STATUS,REQ_STATUS,STATUS_DATE,EMP_CODE__APRV,EMP_CODE__AUTH1,EMP_CODE__AUTH2,EMP_CODE__AUTH3,ADD_DATE,ADD_USER,ADD_TERM,CHG_DATE,CHG_USER,CHG_TERM, CASE WHEN PAY_STRU_CHG_REQ_HDR.WF_STATUS <> 'S' THEN 'Not Applicable' WHEN PAY_STRU_CHG_REQ_HDR.REQ_STATUS = 'A' THEN 'Approved' WHEN PAY_STRU_CHG_REQ_HDR.REQ_STATUS = 'C' AND PAY_STRU_CHG_REQ_HDR.WF_STATUS = 'R' THEN 'Rejected' WHEN PAY_STRU_CHG_REQ_HDR.REQ_STATUS = 'C' THEN 'Cancelled by Employee' ELSE 'P' END AS HR_ACTION FROM PAY_STRU_CHG_REQ_HDR WHERE TRAN_ID = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString( 1, tranId );
rs = pstmt.executeQuery();
if(rs.next())
{
tranDate = rs.getDate("TRAN_DATE");
empCode = checkNull(rs.getString("EMP_CODE"));
adAllocGroup = checkNull(rs.getString("AD_ALLOC_GROUP"));
tranRemarks = checkNull(rs.getString("REMARKS"));
tranCancelRemarks = checkNull(rs.getString("CANCEL_REMARKS"));
wfStatus = checkNull(rs.getString("WF_STATUS"));
reqStatus = checkNull(rs.getString("REQ_STATUS"));
statusDate = rs.getDate("STATUS_DATE");
empCodeAprv = checkNull(rs.getString("EMP_CODE__APRV"));
empCodeAuth1 = checkNull(rs.getString("EMP_CODE__AUTH1"));
empCodeAuth2 = checkNull(rs.getString("EMP_CODE__AUTH2"));
empCodeAuth3 = checkNull(rs.getString("EMP_CODE__AUTH3"));
addDate = rs.getDate("ADD_DATE");
addUser = checkNull(rs.getString("ADD_USER"));
addTerm = checkNull(rs.getString("ADD_TERM"));
chgDate = rs.getDate("CHG_DATE");
chgUser = checkNull(rs.getString("CHG_USER"));
chgTerm = checkNull(rs.getString("CHG_TERM"));
hrAction = checkNull(rs.getString("HR_ACTION"));
if (objName != null && (objName.equalsIgnoreCase("pay_stru_chg_req_hr") || objName.equalsIgnoreCase("pay_stru_chg_req_hr_wiz")))
{
if (hrAction == null || hrAction.trim().length() == 0)
{
hrAction = "P";
}
if (hrAction.equalsIgnoreCase("P"))
{
if (wfStatus != null && wfStatus.equalsIgnoreCase("S"))
{
hrActionProtectFlag = "0";
cancRemarkProtectFlag = "0"; }
}
}
}
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
tranDateStr = tranDate == null ? curDate : sdfAppl.format( tranDate );
statusDateStr = statusDate == null ? "" : sdfAppl.format( statusDate );
addDateStr = addDate == null ? curDate : sdfAppl.format( addDate );
chgDateStr = chgDate == null ? curDate : sdfAppl.format( chgDate );
sql = "select case when a.emp_fname_long is null then a.emp_fname else a.emp_fname_long end as emp_fname,case when a.emp_mname_long is null then a.emp_mname else a.emp_mname_long end as emp_mname,case when a.emp_lname_long is null then a.emp_lname else a.emp_lname_long end as emp_lname,a.dept_code,a.design_code,a.designation,a.pay_site, b.descr as site_descr from employee a , site b where a.emp_code = ? and b.site_code = a.pay_site";
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
pstmt.setString( 1, adCode ); pstmt.setString( 1, empCode );
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
if(rs.next()) if(rs.next())
{ {
descr = checkNull( rs.getString("ad_alloc_group_descr") ); empFname = checkNull( rs.getString("emp_fname") );
empMname = checkNull( rs.getString("emp_mname") );
empLname = checkNull( rs.getString("emp_lname") );
deptCode = checkNull( rs.getString("dept_code") );
designCode = checkNull( rs.getString("design_code") );
designation = checkNull( rs.getString("designation") );
paySite = checkNull( rs.getString("pay_site") );
siteDescr = checkNull(rs.getString("site_descr"));
empName = empFname.trim() + " " + empMname.trim() + " " + empLname.trim();
}
if( rs != null )
{
rs.close();
rs = null;
}
if( pstmt != null )
{
pstmt.close();
pstmt = null;
}
sql = "select descr as dept_descr from department where dept_code = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString( 1, deptCode );
rs = pstmt.executeQuery();
if(rs.next())
{
deptDescr = checkNull( rs.getString("dept_descr") );
System.out.println("deptDescr>>>"+deptDescr);
} }
if( rs != null ) if( rs != null )
{ {
...@@ -248,18 +360,228 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -248,18 +360,228 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
} }
valueXmlString.append("<ad_alloc_group><![CDATA[").append( adCode ).append("]]></ad_alloc_group>");
valueXmlString.append("<ad_alloc_group_descr><![CDATA[").append( descr ).append("]]></ad_alloc_group_descr>");
sql = "select case when a.emp_fname_long is null then a.emp_fname else a.emp_fname_long end as emp_fname,case when a.emp_mname_long is null then a.emp_mname else a.emp_mname_long end as emp_mname,case when a.emp_lname_long is null then a.emp_lname else a.emp_lname_long end as emp_lname from employee a where a.emp_code = ?";
pstmt = conn.prepareStatement(sql);
if (empCodeAprv != null && empCodeAprv.trim().length() > 0)
{
pstmt.setString( 1, empCodeAprv );
rs = pstmt.executeQuery();
if(rs.next())
{
empFname = checkNull( rs.getString("emp_fname") );
empMname = checkNull( rs.getString("emp_mname") );
empLname = checkNull( rs.getString("emp_lname") );
empNameAprv = empFname.trim() + " " + empMname.trim() + " " + empLname.trim();
}
rs.close();
}
pstmt.clearParameters();
if (empCodeAuth1 != null && empCodeAuth1.trim().length() > 0)
{
pstmt.setString( 1, empCodeAuth1 );
rs = pstmt.executeQuery();
if(rs.next())
{
empFname = checkNull( rs.getString("emp_fname") );
empMname = checkNull( rs.getString("emp_mname") );
empLname = checkNull( rs.getString("emp_lname") );
empNameAuth1 = empFname.trim() + " " + empMname.trim() + " " + empLname.trim();
}
rs.close();
}
pstmt.clearParameters();
if (empCodeAuth2 != null && empCodeAuth2.trim().length() > 0)
{
pstmt.setString( 1, empCodeAuth2 );
rs = pstmt.executeQuery();
if(rs.next())
{
empFname = checkNull( rs.getString("emp_fname") );
empMname = checkNull( rs.getString("emp_mname") );
empLname = checkNull( rs.getString("emp_lname") );
empNameAuth2 = empFname.trim() + " " + empMname.trim() + " " + empLname.trim();
}
rs.close();
}
pstmt.clearParameters();
if (empCodeAuth3 != null && empCodeAuth3.trim().length() > 0)
{
pstmt.setString( 1, empCodeAuth3 );
rs = pstmt.executeQuery();
if(rs.next())
{
empFname = checkNull( rs.getString("emp_fname") );
empMname = checkNull( rs.getString("emp_mname") );
empLname = checkNull( rs.getString("emp_lname") );
empNameAuth3 = empFname.trim() + " " + empMname.trim() + " " + empLname.trim();
}
rs.close();
}
pstmt.close();
haTip = "";
if (adAllocGroup != null && adAllocGroup.trim().length() > 0)
{
try
{
sql = "SELECT DDF_GET_HA_TIP(?,?) AS HA_TIP FROM DUAL";
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, empCode );
pstmt.setString( 2, adAllocGroup );
rs = pstmt.executeQuery();
if( rs.next() )
{
haTip = checkNull(rs.getString( "HA_TIP" ));
System.out.println("HA_TIP>>>>>>>>>>>"+haTip);
}
if ( rs != null )
{
rs.close();
rs = null;
}
if ( pstmt != null )
{
pstmt.close();
pstmt = null;
}
}
catch (Exception e1)
{
haTip = "";
}
}
valueXmlString.append( "<selectbox><![CDATA[").append( "true" ).append("]]></selectbox>");
valueXmlString.append( "<tran_id><![CDATA[").append( tranId ).append("]]></tran_id>");
valueXmlString.append( "<tran_date><![CDATA[").append( tranDateStr ).append("]]></tran_date>");
valueXmlString.append( "<emp_code><![CDATA[").append( empCode ).append("]]></emp_code>");
valueXmlString.append( "<remarks><![CDATA[").append( tranRemarks ).append("]]></remarks>" );
valueXmlString.append( "<cancel_remarks protect=\"" + cancRemarkProtectFlag + "\"><![CDATA[").append( tranCancelRemarks ).append("]]></cancel_remarks>" );
valueXmlString.append( "<wf_status><![CDATA[").append( wfStatus ).append("]]></wf_status>" );
valueXmlString.append( "<req_status><![CDATA[").append( reqStatus ).append("]]></req_status>" );
valueXmlString.append( "<status_date><![CDATA[").append( statusDateStr ).append("]]></status_date>" );
valueXmlString.append( "<emp_code__aprv><![CDATA[").append( empCodeAprv ).append("]]></emp_code__aprv>" );
valueXmlString.append( "<emp_code__auth1><![CDATA[").append( empCodeAuth1 ).append("]]></emp_code__auth1>" );
valueXmlString.append( "<emp_code__auth2><![CDATA[").append( empCodeAuth2 ).append("]]></emp_code__auth2>" );
valueXmlString.append( "<emp_code__auth3><![CDATA[").append( empCodeAuth3 ).append("]]></emp_code__auth3>" );
valueXmlString.append( "<add_date><![CDATA[").append( addDateStr ).append( "]]></add_date>" );
valueXmlString.append( "<add_user><![CDATA[").append( chgUser ).append( "]]></add_user>" );
valueXmlString.append( "<add_term ><![CDATA[").append( chgTerm ).append( "]]></add_term>" );
valueXmlString.append( "<chg_date><![CDATA[").append( chgDateStr ).append( "]]></chg_date>" );
valueXmlString.append( "<chg_user><![CDATA[").append( chgUser ).append( "]]></chg_user>" );
valueXmlString.append( "<chg_term><![CDATA[").append( chgTerm ).append( "]]></chg_term>" );
valueXmlString.append( "<dept_code><![CDATA[").append( deptCode ).append("]]></dept_code>" );
valueXmlString.append( "<emp_name><![CDATA[").append( empName ).append("]]></emp_name>" );
valueXmlString.append( "<dept_descr><![CDATA[").append( deptDescr ).append("]]></dept_descr>" );
valueXmlString.append( "<emp_code__aprv__name><![CDATA[").append( empNameAprv ).append("]]></emp_code__aprv__name>" );
valueXmlString.append( "<emp_code__auth1__name><![CDATA[").append( empNameAuth1 ).append("]]></emp_code__auth1__name>" );
valueXmlString.append( "<emp_code__auth2__name><![CDATA[").append( empNameAuth2 ).append("]]></emp_code__auth2__name>" );
valueXmlString.append( "<emp_code__auth3__name><![CDATA[").append( empNameAuth3 ).append("]]></emp_code__auth3__name>" );
valueXmlString.append( "<ad_alloc_group><![CDATA[").append( adAllocGroup ).append("]]></ad_alloc_group>" );
valueXmlString.append( "<ad_alloc_group_descr><![CDATA[").append( adAllocGroupDescr ).append("]]></ad_alloc_group_descr>" );
valueXmlString.append( "<designation><![CDATA[").append( designation ).append("]]></designation>" );
valueXmlString.append( "<design_code><![CDATA[").append( designCode ).append("]]></design_code>" );
valueXmlString.append( "<pay_site><![CDATA[").append( paySite ).append("]]></pay_site>" );
valueXmlString.append( "<site_descr><![CDATA[").append( siteDescr ).append("]]></site_descr>" );
valueXmlString.append( "<hr_action protect=\"" + hrActionProtectFlag + "\"><![CDATA[").append( hrAction ).append("]]></hr_action>" );
valueXmlString.append( "<ha_tip><![CDATA[").append( haTip ).append("]]></ha_tip>" );
} }
else else if ("ad_alloc_group".equalsIgnoreCase( currentColumn ) )
{ {
valueXmlString.append("<ad_alloc_group><![CDATA[").append( "" ).append("]]></ad_alloc_group>"); adCode = checkNull( genericUtility.getColumnValue("ad_alloc_group",dom) ) ;
valueXmlString.append("<ad_alloc_group_descr><![CDATA[").append( "" ).append("]]></ad_alloc_group_descr>"); empCode = checkNull( genericUtility.getColumnValue("emp_code",dom) ) ;
System.out.println("adCode in header>>>"+adCode);
if(adCode != null && adCode.length() > 0)
{
sql = "select descr as ad_alloc_group_descr from ALLWDEDN where AD_CODE= ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString( 1, adCode );
rs = pstmt.executeQuery();
if(rs.next())
{
descr = checkNull( rs.getString("ad_alloc_group_descr") );
}
if( rs != null )
{
rs.close();
rs = null;
}
if( pstmt != null )
{
pstmt.close();
pstmt = null;
}
valueXmlString.append("<ad_alloc_group><![CDATA[").append( adCode ).append("]]></ad_alloc_group>");
valueXmlString.append("<ad_alloc_group_descr><![CDATA[").append( descr ).append("]]></ad_alloc_group_descr>");
}
else
{
valueXmlString.append("<ad_alloc_group><![CDATA[").append( "" ).append("]]></ad_alloc_group>");
valueXmlString.append("<ad_alloc_group_descr><![CDATA[").append( "" ).append("]]></ad_alloc_group_descr>");
}
haTip = "";
if (adCode != null && adCode.trim().length() > 0)
{
try
{
sql = "SELECT DDF_GET_HA_TIP(?,?) AS HA_TIP FROM DUAL";
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, empCode );
pstmt.setString( 2, adCode );
rs = pstmt.executeQuery();
if( rs.next() )
{
haTip = checkNull(rs.getString( "HA_TIP" ));
System.out.println("HA_TIP>>>>>>>>>>>"+haTip);
}
if ( rs != null )
{
rs.close();
rs = null;
}
if ( pstmt != null )
{
pstmt.close();
pstmt = null;
}
}
catch (Exception e1)
{
haTip = "";
}
}
valueXmlString.append( "<ha_tip><![CDATA[").append( haTip ).append("]]></ha_tip>" );
}
else if (currentColumn.trim().equals("itm_defaultedit"))
{
if (objName != null && (objName.equalsIgnoreCase("pay_stru_chg_req_hr") || objName.equalsIgnoreCase("pay_stru_chg_req_hr_wiz")))
{
/*
hrAction = checkNull( genericUtility.getColumnValue("hr_action",dom) ) ;
wfStatus = checkNull( genericUtility.getColumnValue("wf_status",dom) ) ;
tranCancelRemarks = checkNull( genericUtility.getColumnValue("cancel_remarks",dom) ) ;
if (!hrAction.trim().equalsIgnoreCase("P"))
{
valueXmlString.append("<hr_action protect ='1'><![CDATA[").append(hrAction).append("]]></hr_action>");
valueXmlString.append("<cancel_remarks protect ='1'><![CDATA[").append(tranCancelRemarks).append("]]></cancel_remarks>");
}
*/
}
} }
} }
} valueXmlString.append("</Detail1>\r\n");
valueXmlString.append("</Detail1>\r\n"); break;
break;
case 2 : case 2 :
{ {
valueXmlString.append("<Detail2>\r\n"); valueXmlString.append("<Detail2>\r\n");
...@@ -273,7 +595,15 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -273,7 +595,15 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
System.out.println("ADCode>>>"+adCode); System.out.println("ADCode>>>"+adCode);
System.out.println("empCode>>>"+empCode); System.out.println("empCode>>>"+empCode);
errString = defaultData(dom, dom1,objContext, xtraParams,conn,empCode,adCode); if (editFlag != null && editFlag.equalsIgnoreCase("A"))
{
errString = defaultData(dom, dom1, objContext, xtraParams, conn, empCode, adCode);
}
else
{
errString = defaultDataEdit(tranId, objContext, xtraParams, conn);
}
System.out.println("errString for default>>>"+errString); System.out.println("errString for default>>>"+errString);
...@@ -281,38 +611,7 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -281,38 +611,7 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
} }
else if (currentColumn.trim().equals("itm_defaultedit")) else if (currentColumn.trim().equals("itm_defaultedit"))
{ {
String tranId = checkNull(genericUtility.getColumnValue("tran_id", dom2));
sql="";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
rs = pstmt.executeQuery();
while(rs.next())
{
valueXmlString.append("<tran_id><![CDATA[").append(tranId).append("]]></tran_id>");
valueXmlString.append("<line_no><![CDATA[").append(rs.getInt("line_no")).append("]]></line_no>");
adCode = checkNull(rs.getString("ad_code"));
valueXmlString.append("<ad_code protect ='1'><![CDATA[").append(adCode).append("]]></ad_code>");
valueXmlString.append("<amount_orig protect ='1'><![CDATA[").append(rs.getInt("amount_orig")).append("]]></amount_orig>");
valueXmlString.append("<amount><![CDATA[").append(rs.getInt("amount")).append("]]></amount>");
valueXmlString.append("<remarks><![CDATA[").append(checkNull(rs.getString("remarks"))).append("]]></remarks>");
sql1="select descr from allwdedn where ad_code= ? ";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, adCode);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
valueXmlString.append("<ad_descr><![CDATA[").append(checkNull(rs.getString("descr"))).append("]]></ad_descr>");
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
} }
else if (currentColumn.trim().equals("amount")) else if (currentColumn.trim().equals("amount"))
{ {
...@@ -375,6 +674,7 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -375,6 +674,7 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
return valueXmlString.toString(); return valueXmlString.toString();
} }
public String wfValData() throws RemoteException,ITMException public String wfValData() throws RemoteException,ITMException
{ {
return ""; return "";
...@@ -389,6 +689,7 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -389,6 +689,7 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
Document dom1 = null; Document dom1 = null;
Document dom2 = null; Document dom2 = null;
String errString = ""; String errString = "";
String empCode = ""; // 28/02/2020
System.out.println("xmlString ["+xmlString+"]"); System.out.println("xmlString ["+xmlString+"]");
System.out.println("xmlString1["+xmlString1+"]"); System.out.println("xmlString1["+xmlString1+"]");
System.out.println("xmlString2["+xmlString2+"]"); System.out.println("xmlString2["+xmlString2+"]");
...@@ -461,6 +762,7 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -461,6 +762,7 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
String objName = ""; String objName = "";
String adCode = ""; String adCode = "";
String retString = ""; String retString = "";
String empCode = ""; // 28/02/2020
E12GenericUtility genericUtility = new E12GenericUtility(); E12GenericUtility genericUtility = new E12GenericUtility();
ITMDBAccessEJB itmDBAccess = null; ITMDBAccessEJB itmDBAccess = null;
...@@ -490,41 +792,188 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -490,41 +792,188 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
switch( currentFormNo ) switch( currentFormNo )
{ {
case 1: case 1:
{
parentNodeList = dom.getElementsByTagName( "Detail"+currentFormNo );
parentNode = parentNodeList.item( 0 );
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
System.out.print("childNodeListLength["+childNodeListLength+"]");
for( ctr = 0; ctr < childNodeListLength; ctr++ )
{ {
childNode = childNodeList.item( ctr ); parentNodeList = dom.getElementsByTagName( "Detail"+currentFormNo );
childNodeName = childNode.getNodeName(); parentNode = parentNodeList.item( 0 );
System.out.println("childNodeName["+childNodeName+"]"); childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
if( "ad_alloc_group".equalsIgnoreCase( childNodeName ) ) System.out.print("childNodeListLength["+childNodeListLength+"]");
{ for( ctr = 0; ctr < childNodeListLength; ctr++ )
count = 0; {
adCode = checkNull( genericUtility.getColumnValue( "ad_alloc_group", dom) ); childNode = childNodeList.item( ctr );
System.out.println("adCode got in the validation ..::["+adCode+"]"); childNodeName = childNode.getNodeName();
if( adCode == null || adCode.trim().length() == 0 ) System.out.println("childNodeName["+childNodeName+"]");
if( "ad_alloc_group".equalsIgnoreCase( childNodeName ) )
{
count = 0;
adCode = checkNull( genericUtility.getColumnValue( "ad_alloc_group", dom) );
empCode = checkNull( genericUtility.getColumnValue( "emp_code", dom) ); // 28/02/2020
System.out.println("adCode got in the validation ..::["+adCode+"]");
if( adCode == null || adCode.trim().length() == 0 )
{
System.out.println("Invalid adCode ::::");
retString = itmDBAccess.getErrorString( "", "VTPAYALC01", userId, "", conn );
return retString;
}
else
{
sql = " SELECT COUNT (1) FROM ALLWDEDN WHERE AD_CODE = ? ";
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, adCode );
rs = pstmt.executeQuery();
if( rs.next() )
{
count = rs.getInt( 1 );
System.out.println("count>>>>>>>>>>>"+count);
}
if ( rs != null )
{
rs.close();
rs = null;
}
if ( pstmt != null )
{
pstmt.close();
pstmt = null;
}
if( count == 0 )
{
retString = itmDBAccess.getErrorString( "", "VTPAYALC02", userId, "", conn );
return retString;
}
String tranId = checkNull( genericUtility.getColumnValue( "tran_id", dom) );
if (tranId == null || tranId.trim().length() == 0)
{
tranId = "*";
}
count = 0;
// 28/02/2020
// sql = " SELECT COUNT (1) AS CNT FROM PAY_STRU_CHG_REQ_HDR WHERE TRAN_ID <> ? AND AD_ALLOC_GROUP = ? AND REQ_STATUS NOT IN ('A','C') ";
sql = " SELECT COUNT (1) AS CNT FROM PAY_STRU_CHG_REQ_HDR WHERE TRAN_ID <> ? AND EMP_CODE = ? AND AD_ALLOC_GROUP = ? AND REQ_STATUS NOT IN ('A','C') ";
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, tranId );
pstmt.setString( 2, empCode ); // 28/02/2020
pstmt.setString( 3, adCode );
rs = pstmt.executeQuery();
if( rs.next() )
{
count = rs.getInt( "CNT" );
System.out.println("count>>>>>>>>>>>"+count);
}
if ( rs != null )
{
rs.close();
rs = null;
}
if ( pstmt != null )
{
pstmt.close();
pstmt = null;
}
if( count > 0 )
{
retString = itmDBAccess.getErrorString( "", "VTPAYALC15", userId, "", conn );
return retString;
}
}
}
else if( "hr_action".equalsIgnoreCase( childNodeName ) )
{ {
System.out.println("Invalid adCode ::::"); String hrAction = checkNull( genericUtility.getColumnValue( "hr_action", dom) );
String cancelRemarks = checkNull( genericUtility.getColumnValue( "cancel_remarks", dom) );
retString = itmDBAccess.getErrorString( "", "VTPAYALC01", userId, "", conn ); if (hrAction.equalsIgnoreCase("R") && (cancelRemarks == null || cancelRemarks.trim().length() == 0))
return retString; {
retString = itmDBAccess.getErrorString( "", "VTPAYALC21", userId, "", conn );
return retString;
}
} }
if(adCode != (null) || adCode.trim().length()>0)
}
}
break;
case 2 :
{
String amountType="";
double totalAmt=0d, totalAmtOrg=0d, amount = 0d;
parentNodeList = dom.getElementsByTagName("Detail2");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for(ctr = 0; ctr < childNodeListLength; ctr ++)
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if(childNodeName.equalsIgnoreCase("amount_type"))
{ {
sql = " SELECT COUNT (1) FROM ALLWDEDN WHERE AD_CODE = ? "; amountType = checkNull( genericUtility.getColumnValue("amount_type",dom )) ;
}
else if(childNodeName.equalsIgnoreCase("amount"))
{
String amountStr = checkNull( genericUtility.getColumnValue("amount",dom )) ;
amountType = checkNull( genericUtility.getColumnValue("amount_type",dom )) ;
amount = 0d;
try
{
amount = Double.parseDouble(amountStr);
}
catch(Exception e1)
{
System.out.println( "Exception : [PayStruChgReqIC][wfValData(String xmlString)] : ==>\n"+e1.getMessage());
e1.printStackTrace();
System.out.println("Exception in parsing the amount");
retString = itmDBAccess.getErrorString( "", "VTPAYALC03", userId, "", conn );
return retString;
}
if(amount < 0.00 )
{
System.out.println("amount1 --["+amount+"]");
retString = itmDBAccess.getErrorString( "", "VTPAYALC03", userId, "", conn );
return retString;
}
else if (amount > 0)
{
double k = amount % 1;
if (k > 0d)
{
retString = itmDBAccess.getErrorString( "", "VTPAYALC22", userId, "", conn );
return retString;
}
}
String amountOrgStr = checkNull( genericUtility.getColumnValue("amount_orig",dom )) ;
double amountOrg = 0d;
if (amountOrgStr != null && amountOrgStr.trim().length() > 0)
{
try
{
amountOrg = Double.parseDouble(amountOrgStr);
}
catch(Exception e1)
{
amountOrg = 0d;
}
}
if (amountOrg == amount)
{
retString = itmDBAccess.getErrorString( "", "VTPAYALC23", userId, "", conn );
return retString;
}
String empCode = checkNull(genericUtility.getColumnValue("emp_code",dom1 ));
String parValue = "";
sql = " SELECT DDF_HR_SITE_ENV_VALUE(?,FN_SYSDATE(),'HEAD_ALLOC_AMT_RANGE') as par_value from dual";
pstmt = conn.prepareStatement( sql ); pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, adCode ); pstmt.setString( 1, empCode );
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
if( rs.next() ) if( rs.next() )
{ {
count = rs.getInt( 1 ); parValue = checkNull(rs.getString( "par_value" ));
System.out.println("count>>>>>>>>>>>"+count); System.out.println("parValue>>>>>>>>>>>"+parValue);
} }
if ( rs != null ) if ( rs != null )
{ {
...@@ -536,75 +985,67 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -536,75 +985,67 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
} }
if( count == 0 ) String paramArr[] = parValue.split(":");
double parValFrom = 0d;
double parValTo = 99d;
try
{
parValFrom = Double.parseDouble(paramArr[0]);
parValTo = Double.parseDouble(paramArr[1]);
}
catch(Exception e)
{ {
retString = itmDBAccess.getErrorString( "", "VTPAYALC02", userId, "", conn ); parValFrom = 0d;
parValTo = 99d;
}
if ((amount < parValFrom) || (amount > parValTo))
{
retString = itmDBAccess.getErrorString( "", "VTPAYALC24", userId, "", conn );
return retString; return retString;
} }
}
}
}
}
break;
case 2 :
String amountType="";
double totalAmt=0,totalAmtOrg=0;
parentNodeList = dom.getElementsByTagName("Detail2");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for(ctr = 0; ctr < childNodeListLength; ctr ++)
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if(childNodeName.equalsIgnoreCase("amount_type"))
{
amountType = checkNull( genericUtility.getColumnValue("amount_type",dom )) ;
}
else if(childNodeName.equalsIgnoreCase("amount"))
{
String amount = checkNull( genericUtility.getColumnValue("amount",dom )) ;
if(Double.parseDouble(amount) < 0.00 )
{
System.out.println("amount1 --["+amount+"]");
retString = itmDBAccess.getErrorString( "", "VTPAYALC03", userId, "", conn );
return retString;
}
if(amountType.equals("Fixed"))
{
totalAmt=totalAmt+Double.parseDouble(amount);
System.out.println("totalamt---["+totalAmt+"]"); if(amountType.equals("Fixed"))
System.out.println("amount---["+amount+"]"); {
totalAmt=totalAmt+amount;
System.out.println("totalamt---["+totalAmt+"]");
System.out.println("amount---["+amount+"]");
}
} }
}
else if(childNodeName.equalsIgnoreCase("amount_orig"))
else if(childNodeName.equalsIgnoreCase("amount_orig")) {
{ if(amountType.equals("Fixed"))
if(amountType.equals("Fixed")) {
{ String amountOrg = checkNull( genericUtility.getColumnValue("amount_orig",dom )) ;
String amountOrg = checkNull( genericUtility.getColumnValue("amount_orig",dom )) ; amount = 0d;
if (amountOrg != null && amountOrg.trim().length() > 0)
totalAmtOrg=totalAmtOrg+Double.parseDouble(amountOrg); {
try
System.out.println("totalamt---["+totalAmtOrg+"]"); {
System.out.println("amount---["+amountOrg+"]"); amount = Double.parseDouble(amountOrg);
}
catch(Exception e1)
{
amount = 0d;
}
totalAmtOrg=totalAmtOrg+amount;
System.out.println("totalamt---["+totalAmtOrg+"]");
System.out.println("amount---["+amountOrg+"]");
}
}
} }
} }
/*
if(totalAmtOrg != totalAmt) if(totalAmtOrg != totalAmt)
{ {
System.out.println("::: total amount not equal for fixed type :::"); System.out.println("::: total amount not equal for fixed type :::");
errString = checkNull(itmDBAccess.getErrorString("", "VTPAYALC11",userId, "", conn)); errString = checkNull(itmDBAccess.getErrorString("", "VTPAYALC11",userId, "", conn));
} }
*/
break;
} }
break;
} }
} }
catch(Exception e) catch(Exception e)
...@@ -707,98 +1148,102 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -707,98 +1148,102 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
if("A".equalsIgnoreCase(key_flag)) /*if("A".equalsIgnoreCase(key_flag))
{*/
System.out.println("@S@emp_code__decl>>>>["+empCode+"]");
sql="select ALLWDEDN.AD_CODE,ALLWDEDN.DESCR,EMPLOYEE_AD.EFF_DATE,EMPLOYEE_AD.AMOUNT,EMPLOYEE_AD.Type from EMPLOYEE_AD,ALLWDEDN where EMPLOYEE_AD.emp_code= ? and ALLWDEDN.AD_CODE=EMPLOYEE_AD.AD_CODE and EMPLOYEE_AD.EFF_DATE <= TRUNC(SYSDATE) AND EMPLOYEE_AD.EXP_DATE >= TRUNC(SYSDATE) AND EMPLOYEE_AD.AD_CODE IN (?) ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, empCode);
pstmt.setString(2, adCode);
rs = pstmt.executeQuery();
int lineNo = 0;
while(rs.next())
{ {
System.out.println("@S@emp_code__decl>>>>["+empCode+"]"); lineNo++;
ad_code = checkNull(rs.getString("ad_code"));
sql="select ALLWDEDN.AD_CODE,ALLWDEDN.DESCR,EMPLOYEE_AD.EFF_DATE,EMPLOYEE_AD.AMOUNT,EMPLOYEE_AD.Type from EMPLOYEE_AD,ALLWDEDN where EMPLOYEE_AD.emp_code= ? and ALLWDEDN.AD_CODE=EMPLOYEE_AD.AD_CODE and EMPLOYEE_AD.EFF_DATE <= TRUNC(SYSDATE) AND EMPLOYEE_AD.EXP_DATE >= TRUNC(SYSDATE) AND EMPLOYEE_AD.AD_CODE IN (?) "; ad_descr = checkNull(rs.getString("DESCR"));
double amt = rs.getDouble("amount");
double amtOrig = rs.getDouble("amount");
String effDateOrig = checkNull(sdf.format(rs.getDate("eff_date")));
String amt_type=checkNull(rs.getString("TYPE"));
System.out.println("amt_type>>>>>"+amt_type);
valueXmlBuff.append("<Detail2 domID='" + lineNo + "' selected=\"Y\">\r\n");
valueXmlBuff.append("<attribute selected=\"Y\" updateFlag=\"A\" status=\"N\"/>\r\n");
valueXmlBuff.append( "<tran_id><![CDATA[").append( "" ).append("]]></tran_id>");
valueXmlBuff.append("<line_no>").append("<![CDATA[" + lineNo + "]]>").append("</line_no>");
valueXmlBuff.append("<ad_code>").append("<![CDATA[" + ad_code + "]]>").append("</ad_code>");
valueXmlBuff.append("<ad_descr>").append("<![CDATA[" + ad_descr + "]]>").append("</ad_descr>");
valueXmlBuff.append("<amount_type>").append("<![CDATA[" + amt_type + "]]>").append("</amount_type>");
//valueXmlBuff.append("<amount>").append("<![CDATA[" + amt + "]]>").append("</amount>");
valueXmlBuff.append("<amount>").append("<![CDATA[" + String.format("%.0f", amt) + "]]>").append("</amount>");//Modified by Ahmed on 25/02/2020 to display amount value without decimal
valueXmlBuff.append("<amount_type_orig>").append("<![CDATA[" + amt_type + "]]>").append("</amount_type_orig>");
//valueXmlBuff.append("<amount_orig>").append("<![CDATA[" + amtOrig + "]]>").append("</amount_orig>");
valueXmlBuff.append("<amount_orig>").append("<![CDATA[" + String.format("%.0f", amtOrig) + "]]>").append("</amount_orig>");//Modified by Ahmed on 25/02/2020 to display amount value without decimal
valueXmlBuff.append( "<remarks><![CDATA[").append( "" ).append("]]></remarks>");
valueXmlBuff.append("<eff_date>").append("<![CDATA[" + effDateOrig + "]]>").append("</eff_date>");
valueXmlBuff.append("<eff_date_orig>").append("<![CDATA[" + effDateOrig + "]]>").append("</eff_date_orig>");
valueXmlBuff.append("</Detail2>");
System.out.println("out5");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if (lineNo == 0)
{
sql="select ALLWDEDN.AD_CODE,ALLWDEDN.DESCR, TRUNC(SYSDATE) AS EFF_DATE, 0 AS AMOUNT,ALLWDEDN.INPUT_TYPE AS Type from ALLWDEDN where ALLWDEDN.AD_CODE IN (?) ";
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
pstmt.setString(1, empCode); pstmt.setString(1, adCode);
pstmt.setString(2, adCode);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
int lineNo = 0;
while(rs.next()) while(rs.next())
{ {
lineNo++; lineNo++;
ad_code = checkNull(rs.getString("ad_code")); ad_code = checkNull(rs.getString("ad_code"));
ad_descr = checkNull(rs.getString("DESCR")); ad_descr = checkNull(rs.getString("DESCR"));
double amt = rs.getDouble("amount"); double amt = rs.getDouble("amount");
double amt_org = rs.getDouble("amount"); double amtOrig = rs.getDouble("amount");
String effDateOrig = checkNull(sdf.format(rs.getDate("eff_date"))); String effDateOrig = checkNull(sdf.format(rs.getDate("eff_date")));
String amt_type=checkNull(rs.getString("TYPE")); String amt_type=checkNull(rs.getString("TYPE"));
System.out.println("amt_type>>>>>"+amt_type); System.out.println("amt_type>>>>>"+amt_type);
valueXmlBuff.append("<Detail2 domID='" + lineNo + "' selected=\"Y\">\r\n"); valueXmlBuff.append("<Detail2 domID='" + lineNo + "' selected=\"Y\">\r\n");
valueXmlBuff.append("<attribute selected=\"Y\" updateFlag=\"A\" status=\"N\"/>\r\n"); valueXmlBuff.append("<attribute selected=\"N\" updateFlag=\"A\" status=\"N\"/>\r\n");
valueXmlBuff.append( "<tran_id><![CDATA[").append( "" ).append("]]></tran_id>"); valueXmlBuff.append( "<tran_id><![CDATA[").append( "" ).append("]]></tran_id>");
valueXmlBuff.append("<line_no>").append("<![CDATA[" + lineNo + "]]>").append("</line_no>"); valueXmlBuff.append("<line_no>").append("<![CDATA[" + lineNo + "]]>").append("</line_no>");
valueXmlBuff.append("<ad_code>").append("<![CDATA[" + ad_code + "]]>").append("</ad_code>"); valueXmlBuff.append("<ad_code>").append("<![CDATA[" + ad_code + "]]>").append("</ad_code>");
valueXmlBuff.append("<ad_descr>").append("<![CDATA[" + ad_descr + "]]>").append("</ad_descr>"); valueXmlBuff.append("<ad_descr>").append("<![CDATA[" + ad_descr + "]]>").append("</ad_descr>");
valueXmlBuff.append("<amount_type>").append("<![CDATA[" + amt_type + "]]>").append("</amount_type>"); valueXmlBuff.append("<amount_type>").append("<![CDATA[" + amt_type + "]]>").append("</amount_type>");
valueXmlBuff.append("<amount>").append("<![CDATA[" + amt + "]]>").append("</amount>"); //valueXmlBuff.append("<amount>").append("<![CDATA[" + amt + "]]>").append("</amount>");
valueXmlBuff.append("<amount>").append("<![CDATA[" + String.format("%.0f", amt) + "]]>").append("</amount>");//Modified by Ahmed on 25/02/2020 to display amount value without decimal
valueXmlBuff.append("<amount_type_orig>").append("<![CDATA[" + amt_type + "]]>").append("</amount_type_orig>"); valueXmlBuff.append("<amount_type_orig>").append("<![CDATA[" + amt_type + "]]>").append("</amount_type_orig>");
valueXmlBuff.append("<amount_orig>").append("<![CDATA[" + amt_org + "]]>").append("</amount_orig>"); //valueXmlBuff.append("<amount_orig>").append("<![CDATA[" + amtOrig + "]]>").append("</amount_orig>");
valueXmlBuff.append( "<remarks><![CDATA[").append( "" ).append("]]></remarks>"); valueXmlBuff.append("<amount_orig>").append("<![CDATA[" + String.format("%.0f", amtOrig) + "]]>").append("</amount_orig>");//Modified by Ahmed on 25/02/2020 to display amount value without decimal
valueXmlBuff.append("<eff_date>").append("<![CDATA[" + effDateOrig + "]]>").append("</eff_date>"); valueXmlBuff.append("<eff_date>").append("<![CDATA[" + effDateOrig + "]]>").append("</eff_date>");
valueXmlBuff.append("<eff_date_orig>").append("<![CDATA[" + effDateOrig + "]]>").append("</eff_date_orig>"); valueXmlBuff.append("<eff_date_orig>").append("<![CDATA[" + effDateOrig + "]]>").append("</eff_date_orig>");
valueXmlBuff.append( "<remarks><![CDATA[").append( "" ).append("]]></remarks>");
valueXmlBuff.append("</Detail2>"); valueXmlBuff.append("</Detail2>");
System.out.println("out5"); System.out.println("out51");
} }
rs.close(); rs.close();
rs = null; rs = null;
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
if (lineNo == 0)
{
sql="select ALLWDEDN.AD_CODE,ALLWDEDN.DESCR, TRUNC(SYSDATE) AS EFF_DATE, 0 AS AMOUNT,ALLWDEDN.INPUT_TYPE AS Type from ALLWDEDN where ALLWDEDN.AD_CODE IN (?) ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, adCode);
rs = pstmt.executeQuery();
while(rs.next())
{
lineNo++;
ad_code = checkNull(rs.getString("ad_code"));
ad_descr = checkNull(rs.getString("DESCR"));
double amt = rs.getDouble("amount");
double amt_org = rs.getDouble("amount");
String effDateOrig = checkNull(sdf.format(rs.getDate("eff_date")));
String amt_type=checkNull(rs.getString("TYPE"));
System.out.println("amt_type>>>>>"+amt_type);
valueXmlBuff.append("<Detail2 domID='" + lineNo + "' selected=\"Y\">\r\n");
valueXmlBuff.append("<attribute selected=\"N\" updateFlag=\"A\" status=\"N\"/>\r\n");
valueXmlBuff.append( "<tran_id><![CDATA[").append( "" ).append("]]></tran_id>");
valueXmlBuff.append("<line_no>").append("<![CDATA[" + lineNo + "]]>").append("</line_no>");
valueXmlBuff.append("<ad_code>").append("<![CDATA[" + ad_code + "]]>").append("</ad_code>");
valueXmlBuff.append("<ad_descr>").append("<![CDATA[" + ad_descr + "]]>").append("</ad_descr>");
valueXmlBuff.append("<amount_type>").append("<![CDATA[" + amt_type + "]]>").append("</amount_type>");
valueXmlBuff.append("<amount>").append("<![CDATA[" + amt + "]]>").append("</amount>");
valueXmlBuff.append("<amount_type_orig>").append("<![CDATA[" + amt_type + "]]>").append("</amount_type_orig>");
valueXmlBuff.append("<amount_orig>").append("<![CDATA[" + amt_org + "]]>").append("</amount_orig>");
valueXmlBuff.append("<eff_date>").append("<![CDATA[" + effDateOrig + "]]>").append("</eff_date>");
valueXmlBuff.append("<eff_date_orig>").append("<![CDATA[" + effDateOrig + "]]>").append("</eff_date_orig>");
valueXmlBuff.append( "<remarks><![CDATA[").append( "" ).append("]]></remarks>");
valueXmlBuff.append("</Detail2>");
System.out.println("out51");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
} }
//}
valueXmlBuff.append("</Root>\r\n"); valueXmlBuff.append("</Root>\r\n");
System.out.println("Returning from " + this.getClass().getSimpleName() +" : " + valueXmlBuff.toString()); System.out.println("Returning from " + this.getClass().getSimpleName() +" : " + valueXmlBuff.toString());
} catch (Exception e) { } catch (Exception e) {
...@@ -806,10 +1251,6 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -806,10 +1251,6 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
throw new ITMException(e); throw new ITMException(e);
} finally { } finally {
try { try {
if(conn != null) {
conn.close();
conn = null;
}
if(rs != null) { if(rs != null) {
rs.close(); rs.close();
rs = null; rs = null;
...@@ -825,4 +1266,155 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca ...@@ -825,4 +1266,155 @@ public class PayStruChgReqIC extends ValidatorEJB implements PayStruChgReqICLoca
} }
return valueXmlBuff.toString(); return valueXmlBuff.toString();
} }
public String defaultDataEdit( String tranId, String objContext, String xtraParams ,Connection conn) throws ITMException
{
int lineNo = 0;
int domId = 0;
double amount = 0d;
double amountOrig = 0d;
String sql = "";
String adCode = "";
String adDescr = "";
String userId="";
String effDateStr = "";
String effDateOrigStr = "";
String amountType = "";
String amountTypeOrig = "";
String detRemarks = "";
java.sql.Date effDate = null;
java.sql.Date effDateOrig = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
StringBuffer valueXmlBuff = new StringBuffer( "<?xml version=\"1.0\"?>\r\n<Root>\r\n<Header>\r\n<editFlag>" );
valueXmlBuff.append( "E" ).append( "</editFlag>\r\n</Header>\r\n<Errors>\r\n</Errors>\r\n" );
E12GenericUtility genericUtility = new E12GenericUtility();
try
{
SimpleDateFormat sdf = new SimpleDateFormat( genericUtility.getApplDateFormat() );
userId = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode");
sql = "SELECT A.LINE_NO AS LINE_NO, A.AD_CODE AS AD_CODE, A.EFF_DATE AS EFF_DATE, A.AMOUNT_ORIG AS AMOUNT_ORIG, A.AMOUNT_TYPE_ORIG AS AMOUNT_TYPE_ORIG, A.AMOUNT AS AMOUNT, A.AMOUNT_TYPE AS AMOUNT_TYPE, A.REMARKS AS REMARKS, A.EFF_DATE_ORIG AS EFF_DATE_ORIG, B.DESCR AS AD_DESCR FROM PAY_STRU_CHG_REQ_DET A, ALLWDEDN B WHERE A.TRAN_ID = ? AND B.AD_CODE = A.AD_CODE";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
rs = pstmt.executeQuery();
lineNo = 0;
while(rs.next())
{
domId++;
lineNo = rs.getInt("LINE_NO");
adCode = checkNull(rs.getString("AD_CODE"));
effDate = rs.getDate("EFF_DATE");
amountOrig = rs.getDouble("AMOUNT_ORIG");
amountTypeOrig = checkNull(rs.getString("AMOUNT_TYPE_ORIG"));
amount = rs.getDouble("AMOUNT");
amountType = checkNull(rs.getString("AMOUNT_TYPE"));
detRemarks = checkNull(rs.getString("REMARKS"));
effDateOrig = rs.getDate("EFF_DATE_ORIG");
adDescr = checkNull(rs.getString("AD_DESCR"));
effDateStr = sdf.format(effDate);
if (effDateOrig != null)
{
effDateOrigStr = sdf.format(effDateOrig);
}
valueXmlBuff.append("<Detail2 domID='" + lineNo + "' selected=\"Y\">\r\n");
valueXmlBuff.append("<attribute selected=\"Y\" updateFlag=\"E\" status=\"O\"/>\r\n");
valueXmlBuff.append( "<tran_id><![CDATA[").append( tranId ).append("]]></tran_id>");
valueXmlBuff.append("<line_no>").append("<![CDATA[" + lineNo + "]]>").append("</line_no>");
valueXmlBuff.append("<ad_code>").append("<![CDATA[" + adCode + "]]>").append("</ad_code>");
valueXmlBuff.append("<eff_date>").append("<![CDATA[" + effDateStr + "]]>").append("</eff_date>");
//valueXmlBuff.append("<amount_orig>").append("<![CDATA[" + amountOrig + "]]>").append("</amount_orig>");
valueXmlBuff.append("<amount_orig>").append("<![CDATA[" + String.format("%.0f", amountOrig) + "]]>").append("</amount_orig>");//Modified by Ahmed on 25/02/2020 to display amount value without decimal
valueXmlBuff.append("<amount_type_orig>").append("<![CDATA[" + amountTypeOrig + "]]>").append("</amount_type_orig>");
//valueXmlBuff.append("<amount protect=\"1\">").append("<![CDATA[" + amount + "]]>").append("</amount>");
valueXmlBuff.append("<amount protect=\"1\">").append("<![CDATA[" + String.format("%.0f", amount) + "]]>").append("</amount>");//Modified by Ahmed on 25/02/2020 to display amount value without decimal
valueXmlBuff.append("<amount_type>").append("<![CDATA[" + amountType + "]]>").append("</amount_type>");
valueXmlBuff.append("<remarks protect=\"1\">").append("<![CDATA[" + detRemarks + "]]>").append("</remarks>");
valueXmlBuff.append("<eff_date_orig>").append("<![CDATA[" + effDateOrigStr + "]]>").append("</eff_date_orig>");
valueXmlBuff.append("</Detail2>");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
valueXmlBuff.append("</Root>\r\n");
System.out.println("Returning from " + this.getClass().getSimpleName() +" : " + valueXmlBuff.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;
}
System.out.println("Closed all Database Resource...!");
}
catch (Exception e)
{
System.out.println("Exception in EJB ["+this.getClass().getSimpleName()+"]::generateDefaultData::[" + e.getMessage()+"]");
}
}
return valueXmlBuff.toString();
}
private String getObjNameFromDom( Document dom, String attribute , int currFormNo) throws ITMException
{
String objName = "";
try
{
NodeList detailList = null;
Node currDetail = null,reqDetail = null;
int detailListLength = 0;
detailList = dom.getElementsByTagName("Detail" + currFormNo);
detailListLength = detailList.getLength();
for (int ctr = 0;ctr < detailListLength;ctr++)
{
currDetail = detailList.item(ctr);
objName = currDetail.getAttributes().getNamedItem(attribute).getNodeValue();
System.out.println("objNameobjName>>>::asjhdg::["+objName+"]");
break;
}
if(objName == null || objName.trim().length() == 0)
{
NodeList objNameList = dom.getElementsByTagName("objName");
if(objNameList != null && objNameList.getLength() > 0)
{
Node objNameNode = objNameList.item(0);
if(objNameNode != null && objNameNode.getFirstChild() != null)
{
objName = checkNull(objNameNode.getFirstChild().getNodeValue());
System.out.println("objNameobjName>>> in anothere if null ::asjhdg::["+objName+"]");
}
}
}
}
catch(Exception e)
{
e.printStackTrace();
}
return objName;
}
} }
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