Commit c653064f authored by jshinde's avatar jshinde

Request Id:W15HSUN003,pallet request with stock details.


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@99180 ce508802-f39f-4f6c-b175-0d175dae99d5
parent f2436578
......@@ -14,6 +14,7 @@ import java.util.*;
import java.util.Date;
import java.text.*;
import java.sql.*;
import javax.ejb.*;
import ibase.webitm.ejb.MasterStatefulLocal;
import javax.naming.InitialContext;
......@@ -56,24 +57,26 @@ public class PalletReqConf extends ActionHandlerEJB implements PalletReqConfLoca
return retString;
}
public String confirm( String tranId, String xtraParams, String forcedFlag , Connection conn, boolean conStat ) throws RemoteException,ITMException
public String confirm( String tranId, String xtraParams, String forcedFlag, Connection conn, boolean conStat ) throws RemoteException,ITMException
{
System.out.println("PalletReqConf Called........");
boolean isError = false;
String confirmed = "";
String sql = "";
ResultSet rs = null;
PreparedStatement pstmt = null;
ResultSet rs = null,rs1 = null;
PreparedStatement pstmt = null,pstmt1 = null;
String errString = ""; Timestamp tranDate = null;
String palletNo = null;
String lineNo = "" ;
String loginSite="";
String lineNo = "",itemCode="",lotNo="",lotSl="",noArt="",quantity="" ;
String empCodeAprv="",siteCode ="";
String loginSite="",qtyPerArt="";
ArrayList<String> palletList = new ArrayList();
ArrayList<String> lineList = new ArrayList();
int count , cntPal = 0;
ITMDBAccessEJB itmdbAccess = new ITMDBAccessEJB();
ArrayList interfaceArrList = new ArrayList();
Timestamp today = new Timestamp(System.currentTimeMillis());
CommonWmsUtil commonWmsUtility = CommonWmsUtil.getInstance();
try
......@@ -82,8 +85,8 @@ public class PalletReqConf extends ActionHandlerEJB implements PalletReqConfLoca
System.out.println(" force flag ["+forcedFlag+"]");
System.out.println(" xtraParams --> ["+xtraParams+"]");
String empCodeAprv = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginEmpCode");
String siteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginSite");
empCodeAprv = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginEmpCode");
siteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginSite");
System.out.println(" site code ["+siteCode+"]");
SimpleDateFormat sdf = new SimpleDateFormat( genericUtility.getDBDateTimeFormat());
Date confDate = new Date();
......@@ -115,8 +118,8 @@ public class PalletReqConf extends ActionHandlerEJB implements PalletReqConfLoca
rs=pstmt.executeQuery();
if(rs.next())
{
System.out.println("pallet_count---" +rs.getInt(1));
cntPal = rs.getInt(1);
System.out.println("pallet_count---" +cntPal);
}
if(pstmt != null)
{
......@@ -151,7 +154,7 @@ public class PalletReqConf extends ActionHandlerEJB implements PalletReqConfLoca
pstmt.close();
pstmt = null;
}
sql="SELECT TRAN_DATE FROM PALLET_REQ_HDR WHERE TRAN_ID=?";
/*sql="SELECT TRAN_DATE FROM PALLET_REQ_HDR WHERE TRAN_ID=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
rs=pstmt.executeQuery();
......@@ -161,9 +164,13 @@ public class PalletReqConf extends ActionHandlerEJB implements PalletReqConfLoca
System.out.println("tranDate" +tranDate);
}
rs.close();
pstmt.close();
pstmt.close();*/
//Changed for pallet request with stock details [Start]Request Id:W15HSUN003
//sql="SELECT PALLET_NO ,LINE_NO FROM PALLET_REQ_DET WHERE TRAN_ID=?";
sql="SELECT PALLET_NO ,LINE_NO FROM PALLET_REQ_DET WHERE TRAN_ID=?";
sql = "SELECT D.PALLET_NO ,D.LINE_NO,D.ITEM_CODE,D.LOT_NO,D.LOT_SL,D.NO_ART,D.QUANTITY FROM PALLET_REQ_DET D WHERE TRAN_ID=?";
//Changed for pallet request with stock details [End]Request Id:W15HSUN003
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tranId );
rs=pstmt.executeQuery();
......@@ -178,32 +185,76 @@ public class PalletReqConf extends ActionHandlerEJB implements PalletReqConfLoca
System.out.println("linearray"+lineList.get(i));
}
palletNo = checkNullAndTrim(rs.getString("PALLET_NO"));
itemCode = checkNullAndTrim(rs.getString("ITEM_CODE"));
lotNo = checkNullAndTrim(rs.getString("LOT_NO"));
lotSl = checkNullAndTrim(rs.getString("LOT_SL"));
noArt = checkNullAndTrim(rs.getString("NO_ART"));
quantity = checkNullAndTrim(rs.getString("QUANTITY"));
lineNo = rs.getString("LINE_NO");
lineNo = " " + lineNo;
lineNo = lineNo.substring( lineNo.length()-3 );
System.out.println("palletno" +palletNo);
System.out.println("lineNo" +lineNo);
if(itemCode!= null && itemCode.length() > 0)
{
sql="SELECT S.QTY_PER_ART FROM STOCK S WHERE S.SITE_CODE=?"
+" AND S.LOC_CODE = ?"
+" AND S.ITEM_CODE=?"
+" AND S.LOT_NO=? "
+" AND S.LOT_SL=?";
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString(1, siteCode);
pstmt1.setString(2, palletNo);
pstmt1.setString(3, itemCode);
pstmt1.setString(4, lotNo);
pstmt1.setString(5, lotSl);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
qtyPerArt = checkNullAndTrim(rs1.getString("QTY_PER_ART"));
HashMap hm = new HashMap();
hm.put("TRAN_ID", "");
hm.put("ITEM_CODE", "");
hm.put("ITEM_CODE", itemCode);
hm.put("REF_ID", tranId);
hm.put("REF_SER", "PRS");
hm.put("TRAN_DATE", checkNullAndTrim(String.valueOf(today)));
hm.put("QTY_PER_ART", qtyPerArt);
hm.put("LOT_NO", lotNo);
hm.put("LOT_SL", lotSl);
hm.put("QUANTITY", noArt);
hm.put("TOTAL_QTY", quantity);
hm.put("PALLET_NO", palletNo);
hm.put("LINE_NO", lineNo);
interfaceArrList.add(hm);
System.out.println("interfacearraylist"+interfaceArrList.size());
}
rs1.close();
pstmt1.close();
}
else
{
HashMap hm = new HashMap();
hm.put("REF_ID", tranId);
hm.put("REF_SER", "PR");
hm.put("TRAN_DATE", checkNullAndTrim(String.valueOf(today)));
hm.put("PALLET_NO", palletNo);
hm.put("LINE_NO", lineNo);
interfaceArrList.add(hm);
System.out.println("interfacearraylist"+interfaceArrList.size());
}
HashMap hm = new HashMap();
hm.put("DESCR", "");
hm.put("UNIT", "");
hm.put("ITEM_TYPE", "");
hm.put("FAMILY_GRP", "");
hm.put("TRAN_ID", "");
hm.put("IN_OUT", "O");
hm.put("REF_SER", "PR");
hm.put("REF_ID", tranId);
hm.put("TRAN_DATE", checkNullAndTrim(String.valueOf(tranDate)));
hm.put("LOT_NO", "");
hm.put("LOT_SL", "");
hm.put("QUANTITY", "");
hm.put("QTY_PER_ART", "");
hm.put("TOTAL_QTY", "");
hm.put("EXP_DATE", "");
hm.put("MFG_DATE", "");
hm.put("PALLET_NO", palletNo);
hm.put("PALLET_STATUS", "");
hm.put("MSG_STAT", "N");
hm.put("LOCK_STAT", "");
......@@ -212,16 +263,13 @@ public class PalletReqConf extends ActionHandlerEJB implements PalletReqConfLoca
hm.put("QC_TYPE", "");
hm.put("TRANS_DT_ACK","");
hm.put("STRO_PREF", "");
hm.put("LINE_NO", lineNo);
interfaceArrList.add(hm);
System.out.println("interfacearraylist"+interfaceArrList.size());
}
rs.close();
pstmt.close();
commonWmsUtility.updateAwmsInterface(interfaceArrList,loginSite,conn);
System.out.println("Inserted into interface2 table ::::::::: ");
System.out.println("Inserted into SWMS TO AWMS table ::::::::: ");
}//try block end
catch (Exception e)
......@@ -275,3 +323,4 @@ public class PalletReqConf extends ActionHandlerEJB implements PalletReqConfLoca
}
......@@ -58,8 +58,12 @@ public class PalletReqExpiryAct extends ActionHandlerEJB implements PalletReqExp
{
retString=stockNearExpiry( dom, dom1, "" , null,false );
}
if (actionType.equalsIgnoreCase("DEFAULT"))
{
retString=defaultData( dom, dom1, "" , null,false );
}
System.out.println("actionType:" + actionType + ":");
//loginSite = checkNull(genericUtility.getValueFromXTRA_PARAMS( xtraParams, "loginSiteCode" ));
} catch (Exception e)
{
System.out.println("Exception :PalletReqExpiryAct :actionHandler(String xmlString):" + e.getMessage() + ":");
......@@ -83,8 +87,10 @@ public class PalletReqExpiryAct extends ActionHandlerEJB implements PalletReqExp
try
{
String siteCode = checkNullAndTrim(genericUtility.getColumnValue("site_code",dom1));
sql = " SELECT D.LOC_CODE AS PALLET_NO ,D.ITEM_CODE,D.SITE_CODE,D.LOT_NO,D.LOT_SL" + " FROM INV_HOLD_DET D,INV_HOLD I ,LOCATION L WHERE D.LOC_CODE=L.LOC_CODE AND I.TRAN_ID = D.TRAN_ID AND D.HOLD_STATUS != ?" + " AND I.LOCK_CODE = ?" + "AND L.INV_STAT=? AND D.SITE_CODE= ?";//EXP_LOCK
//Changed for pallet request with stock detail [Start]Request Id:W15HSUN003
//sql = " SELECT D.LOC_CODE AS PALLET_NO ,D.ITEM_CODE,D.SITE_CODE,D.LOT_NO,D.LOT_SL" + " FROM INV_HOLD_DET D,INV_HOLD I ,LOCATION L WHERE D.LOC_CODE=L.LOC_CODE AND I.TRAN_ID = D.TRAN_ID AND D.HOLD_STATUS != ?" + " AND I.LOCK_CODE = ?" + "AND L.INV_STAT=? AND D.SITE_CODE= ?";//EXP_LOCK
sql="SELECT DISTINCT (S.LOC_CODE) AS PALLET_NO ,S.ITEM_CODE, S.LOT_NO,S.LOT_SL,S.QUANTITY,S.NO_ART FROM INV_HOLD_DET D,INV_HOLD I , LOCATION L ,STOCK S WHERE D.LOC_CODE=L.LOC_CODE AND I.TRAN_ID = D.TRAN_ID AND L.LOC_CODE=S.LOC_CODE AND D.HOLD_STATUS != ? AND I.LOCK_CODE = ? AND L.INV_STAT=? AND S.SITE_CODE= ? AND S.QUANTITY>0";//EXP_LOCK
//Changed for pallet request with stock detail [End] Request Id:W15HSUN003
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "R");
pstmt.setString(2, "EXP_LOCK");
......@@ -96,16 +102,18 @@ public class PalletReqExpiryAct extends ActionHandlerEJB implements PalletReqExp
{
palletNo = checkNullAndTrim(rs.getString("PALLET_NO"));
String itemCode = checkNullAndTrim(rs.getString("ITEM_CODE"));
siteCode = checkNullAndTrim(rs.getString("SITE_CODE"));
String lotNo = checkNullAndTrim(rs.getString("LOT_NO"));
String lotSl = checkNullAndTrim(rs.getString("LOT_SL"));
String quantity = checkNullAndTrim(rs.getString("QUANTITY"));
String noArt = checkNullAndTrim(rs.getString("NO_ART"));
xmlString.append("<Detail>");
xmlString.append("<pallet_no>").append("<![CDATA[").append(palletNo).append("]]>").append("</pallet_no>");
xmlString.append("<item_code>").append("<![CDATA[").append(itemCode).append("]]>").append("</item_code>");
xmlString.append("<site_code>").append("<![CDATA[").append(siteCode).append("]]>").append("</site_code>");
xmlString.append("<lot_no>").append("<![CDATA[").append(lotNo).append("]]>").append("</lot_no>");
xmlString.append("<lot_sl>").append("<![CDATA[").append(lotSl).append("]]>").append("</lot_sl>");
xmlString.append("<quantity>").append("<![CDATA[").append(quantity).append("]]>").append("</quantity>");
xmlString.append("<no_art>").append("<![CDATA[").append(noArt).append("]]>").append("</no_art>");
xmlString.append("</Detail>");
}
......@@ -117,11 +125,13 @@ public class PalletReqExpiryAct extends ActionHandlerEJB implements PalletReqExp
{
System.out.println("The sqlException occure in PalletReqExpiryAct :" + sqx);
throw new ITMException(sqx);
} catch (Exception e)
}
catch (Exception e)
{
System.out.println("The Exception occure in PalletReqExpiryAct :" + e);
throw new ITMException(e);
} finally
}
finally
{
try
{
......@@ -144,8 +154,11 @@ public class PalletReqExpiryAct extends ActionHandlerEJB implements PalletReqExp
try
{
String siteCode = checkNullAndTrim(genericUtility.getColumnValue("site_code",dom1));
String sql = " SELECT D.LOC_CODE AS PALLET_NO ,D.ITEM_CODE,D.SITE_CODE,D.LOT_NO,D.LOT_SL" + " FROM INV_HOLD_DET D,INV_HOLD I ,LOCATION L WHERE D.LOC_CODE=L.LOC_CODE AND I.TRAN_ID = D.TRAN_ID AND D.HOLD_STATUS != ?" + " AND I.LOCK_CODE = ?" + "AND L.INV_STAT=? AND D.SITE_CODE= ?";//NEXP_LOCK
//Changed for pallet request with stock detail [Start]Request Id:W15HSUN003
//String sql = " SELECT D.LOC_CODE AS PALLET_NO ,D.ITEM_CODE,D.SITE_CODE,D.LOT_NO,D.LOT_SL" + " FROM INV_HOLD_DET D,INV_HOLD I ,LOCATION L WHERE D.LOC_CODE=L.LOC_CODE AND I.TRAN_ID = D.TRAN_ID AND D.HOLD_STATUS != ?" + " AND I.LOCK_CODE = ?" + "AND L.INV_STAT=? AND D.SITE_CODE= ?";//NEXP_LOCK
String sql="SELECT DISTINCT (S.LOC_CODE) AS PALLET_NO ,S.ITEM_CODE, S.LOT_NO,S.LOT_SL,S.QUANTITY,S.NO_ART FROM INV_HOLD_DET D,INV_HOLD I , LOCATION L ,STOCK S WHERE D.LOC_CODE=L.LOC_CODE AND I.TRAN_ID = D.TRAN_ID AND L.LOC_CODE=S.LOC_CODE AND D.HOLD_STATUS != ? AND I.LOCK_CODE = ? AND L.INV_STAT=? AND S.SITE_CODE= ? AND S.QUANTITY>0";//NEXP_LOCK
//Changed for pallet request with stock detail [End]Request Id:W15HSUN003
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "R");
pstmt.setString(2, "NEXP_LOCK");
......@@ -157,16 +170,82 @@ public class PalletReqExpiryAct extends ActionHandlerEJB implements PalletReqExp
{
palletNo = checkNullAndTrim(rs.getString("PALLET_NO"));
String itemCode = checkNullAndTrim(rs.getString("ITEM_CODE"));
siteCode = checkNullAndTrim(rs.getString("SITE_CODE"));
String lotNo = checkNullAndTrim(rs.getString("LOT_NO"));
String lotSl = checkNullAndTrim(rs.getString("LOT_SL"));
String quantity = checkNullAndTrim(rs.getString("QUANTITY"));
String noArt = checkNullAndTrim(rs.getString("NO_ART"));
xmlString.append("<Detail>");
xmlString.append("<pallet_no>").append("<![CDATA[").append(palletNo).append("]]>").append("</pallet_no>");
xmlString.append("<item_code>").append("<![CDATA[").append(itemCode).append("]]>").append("</item_code>");
xmlString.append("<lot_no>").append("<![CDATA[").append(lotNo).append("]]>").append("</lot_no>");
xmlString.append("<lot_sl>").append("<![CDATA[").append(lotSl).append("]]>").append("</lot_sl>");
xmlString.append("<quantity>").append("<![CDATA[").append(quantity).append("]]>").append("</quantity>");
xmlString.append("<no_art>").append("<![CDATA[").append(noArt).append("]]>").append("</no_art>");
xmlString.append("</Detail>");
}
xmlString.append("</Root>");
rs.close();
pstmt.close();
}
catch (SQLException sqx)
{
System.out.println("The sqlException occure in PalletReqExpiryAct :" + sqx);
throw new ITMException(sqx);
}
catch (Exception e)
{
System.out.println("The Exception occure in PalletReqExpiryAct :" + e);
throw new ITMException(e);
}
finally
{
try
{
conn.close();
conn = null;
}
catch (Exception e)
{
}
}
return xmlString.toString();
}
//Changed for pallet request with stock detail [Start]Request Id:W15HSUN003
public String defaultData( Document dom,Document dom1, String forcedFlag , Connection conn, boolean conStat ) throws Exception
{
String locCode="", status="",palletNo = "";
GenericUtility genericUtility = GenericUtility.getInstance();
StringBuffer xmlString = new StringBuffer("<Root>");
ConnDriver connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM");
try
{
String siteCode = checkNullAndTrim(genericUtility.getColumnValue("site_code",dom1));
String sql = " SELECT DISTINCT (S.LOC_CODE) AS PALLET_NO,S.ITEM_CODE,S.LOT_NO,S.LOT_SL,S.QUANTITY,S.NO_ART FROM STOCK S ,LOCATION L WHERE L.INV_STAT=? AND S.SITE_CODE=? AND S.LOC_CODE=L.LOC_CODE AND S.QUANTITY>0 ";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "AWMS");
pstmt.setString(2, siteCode);
ResultSet rs = pstmt.executeQuery();
while(rs.next())
{
palletNo = checkNullAndTrim(rs.getString("PALLET_NO"));
String itemCode = checkNullAndTrim(rs.getString("ITEM_CODE"));
String lotNo = checkNullAndTrim(rs.getString("LOT_NO"));
String lotSl = checkNullAndTrim(rs.getString("LOT_SL"));
String quantity = checkNullAndTrim(rs.getString("QUANTITY"));
String noArt = checkNullAndTrim(rs.getString("NO_ART"));
xmlString.append("<Detail>");
xmlString.append("<pallet_no>").append("<![CDATA[").append(palletNo).append("]]>").append("</pallet_no>");
xmlString.append("<item_code>").append("<![CDATA[").append(itemCode).append("]]>").append("</item_code>");
xmlString.append("<site_code>").append("<![CDATA[").append(siteCode).append("]]>").append("</site_code>");
xmlString.append("<lot_no>").append("<![CDATA[").append(lotNo).append("]]>").append("</lot_no>");
xmlString.append("<lot_sl>").append("<![CDATA[").append(lotSl).append("]]>").append("</lot_sl>");
xmlString.append("<quantity>").append("<![CDATA[").append(quantity).append("]]>").append("</quantity>");
xmlString.append("<no_art>").append("<![CDATA[").append(noArt).append("]]>").append("</no_art>");
xmlString.append("</Detail>");
}
......@@ -197,6 +276,15 @@ public class PalletReqExpiryAct extends ActionHandlerEJB implements PalletReqExp
}
return xmlString.toString();
}
//Changed for pallet request with stock detail [End]Request Id:W15HSUN003
private String checkNull( String input )
{
if ( input == null )
{
input = "";
}
return input.trim();
}
private String checkNullAndTrim( String inputVal )
{
......
......@@ -101,28 +101,36 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
Node parentNode = null;
Node childNode = null;
StringBuffer errStringXml = new StringBuffer("<?xml version=\"1.0\"?>\r\n<Root><Errors>");
String errorType = "", errCode = "", locCode = "";
String errorType = "", errCode = "", locCode = "",lotSl="",lotNo="",itemCode="";
ArrayList <String> errList = new ArrayList<String>();
ArrayList <String>errFields = new ArrayList <String> ();
GenericUtility genericUtility;
String remarks="",addUser="",addTerm="",addDate="",chgUser="",chgTerm="",chgDate="",descr="" ;
int locCount = 0 ;
int lotSlcnt=0,lotNocnt=0,itemCodecnt=0,locCodecnt=0;
int locCount = 0;
String quantityStr="",noArtStr="";
ResultSet rs= null;
String loginSite = "";
String loginSite = "",objName="";
ArrayList<String> palletList = new ArrayList();
ArrayList ArrList = new ArrayList();
PreparedStatement pstmt = null;
int palletCount = 0;
Connection conn = null;
double quantityStock=0,noArtStock=0;
String siteCode = "",userId = "",childNodeName = "",errString = "";
int ctr = 0, currentFormNo = 0, childNodeListLength = 0, siteCount = 0, cnt = 0;
objName = getObjNameFromDom(dom, "objName", "2");
System.out.println("objName----->>["+objName+"]");
try
{
genericUtility = GenericUtility.getInstance();
System.out.println("xtraParam----->>["+xtraParams+"]");
System.out.println("DOM---->>["+genericUtility.serializeDom(dom).toString()+"]");
System.out.println("DOM1----->>["+genericUtility.serializeDom(dom1).toString()+"]");
System.out.println("DOM2----->>["+genericUtility.serializeDom(dom2).toString()+"]");
loginSite = checkNull(genericUtility.getValueFromXTRA_PARAMS( xtraParams, "loginSiteCode" ));
ConnDriver connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM");
......@@ -184,7 +192,6 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
if("loc_code".equalsIgnoreCase(childNodeName))
{
siteCode = checkNullAndTrim(genericUtility.getColumnValue("site_code",dom));
locCode = checkNullAndTrim(genericUtility.getColumnValue("loc_code",dom));
if( "E".equalsIgnoreCase(editFlag) || "A".equalsIgnoreCase(editFlag))
{
......@@ -205,7 +212,7 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "AWMS");
pstmt.setString(2, locCode);
pstmt.setString(3, siteCode);
pstmt.setString(3, loginSite);
rs = pstmt.executeQuery();
if(rs.next())
{
......@@ -230,7 +237,7 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
System.out.println("DOM---->>["+genericUtility.serializeDom(dom).toString()+"]");
System.out.println("DOM1----->>["+genericUtility.serializeDom(dom1).toString()+"]");
System.out.println("DOM2----->>["+genericUtility.serializeDom(dom2).toString()+"]");
String palletNo = "";
parentNodeList = dom2.getElementsByTagName("Detail2");
for(int intPrnt = 0;intPrnt < parentNodeList.getLength();intPrnt++)
{
......@@ -242,8 +249,13 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
String palletNo = checkNullAndTrim(genericUtility.getColumnValue("pallet_no",dom));
palletNo = checkNullAndTrim(genericUtility.getColumnValue("pallet_no",dom));
locCode = checkNullAndTrim(genericUtility.getColumnValue("loc_code",dom));
itemCode = checkNullAndTrim(genericUtility.getColumnValue("item_code",dom));
lotNo = (genericUtility.getColumnValue("lot_no",dom));
lotSl = (genericUtility.getColumnValue("lot_sl",dom));
noArtStr = checkNullAndTrim(genericUtility.getColumnValue("no_art",dom));
quantityStr = checkNullAndTrim(genericUtility.getColumnValue("quantity",dom));
System.out.println("PALLET NO---" +palletNo);
if(palletNo.length() == 0 || palletNo.equalsIgnoreCase(""))
{
......@@ -257,11 +269,12 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
}
else
{
String sql = "SELECT COUNT(1) FROM LOCATION WHERE INV_STAT =? AND LOC_CODE=?";
String sql = "SELECT COUNT(1) FROM LOCATION WHERE INV_STAT =? AND LOC_CODE=? AND SITE_CODE=?";
int cntLoc = 0;
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "AWMS");
pstmt.setString(2, palletNo);
pstmt.setString(3, loginSite);
rs = pstmt.executeQuery();
if(rs.next())
{
......@@ -284,6 +297,17 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
errList.add( errCode );
errFields.add( childNodeName.toLowerCase() );
}
//Changed for pallet request with stock details [Start]Request Id:W15HSUN003
if("pallet_req_stk".equalsIgnoreCase(objName))
{
if(isRecordExist(dom2))
{
errCode = "VMPALDETEX";//pallet details already exits
errList.add( errCode );
errFields.add( childNodeName.toLowerCase() );
}
}
//Changed for pallet request with stock details [End]Request Id:W15HSUN003
else
{
palletList = checkDuplicaterecord(dom2);
......@@ -297,19 +321,19 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
}
s.clear();
}
siteCode = checkNullAndTrim(genericUtility.getColumnValue("site_code",dom1));
String sql1 = "SELECT COUNT(1) FROM STOCK WHERE INV_STAT =? AND LOC_CODE=? AND SITE_CODE=? AND QUANTITY>0";
pstmt = conn.prepareStatement(sql1);
pstmt.setString(1, "AWMS");
pstmt.setString(2, palletNo);
pstmt.setString(3, siteCode);
pstmt.setString(3, loginSite);
rs = pstmt.executeQuery();
if(rs.next())
{
System.out.println("count stock>>>>>>>" +rs.getInt(1));
System.out.println("PALLET_NO FOR STOCK" +palletNo);
System.out.println("site code for stock" +siteCode);
System.out.println("site code for stock" +loginSite);
if(rs.getInt(1)==0)
{
errCode = "VMPALLETQN";//pallet quantity should be more than zero
......@@ -330,7 +354,6 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
}
if("loc_code".equalsIgnoreCase(childNodeName))
{
locCode = checkNullAndTrim(genericUtility.getColumnValue("loc_code",dom));
if( "E".equalsIgnoreCase(editFlag) || "A".equalsIgnoreCase(editFlag))
{
if(locCode.length() == 0 || locCode.equalsIgnoreCase(""))
......@@ -350,12 +373,13 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "AWMS");
pstmt.setString(2, locCode);
pstmt.setString(3, siteCode);
pstmt.setString(3, loginSite);
rs = pstmt.executeQuery();
if(rs.next())
{
System.out.println("count >>>>>>>" +rs.getInt(1));
if(rs.getInt(1)==0)
locCodecnt = rs.getInt(1);
System.out.println("count >>>>>>>" +locCodecnt);
if(locCodecnt==0)
{
errCode = "VMLOCATEXT";
errList.add( errCode );
......@@ -367,6 +391,232 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
}
}
}
//Changed for pallet request with stock details [Start]Request Id:W15HSUN003
if("item_code".equalsIgnoreCase(childNodeName))
{
if( "E".equalsIgnoreCase(editFlag) || "A".equalsIgnoreCase(editFlag))
{
if(itemCode.length() == 0 || itemCode.equalsIgnoreCase(""))
{
errCode = "VMITEMCNUL";
errList.add( errCode );
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
errFields.add( childNodeName.toLowerCase() );
}
else
{
System.out.println("item code else---" +itemCode);
String sql = "SELECT COUNT(1) FROM STOCK S ,LOCATION L WHERE L.INV_STAT=? AND S.LOC_CODE=? AND L.SITE_CODE=? AND S.ITEM_CODE=? AND S.LOC_CODE=L.LOC_CODE AND S.QUANTITY>0 ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "AWMS");
pstmt.setString(2, palletNo);
pstmt.setString(3, loginSite);
pstmt.setString(4, itemCode);
rs = pstmt.executeQuery();
if(rs.next())
{
itemCodecnt = rs.getInt(1);
System.out.println("ITEM CODE>>>>>>>" +itemCodecnt);
if(itemCodecnt==0)
{
errCode = "VMITEMCEXT";
errList.add( errCode );
errFields.add( childNodeName.toLowerCase() );
}
}
rs.close();
pstmt.close();
}
}
}
if("lot_no".equalsIgnoreCase(childNodeName))
{
if( "E".equalsIgnoreCase(editFlag) || "A".equalsIgnoreCase(editFlag))
{
if(lotNo == null || lotNo.length()==0)
{
errCode = "VMLOTNONUL";
errList.add( errCode );
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
errFields.add( childNodeName.toLowerCase() );
}
else
{
System.out.println("lot number else---" +itemCode);
String sql = "SELECT COUNT(1) FROM STOCK S ,LOCATION L WHERE L.INV_STAT=? AND L.LOC_CODE=? AND L.SITE_CODE=? AND S.LOC_CODE=L.LOC_CODE AND S.QUANTITY>0 AND S.ITEM_CODE=? AND S.LOT_NO=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "AWMS");
pstmt.setString(2, palletNo);
pstmt.setString(3, loginSite);
pstmt.setString(4, itemCode);
pstmt.setString(5, lotNo);
rs = pstmt.executeQuery();
if(rs.next())
{
lotNocnt = rs.getInt(1);
System.out.println("lot number>>>>>>>" +lotNocnt);
if(lotNocnt==0)
{
errCode = "VMLOTNOEXT";
errList.add( errCode );
errFields.add( childNodeName.toLowerCase() );
}
}
rs.close();
pstmt.close();
}
}
}
if("lot_sl".equalsIgnoreCase(childNodeName))
{
if( "E".equalsIgnoreCase(editFlag) || "A".equalsIgnoreCase(editFlag))
{
if(lotSl == null || lotSl.length()==0)
{
errCode = "VMLOTSLNUL";
errList.add( errCode );
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
errFields.add( childNodeName.toLowerCase() );
}
else
{
System.out.println("lot sl else---" +itemCode);
String sql = "SELECT COUNT(1) FROM STOCK S ,LOCATION L WHERE L.INV_STAT=? AND L.LOC_CODE=? AND L.SITE_CODE=? AND S.LOC_CODE=L.LOC_CODE AND S.QUANTITY>0 AND S.ITEM_CODE=? AND S.LOT_NO=? AND S.LOT_SL=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "AWMS");
pstmt.setString(2, palletNo);
pstmt.setString(3, loginSite);
pstmt.setString(4, itemCode);
pstmt.setString(5, lotNo);
pstmt.setString(6, lotSl);
rs = pstmt.executeQuery();
if(rs.next())
{
lotSlcnt = rs.getInt(1);
System.out.println("lot sl >>>>>>>" +lotSlcnt);
if(lotSlcnt==0)
{
errCode = "VMLOTSLEXT";
errList.add( errCode );
errFields.add( childNodeName.toLowerCase() );
}
}
rs.close();
pstmt.close();
}
}
}
if("no_art".equalsIgnoreCase(childNodeName))
{
noArtStr = noArtStr.length() == 0 ? "0" : noArtStr;
double noArt = Double.parseDouble(noArtStr);
if( "E".equalsIgnoreCase(editFlag) || "A".equalsIgnoreCase(editFlag))
{
if(noArt == 0 )
{
errCode = "VMNOARTNUL";
errList.add( errCode );
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
errFields.add( childNodeName.toLowerCase() );
}
else
{
System.out.println("quantity else---");
String sql = "SELECT S.NO_ART FROM STOCK S ,LOCATION L WHERE L.INV_STAT=? AND L.LOC_CODE=? AND L.SITE_CODE=? AND S.LOC_CODE=L.LOC_CODE AND S.QUANTITY>0 AND S.ITEM_CODE=? AND S.LOT_NO=? AND S.LOT_SL=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "AWMS");
pstmt.setString(2, palletNo);
pstmt.setString(3, loginSite);
pstmt.setString(4, itemCode);
pstmt.setString(5, lotNo);
pstmt.setString(6, lotSl);
rs = pstmt.executeQuery();
if(rs.next())
{
noArtStock = rs.getDouble("NO_ART");
System.out.println("noArtStock >>>>>>>" +noArtStock );
if(noArt > noArtStock)
{
System.out.println("NOART ERROR>>>>>>>");
errCode = "VMNOARTEXT";
errList.add( errCode );
errFields.add( childNodeName.toLowerCase() );
}
}
rs.close();
pstmt.close();
}
}
}
if("quantity".equalsIgnoreCase(childNodeName))
{
quantityStr = quantityStr.length() == 0 ? "0" : quantityStr;
double quantity = Double.parseDouble(quantityStr);
if( "E".equalsIgnoreCase(editFlag) || "A".equalsIgnoreCase(editFlag))
{
if(quantity == 0 )
{
errCode = "VMQUANTNUL";
errList.add( errCode );
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
errFields.add( childNodeName.toLowerCase() );
}
else
{
System.out.println("quantity else---");
String sql = "SELECT S.QUANTITY FROM STOCK S ,LOCATION L WHERE L.INV_STAT=? AND L.LOC_CODE=? AND L.SITE_CODE=? AND S.LOC_CODE=L.LOC_CODE AND S.QUANTITY>0 AND S.ITEM_CODE=? AND S.LOT_NO=? AND S.LOT_SL=? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "AWMS");
pstmt.setString(2, palletNo);
pstmt.setString(3, loginSite);
pstmt.setString(4, itemCode);
pstmt.setString(5, lotNo);
pstmt.setString(6, lotSl);
rs = pstmt.executeQuery();
if(rs.next())
{
quantityStock = rs.getDouble("QUANTITY");
System.out.println("quantityStock>>>>>>>" +quantityStock);
if(quantity > quantityStock)
{
System.out.println("QUANTITY ERROR>>>>>>>");
errCode = "VMQUANTEXT";
errList.add( errCode );
errFields.add( childNodeName.toLowerCase() );
}
}
rs.close();
pstmt.close();
}
}
}//Changed for pallet request with stock details [End]Request Id:W15HSUN003
}
}
break;
......@@ -559,6 +809,8 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
String loginSite = "",loginEmpCode = "",chgUser = "" , chgTerm = "",siteDescr = "", siteCodeSupp = "" ,tranDate = "";
String siteCode = "";
int currentFormNo = 0;
double quantity=0,noArt=0,qtyPerArt,noArtQuot=0,noArtRem =0 , notArt = 0, totalQuantity = 0;
System.out.println("xtraParams=["+xtraParams+"]");
GenericUtility genericUtility = GenericUtility.getInstance();
......@@ -571,6 +823,9 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
chgTerm = checkNull(genericUtility.getValueFromXTRA_PARAMS(xtraParams, "termId"));
System.out.println("loginEmpCode---->>["+loginEmpCode+"] chgUser---->>["+chgUser+"]");
System.out.println("currFormDataDom---->>["+genericUtility.serializeDom(currFormDataDom)+"] ");
System.out.println("hdrDataDom---->>["+genericUtility.serializeDom(hdrDataDom)+"] ");
System.out.println("allFormDataDom---->>["+genericUtility.serializeDom(allFormDataDom)+"] ");
Calendar currentDate = Calendar.getInstance();
SimpleDateFormat simpleDateFormatObj = new SimpleDateFormat(genericUtility.getApplDateFormat());
tranDate = simpleDateFormatObj.format(currentDate.getTime());
......@@ -665,6 +920,80 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
valueXmlString.append( "<location_descr><![CDATA[" ).append( "" ).append( "]]></location_descr>\r\n" );
}
}
else if( currentColumn.trim().equalsIgnoreCase( "lot_sl" ) )
{
String lotSl = checkNullAndTrim(genericUtility.getColumnValue("lot_sl",currFormDataDom));
String lotNo = checkNullAndTrim(genericUtility.getColumnValue("lot_no",currFormDataDom));
String itemCode = checkNullAndTrim(genericUtility.getColumnValue("item_code",currFormDataDom));
String palletNo = checkNullAndTrim(genericUtility.getColumnValue("pallet_no",currFormDataDom));
loginSite = checkNull(genericUtility.getValueFromXTRA_PARAMS( xtraParams, "loginSiteCode" ));
String sql = "SELECT S.QUANTITY,S.NO_ART FROM STOCK S ,LOCATION L WHERE L.INV_STAT=? AND L.LOC_CODE=? AND L.SITE_CODE=? AND S.LOC_CODE=L.LOC_CODE AND S.QUANTITY>0 AND S.ITEM_CODE=? AND S.LOT_NO=? AND S.LOT_SL=?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "AWMS");
pstmt.setString(2, palletNo);
pstmt.setString(3, loginSite);
pstmt.setString(4, itemCode);
pstmt.setString(5, lotNo);
pstmt.setString(6, lotSl);
ResultSet rs = pstmt.executeQuery();
if(rs.next())
{
quantity = rs.getDouble("QUANTITY");
noArt = rs.getDouble("NO_ART");
valueXmlString.append( "<quantity><![CDATA[" ).append( quantity ).append( "]]></quantity>\r\n" );
valueXmlString.append( "<no_art><![CDATA[" ).append( noArt ).append( "]]></no_art>\r\n" );
}
}
else if( currentColumn.trim().equalsIgnoreCase( "quantity" ) )
{
String lotSl = checkNullAndTrim(genericUtility.getColumnValue("lot_sl",currFormDataDom));
String lotNo = checkNullAndTrim(genericUtility.getColumnValue("lot_no",currFormDataDom));
String itemCode = checkNullAndTrim(genericUtility.getColumnValue("item_code",currFormDataDom));
String palletNo = checkNullAndTrim(genericUtility.getColumnValue("pallet_no",currFormDataDom));
loginSite = checkNull(genericUtility.getValueFromXTRA_PARAMS( xtraParams, "loginSiteCode" ));
String quantityStr = checkNullAndTrim(genericUtility.getColumnValue("quantity",currFormDataDom));
quantityStr = quantityStr.length() == 0 ? "0" : quantityStr;
quantity = Double.parseDouble(quantityStr);
String sql = "SELECT S.QTY_PER_ART FROM STOCK S ,LOCATION L WHERE L.INV_STAT=? AND L.LOC_CODE=? AND L.SITE_CODE=? AND S.LOC_CODE=L.LOC_CODE AND S.QUANTITY>0 AND S.ITEM_CODE=? AND S.LOT_NO=? AND S.LOT_SL=? ";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "AWMS");
pstmt.setString(2, palletNo);
pstmt.setString(3, loginSite);
pstmt.setString(4, itemCode);
pstmt.setString(5, lotNo);
pstmt.setString(6, lotSl);
ResultSet rs = pstmt.executeQuery();
if(rs.next())
{
qtyPerArt = rs.getDouble("QTY_PER_ART");
noArtQuot= quantity / qtyPerArt ;
noArtRem = quantity % qtyPerArt ;
if(noArtRem > 0)
{
noArtRem = 1;
}
noArtQuot = (int) noArtQuot;
noArt = noArtQuot + noArtRem;
System.out.println( "noArt>>>>>>>::"+noArt);
System.out.println( "noArtQuot>>>>>>>::"+noArtQuot);
System.out.println( "noArtRem>>>>>>>::"+noArtRem);
System.out.println( "qtyPerArt>>>>>>>::"+qtyPerArt);
System.out.println( "quantity()>>>>>>>::"+quantity);
valueXmlString.append( "<no_art><![CDATA[" ).append( noArt ).append( "]]></no_art>\r\n" );
}
}
valueXmlString.append( "</Detail2>\r\n" );
}
break;
......@@ -813,22 +1142,21 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
private ArrayList checkDuplicaterecord(Document dom) throws ITMException
{
ArrayList arryList = new ArrayList();
NodeList parentNodeList = null, childNodeList = null;
Node parentNode = null, childNode = null;
int parentNodeListLength = 0;
String childNodeName = "";
try {
String updateFlag = getAttribValue(parentNode,"attribute", "updateFlag"); //(parentNode, "attribute", "status"));
try
{
parentNodeList = dom.getElementsByTagName("Detail2");
parentNodeListLength = parentNodeList.getLength();
for (int row = 0; row < parentNodeList.getLength(); row++)
{
parentNode = parentNodeList.item(row);
String updateFlag = getAttribValue(parentNode,"attribute", "updateFlag"); //(parentNode, "attribute", "status"));
System.out.println(" sumit updateFlag ["+updateFlag+"]");
childNodeList = parentNode.getChildNodes();
//System.out.println("************* first For loop *************["+ parentNode.getNodeName() + "]");
for (int col = 0; col < childNodeList.getLength(); col++) {
childNode = childNodeList.item(col);
......@@ -897,6 +1225,96 @@ public class PalletReqIC extends ValidatorEJB implements PalletReqICLocal, Palle
}
return attribValue;
}
//Changed for pallet request with stock details [Start]Request Id:W15HSUN003
public boolean isRecordExist(Document dom)
{
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
int childNodeListLength = 0;
boolean isExist=false;
String childNodeName = null,palletNo = "",itemCode = "",lotNo = "",lotSl ="",quantity="",PalletKey="";
ArrayList<String> palletDetailList=new ArrayList<String>();
if(dom != null)
{
parentNodeList = dom.getElementsByTagName("Detail2");
childNodeListLength = parentNodeList.getLength();
System.out.println("childNodeListLength----->>"+childNodeListLength);
for (int ctr = 0; ctr < childNodeListLength; ctr++)
{
childNode = parentNodeList.item(ctr);
childNodeName = childNode.getNodeName();
String updateFlag = getAttribValue(childNode,"attribute", "updateFlag"); //(parentNode, "attribute", "status"));
System.out.println("Child name --->> "+childNodeName);
if (childNode.getNodeType() == Node.ELEMENT_NODE)
{
Element eElement = (Element) childNode;
palletNo = checkNull(eElement.getElementsByTagName("pallet_no").item(0).getTextContent());
itemCode = checkNull(eElement.getElementsByTagName("item_code").item(0).getTextContent());
lotNo = eElement.getElementsByTagName("lot_no").item(0).getTextContent();
lotSl = eElement.getElementsByTagName("lot_sl").item(0).getTextContent();
System.out.println("palletNo---->"+palletNo+ " PalletNo--->["+palletNo+"]");
if( !"D".equalsIgnoreCase(updateFlag))
{
System.out.println("updateFlag --->> "+updateFlag);
PalletKey=palletNo+":"+itemCode+":"+lotNo+":"+lotSl;
palletDetailList.add(PalletKey);
}
}
}
System.out.println("palletDetail --->> "+palletDetailList);
Set<String> uniqueSet = new HashSet<String>(palletDetailList);
for (String temp : uniqueSet)
{
System.out.println(temp + ": " + Collections.frequency(palletDetailList, temp));
int i = Collections.frequency(palletDetailList, temp);
System.out.println("frequency --->> "+i);
if(i > 1)
{
isExist = true;
break;
}
}
}
else
{
System.out.println("dom is null please check.........");
}
System.out.println("dom is null please check........."+isExist);
return isExist ;
}
private String getObjNameFromDom( Document dom, String attribute, String objContext ) throws RemoteException,ITMException
{
NodeList detailList = null;
Node currDetail = null,reqDetail = null;
String objName = "";
int detailListLength = 0;
try
{
detailList = dom.getElementsByTagName("Detail"+objContext);
detailListLength = detailList.getLength();
for (int ctr = 0; ctr < detailListLength; ctr++)
{
currDetail = detailList.item(ctr);
objName = currDetail.getAttributes().getNamedItem(attribute).getNodeValue();
if( objName != null && objName.trim().length() > 0)
{
return objName;
}
}
}
catch ( Exception e )
{
throw new ITMException(e);
}
return objName;
}
//Changed for pallet request with stock details [End]Request Id:W15HSUN003
}
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