Commit dd7da3f6 authored by smisra's avatar smisra

confirming all transactions for a workorder, previously only confirming one...

confirming all transactions for a workorder, previously only confirming one transaction having the max operation


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@91483 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 2286e8b9
package ibase.webitm.ejb.mfg;
import ibase.system.config.ConnDriver;
import ibase.webitm.ejb.ITMDBAccessEJB;
import ibase.webitm.ejb.ValidatorEJB;
import ibase.webitm.utility.GenericUtility;
import ibase.webitm.utility.ITMException;
......@@ -31,8 +32,6 @@ import javax.ejb.EJBException;
public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote,WIPScanPvSolarLocal
{
GenericUtility genericUtility=GenericUtility.getInstance();
public String wfValData(String xmlString, String xmlString1, String objContext, String editFlag, String xtraParams) throws ITMException
{
String errString="";
......@@ -65,23 +64,21 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
String errCode="";
String errFieldName="";
String errorType="";
String userId="";
Connection conn=null;
GenericUtility genutility=null;
String lotNo= ""; //LOT NO FOR BAR CODE READING FIELD FROM WORKORDER TABLE
String lotSl= "";
String siteCode = "";//LOT SL FOR BAR CODE READING FIELD FROM WORKORDER TABLE
String workOrd = ""; //WORK_ORDER FROM WORKORDER TABLE
String itemCode = ""; //ITEM CODE FROM WORKORDER TABLE
String conf = ""; //CONFIRMED FOR WIP_SCANNING_HDR TABLE
//int currOperation = 0,maxOperation = 0;
String lotNo= "",lotSl= "",siteCode = "",tranId = "",userId="",currOperation = "",maxOperation = "",reasonCode = "",prevLotNo = "",prvLotSl = "",remarks = "",opreration = "", qcApprovalReject = "",mcCode = "",workOrd = "",itemCode = "",procCode = "",conf = "",waitTime = ""; //LOT NO FOR BAR CODE READING FIELD FROM WORKORDER TABLE
ResultSet rs=null;
int cont = 0;
int currentFormNo=0;
String sql = "";
PreparedStatement pstmt = null;
ArrayList <String> errList=new ArrayList<String>();
ArrayList<String> errFields = new ArrayList<String>();
ITMDBAccessEJB itmdbAccessEJB = new ITMDBAccessEJB();
ConnDriver connDriver=new ConnDriver();
StringBuffer errStringXml = new StringBuffer("<?xml version=\"1.0\"?>\r\n<Root><Errors>");
System.out.println("EDIT FLAG "+editFlag);
try
{
......@@ -89,6 +86,7 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
conn=connDriver.getConnectDB("DriverITM");
connDriver=null;
userId=getValueFromXTRA_PARAMS(xtraParams,"loginCode");
System.out.println("user id "+userId);
System.out.println("1---currentFormNo-------"+currentFormNo);
if(objContext!=null && objContext.trim().length()>0)
{
......@@ -102,50 +100,161 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
parentNode=parentNodeList.item(0);
childNodeList=parentNode.getChildNodes();
childNodeListLength=childNodeList.getLength();
System.out.println("CHILD NODE LIST LENTH"+childNodeListLength);
for(int ctr=0;ctr<childNodeListLength;ctr++)
{
childNode=childNodeList.item(ctr);
childNodeName=childNode.getNodeName();
if (childNodeName.equalsIgnoreCase("lot_no"))
//VALIDATION FOR DUPLICATE TRAN_ID
if (childNodeName.equalsIgnoreCase("tran_id"))
{
lotNo = getColumnValue("lot_no", dom);
System.out.println("This is in wfValdata Case1 & Emp_id is \t"+lotNo);
if ( lotNo != null || lotNo.trim().length() == 0 )
System.out.println("EDIT FLAG ["+editFlag+"]");
System.out.println(" >>>>>>>..edit flag length ["+editFlag.length()+")");
if(!("E".equalsIgnoreCase(editFlag)))
{
System.out.println(" +++++++++ In Save Method 1 +++++++++++++++++++");
tranId = genericUtility.getColumnValue("tran_id", dom);
System.out.println("========tran id ["+tranId+"]");
if(tranId == null || tranId.trim().length()==0)
{
errList.add("WIPB1");
errFields.add("lotNo");
System.out.println("Bar code Comming null in wfvaldata & bar_code is : \t"+lotNo);
errList.add("VTWIPTI1");
errFields.add("tran_id");
break ;
}
sql = "SELECT COUNT(1) FROM WIP_SCANNING_PS_HDR WHERE TRAN_ID = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
if(rs.next())
{
if(rs.getInt(1)==1)
{
//errString = itmdbAccessEJB.getErrorString("tran_id"," VTWIPTI", userId);
errList.add("VTWIPTI");
errFields.add("tran_id");
System.out.println("EXTING TRAN ID : \t"+tranId);
break ;
}
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
}
if (childNodeName.equalsIgnoreCase("lot_no"))
{
lotNo = getColumnValue("lot_no", dom);
System.out.println(" +++++++++ In Save Method 2 +++++++++++++++++++");
System.out.println("This is in wfValdata Case1 & LOT_NO is \t"+lotNo);
}
else if (childNodeName.equalsIgnoreCase("lot_sl"))
{
lotNo = getColumnValue("lot_no", dom);
lotSl = getColumnValue("lot_sl", dom);
System.out.println("LOT NO "+lotNo);
System.out.println("LOT SL "+lotSl);
String sql = "SELECT W1.WORK_ORDER,W1.ITEM_CODE FROM WORKORDER W1 WHERE W1.LOT_NO = ? AND W1.LOT_SL = ? ";
//VALIDATIN FOR EXISTING DATA IN WORKORDER TABLE AGAINST LOT NO AND LOT SL.
sql = "SELECT COUNT(1) FROM WORKORDER WHERE lot_no = ? and lot_sl = ?" ;
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,lotNo);
pstmt.setString(2,lotSl);
rs = pstmt.executeQuery();
while(rs.next())
if(rs.next())
{
if(rs.getInt(1)==0)
{
errList.add("VTWIPLN1");
errFields.add("lot_sl");
System.out.println("WORK WORKORDER FEILD ");
}
else
{
sql = "SELECT WORK_ORDER,ITEM_CODE FROM WORKORDER WHERE LOT_NO = ? AND LOT_SL = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,lotNo);
pstmt.setString(2,lotSl);
rs = pstmt.executeQuery();
System.out.println(" +++++++++ In Save Method 3 +++++++++++++++++++");
if(rs.next())
{
System.out.println("All column value ");
workOrd=rs.getString("WORK_ORDER");
System.out.println("WORK_ORDER"+workOrd);
itemCode=rs.getString("ITEM_CODE");
System.out.println("item code"+itemCode);
itemCode = rs.getString("ITEM_CODE");
}
}
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
//
sql = " SELECT MAX(OPERATION) FROM WIP_SCANNING_PS_HDR WHERE WORK_ORDER = ?";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,workOrd);
rs = pstmt.executeQuery();
if(rs.next())
{
currOperation = rs.getString(1);
System.out.println("current operation in wip scanning ps hdr table"+currOperation);
System.out.println("current operation in wip scanning ps hdr table"+itemCode);
}
rs.close();
pstmt.close();
rs = null;
pstmt = null;
//GET MAX(OPERATION) FROM WORDER_ROUTE
sql = " SELECT MAX(OPERATION) FROM WORDER_ROUTE WR ,WORKORDER W1 WHERE WR.WORK_ORDER= W1.WORK_ORDER AND W1.WORK_ORDER = ?" ;
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,workOrd);
rs = pstmt.executeQuery();
if(rs.next())
{
maxOperation = rs.getString(1);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
//VALIDATION FOR DUPLICATE BAR CODE AND COMPARE WITH
if(currOperation == maxOperation)
{
if(!("E".equalsIgnoreCase(editFlag)))
{
sql = "SELECT count(1) FROM WIP_SCANNING_PS_HDR WHERE LOT_NO = ? AND LOT_SL = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,lotNo);
pstmt.setString(2,lotSl);
rs = pstmt.executeQuery();
if(rs.next())
{
if(rs.getInt(1)>0)
{
errList.add("VTWIPSBC");
errFields.add("lot_no");
System.out.println("WORK WORKORDER FEILD ");
}
}
rs.close();
rs = null;
//SELECTING CONFIRMED COLUMN FOR SCANNING FROM WORKORDER ISS
pstmt = conn.prepareStatement("SELECT CONFIRMED FROM WORKORDER_ISS WHERE WORK_ORDER = ?");
pstmt.close();
pstmt = null;
}
}
//VALIDATION FOR CONFIRM WORK ORDER
sql = "SELECT CONFIRMED FROM WORKORDER_ISS WHERE WORK_ORDER = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,workOrd);
rs = pstmt.executeQuery();
System.out.println(" +++++++++ In Save Method 4 +++++++++++++++++++");
while(rs.next())
{
conf=rs.getString("confirmed");
......@@ -154,28 +263,80 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
rs.close();
pstmt = null;
rs = null;
if(conf =="N")
if(conf =="Y")
{
errList.add("WIPINVBC");
errFields.add("conf");
System.out.println("confirmed field ");
errList.add("VTWIPCONF");
errFields.add("confirmed");
System.out.println("CONFIRM FIELD ");
}
}
//VALIDATION FOR LOT SL
System.out.println("This is in wfValdata Case1 & Emp_id is \t"+lotSl);
if ( lotSl != null || lotSl.trim().length() == 0 )
//VALIDATION FOR EXISTING DATA IN WORKORDER_ROUTE TABLE
if (childNodeName.equalsIgnoreCase("mc_code") )
{
String sql1 = " SELECT COUNT(*) FROM WORKORDER WHERE LOT_SL = ? ";
pstmt = conn.prepareStatement(sql1);
mcCode = genericUtility.getColumnValue("mc_code", dom);
System.out.println(" +++++++++ In Save Method 5 +++++++++++++++++++");
sql = "SELECT COUNT(*) FROM WORDER_ROUTE WHERE WORK_ORDER = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,workOrd);
rs = pstmt.executeQuery();
if(rs.next())
{
cont = rs.getInt(1);
if(cont == 0)
if(rs.getInt(1)==0)
{
errList.add("VTWIPMC");
errFields.add("MC_CODE");
System.out.println("INVALID MACHINE CODE : \t"+mcCode);
break ;
}
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
//VALIDATION FOR EXISTING DATA IN ITEM TABLE
if(childNodeName.equalsIgnoreCase("ITEM_CODE") )
{
System.out.println(" +++++++++ In Save Method 6 +++++++++++++++++++");
sql = "SELECT COUNT(1) FROM ITEM WHERE ITEM_CODE = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,itemCode);
rs = pstmt.executeQuery();
if(rs.next())
{
if(rs.getInt(1)==0)
{
errList.add("VTWIITM");
errFields.add("ITEM_CODE");
System.out.println("ITEM TABLE FIELD ");
break ;
}
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
//VALIDATION FOR EXISTING DATA IN PROCESS TABLE
if(childNodeName.equalsIgnoreCase("PROC_CODE") )
{
System.out.println("+++++++++++++= IN SAVE METHOD 7 ++++++++++++++++=");
procCode = genericUtility.getColumnValue("proc_code", dom);
System.out.println("proc code"+procCode);
sql = " SELECT COUNT(1) FROM PROCESS WHERE PROC_CODE = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,procCode);
rs = pstmt.executeQuery();
if(rs.next())
{
if(rs.getInt(1)==0)
{
errList.add("WIPB1");
errFields.add("lotSl");
System.out.println("Lot_sl Comming null in wfvaldata & bar_code is : \t"+lotSl);
errList.add("VTWIPPC");
errFields.add("PROC_CODE");
System.out.println("PROCESS CODE----- >>> ");
break ;
}
}
......@@ -183,49 +344,83 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
rs = null;
pstmt.close();
pstmt = null;
}
//VALIDATION FOR EXISTING DATA IN WORKORDER_FEEDBACK TABLE
if(childNodeName.equalsIgnoreCase("WAIT_TIME") )
{
System.out.println("++++++++=IN SAVE METHOD 8 +++++++++++++=");
waitTime = genericUtility.getColumnValue("wait_time", dom);
sql ="SELECT COUNT(1) FROM WORKORDER_FEEDBACK WF,WORKORDER W1 WHERE WF.WORK_ORDER = W1.WORK_ORDER AND W1.WORK_ORDER = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,workOrd);
rs = pstmt.executeQuery();
if(rs.next())
{
if(rs.getInt(1)==0)
{
errList.add("VTWIPWT");
errFields.add("WAIT_TIME");
System.out.println("WORK ORDER FEEDBACK TABLE FEILD ");
}
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
//VALIDATION FOR QC APPROVAL REJECT
if (childNodeName.equalsIgnoreCase("qc_approval_reject"))
{
String qc_approval_reject = getColumnValue("qc_approval_reject", dom);
System.out.println("This is in wfValdata Case1 & Emp_id is \t"+qc_approval_reject);
if ( qc_approval_reject == null || qc_approval_reject.trim().length() == 0 )
System.out.println(" +++++++++ In Save Method 9 +++++++++++++++++++");
qcApprovalReject = genericUtility.getColumnValue("qc_approval_reject", dom);
System.out.println("This is in wfValdata Case1 & Emp_id is \t"+qcApprovalReject);
if ( qcApprovalReject == null || qcApprovalReject.trim().length() == 0 )
{
errList.add("WIPQCAR1");
errList.add("VTWIPQCAR1");
errFields.add("qc_approval_reject");
System.out.println("Bar code Comming null in wfvaldata & bar_code is : \t"+qc_approval_reject);
System.out.println("Qc approval validation : \t"+qcApprovalReject);
break ;
}
}
//VALIDATION FOR REASON CODE
if (childNodeName.equalsIgnoreCase("reason_code"))
{
String reason_code = getColumnValue("reason_code", dom);
System.out.println("This is in wfValdata Case1 & Emp_id is \t"+reason_code);
if ( reason_code == null || reason_code.trim().length() == 0 )
// qcApprovalReject = genericUtility.getColumnValue("qc_approval_reject", dom);
if(!("A".equalsIgnoreCase(qcApprovalReject)))
{
System.out.println(" +++++++++ In Save Method 10 +++++++++++++++++++");
reasonCode = genericUtility.getColumnValue("reason_code", dom);
System.out.println("______ This is in wfValdata Case1 &qcApprovalReject is \t"+reasonCode);
if ( reasonCode == null || reasonCode.trim().length() == 0 )
{
errList.add("WIPRC1");
errList.add("VTWIPRC1");
errFields.add("reason_code");
System.out.println("Bar code Comming null in wfvaldata & bar_code is : \t"+reason_code);
System.out.println("reson code validation: \t"+reasonCode);
break ;
}
}
}
if (childNodeName.equalsIgnoreCase("remarks"))
{
String remarks = getColumnValue("remarks", dom);
System.out.println(" +++++++++ In Save Method 11 +++++++++++++++++++");
remarks = genericUtility.getColumnValue("remarks", dom);
System.out.println("This is in wfValdata Case1 & Emp_id is \t"+remarks);
if ( remarks == null || remarks.trim().length() == 0 )
{
errList.add("WIPQCAR1");
//errString = itmdbAccessEJB.getErrorString(" "," VTWIPRM1", "");
errList.add("VTWIPRM1");
errFields.add("remarks");
System.out.println("Bar code Comming null in wfvaldata & bar_code is : \t"+remarks);
System.out.println("Remarks null : \t"+remarks);
break ;
}
}
break;
}
int errListSize=errList.size();
if(errListSize>0)
{
......@@ -258,7 +453,9 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
}else
{
errStringXml = new StringBuffer( "" );
}
}
}
catch(Exception e)
......@@ -315,32 +512,23 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
ConnDriver connDriver=new ConnDriver();
Connection conn=null;
StringBuffer valueXmlString=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
int currentFormNo=0;
String lotNo= ""; //LOT NO FOR SCANING BAR CODE
String lotSl= ""; //LOT SL FOR SCANING BAR CODE
PreparedStatement pstmt=null,pstmtInner = null;
ResultSet rs=null,rsInner = null;
int currentFormNo=0,prevOperation = 0, currOperation=0;
String lotNo= "",lotSl= "",procCode = "",procDescr = "",prodDescr = "",prevOperation1 = "",qcApprovalReject = "",reasonDescr = "",userId = "",reasonCode = "",prevOperationStr = "",workOrd = "",itemCode = "",mcCode= "",siteCode = ""; //LOT NO FOR SCANING BAR CODE
int ctr;
String columnValue = "";
String opreration = ""; //OPERATION FROM WORKORDER_FEEDBACK
String procCode = ""; //PROCESS CODE FOR WIP_SCANNING_HDR FROM WORKORDER
String procDescr = ""; //PROCESS DESCR FOR WIP_SCANNING_HDR FROM WORKORDER_ROUTE
String workOrd = ""; //WORKORDER FROM WORKORDER TABLE
String itemCode = "";
GenericUtility genutility=null;
String mcCode= "";
String siteCode = "";
String runStartTime = "" ; //SCANNING TIME
Date runEndTime = null; //RUN END TIME FROM WORKORDER_FEEDBACK TABLE
Double waitTime = 0.0; //FROM WORKORDER_FEEDBACK TABLE
double totalRunTime = 0.0 ; //DEFRENCE BETWEEN START TIME AND END TIME
Double cummulRunTime = 0.0; //TOTAL RUN TIME
String prodDescr = ""; //ITEM DESCR FROM ITEM TABLE
String reasonCode = "";
String errString="";
String sql = "";//FLD VALUE FROM REASON CODE
String reasonDescr = ""; //DESCR FROM REASON CODE
String qcApprovalReject = ""; //FROM WIP_SCANNING_HDR
boolean flag = true;//FROM WIP_SCANNING_HDR
ArrayList <String> errList=new ArrayList<String>();
ArrayList<String> errFields = new ArrayList<String>();
try
{
genutility=GenericUtility.getInstance();
......@@ -348,6 +536,7 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
conn.setAutoCommit(false);
connDriver=null;
siteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginSiteCode");
userId=getValueFromXTRA_PARAMS(xtraParams,"loginCode");
System.out.println("^^^^^^^^^SITE CODE^^^^^^^^^^^^^"+siteCode);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(genericUtility.getApplDateFormat());
SimpleDateFormat simpleDateTimeFormat = new SimpleDateFormat(genericUtility.getApplDateTimeFormat());
......@@ -363,6 +552,7 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
ITMDBAccessEJB itmdbAccessEJB = new ITMDBAccessEJB();
ctr = 0;
valueXmlString.append("<Detail>");
System.out.println("+++++++++++++current form no++++++++++"+currentFormNo);
......@@ -389,7 +579,26 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
valueXmlString.append("<confirmed><![CDATA[").append("N").append("]]></confirmed >");
valueXmlString.append("<reason_code protect=\"1\">").append("").append("</reason_code>");
}
if(currentColumn.trim().equalsIgnoreCase("lot_no") || currentColumn.trim().equalsIgnoreCase("lot_SL"))
{
lotNo = genericUtility.getColumnValue("lot_no",dom);
lotSl = genericUtility.getColumnValue("lot_sl",dom) ;
System.out.println("Lot sl "+lotSl);
sql = "select count(1) from workorder where lot_no = ? and lot_sl = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,lotNo);
pstmt.setString(2,lotSl);
rs = pstmt.executeQuery();
if(rs.next())
{
if(rs.getInt(1)==0)
{
flag=false;
}
}
}
if(flag)
{
if(currentColumn.trim().equalsIgnoreCase("lot_no"))
{
System.out.println("Current column["+currentColumn+"]");
......@@ -397,46 +606,45 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
if(lotNo !=null && lotNo.trim().length() >0 )
{
lotNo = lotNo.toUpperCase();
System.out.println("lot no "+lotNo);
}
System.out.println("lot no "+lotNo);
valueXmlString.append("<lot_no>").append("<![CDATA["+lotNo+"]]>").append("</lot_no>");
valueXmlString.append("<tran_date>").append("<![CDATA["+simpleDateFormat.format(new Date())+"]]>").append("</tran_date>");
//valueXmlString.append("<lot_no>").append("<![CDATA["+lotNo+"]]>").append("</lot_no>");
}
else if(currentColumn.trim().equalsIgnoreCase("lot_sl"))
{
System.out.println("Current column["+currentColumn+"]");
lotSl = genericUtility.getColumnValue("lot_sl",dom) ;
lotNo = genericUtility.getColumnValue("lot_no",dom) ;
runStartTime = genericUtility.getColumnValue("run_time_start",dom) ;
sql = "SELECT W1.WORK_ORDER,W1.ITEM_CODE FROM WORKORDER W1 WHERE W1.LOT_NO = ? AND W1.LOT_SL = ? ";
System.out.println("lot no "+lotNo);
System.out.println("lot sl"+lotSl);
//GET WORK_ORDER FROM WORKORDER TABLE
sql = "SELECT WORK_ORDER,ITEM_CODE FROM WORKORDER WHERE LOT_NO = ? AND LOT_SL = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,lotNo);
pstmt.setString(2,lotSl);
rs = pstmt.executeQuery();
while(rs.next())
if(rs.next())
{
workOrd=rs.getString("WORK_ORDER");
itemCode=rs.getString("ITEM_CODE");
workOrd=rs.getString("WORK_ORDER")==null?"":rs.getString("WORK_ORDER");
itemCode=rs.getString("ITEM_CODE")==null?"":rs.getString("ITEM_CODE");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = " SELECT OPERATION,WAIT_TIME,PROC_CODE,DESCR FROM WORDER_ROUTE WR ,WORKORDER W1 WHERE WR.WORK_ORDER= W1.WORK_ORDER AND W1.WORK_ORDER = ?" ;
//GET MAX OPERATION FROM WORKORDER ROUTE TABLE DEPENDING ON THE WORK ORDER NUMBER
sql = " SELECT MAX(OPERATION) FROM WIP_SCANNING_PS_HDR WHERE WORK_ORDER = ?" ;
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,workOrd);
rs = pstmt.executeQuery();
if(rs.next())
{
int operation1 = 0;
opreration = rs.getString("operation");
operation1 = operation1+1;
operation1 = operation1+1;
waitTime=rs.getDouble("wait_time");
procCode=rs.getString("proc_code");
procDescr=rs.getString("descr");
prevOperation= Integer.parseInt(rs.getString(1)==null?"0":rs.getString(1)) ;
System.out.println("previous operation["+prevOperation+" ]");
System.out.println("get string ["+rs.getString(1)+"]");
currOperation = prevOperation + 1;
System.out.println("current operation ["+currOperation+"]");
}
rs.close();
......@@ -444,84 +652,75 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
pstmt.close();
pstmt = null;
sql = " SELECT DESCR FROM PROCESS WHERE PROC_CODE = ?";
//GET WAIT_TIME PROC_CODE FROM WORDER_ROUTE TABLE
sql = "SELECT WAIT_TIME, MC_CODE,PROC_CODE FROM WORDER_ROUTE WR ,WORKORDER W1 WHERE WR.WORK_ORDER= W1.WORK_ORDER AND W1.WORK_ORDER = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,procCode);
prevOperationStr = Integer.toString(prevOperation);
pstmt.setString(1,workOrd);
rs = pstmt.executeQuery();
if(rs.next())
{
procDescr=rs.getString("descr");
waitTime= (Double)rs.getDouble("wait_time")== null ?0.0:(Double)rs.getDouble("wait_time");
procCode=rs.getString("proc_code")==null?" ":rs.getString("proc_code");
mcCode=rs.getString("mc_code")==null?" ":rs.getString("mc_code");
System.out.println("process code"+procCode);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = "SELECT DESCR FROM ITEM WHERE ITEM_CODE = ?";
//GET PROCESS DESCRIPTION FROM PPROCESS TABLE
sql = " SELECT DESCR FROM PROCESS WHERE PROC_CODE = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,itemCode);
pstmt.setString(1,procCode);
rs = pstmt.executeQuery();
if(rs.next())
{
prodDescr=rs.getString("DESCR");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
procDescr=rs.getString("descr")==null?" ":rs.getString("descr");
sql ="SELECT RUN_TIME_START,RUN_TIME_END FROM WORKORDER_FEEDBACK WF,WORKORDER W1 WHERE WF.WORK_ORDER = W1.WORK_ORDER AND W1.WORK_ORDER = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,workOrd);
rs = pstmt.executeQuery();
if(rs.next())
{
runEndTime=rs.getTimestamp("RUN_TIME_END");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = "SELECT RUN_TIME_START-RUN_TIME_END AS TOTAL_RUN_TIME FROM WORKORDER_FEEDBACK WF,WORKORDER W1 WHERE W1.WORK_ORDER = WF.WORK_ORDER AND W1.WORK_ORDER = ?";
//GET ITEM DESCR FROM ITEM TABLE
sql = "SELECT DESCR FROM ITEM WHERE ITEM_CODE = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,workOrd);
pstmt.setString(1,itemCode);
rs = pstmt.executeQuery();
if(rs.next())
{
//totalRunTime=rs.getString("TOTAL_RUN_TIME");
System.out.println("TOTAL RUN TIME"+totalRunTime);
prodDescr=rs.getString("DESCR")==null?" ":rs.getString("DESCR");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = "SELECT MC_CODE FROM WORDER_ROUTE WHERE OPERATION = ? AND WORK_ORDER = ?";
//GET RUN_TIME_START,RUN_TIME_END FROM WORKORDER_FEEDBACK
sql ="SELECT RUN_TIME_START,RUN_TIME_END FROM WORKORDER_FEEDBACK WF,WORKORDER W1 WHERE WF.WORK_ORDER = W1.WORK_ORDER AND W1.WORK_ORDER = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,opreration);
pstmt.setString(2,workOrd);
pstmt.setString(1,workOrd);
rs = pstmt.executeQuery();
if(rs.next())
{
mcCode=rs.getString("mc_code");
System.out.println("TOTAL RUN TIME"+cummulRunTime);
runEndTime=rs.getTimestamp("RUN_TIME_END");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
//CALCULATING CUMULATIVE TIME FROM WORDER_ROUTE TABLE
sql = "SELECT SUM(RUN_TIME) AS CUMULATIVE_TIME FROM WORDER_ROUTE WR,WORKORDER W1 WHERE WR.WORK_ORDER = W1.WORK_ORDER AND W1.WORK_ORDER = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,workOrd);
rs = pstmt.executeQuery();
if(rs.next())
{
cummulRunTime=rs.getDouble("cumulative_time");
System.out.println("TOTAL RUN TIME"+cummulRunTime);
cummulRunTime=(Double)rs.getDouble("cumulative_time")==null?0.0:(Double)rs.getDouble("cumulative_time");
System.out.println("CUMULATIVE RUN TIME"+cummulRunTime);
}
rs.close();
rs = null;
......@@ -531,28 +730,32 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
valueXmlString.append("<work_order>").append("<![CDATA[" +workOrd+ "]]>").append("</work_order>");
valueXmlString.append("<lot_no>").append("<![CDATA[" + lotNo + "]]>").append("</lot_no>");
valueXmlString.append("<lot_sl>").append("<![CDATA[" + lotSl + "]]>").append("</lot_sl>");
valueXmlString.append("<product_code>").append("<![CDATA[" + itemCode + "]]>").append("</product_code>");
valueXmlString.append("<descr>").append("<![CDATA[" + prodDescr + "]]>").append("</descr>");
valueXmlString.append("<operation>").append("<![CDATA[" + opreration + "]]>").append("</operation>");
valueXmlString.append("<proc_code>").append("<![CDATA[" +procCode+ "]]>").append("</proc_code>");
valueXmlString.append("<product_code>").append("<![CDATA[" + itemCode+ "]]>").append("</product_code>");
valueXmlString.append("<descr>").append("<![CDATA[" + prodDescr+ "]]>").append("</descr>");
valueXmlString.append("<operation>").append("<![CDATA[" + currOperation + "]]>").append("</operation>");
valueXmlString.append("<proc_code>").append("<![CDATA[" +procCode + "]]>").append("</proc_code>");
valueXmlString.append("<site_code>").append("<![CDATA[" + siteCode+ "]]>").append("</site_code>");
valueXmlString.append("<process_descr>").append("<![CDATA[" + procDescr + "]]>").append("</process_descr>");
valueXmlString.append("<wait_time>").append("<![CDATA[" + waitTime + "]]>").append("</wait_time>");
valueXmlString.append("<mc_code>").append("<![CDATA[" + mcCode + "]]>").append("</mc_code>");
valueXmlString.append("<run_start_time>").append("<![CDATA["+simpleDateTimeFormat.format(new Timestamp(System.currentTimeMillis()))+"]]>").append("</run_start_time>");
if(runEndTime != null)
{
valueXmlString.append("<run_end_time>").append("<![CDATA["+ simpleDateTimeFormat.format(runEndTime) + "]]>").append("</run_end_time>");
System.out.println("END TIME"+runEndTime);
try{
if(runEndTime != null )
}
else
{
valueXmlString.append("<run_end_time/>");
}
if(runEndTime != null)
{
double runTime = ((System.currentTimeMillis())-(runEndTime.getTime()))/3600000 ;
totalRunTime = runTime ;
valueXmlString.append("<total_run_time>").append("<![CDATA[" + totalRunTime+ "]]>").append("</total_run_time>");
}
}
catch(NullPointerException nop)
else
{
nop.printStackTrace();
valueXmlString.append("<total_run_time/>");
}
valueXmlString.append("<cumulativ_run_time>").append("<![CDATA[" + cummulRunTime + "]]>").append("</cumulativ_run_time>");
valueXmlString.append("<gencodes_descr>").append("<![CDATA["+reasonDescr+"]]>").append("</gencodes_descr>");
......@@ -583,7 +786,7 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
rs = pstmt.executeQuery();
if(rs.next())
{
reasonDescr = rs.getString(1);
reasonDescr = rs.getString(1)==null?" ":rs.getString("DESCR");
}
pstmt.close();
rs.close();
......@@ -591,6 +794,7 @@ public class WIPScanPvSolar extends ValidatorEJB implements WIPScanPvSolarRemote
rs = null;
valueXmlString.append("<gencodes_descr>").append("<![CDATA["+reasonDescr+"]]>").append("</gencodes_descr>");
}
}
valueXmlString.append("</Detail>");
break ;
......
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