Commit 71e7911d authored by ssalve's avatar ssalve

Sarita: Committed Source code SRLContainerSplit.java on 28FEB2018

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@181183 ce508802-f39f-4f6c-b175-0d175dae99d5
parent fa3089dc
/**
* PURPOSE : Pre Save Logic
* AUTHOR : Priyanka Chavan.
*/
package ibase.webitm.ejb.dis;
import ibase.ejb.CommonDBAccessRemote;
import ibase.system.config.AppConnectParm;
import ibase.utility.E12GenericUtility;
import ibase.utility.UserInfoBean;
import ibase.webitm.ejb.ActionHandlerEJB;
import ibase.webitm.ejb.ITMDBAccessEJB;
import ibase.webitm.ejb.MasterStatefulLocal;
import ibase.webitm.ejb.ValidatorEJB;
import ibase.webitm.ejb.dis.adv.AdjIssueRcpConfLocal;
import ibase.webitm.ejb.fin.FinCommon;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import javax.naming.InitialContext;
import javax.xml.rpc.ParameterMode;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.XMLType;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
@javax.ejb.Stateless
public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerSplitLocal, SRLContainerSplitRemote
{
E12GenericUtility genericUtility = new E12GenericUtility();
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB();
@Override
public String confirm() throws RemoteException, ITMException
{
return "";
}
@Override
public String confirm(String tranID,String xtraParams, String forcedFlag)throws RemoteException,ITMException
{
String errString = null;
Connection conn = null;
try
{
conn = getConnection();
System.out.println("Inside confirm method of [SRLContainerSplit] class");
System.out.println("[Transaction ID :: ["+tranID+"]] \n [XtraParams :: ["+xtraParams+"]] \n [Forced Flag ["+forcedFlag+"]]");
errString = issueAdjReceiptAndIssue(tranID, xtraParams, forcedFlag,conn);
System.out.println("[Errorstring :::::::::["+errString+"]]");
if (errString == null || errString.trim().length() == 0)
{
conn.close();
conn = null;
} else
{
conn.close();
conn = null;
return errString;
}
}
catch(Exception e)
{
System.out.println("Exception Inside [SRLContainerSplit [confirm] Method] ::["+e+"]");
e.printStackTrace();
throw new ITMException(e);
}
finally {
try {
if (conn != null) {
System.out
.println("InSide finally.. rollbacking >>>>>>>>>>>>>>>>> ");
conn.rollback();
conn.close();
System.out
.println("InSide finally.. Connection has been closed >>>>>>>>>>>>>>>>>>>>>>>>> ");
}
conn = null;
} catch (SQLException se) {
System.out.println("SQL Exception in finaly >>>> "
+ se.getMessage());
throw new ITMException(se);
} catch (Exception d) {
d.printStackTrace();
throw new ITMException(d);
}
}
return errString;
}// end of method **confirm**
private String issueAdjReceiptAndIssue(String tranId,String xtraParams,String forcedFlag,Connection conn) throws RemoteException, ITMException
{
String retSting = "" , sql = "" , itemCodeHdr = "" , lotNoHdr = "" , lotSlHdr = "" , userId = "";
PreparedStatement pstmt = null , pstmtStock = null;
ResultSet rs = null , rsStock = null;
String siteCode = "", locationCode="",itemSer="",invStat="",acctCodeOh="",cctrCodeOh="",considerAllocate="",itemCodeDet="",lotNodet = "",lotSlDet ="";
Double quantity = 0.0, allocQty = 0.0, potencyPerc=0.0, grossWeight=0.0, tare_weight=0.0, net_weight=0.0, rateOh=0.0,noArt=0.0 ;
String acctCodeDr="",cctrCodeDr="",packCode="",siteCodeMfg="",packInstr="",suppCodeMfg="",unitAlt="",batchNo="",unit="",grade="",remarks="",dimension="";
double stkGrossRate = 0, stkRate=0, convQtyStduom=0, batchSize=0, holdQuantity=0, actualRate=0,splitQty =0;
java.sql.Timestamp expDate = null;
java.sql.Timestamp mfgDate = null;
java.sql.Timestamp restestDate = null;
java.sql.Timestamp creaDate = null;
java.sql.Timestamp ltranDate = null;
java.sql.Timestamp lastRcpDate = null;
java.sql.Timestamp lastIssDate = null;
java.sql.Timestamp lastPhyDate = null;
StringBuffer valueXmlforIssue = new StringBuffer();
StringBuffer valueXmlforReceipt = new StringBuffer();
boolean issueCondition = false;
boolean receiptCondition = false;
String flagSaveString = "" , tranIdForIssue = "",tranIdForReciept ="";
FinCommon finCommon = new FinCommon();
String status = "";
try
{
//conn = getConnection();
userId = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginCode");
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(genericUtility.getApplDateFormat());
sql = "select item_code , lot_no , lot_sl from srl_container where serial_no=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
rs = pstmt.executeQuery();
if(rs.next())
{
itemCodeHdr = rs.getString("item_code");
lotNoHdr = rs.getString("lot_no");
lotSlHdr = rs.getString("lot_sl");
System.out.println("For Header Data ::::[item_code ["+itemCodeHdr+"]] \t [lot_no ["+lotNoHdr+"]] \t [lot_sl ["+lotSlHdr+"]]");
}
if(rs != null){rs.close();rs = null;}
if(pstmt != null){pstmt.close();pstmt = null;}
sql = "SELECT SITE_CODE , LOC_CODE , ITEM_SER, QUANTITY, UNIT, GRADE , CREA_DATE , EXP_DATE , LTRAN_DATE , REMARKS , INV_STAT ," +
"ALLOC_QTY , PACK_CODE , MFG_DATE , SITE_CODE__MFG , POTENCY_PERC , LAST_RCP_DATE , LAST_ISS_DATE , RATE , LAST_PHYC_DATE , " +
"GROSS_WEIGHT , TARE_WEIGHT , NET_WEIGHT , PACK_INSTR , DIMENSION , SUPP_CODE__MFG , ACCT_CODE__INV , CCTR_CODE__INV , RATE__OH ," +
"ACCT_CODE__OH , CCTR_CODE__OH , RETEST_DATE , GROSS_RATE , CONV__QTY_STDUOM , UNIT__ALT , BATCH_NO , NO_ART , GROSS_WT_PER_ART ," +
"TARE_WT_PER_ART , QTY_PER_ART , ACTUAL_RATE , WGHT_RATE , PALLET_WT , PACK_REF , PARTIAL_USED , BATCH_SIZE , LOT_SL__ORG , HOLD_QTY," +
"CONSIDER_ALLOCATE , PALLET_NO FROM STOCK "
+ "WHERE ITEM_CODE = ? "
+ "AND LOT_NO = ? "
+ "and LOT_SL = ? ";
pstmtStock = conn.prepareStatement(sql);
pstmtStock.setString(1,itemCodeHdr);
pstmtStock.setString(2,lotNoHdr);
pstmtStock.setString(3,lotSlHdr);
rsStock = pstmtStock.executeQuery();
if(rsStock.next())
{
siteCode = checkNull(rsStock.getString("site_code"));
locationCode = checkNull(rsStock.getString("loc_code"));
itemSer = checkNull(rsStock.getString("item_ser"));
quantity = rsStock.getDouble("quantity");
unit = checkNull(rsStock.getString("unit"));
grade = checkNull(rsStock.getString("grade"));
creaDate = rsStock.getTimestamp("crea_date");
expDate = rsStock.getTimestamp("exp_date");
ltranDate = rsStock.getTimestamp("ltran_date");
remarks = checkNull(rsStock.getString("remarks"));
invStat = checkNull(rsStock.getString("inv_stat"));
allocQty = rsStock.getDouble("alloc_qty");
packCode = checkNull(rsStock.getString("pack_code"));
mfgDate = rsStock.getTimestamp("mfg_date");
siteCodeMfg = checkNull(rsStock.getString("site_code__mfg"));
potencyPerc = rsStock.getDouble("potency_perc");
lastRcpDate = rsStock.getTimestamp("last_rcp_date");
lastIssDate = rsStock.getTimestamp("last_iss_date");
stkRate = rsStock.getDouble("rate");
lastPhyDate = rsStock.getTimestamp("last_phyc_date");
grossWeight = rsStock.getDouble("gross_weight");
tare_weight = rsStock.getDouble("tare_weight");
net_weight = rsStock.getDouble("net_weight");
packInstr = checkNull(rsStock.getString("pack_instr"));
dimension = checkNull(rsStock.getString("dimension"));
suppCodeMfg = checkNull(rsStock.getString("supp_code__mfg"));
acctCodeDr = checkNull(rsStock.getString("acct_code__inv"));
cctrCodeDr = checkNull(rsStock.getString("cctr_code__inv"));
rateOh = rsStock.getDouble("rate__oh");
acctCodeOh = checkNull(rsStock.getString("acct_code__oh"));
cctrCodeOh = checkNull(rsStock.getString("cctr_code__oh"));
restestDate = rsStock.getTimestamp("retest_date");
stkGrossRate = rsStock.getDouble("gross_rate");
convQtyStduom = rsStock.getDouble("conv__qty_stduom");
unitAlt = checkNull(rsStock.getString("unit__alt"));
batchNo = checkNull(rsStock.getString("batch_no"));
noArt = rsStock.getDouble("no_art");
batchSize = rsStock.getDouble("batch_size");
holdQuantity = rsStock.getDouble("hold_qty");
actualRate = rsStock.getDouble("actual_rate");
considerAllocate = checkNull(rsStock.getString("consider_allocate"));
System.out.println("Value of Quantity is :: ["+quantity+"]");
if(!issueCondition)
{
int cntISS = 1;
issueCondition = true;
valueXmlforIssue.append("<?xml version='1.0' encoding='UTF-8'?>\n");
valueXmlforIssue.append("<Root>\n");
valueXmlforIssue.append("<DocumentRoot>\n");
valueXmlforIssue.append("<description>").append("DatawindowRoot").append("</description>\n");
valueXmlforIssue.append("<group0>\n");
valueXmlforIssue.append("<description>").append("Group0description").append("</description>\n");
valueXmlforIssue.append("<Header0>\n");
valueXmlforIssue.append("<objName><![CDATA[").append("adj_iss").append("]]></objName>\n");
valueXmlforIssue.append("<pageContext><![CDATA[").append("1").append("]]></pageContext>\n");
valueXmlforIssue.append("<objContext><![CDATA[").append("1").append("]]></objContext>\n");
valueXmlforIssue.append("<editFlag><![CDATA[").append("A").append("]]></editFlag>\n");
valueXmlforIssue.append("<focusedColumn><![CDATA[").append("").append("]]></focusedColumn>\n");
valueXmlforIssue.append("<action><![CDATA[").append("SAVE").append("]]></action>\n");
valueXmlforIssue.append("<elementName><![CDATA[").append("").append("]]></elementName>\n");
valueXmlforIssue.append("<keyValue><![CDATA[").append("1").append("]]></keyValue>\n");
valueXmlforIssue.append("<pkValues><![CDATA[").append("").append("]]></pkValues>\n");
valueXmlforIssue.append("<taxKeyValue><![CDATA[").append("").append("]]></taxKeyValue>\n");
valueXmlforIssue.append("<saveLevel><![CDATA[").append("1").append("]]></saveLevel>\n");
valueXmlforIssue.append("<forcedSave><![CDATA[").append(false).append("]]></forcedSave>\n");
valueXmlforIssue.append("<taxInFocus><![CDATA[").append(false).append("]]></taxInFocus>\n");
valueXmlforIssue.append("<Detail1 dbID=\"\" domID=\"1\" objContext=\"1\" objName=\"adj_iss\">\n");
valueXmlforIssue.append("<attribute pkNames=\"\" selected=\"N\" status=\"O\" updateFlag=\"A\"/>\n");
valueXmlforIssue.append("<tran_id><![CDATA[617ARD0002]]></tran_id>\n");
valueXmlforIssue.append("<tran_date><![CDATA[").append((ltranDate==null)?"":simpleDateFormat.format(ltranDate)).append("]]></tran_date>\n");
valueXmlforIssue.append("<eff_date><![CDATA[").append(simpleDateFormat.format(new Date())).append("]]></eff_date>\n");
valueXmlforIssue.append("<ref_ser><![CDATA[").append("ADJISS").append("]]></ref_ser>\n");
valueXmlforIssue.append("<order_id><![CDATA[").append("").append("]]></order_id>\n");
valueXmlforIssue.append("<site_code><![CDATA[").append(siteCode).append("]]></site_code>\n");
valueXmlforIssue.append("<ref_date/>\n");
valueXmlforIssue.append("<ref_ser__for/>\n");
valueXmlforIssue.append("<ref_id__for/>\n");
valueXmlforIssue.append("<item_ser><![CDATA[").append(itemSer).append("]]></item_ser>\n");
valueXmlforIssue.append("<remarks><![CDATA[").append(tranId).append("]]></remarks>\n");
valueXmlforIssue.append("<confirmed><![CDATA[N]]></confirmed>");
valueXmlforIssue.append("<reas_code><![CDATA[").append("AIDSC").append("]]></reas_code>");
/*valueXmlforIssue.append("<reas_code><![CDATA[").append("ARSLR").append("]]></reas_code>");*/
valueXmlforIssue.append("<conf_date/>\n");
/*valueXmlforIssue.append("<chg_date><![CDATA[").append("").append("]]></chg_date>");
valueXmlforIssue.append("<chg_user><![CDATA[").append("").append("]]></chg_user>");
valueXmlforIssue.append("<chg_term><![CDATA[").append("").append("]]></chg_term>");*/
valueXmlforIssue.append("<emp_code__aprv/>\n");
valueXmlforIssue.append("<price_list/>\n");
valueXmlforIssue.append("</Detail1>\n");
System.out.println("ISSUE HEADER GENERATED");
double amount = stkRate * quantity;
valueXmlforIssue.append("<Detail2 dbID=\"\" domID=\""+cntISS+"\" objContext=\"2\" objName=\"adj_iss\">\n");
valueXmlforIssue.append("<attribute pkNames=\"\" selected=\"N\" status=\"O\" updateFlag=\"A\"/>\n");
valueXmlforIssue.append("<tran_id/>\n");
valueXmlforIssue.append("<line_no><![CDATA[").append(Integer.toString(cntISS)).append("]]></line_no>\n");
valueXmlforIssue.append("<item_code><![CDATA[").append(itemCodeHdr).append("]]></item_code>\n");
valueXmlforIssue.append("<unit><![CDATA[").append(unit).append("]]></unit>\n");
valueXmlforIssue.append("<loc_code><![CDATA[").append(locationCode).append("]]></loc_code>\n");
valueXmlforIssue.append("<lot_no><![CDATA[").append(lotNoHdr).append("]]></lot_no>\n");
valueXmlforIssue.append("<lot_sl><![CDATA[").append(lotSlHdr).append("]]></lot_sl>\n");
valueXmlforIssue.append("<quantity><![CDATA[").append(quantity).append("]]></quantity>\n");
valueXmlforIssue.append("<sundry_type/>\n");
valueXmlforIssue.append("<sundry_code/>\n");
valueXmlforIssue.append("<rate><![CDATA[").append(stkRate).append("]]></rate>\n");
valueXmlforIssue.append("<gross_rate><![CDATA[").append(stkGrossRate).append("]]></gross_rate>\n");
valueXmlforIssue.append("<grade><![CDATA[").append(grade).append("]]></grade>\n");
valueXmlforIssue.append("<dimension><![CDATA[").append(dimension).append("]]></dimension>\n");
valueXmlforIssue.append("<no_art><![CDATA[").append(noArt).append("]]></no_art>\n");
valueXmlforIssue.append("<amount><![CDATA[").append(String.valueOf(amount)).append("]]></amount>\n");
valueXmlforIssue.append("<gross_weight><![CDATA[").append(grossWeight).append("]]></gross_weight>\n");
valueXmlforIssue.append("<tare_weight><![CDATA[").append(tare_weight).append("]]></tare_weight>\n");
valueXmlforIssue.append("<net_weight><![CDATA[").append(net_weight).append("]]></net_weight>\n");
valueXmlforIssue.append("<acct_code__dr><![CDATA[").append(finCommon.getFinparams("999999","ACCT_CODE_ISS_RCP",conn)).append("]]></acct_code__dr>\n");
valueXmlforIssue.append("<cctr_code__dr><![CDATA[").append(finCommon.getFinparams("999999","COST_CEN_ISS_RCP",conn)).append("]]></cctr_code__dr>\n");
valueXmlforIssue.append("<acct_code__cr><![CDATA[").append(acctCodeDr).append("]]></acct_code__cr>\n");
valueXmlforIssue.append("<cctr_code__cr><![CDATA[").append(cctrCodeDr).append("]]></cctr_code__cr>\n");
valueXmlforIssue.append("<potency_perc><![CDATA[").append(potencyPerc).append("]]></potency_perc>\n");
valueXmlforIssue.append("<pack_code><![CDATA[").append(packCode).append("]]></pack_code>\n");
valueXmlforIssue.append("<mfg_date><![CDATA[").append("").append("]]></mfg_date>\n");
valueXmlforIssue.append("<exp_date><![CDATA[").append("").append("]]></exp_date>\n");
valueXmlforIssue.append("<site_code__mfg><![CDATA[").append(siteCodeMfg).append("]]></site_code__mfg>\n");
valueXmlforIssue.append("<conv__qty_stduom><![CDATA[").append(convQtyStduom).append("]]></conv__qty_stduom>\n");
valueXmlforIssue.append("<unit__alt><![CDATA[").append(unitAlt).append("]]></unit__alt>\n");
valueXmlforIssue.append("</Detail2>");
}
}//if(rsStock.next())
valueXmlforIssue.append("</Header0>\n");
valueXmlforIssue.append("</group0>\n");
valueXmlforIssue.append("</DocumentRoot>\n");
valueXmlforIssue.append("</Root>\n");
if(!receiptCondition)
{
receiptCondition = true;
valueXmlforReceipt.append("<?xml version='1.0' encoding='UTF-8'?>\n");
valueXmlforReceipt.append("<Root>\n");
valueXmlforReceipt.append("<DocumentRoot>\n");
valueXmlforReceipt.append("<description>").append("DatawindowRoot").append("</description>\n");
valueXmlforReceipt.append("<group0>\n");
valueXmlforReceipt.append("<description>").append("Group0description").append("</description>\n");
valueXmlforReceipt.append("<Header0>\n");
valueXmlforReceipt.append("<objName><![CDATA[").append("adj_rcp").append("]]></objName>\n");
valueXmlforReceipt.append("<pageContext><![CDATA[").append("1").append("]]></pageContext>\n");
valueXmlforReceipt.append("<objContext><![CDATA[").append("1").append("]]></objContext>\n");
valueXmlforReceipt.append("<editFlag><![CDATA[").append("A").append("]]></editFlag>\n");
valueXmlforReceipt.append("<focusedColumn><![CDATA[").append("").append("]]></focusedColumn>\n");
valueXmlforReceipt.append("<action><![CDATA[").append("SAVE").append("]]></action>\n");
valueXmlforReceipt.append("<elementName><![CDATA[").append("").append("]]></elementName>\n");
valueXmlforReceipt.append("<keyValue><![CDATA[").append("1").append("]]></keyValue>\n");
valueXmlforReceipt.append("<pkValues><![CDATA[").append("").append("]]></pkValues>\n");
valueXmlforReceipt.append("<taxKeyValue><![CDATA[").append("").append("]]></taxKeyValue>\n");
valueXmlforReceipt.append("<saveLevel><![CDATA[").append("1").append("]]></saveLevel>\n");
valueXmlforReceipt.append("<forcedSave><![CDATA[").append(false).append("]]></forcedSave>\n");
valueXmlforReceipt.append("<taxInFocus><![CDATA[").append(false).append("]]></taxInFocus>\n");
valueXmlforReceipt.append("<Detail1 dbID=\"\" domID=\"1\" objContext=\"1\" objName=\"adj_rcp\">\n");
valueXmlforReceipt.append("<attribute pkNames=\"\" selected=\"N\" status=\"O\" updateFlag=\"A\"/>\n");
valueXmlforReceipt.append("<tran_id/>\n");
valueXmlforReceipt.append("<tran_date><![CDATA[").append((ltranDate==null)?"":simpleDateFormat.format(ltranDate)).append("]]></tran_date>\n");
valueXmlforReceipt.append("<eff_date><![CDATA[").append(simpleDateFormat.format(new Date())).append("]]></eff_date>\n");
valueXmlforReceipt.append("<ref_ser><![CDATA[ADJRCP]]></ref_ser>\n");
valueXmlforReceipt.append("<order_id><![CDATA[").append("").append("]]></order_id>\n");
valueXmlforReceipt.append("<site_code><![CDATA[").append(siteCode).append("]]></site_code>\n");
valueXmlforReceipt.append("<ref_date/>\n");
valueXmlforReceipt.append("<ref_ser__for/>\n");
valueXmlforReceipt.append("<ref_id__for/>\n");
valueXmlforReceipt.append("<item_ser><![CDATA[").append(itemSer).append("]]></item_ser>\n");
valueXmlforReceipt.append("<remarks><![CDATA[").append(tranId).append("]]></remarks>\n");
valueXmlforReceipt.append("<confirmed><![CDATA[N]]></confirmed>\n");
/*valueXmlforReceipt.append("<reas_code><![CDATA[").append("ARSLR").append("]]></reas_code>");*/
valueXmlforReceipt.append("<reas_code><![CDATA[").append("PRRCP").append("]]></reas_code>");
valueXmlforReceipt.append("<conf_date/>\n");
/*valueXmlforReceipt.append("<chg_date><![CDATA[24/06/09 15:04:47]]></chg_date>");
valueXmlforReceipt.append("<chg_user><![CDATA[RCHANDRAN ]]></chg_user>");
valueXmlforReceipt.append("<chg_term><![CDATA[192.168.1.52 ]]></chg_term>");*/
valueXmlforReceipt.append("<emp_code__aprv/>\n");
valueXmlforReceipt.append("<price_list/>\n");
valueXmlforReceipt.append("</Detail1>\n");
System.out.println("RECIEPT HEADER GENERATED");
}
/*valueXmlforIssue.append("</Header0>");
valueXmlforIssue.append("</group0>");
valueXmlforIssue.append("</DocumentRoot>");
valueXmlforIssue.append("</Root>");*/
int cntRCP =1;
sql = "select item_code , lot_no , lot_sl, quantity from srl_contents where serial_no=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
rs = pstmt.executeQuery();
while(rs.next())
{
itemCodeDet = rs.getString("item_code");
lotNodet = rs.getString("lot_no");
lotSlDet = rs.getString("lot_sl");
splitQty = rs.getDouble("quantity");
System.out.println("For Header Data ::::[item_code ["+itemCodeHdr+"]] \t [lot_no ["+lotNoHdr+"]] \t [lot_sl ["+lotSlHdr+"]]");
valueXmlforReceipt.append("<Detail2 dbID=\"\" domID=\""+cntRCP+"\" objContext=\"2\" objName=\"adj_rcp\">\n");
valueXmlforReceipt.append("<attribute pkNames=\"\" selected=\"N\" status=\"O\" updateFlag=\"A\"/>\n");
valueXmlforReceipt.append("<tran_id/>\n");
valueXmlforReceipt.append("<line_no><![CDATA[").append(cntRCP).append("]]></line_no>\n");
valueXmlforReceipt.append("<item_code><![CDATA[").append(itemCodeDet).append("]]></item_code>\n");
valueXmlforReceipt.append("<unit><![CDATA[").append(unit).append("]]></unit>\n");
valueXmlforReceipt.append("<loc_code><![CDATA[").append(locationCode).append("]]></loc_code>\n");
valueXmlforReceipt.append("<lot_no><![CDATA[").append(lotNodet).append("]]></lot_no>\n");
valueXmlforReceipt.append("<lot_sl><![CDATA[").append(lotSlDet).append("]]></lot_sl>\n");
valueXmlforReceipt.append("<quantity><![CDATA[").append(String.valueOf(Math.abs(splitQty))).append("]]></quantity>\n");
valueXmlforReceipt.append("<sundry_type/>\n");
valueXmlforReceipt.append("<sundry_code/>\n");
valueXmlforReceipt.append("<rate><![CDATA[").append(stkRate).append("]]></rate>\n");
valueXmlforReceipt.append("<gross_rate><![CDATA[").append(stkGrossRate).append("]]></gross_rate>\n");
valueXmlforReceipt.append("<grade/>\n");
valueXmlforReceipt.append("<dimension/>\n");
valueXmlforReceipt.append("<no_art><![CDATA[").append(noArt).append("]]></no_art>\n");
valueXmlforReceipt.append("<amount/>\n");
valueXmlforReceipt.append("<gross_weight><![CDATA[").append("0").append("]]></gross_weight>\n");
valueXmlforReceipt.append("<tare_weight><![CDATA[").append("0").append("]]></tare_weight>\n");
valueXmlforReceipt.append("<net_weight><![CDATA[").append("0").append("]]></net_weight>\n");
String[] acctCctrDetrValue = finCommon.getFromAcctDetr(itemCodeDet,itemSer,"STKINV",conn).split(",");
valueXmlforReceipt.append("<acct_code__dr><![CDATA[").append(acctCctrDetrValue[0]).append("]]></acct_code__dr>\n");
valueXmlforReceipt.append("<cctr_code__dr><![CDATA[").append(acctCctrDetrValue[1]).append("]]></cctr_code__dr>\n");
valueXmlforReceipt.append("<acct_code__cr><![CDATA[").append(finCommon.getFinparams("999999","ACCT_CODE_ISS_RCP",conn)).append("]]></acct_code__cr>\n");
valueXmlforReceipt.append("<cctr_code__cr><![CDATA[").append(finCommon.getFinparams("999999","COST_CEN_ISS_RCP",conn)).append("]]></cctr_code__cr>\n");
valueXmlforReceipt.append("<potency_perc><![CDATA[").append(potencyPerc).append("]]></potency_perc>");
valueXmlforReceipt.append("<pack_code><![CDATA[").append(packCode).append("]]></pack_code>");
valueXmlforReceipt.append("<mfg_date><![CDATA[]]></mfg_date>\n");
valueXmlforReceipt.append("<exp_date><![CDATA[]]></exp_date>\n");
valueXmlforReceipt.append("<site_code__mfg><![CDATA[").append(siteCodeMfg).append("]]></site_code__mfg>\n");
valueXmlforReceipt.append("<conv__qty_stduom><![CDATA[").append(convQtyStduom).append("]]></conv__qty_stduom>\n");
valueXmlforReceipt.append("<unit__alt><![CDATA[").append(unit).append("]]></unit__alt>\n");
valueXmlforReceipt.append("</Detail2>\n");
cntRCP++;
}
if(rs != null){rs.close();rs = null;}
if(pstmt != null){pstmt.close();pstmt = null;}
valueXmlforReceipt.append("</Header0>");
valueXmlforReceipt.append("</group0>");
valueXmlforReceipt.append("</DocumentRoot>");
valueXmlforReceipt.append("</Root>");
System.out.println("ReturnString Finally :::::::["+valueXmlforIssue+"]\n [valueXmlforReceipt ["+valueXmlforReceipt+"]]");
//retSting = saveData(siteCode,valueXmlforIssue.toString(),conn,userId);
sql = "select status from srl_contents where serial_no = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
if(rs.next())
{
status = rs.getString("status");
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
if(rs != null)
{
rs.close();
rs = null;
}
if("C".equalsIgnoreCase(status))
{
retSting = itmDBAccessEJB.getErrorString("", "VTRNCONF04", "");
return retSting;
}
else
{
flagSaveString = "";
if(issueCondition && flagSaveString.equals(""))
{
System.out.println("Saving Data for Issue");
retSting = saveData(siteCode,valueXmlforIssue.toString(),conn,userId);
if(retSting.indexOf("Success") > -1)
{
String[] arrayForTranId = retSting.split("<TranID>");
int endIndex = arrayForTranId[1].indexOf("</TranID>");
tranIdForIssue = arrayForTranId[1].substring(0,endIndex);
System.out.println("tranIdForIssue ["+tranIdForIssue+"]");
conn.commit();
System.out.println("Before ::[retSting (confirmIssueAndReceipt)]"+userId);
retSting = confirmIssueAndReceipt("adj_iss",tranIdForIssue,xtraParams,forcedFlag,conn,userId);
if(retSting.indexOf("VTSUCC1") > -1 || retSting.indexOf("VTMCONF2") > -1)
{
System.out.println("Inside If Block of returnstring!!!!!!!!!!");
retSting = "";
}
else
{
System.out.println("Inside Else Block of returnstring!!!!!!!!!!");
flagSaveString = retSting;
}
}
else
{
flagSaveString = retSting;
System.out.println("shamim rollbacking >>>>>>>>>>");
conn.rollback();
}
}
if(receiptCondition && flagSaveString.equals(""))
{
System.out.println("Saving Data for Receipt");
retSting = saveData(siteCode,valueXmlforReceipt.toString(),conn,userId);
if(retSting.indexOf("Success") > -1)
{
String[] arrayForTranId = retSting.split("<TranID>");
int endIndex = arrayForTranId[1].indexOf("</TranID>");
tranIdForReciept = arrayForTranId[1].substring(0,endIndex);
conn.commit();
retSting = confirmIssueAndReceipt("adj_rcp",tranIdForReciept,xtraParams,forcedFlag,conn,userId);
if(retSting.indexOf("VTSUCC1") > -1 || retSting.indexOf("VTMCONF2") > -1)
{
retSting = "";
}
}
else
{
flagSaveString = retSting;
System.out.println("shamim rollbacking >>>>>>>>>>");
conn.rollback();
}
}
System.out.println("Receipt "+tranIdForReciept);
if(tranIdForReciept.length() > 0 && flagSaveString == "")
{
sql = "update srl_contents set status ='C' where serial_no=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
int i = pstmt.executeUpdate();
conn.commit();
pstmt.close();
pstmt = null;
System.out.println("Update ctr "+i);
if(i > 0)
{
retSting = itmDBAccessEJB.getErrorString("", "CONFSUCCES", "");//itmDBAccessEJB.getErrorString("","VTBLNKDTL","","",conn);
return retSting;
}
}
}
//}//if(rsStock.next())
}//end of try block
catch(Exception ex)
{
System.out.println("Exception Inside [SRLContainerSplit [confirm] Method] ::["+ex+"]");
ex.printStackTrace();
throw new ITMException(ex);
}
finally
{
try
{
if(conn != null)
{
conn.close();
conn = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
if(rs != null)
{
rs.close();
rs = null;
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
System.out.println("[retSting :: ["+retSting+"]]");
return retSting;
}
private String checkNull(String str)
{
if(str == null)
{
return "";
}
else
{
return str.trim();
}
}
public String saveData(String siteCode,String xmlString, Connection conn,String userId) throws ITMException
{
System.out.println("saving data...........");
InitialContext ctx = null;
String retString = null;
MasterStatefulLocal masterStateful = null; // for ejb3
try
{
AppConnectParm appConnect = new AppConnectParm();
ctx = new InitialContext(appConnect.getProperty());
masterStateful = (MasterStatefulLocal)ctx.lookup("ibase/MasterStatefulEJB/local");
String [] authencate = new String[2];
authencate[0] = userId;
authencate[1] = "";
System.out.println("xmlString :::: " + xmlString+"END END END");
retString = masterStateful.processRequest(authencate, siteCode, true, xmlString,true,conn);
masterStateful = null;
System.out.println("masterStateful.processRequest(authencate, siteCode, true, xmlString,true,conn) >>>>> " + retString+" shamim");
}
catch(ITMException itme)
{
System.out.println("ITMException :Physical Inv Fount : saveData :==>" + itme);
throw new ITMException(itme);
}
catch(Exception e)
{
System.out.println("Exception :Physical Inv Fount : saveData :==>");
throw new ITMException(e);
}
return retString;
}
public String confirmIssueAndReceipt(String businessObj, String tranIdFr,String xtraParams, String forcedFlag, Connection conn,String userId) throws ITMException
{
String methodName = "";
String compName = "";
String retString = "";
String serviceCode = "";
String serviceURI = "";
String actionURI = "";
String sql = "";
PreparedStatement pStmt = null;
ResultSet rs = null;
System.out.println("confirmIssueAndReceipt(String businessObj, String tranIdFr,String xtraParams, String forcedFlag, Connection conn) called >>><!@#>");
try
{
AppConnectParm appConnect = new AppConnectParm();
java.util.Properties p = appConnect.getProperty();
InitialContext ctx = new InitialContext(p);
CommonDBAccessRemote dbAccessRemote = (CommonDBAccessRemote)ctx.lookup("ibase/CommonDBAccessEJB/remote");
UserInfoBean userInfo = dbAccessRemote.createUserInfo(userId);
//DistStkUpdHome distStkUpdHome = (DistStkUpdHome)ctx.lookup(componentName); for ejb3
AdjIssueRcpConfLocal adjIssueRcpConfLocal = (AdjIssueRcpConfLocal)ctx.lookup("ibase/AdjIssueRcpConf/local"); //for ejb3
adjIssueRcpConfLocal.setUserInfo(userInfo);
retString = adjIssueRcpConfLocal.confirm(tranIdFr, xtraParams, forcedFlag);
System.out.println("Transaction Confirmed Successfully!!!!!!!!!!");
}
catch(Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if (pStmt != null )
{
pStmt.close();
pStmt = null;
}
if (rs !=null)
{
rs.close();
rs=null;
}
}
catch(Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
}
return retString;
}
}
\ No newline at end of file
/**
* PURPOSE : Local Interface
* Author :Sumit Sarkar
*/
package ibase.webitm.ejb.dis;
import ibase.webitm.ejb.*;
import ibase.webitm.utility.ITMException;
import java.sql.*;
import java.rmi.RemoteException;
// The local interface declares all the utility functions to be used in your EJB component
@javax.ejb.Local
public interface SRLContainerSplitLocal extends ActionHandlerLocal//ValidatorLocal
{
public String confirm()throws RemoteException,ITMException;
//public String actionHandler(String actionType, String xmlString, String xmlString1, String xmlString2 ,String objContext, String xtraParams)throws RemoteException,ITMException;
public String confirm(String tranID,String xtraParams, String forcedFlag)throws RemoteException,ITMException;
}
/**
* PURPOSE : Remote Interface
* Author : Sumit Sarkar
*/
package ibase.webitm.ejb.dis;
import ibase.webitm.ejb.*;
import ibase.webitm.utility.ITMException;
import java.sql.*;
import java.rmi.RemoteException;
// The remote interface declares all the utility functions to be used in your EJB component
@javax.ejb.Remote
public interface SRLContainerSplitRemote extends ActionHandlerRemote//, EJBObject
{
public String confirm()throws RemoteException,ITMException;
//public String actionHandler(String actionType, String xmlString, String xmlString1, String xmlString2 ,String objContext, String xtraParams)throws RemoteException,ITMException;
public String confirm(String tranID,String xtraParams, String forcedFlag)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