Commit 3c904da8 authored by ssalve's avatar ssalve

Sarita : Done changes by sarita on 05 NOV 2018

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@192698 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 545522c2
...@@ -10,16 +10,20 @@ import java.sql.PreparedStatement; ...@@ -10,16 +10,20 @@ import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import javax.naming.InitialContext; import javax.naming.InitialContext;
import ibase.ejb.CommonDBAccessEJB; import ibase.ejb.CommonDBAccessEJB;
import ibase.ejb.CommonDBAccessRemote;
import ibase.system.config.AppConnectParm; import ibase.system.config.AppConnectParm;
import ibase.utility.E12GenericUtility; import ibase.utility.E12GenericUtility;
import ibase.utility.UserInfoBean; import ibase.utility.UserInfoBean;
import ibase.webitm.ejb.ActionHandlerEJB; import ibase.webitm.ejb.ActionHandlerEJB;
import ibase.webitm.ejb.ITMDBAccessEJB; import ibase.webitm.ejb.ITMDBAccessEJB;
import ibase.webitm.ejb.MasterStatefulLocal; import ibase.webitm.ejb.MasterStatefulLocal;
import ibase.webitm.ejb.XML2DBEJB;
import ibase.webitm.ejb.dis.adv.AdjIssueRcpConf; import ibase.webitm.ejb.dis.adv.AdjIssueRcpConf;
import ibase.webitm.ejb.fin.FinCommon; import ibase.webitm.ejb.fin.FinCommon;
import ibase.webitm.utility.ITMException; import ibase.webitm.utility.ITMException;
...@@ -121,14 +125,23 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -121,14 +125,23 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
FinCommon finCommon = new FinCommon(); FinCommon finCommon = new FinCommon();
//changes by sarita 19MARCH2018 //changes by sarita 19MARCH2018
String statusSrl = ""; String statusSrl = "";
int cnt = 0; int cnt = 0 , stkCnt = 0;
//Added by sarita on 29 OCT 2018 [START] //Added by sarita on 29 OCT 2018 [START]
String avalibleFrLocCode = ""; String avalibleFrLocCode = "";
//Added by sarita on 29 OCT 2018 [END] //Added by sarita on 29 OCT 2018 [END]
//Added by sarita on 02 NOV 2018 [START]
ArrayList stockDataList = new ArrayList();
String refSer = "", autoConfirm = "", taxForm = "", chgTerm = "",wrkflwInit = "", wrkflwOpt = "", transactionID = "";
XML2DBEJB xml2DBLocal = new XML2DBEJB();
boolean isWrkflwToBeInitiated = false;
UserInfoBean userInfo = null;
int formCnt = 0;
//Added by sarita on 02 NOV 2018 [END]
try try
{ {
//conn = getConnection(); //conn = getConnection();
userId = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginCode"); userId = checkNull(genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginCode"));
chgTerm = checkNull(genericUtility.getValueFromXTRA_PARAMS(xtraParams, "termId"));
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(genericUtility.getApplDateFormat()); SimpleDateFormat simpleDateFormat = new SimpleDateFormat(genericUtility.getApplDateFormat());
//Added by sarita on 18MARCH2018 //Added by sarita on 18MARCH2018
sql = "select item_code , lot_no , lot_sl,serial_date,status from srl_container where serial_no=?"; sql = "select item_code , lot_no , lot_sl,serial_date,status from srl_container where serial_no=?";
...@@ -183,7 +196,7 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -183,7 +196,7 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
//Commented & Added by sarita to perform validation on location as location should not be GIT Location on 29 OCT 2018 [START] //Commented & Added by sarita to perform validation on location as location should not be GIT Location on 29 OCT 2018 [START]
//sql = "select count(*) as cnt from stock where ITEM_CODE = ? AND LOT_NO = ? AND LOT_SL = ? AND quantity > 0"; //sql = "select count(*) as cnt from stock where ITEM_CODE = ? AND LOT_NO = ? AND LOT_SL = ? AND quantity > 0";
sql = "select count(*) as cnt , a.available " sql = "select a.available "
+ "from invstat a , Location b , Stock c " + "from invstat a , Location b , Stock c "
+ "where a.inv_stat = b.inv_stat " + "where a.inv_stat = b.inv_stat "
+ "AND b.loc_code = c.loc_code " + "AND b.loc_code = c.loc_code "
...@@ -191,16 +204,21 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -191,16 +204,21 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
+ "AND c.LOT_NO = ? " + "AND c.LOT_NO = ? "
+ "AND c.LOT_SL = ? " + "AND c.LOT_SL = ? "
+ "AND c.quantity > 0 " + "AND c.quantity > 0 "
+ "group by a.available"; + "group by a.available ,c.loc_code,c.item_code,c.lot_no,c.lot_sl,c.quantity";
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
pstmt.setString(1, itemCodeHdr); pstmt.setString(1, itemCodeHdr);
pstmt.setString(2, lotNoHdr); pstmt.setString(2, lotNoHdr);
pstmt.setString(3, lotSlHdr); pstmt.setString(3, lotSlHdr);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
if(rs.next()) //Added by sarita to store data into ArrayList on 02 NOV 2018 [START]
//if(rs.next())
while(rs.next())
{ {
cnt = rs.getInt("cnt"); stkCnt++;
avalibleFrLocCode = rs.getString("available"); avalibleFrLocCode = rs.getString("available");
stockDataList.add(stkCnt);
stockDataList.add(avalibleFrLocCode);
//Added by sarita to store data into ArrayList on 02 NOV 2018 [END]
} }
System.out.println("[SRLContainerSplit] Count is ["+cnt+"] && Available in invstat is ["+avalibleFrLocCode+"]"); System.out.println("[SRLContainerSplit] Count is ["+cnt+"] && Available in invstat is ["+avalibleFrLocCode+"]");
if(rs != null) if(rs != null)
...@@ -214,7 +232,8 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -214,7 +232,8 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
pstmt = null; pstmt = null;
} }
//changes by sarita on 18MARCH2018 //changes by sarita on 18MARCH2018
if(cnt == 0) //if(cnt == 0) -- Commented and Added by sarita on 02 NOV 2018
if(stockDataList.isEmpty() == true)
{ {
//retSting = itmDBAccessEJB.getErrorString("", "VTNOSTK", "");//itmDBAccessEJB.getErrorString("","VTBLNKDTL","","",conn); //retSting = itmDBAccessEJB.getErrorString("", "VTNOSTK", "");//itmDBAccessEJB.getErrorString("","VTBLNKDTL","","",conn);
retSting = itmDBAccessEJB.getErrorString("", "VTNOSTK", "", "", conn); retSting = itmDBAccessEJB.getErrorString("", "VTNOSTK", "", "", conn);
...@@ -223,7 +242,8 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -223,7 +242,8 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
return retSting; return retSting;
} }
if(cnt > 1) //if(cnt > 1) -- Commented and Added by sarita on 02 NOV 2018
if(stockDataList.size() > 2)
{ {
//retSting = itmDBAccessEJB.getErrorString("", "INVRCDSTOC", "");//itmDBAccessEJB.getErrorString("","VTBLNKDTL","","",conn); //retSting = itmDBAccessEJB.getErrorString("", "INVRCDSTOC", "");//itmDBAccessEJB.getErrorString("","VTBLNKDTL","","",conn);
retSting = itmDBAccessEJB.getErrorString("", "INVRCDSTOC", "", "", conn); retSting = itmDBAccessEJB.getErrorString("", "INVRCDSTOC", "", "", conn);
...@@ -231,13 +251,27 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -231,13 +251,27 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
isError = true; isError = true;
return retSting; return retSting;
} }
else if("N".equalsIgnoreCase(avalibleFrLocCode)) // Commented and Added by sarita on 02 NOV 2018 [START]
/*else if("N".equalsIgnoreCase(avalibleFrLocCode))
{ {
System.out.println("COUNT if available is N ["+cnt+"]"); System.out.println("COUNT if available is N ["+cnt+"]");
retSting = itmDBAccessEJB.getErrorString("", "VTINVGIT", "", "", conn);//Please check the GIT Location Code, it does not exists or not for internal use. retSting = itmDBAccessEJB.getErrorString("", "VTINVGIT", "", "", conn);//Please check the GIT Location Code, it does not exists or not for internal use.
isError = true; isError = true;
return retSting; return retSting;
}*/
else
{
stkCnt = (Integer)stockDataList.get(0);
avalibleFrLocCode = (String)stockDataList.get(1);
System.out.println("avalibleFrLocCode ["+avalibleFrLocCode+"]");
if((stkCnt == 1) && ("N".equalsIgnoreCase(avalibleFrLocCode)))
{
retSting = itmDBAccessEJB.getErrorString("", "VTINVGIT", "", "", conn);//Please check the GIT Location Code, it does not exists or not for internal use.
isError = true;
return retSting;
}
} }
// Commented and Added by sarita on 02 NOV 2018 [END]
//Commented & Added by sarita to perform validation on location as location should not be GIT Location on 29 OCT 2018 [START] //Commented & Added by sarita to perform validation on location as location should not be GIT Location on 29 OCT 2018 [START]
...@@ -430,7 +464,7 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -430,7 +464,7 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
valueXmlforReceipt.append("<forcedSave><![CDATA[").append(false).append("]]></forcedSave>\n"); valueXmlforReceipt.append("<forcedSave><![CDATA[").append(false).append("]]></forcedSave>\n");
valueXmlforReceipt.append("<taxInFocus><![CDATA[").append(false).append("]]></taxInFocus>\n"); valueXmlforReceipt.append("<taxInFocus><![CDATA[").append(false).append("]]></taxInFocus>\n");
valueXmlforReceipt.append("<Detail1 dbID=\"\" domID=\"1\" objContext=\"1\" objName=\"adj_rcp\">\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("<attribute pkNames=\"\" selected=\"N\" status=\"N\" updateFlag=\"A\"/>\n");
valueXmlforReceipt.append("<tran_id/>\n"); valueXmlforReceipt.append("<tran_id/>\n");
//valueXmlforReceipt.append("<tran_date><![CDATA[").append((ltranDate==null)?"":simpleDateFormat.format(ltranDate)).append("]]></tran_date>\n"); //valueXmlforReceipt.append("<tran_date><![CDATA[").append((ltranDate==null)?"":simpleDateFormat.format(ltranDate)).append("]]></tran_date>\n");
valueXmlforReceipt.append("<tran_date><![CDATA[").append((tranSerialDate==null)?"":simpleDateFormat.format(tranSerialDate)).append("]]></tran_date>\n"); valueXmlforReceipt.append("<tran_date><![CDATA[").append((tranSerialDate==null)?"":simpleDateFormat.format(tranSerialDate)).append("]]></tran_date>\n");
...@@ -448,9 +482,9 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -448,9 +482,9 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
/*valueXmlforReceipt.append("<reas_code><![CDATA[").append("ARSLR").append("]]></reas_code>");*/ /*valueXmlforReceipt.append("<reas_code><![CDATA[").append("ARSLR").append("]]></reas_code>");*/
valueXmlforReceipt.append("<reas_code><![CDATA[").append("PRRCP").append("]]></reas_code>"); valueXmlforReceipt.append("<reas_code><![CDATA[").append("PRRCP").append("]]></reas_code>");
valueXmlforReceipt.append("<conf_date/>\n"); valueXmlforReceipt.append("<conf_date/>\n");
/*valueXmlforReceipt.append("<chg_date><![CDATA[24/06/09 15:04:47]]></chg_date>"); valueXmlforReceipt.append("<chg_date><![CDATA[").append((tranSerialDate==null)?"":simpleDateFormat.format(tranSerialDate)).append("]]></chg_date>\n");
valueXmlforReceipt.append("<chg_user><![CDATA[RCHANDRAN ]]></chg_user>"); valueXmlforReceipt.append("<chg_user><![CDATA[").append(userId).append("]]></chg_user>\n");
valueXmlforReceipt.append("<chg_term><![CDATA[192.168.1.52 ]]></chg_term>");*/ valueXmlforReceipt.append("<chg_term><![CDATA[").append(chgTerm).append("]]></chg_term>\n");
valueXmlforReceipt.append("<emp_code__aprv/>\n"); valueXmlforReceipt.append("<emp_code__aprv/>\n");
valueXmlforReceipt.append("<price_list/>\n"); valueXmlforReceipt.append("<price_list/>\n");
valueXmlforReceipt.append("</Detail1>\n"); valueXmlforReceipt.append("</Detail1>\n");
...@@ -476,7 +510,7 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -476,7 +510,7 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
System.out.println("For Header Data ::::[item_code ["+itemCodeHdr+"]] \t [lot_no ["+lotNoHdr+"]] \t [lot_sl ["+lotSlHdr+"]]"); 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("<Detail2 dbID=\"\" domID=\""+cntRCP+"\" objContext=\"2\" objName=\"adj_rcp\">\n");
valueXmlforReceipt.append("<attribute pkNames=\"\" selected=\"N\" status=\"O\" updateFlag=\"A\"/>\n"); valueXmlforReceipt.append("<attribute pkNames=\"\" selected=\"N\" status=\"N\" updateFlag=\"A\"/>\n");
valueXmlforReceipt.append("<tran_id/>\n"); valueXmlforReceipt.append("<tran_id/>\n");
valueXmlforReceipt.append("<line_no><![CDATA[").append(cntRCP).append("]]></line_no>\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("<item_code><![CDATA[").append(itemCodeDet).append("]]></item_code>\n");
...@@ -569,15 +603,55 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -569,15 +603,55 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
if(receiptCondition && (isError == false)) if(receiptCondition && (isError == false))
{ {
System.out.println("Saving Data for Receipt"); System.out.println("Saving Data for Receipt");
retSting = saveData(siteCode,valueXmlforReceipt.toString(),conn,userId); //Commented and Added by sarit aon 02 NOV 2018 [START]
System.out.println("Data Saved Successfully for Receipt"); //retSting = saveData(siteCode,valueXmlforReceipt.toString(),conn,userId);
if(retSting.indexOf("Success") > -1) String sql1 = "SELECT REF_SER, AUTO_CONFIRM, TAX_FORMS, WRKFLW_INIT, WORKFLOW_OPT FROM TRANSETUP WHERE TRAN_WINDOW = 'w_adj_rcp'" ;
pstmt = conn.prepareStatement(sql1);
rs = pstmt.executeQuery();
if( rs.next() )
{ {
String[] arrayForTranId = retSting.split("<TranID>"); refSer = checkNull(rs.getString( "REF_SER" ));
autoConfirm = checkNull(rs.getString( "AUTO_CONFIRM" ));
taxForm = checkNull(rs.getString( "TAX_FORMS" ));
wrkflwInit = checkNull(rs.getString( "WRKFLW_INIT" ));
wrkflwOpt = checkNull(rs.getString( "WORKFLOW_OPT" ));
}
if ( pstmt != null )
{
pstmt.close();
pstmt = null;
}
if ( rs != null )
{
rs.close();
rs = null;
}
CommonDBAccessRemote dbAccessRemote = new CommonDBAccessEJB();
userInfo = dbAccessRemote.createUserInfo(userId);
HashMap totFormsMap = getTransInfo(conn);
String totForms = (String)totFormsMap.get("TOTAL_FORMS");
if(totForms != null && totForms.length() > 0)
{
formCnt = Integer.parseInt(totForms);
}
System.out.println("Form Count is == ["+formCnt+"]");
retSting = xml2DBLocal.saveXML2DB(refSer,valueXmlforReceipt.toString(),"adj_rcp", "A", formCnt, true, userId, "tran_id",false,xtraParams,null,wrkflwInit,isWrkflwToBeInitiated,wrkflwOpt,null,"","",false, conn, false, userInfo);
transactionID = retSting;
System.out.println("Data Saved Successfully for Receipt" +retSting );
//if(retSting.indexOf("Success") > -1)
if(retSting.indexOf( "<Errors>" ) == -1 )
{
//Added and Commented by sarita on 02 NOV 2018 [START]
/*String[] arrayForTranId = retSting.split("<TranID>");
int endIndex = arrayForTranId[1].indexOf("</TranID>"); int endIndex = arrayForTranId[1].indexOf("</TranID>");
tranIdForReciept = arrayForTranId[1].substring(0,endIndex); tranIdForReciept = arrayForTranId[1].substring(0,endIndex); System.out.println("tranIdForReciept["+tranIdForReciept+"]");
//Commented by sarita on 19MARCH2018 //Commented by sarita on 19MARCH2018
//conn.commit(); //conn.commit();*/
tranIdForReciept = retSting;
//Added and Commented by sarita on 02 NOV 2018 [END]
retSting = confirmIssueAndReceipt("adj_rcp",tranIdForReciept,xtraParams,forcedFlag,conn,userId); retSting = confirmIssueAndReceipt("adj_rcp",tranIdForReciept,xtraParams,forcedFlag,conn,userId);
System.out.println("ReturnString[Saving Data for Issue] ::"+retSting); System.out.println("ReturnString[Saving Data for Issue] ::"+retSting);
if(retSting.indexOf("VTSUCC1") > -1 || retSting.indexOf("VTMCONF2") > -1) if(retSting.indexOf("VTSUCC1") > -1 || retSting.indexOf("VTMCONF2") > -1)
...@@ -634,7 +708,7 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -634,7 +708,7 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
System.out.println("Update ctr "+i); System.out.println("Update ctr "+i);
if(i > 0) if(i > 0)
{ {
// Prompt messages showing transaction Splitted Successfullly!!!!! //Prompt messages showing transaction Splitted Successfullly!!!!!
retSting = itmDBAccessEJB.getErrorString("", "VTAUTOSPLT", "");//itmDBAccessEJB.getErrorString("","VTBLNKDTL","","",conn); retSting = itmDBAccessEJB.getErrorString("", "VTAUTOSPLT", "");//itmDBAccessEJB.getErrorString("","VTBLNKDTL","","",conn);
return retSting; return retSting;
} }
...@@ -647,7 +721,7 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -647,7 +721,7 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
return retSting; return retSting;
}*/ }*/
//Commented by sarita on 14APR2018 [end] -- removed column status from srl_contents table //Commented by sarita on 14APR2018 [end] -- removed column status from srl_contents table
// Prompt messages showing transaction Splitted Successfullly!!!!! //Prompt messages showing transaction Splitted Successfullly!!!!!
//retSting = itmDBAccessEJB.getErrorString("", "VTAUTOSPLT", "");//itmDBAccessEJB.getErrorString("","VTBLNKDTL","","",conn); //retSting = itmDBAccessEJB.getErrorString("", "VTAUTOSPLT", "");//itmDBAccessEJB.getErrorString("","VTBLNKDTL","","",conn);
retSting = itmDBAccessEJB.getErrorString("", "VTAUTOSPLT", "", "", conn); retSting = itmDBAccessEJB.getErrorString("", "VTAUTOSPLT", "", "", conn);
return retSting; return retSting;
...@@ -812,5 +886,63 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS ...@@ -812,5 +886,63 @@ public class SRLContainerSplit extends ActionHandlerEJB implements SRLContainerS
return retString; return retString;
} }
//Added by method to get Total Forms Information on 02 NOV 2018 [START]
public HashMap getTransInfo(Connection conn) throws ITMException
{
PreparedStatement pstmtObj = null;
ResultSet rsObj = null;
int totalForms = 0;
HashMap objMap = new HashMap();
try
{
String winName = "w_adj_rcp";
String objFormSql = "SELECT COUNT(*) AS COUNT FROM OBJ_FORMS WHERE WIN_NAME = ?";
pstmtObj = conn.prepareStatement(objFormSql);
pstmtObj.setString(1,winName);
rsObj = pstmtObj.executeQuery();
if ( rsObj.next())
{
totalForms = rsObj.getInt("COUNT");
}
if(rsObj != null)
{
rsObj.close();
rsObj = null;
}
if(pstmtObj != null)
{
pstmtObj.close();
pstmtObj = null;
}
objMap.put("TOTAL_FORMS", ""+totalForms); System.out.println("objMap ::"+objMap);
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if(rsObj != null)
{
rsObj.close();
rsObj = null;
}
if(pstmtObj != null)
{
pstmtObj.close();
pstmtObj = null;
}
}
catch(Exception e1)
{
e1.printStackTrace();
throw new ITMException(e1);
}
}
return objMap;
}
//Added by method to get Total Forms Information on 02 NOV 2018 [END]
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment