Commit d3bd31ad authored by cpatil's avatar cpatil

modify at urse supreme


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@97719 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 491dcabd
package ibase.webitm.ejb.mfg;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
//import ibase.webitm.utility.ITMException;
import ibase.webitm.utility.GenericUtility;
import ibase.webitm.utility.ITMException;
//import java.sql.Timestamp;
import java.text.SimpleDateFormat;
class ADPElement implements Cloneable
{
private String itemCode;
private String siteCode;
private String routeCode;
private String suppSour;
private String bomCode;
private String itemSchedule;
private String itemStru;
private String siteCodeSupp;
private String siteCodeCust;
private String siteCodePlan;
private String orderOpt;
private String batchQtyType;
private String masterSch;
private String unit;
private String itemDescr;
private String aprCode;
private String packCode;
private String empCodePur;
private String suppCodePref;
private String acctCodePh;
private String cctrCodePh;
private String acctCodeWp;
private String cctrCodeWp;
private String itemSer;
private String mfgType;
private double minQty = 0;
private double reoQty = 0;
private double demand = 0;
private double supply = 0;
private double planDemand = 0;
private double planSupply = 0;
// 12/04/10 manoharan MF90BHU001
private double stockQty = 0;
private double othSupply = 0;
// end 12/04/10 manoharan MF90BHU001
private double minOrderQty = 0;
private double integralQty = 0;
private double maxQty = 0;
private double minimumQty = 0;
private double reorderQty = 0;
private double yieldPerc = 100;
private double minPlanPerc = 0;
private double batchQty = 0;
private double purcRate = 0;
private double qtStk = 0;//Added by chandrashekar 0n 11-08-14
private double ordDemand = 0;
private int days = 0;
private int purLeadTime = 0;
private int qcLeadTime = 0;
private int mfgLeadTime = 0;
private int maxStkDay = 0;
private int minStkDay = 0;
private ArrayList timeMRPArr;
transient GenericUtility genericUtility = null;
// 22/06/10 manoharan mfg lead time based on batch size
private String mfgLeadBasis = "F";
private double batchSizeLead = 0;
// end 22/06/10 manoharan
//Variables declared by gulzar on 4/18/2012
private double pendPOQty = 0;
private double pendDOQty = 0;
private double pendIndQty = 0;
private double pendDRQty = 0;
//End changes by gulzar on 4/18/2012
//sabyasachi 17-03-2011
private String saleOrder;
private String lineNo;
private String refId;
private String detDemand;
//end sabyasachi 17-03-2011
//Added by manoj dtd 31/10/2013 to store Detail level trace hainv key=tran_id@tran_ser
//private HashMap<String, ADPElement> detMap=new HashMap<String, ADPElement>();
private ArrayList<HashMap<String, ADPElement>> detList=new ArrayList<HashMap<String, ADPElement>>();
private String empCodePlan;//Manoj dtd 11/03/2014
private String originalOrAltitem;//Manoj dtd 30/04/2014 to check whether Original/Alternate item
private String itemCodeParent;//added by cpatil on 03/05/14
private String bomCodeParent="";
private HashMap bomSet = null;
private ArrayList<String> orderList=new ArrayList<String>();
private double soDemand=0;
private double grossWeight = 0;
private String altitemPerc;
public void setAltitemPerc(String altitemPerc)
{
this.altitemPerc=altitemPerc;
}
public String getAltitemPerc()
{
return this.altitemPerc;
}
public ArrayList<String> getOrderList()
{
return this.orderList;
}
public void setOrderList(ArrayList<String> orderList)
{
this.orderList=orderList;
}
public void setbomSet(HashMap bomCode) //aded by cpatil on 09/06/14
{
this.bomSet = bomCode ;
}
public HashMap getbomSet()
{
return this.bomSet;
}
public ADPElement()
{
//System.out.println("New ADPElement Created");
this.timeMRPArr = new ArrayList();
this.saleOrder = " ";
this.lineNo = " ";
}
public void setItemCode(String itemCode)
{
//itemCode = itemCode.trim() + " ";
//itemCode = itemCode.substring(0,9);
this.itemCode = itemCode;
}
public String getItemCode()
{
return this.itemCode;
}
public void setSiteCode(String siteCode)
{
//siteCode = siteCode.trim() + " ";
//siteCode = siteCode.substring(0,4);
this.siteCode = siteCode;
}
public String getSiteCode()
{
return this.siteCode;
}
public void setUnit(String uom)
{
this.unit = uom;
}
public String getUnit()
{
return this.unit;
}
public void setItemDescr(String descr)
{
this.itemDescr = descr;
}
public String getItemDescr()
{
return this.itemDescr;
}
public void setItemSer(String code)
{
this.itemSer = code;
}
public String getItemSer()
{
return this.itemSer;
}
public void setAprCode(String code)
{
this.aprCode = code;
}
public String getAprCode()
{
return this.aprCode;
}
public void setPackCode(String code)
{
this.packCode = code;
}
public String getPackCode()
{
return this.packCode;
}
public void setEmpCodePur(String code)
{
this.empCodePur = code;
}
public String getEmpCodePur()
{
return this.empCodePur;
}
public void setSuppCodePref(String code)
{
this.suppCodePref = code;
}
public String getSuppCodePref()
{
return this.suppCodePref;
}
public void setAcctCodePh(String code)
{
this.acctCodePh = code;
}
public String getAcctCodePh()
{
return this.acctCodePh;
}
public void setCctrCodePh(String code)
{
this.cctrCodePh = code;
}
public String getCctrCodePh()
{
return this.cctrCodePh;
}
public void setAcctCodeWp(String code)
{
this.acctCodeWp = code;
}
public String getAcctCodeWp()
{
return this.acctCodeWp;
}
public void setCctrCodeWp(String code)
{
this.cctrCodeWp = code;
}
public String getCctrCodeWp()
{
return this.cctrCodeWp;
}
public void setMfgType(String code)
{
this.mfgType = code;
}
public String getMfgType()
{
return this.mfgType;
}
public void setPurcRate(double rate)
{
this.purcRate = rate;
}
public double getPurcRate()
{
return this.purcRate;
}
public double getQtStk() {
return qtStk;
}
public void setSoDemand(double soDemand) {
this.soDemand = soDemand;
}
public double getSoDemand() {
return soDemand;
}
public void setQtStk(double qtStk) {
this.qtStk = qtStk;
}
//changed method arguments by sabyasachi 29-03-2011
public void setDemand(java.sql.Timestamp dueDate, double demand, String saleOrder, String itemCode) throws ITMException, Exception
//public void setDemand(java.sql.Timestamp dueDate, double demand)
{
System.out.println("Calling setDemand() for saleOrder["+saleOrder+"]itemCode["+itemCode+"]this.refId["+this.refId+"]");
this.demand += demand;
//this.saleOrder = saleOrder;//Uncommented by manoj dtd 25/12/2014
//this.lineNo = lineNo;//Uncommented by manoj dtd 25/12/2014
System.out.println("this.refId---"+this.refId);
System.out.println("saleOrder---"+saleOrder);
System.out.println("demand---["+demand+"]");
//Commented by manoj dtd 25/12/2014
String dueDateStr="";
genericUtility = GenericUtility.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
if( dueDate != null)
{
dueDateStr = sdf.format(dueDate);
System.out.println("@@@@@ dueDateStr["+dueDateStr+"]");
}
if(saleOrder!=null && saleOrder.trim().length()>0)
{
if(this.refId==null ||this.refId.trim().length()==0)
this.refId=saleOrder+"@"+itemCode+"@"+demand+"@"+dueDateStr;
else
this.refId+="~"+saleOrder+"@"+itemCode+"@"+demand+"@"+dueDateStr;
}
//updateTimeMrp(dueDate, demand, 0, 0, 0,saleOrder,lineNo);
updateTimeMrp(dueDate, demand, 0, 0, 0);
}
public void setDemand(java.sql.Timestamp dueDate, double demand, String saleOrder, String lineNo,boolean isDetailReq)
//public void setDemand(java.sql.Timestamp dueDate, double demand)
{
System.out.println("Calling setDemand() for saleOrder["+saleOrder+"]lineNo["+lineNo+"]this.refId["+this.refId+"]");
if(isDetailReq)
{
this.demand+= demand;
this.ordDemand=demand;
}
//this.saleOrder = saleOrder;
//this.lineNo = lineNo;
System.out.println("this.refId---"+this.refId);
System.out.println("saleOrder---"+saleOrder);
System.out.println("demand---["+demand+"]");
if(saleOrder!=null && saleOrder.trim().length()>0)
{
if(this.refId==null ||this.refId.trim().length()==0)
this.refId=saleOrder+"@"+lineNo+"@"+demand;
else
this.refId+="#"+saleOrder+"@"+lineNo+"@"+demand;
}
//updateTimeMrp(dueDate, demand, 0, 0, 0,saleOrder,lineNo);
updateTimeMrp(dueDate, demand, 0, 0, 0);
}
//changed method arguments by sabyasachi 29-03-2011 end
public double getDemand()
{
return this.demand;
}
public void setSupply(java.sql.Timestamp dueDate, double supply)
{
this.supply += supply;
//updateTimeMrp(dueDate, 0, supply, 0, 0," "," ");
updateTimeMrp(dueDate, 0, supply, 0, 0);
}
public double getSupply()
{
return this.supply;
}
// 12/04/10 manoharan MF90BHU001
public void setStockQty(java.sql.Timestamp dueDate, double stockQty)
{
this.stockQty += stockQty;
//updateTimeMrp(dueDate, 0,0, stockQty,0," "," ");
updateTimeMrp(dueDate, 0,0, stockQty,0);
}
public double getStockQty()
{
return this.stockQty;
}
public void setOthSupply(java.sql.Timestamp dueDate, double othSupply)
{
this.othSupply += othSupply;
//updateTimeMrp(dueDate, 0,0, 0, othSupply," "," ");
updateTimeMrp(dueDate, 0,0, 0, othSupply);
}
public double getOthSupply()
{
return this.othSupply;
}
// end 12/04/10 manoharan MF90BHU001
public void setPlanSupply(java.sql.Timestamp dueDate, double supply)
{
this.planSupply += supply;
//updateTimeMrp(dueDate, 0, supply, 0, 0," "," ");
updateTimeMrp(dueDate, 0, supply, 0, 0);
}
public double getPlanSupply()
{
return this.planSupply;
}
//added by dharmendra on 28th-dec
public void setSuppSour(String suppSour)
{
this.suppSour = suppSour;
}
public String getSuppSour()
{
return this.suppSour;
}
public void setBomCode(String bomCode)
{
this.bomCode = bomCode;
}
public String getBomCode() // setBomCodeParent
{
return this.bomCode;
}
public void setBomCodeParent(String bomCodeParent)
{
if (this.bomCodeParent == null || "null".equals(this.bomCodeParent) || this.bomCodeParent.trim().length() == 0)
{
this.bomCodeParent = bomCodeParent;
}
}
public String getBomCodeParent() // setBomCodeParent
{
return this.bomCodeParent;
}
public void setRouteCode(String routeCode)
{
this.routeCode = routeCode;
}
public String getRouteCode()
{
return this.routeCode;
}
public void setMinQty(double minQty)
{
this.minQty = minQty;
}
public double getMinQty()
{
return this.minQty;
}
public void setMinStkDay(int minStkDay)
{
this.minStkDay = minStkDay;
}
public int getMinStkDay()
{
return this.minStkDay;
}
public void setReoQty(double reoQty)
{
this.reoQty = reoQty;
}
public double getReoQty()
{
return this.reoQty;
}
public void setPurLeadTime(int purLeadTime)
{
this.purLeadTime = purLeadTime;
}
public int getPurLeadTime()
{
return this.purLeadTime;
}
public void setQcLeadTime(int qcLeadTime)
{
this.qcLeadTime = qcLeadTime;
}
public int getQcLeadTime()
{
return this.qcLeadTime;
}
public void setIntegralQty(double integralQty)
{
this.integralQty = integralQty;
}
public double getIntegralQty()
{
return this.integralQty;
}
public void setItemStru(String itemStru)
{
this.itemStru = itemStru;
}
public String getItemStru()
{
return this.itemStru;
}
public void setSiteCodeSupp(String siteCodeSupp)
{
this.siteCodeSupp = siteCodeSupp;
}
public String getSiteCodeSupp()
{
return this.siteCodeSupp;
}
public void setSiteCodePlan(String siteCodePlan)
{
this.siteCodePlan = siteCodePlan;
}
public String getSiteCodePlan()
{
return this.siteCodePlan;
}
public void setSiteCodeCust(String siteCode)
{
this.siteCodeCust = siteCode;
}
public String getSiteCodeCust()
{
return this.siteCodeCust;
}
public void setBatchQtyType(String batchQtyType)
{
this.batchQtyType = batchQtyType;
}
public String getBatchQtyType()
{
return this.batchQtyType;
}
public void setMinOrderQty(double minOrderQty)
{
this.minOrderQty = minOrderQty;
}
public double getMinOrderQty()
{
return this.minOrderQty;
}
public void setMaxStkDay(int maxStkDay)
{
this.maxStkDay = maxStkDay;
}
public int getMaxStkDay()
{
return this.maxStkDay;
}
public void setMaxQty(double maxQty)
{
this.maxQty = maxQty;
}
public double getMaxQty()
{
return this.maxQty;
}
public void setOrderOpt(String orderOpt)
{
this.orderOpt = orderOpt;
}
public String getOrderOpt()
{
return this.orderOpt;
}
public void setYieldPerc(double yieldPerc)
{
this.yieldPerc = yieldPerc;
}
public double getYieldPerc()
{
return this.yieldPerc;
}
public void setMasterSch(String masterSch)
{
this.masterSch = masterSch;
}
public String getMasterSch()
{
return this.masterSch;
}
public void setMfgLeadTime(int mfgLeadTime)
{
this.mfgLeadTime = mfgLeadTime;
}
public int getMfgLeadTime()
{
return this.mfgLeadTime;
}
public void setMinPlanPerc(double minPlanPerc)
{
this.minPlanPerc = minPlanPerc;
}
public double getMinPlanPerc()
{
return this.minPlanPerc;
}
public void setBatchQty(double qty)
{
this.batchQty = qty;
}
public double getBatchQty()
{
return this.batchQty;
}
public String toString()
{
return siteCode+":"+itemCode;
}
public ArrayList getTimeMrpList()
{
return this.timeMRPArr;
}
public void setIndependentDemand(java.sql.Timestamp dueDate, double demand)
{
//this.independentDemand += demand;
updateIndependentDemand(dueDate, demand);
}
/*public double getIndependentDemand()
{
return this.independentDemand;
}*/
// 22/06/10 manoharan mfg lead time based on batch size
public void setMfgLeadBasis(String mfgLeadBasis)
{
this.mfgLeadBasis = mfgLeadBasis;
}
public String getMfgLeadBasis()
{
return this.mfgLeadBasis;
}
public void setBatchSizeLead(double batchSizeLead)
{
this.batchSizeLead = batchSizeLead;
}
public double getBatchSizeLead()
{
return this.batchSizeLead;
}
// end 22/06/10 manoharan
//added by sabyasachi 17-03-11
public void setSaleOrder(String saleOrder)
{
this.saleOrder = saleOrder;
}
public void setLineNo(String lineNo)
{
this.lineNo = lineNo;
}
public String getSaleOrder()
{
return this.saleOrder;
}
public String getLineNo()
{
return this.lineNo;
}
//end added by sabyasachi 17-03-11
/*public void setDetMap(HashMap<String, ADPElement> detMap)
{
this.detMap=detMap;
}
public HashMap<String, ADPElement> getDetMap()
{
return this.detMap;
}*/
public void setDetList(ArrayList<HashMap<String, ADPElement>> detList)
{
this.detList=detList;
}
public ArrayList<HashMap<String, ADPElement>> getDetList()
{
return this.detList;
}
public void setRefId(String refId)
{
this.refId=refId;
}
public String getRefId()
{
return this.refId;
}
public void setDetDemand(String detDemand)
{
this.detDemand=detDemand;
}
public String getDetDemand()
{
return this.detDemand;
}
//Changes made by Gulzar on 4/18/2012
public void setPendingPO(java.sql.Timestamp dueDate, double pendPOQty)
{
this.pendPOQty += pendPOQty;
updateTimeMrp(dueDate, 0,0, pendPOQty,0);
}
public double getPendingPO()
{
return this.pendPOQty;
}
public void setPendingDO(java.sql.Timestamp dueDate, double pendDOQty)
{
this.pendDOQty += pendDOQty;
updateTimeMrp(dueDate, 0,0, pendDOQty,0);
}
public double getPendingDO()
{
return this.pendDOQty;
}
public void setPendingIndent(java.sql.Timestamp dueDate, double pendIndQty)
{
this.pendIndQty += pendIndQty;
updateTimeMrp(dueDate, 0,0, pendIndQty,0);
}
public double getPendingIndent()
{
return this.pendIndQty;
}
public void setPendingDR(java.sql.Timestamp dueDate, double pendDRQty)
{
this.pendDRQty += pendDRQty;
updateTimeMrp(dueDate, 0,0, pendDRQty,0);
}
public double getPendingDR()
{
return this.pendDRQty;
}
//End changes by Gulzar on 4/18/2012
//Added by Manoj dtd 11/03/2014
public void setEmpCodePlan(String code)
{
this.empCodePlan = code;
}
public String getEmpCodePlan()
{
return this.empCodePlan;
}
//End Manoj dtd 11/03/2014
//Manoj dtd 30/04/2014 to check whether Original/Alternate item
public void setOriginalOrAltitem(String originalOrAltitem)
{
this.originalOrAltitem = originalOrAltitem;
}
public String getOriginalOrAltitem()
{
return this.originalOrAltitem;
}
//added by cpatil on 03/05/14 start
public void setItemCodeParent(String itemCodeParent)
{
this.itemCodeParent = itemCodeParent;
}
public String getItemCodeParent()
{
return this.itemCodeParent;
}
//added by cpatil on 03/05/14 end
public void setGrossWeight(double grossWeight)
{
this.grossWeight = grossWeight;
}
public double getGrossWeight()
{
return this.grossWeight;
}
//private void updateTimeMrp(java.sql.Timestamp dueDate, double demand, double supply, double stockQty, double othSupply, String saleOrder, String lineNo)
private void updateTimeMrp(java.sql.Timestamp dueDate, double demand, double supply, double stockQty, double othSupply)
{
String errString = "";
TimeMRP timeMRP = null;
genericUtility = GenericUtility.getInstance();
int timeEle = -1, ctr;
SimpleDateFormat sdt=new SimpleDateFormat("yyyy-MM-dd");
dueDate = java.sql.Timestamp.valueOf(sdt.format(dueDate) + " 00:00:00.000");
System.out.println("618---timeMRPArr.size() "+timeMRPArr.size() +"----"+dueDate+"---"+demand+"----"+supply+"----"+stockQty);
try
{
timeEle = -1;
if (timeMRPArr.size() > 0)
{
for (ctr = 0; ctr < timeMRPArr.size(); ctr++)
{
timeMRP = (TimeMRP)timeMRPArr.get(ctr);
//if (timeMRP.getDueDate() != null && timeMRP.getSaleOrder().equals(saleOrder) && timeMRP.getLineNo().equals(lineNo))
System.out.println("772--timeMRP.getDueDate()["+timeMRP.getDueDate()+"]");
if (timeMRP.getDueDate() != null)
{
if (timeMRP.getDueDate().equals(dueDate))
{
timeEle = ctr;
break;
}
}
}
}
System.out.println("637---timeEle---"+timeEle);
if (timeEle == -1)
{
timeMRP = new TimeMRP();
timeMRP.setDueDate(dueDate);
//added by sabyasachi 29.03.2011
//timeMRP.setDemand(demand,saleOrder,lineNo);
System.out.println("@@@@@@@@@@@ timeMRP -1 setdemand["+demand+"]");
timeMRP.setDemand(demand);
//end added by sabyasachi 29.03.2011
timeMRP.setSupply(supply);
// 12/04/10 manoharan MF90BHU001
timeMRP.setStockQty(stockQty);
timeMRP.setOthSupply(othSupply);
// end 12/04/10 manoharan MF90BHU001
this.timeMRPArr.add(timeMRP);
}
else
{
timeMRP = (TimeMRP)this.timeMRPArr.get(timeEle);
//added by sabyasachi 29.03.2011
//timeMRP.setDemand(demand,saleOrder,lineNo);
System.out.println("before setDemand() [" + demand + "] supply [" + supply + "]" );
timeMRP.setDemand(demand);
//end added by sabyasachi 29.03.2011
timeMRP.setSupply(supply);
System.out.println("after setSupply()" );
// 12/04/10 manoharan MF90BHU001
timeMRP.setStockQty(stockQty);
timeMRP.setOthSupply(othSupply);
// end 12/04/10 manoharan MF90BHU001
//timeMRP.setSaleOrder(saleOrder);
//timeMRP.setLineNo(lineNo);
this.timeMRPArr.set(timeEle,timeMRP);
}
System.out.println("before updateRunningDemandSupply()" );
updateRunningDemandSupply(dueDate);
System.out.println("after updateRunningDemandSupply()" );
}
catch(Exception e)
{
System.out.println("Exception :adpeLEMENT : updateTimeMrp(Date, supply, demand):...." + e.getMessage() + ":");
errString = genericUtility.createErrorString(e);
e.printStackTrace();
errString = e.getMessage();
}
}
private void updateRunningDemandSupply(java.sql.Timestamp dueDate)
{
int index = 0;
double runningDemand = 0;
double runningSupply = 0;
double runningPlanSupply = 0;
double planSupply = 0;
String errString = null;
TimeMRP timeMRP = null;
try
{
for (int ctr = 0; ctr < timeMRPArr.size(); ctr++)
{
timeMRP = (TimeMRP)timeMRPArr.get(ctr);
if (timeMRP.getDueDate().equals(dueDate))
{
index = ctr;
break;
}
runningDemand = runningDemand + timeMRP.getDemand();
runningSupply = runningSupply + timeMRP.getSupply();
// 10-04-2006 manoharan
runningPlanSupply = runningPlanSupply + timeMRP.getPlanSupply();
// end 10-04-2006 manoharan
}
for (int ctr = index; ctr < timeMRPArr.size(); ctr++)
{
timeMRP = (TimeMRP)timeMRPArr.get(ctr);
runningDemand = runningDemand + timeMRP.getDemand();
//runningSupply = runningSupply + timeMRP.getSupply();
runningSupply = runningSupply + timeMRP.getSupply();
timeMRP.setRunningDemand(runningDemand);
timeMRP.setRunningSupply(runningSupply);
// 10-04-2006 manoharan
planSupply = timeMRP.getPlanSupply();
runningPlanSupply = runningPlanSupply + planSupply;
timeMRP.setRunningPlanSupply(runningPlanSupply);
// end 10-04-2006 manoharan
timeMRPArr.set(ctr, timeMRP);
}
}
catch(Exception e)
{
System.out.println("Exception :RunMRPPrcEJB : updateRunningDemandSupply(Timestamp Date):...." + e.getMessage() + ":");
errString = genericUtility.createErrorString(e);
e.printStackTrace();
errString = e.getMessage();
}
}
@Override
protected Object clone() throws CloneNotSupportedException {
return super.clone();
}
private void updateIndependentDemand(java.sql.Timestamp dueDate, double demand)
{
String errString = "";
TimeMRP timeMRP = null;
genericUtility = GenericUtility.getInstance();
int timeEle = -1, ctr;
SimpleDateFormat sdt=new SimpleDateFormat("yyyy-MM-dd");
dueDate = java.sql.Timestamp.valueOf(sdt.format(dueDate) + " 00:00:00.000");
try
{
if (timeMRPArr.size() > 0)
{
for (ctr = 0; ctr < timeMRPArr.size(); ctr++)
{
timeMRP = (TimeMRP)timeMRPArr.get(ctr);
if (timeMRP.getDueDate() != null)
{
if (timeMRP.getDueDate().equals(dueDate))
{
timeEle = ctr;
break;
}
}
}
}
if (timeEle == -1)
{
timeMRP = new TimeMRP();
timeMRP.setDueDate(dueDate);
timeMRP.setIndependentDemand(demand);
this.timeMRPArr.add(timeMRP);
}
else
{
timeMRP = (TimeMRP)this.timeMRPArr.get(timeEle);
timeMRP.setIndependentDemand(demand);
this.timeMRPArr.set(timeEle,timeMRP);
}
}
catch(Exception e)
{
System.out.println("Exception :adpeLEMENT : updateTimeMrp(Date, supply, demand):...." + e.getMessage() + ":");
errString = genericUtility.createErrorString(e);
e.printStackTrace();
errString = e.getMessage();
}
}
package ibase.webitm.ejb.mfg;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
//import ibase.webitm.utility.ITMException;
import ibase.webitm.utility.GenericUtility;
import ibase.webitm.utility.ITMException;
//import java.sql.Timestamp;
import java.text.SimpleDateFormat;
class ADPElement implements Cloneable
{
private String itemCode;
private String siteCode;
private String routeCode;
private String suppSour;
private String bomCode;
private String itemSchedule;
private String itemStru;
private String siteCodeSupp;
private String siteCodeCust;
private String siteCodePlan;
private String orderOpt;
private String batchQtyType;
private String masterSch;
private String unit;
private String itemDescr;
private String aprCode;
private String packCode;
private String empCodePur;
private String suppCodePref;
private String acctCodePh;
private String cctrCodePh;
private String acctCodeWp;
private String cctrCodeWp;
private String itemSer;
private String mfgType;
private double minQty = 0;
private double reoQty = 0;
private double demand = 0;
private double supply = 0;
private double planDemand = 0;
private double planSupply = 0;
// 12/04/10 manoharan MF90BHU001
private double stockQty = 0;
private double othSupply = 0;
// end 12/04/10 manoharan MF90BHU001
private double minOrderQty = 0;
private double integralQty = 0;
private double maxQty = 0;
private double minimumQty = 0;
private double reorderQty = 0;
private double yieldPerc = 100;
private double minPlanPerc = 0;
private double batchQty = 0;
private double purcRate = 0;
private double qtStk = 0;//Added by chandrashekar 0n 11-08-14
private double ordDemand = 0;
private int days = 0;
private int purLeadTime = 0;
private int qcLeadTime = 0;
private int mfgLeadTime = 0;
private int maxStkDay = 0;
private int minStkDay = 0;
private ArrayList timeMRPArr;
transient GenericUtility genericUtility = null;
// 22/06/10 manoharan mfg lead time based on batch size
private String mfgLeadBasis = "F";
private double batchSizeLead = 0;
// end 22/06/10 manoharan
//Variables declared by gulzar on 4/18/2012
private double pendPOQty = 0;
private double pendDOQty = 0;
private double pendIndQty = 0;
private double pendDRQty = 0;
//End changes by gulzar on 4/18/2012
//sabyasachi 17-03-2011
private String saleOrder;
private String lineNo;
private String refId;
private String detDemand;
//end sabyasachi 17-03-2011
//Added by manoj dtd 31/10/2013 to store Detail level trace hainv key=tran_id@tran_ser
//private HashMap<String, ADPElement> detMap=new HashMap<String, ADPElement>();
private ArrayList<HashMap<String, ADPElement>> detList=new ArrayList<HashMap<String, ADPElement>>();
private String empCodePlan;//Manoj dtd 11/03/2014
private String originalOrAltitem;//Manoj dtd 30/04/2014 to check whether Original/Alternate item
private String itemCodeParent;//added by cpatil on 03/05/14
private String bomCodeParent="";
private HashMap bomSet = null;
private ArrayList<String> orderList=new ArrayList<String>();
private double soDemand=0;
private double grossWeight = 0;
private String altitemPerc;
private double reorderLevel=0;
private double reordPlanQty=0;
public void setDemand(double demand)
{
this.demand=demand;
}
/*public double getDemand()
{
return this.demand;
}*/
public void setSupply(double supply)
{
this.supply=supply;
}
/*public double getSupply()
{
return this.supply;
}*/
public double getReordPlanQty()
{
return this.reordPlanQty;
}
/*public double getDemand()
{
return this.demand;
}*/
public void setReordPlanQty(double reordPlanQty)
{
this.reordPlanQty=reordPlanQty;
}
public void SetTimeMRPArr(ArrayList timeMRPArr)
{
this.timeMRPArr=timeMRPArr;
}
public ArrayList<TimeMRP> getTimeMRPArr()
{
return this.timeMRPArr;
}
public void setReorderLevel(double reorderLevel)
{
this.reorderLevel=reorderLevel;
}
public double getReorderLevel()
{
return this.reorderLevel;
}
public void setAltitemPerc(String altitemPerc)
{
this.altitemPerc=altitemPerc;
}
public String getAltitemPerc()
{
return this.altitemPerc;
}
public ArrayList<String> getOrderList()
{
return this.orderList;
}
public void setOrderList(ArrayList<String> orderList)
{
this.orderList=orderList;
}
public void setbomSet(HashMap bomCode) //aded by cpatil on 09/06/14
{
this.bomSet = bomCode ;
}
public HashMap getbomSet()
{
return this.bomSet;
}
public ADPElement()
{
//System.out.println("New ADPElement Created");
this.timeMRPArr = new ArrayList();
this.saleOrder = " ";
this.lineNo = " ";
}
public void setItemCode(String itemCode)
{
//itemCode = itemCode.trim() + " ";
//itemCode = itemCode.substring(0,9);
this.itemCode = itemCode;
}
public String getItemCode()
{
return this.itemCode;
}
public void setSiteCode(String siteCode)
{
//siteCode = siteCode.trim() + " ";
//siteCode = siteCode.substring(0,4);
this.siteCode = siteCode;
}
public String getSiteCode()
{
return this.siteCode;
}
public void setUnit(String uom)
{
this.unit = uom;
}
public String getUnit()
{
return this.unit;
}
public void setItemDescr(String descr)
{
this.itemDescr = descr;
}
public String getItemDescr()
{
return this.itemDescr;
}
public void setItemSer(String code)
{
this.itemSer = code;
}
public String getItemSer()
{
return this.itemSer;
}
public void setAprCode(String code)
{
this.aprCode = code;
}
public String getAprCode()
{
return this.aprCode;
}
public void setPackCode(String code)
{
this.packCode = code;
}
public String getPackCode()
{
return this.packCode;
}
public void setEmpCodePur(String code)
{
this.empCodePur = code;
}
public String getEmpCodePur()
{
return this.empCodePur;
}
public void setSuppCodePref(String code)
{
this.suppCodePref = code;
}
public String getSuppCodePref()
{
return this.suppCodePref;
}
public void setAcctCodePh(String code)
{
this.acctCodePh = code;
}
public String getAcctCodePh()
{
return this.acctCodePh;
}
public void setCctrCodePh(String code)
{
this.cctrCodePh = code;
}
public String getCctrCodePh()
{
return this.cctrCodePh;
}
public void setAcctCodeWp(String code)
{
this.acctCodeWp = code;
}
public String getAcctCodeWp()
{
return this.acctCodeWp;
}
public void setCctrCodeWp(String code)
{
this.cctrCodeWp = code;
}
public String getCctrCodeWp()
{
return this.cctrCodeWp;
}
public void setMfgType(String code)
{
this.mfgType = code;
}
public String getMfgType()
{
return this.mfgType;
}
public void setPurcRate(double rate)
{
this.purcRate = rate;
}
public double getPurcRate()
{
return this.purcRate;
}
public double getQtStk() {
return qtStk;
}
public void setSoDemand(double soDemand) {
this.soDemand = soDemand;
}
public double getSoDemand() {
return soDemand;
}
public void setQtStk(double qtStk) {
this.qtStk = qtStk;
}
//changed method arguments by sabyasachi 29-03-2011
public void setDemand(java.sql.Timestamp dueDate, double demand, String saleOrder, String itemCode) throws ITMException, Exception
//public void setDemand(java.sql.Timestamp dueDate, double demand)
{
System.out.println("Calling setDemand() for saleOrder["+saleOrder+"]itemCode["+itemCode+"]this.refId["+this.refId+"]");
this.demand += demand;
//this.saleOrder = saleOrder;//Uncommented by manoj dtd 25/12/2014
//this.lineNo = lineNo;//Uncommented by manoj dtd 25/12/2014
System.out.println("this.refId---"+this.refId);
System.out.println("saleOrder---"+saleOrder);
System.out.println("demand---["+demand+"]");
//Commented by manoj dtd 25/12/2014
String dueDateStr="";
genericUtility = GenericUtility.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
if( dueDate != null)
{
dueDateStr = sdf.format(dueDate);
System.out.println("@@@@@ dueDateStr["+dueDateStr+"]");
}
if(saleOrder!=null && saleOrder.trim().length()>0)
{
if(this.refId==null ||this.refId.trim().length()==0)
this.refId=saleOrder+"@"+itemCode+"@"+demand+"@"+dueDateStr;
else
this.refId+="~"+saleOrder+"@"+itemCode+"@"+demand+"@"+dueDateStr;
}
//updateTimeMrp(dueDate, demand, 0, 0, 0,saleOrder,lineNo);
updateTimeMrp(dueDate, demand, 0, 0, 0);
}
public void setDemand(java.sql.Timestamp dueDate, double demand, String saleOrder, String lineNo,boolean isDetailReq)
//public void setDemand(java.sql.Timestamp dueDate, double demand)
{
System.out.println("Calling setDemand() for saleOrder["+saleOrder+"]lineNo["+lineNo+"]this.refId["+this.refId+"]");
if(isDetailReq)
{
this.demand+= demand;
this.ordDemand=demand;
}
//this.saleOrder = saleOrder;
//this.lineNo = lineNo;
System.out.println("this.refId---"+this.refId);
System.out.println("saleOrder---"+saleOrder);
System.out.println("demand---["+demand+"]");
if(saleOrder!=null && saleOrder.trim().length()>0)
{
if(this.refId==null ||this.refId.trim().length()==0)
this.refId=saleOrder+"@"+lineNo+"@"+demand;
else
this.refId+="#"+saleOrder+"@"+lineNo+"@"+demand;
}
//updateTimeMrp(dueDate, demand, 0, 0, 0,saleOrder,lineNo);
updateTimeMrp(dueDate, demand, 0, 0, 0);
}
//changed method arguments by sabyasachi 29-03-2011 end
public double getDemand()
{
return this.demand;
}
public void setSupply(java.sql.Timestamp dueDate, double supply)
{
this.supply += supply;
System.out.println("@@@@@020415:::this.reorderLevel["+this.reorderLevel+"]");
//updateTimeMrp(dueDate, 0, supply, 0, 0," "," ");
/*if(this.reorderLevel>0)
{
updateTimeMrp(dueDate, 0, supply, 0, 0,reorderLevel);
}
else
{*/
updateTimeMrp(dueDate, 0, supply, 0, 0);
//}
}
public double getSupply()
{
return this.supply;
}
// 12/04/10 manoharan MF90BHU001
public void setStockQty(java.sql.Timestamp dueDate, double stockQty)
{
this.stockQty += stockQty;
//updateTimeMrp(dueDate, 0,0, stockQty,0," "," ");
updateTimeMrp(dueDate, 0,0, stockQty,0);
}
public double getStockQty()
{
return this.stockQty;
}
public void setOthSupply(java.sql.Timestamp dueDate, double othSupply)
{
this.othSupply += othSupply;
//updateTimeMrp(dueDate, 0,0, 0, othSupply," "," ");
updateTimeMrp(dueDate, 0,0, 0, othSupply);
}
public double getOthSupply()
{
return this.othSupply;
}
// end 12/04/10 manoharan MF90BHU001
public void setPlanSupply(java.sql.Timestamp dueDate, double supply)
{
this.planSupply += supply;
//updateTimeMrp(dueDate, 0, supply, 0, 0," "," ");
updateTimeMrp(dueDate, 0, supply, 0, 0);
}
public double getPlanSupply()
{
return this.planSupply;
}
//added by dharmendra on 28th-dec
public void setSuppSour(String suppSour)
{
this.suppSour = suppSour;
}
public String getSuppSour()
{
return this.suppSour;
}
public void setBomCode(String bomCode)
{
this.bomCode = bomCode;
}
public String getBomCode() // setBomCodeParent
{
return this.bomCode;
}
public void setBomCodeParent(String bomCodeParent)
{
if (this.bomCodeParent == null || "null".equals(this.bomCodeParent) || this.bomCodeParent.trim().length() == 0)
{
this.bomCodeParent = bomCodeParent;
}
}
public String getBomCodeParent() // setBomCodeParent
{
return this.bomCodeParent;
}
public void setRouteCode(String routeCode)
{
this.routeCode = routeCode;
}
public String getRouteCode()
{
return this.routeCode;
}
public void setMinQty(double minQty)
{
this.minQty = minQty;
}
public double getMinQty()
{
return this.minQty;
}
public void setMinStkDay(int minStkDay)
{
this.minStkDay = minStkDay;
}
public int getMinStkDay()
{
return this.minStkDay;
}
public void setReoQty(double reoQty)
{
this.reoQty = reoQty;
}
public double getReoQty()
{
return this.reoQty;
}
public void setPurLeadTime(int purLeadTime)
{
this.purLeadTime = purLeadTime;
}
public int getPurLeadTime()
{
return this.purLeadTime;
}
public void setQcLeadTime(int qcLeadTime)
{
this.qcLeadTime = qcLeadTime;
}
public int getQcLeadTime()
{
return this.qcLeadTime;
}
public void setIntegralQty(double integralQty)
{
this.integralQty = integralQty;
}
public double getIntegralQty()
{
return this.integralQty;
}
public void setItemStru(String itemStru)
{
this.itemStru = itemStru;
}
public String getItemStru()
{
return this.itemStru;
}
public void setSiteCodeSupp(String siteCodeSupp)
{
this.siteCodeSupp = siteCodeSupp;
}
public String getSiteCodeSupp()
{
return this.siteCodeSupp;
}
public void setSiteCodePlan(String siteCodePlan)
{
this.siteCodePlan = siteCodePlan;
}
public String getSiteCodePlan()
{
return this.siteCodePlan;
}
public void setSiteCodeCust(String siteCode)
{
this.siteCodeCust = siteCode;
}
public String getSiteCodeCust()
{
return this.siteCodeCust;
}
public void setBatchQtyType(String batchQtyType)
{
this.batchQtyType = batchQtyType;
}
public String getBatchQtyType()
{
return this.batchQtyType;
}
public void setMinOrderQty(double minOrderQty)
{
this.minOrderQty = minOrderQty;
}
public double getMinOrderQty()
{
return this.minOrderQty;
}
public void setMaxStkDay(int maxStkDay)
{
this.maxStkDay = maxStkDay;
}
public int getMaxStkDay()
{
return this.maxStkDay;
}
public void setMaxQty(double maxQty)
{
this.maxQty = maxQty;
}
public double getMaxQty()
{
return this.maxQty;
}
public void setOrderOpt(String orderOpt)
{
this.orderOpt = orderOpt;
}
public String getOrderOpt()
{
return this.orderOpt;
}
public void setYieldPerc(double yieldPerc)
{
this.yieldPerc = yieldPerc;
}
public double getYieldPerc()
{
return this.yieldPerc;
}
public void setMasterSch(String masterSch)
{
this.masterSch = masterSch;
}
public String getMasterSch()
{
return this.masterSch;
}
public void setMfgLeadTime(int mfgLeadTime)
{
this.mfgLeadTime = mfgLeadTime;
}
public int getMfgLeadTime()
{
return this.mfgLeadTime;
}
public void setMinPlanPerc(double minPlanPerc)
{
this.minPlanPerc = minPlanPerc;
}
public double getMinPlanPerc()
{
return this.minPlanPerc;
}
public void setBatchQty(double qty)
{
this.batchQty = qty;
}
public double getBatchQty()
{
return this.batchQty;
}
public String toString()
{
return siteCode+":"+itemCode;
}
public ArrayList getTimeMrpList()
{
return this.timeMRPArr;
}
public void setIndependentDemand(java.sql.Timestamp dueDate, double demand)
{
//this.independentDemand += demand;
updateIndependentDemand(dueDate, demand);
}
/*public double getIndependentDemand()
{
return this.independentDemand;
}*/
// 22/06/10 manoharan mfg lead time based on batch size
public void setMfgLeadBasis(String mfgLeadBasis)
{
this.mfgLeadBasis = mfgLeadBasis;
}
public String getMfgLeadBasis()
{
return this.mfgLeadBasis;
}
public void setBatchSizeLead(double batchSizeLead)
{
this.batchSizeLead = batchSizeLead;
}
public double getBatchSizeLead()
{
return this.batchSizeLead;
}
// end 22/06/10 manoharan
//added by sabyasachi 17-03-11
public void setSaleOrder(String saleOrder)
{
this.saleOrder = saleOrder;
}
public void setLineNo(String lineNo)
{
this.lineNo = lineNo;
}
public String getSaleOrder()
{
return this.saleOrder;
}
public String getLineNo()
{
return this.lineNo;
}
//end added by sabyasachi 17-03-11
/*public void setDetMap(HashMap<String, ADPElement> detMap)
{
this.detMap=detMap;
}
public HashMap<String, ADPElement> getDetMap()
{
return this.detMap;
}*/
public void setDetList(ArrayList<HashMap<String, ADPElement>> detList)
{
this.detList=detList;
}
public ArrayList<HashMap<String, ADPElement>> getDetList()
{
return this.detList;
}
public void setRefId(String refId)
{
this.refId=refId;
}
public String getRefId()
{
return this.refId;
}
public void setDetDemand(String detDemand)
{
this.detDemand=detDemand;
}
public String getDetDemand()
{
return this.detDemand;
}
//Changes made by Gulzar on 4/18/2012
public void setPendingPO(java.sql.Timestamp dueDate, double pendPOQty)
{
this.pendPOQty += pendPOQty;
updateTimeMrp(dueDate, 0,0, pendPOQty,0);
}
public double getPendingPO()
{
return this.pendPOQty;
}
public void setPendingDO(java.sql.Timestamp dueDate, double pendDOQty)
{
this.pendDOQty += pendDOQty;
updateTimeMrp(dueDate, 0,0, pendDOQty,0);
}
public double getPendingDO()
{
return this.pendDOQty;
}
public void setPendingIndent(java.sql.Timestamp dueDate, double pendIndQty)
{
this.pendIndQty += pendIndQty;
updateTimeMrp(dueDate, 0,0, pendIndQty,0);
}
public double getPendingIndent()
{
return this.pendIndQty;
}
public void setPendingDR(java.sql.Timestamp dueDate, double pendDRQty)
{
this.pendDRQty += pendDRQty;
updateTimeMrp(dueDate, 0,0, pendDRQty,0);
}
public double getPendingDR()
{
return this.pendDRQty;
}
//End changes by Gulzar on 4/18/2012
//Added by Manoj dtd 11/03/2014
public void setEmpCodePlan(String code)
{
this.empCodePlan = code;
}
public String getEmpCodePlan()
{
return this.empCodePlan;
}
//End Manoj dtd 11/03/2014
//Manoj dtd 30/04/2014 to check whether Original/Alternate item
public void setOriginalOrAltitem(String originalOrAltitem)
{
this.originalOrAltitem = originalOrAltitem;
}
public String getOriginalOrAltitem()
{
return this.originalOrAltitem;
}
//added by cpatil on 03/05/14 start
public void setItemCodeParent(String itemCodeParent)
{
this.itemCodeParent = itemCodeParent;
}
public String getItemCodeParent()
{
return this.itemCodeParent;
}
//added by cpatil on 03/05/14 end
public void setGrossWeight(double grossWeight)
{
this.grossWeight = grossWeight;
}
public double getGrossWeight()
{
return this.grossWeight;
}
//private void updateTimeMrp(java.sql.Timestamp dueDate, double demand, double supply, double stockQty, double othSupply, String saleOrder, String lineNo)
private void updateTimeMrp(java.sql.Timestamp dueDate, double demand, double supply, double stockQty, double othSupply)
{
String errString = "";
TimeMRP timeMRP = null;
genericUtility = GenericUtility.getInstance();
int timeEle = -1, ctr;
SimpleDateFormat sdt=new SimpleDateFormat("yyyy-MM-dd");
dueDate = java.sql.Timestamp.valueOf(sdt.format(dueDate) + " 00:00:00.000");
System.out.println("618---timeMRPArr.size() "+timeMRPArr.size() +"----"+dueDate+"---"+demand+"----"+supply+"----"+stockQty);
try
{
timeEle = -1;
if (timeMRPArr.size() > 0)
{
for (ctr = 0; ctr < timeMRPArr.size(); ctr++)
{
timeMRP = (TimeMRP)timeMRPArr.get(ctr);
//if (timeMRP.getDueDate() != null && timeMRP.getSaleOrder().equals(saleOrder) && timeMRP.getLineNo().equals(lineNo))
System.out.println("772--timeMRP.getDueDate()["+timeMRP.getDueDate()+"]");
if (timeMRP.getDueDate() != null)
{
if (timeMRP.getDueDate().equals(dueDate))
{
timeEle = ctr;
break;
}
}
}
}
System.out.println("637---timeEle---"+timeEle);
if (timeEle == -1)
{
timeMRP = new TimeMRP();
timeMRP.setDueDate(dueDate);
//added by sabyasachi 29.03.2011
//timeMRP.setDemand(demand,saleOrder,lineNo);
System.out.println("@@@@@@@@@@@ timeMRP -1 setdemand["+demand+"]");
timeMRP.setDemand(demand);
//end added by sabyasachi 29.03.2011
timeMRP.setSupply(supply);
// 12/04/10 manoharan MF90BHU001
timeMRP.setStockQty(stockQty);
timeMRP.setOthSupply(othSupply);
// end 12/04/10 manoharan MF90BHU001
this.timeMRPArr.add(timeMRP);
}
else
{
timeMRP = (TimeMRP)this.timeMRPArr.get(timeEle);
//added by sabyasachi 29.03.2011
//timeMRP.setDemand(demand,saleOrder,lineNo);
System.out.println("before setDemand() [" + demand + "] supply [" + supply + "]" );
timeMRP.setDemand(demand);
//end added by sabyasachi 29.03.2011
timeMRP.setSupply(supply);
System.out.println("after setSupply()" );
// 12/04/10 manoharan MF90BHU001
timeMRP.setStockQty(stockQty);
timeMRP.setOthSupply(othSupply);
// end 12/04/10 manoharan MF90BHU001
//timeMRP.setSaleOrder(saleOrder);
//timeMRP.setLineNo(lineNo);
this.timeMRPArr.set(timeEle,timeMRP);
}
System.out.println("before updateRunningDemandSupply()" );
updateRunningDemandSupply(dueDate);
System.out.println("after updateRunningDemandSupply()" );
}
catch(Exception e)
{
System.out.println("Exception :adpeLEMENT : updateTimeMrp(Date, supply, demand):...." + e.getMessage() + ":");
errString = genericUtility.createErrorString(e);
e.printStackTrace();
errString = e.getMessage();
}
}
private void updateTimeMrp(java.sql.Timestamp dueDate, double demand, double supply, double stockQty, double othSupply,double reorderLevel)
{
String errString = "";
TimeMRP timeMRP = null;
genericUtility = GenericUtility.getInstance();
int timeEle = -1, ctr;
SimpleDateFormat sdt=new SimpleDateFormat("yyyy-MM-dd");
dueDate = java.sql.Timestamp.valueOf(sdt.format(dueDate) + " 00:00:00.000");
System.out.println("618---timeMRPArr.size() "+timeMRPArr.size() +"----"+dueDate+"---"+demand+"----"+supply+"----"+stockQty);
try
{
timeEle = -1;
if (timeMRPArr.size() > 0)
{
for (ctr = 0; ctr < timeMRPArr.size(); ctr++)
{
timeMRP = (TimeMRP)timeMRPArr.get(ctr);
//if (timeMRP.getDueDate() != null && timeMRP.getSaleOrder().equals(saleOrder) && timeMRP.getLineNo().equals(lineNo))
System.out.println("772--timeMRP.getDueDate()["+timeMRP.getDueDate()+"]");
if (timeMRP.getDueDate() != null)
{
if (timeMRP.getDueDate().equals(dueDate))
{
timeEle = ctr;
break;
}
}
}
}
System.out.println("637---timeEle---"+timeEle);
if (timeEle == -1)
{
timeMRP = new TimeMRP();
timeMRP.setDueDate(dueDate);
//added by sabyasachi 29.03.2011
//timeMRP.setDemand(demand,saleOrder,lineNo);
System.out.println("@@@@@@@@@@@ timeMRP -1 setdemand["+demand+"]");
if( demand > 0 )
{
System.out.println("@@@@@010415:::demand["+demand+"]supply["+supply+"]-reorderLevel["+reorderLevel+"]");
timeMRP.setDemand( demand - supply + reorderLevel ) ;
System.out.println("@@@@@010415:::tmp.getDemand()["+timeMRP.getDemand()+"]");
//tmp.setRunningDemand(reorderLevel);
timeMRP.setRunningDemand( demand - supply + reorderLevel );
System.out.println("@@@@@010415:::tmp.getRunningDemand()["+timeMRP.getRunningDemand()+"]");
}
// timeMRP.setDemand(demand);
//end added by sabyasachi 29.03.2011
timeMRP.setSupply(supply);
// 12/04/10 manoharan MF90BHU001
timeMRP.setStockQty(stockQty);
timeMRP.setOthSupply(othSupply);
// end 12/04/10 manoharan MF90BHU001
this.timeMRPArr.add(timeMRP);
}
else
{
timeMRP = (TimeMRP)this.timeMRPArr.get(timeEle);
//added by sabyasachi 29.03.2011
//timeMRP.setDemand(demand,saleOrder,lineNo);
System.out.println("before setDemand() [" + demand + "] supply [" + supply + "]" );
if( demand > 0 )
{
System.out.println("@@@@@010415:::demand["+demand+"]supply["+supply+"]-reorderLevel["+reorderLevel+"]");
timeMRP.setDemand( demand - supply + reorderLevel ) ;
System.out.println("@@@@@010415:::tmp.getDemand()["+timeMRP.getDemand()+"]");
//tmp.setRunningDemand(reorderLevel);
timeMRP.setRunningDemand( demand - supply + reorderLevel );
System.out.println("@@@@@010415:::tmp.getRunningDemand()["+timeMRP.getRunningDemand()+"]");
}
//timeMRP.setDemand(demand);
//end added by sabyasachi 29.03.2011
timeMRP.setSupply(supply);
System.out.println("after setSupply()" );
// 12/04/10 manoharan MF90BHU001
timeMRP.setStockQty(stockQty);
timeMRP.setOthSupply(othSupply);
// end 12/04/10 manoharan MF90BHU001
//timeMRP.setSaleOrder(saleOrder);
//timeMRP.setLineNo(lineNo);
this.timeMRPArr.set(timeEle,timeMRP);
}
System.out.println("before updateRunningDemandSupply()" );
updateRunningDemandSupply(dueDate);
System.out.println("after updateRunningDemandSupply()" );
}
catch(Exception e)
{
System.out.println("Exception :adpeLEMENT : updateTimeMrp(Date, supply, demand):...." + e.getMessage() + ":");
errString = genericUtility.createErrorString(e);
e.printStackTrace();
errString = e.getMessage();
}
}
private void updateRunningDemandSupply(java.sql.Timestamp dueDate)
{
int index = 0;
double runningDemand = 0;
double runningSupply = 0;
double runningPlanSupply = 0;
double planSupply = 0;
String errString = null;
TimeMRP timeMRP = null;
try
{
for (int ctr = 0; ctr < timeMRPArr.size(); ctr++)
{
timeMRP = (TimeMRP)timeMRPArr.get(ctr);
if (timeMRP.getDueDate().equals(dueDate))
{
index = ctr;
break;
}
runningDemand = runningDemand + timeMRP.getDemand();
runningSupply = runningSupply + timeMRP.getSupply();
// 10-04-2006 manoharan
runningPlanSupply = runningPlanSupply + timeMRP.getPlanSupply();
// end 10-04-2006 manoharan
}
for (int ctr = index; ctr < timeMRPArr.size(); ctr++)
{
timeMRP = (TimeMRP)timeMRPArr.get(ctr);
runningDemand = runningDemand + timeMRP.getDemand();
//runningSupply = runningSupply + timeMRP.getSupply();
runningSupply = runningSupply + timeMRP.getSupply();
timeMRP.setRunningDemand(runningDemand);
timeMRP.setRunningSupply(runningSupply);
// 10-04-2006 manoharan
planSupply = timeMRP.getPlanSupply();
runningPlanSupply = runningPlanSupply + planSupply;
timeMRP.setRunningPlanSupply(runningPlanSupply);
// end 10-04-2006 manoharan
timeMRPArr.set(ctr, timeMRP);
}
}
catch(Exception e)
{
System.out.println("Exception :RunMRPPrcEJB : updateRunningDemandSupply(Timestamp Date):...." + e.getMessage() + ":");
errString = genericUtility.createErrorString(e);
e.printStackTrace();
errString = e.getMessage();
}
}
@Override
protected Object clone() throws CloneNotSupportedException {
return super.clone();
}
private void updateIndependentDemand(java.sql.Timestamp dueDate, double demand)
{
String errString = "";
TimeMRP timeMRP = null;
genericUtility = GenericUtility.getInstance();
int timeEle = -1, ctr;
SimpleDateFormat sdt=new SimpleDateFormat("yyyy-MM-dd");
dueDate = java.sql.Timestamp.valueOf(sdt.format(dueDate) + " 00:00:00.000");
try
{
if (timeMRPArr.size() > 0)
{
for (ctr = 0; ctr < timeMRPArr.size(); ctr++)
{
timeMRP = (TimeMRP)timeMRPArr.get(ctr);
if (timeMRP.getDueDate() != null)
{
if (timeMRP.getDueDate().equals(dueDate))
{
timeEle = ctr;
break;
}
}
}
}
if (timeEle == -1)
{
timeMRP = new TimeMRP();
timeMRP.setDueDate(dueDate);
timeMRP.setIndependentDemand(demand);
this.timeMRPArr.add(timeMRP);
}
else
{
timeMRP = (TimeMRP)this.timeMRPArr.get(timeEle);
timeMRP.setIndependentDemand(demand);
this.timeMRPArr.set(timeEle,timeMRP);
}
}
catch(Exception e)
{
System.out.println("Exception :adpeLEMENT : updateTimeMrp(Date, supply, demand):...." + e.getMessage() + ":");
errString = genericUtility.createErrorString(e);
e.printStackTrace();
errString = e.getMessage();
}
}
}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -690,18 +690,29 @@ public class MrpWizPrsSaveBean
System.out.println("@@@@@ sorderArray.length["+sorderArray.length+"]");
for(int i=0;i<sorderArray.length;i++)
{
String tempSO=sorderArray[i];
System.out.println("@@@@@::: sorder ["+tempSO+"] updated next i["+i+"]....");
String tempSO="",tempLineNo="";
tempSO=sorderArray[i];
String sorderLineArray[]=tempSO.split(",");
System.out.println("@@@@@ sorderArray.length["+sorderArray.length+"]");
if( sorderLineArray.length > 1)
{
tempSO=sorderLineArray[0];
tempLineNo=sorderLineArray[1];
}
System.out.println("@@@@@::: sorder ["+tempSO+"]tempLineNo["+tempLineNo+"] updated next i["+i+"]....");
sql2 = " update sorder set alloc_flag = 'Y' where sale_order = ? ";
sql2 = " update sorditem set alloc_flag = 'Y' where sale_order = ? and ltrim(rtrim(line_no)) = ? ";
System.out.println("sql2 :"+sql2 );
pstmt2 = conn.prepareStatement(sql2);
pstmt2.setString(1,tempSO);
pstmt2.setString(2,tempLineNo);
int cnt2 = pstmt2.executeUpdate();
pstmt2.close();
pstmt2 = null;
System.out.println("@@@@@ cnt ["+cnt2+"]::: sorder ["+tempSO+"] alloc_flag [ Y ] updated sucessfully");
System.out.println("@@@@@ cnt ["+cnt2+"]:::sorditem:::sorder["+tempSO+"]tempLineNo["+tempLineNo+"]alloc_flag[Y]updated sucessfully");
}
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -119,7 +119,7 @@ public class RunMRPWiz extends ValidatorEJB implements RunMRPWizLocal, RunMRPWiz
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
int cnt;
//int cnt;
System.out.println("childNodeName 0. : " + childNodeName);
if (childNodeName.equals("date_to"))
{
......@@ -149,6 +149,7 @@ public class RunMRPWiz extends ValidatorEJB implements RunMRPWizLocal, RunMRPWiz
}
if (childNodeName.equals("site_code__to"))
{
if (childNode.getFirstChild() == null || genericUtility.getColumnValue("site_code__from",dom) == null)
{
errCode = "VMRPSITE1";
......@@ -165,6 +166,100 @@ public class RunMRPWiz extends ValidatorEJB implements RunMRPWizLocal, RunMRPWiz
break;
}
count = 0;
//for validate site for perticular user added on 20/03/15 urse start@@@@@@@@@
String loginId = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode");
if (siteCodeFrom != null && siteCodeFrom.trim().length() > 0)
{
sql = "SELECT COUNT(*) COUNT FROM SITE WHERE SITE_CODE = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, siteCodeFrom);
rs = pstmt.executeQuery();
if (rs.next())
{
count = rs.getInt("COUNT");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if (count == 0)
{
errCode = "VMSITEFR";
errString = getErrorString(childNodeName, errCode, userId);
break;
}
count = 0;
sql = "SELECT COUNT(*) COUNT FROM USER_SITE WHERE USER_ID = ? AND SITE_CODE= ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, loginId);
pstmt.setString(2, siteCodeFrom);
rs = pstmt.executeQuery();
if (rs.next())
{
count = rs.getInt("COUNT");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if (count == 0)
{
errCode = "INVUSRSITE";
errString = getErrorString(childNodeName, errCode, userId);
break;
}
}
if (siteCodeTo != null && siteCodeTo.trim().length() > 0)
{
sql = "SELECT COUNT(*) COUNT FROM SITE WHERE SITE_CODE = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, siteCodeTo);
rs = pstmt.executeQuery();
if (rs.next())
{
count = rs.getInt("COUNT");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if (count == 0)
{
errCode = "VMSITETO";
errString = getErrorString(childNodeName, errCode, userId);
break;
}
count=0;
sql = "SELECT COUNT(*) COUNT FROM USER_SITE WHERE USER_ID = ? AND SITE_CODE= ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, loginId);
pstmt.setString(2, siteCodeTo);
rs = pstmt.executeQuery();
if (rs.next())
{
count = rs.getInt("COUNT");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if (count == 0)
{
errCode = "INVUSRSITE";
errString = getErrorString(childNodeName, errCode, userId);
break;
}
}
// end
}
......@@ -234,7 +329,7 @@ public class RunMRPWiz extends ValidatorEJB implements RunMRPWizLocal, RunMRPWiz
String childNodeName = null;
String sql = "";
String siteCodeTo = "" , siteCodeFr = "" ,saleOrder = "" ,itemCode = "" , siteCode = "" ;
String mrpGetData = "", itemCodeList = "" , winName = "", saleOrderList="";
String mrpGetData = "", itemCodeList = "" , winName = "", saleOrderList="", soItemList = "";
StringBuffer valueXmlString = new StringBuffer();
int ctr = 0 , currentFormNo = 0 ,lineNo = 0 ,domID = 0;
java.sql.Timestamp dateTo = null ,dateFr = null;
......@@ -420,7 +515,7 @@ public class RunMRPWiz extends ValidatorEJB implements RunMRPWizLocal, RunMRPWiz
sql=" select a.sale_order,a.line_no,a.site_code,a.item_code,a.due_date,a.cust_code,a.cust_name," +
"a.quantity,a.unit,a.type,a.order_due_date , a.order_date ,a.mfg_type " +
" a.quantity,a.unit,a.type,a.order_due_date , a.order_date ,a.mfg_type " +
" from ( " +
" SELECT sorditem.sale_order as sale_order,sorditem.line_no as line_no," +
" sorditem.site_code as site_code," +
......@@ -441,7 +536,8 @@ public class RunMRPWiz extends ValidatorEJB implements RunMRPWizLocal, RunMRPWiz
//" and (sorditem.due_date >= ? ) and (sorditem.due_date <= ? )" +
" and ( case when sorder.status is null then 'P' else sorder.status end = 'P')" +
" and (sorder.cust_code = customer.cust_code )" +
" and case when sorder.alloc_flag is null then 'N' else sorder.alloc_flag end <> 'Y' " +
//" and case when sorder.alloc_flag is null then 'N' else sorder.alloc_flag end <> 'Y' " +
" and case when sorditem.alloc_flag is null then 'N' else sorditem.alloc_flag end <> 'Y' " +
" and ( siteitem.item_code = item.item_code ) and ( siteitem.site_code = sorditem.site_code ) " ;
if("order_date".equalsIgnoreCase(viewByDate))
......@@ -484,7 +580,7 @@ public class RunMRPWiz extends ValidatorEJB implements RunMRPWizLocal, RunMRPWiz
sql = sql+" and ( (mps_order.ord_date >= ? and mps_order.ord_date <= ? ) or (mps_order.due_date >= ? and mps_order.due_date <= ? ) ) ";
}
sql = sql + " ) a ";
sql = sql + " ) a where a.quantity > 0 ";
if("order_date".equalsIgnoreCase(viewByDate))
{
......@@ -616,7 +712,7 @@ public class RunMRPWiz extends ValidatorEJB implements RunMRPWizLocal, RunMRPWiz
//locGroupList = locGroupList + ",'"+saleOrder+itemCode+"@"+locGroup+"'" ;
locGroupList = locGroupList + ","+checkNull(saleOrder).trim()+"@"+checkNull(locGroup).trim()+"" ;
soItemList = soItemList + ","+saleOrder+"@"+itemCode+"" ;
}
else
{
......@@ -625,12 +721,12 @@ public class RunMRPWiz extends ValidatorEJB implements RunMRPWizLocal, RunMRPWiz
//locGroupList = "'"+saleOrder+itemCode+"@"+locGroup+"'" ;
locGroupList = ""+checkNull(saleOrder).trim()+"@"+checkNull(locGroup).trim()+"" ;
soItemList = saleOrder+"@"+itemCode ;
}
System.out.println("itemCodeList=="+itemCodeList);
System.out.println("itemCodeOnlyList=="+itemCodeOnlyList);
System.out.println("locGroupList=="+locGroupList);
System.out.println("soItemList=="+soItemList);
orderType= checkNull(genericUtility.getColumnValueFromNode( "order_type", detail2List.item(ctr1) ));
System.out.println("inside for orderType["+orderType+"]");
......@@ -690,6 +786,7 @@ public class RunMRPWiz extends ValidatorEJB implements RunMRPWizLocal, RunMRPWiz
System.out.println("@@@@@@@@:: order_type["+orderType+"]");
// xmlString.append("<site_code>").append("<![CDATA[").append(siteCode).append("]]>").append("</site_code>");
argData.append("<locGroupList>").append("<![CDATA[").append(locGroupList).append("]]>").append("</locGroupList>\r\n");
argData.append("<soItemList>").append("<![CDATA[").append(soItemList).append("]]>").append("</soItemList>\r\n");
argData.append("</Detail>");
argData.append("</Root>");
......
......@@ -29,579 +29,605 @@ import org.w3c.dom.NodeList;
@Stateless
public class WorderCampaign extends ProcessEJB implements WorderCampaignLocal, WorderCampaignRemote {
GenericUtility genericUtility = GenericUtility.getInstance();
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB();
@Override
public String getData(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException, ITMException {
System.out.println("^^^^^^^ Inside WorderCampaign -> GetData Method 1 ^^^^^^^");
Document detailDom = null;
Document headerDom = null;
String retString = "";
System.out.println("XMLSTRING ..> " + xmlString);
System.out.println("XMLSTRING2 ..> " + xmlString2);
try {
if (xmlString != null && xmlString.trim().length() != 0) {
headerDom = genericUtility.parseString(xmlString);
}
if (xmlString2 != null && xmlString2.trim().length() != 0) {
detailDom = genericUtility.parseString(xmlString2);
}
retString = getData(headerDom, detailDom, windowName, xtraParams);
} catch (Exception e) {
System.out.println("Exception WorderCampaign GetData Method 1");
e.printStackTrace();
retString = itmDBAccessEJB.getErrorString("", "", "", 1); // failed to execute
throw new ITMException(e);
}
return retString;
}
@Override
public String getData(Document headerDom, Document detailDom, String windowName, String xtraParams) throws RemoteException, ITMException {
System.out.println("===========Inside WorderCampaign -> GetData Method 2 ================");
String retString = "";
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
// Node childNode = null;
ConnDriver connDriver = null;
Connection conn = null;
PreparedStatement pStmt = null;
ResultSet rs = null;
String sql = "",workOrdType="";
String subQuery=" ";
String workOrdType1="",resultWorkOrdType="",workOrdTypeSplit="";
ITMDBAccessEJB itmDBAccessEJB = null;
boolean isError = false;
SimpleDateFormat sdf = null;
StringBuffer resultData = new StringBuffer();
boolean dataFound = false;
String siteCode = "", fromDate = "", toDate = "";
java.sql.Date fromDateDtSql = null, toDateDtSql = null;
java.util.Date fromDateDtUtil = null, toDateDtUtil = null;
String ordDate="",relDate="",dueDate="",workOrder="",tranID="",orderType="",itemCode="",status="",statDate="",unitStd="",tranMps="",
acctWp="",cctrWp="",shdscr="",lotNo="",bomCode="",phyAtt1="",phyAtt2="",phyAtt3="",phyAtt4="",phyAtt5="",phyAtt6="",
addUser="",addTerm="",addDate="",chgDate="",chgUser="",chgTerm="",valMfg="",campNo="",loginSiteCode="";
Double quantity = 0.0,currQty=0.0,conQstd=0.0,stdQty=0.0,quanMps=0.0;
try {
sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM");
conn.setAutoCommit(false);
connDriver = null;
itmDBAccessEJB = new ITMDBAccessEJB();
loginSiteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
System.out.println("loginSiteCode :"+loginSiteCode);
parentNodeList = detailDom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
for (int i = 0; i < childNodeList.getLength(); i++) {
fromDate = genericUtility.getColumnValue("date_from", headerDom);
toDate = genericUtility.getColumnValue("date_to", headerDom);
System.out.println(">>>>>>fromDate"+fromDate+">>>>D"+toDate);
System.out.println(">>>>>>>>>>MNNNN");
fromDateDtUtil = sdf.parse(fromDate);
fromDateDtSql = new java.sql.Date(fromDateDtUtil.getTime());
System.out.println(">>>>>>>>>>MNNNN>>>");
toDateDtUtil = sdf.parse(toDate);
toDateDtSql = new java.sql.Date(toDateDtUtil.getTime());
}
//Start Added by chandrashekar on 12-Feb-15
workOrdType = new MfgCommon().getEnvMfg("999999","WORK_ORD_TYPE", conn);
System.out.println("workOrdType>>>>["+workOrdType+"]");
if (workOrdType == null || "NULLFOUND".equalsIgnoreCase(workOrdType))
{
workOrdType = "";
GenericUtility genericUtility = GenericUtility.getInstance();
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB();
@Override
public String getData(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException, ITMException {
System.out.println("^^^^^^^ Inside WorderCampaign -> GetData Method 1 ^^^^^^^");
Document detailDom = null;
Document headerDom = null;
String retString = "";
System.out.println("XMLSTRING ..> " + xmlString);
System.out.println("XMLSTRING2 ..> " + xmlString2);
try {
if (xmlString != null && xmlString.trim().length() != 0) {
headerDom = genericUtility.parseString(xmlString);
}
if (xmlString2 != null && xmlString2.trim().length() != 0) {
detailDom = genericUtility.parseString(xmlString2);
}
retString = getData(headerDom, detailDom, windowName, xtraParams);
} catch (Exception e) {
System.out.println("Exception WorderCampaign GetData Method 1");
e.printStackTrace();
retString = itmDBAccessEJB.getErrorString("", "", "", 1); // failed to execute
throw new ITMException(e);
}
if(workOrdType != null && (workOrdType.trim().length() > 0))
{
String[] arrStr =workOrdType.split(",");
int len =arrStr.length;
for(int i =0;i<len;i++)
return retString;
}
@Override
public String getData(Document headerDom, Document detailDom, String windowName, String xtraParams) throws RemoteException, ITMException {
System.out.println("===========Inside WorderCampaign -> GetData Method 2 ================");
String retString = "";
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
// Node childNode = null;
ConnDriver connDriver = null;
Connection conn = null;
PreparedStatement pStmt = null;
ResultSet rs = null;
String sql = "",workOrdType="";
String subQuery=" ";
String workOrdType1="",resultWorkOrdType="",workOrdTypeSplit="";
ITMDBAccessEJB itmDBAccessEJB = null;
boolean isError = false;
SimpleDateFormat sdf = null;
StringBuffer resultData = new StringBuffer();
boolean dataFound = false;
String siteCode = "", fromDate = "", toDate = "";
java.sql.Date fromDateDtSql = null, toDateDtSql = null;
java.util.Date fromDateDtUtil = null, toDateDtUtil = null;
String ordDate="",relDate="",dueDate="",workOrder="",tranID="",orderType="",itemCode="",status="",statDate="",unitStd="",tranMps="",
acctWp="",cctrWp="",shdscr="",lotNo="",bomCode="",phyAtt1="",phyAtt2="",phyAtt3="",phyAtt4="",phyAtt5="",phyAtt6="",
addUser="",addTerm="",addDate="",chgDate="",chgUser="",chgTerm="",valMfg="",campNo="",loginSiteCode="";
Double quantity = 0.0,currQty=0.0,conQstd=0.0,stdQty=0.0,quanMps=0.0;
try {
sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM");
conn.setAutoCommit(false);
connDriver = null;
itmDBAccessEJB = new ITMDBAccessEJB();
loginSiteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
System.out.println("loginSiteCode :"+loginSiteCode);
parentNodeList = detailDom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
for (int i = 0; i < childNodeList.getLength(); i++) {
fromDate = genericUtility.getColumnValue("date_from", headerDom);
toDate = genericUtility.getColumnValue("date_to", headerDom);
System.out.println(">>>>>>fromDate"+fromDate+">>>>D"+toDate);
System.out.println(">>>>>>>>>>MNNNN");
fromDateDtUtil = sdf.parse(fromDate);
fromDateDtSql = new java.sql.Date(fromDateDtUtil.getTime());
System.out.println(">>>>>>>>>>MNNNN>>>");
toDateDtUtil = sdf.parse(toDate);
toDateDtSql = new java.sql.Date(toDateDtUtil.getTime());
}
//Start Added by chandrashekar on 12-Feb-15
workOrdType = new MfgCommon().getEnvMfg("999999","WORK_ORD_TYPE", conn);
System.out.println("workOrdType>>>>["+workOrdType+"]");
if (workOrdType == null || "NULLFOUND".equalsIgnoreCase(workOrdType))
{
workOrdType1 =arrStr[i];
workOrdTypeSplit=workOrdTypeSplit+"'"+workOrdType1+"',";
workOrdType = "";
}
resultWorkOrdType = workOrdTypeSplit.substring(0, workOrdTypeSplit.length() - 1);
subQuery= " AND (WORKORDER.ORDER_TYPE in("+resultWorkOrdType+"))";
}
//End Added by chandrashekar on 12-Feb-15
sql ="SELECT WORKORDER.TRAN_ID,WORKORDER.WORK_ORDER,"
+ "WORKORDER.ORDER_TYPE,"
+ "WORKORDER.ITEM_CODE,WORKORDER.SITE_CODE,WORKORDER.QUANTITY,"
+ "WORKORDER.ORD_DATE,WORKORDER.REL_DATE,WORKORDER.DUE_DATE,WORKORDER.STATUS,WORKORDER.STATUS_DATE,WORKORDER.ACCT_CODE__WP,"
+ "WORKORDER.CCTR_CODE__WP,ITEM.SH_DESCR,WORKORDER.LOT_NO,WORKORDER.BOM_CODE,WORKORDER.CURRENT_BATCH_QTY,WORKORDER.VAL_MFG_TAXTRAN,"
+ "WORKORDER.UNIT__STD,WORKORDER.CONV__QTY_STDUOM,WORKORDER.STD_QTY,WORKORDER.QUANTITY__MPS,"
+ "ITEM.PHY_ATTRIB_1,ITEM.PHY_ATTRIB_2,ITEM.PHY_ATTRIB_3,"
+ "ITEM.PHY_ATTRIB_4,ITEM.PHY_ATTRIB_5,ITEM.PHY_ATTRIB_6,"
+ "WORKORDER.TRAN_ID__MPS,"
+ "WORKORDER.ADD_DATE,WORKORDER.ADD_USER,WORKORDER.ADD_TERM,WORKORDER.CHG_DATE,"
+ "WORKORDER.CHG_USER,WORKORDER.CHG_TERM,WORKORDER.CAMPGN_NO"
+ " FROM"
+ " WORKORDER WORKORDER,ITEM ITEM WHERE ( WORKORDER.ITEM_CODE = ITEM.ITEM_CODE ) AND ( WORKORDER.ORD_DATE >= ? ) AND ( WORKORDER.ORD_DATE <= ? )"
//+ " AND WORKORDER.ORDER_TYPE='F' "
+ " AND WORKORDER.STATUS IN('P','M','U') AND WORKORDER.SITE_CODE = ? " //login sitecode added by mahendra dated 07-JAN-2014
+ " AND WORKORDER.CAMPGN_NO IS NULL"+subQuery;//subQuery condition added by chandrashekar on 12-feb-15
pStmt = conn.prepareStatement(sql);
pStmt.setDate(1, fromDateDtSql);
pStmt.setDate(2, toDateDtSql);
pStmt.setString(3, loginSiteCode);
rs = pStmt.executeQuery();
while (rs.next()) {
dataFound = true;
tranID = rs.getString("TRAN_ID") == null ? "" : rs.getString("TRAN_ID");
workOrder = rs.getString("WORK_ORDER") == null ? "" : rs.getString("WORK_ORDER").trim();
bomCode = rs.getString("BOM_CODE") == null ? "" : rs.getString("BOM_CODE").trim();
itemCode = rs.getString("ITEM_CODE") == null ? "" : rs.getString("ITEM_CODE").trim();
siteCode = rs.getString("SITE_CODE") == null ? "" : rs.getString("SITE_CODE").trim();
shdscr = rs.getString("SH_DESCR") == null ? "" : rs.getString("SH_DESCR").trim();
//lotNo = rs.getString("LOT_NO") == null ? "" : rs.getString("LOT_NO").trim();
//quantity = rs.getString("QUANTITY") == null ? 0.0 : rs.getDouble("QUANTITY");
//tranMps = rs.getString("TRAN_ID__MPS") == null ? "" : rs.getString("TRAN_ID__MPS");
status = rs.getString("STATUS") == null ? "" : rs.getString("STATUS").trim();
statDate = rs.getString("STATUS_DATE") == null ? "" : sdf.format(rs.getDate("STATUS_DATE"));
//relDate = rs.getString("REL_DATE") == null ? "" : sdf.format(rs.getDate("REL_DATE"));
//dueDate = rs.getString("DUE_DATE") == null ? "" : sdf.format(rs.getDate("DUE_DATE"));
//orderType = rs.getString("ORDER_TYPE") == null ? "" : rs.getString("ORDER_TYPE").trim();
//ordDate = rs.getString("ORD_DATE") == null ? "" : sdf.format(rs.getDate("ORD_DATE"));
//acctWp = rs.getString("ACCT_CODE__WP") == null ? "" : rs.getString("ACCT_CODE__WP").trim();
//cctrWp = rs.getString("CCTR_CODE__WP") == null ? "" : rs.getString("CCTR_CODE__WP").trim();
// currQty = rs.getString("CURRENT_BATCH_QTY") == null ? 0.0 : rs.getDouble("CURRENT_BATCH_QTY");
// valMfg = rs.getString("VAL_MFG_TAXTRAN") == null ? "" : rs.getString("VAL_MFG_TAXTRAN").trim();
// unitStd = rs.getString("UNIT__STD") == null ? "" : rs.getString("UNIT__STD").trim();
//stdQty = rs.getString("STD_QTY") == null ? 0.0 : rs.getDouble("STD_QTY");
//conQstd = rs.getString("CONV__QTY_STDUOM") == null ? 0.0 : rs.getDouble("CONV__QTY_STDUOM");
//quanMps = rs.getString("QUANTITY__MPS") == null ? 0.0 : rs.getDouble("QUANTITY__MPS");
//phyAtt1 = rs.getString("PHY_ATTRIB_1") == null ? "" : rs.getString("PHY_ATTRIB_1").trim();
//phyAtt2 = rs.getString("PHY_ATTRIB_2") == null ? "" : rs.getString("PHY_ATTRIB_2").trim();
//phyAtt3 = rs.getString("PHY_ATTRIB_3") == null ? "" : rs.getString("PHY_ATTRIB_3").trim();
//phyAtt4 = rs.getString("PHY_ATTRIB_4") == null ? "" : rs.getString("PHY_ATTRIB_4").trim();
//phyAtt5 = rs.getString("PHY_ATTRIB_5") == null ? "" : rs.getString("PHY_ATTRIB_5").trim();
// phyAtt6 = rs.getString("PHY_ATTRIB_6") == null ? "" : rs.getString("PHY_ATTRIB_6").trim();
// addDate = rs.getString("ADD_DATE") == null ? "" : sdf.format(rs.getDate("ADD_DATE"));
// addUser = rs.getString("ADD_USER") == null ? "" : rs.getString("ADD_USER").trim();
// addTerm = rs.getString("ADD_TERM") == null ? "" : rs.getString("ADD_TERM").trim();
chgDate = rs.getString("CHG_DATE") == null ? "" : sdf.format(rs.getDate("CHG_DATE"));
chgUser = rs.getString("CHG_USER") == null ? "" : rs.getString("CHG_USER").trim();
chgTerm = rs.getString("CHG_TERM") == null ? "" : rs.getString("CHG_TERM").trim();
campNo = rs.getString("CAMPGN_NO") == null ? "" : rs.getString("CAMPGN_NO").trim();
resultData.append(tranID).append("\t");
resultData.append(workOrder).append("\t");
resultData.append(bomCode).append("\t");
resultData.append(itemCode).append("\t");
resultData.append(shdscr).append("\t");
// resultData.append(lotNo).append("\t");
// resultData.append(quantity).append("\t");
// resultData.append(tranMps).append("\t");
resultData.append(status).append("\t");
resultData.append(statDate).append("\t");
// resultData.append(relDate).append("\t");
// resultData.append(dueDate).append("\t");
// resultData.append(orderType).append("\t");
// resultData.append(ordDate).append("\t");
resultData.append(siteCode).append("\t");
// resultData.append(acctWp).append("\t");
// resultData.append(cctrWp).append("\t");
// resultData.append(currQty).append("\t");
// resultData.append(valMfg).append("\t");
// resultData.append(unitStd).append("\t");
// resultData.append(stdQty).append("\t");
// resultData.append(conQstd).append("\t");
// resultData.append(phyAtt1).append("\t");
// resultData.append(phyAtt2).append("\t");
// resultData.append(phyAtt3).append("\t");
// resultData.append(phyAtt4).append("\t");
// resultData.append(phyAtt5).append("\t");
// resultData.append(phyAtt6).append("\t");
resultData.append(chgDate).append("\t");
resultData.append(chgUser).append("\t");
resultData.append(chgTerm).append("\t");
// resultData.append(addDate).append("\t");
// resultData.append(addUser).append("\t");
// resultData.append(addTerm).append("\t");
resultData.append(campNo).append("\t");
resultData.append("\n");
}
if(!rs.next())
{
System.out.println(">>>>>faildsssss");
retString = itmDBAccessEJB.getErrorString("", "", "", "", conn);
}
rs.close();
rs = null;
pStmt.close();
pStmt = null;
} catch (Exception e) {
isError = true;
throw new ITMException(e);
} finally {
try {
if (conn != null) {
if (isError) {
retString = itmDBAccessEJB.getErrorString("", "VTWOCFAIL", "", "", conn); // failed to execute
} else {
retString = resultData.toString();
System.out.println("RETSTRING ..> " + retString);
if (!dataFound) {
retString = itmDBAccessEJB.getErrorString("", "VTNOREC1", "", "", conn); // NO RECORD FOUND
if(workOrdType != null && (workOrdType.trim().length() > 0))
{
String[] arrStr =workOrdType.split(",");
int len =arrStr.length;
for(int i =0;i<len;i++)
{
workOrdType1 =arrStr[i];
workOrdTypeSplit=workOrdTypeSplit+"'"+workOrdType1+"',";
}
resultWorkOrdType = workOrdTypeSplit.substring(0, workOrdTypeSplit.length() - 1);
subQuery= " AND (WORKORDER.ORDER_TYPE in("+resultWorkOrdType+"))";
}
//End Added by chandrashekar on 12-Feb-15
sql ="SELECT WORKORDER.TRAN_ID,WORKORDER.WORK_ORDER,"
+ "WORKORDER.ORDER_TYPE,"
+ "WORKORDER.ITEM_CODE,WORKORDER.SITE_CODE,WORKORDER.QUANTITY,"
+ "WORKORDER.ORD_DATE,WORKORDER.REL_DATE,WORKORDER.DUE_DATE,WORKORDER.STATUS,WORKORDER.STATUS_DATE,WORKORDER.ACCT_CODE__WP,"
+ "WORKORDER.CCTR_CODE__WP,ITEM.SH_DESCR,WORKORDER.LOT_NO,WORKORDER.BOM_CODE,WORKORDER.CURRENT_BATCH_QTY,WORKORDER.VAL_MFG_TAXTRAN,"
+ "WORKORDER.UNIT__STD,WORKORDER.CONV__QTY_STDUOM,WORKORDER.STD_QTY,WORKORDER.QUANTITY__MPS,"
+ "ITEM.PHY_ATTRIB_1,ITEM.PHY_ATTRIB_2,ITEM.PHY_ATTRIB_3,"
+ "ITEM.PHY_ATTRIB_4,ITEM.PHY_ATTRIB_5,ITEM.PHY_ATTRIB_6,"
+ "WORKORDER.TRAN_ID__MPS,"
+ "WORKORDER.ADD_DATE,WORKORDER.ADD_USER,WORKORDER.ADD_TERM,WORKORDER.CHG_DATE,"
+ "WORKORDER.CHG_USER,WORKORDER.CHG_TERM,WORKORDER.CAMPGN_NO"
+ " FROM"
+ " WORKORDER WORKORDER,ITEM ITEM WHERE ( WORKORDER.ITEM_CODE = ITEM.ITEM_CODE ) AND ( WORKORDER.ORD_DATE >= ? ) AND ( WORKORDER.ORD_DATE <= ? )"
//+ " AND WORKORDER.ORDER_TYPE='F' "
+ " AND WORKORDER.STATUS IN('P','M','U') AND WORKORDER.SITE_CODE = ? " //login sitecode added by mahendra dated 07-JAN-2014
+ " AND WORKORDER.CAMPGN_NO IS NULL"+subQuery;//subQuery condition added by chandrashekar on 12-feb-15
pStmt = conn.prepareStatement(sql);
pStmt.setDate(1, fromDateDtSql);
pStmt.setDate(2, toDateDtSql);
pStmt.setString(3, loginSiteCode);
rs = pStmt.executeQuery();
while (rs.next()) {
dataFound = true;
tranID = rs.getString("TRAN_ID") == null ? "" : rs.getString("TRAN_ID");
workOrder = rs.getString("WORK_ORDER") == null ? "" : rs.getString("WORK_ORDER").trim();
bomCode = rs.getString("BOM_CODE") == null ? "" : rs.getString("BOM_CODE").trim();
itemCode = rs.getString("ITEM_CODE") == null ? "" : rs.getString("ITEM_CODE").trim();
siteCode = rs.getString("SITE_CODE") == null ? "" : rs.getString("SITE_CODE").trim();
shdscr = rs.getString("SH_DESCR") == null ? "" : rs.getString("SH_DESCR").trim();
//lotNo = rs.getString("LOT_NO") == null ? "" : rs.getString("LOT_NO").trim();
//quantity = rs.getString("QUANTITY") == null ? 0.0 : rs.getDouble("QUANTITY");
//tranMps = rs.getString("TRAN_ID__MPS") == null ? "" : rs.getString("TRAN_ID__MPS");
status = rs.getString("STATUS") == null ? "" : rs.getString("STATUS").trim();
statDate = rs.getString("STATUS_DATE") == null ? "" : sdf.format(rs.getDate("STATUS_DATE"));
//relDate = rs.getString("REL_DATE") == null ? "" : sdf.format(rs.getDate("REL_DATE"));
//dueDate = rs.getString("DUE_DATE") == null ? "" : sdf.format(rs.getDate("DUE_DATE"));
//orderType = rs.getString("ORDER_TYPE") == null ? "" : rs.getString("ORDER_TYPE").trim();
//ordDate = rs.getString("ORD_DATE") == null ? "" : sdf.format(rs.getDate("ORD_DATE"));
//acctWp = rs.getString("ACCT_CODE__WP") == null ? "" : rs.getString("ACCT_CODE__WP").trim();
//cctrWp = rs.getString("CCTR_CODE__WP") == null ? "" : rs.getString("CCTR_CODE__WP").trim();
// currQty = rs.getString("CURRENT_BATCH_QTY") == null ? 0.0 : rs.getDouble("CURRENT_BATCH_QTY");
// valMfg = rs.getString("VAL_MFG_TAXTRAN") == null ? "" : rs.getString("VAL_MFG_TAXTRAN").trim();
// unitStd = rs.getString("UNIT__STD") == null ? "" : rs.getString("UNIT__STD").trim();
//stdQty = rs.getString("STD_QTY") == null ? 0.0 : rs.getDouble("STD_QTY");
//conQstd = rs.getString("CONV__QTY_STDUOM") == null ? 0.0 : rs.getDouble("CONV__QTY_STDUOM");
//quanMps = rs.getString("QUANTITY__MPS") == null ? 0.0 : rs.getDouble("QUANTITY__MPS");
//phyAtt1 = rs.getString("PHY_ATTRIB_1") == null ? "" : rs.getString("PHY_ATTRIB_1").trim();
//phyAtt2 = rs.getString("PHY_ATTRIB_2") == null ? "" : rs.getString("PHY_ATTRIB_2").trim();
//phyAtt3 = rs.getString("PHY_ATTRIB_3") == null ? "" : rs.getString("PHY_ATTRIB_3").trim();
//phyAtt4 = rs.getString("PHY_ATTRIB_4") == null ? "" : rs.getString("PHY_ATTRIB_4").trim();
//phyAtt5 = rs.getString("PHY_ATTRIB_5") == null ? "" : rs.getString("PHY_ATTRIB_5").trim();
// phyAtt6 = rs.getString("PHY_ATTRIB_6") == null ? "" : rs.getString("PHY_ATTRIB_6").trim();
// addDate = rs.getString("ADD_DATE") == null ? "" : sdf.format(rs.getDate("ADD_DATE"));
// addUser = rs.getString("ADD_USER") == null ? "" : rs.getString("ADD_USER").trim();
// addTerm = rs.getString("ADD_TERM") == null ? "" : rs.getString("ADD_TERM").trim();
chgDate = rs.getString("CHG_DATE") == null ? "" : sdf.format(rs.getDate("CHG_DATE"));
chgUser = rs.getString("CHG_USER") == null ? "" : rs.getString("CHG_USER").trim();
chgTerm = rs.getString("CHG_TERM") == null ? "" : rs.getString("CHG_TERM").trim();
campNo = rs.getString("CAMPGN_NO") == null ? "" : rs.getString("CAMPGN_NO").trim();
resultData.append(tranID).append("\t");
resultData.append(workOrder).append("\t");
resultData.append(bomCode).append("\t");
resultData.append(itemCode).append("\t");
resultData.append(shdscr).append("\t");
// resultData.append(lotNo).append("\t");
// resultData.append(quantity).append("\t");
// resultData.append(tranMps).append("\t");
resultData.append(status).append("\t");
resultData.append(statDate).append("\t");
// resultData.append(relDate).append("\t");
// resultData.append(dueDate).append("\t");
// resultData.append(orderType).append("\t");
// resultData.append(ordDate).append("\t");
resultData.append(siteCode).append("\t");
// resultData.append(acctWp).append("\t");
// resultData.append(cctrWp).append("\t");
// resultData.append(currQty).append("\t");
// resultData.append(valMfg).append("\t");
// resultData.append(unitStd).append("\t");
// resultData.append(stdQty).append("\t");
// resultData.append(conQstd).append("\t");
// resultData.append(phyAtt1).append("\t");
// resultData.append(phyAtt2).append("\t");
// resultData.append(phyAtt3).append("\t");
// resultData.append(phyAtt4).append("\t");
// resultData.append(phyAtt5).append("\t");
// resultData.append(phyAtt6).append("\t");
resultData.append(chgDate).append("\t");
resultData.append(chgUser).append("\t");
resultData.append(chgTerm).append("\t");
// resultData.append(addDate).append("\t");
// resultData.append(addUser).append("\t");
// resultData.append(addTerm).append("\t");
resultData.append(campNo).append("\t");
resultData.append("\n");
}
if(!rs.next())
{
System.out.println(">>>>>faildsssss");
retString = itmDBAccessEJB.getErrorString("", "", "", "", conn);
}
rs.close();
rs = null;
pStmt.close();
pStmt = null;
} catch (Exception e) {
isError = true;
throw new ITMException(e);
} finally {
try {
if (conn != null) {
if (isError) {
retString = itmDBAccessEJB.getErrorString("", "VTWOCFAIL", "", "", conn); // failed to execute
} else {
retString = resultData.toString();
System.out.println("RETSTRING ..> " + retString);
if (!dataFound) {
retString = itmDBAccessEJB.getErrorString("", "VTNOREC1", "", "", conn); // NO RECORD FOUND
}
}
conn.close();
conn = null;
}
if (rs != null) {
rs.close();
rs = null;
}
if (pStmt != null) {
pStmt.close();
pStmt = null;
}
} catch (Exception e) {
retString = e.getMessage();
throw new ITMException(e);
}
}
conn.close();
conn = null;
}
if (rs != null) {
rs.close();
rs = null;
}
if (pStmt != null) {
pStmt.close();
pStmt = null;
}
} catch (Exception e) {
retString = e.getMessage();
throw new ITMException(e);
}
}
return retString;
}
@Override
public String process(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException, ITMException {
System.out.println("^^^^^^^ Inside process -> Process Method 1 ^^^^^^^");
Document detailDom = null;
Document headerDom = null;
String retString = "";
System.out.println("XMLSTRING ..> " + xmlString);
System.out.println("XMLSTRING2 ..> " + xmlString2);
try {
if (xmlString != null && xmlString.trim().length() != 0) {
headerDom = genericUtility.parseString(xmlString);
}
if (xmlString2 != null && xmlString2.trim().length() != 0) {
detailDom = genericUtility.parseString(xmlString2);
}
retString = process(headerDom, detailDom, windowName, xtraParams);
} catch (Exception e) {
System.out.println("Exception process Process Method 1");
e.printStackTrace();
retString = itmDBAccessEJB.getErrorString("", "VTPFTEXE", "", 1); // failed to execute
throw new ITMException(e);
return retString;
}
return retString;
}
@Override
public String process(Document headerDom, Document detailDom, String windowName, String xtraParams) throws RemoteException, ITMException {
System.out.println("^^^^^^^ Inside process -> Process Method 2 ^^^^^^^");
String retString = "";
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
ConnDriver connDriver = null;
Connection conn = null;
PreparedStatement pStmt = null;
ResultSet rs = null;
String sql = "";
String woItemCode = "";//Added by chandrashekar on 09-oct-14
ITMDBAccessEJB itmDBAccessEJB = null;
boolean isError = false;
SimpleDateFormat sdf = null;
ArrayList<String> headerList = new ArrayList<String>();
String errCode = "";
int childNodeListLength = 0;
String childNodeName = "";
String tranID="";
PreparedStatement pstmt=null;
String errString="",loginCode="",loginSite="",systemDate="";
Calendar currentDate;
SimpleDateFormat simpleDateFormatObj;
java.sql.Timestamp currDate = null;
String currAppdate="";
Timestamp sysDate = null;
int count=0;
ITMDBAccessLocal itmdbAccess=new ITMDBAccessEJB();
String wostatus="",workorder="",chgTerm="",chgUser="",utranid="";
GenericUtility genutility = null;
HashMap<String, String> comMap=new HashMap<String, String>();
try {
connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM");
conn.setAutoCommit(false);
connDriver = null;
itmDBAccessEJB = new ITMDBAccessEJB();
sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
parentNodeList = detailDom.getElementsByTagName("Detail2");
for (int i = 0; i < parentNodeList.getLength(); i++) {
parentNode = parentNodeList.item(i);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for (int j = 0; j < childNodeListLength; j++) {
childNode = childNodeList.item(j);
childNodeName = childNode.getNodeName();
if (childNodeName.equals("work_order")) {
workorder = childNode.getFirstChild() == null ? "" : childNode.getFirstChild().getNodeValue();
}
@Override
public String process(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException, ITMException {
System.out.println("^^^^^^^ Inside process -> Process Method 1 ^^^^^^^");
Document detailDom = null;
Document headerDom = null;
String retString = "";
System.out.println("XMLSTRING ..> " + xmlString);
System.out.println("XMLSTRING2 ..> " + xmlString2);
try {
if (xmlString != null && xmlString.trim().length() != 0) {
headerDom = genericUtility.parseString(xmlString);
}
if (xmlString2 != null && xmlString2.trim().length() != 0) {
detailDom = genericUtility.parseString(xmlString2);
}
retString = process(headerDom, detailDom, windowName, xtraParams);
} catch (Exception e) {
System.out.println("Exception process Process Method 1");
e.printStackTrace();
retString = itmDBAccessEJB.getErrorString("", "VTPFTEXE", "", 1); // failed to execute
throw new ITMException(e);
}
return retString;
}
workorder = workorder == null ? "" : workorder.trim();
GenericUtility genericUtility = GenericUtility.getInstance();
chgTerm = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "chg_term");
chgUser = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "chg_user");
System.out.println(">>>>>>>chgTerm and t"+chgTerm+">>>>> chgUser"+chgUser);
currentDate = Calendar.getInstance();
/* simpleDateFormatObj = new SimpleDateFormat(genericUtility.getApplDateFormat());
@Override
public String process(Document headerDom, Document detailDom, String windowName, String xtraParams) throws RemoteException, ITMException {
System.out.println("^^^^^^^ Inside process -> Process Method 2 ^^^^^^^");
String retString = "";
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
ConnDriver connDriver = null;
Connection conn = null;
PreparedStatement pStmt = null;
ResultSet rs = null;
String sql = "";
String woItemCode = "";//Added by chandrashekar on 09-oct-14
ITMDBAccessEJB itmDBAccessEJB = null;
boolean isError = false;
SimpleDateFormat sdf = null;
ArrayList<String> headerList = new ArrayList<String>();
String errCode = "";
int childNodeListLength = 0;
String childNodeName = "";
String tranID="";
PreparedStatement pstmt=null;
String errString="",loginCode="",loginSite="",systemDate="";
Calendar currentDate;
SimpleDateFormat simpleDateFormatObj;
java.sql.Timestamp currDate = null;
String currAppdate="";
Timestamp sysDate = null;
int count=0;
ITMDBAccessLocal itmdbAccess=new ITMDBAccessEJB();
String wostatus="",workorder="",chgTerm="",chgUser="",utranid="";
GenericUtility genutility = null;
HashMap<String, String> comMap=new HashMap<String, String>();
String campItemWise="";
try {
connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM");
conn.setAutoCommit(false);
connDriver = null;
itmDBAccessEJB = new ITMDBAccessEJB();
sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
// added by cpatil on 23/03/15 in urse for supreme start
sql = " SELECT VAR_VALUE FROM MFGPARM WHERE PRD_CODE ='999999' AND VAR_NAME ='CAMP_ITEM_WISE' ";
pstmt=conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
campItemWise = rs.getString(1) == null ? "":rs.getString(1);
}
pstmt.close();
rs.close();
pstmt = null;
rs = null;
System.out.println("@@@@@@ campItemWise["+campItemWise+"]");
//added by cpatil on 23/03/15 in urse for supreme end
parentNodeList = detailDom.getElementsByTagName("Detail2");
for (int i = 0; i < parentNodeList.getLength(); i++) {
parentNode = parentNodeList.item(i);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for (int j = 0; j < childNodeListLength; j++) {
childNode = childNodeList.item(j);
childNodeName = childNode.getNodeName();
if (childNodeName.equals("work_order")) {
workorder = childNode.getFirstChild() == null ? "" : childNode.getFirstChild().getNodeValue();
}
}
workorder = workorder == null ? "" : workorder.trim();
GenericUtility genericUtility = GenericUtility.getInstance();
chgTerm = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "chg_term");
chgUser = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "chg_user");
System.out.println(">>>>>>>chgTerm and t"+chgTerm+">>>>> chgUser"+chgUser);
currentDate = Calendar.getInstance();
/* simpleDateFormatObj = new SimpleDateFormat(genericUtility.getApplDateFormat());
systemDate = simpleDateFormatObj.format(currentDate.getTime());
System.out.println("Now the date is :=> " + systemDate);*/
genutility=GenericUtility.getInstance();
sdf=new SimpleDateFormat(genutility.getApplDateFormat());
currDate = new java.sql.Timestamp(System.currentTimeMillis()) ;
currAppdate = sdf.format(currDate);
currAppdate = genericUtility.getValidDateString( currAppdate, genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat() );
sysDate = java.sql.Timestamp.valueOf( currAppdate + " 00:00:00.0" );
/*loginCode=GenericUtility.getInstance().getValueFromXTRA_PARAMS(xtraParams,"loginCode");
genutility=GenericUtility.getInstance();
sdf=new SimpleDateFormat(genutility.getApplDateFormat());
currDate = new java.sql.Timestamp(System.currentTimeMillis()) ;
currAppdate = sdf.format(currDate);
currAppdate = genericUtility.getValidDateString( currAppdate, genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat() );
sysDate = java.sql.Timestamp.valueOf( currAppdate + " 00:00:00.0" );
/*loginCode=GenericUtility.getInstance().getValueFromXTRA_PARAMS(xtraParams,"loginCode");
loginCode=loginCode==null ? "" :loginCode.trim();*/
loginSite = GenericUtility.getInstance().getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
System.out.println("loginCode---->>["+loginCode+"]");
conn.setAutoCommit(false);
System.out.println("loginCode"+loginCode+"<<<<<<<loginSite"+loginSite);
//Start Added by chandrashekar on 09-oct-14
sql = "select item_code from workorder where work_order = ?";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,workorder);
rs = pstmt.executeQuery();
if(rs.next())
{
woItemCode = rs.getString("item_code") == null ? "":rs.getString("item_code");
}
pstmt.close();
rs.close();
pstmt = null;
rs = null;
if(comMap.containsKey(woItemCode))
{
utranid= comMap.get(woItemCode);
}
else
{ utranid = generateTranId("w_wocampaign", loginSite, conn);
System.out.println("GENERATED TRAN ID"+utranid);
comMap.put(woItemCode, utranid);
System.out.println("comMap[["+comMap+"]]");
}
//end by chandrashekar on on 09-oct-14
/*if(utranid.trim().length() <= 0)
loginSite = GenericUtility.getInstance().getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
System.out.println("loginCode---->>["+loginCode+"]");
conn.setAutoCommit(false);
System.out.println("loginCode"+loginCode+"<<<<<<<loginSite"+loginSite);
//Start Added by chandrashekar on 09-oct-14
sql = "select item_code from workorder where work_order = ?";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,workorder);
rs = pstmt.executeQuery();
if(rs.next())
{
woItemCode = rs.getString("item_code") == null ? "":rs.getString("item_code");
}
pstmt.close();
rs.close();
pstmt = null;
rs = null;
if(campItemWise != null && "N".equalsIgnoreCase(campItemWise)) // added condition for supreme MFGPARM 'CAMP_ITEM_WISE' define as 'N' value
{
if(utranid.trim().length() <= 0)
{
utranid = generateTranId("w_wocampaign", loginSite, conn);
}
}
else if("Y".equalsIgnoreCase(campItemWise) || campItemWise == null || "".equalsIgnoreCase(campItemWise) || campItemWise.trim().length() == 0 )
{
if(comMap.containsKey(woItemCode))
{
utranid= comMap.get(woItemCode);
}
else
{ utranid = generateTranId("w_wocampaign", loginSite, conn);
System.out.println("GENERATED TRAN ID"+utranid);
comMap.put(woItemCode, utranid);
System.out.println("comMap[["+comMap+"]]");
}
}
//end by chandrashekar on on 09-oct-14
/*if(utranid.trim().length() <= 0)
{
utranid = generateTranId("w_wocampaign", loginSite, conn);
}
System.out.println("GENERATED TRAN ID"+utranid);*/
System.out.println("WORK ORDER NO"+workorder);
sql = "select status from workorder where work_order = ?";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,workorder);
rs = pstmt.executeQuery();
if(rs.next())
{
wostatus = rs.getString(1) == null ? "":rs.getString(1);
}
pstmt.close();
rs.close();
pstmt = null;
rs = null;
System.out.println("wostatusWEWEWEE >>>>>>>>>>>>>>>>>>."+wostatus);
if(wostatus.equalsIgnoreCase("P") || wostatus.equalsIgnoreCase("M") || wostatus.equalsIgnoreCase("U"))
{
System.out.println("ENTER IN STATUS CHECK >>>>>");
sql = "UPDATE WORKORDER SET CAMPGN_NO = ? WHERE WORK_ORDER = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,utranid);
pstmt.setString(2,workorder);
count = pstmt.executeUpdate();
if(count < 1)
{
System.out.println("updation of record is failed");
}
else
System.out.println("WORK ORDER NO"+workorder);
sql = "select status from workorder where work_order = ?";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,workorder);
rs = pstmt.executeQuery();
if(rs.next())
{
conn.commit();
wostatus = rs.getString(1) == null ? "":rs.getString(1);
}
pstmt.close();
rs.close();
pstmt = null;
rs = null;
System.out.println("wostatusWEWEWEE >>>>>>>>>>>>>>>>>>."+wostatus);
if(wostatus.equalsIgnoreCase("P") || wostatus.equalsIgnoreCase("M") || wostatus.equalsIgnoreCase("U"))
{
System.out.println("ENTER IN STATUS CHECK >>>>>");
sql = "UPDATE WORKORDER SET CAMPGN_NO = ? WHERE WORK_ORDER = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,utranid);
pstmt.setString(2,workorder);
count = pstmt.executeUpdate();
if(count < 1)
{
System.out.println("updation of record is failed");
}
else
{
conn.commit();
}
pstmt.close();
pstmt = null;
System.out.println("NO. OF RECORDS UPDATED FOR CURRENT PERIODE.. "+count);
sql = "INSERT INTO WORDER_CAMPAIGN (WORK_ORDER,CAMPGN_NO,CHG_DATE,CHG_USER,CHG_TERM) VALUES (?,?,?,?,?)";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,workorder);
pstmt.setString(2,utranid);
pstmt.setTimestamp(3,sysDate);
pstmt.setString(4,chgUser);
pstmt.setString(5,chgTerm);
count = pstmt.executeUpdate();
if(count < 1)
{
System.out.println("Insertion of record is failed");
}
else
{
conn.commit();
System.out.println(">>>>>process completed>>>>VV>>>>");
errCode = "VTWOCPRCGN"; // generated successfully
retString = itmDBAccessEJB.getErrorString("", errCode, "", "", conn);
}
pstmt.close();
pstmt = null;
System.out.println("NO. OF RECORDS INSERTED FOR CURRENT PERIODE.. "+count);
}
pstmt.close();
pstmt = null;
System.out.println("NO. OF RECORDS UPDATED FOR CURRENT PERIODE.. "+count);
sql = "INSERT INTO WORDER_CAMPAIGN (WORK_ORDER,CAMPGN_NO,CHG_DATE,CHG_USER,CHG_TERM) VALUES (?,?,?,?,?)";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,workorder);
pstmt.setString(2,utranid);
pstmt.setTimestamp(3,sysDate);
pstmt.setString(4,chgUser);
pstmt.setString(5,chgTerm);
count = pstmt.executeUpdate();
if(count < 1)
{
System.out.println("Insertion of record is failed");
}
else
{
conn.commit();
System.out.println(">>>>>process completed>>>>VV>>>>");
errCode = "VTWOCPRCGN"; // generated successfully
retString = itmDBAccessEJB.getErrorString("", errCode, "", "", conn);
}catch (Exception e) {
isError = true;
errCode = "VTPFTEXE"; // failed to execute
retString = itmDBAccessEJB.getErrorString("", errCode, "", "", conn);
e.printStackTrace();
throw new ITMException(e);
} finally {
try {
if (conn != null) {
if (isError) {
conn.rollback();
} else {
conn.commit();
}
conn.close();
conn = null;
}
if (pStmt != null) {
pStmt.close();
pStmt = null;
}
} catch (Exception e) {
e.printStackTrace();
throw new ITMException(e);
}
pstmt.close();
pstmt = null;
System.out.println("NO. OF RECORDS INSERTED FOR CURRENT PERIODE.. "+count);
}
}
}catch (Exception e) {
isError = true;
errCode = "VTPFTEXE"; // failed to execute
retString = itmDBAccessEJB.getErrorString("", errCode, "", "", conn);
e.printStackTrace();
throw new ITMException(e);
} finally {
try {
if (conn != null) {
if (isError) {
conn.rollback();
} else {
conn.commit();
}
conn.close();
conn = null;
}
if (pStmt != null) {
pStmt.close();
pStmt = null;
}
} catch (Exception e) {
e.printStackTrace();
throw new ITMException(e);
}
return retString;
}
return retString;
}
public static 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 = "";
java.sql.Timestamp currDate = null;
GenericUtility genericUtility = GenericUtility.getInstance();
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;
//keyString = "seq10";
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;
public static 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 = "";
java.sql.Timestamp currDate = null;
GenericUtility genericUtility = GenericUtility.getInstance();
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;
//keyString = "seq10";
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) {
}
}
} catch (Exception e) {
}
return tranId;
}
return tranId;
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment