Commit b6636548 authored by smestry's avatar smestry

Updated the servlet for PO autosave and edit


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@102960 ce508802-f39f-4f6c-b175-0d175dae99d5
parent d2f202f8
...@@ -5,13 +5,26 @@ import ibase.system.config.ConnDriver; ...@@ -5,13 +5,26 @@ import ibase.system.config.ConnDriver;
import ibase.utility.CommonConstants; import ibase.utility.CommonConstants;
import ibase.utility.E12GenericUtility; import ibase.utility.E12GenericUtility;
import ibase.webitm.bean.wms.ItemDetailsBean; import ibase.webitm.bean.wms.ItemDetailsBean;
import ibase.webitm.bean.wms.PorderDetailBean;
import ibase.webitm.ejb.wms.ConsignmentDetailsRemote;
import ibase.webitm.ejb.wms.DDPorderWizEJB;
import ibase.webitm.ejb.wms.DDPorderWizPosEJB;
import ibase.webitm.ejb.wms.DDPorderWizPosEJBRemote;
import ibase.webitm.utility.ITMException; import ibase.webitm.utility.ITMException;
import ibase.webitm.utility.TransIDGenerator;
import java.io.IOException; import java.io.IOException;
import java.io.OutputStream; import java.io.OutputStream;
import java.io.StringReader;
import java.sql.Connection; import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;
import java.util.zip.GZIPOutputStream; import java.util.zip.GZIPOutputStream;
import javax.naming.InitialContext; import javax.naming.InitialContext;
...@@ -21,6 +34,13 @@ import javax.servlet.http.HttpServlet; ...@@ -21,6 +34,13 @@ import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSession;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;
public class ProdWizItemChangeServlet extends HttpServlet public class ProdWizItemChangeServlet extends HttpServlet
{ {
...@@ -58,7 +78,23 @@ public class ProdWizItemChangeServlet extends HttpServlet ...@@ -58,7 +78,23 @@ public class ProdWizItemChangeServlet extends HttpServlet
Connection conn = null; Connection conn = null;
PreparedStatement pstmt = null, pstmtSel = null; PreparedStatement pstmt = null, pstmtSel = null;
ResultSet rs = null, rsSel = null; ResultSet rs = null, rsSel = null;
String finalItmQtyStr = "";
// Changed By Sneha on 31-05-2016, for PO details [Start]
String phyAttribute1 = "", phyAttribute2 = "", phyAttribute3 = "", itemCode = "", phyAttribute1DB = "", phyAttribute2DB = "",
phyAttribute3DB = "", purcOrder = "", itemParent = "", quantity = "", flag = "", xtraParams = "",
xmlString1 = "", xmlString2 = "", xmlStringAll = "", detail3Str = "", ordSiteCode = "", dlvDate = "",
userId = "", empCode = "", xmlString1New = "", str = "", empCodeFrmReq = "", siteCode = "", purcOrderTemp = "";
int count = 0;
StringBuffer valueXmlString = new StringBuffer();
Document dom1 = null, dom2 = null;
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder;
boolean isError = false;
Date dlvDateDt = null;
// Changed By Sneha on 31-05-2016, for PO details [End]
try try
{ {
//StringBuffer valueXmlString = new StringBuffer("<Root>\r\n"); //StringBuffer valueXmlString = new StringBuffer("<Root>\r\n");
...@@ -66,13 +102,16 @@ public class ProdWizItemChangeServlet extends HttpServlet ...@@ -66,13 +102,16 @@ public class ProdWizItemChangeServlet extends HttpServlet
String objName = (request.getParameter("OBJ_NAME")==null) ? "":request.getParameter("OBJ_NAME").trim(); String objName = (request.getParameter("OBJ_NAME")==null) ? "":request.getParameter("OBJ_NAME").trim();
//Added by Prasad on 08/06/15 [for multiple action] START //Added by Prasad on 08/06/15 [for multiple action] START
String action = request.getParameter("ACTION"); String action = request.getParameter("ACTION");
System.out.println("ACTION = ["+action+"]"); System.out.println("ACTION from request ====>> ["+action+"]");
//Added by Prasad on 08/06/15 [for multiple action] END //Added by Prasad on 08/06/15 [for multiple action] END
// Changed by Sneha on 07-04-2016, for item description [Start] // Changed by Sneha on 07-04-2016, for item description [Start]
String phyAttribute1 = "", phyAttribute2 = "", phyAttribute3 = "", itemCode = "", phyAttribute1DB = "", phyAttribute2DB = "", phyAttribute3DB = "";
ConnDriver connDriver = new ConnDriver(); ConnDriver connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM"); conn = connDriver.getConnectDB("DriverITM");
conn.setAutoCommit(false);
E12GenericUtility genericUtility = new E12GenericUtility();
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
itemCode = request.getParameter("ITEMCODE"); itemCode = request.getParameter("ITEMCODE");
phyAttribute1 = request.getParameter("PHYATTRIBUTE1"); phyAttribute1 = request.getParameter("PHYATTRIBUTE1");
...@@ -82,6 +121,34 @@ public class ProdWizItemChangeServlet extends HttpServlet ...@@ -82,6 +121,34 @@ public class ProdWizItemChangeServlet extends HttpServlet
//System.out.println("PHYATTRIBUTE1 from request = ["+ phyAttribute1 +"] PHYATTRIBUTE2 = ["+ phyAttribute2 +"] PHYATTRIBUTE3 = ["+ phyAttribute3 +"]"); //System.out.println("PHYATTRIBUTE1 from request = ["+ phyAttribute1 +"] PHYATTRIBUTE2 = ["+ phyAttribute2 +"] PHYATTRIBUTE3 = ["+ phyAttribute3 +"]");
// Changed by Sneha on 07-04-2016, for item description [End] // Changed by Sneha on 07-04-2016, for item description [End]
// Changed By Sneha on 31-05-2016, for PO details [Start]
PorderDetailBean porderDetailBean = new PorderDetailBean();
DDPorderWizEJB ddPorderWizEJB = new DDPorderWizEJB();
DDPorderWizPosEJB ddPorderWizPosEJB = new DDPorderWizPosEJB();
purcOrder = (request.getParameter("PURCHORDER")==null) ? "":request.getParameter("PURCHORDER").trim();
flag = (request.getParameter("FLAG")==null) ? "":request.getParameter("FLAG").trim();
xmlString1 = (request.getParameter("XMLSTRING1")==null) ? "":request.getParameter("XMLSTRING1").trim();
xmlString2 = (request.getParameter("XMLSTRING2")==null) ? "":request.getParameter("XMLSTRING2").trim();
xmlStringAll = (request.getParameter("XMLSTRINGALL")==null) ? "":request.getParameter("XMLSTRINGALL").trim();
str = (request.getParameter("STR")==null) ? "":request.getParameter("STR").trim();
siteCode = (request.getParameter("SITECODE")==null) ? "":request.getParameter("SITECODE").trim();
empCodeFrmReq = (request.getParameter("EMPCODE")==null) ? "":request.getParameter("EMPCODE").trim();
// Changed By Sneha on 31-05-2016, for PO details [End]
// Changed By Sneha on 29-06-2016, for PO Save [Start]
HttpSession session = null;
session = request.getSession(true);
ibase.utility.UserInfoBean userInfo = (ibase.utility.UserInfoBean) session.getAttribute("USER_INFO");
userId = userInfo.getLoginCode();
ordSiteCode = userInfo.getSiteCode();
empCode = userInfo.getEmpCode();
/* System.out.println("ordSiteCode========>>" + ordSiteCode);
System.out.println("userId========>>" + userId);
System.out.println("empCode========>>" + empCode);*/
// Changed By Sneha on 29-06-2016, for PO Save [End]
/*sess = request.getSession(); /*sess = request.getSession();
System.out.println( "sess.getId() :["+sess.getId()+"]" ); System.out.println( "sess.getId() :["+sess.getId()+"]" );
...@@ -93,8 +160,9 @@ public class ProdWizItemChangeServlet extends HttpServlet ...@@ -93,8 +160,9 @@ public class ProdWizItemChangeServlet extends HttpServlet
ItemDetailsBean itemDetailsBean = new ItemDetailsBean(); ItemDetailsBean itemDetailsBean = new ItemDetailsBean();
//changed by Prasad on 08/06/15 [for multiple action] START //changed by Prasad on 08/06/15 [for multiple action] START
//String sizeDetails = itemDetailsBean.getSizeDetails(sizeCode); //String sizeDetails = itemDetailsBean.getSizeDetails(sizeCode);
E12GenericUtility genericUtility = new E12GenericUtility(); //E12GenericUtility genericUtility = new E12GenericUtility();
String retStr = ""; String retStr = "";
if ( action.equalsIgnoreCase( "GET_SIZE_DTL" ) ) if ( action.equalsIgnoreCase( "GET_SIZE_DTL" ) )
{ {
System.out.println("SIZECODE = ["+ sizeCode +"] OBJ_NAME = ["+ objName +"]"); System.out.println("SIZECODE = ["+ sizeCode +"] OBJ_NAME = ["+ objName +"]");
...@@ -198,7 +266,467 @@ public class ProdWizItemChangeServlet extends HttpServlet ...@@ -198,7 +266,467 @@ public class ProdWizItemChangeServlet extends HttpServlet
} }
// Changed by Sneha on 07-04-2016, for item description [End] // Changed by Sneha on 07-04-2016, for item description [End]
// Changed By Sneha on 31-05-2016, for PO details [Start]
else if(action.equalsIgnoreCase( "GET_PURC_DET_1" ))
{
System.out.println("purcOrder Inside if GET_PURC_DET_1 = ["+ purcOrder +"]");
retStr = porderDetailBean.getPurcDetail1(purcOrder, flag);
}
else if(action.equalsIgnoreCase( "GET_PURC_DET_2" ))
{
System.out.println("purcOrder Inside if GET_PURC_DET_2 = ["+ purcOrder +"]");
HashMap<String, String> hm = new HashMap<String, String>();
if(flag.equalsIgnoreCase("O") && purcOrder.equalsIgnoreCase(""))
{
sqlSel = " SELECT PURC_ORDER FROM PORDER_TEMP WHERE STATUS = ? AND EMP_CODE = ? AND SITE_CODE__ORD = ? ";
pstmtSel = conn.prepareStatement(sqlSel);
pstmtSel.setString(1, "O");
pstmtSel.setString(2, empCodeFrmReq);
pstmtSel.setString(3, siteCode);
rsSel = pstmtSel.executeQuery();
if( rsSel.next() )
{
purcOrderTemp = checkNullAndTrim(rsSel.getString("PURC_ORDER"));
}
if(rsSel != null)
{
rsSel.close();
rsSel = null;
}
if(pstmtSel != null)
{
pstmtSel.close();
pstmtSel = null;
}
sql = " SELECT I.ITEM_PARNT, P.ITEM_CODE, P.DLV_DATE, P.QUANTITY FROM PORDDET_TEMP P, ITEM I WHERE PURC_ORDER = ? "
+ " AND I.ITEM_CODE = P.ITEM_CODE ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, purcOrderTemp);
}
else
{
sql = " SELECT I.ITEM_PARNT, P.ITEM_CODE, P.DLV_DATE, P.QUANTITY FROM PORDDET P, ITEM I WHERE PURC_ORDER = ? "
+ " AND I.ITEM_CODE = P.ITEM_CODE ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, purcOrder);
}
rs = pstmt.executeQuery();
while (rs.next())
{
itemParent = checkNullAndTrim(rs.getString("ITEM_PARNT"));
itemCode = checkNullAndTrim(rs.getString("ITEM_CODE"));
//dlvDate = checkNullAndTrim(rs.getString("DLV_DATE"));
dlvDateDt = rs.getDate("DLV_DATE");
quantity = checkNullAndTrim(rs.getString("QUANTITY"));
/*SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S");
java.util.Date tempDate = simpleDateFormat.parse(dlvDate);
SimpleDateFormat outputDateFormat = new SimpleDateFormat("dd/MM/YYYY");
dlvDate = outputDateFormat.format(tempDate);
System.out.println("Output date is = "+dlvDate);
*/
dlvDate = sdf.format(dlvDateDt).toString();
if(hm.containsKey(itemParent))
{
String itemQtyStr = hm.get(itemParent);
hm.put(itemParent, itemQtyStr + itemCode + "::" + quantity + "~");
}
else
{
hm.put(itemParent, (itemParent + "****" + itemCode + "~" + dlvDate + "****"+itemCode + "::" + quantity + "~"));
}
}
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null )
{
pstmt.close();
pstmt = null;
}
Set<String> setOfKeys = hm.keySet();
Iterator<String> iterator = setOfKeys.iterator();
finalItmQtyStr = "";
while (iterator.hasNext())
{
String key = (String) iterator.next();
String value = hm.get(key);
//System.out.println("Key =========>> "+ key+", Value =============>> "+ value);
finalItmQtyStr = finalItmQtyStr+value.substring(0,value.length()-1)+"||||";
}
retStr = finalItmQtyStr;
}
else if(action.equalsIgnoreCase( "VALIDATE_PO" ))
{
sql = " SELECT COUNT(*) FROM PORDER WHERE PURC_ORDER = ? AND CONFIRMED = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, purcOrder);
pstmt.setString(2, "N");
rs = pstmt.executeQuery();
if (rs.next())
{
count = rs.getInt(1);
}
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null )
{
pstmt.close();
pstmt = null;
}
retStr = String.valueOf(count);
}
// Changed By Sneha on 31-05-2016, for PO details [End]
// Changed By Sneha on 29-06-2016, for PO Save [Start]
else if(action.equalsIgnoreCase( "PO_SAVE" ))
{
System.out.println("Inside if PO_SAVE ---------");
xmlString1New = xmlString1.replace("</Header0></group0></DocumentRoot>", "");
xmlString1New = xmlString1New.replace("<DocumentRoot><description>Datawindow Root</description><group0><description>Group0 description</description><Header0><description>Header0 members</description>", "");
//System.out.println("xmlString1New=====>>"+xmlString1New);
valueXmlString = new StringBuffer("<DocumentRoot> <description>Datawindow Root</description> " +
"<group0><description>Group0 description</description> <Header0><description>Header0members</description> " +
"<Root><Header0><objName>porderWiz</objName><pageContext>2</pageContext><editFlag>E</editFlag><focusedColumn/>" +
"<action>EDIT</action><elementName/><taxKeyValue/><taxInFocus>false</taxInFocus><objContext>1</objContext>" +
"<forcedSave>true</forcedSave><keyValue>1</keyValue><pkValues/><saveLevel>1</saveLevel><wrkflwProcInstId/>" +
"<description>Header0 members</description><description>Header0 members</description>");
valueXmlString.append(xmlString1New+xmlString2);
builder = factory.newDocumentBuilder();
dom1 = builder.parse( new InputSource( new StringReader( xmlString1 )) );
dom2 = builder.parse( new InputSource( new StringReader( xmlStringAll )) );
NodeList detail2NodeList = dom2.getElementsByTagName("Detail2");
int detail2NodeListlen = detail2NodeList.getLength();
for(int ctr = 0 ;ctr < detail2NodeListlen;ctr++)
{
Node childNode = detail2NodeList.item(ctr);
if(childNode != null && childNode.getNodeType() != childNode.ELEMENT_NODE)
{
continue;
}
NodeList childList = childNode.getChildNodes();
for(int ctrCh = 0; ctrCh < childList.getLength(); ctrCh++)
{
Node itmNode = childList.item(ctrCh);
System.out.println("Current Node Name ["+itmNode.getNodeName()+"]");
if(itmNode !=null && ("item_code").equalsIgnoreCase(itmNode.getNodeName()))
{
itemCode = itmNode.getFirstChild().getNodeValue();
}
else if(itmNode !=null && ("quantity").equalsIgnoreCase(itmNode.getNodeName()))
{
quantity = itmNode.getFirstChild().getNodeValue();
}
else if(itmNode !=null && ("dlv_date").equalsIgnoreCase(itmNode.getNodeName()))
{
dlvDate = itmNode.getFirstChild().getNodeValue();
}
}
System.out.println("ItemCode ["+itemCode+"]quantity["+quantity+"]dlv_date["+dlvDate+"]");
//if(itemCode != null && itemCode.length() > 0 )
if(itemCode != null && itemCode.length() > 0 && Integer.parseInt(quantity) > 0)
{
System.out.println("Inside for quantity==>[" + quantity + "] and itemcode===>>[" + itemCode + "]");
detail3Str = ddPorderWizEJB.getPorderDetails(dom1, dom2, itemCode, quantity, dlvDate, ctr + 1, conn);
valueXmlString.append(detail3Str+"\r\n");
}
}
valueXmlString.append("</Header0></Root></Header0></group0></DocumentRoot>");
//System.out.println("valueXmlString ==========>>"+valueXmlString.toString());
xtraParams = ddPorderWizPosEJB.getXtraParams(userId, ordSiteCode, empCode, conn);
retStr = ddPorderWizPosEJB.generatePurcOrder(valueXmlString.toString(), xtraParams, "", conn);
}
else if(action.equalsIgnoreCase( "SAVE_PODtl1" ))
{
System.out.println("------Inside SAVE_PODtl1 ---------");
java.sql.Timestamp currdate = new java.sql.Timestamp( System.currentTimeMillis() );
String[] detail = str.split("~");
/*for(int i = 0; i<= detail.length -1; i++ )
{
System.out.println("detail value of ["+i+"]======>>" + detail[i]);
}*/
System.out.println("purchase order ======>>" + detail[0].length());
if(detail[0].length() <= 0 && detail[29].equalsIgnoreCase("O")) // purchase order found blank and Status = "O"
{
//System.out.println("------------- Inside if -----------");
sqlSel = " SELECT PURC_ORDER FROM PORDER_TEMP WHERE STATUS = ? AND EMP_CODE = ? AND SITE_CODE__ORD = ? ";
pstmtSel = conn.prepareStatement(sqlSel);
pstmtSel.setString(1, "O");
pstmtSel.setString(2, detail[26]);
pstmtSel.setString(3, detail[2]); // order_site/SITE_CODE__ORD
rsSel = pstmtSel.executeQuery();
if( rsSel.next() )
{
//System.out.println("------------- Inside if for update -----------");
sql = "UPDATE PORDER_TEMP SET TRAN_DATE = ?, PORD_TYPE = ?, ITEM_SER = ?, TASK_DESC = ?, SUPP_CODE = ?, SUPP_NAME = ?, "
+ "CR_TERM = ?, CRTERM_DESCR = ?, REMARKS = ?, DLV_TERM = ?, TRAN_CODE = ?, TRAN_NAME = ?, PRICE_LIST = ?, "
+ "EXCH_RATE = ?, DEPT_CODE = ?, DEPT_DESCR = ?, TRANS_MODE = ?, SITE_ADD1 = ?, CURR_CODE = ?, TERM_TABLE = ?, "
+ "UDF_STR__1 = ?, CHG_DATE = ?, CHG_USER = ?, CHG_TERM = ? "
+ "WHERE PURC_ORDER = ? AND STATUS = ? AND EMP_CODE = ? AND SITE_CODE__ORD = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setTimestamp(1, currdate); // TRAN_DATE
pstmt.setString(2, detail[3]); // pord_type
pstmt.setString(3, detail[4]); // itmser
pstmt.setString(4, detail[5]); // itmdescr/TASK_DESC
pstmt.setString(5, detail[6]); // supcode
pstmt.setString(6, detail[7]); // supname
pstmt.setString(7, detail[8]); // crterm
pstmt.setString(8, detail[9]); // crdescr
pstmt.setString(9, detail[10]); // remarks
pstmt.setString(10, detail[12]); // dlvterm
pstmt.setString(11, detail[13]); // trcode
pstmt.setString(12, detail[14]); // trdescr
pstmt.setString(13, detail[17]); // prlist
pstmt.setString(14, detail[19]); // exch_rate
pstmt.setString(15, detail[20]); // dcode
pstmt.setString(16, detail[21]); // ddescr
pstmt.setString(17, detail[15]); // trmode
pstmt.setString(18, detail[24]); // site_add1
pstmt.setString(19, detail[18]); // curr_code
pstmt.setString(20, detail[22]); // term_table
pstmt.setString(21, detail[23]); // udf_str__1
pstmt.setString(22, detail[26]); // EMP_CODE
pstmt.setTimestamp(23, currdate); // CHG_DATE
pstmt.setString(24, detail[27]); // CHG_USER
pstmt.setString(25, detail[28]); // CHG_TERM
pstmt.setString(26, detail[0]); // purc_order
pstmt.setString(27, "O"); // STATUS
pstmt.setString(28, detail[26]); // EMP_CODE
pstmt.executeUpdate();
if( pstmt != null )
{
pstmt.close();
pstmt = null;
}
}
else
{
//System.out.println("------------- Inside if else for insert -----------");
detail[0] = generateTranId( "w_porderWiz_temp", ordSiteCode, conn );
System.out.println("purchase order ======>>" + detail[0]);
String orddate = genericUtility.getValidDateTimeString(
checkNullAndTrim(detail[1]), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat());
// IND_NO SITE_DESCR
sql = "INSERT INTO PORDER_TEMP(PURC_ORDER, ORD_DATE, TRAN_DATE, PORD_TYPE, ITEM_SER, TASK_DESC, SUPP_CODE, SUPP_NAME, "
+ "CR_TERM, CRTERM_DESCR, REMARKS, DLV_TERM, TRAN_CODE, TRAN_NAME, PRICE_LIST, EXCH_RATE, DEPT_CODE, DEPT_DESCR, "
+ "TRANS_MODE, SITE_CODE__DLV, SITE_CODE__ORD, SITE_ADD1, CURR_CODE, TERM_TABLE, UDF_STR__1, "
+ "UDF_STR__2, EMP_CODE, CHG_DATE, CHG_USER, CHG_TERM, STATUS) "
+ " VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, detail[0]); // purc_order
pstmt.setTimestamp(2, java.sql.Timestamp.valueOf(orddate)); // orddate
pstmt.setTimestamp(3, currdate); // TRAN_DATE
pstmt.setString(4, detail[3]); // pord_type
pstmt.setString(5, detail[4]); // itmser
pstmt.setString(6, detail[5]); // itmdescr/TASK_DESC
pstmt.setString(7, detail[6]); // supcode
pstmt.setString(8, detail[7]); // supname
pstmt.setString(9, detail[8]); // crterm
pstmt.setString(10, detail[9]); // crdescr
pstmt.setString(11, detail[10]); // remarks
pstmt.setString(12, detail[12]); // dlvterm
pstmt.setString(13, detail[13]); // trcode
pstmt.setString(14, detail[14]); // trdescr
pstmt.setString(15, detail[17]); // prlist
pstmt.setString(16, detail[19]); // exch_rate
pstmt.setString(17, detail[20]); // dcode
pstmt.setString(18, detail[21]); // ddescr
pstmt.setString(19, detail[15]); // trmode
pstmt.setString(20, detail[11]); // site_code__dlv
pstmt.setString(21, detail[2]); // order_site/SITE_CODE__ORD
pstmt.setString(22, detail[24]); // site_add1
pstmt.setString(23, detail[18]); // curr_code
pstmt.setString(24, detail[22]); // term_table
pstmt.setString(25, detail[23]); // udf_str__1
pstmt.setString(26, detail[25]); // udf_str__2
pstmt.setString(27, detail[26]); // EMP_CODE
pstmt.setTimestamp(28, currdate); // CHG_DATE
pstmt.setString(29, detail[27]); // CHG_USER
pstmt.setString(30, detail[28]); // CHG_TERM
pstmt.setString(31, "O"); // STATUS
//pstmt.setString(28, detail[17]); // delivery_term_descr
pstmt.executeUpdate();
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
if(rsSel != null)
{
rsSel.close();
rsSel = null;
}
if(pstmtSel != null)
{
pstmtSel.close();
pstmtSel = null;
}
}
//retStr = detail[0];
}
else if(action.equalsIgnoreCase( "SAVE_PODtl2" ))
{
System.out.println("------------- Inside SAVE_PODtl2 -----------" + str);
String[] detail = str.split("~");
/*for(int i = 0; i<= detail.length -1; i++ )
{
System.out.println("detail value of ["+i+"]======>>" + detail[i]);
}*/
String purcOrderFrmHdr = "";
sqlSel = " SELECT PURC_ORDER FROM PORDER_TEMP WHERE STATUS = ? AND EMP_CODE = ? AND SITE_CODE__ORD = ? ";
pstmtSel = conn.prepareStatement(sqlSel);
pstmtSel.setString(1, "O");
pstmtSel.setString(2, detail[4]);
pstmtSel.setString(3, detail[5]); // order_site/SITE_CODE__ORD
rsSel = pstmtSel.executeQuery();
if( rsSel.next() )
{
purcOrderFrmHdr = rsSel.getString("PURC_ORDER");
}
if(rsSel != null)
{
rsSel.close();
rsSel = null;
}
if(pstmtSel != null)
{
pstmtSel.close();
pstmtSel = null;
}
if(!detail[2].trim().equalsIgnoreCase("") && Integer.parseInt(detail[2]) > 0 && detail[6].equalsIgnoreCase("O"))
//if((detail[2] != null || !detail[2].equalsIgnoreCase("")) || Integer.parseInt(detail[2]) > 0 )
{
System.out.println("111111111111---------");
sqlSel = "SELECT ITEM_CODE FROM PORDDET_TEMP PD WHERE PURC_ORDER = ? AND ITEM_CODE = ? ";
pstmtSel = conn.prepareStatement(sqlSel);
pstmtSel.setString(1, purcOrderFrmHdr); // PURC_ORDER
pstmtSel.setString(2, detail[1]); // ITEM_CODE
rsSel = pstmtSel.executeQuery();
if( rsSel.next() )
{
sql = "UPDATE PORDDET_TEMP SET QUANTITY = ? WHERE PURC_ORDER = ? AND ITEM_CODE = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, detail[2]); // QUANTITY
pstmt.setString(2, purcOrderFrmHdr); // PURC_ORDER
pstmt.setString(3, detail[1]); // ITEM_CODE
pstmt.executeUpdate();
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
else
{
dlvDate = genericUtility.getValidDateTimeString(
checkNullAndTrim(detail[3]), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat());
sql = "INSERT INTO PORDDET_TEMP(PURC_ORDER, SITE_CODE, ITEM_CODE, QUANTITY, DLV_DATE) "
+ " VALUES(?,?,?,?,?)";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, purcOrderFrmHdr); // PURC_ORDER
pstmt.setString(2, detail[0]); // SITE_CODE
pstmt.setString(3, detail[1]); // ITEM_CODE
pstmt.setString(4, detail[2]); // QUANTITY
pstmt.setTimestamp(5, java.sql.Timestamp.valueOf(dlvDate)); // DLV_DATE
pstmt.executeUpdate();
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
if(rsSel != null)
{
rsSel.close();
rsSel = null;
}
if(pstmtSel != null)
{
pstmtSel.close();
pstmtSel = null;
}
}
if(detail[2].trim().equalsIgnoreCase("") || Integer.parseInt(detail[2]) <= 0 && detail[6].equalsIgnoreCase("O"))
//if((detail[2] == null || detail[2].equalsIgnoreCase("")) || Integer.parseInt(detail[2]) <= 0 && detail[6].equalsIgnoreCase("O"))
{
sql = "DELETE FROM PORDDET_TEMP WHERE PURC_ORDER = ? AND ITEM_CODE = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, purcOrderFrmHdr); // PURC_ORDER
pstmt.setString(2, detail[1]); // ITEM_CODE
pstmt.executeUpdate();
if( pstmt != null )
{
pstmt.close();
pstmt = null;
}
}
}
else if(action.equalsIgnoreCase( "RESET_PODtl" ))
{
String[] detail = str.split("~");
/*for(int i = 0; i<= detail.length -1; i++ )
{
System.out.println("detail value of ["+i+"]======>>" + detail[i]);
}*/
sql = "UPDATE PORDER_TEMP SET STATUS = ? WHERE STATUS = ? AND EMP_CODE = ? AND SITE_CODE__ORD = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "C");
pstmt.setString(2, "O");
pstmt.setString(3, detail[0]);
pstmt.setString(4, detail[1]);
pstmt.executeUpdate();
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
// Changed By Sneha on 29-06-2016, for PO Save [End]
System.out.println("retStr ====>> ["+retStr+"]"); System.out.println("retStr ====>> ["+retStr+"]");
//changed by Prasad on 08/06/15 [for multiple action] START //changed by Prasad on 08/06/15 [for multiple action] START
response.setContentType("text/xml"); response.setContentType("text/xml");
...@@ -232,6 +760,7 @@ public class ProdWizItemChangeServlet extends HttpServlet ...@@ -232,6 +760,7 @@ public class ProdWizItemChangeServlet extends HttpServlet
} }
catch (ITMException e1) catch (ITMException e1)
{ {
isError = true;
// TODO Auto-generated catch block // TODO Auto-generated catch block
e1.printStackTrace(); e1.printStackTrace();
} }
...@@ -262,6 +791,19 @@ public class ProdWizItemChangeServlet extends HttpServlet ...@@ -262,6 +791,19 @@ public class ProdWizItemChangeServlet extends HttpServlet
pstmtSel.close(); pstmtSel.close();
pstmtSel = null; pstmtSel = null;
} }
// Changed by Sneha [Start]
if( !isError )
{
System.out.println("------- commmited succesfully --------");
conn.commit();
}
else if ( isError )
{
System.out.println("------- rollback succesfully --------");
conn.rollback();
}
// Changed by Sneha [End]
if (conn != null && !conn.isClosed()) if (conn != null && !conn.isClosed())
{ {
conn.close(); conn.close();
...@@ -311,4 +853,92 @@ public class ProdWizItemChangeServlet extends HttpServlet ...@@ -311,4 +853,92 @@ public class ProdWizItemChangeServlet extends HttpServlet
} }
return input.trim(); return input.trim();
} }
// Changed by Sneha, on 28-07-2016 for generating tran_id [Start]
private String generateTranId( String windowName, String siteCode, Connection conn )throws ITMException
{
PreparedStatement pstmt = null;
ResultSet rs = null;
String selSql = "";
String tranId = "";
String tranSer = "";
String keyString = "";
String keyCol = "";
String xmlValues = "";
String paySiteCode = "";
String effectiveDate = "";
java.sql.Timestamp currDate = null;
java.sql.Date effDate = null;
E12GenericUtility genericUtility = new E12GenericUtility();
try
{
SimpleDateFormat sdfAppl = new SimpleDateFormat(genericUtility.getApplDateFormat());
currDate = new java.sql.Timestamp(System.currentTimeMillis());
String currDateStr = sdfAppl.format(currDate);
selSql = "SELECT KEY_STRING, TRAN_ID_COL, REF_SER FROM TRANSETUP WHERE TRAN_WINDOW = ? ";
pstmt = conn.prepareStatement(selSql);
pstmt.setString( 1, windowName );
rs = pstmt.executeQuery();
if (rs.next())
{
keyString = rs.getString("KEY_STRING");
keyCol = rs.getString("TRAN_ID_COL");
tranSer = rs.getString("REF_SER");
}
rs.close();rs = null;
pstmt.close();pstmt = null;
System.out.println("keyString :"+keyString);
System.out.println("keyCol :"+keyCol);
System.out.println("tranSer :"+tranSer);
xmlValues ="<?xml version=\"1.0\" encoding=\"utf-8\"?><Root>";
xmlValues = xmlValues + "<Header></Header>";
xmlValues = xmlValues + "<Detail1>";
xmlValues = xmlValues + "<tran_id></tran_id>";
xmlValues = xmlValues + "<site_code>" + siteCode + "</site_code>";
xmlValues = xmlValues + "<tran_date>" + currDateStr + "</tran_date>";
xmlValues = xmlValues + "</Detail1></Root>";
System.out.println("xmlValues :["+xmlValues+"]");
TransIDGenerator tg = new TransIDGenerator(xmlValues, "BASE", CommonConstants.DB_NAME);
tranId = tg.generateTranSeqID(tranSer, keyCol, keyString, conn);
System.out.println("tranId :"+tranId);
}
catch (SQLException ex)
{
System.out.println("Exception ::" +selSql+ ex.getMessage() + ":");
ex.printStackTrace();
throw new ITMException(ex);
}
catch (Exception e)
{
System.out.println("Exception ::" + e.getMessage() + ":");
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch(Exception e){}
}
return checkNullAndTrim(tranId);
}
// Changed by Sneha, on 28-07-2016 for generating tran_id [End]
} }
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