Commit cf24cad5 authored by msalla's avatar msalla

Disputed receivables - new column adjust_due_date to be added and accordingly...

Disputed receivables - new column adjust_due_date to be added  and accordingly update the due_date with EXP_RCP_DATE

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@201924 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 24f89c33
package ibase.webitm.ejb.fin;
import java.rmi.RemoteException;
import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Timestamp;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import javax.ejb.Stateless;
import org.apache.poi.hwpf.usermodel.DateAndTime;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import com.ibm.db2.jcc.b.ca;
import ibase.system.config.ConnDriver;
import ibase.utility.E12GenericUtility;
import ibase.webitm.ejb.ITMDBAccessEJB;
import ibase.webitm.ejb.ValidatorEJB;
import ibase.webitm.ejb.dis.DistCommon;
import ibase.webitm.utility.ITMException;
@Stateless
public class DisputedRecvIC extends ValidatorEJB implements DisputedRecvICLocal,DisputedRecvICRemote{
E12GenericUtility genericUtility = new E12GenericUtility();
FinCommon finCommon = new FinCommon();
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB();
DistCommon distComm = new DistCommon();
public String wfValData(String xmlString, String xmlString1, String xmlString2, String objContext, String editFlag,String xtraParams) throws RemoteException, ITMException
{
Document dom = null;
Document dom1 = null;
Document dom2 = null;
String retString = "";
try
{
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);
}
retString = wfValData(dom, dom1, dom2, objContext, editFlag, xtraParams);
System.out.println("retString:::" + retString);
}
catch (Exception e)
{
System.out.println(":::" + getClass().getSimpleName() + "::" + e.getMessage());
e.getMessage();
}
return retString;
}
public String wfValData(Document dom, Document dom1, Document dom2, String objContext, String editFlag,String xtraParams) throws RemoteException, ITMException
{
int childNodeLength = 0;
int currentFormNo = 0;
int ctr = 0, cnt = 0;
Connection conn = null;
ConnDriver connDriver = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
NodeList parentNodeList = null;
Node parentNode = null;
NodeList childNodeList = null;
Node childNode = null;
String childNodeName = "";
String userId = "";
String currcode = "",acccode = "",sundry_type = "",tranDateStr="",tranSer="";
String sundtype = "";
String sql = "";
String errCode = "";
ArrayList<String> errList = new ArrayList<String>();
ArrayList<String> errFields = new ArrayList<String>();
String errorType = "", errString = "";
int cc, initialField = 1, lastField = 1, li_cnt;
String fldname="",val,val1,val2,site,tranid;
String type;
Timestamp tranDate;
String exprcpdate=null;
double cnt0 = 0 ,dispAmt,osAmt=0,disputeAmt=0;
String disputeamt;
String refser[],refno[] ,curr,Val3,sFieldNo,mval,mval1,xx;
String refser1[],refno1[],errcode,recref,lstype,scode,custcode,adjduedate;
double net,totnet,recamt,num,confamt, nget1,dispamt = 0;
SimpleDateFormat simpleDateFormat = null;
String startStr,endStr,descrStr,descrStart,descrEnd,lsmsg1 = null,rcptype=null;
StringBuffer errStringXml = new StringBuffer("<?xml version = \"1.0\"?> \r\n <Root> <Errors>");
Calendar currentDate = Calendar.getInstance();
SimpleDateFormat sdf;
try
{
conn = getConnection();
userId = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginCode");
System.out.println("userId = "+userId);
site = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
System.out.println("xtraParams = "+xtraParams);
sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
tranDateStr = sdf.format(currentDate.getTime());
if(objContext != null && objContext.trim().length()>0)
{
currentFormNo = Integer.parseInt(objContext);
}
switch (currentFormNo)
{
case 1:
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
cc = childNodeList.getLength();
for(ctr = 0; ctr < cc; ctr ++)
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if(childNodeName.equalsIgnoreCase("cust_code"))
{
val= checkNull(genericUtility.getColumnValue("cust_code", dom));
type = "C";
val1 =checkNull(genericUtility.getColumnValue("site_code", dom));
cnt = finCommon.getSundryCode(val, "C", conn);
System.out.println("sundryCnt---["+cnt+"]");
if(cnt == 0 )
{
errCode = "VMSUND1";
errList.add(errCode);
errFields.add(childNodeName.toLowerCase());
}
}// end of if block for cust_code
else if (childNodeName.equalsIgnoreCase("site_code"))
{
val= checkNull(genericUtility.getColumnValue("site_code", dom));
//tranSer = getColumnValue("tran_ser",dom,"2");
tranDate=Timestamp.valueOf(genericUtility.getValidDateString(tranDateStr,genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
// errCode=isSiteCode(val,tranSer);
sql="SELECT COUNT(*) FROM SITE WHERE SITE_CODE = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, val);
rs = pstmt.executeQuery();
if(rs.next()) {
cnt=rs.getInt(1);
if(cnt == 0 )
{
errCode = "VMSITE1";
errList.add(errCode);
errFields.add(childNodeName.toLowerCase());
}
}
if(errCode == null || errCode.trim().length() == 0)
{
errCode =finCommon.nfCheckPeriod("FIN",tranDate, val,conn);
if(errCode !=null && errCode.trim().length() > 0) {
errList.add(errCode);
errFields.add(childNodeName.toLowerCase());
}
}
}// end of if block for site_code
}
break;
case 2:
parentNodeList = dom.getElementsByTagName("Detail2");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
cc = childNodeList.getLength();
for(ctr = 0; ctr < cc; ctr ++)
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if(childNodeName.equalsIgnoreCase("ref_ser"))
{
val= checkNull(genericUtility.getColumnValue("ref_ser", dom));
if(errCode != null && errCode.trim().length() > 0)
{
errList.add(errCode);
errFields.add(childNodeName.toLowerCase());
}
}// end of if block for ref_ser
else if (childNodeName.equalsIgnoreCase("ref_id"))
{
val= checkNull(genericUtility.getColumnValue("ref_id", dom));
val1= checkNull(genericUtility.getColumnValue("ref_ser", dom));
val2= checkNull(genericUtility.getColumnValue("site_code", dom));
disputeamt=checkNull(genericUtility.getColumnValue("dispute_amount", dom));
sql = "count(*), sum(tot_Amt - adj_amt), sum(dispute_amt) from receivables where tran_ser =? and ref_no =? " ;
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, val1);
pstmt.setString(2, val);
rs = pstmt.executeQuery();
if(rs.next())
{
cnt=rs.getInt(1);
osAmt=rs.getDouble(2);
disputeAmt=rs.getDouble(3);
}
else
{
errCode = "DS000";
errList.add(errCode);
errFields.add(childNodeName.toLowerCase());
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(cnt == 0)
{
errCode = "VMREF1";
errList.add(errCode);
errFields.add(childNodeName.toLowerCase());
}
if((osAmt-dispamt)<(dispamt))
{
errCode="VTRCPT6";
errList.add(errCode);
errFields.add(childNodeName.toLowerCase());
}
if((dispamt+disputeAmt)<0)
{
errCode="VTAMT1"+"Invalid Disputed Amt.";
errList.add(errCode);
errFields.add(childNodeName.toLowerCase());
}
}// end of if block for ref_id
//validation of exp_rcp_date
else if (childNodeName.equalsIgnoreCase("exp_rcp_date"))
{
exprcpdate= checkNull(genericUtility.getColumnValue("exp_rcp_date", dom));
rcptype=checkNull(genericUtility.getColumnValue("rec_type", dom));
if(rcptype!=null && "N".equalsIgnoreCase(rcptype))
{
if(exprcpdate==null)
{
errCode="VTEXPRECDT";
errList.add(errCode);
errFields.add(childNodeName.toLowerCase());
}
}
}
}
if(errorType.equalsIgnoreCase("E"))
{
break;
}
}
int errListSize = errList.size();
cnt = 0;
String errFldName = null;
System.out.println("errListSize [" + errListSize+ "] errFields size [" + errFields.size() + "]");
if (errList != null && errListSize > 0)
{
System.out.println("errList["+ errList.toString() +"]");
for (cnt = 0; cnt < errListSize; cnt++)
{
errCode = errList.get(cnt);
errFldName = errFields.get(cnt);
System.out.println("errFldName ..........[" + errFldName+"]");
System.out.println("errCode .........." + errCode);
errString = getErrorString(errFldName, errCode, userId);
System.out.println("errString ..........[" + errString+"]");
errorType = errorType(conn, errCode);
if("VTUREC1".equalsIgnoreCase(errCode))
{
startStr = errString.substring(0,errString.indexOf("<description>") + 13);
endStr = errString.substring(errString.indexOf("</description>"),errString.length());
descrStr = errString.substring(errString.indexOf("<description>") + 13,errString.indexOf("</description>"));
descrStart = descrStr.substring(0, descrStr.indexOf("]"));
descrEnd = descrStr.substring(descrStr.indexOf("]"),descrStr.length());
System.out.println("lsmsg1@@@["+lsmsg1+"]");
val ="" + lsmsg1;
System.out.println("Value ::: "+ val);
descrStart = descrStart.concat(val).concat(descrEnd);
System.out.println("descrStart@@@["+descrStart+"]");
errString = startStr.concat(descrStart).concat(endStr);
}
System.out.println("errorType ..........[" + errorType+"]");
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);
errString = "";
}
if (errorType.equalsIgnoreCase("E"))
{
break;
}
}
errList.clear();
errList = null;
errFields.clear();
errFields = null;
errStringXml.append("</Errors> </Root> \r\n");
}
else
{
errStringXml = new StringBuffer("");
}
}// End of try
catch(Exception e)
{
e.printStackTrace();
errString = e.getMessage();
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 d)
{
d.printStackTrace();
throw new ITMException(d);
}
}
errString = errStringXml.toString();
System.out.println("testing : final errString : " + errString);
return errString;
}
public String itemChanged(String xmlString, String xmlString1, String xmlString2, String objContext,String currentColumn, String editFlag, String xtraParams)throws RemoteException, ITMException
{
Document dom = null;
Document domhr = null;
Document domAll = null;
String retString = "";
try
{
System.out.println("************** Inside itemChanged method ****************");
if (xmlString != null && xmlString.trim().length() > 0)
{
dom = genericUtility.parseString(xmlString);
}
if (xmlString1 != null && xmlString1.trim().length() > 0)
{
domhr = genericUtility.parseString(xmlString1);
}
if (xmlString2 != null && xmlString2.trim().length() > 0)
{
domAll = genericUtility.parseString(xmlString2);
}
retString = itemChanged(dom, domhr, domAll, objContext, currentColumn, editFlag, xtraParams);
System.out.println("retString::::::::::" + retString);
}
catch (Exception e)
{
System.out.println(":::" + getClass().getSimpleName() + "::" + e.getMessage());
e.getMessage();
}
return retString;
}
public String itemChanged(Document dom, Document dom1, Document dom2, String objContext, String currentColumn,String editFlag, String xtraParams) throws RemoteException, ITMException
{
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
PreparedStatement pStmt = null;
ResultSet rs = null;
String sql,loginSite = "";
int currentFormNo = 0,cnt=0;
StringBuffer valueXmlString = new StringBuffer();
String columnValue = "";
NodeList parentNodeList = null;
Node parentNode = null;
NodeList childNodeList = null;
int childNodeListLength = 0,ctr = 0;
Timestamp date= null,timestamp=null,today1 =null,mrefdate=null,mduedate=null,today=null,exprcpdate=null;
String trandate=null;
String lsValue,errString,mcode,chguser = null,emp;
Timestamp tdate;
String recType="",mdescr = null,mcurr,msite="",sitecode="",msdesc1="",mbankcode="",mfinent="",fromno="",lineno1,loginSiteDescr="";
String custcode,acctcodeAdv,cctrcodeAdv,refser="";
String childNodeName="",reascode="",reasdescr="";
Node childNode;
Long lineno;
String transer,refno = null,currcode = null,acctcode = null,cctrcode = null,currdescr;
double mhexchrate = 0,mdiscount,totamt = 0,disputeAm=0,amount=0,madjamt = 0,taxamt=0;
String adjduedate=null;
Calendar currentDate = Calendar.getInstance();
SimpleDateFormat sdf;
try {
conn = getConnection();
connDriver = null;
sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
trandate = sdf.format(currentDate.getTime());
lsValue = distComm.getDisparams("999999", "UOM_ROUND", conn);
if (objContext != null && objContext.trim().length() > 0)
{
currentFormNo = Integer.parseInt(objContext);
}
System.out.println("[DisputedRecvIC] [itemChanged] :currentFormNo ....." + currentFormNo);
valueXmlString = new StringBuffer("<?xml version=\"1.0\"?><Root><header><editFlag>");
valueXmlString.append(editFlag).append("</editFlag></header>");
switch (currentFormNo) {
case 1:
valueXmlString.append("<Detail1>");
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
ctr = 0;
childNodeListLength = childNodeList.getLength();
System.out.println("[" + currentColumn + "] ==> '"+ columnValue + "'");
if (currentColumn.trim().equals("itm_default"))
{
loginSite = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginSiteCode");
sitecode = genericUtility.getColumnValue("site_code",dom);
//get login site description
sql = " select descr from site where site_code = ? ";
pStmt= conn.prepareStatement( sql );
pStmt.setString( 1, loginSite );
rs = pStmt.executeQuery();
if( rs.next() )
{
loginSiteDescr = rs.getString( "descr" );
}
rs.close();
pStmt.close();
pStmt = null;
rs = null;
valueXmlString.append("<site_code protect =\"1\">").append("<![CDATA["+loginSite.trim()+"]]>").append("</site_code>");
valueXmlString.append("<tran_date >").append("<![CDATA["+trandate.trim()+"]]>").append("</tran_date>");
valueXmlString.append("<site_descr>").append("<![CDATA["+loginSiteDescr+"]]>").append("</site_descr>");
}
else if (currentColumn.trim().equals("itm_defaultedit"))
{
mcode=genericUtility.getColumnValue("cust_code", dom);
sitecode = genericUtility.getColumnValue("site_code",dom);
sql = "select cust_name, curr_code, site_code from customer where cust_code =?";
pStmt = conn.prepareStatement( sql );
pStmt.setString(1,mcode);
rs = pStmt.executeQuery();
if( rs.next() )
{
mdescr = checkNull(rs.getString( "cust_name" ));
mcurr = checkNull(rs.getString( "curr_code" ));
msite = checkNull(rs.getString( "site_code" ));
}
rs.close();
rs = null;
pStmt.close();
pStmt = null;
valueXmlString.append("<cust_name>").append("<![CDATA["+mdescr+"]]>").append("</cust_name>");
}
/* else if (currentColumn.trim().equals("bank_code__dep"))
{
valueXmlString.append("<bank_code__dep>").append("<![CDATA["+loginSite.trim()+"]]>").append("</bank_code__dep>");
}*/
else if (currentColumn.trim().equalsIgnoreCase("site_code"))
{
msite = genericUtility.getColumnValue("site_code", dom);
if(sitecode != null && sitecode.trim().length() >0)
{
sql=" select descr, bank_code , fin_entity from site where site_code=?";
pStmt= conn.prepareStatement( sql );
pStmt.setString( 1,msite );
rs = pStmt.executeQuery();
if( rs.next() )
{
msdesc1 = checkNull(rs.getString("descr"));
mbankcode = checkNull(rs.getString("bank_code"));
mfinent=checkNull(rs.getString("fin_entity"));
}
rs.close();
pStmt.close();
pStmt = null;
valueXmlString.append("<site_descr>").append("<![CDATA["+msdesc1+"]]>").append("</site_descr>");
}
}
else if (currentColumn.trim().equalsIgnoreCase("cust_code"))
{
custcode = genericUtility.getColumnValue("cust_code", dom);
if(custcode != null && custcode.trim().length() >0)
{
sql="select cust_name, curr_code,site_code, acct_code__adv, cctr_code__adv from customer where cust_code = ?";
pStmt= conn.prepareStatement( sql );
pStmt.setString( 1,custcode );
rs = pStmt.executeQuery();
if( rs.next() )
{
mdescr = checkNull(rs.getString("cust_name"));
mcurr= checkNull(rs.getString("curr_code"));
msite= checkNull(rs.getString("site_code"));
acctcodeAdv= checkNull(rs.getString("acct_code__adv"));
cctrcodeAdv= checkNull(rs.getString("cctr_code__adv"));
}
rs.close();
pStmt.close();
pStmt = null;
valueXmlString.append("<cust_name>").append("<![CDATA["+mdescr+"]]>").append("</cust_name>");
}
}
valueXmlString.append("</Detail1>");
break;
case 2:
parentNodeList = dom.getElementsByTagName("Detail2");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
childNodeListLength = childNodeList.getLength();
System.out.println("currentColumn-------->>[" + currentColumn + "]");
trandate=genericUtility.getColumnValue("tran_date",dom1);
valueXmlString.append("<Detail2>");
if (currentColumn.trim().equalsIgnoreCase("itm_default"))
{
recType = genericUtility.getColumnValue("rec_type",dom1);
System.out.println("get REf_type:"+recType);
if(recType != null && "N".equalsIgnoreCase(recType))
{
valueXmlString.append("<adjust_due_date protect='1'>").append("<![CDATA["+"Y"+"]]>").append ("</adjust_due_date>");
System.out.println("print adjustduedate");
}
else {
valueXmlString.append("<adjust_due_date>").append("<![CDATA["+"N"+"]]>").append ("</adjust_due_date>");
System.out.println("dont print adjustduedate");
}
}
else if (currentColumn.trim().equalsIgnoreCase("itm_defaultedit"))
{
reascode=checkNull(genericUtility.getColumnValue("reas_code", dom1));
if(reascode != null && reascode.trim().length() > 0)
{
sql = "select descr from gencodes where mod_name='W_DISPUTED_RECV' and Fld_Name='REAS_CODE' AND fld_value =?";
pStmt = conn.prepareStatement(sql);
pStmt.setString(1,reascode);
rs = pStmt.executeQuery();
if(rs.next())
{
reasdescr = checkNull(rs.getString("descr"));
reascode= checkNull(rs.getString("fld_value"));
}
if(rs != null)
{
rs.close();
rs = null;
}
if(pStmt != null)
{
pStmt.close();
pStmt = null;
}
}
else
{
sql = "select descr from gencodes where mod_name='X' and Fld_Name='REAS_CODE' AND fld_value =?";
pStmt = conn.prepareStatement(sql);
pStmt.setString(1,reascode);
rs = pStmt.executeQuery();
if(rs.next())
{
reasdescr = checkNull(rs.getString("descr"));
}
if(rs != null)
{
rs.close();
rs = null;
}
if(pStmt != null)
{
pStmt.close();
pStmt = null;
}
}
valueXmlString.append("<reas_descr >").append(checkNull(genericUtility.getColumnValue("reas_descr", dom))).append ("</reas_descr>");
}//end of itm_defaultedit
else if (currentColumn.trim().equalsIgnoreCase("ref_id"))
{
mcode = checkNull(genericUtility.getColumnValue("ref_id", dom));
refser= checkNull(genericUtility.getColumnValue("ref_ser", dom));
if(mcode != null && mcode.trim().length() > 0)
{
sql="select tran_ser, tran_date, ref_no, ref_date,curr_code, exch_rate, acct_code, cctr_code,"+
" due_date, discount, tax_amt,exp_rcp_date, tot_amt, cust_code,adj_amt, dispute_amt"+
" from receivables where tran_ser =? and ref_no =?";
pStmt = conn.prepareStatement(sql);
pStmt.setString(1, refser);
pStmt.setString(2, mcode);
rs = pStmt.executeQuery();
if(rs.next())
{
transer = checkNull(rs.getString("tran_ser"));
today= rs.getTimestamp("tran_date");
refno = checkNull(rs.getString("ref_no"));
mrefdate= rs.getTimestamp("ref_date");
currcode = checkNull(rs.getString("curr_code"));
mhexchrate= Double.parseDouble(rs.getString("exch_rate"));
acctcode = checkNull(rs.getString("acct_code"));
cctrcode= checkNull(rs.getString("cctr_code"));
mduedate =rs.getTimestamp("due_date");
mdiscount= Double.parseDouble(rs.getString("discount"));
taxamt = Double.parseDouble(rs.getString("tax_amt"));
totamt= Double.parseDouble(rs.getString("tot_amt"));
madjamt = Double.parseDouble(rs.getString("adj_amt"));
disputeAm= Double.parseDouble(rs.getString("dispute_amt"));
exprcpdate= rs.getTimestamp("exp_rcp_date");
}
if(rs != null)
{
rs.close();
rs = null;
}
if(pStmt != null)
{
pStmt.close();
pStmt = null;
}
sql="SELECT descr FROM currency WHERE currency.curr_code =?";
pStmt = conn.prepareStatement(sql);
pStmt.setString(1,currcode);
rs = pStmt.executeQuery();
if(rs.next())
{
currdescr = checkNull(rs.getString("descr"));
}
if(rs != null)
{
rs.close();
rs = null;
}
if(pStmt != null)
{
pStmt.close();
pStmt = null;
}
}
amount = totamt - madjamt - disputeAm;
valueXmlString.append("<curr_code >").append(currcode).append ("</curr_code>");
valueXmlString.append("<exch_rate >").append(mhexchrate).append ("</exch_rate>");
valueXmlString.append("<due_date >").append(mduedate).append ("</due_date>");
valueXmlString.append("<ref_date >").append(mrefdate).append ("</ref_date>");
valueXmlString.append("<ref_date >").append(mduedate).append ("</ref_date>");
valueXmlString.append("<dispute_amt >").append(amount).append ("</dispute_amt>");
valueXmlString.append("<acct_code >").append(acctcode).append ("</acct_code>");
valueXmlString.append("<cctr_code >").append(cctrcode).append ("</cctr_code>");
sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
trandate = sdf.format(exprcpdate);
valueXmlString.append("<exp_rcp_date >").append(trandate).append ("</exp_rcp_date>");
}//end of ref_id
else if (currentColumn.trim().equalsIgnoreCase("reas_code"))
{
reascode = checkNull(genericUtility.getColumnValue("reas_code", dom1));
if(reascode != null && reascode.trim().length() > 0)
{
sql="select descr from gencodes where mod_name = 'W_DISPUTED_RECV' and Fld_Name = 'REAS_CODE' AND fld_value =?";
pStmt = conn.prepareStatement(sql);
pStmt.setString(1,reascode);
rs = pStmt.executeQuery();
if(rs.next())
{
reasdescr = checkNull(rs.getString("descr"));
}
if(rs != null)
{
rs.close();
rs = null;
}
if(pStmt != null)
{
pStmt.close();
pStmt = null;
}
}
else
{
sql="select descr from gencodes where mod_name = 'X' and Fld_Name = 'REAS_CODE' AND fld_value =?";
pStmt = conn.prepareStatement(sql);
pStmt.setString(1,reascode);
rs = pStmt.executeQuery();
if(rs.next())
{
reasdescr = checkNull(rs.getString("descr"));
}
if(rs != null)
{
rs.close();
rs = null;
}
if(pStmt != null)
{
pStmt.close();
pStmt = null;
}
}
valueXmlString.append("<reas_descr >").append(reasdescr).append ("</reas_descr>");
}//end of reas_code
valueXmlString.append("</Detail2>");
break;
}//end of switch
valueXmlString.append("</Root>");
}
catch (Exception e)
{
System.out.println("POrderIC Exception ::" + e.getMessage());
e.printStackTrace();
}
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();
}
}
System.out.println("valueXmlString @@@@@@@@@ ["+valueXmlString+"]");
return valueXmlString.toString();
}
private String errorType(Connection conn, String errorCode) throws ITMException
{
String msgType = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
try
{
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");
}
rs.close();
rs = 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;
}
public String checkNullAndTrim( String inputVal )
{
if ( inputVal == null )
{
inputVal = "";
}
else
{
inputVal = inputVal.trim();
}
return inputVal;
}
private String checkNull(String input)
{
return input == null ? "" : input;
}
}
package ibase.webitm.ejb.fin;
import java.rmi.RemoteException;
import javax.ejb.Local;
import org.w3c.dom.Document;
import ibase.webitm.ejb.ValidatorLocal;
import ibase.webitm.utility.ITMException;
@Local
public interface DisputedRecvICLocal extends ValidatorLocal {
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;
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;
}
package ibase.webitm.ejb.fin;
import java.rmi.RemoteException;
import javax.ejb.Remote;
import org.w3c.dom.Document;
import ibase.webitm.ejb.ValidatorRemote;
import ibase.webitm.utility.ITMException;
@Remote
public interface DisputedRecvICRemote extends ValidatorRemote
{
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;
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;
}
......@@ -141,7 +141,8 @@ public class DisputedReceivablesConf extends ActionHandlerEJB implements Dispute
Timestamp expRcpDate = null;
HashMap disputedRecvMap = null;
ArrayList DetList = null;
String adjduedate="null";
int cnt;
try {
if (conn==null)
......@@ -214,6 +215,7 @@ public class DisputedReceivablesConf extends ActionHandlerEJB implements Dispute
rs = null;
pstmt.close();
pstmt = null;
if(ledgPostConf != null && "Y".equalsIgnoreCase(ledgPostConf))
{
/*if((tranDate.compareTo(today)!= 0))
......@@ -224,15 +226,15 @@ public class DisputedReceivablesConf extends ActionHandlerEJB implements Dispute
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setTimestamp(1, tranDate);
pstmt1.setString(2, tranId);
int cnt = pstmt1.executeUpdate();
cnt = pstmt1.executeUpdate();
pstmt1.close();
pstmt1 = null;
//}
//disputedRecvMap.put("tran_date", tranDate);
}
//commented by monika
//Get Data from disputed_recv_det and receivables
sql = "SELECT disputed_recv_det.tran_id, disputed_recv_det.line_no, disputed_recv_det.ref_ser, "+
/* sql = "SELECT disputed_recv_det.tran_id, disputed_recv_det.line_no, disputed_recv_det.ref_ser, "+
" disputed_recv_det.ref_id, disputed_recv_det.dispute_amt, receivables.ref_date, "+
" receivables.due_date, receivables.curr_code, receivables.exch_rate, receivables.cctr_code, "+
" receivables.acct_code, disputed_recv_det.ref_type, disputed_recv_det.ref_type__o, disputed_recv_det.exp_rcp_date, disputed_recv_det.reas_code "+
......@@ -240,7 +242,18 @@ public class DisputedReceivablesConf extends ActionHandlerEJB implements Dispute
" WHERE ( disputed_recv_det.ref_ser = receivables.tran_ser ) " +
" and ( disputed_recv_det.ref_id = receivables.ref_no ) " +
" and ( ( DISPUTED_RECV_DET.TRAN_ID = ? ) ) " +
" ORDER BY disputed_recv_det.line_no ASC "; */
//added by monika-7 june -2019
sql = "SELECT disputed_recv_det.tran_id, disputed_recv_det.line_no, disputed_recv_det.ref_ser, "+
" disputed_recv_det.ref_id, disputed_recv_det.dispute_amt, receivables.ref_date, "+
" receivables.due_date, receivables.curr_code, receivables.exch_rate, receivables.cctr_code, "+
" receivables.acct_code, disputed_recv_det.ref_type, disputed_recv_det.ref_type__o, disputed_recv_det.exp_rcp_date, disputed_recv_det.reas_code,disputed_recv_det.ADJUST_DUE_DATE "+
" FROM disputed_recv_det, receivables "+
" WHERE ( disputed_recv_det.ref_ser = receivables.tran_ser ) " +
" and ( disputed_recv_det.ref_id = receivables.ref_no ) " +
" and ( ( DISPUTED_RECV_DET.TRAN_ID = ? ) ) " +
" ORDER BY disputed_recv_det.line_no ASC ";
//end
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
......@@ -265,7 +278,9 @@ public class DisputedReceivablesConf extends ActionHandlerEJB implements Dispute
refTypeO = rs.getString(13);
expRcpDate = rs.getTimestamp(14);
reasCode = rs.getString(15);
//added by monika-7 june -2019
adjduedate = rs.getString(16);
//end
if(recType != null && "R".equalsIgnoreCase(recType))
{
sql1 = "select tot_amt, adj_amt, dispute_amt from receivables " +
......@@ -303,11 +318,12 @@ public class DisputedReceivablesConf extends ActionHandlerEJB implements Dispute
pstmt1.setString(2, recType);//refType
pstmt1.setString(3, refSer);
pstmt1.setString(4, refId);
int cnt = pstmt1.executeUpdate();
cnt = pstmt1.executeUpdate();
pstmt1.close();
pstmt1 = null;
System.out.println("update receivables dispute_amt & ref_type cnt["+cnt+"]");
}
//Pavan R on 09APR2018 Start[To release the hold receivables]
else if(recType != null && "O".equalsIgnoreCase(recType))
{
......@@ -347,12 +363,13 @@ public class DisputedReceivablesConf extends ActionHandlerEJB implements Dispute
pstmt1.setString(2, "F");//refType
pstmt1.setString(3, refSer);
pstmt1.setString(4, refId);
int cnt = pstmt1.executeUpdate();
cnt = pstmt1.executeUpdate();
pstmt1.close();
pstmt1 = null;
System.out.println("update receivables dispute_amt & ref_type cnt["+cnt+"]");
//Pavan R on 09APR2018 End
}else
}
else
{
sql1 = "update receivables set exp_rcp_date = ?, reas_code = ?, ref_type = ? " +
" where tran_ser = ? and ref_no = ?";
......@@ -362,17 +379,31 @@ public class DisputedReceivablesConf extends ActionHandlerEJB implements Dispute
pstmt1.setString(3, recType);
pstmt1.setString(4, refSer);
pstmt1.setString(5, refId);
int cnt = pstmt1.executeUpdate();
cnt = pstmt1.executeUpdate();
pstmt1.close();
pstmt1 = null;
System.out.println("update receivables exp_rcp_date & reas_code cnt["+cnt+"]");
//changes made-update receivables- by monika-7 june-2019
if("Y".equalsIgnoreCase(adjduedate))
{
sql="update receivables set due_date=? where tran_ser = ? and ref_no = ?";
pstmt1 = conn.prepareStatement(sql);
pstmt1.setTimestamp(1,expRcpDate);
pstmt1.setString(2, refSer);
pstmt1.setString(3, refId);
cnt=pstmt1.executeUpdate();
pstmt1.close();
pstmt1 = null;
System.out.println("excprecpt11--monika updated");
} //end
}
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
System.out.println("Detail data count["+updCount+"]");
loginEmpCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginEmpCode");
chgUser = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode");
......
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