Commit e5f60db5 authored by manohar's avatar manohar

Changes for non-critical items and partial stock, route creation quantity


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@101812 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 205fb129
......@@ -239,6 +239,7 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
Connection conn = null;
ResultSet rs = null;
PreparedStatement pstmt = null;
int count = 0;
ArrayList<String> workOrderErrorList = new ArrayList();
Map<String,String>stockDetailMap = new HashMap<String,String>();
......@@ -273,10 +274,45 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
return errString;
}
// check for inactive route
if (campgnNo != null && campgnNo.trim().length() > 0)
{
sql = "select count(1) from worder_campaign a,workorder b, route c where a.work_order = b.work_order and "
+ " a.campgn_no = ? and (case when b.status is null then 'P' else b.status end) in ('P','M','U') "
+ " and c.route_code = b.route_code "
+ " and c.active = 'N' ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, campgnNo);
}
else
{
sql = "select count(1) from workorder b, route c where b.work_order = ? "
+ " and (case when b.status is null then 'P' else b.status end) in ('P','M','U') "
+ " and c.route_code = b.route_code "
+ " and c.active = 'N' ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, workOrder);
}
rs = pstmt.executeQuery();
if(rs.next())
{
count = rs.getInt(1);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(count > 0)
{
errString="VTROUTACT";
errString = itmDBAccessEJB.getErrorString("",errString,"","",conn);
return errString;
}
//VTWOAPRC
for(String worder : workOrderList)
{
int count = 0;
sql = "select count(*) from workorder_bill where work_order = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, worder);
......@@ -311,7 +347,9 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
System.out.println("errString After exp bom----->>["+errString+"]");
//Check allocate Stock (Soft allocation)
System.out.println("worderStkBeanList size 1="+worderStkBeanList.size());
System.out.println("worderExpLevSufficient before stock allocation ["+worderExpLevSufficient+"]");
stockDetailMap = stockAllocation(conn);
System.out.println("worderExpLevSufficient after stock allocation ["+worderExpLevSufficient+"]");
System.out.println("worderStkBeanList size 2="+worderStkBeanList.size());
System.out.println("After stockAllocation stockDetailMap----->>["+stockDetailMap+"]");
System.out.println("worderExpLevSufficient----->>["+worderExpLevSufficient+"]");
......@@ -334,10 +372,11 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
// 31-may-16 manoharan sort on work_order,exp_lev,exp_date
Collections.sort(worderStkBeanList, WorderStkBean.WoStkBeanComparator);
// end 31-may-16 manoharan sort on work_order,exp_lev,exp_date
System.out.println("worderExpLevSufficient before check potency ["+worderExpLevSufficient+"]");
potencyRetStr = checkStockPotencyNew(conn);
// 31-may-16 manoharan sort on work_order,exp_lev,exp_date
Collections.sort(worderStkBeanList, WorderStkBean.WoStkBeanComparator);
System.out.println("worderExpLevSufficient after check potency ["+worderExpLevSufficient+"]");
// end 31-may-16 manoharan sort on work_order,exp_lev,exp_date
System.out.println("After checkStockPotency :["+potencyRetStr+"]");
......@@ -561,7 +600,9 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
//Changed by wasim on 17-05-2016 to comment allocate type condition as per manohar sir
//if(!"O".equalsIgnoreCase(detailMap.get("ALLOCATE_TYPE")) )
//{
System.out.println("worderExpLevSufficient before checkReserveStock ["+worderExpLevSufficient+"]");
stockReturnMap = checkReserveStock(detailMap, conn);
System.out.println("worderExpLevSufficient after checkReserveStock ["+worderExpLevSufficient+"]");
System.out.println("checkReserveStock1 return map : "+stockReturnMap);
if("N".equalsIgnoreCase(detailMap.get("CONSIDER_PARTIAL_ALT")))
......@@ -569,7 +610,14 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
System.out.println("CONSIDER_PARTIAL_ALT in checkReserveStock.................");
balanceQty = Double.parseDouble(stockReturnMap.get("BALANCE_QTY"));
errorCodeRet = stockReturnMap.get("ERROR_CODE");
if ("Y".equalsIgnoreCase(tempWorderObj.getCritItem()))
{
isSufficient = Boolean.parseBoolean(stockReturnMap.get("IS_SUFFICIENT"));
}
else
{
isSufficient = true;
}
System.out.println("6@@@IS_SUFFICIENT"+isSufficient);
if(balanceQty > 0)
{
......@@ -584,7 +632,16 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
System.out.println("CONSIDER_PARTIAL_ALT Reserve return map : "+stockReturnMap);
balanceQty = Double.parseDouble(stockReturnMap.get("BALANCE_QTY"));
errorCodeRet = stockReturnMap.get("ERROR_CODE");
//if ("Y".equalsIgnoreCase(tempWorderObj.getCritItem()))
//{
isSufficient = Boolean.parseBoolean(stockReturnMap.get("IS_SUFFICIENT"));
//}
//else
//{
// isSufficient = true;
//}
System.out.println("5@@@IS_SUFFICIENT"+isSufficient);
if(isSufficient )
{
......@@ -608,10 +665,19 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
{
balanceQty = Double.parseDouble(stockReturnMap.get("BALANCE_QTY"));
errorCodeRet = stockReturnMap.get("ERROR_CODE");
//if ("Y".equalsIgnoreCase(tempWorderObj.getCritItem()))
//{
isSufficient = Boolean.parseBoolean(stockReturnMap.get("IS_SUFFICIENT"));
//}
//else
//{
// isSufficient = true;
//}
stockReturnMap.clear();
System.out.println("4@@@IS_SUFFICIENT"+isSufficient);
if(! isSufficient )
if(!isSufficient )
{
detailMap.put("STOCK_DETAIL", "Y");
stockReturnMap = checkCurrentSiteStock(detailMap ,conn);//getSuppStockQty
......@@ -627,7 +693,9 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
else
{
System.out.println("Not check reserve.................");
System.out.println("worderExpLevSufficient before checkCurrentSiteStock ["+worderExpLevSufficient+"]");
stockReturnMap = checkCurrentSiteStock(detailMap ,conn);//getSuppStockQty
System.out.println("worderExpLevSufficient after checkCurrentSiteStock ["+worderExpLevSufficient+"]");
}
System.out.println("@checkCurrentSiteStock return map@ : "+stockReturnMap);
......@@ -651,7 +719,15 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
//@#
balanceQty = Double.parseDouble(stockReturnMap.get("BALANCE_QTY"));
errorCodeRet = stockReturnMap.get("ERROR_CODE");
//if ("Y".equalsIgnoreCase(tempWorderObj.getCritItem()))
//{
isSufficient = Boolean.parseBoolean(stockReturnMap.get("IS_SUFFICIENT"));
//}
//else
//{
// isSufficient = true;
//}
System.out.println("@errorCodeRet @ : "+errorCodeRet);
System.out.println("@isSufficient @ : "+isSufficient);
System.out.println("@ ALLOCATE_TYPE@ : "+detailMap.get("ALLOCATE_TYPE"));
......@@ -679,13 +755,22 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
System.out.println("----------------start alternate item-----------------------------for"+detailMap.get("ITEM_CODE"));
detailMap.put("BALANCE_QTY", String.valueOf(balanceQty) );
System.out.println("worderExpLevSufficient before checkForAlternateItem ["+worderExpLevSufficient+"]");
stockReturnMap = checkForAlternateItem(detailMap, conn);
System.out.println("worderExpLevSufficient after checkForAlternateItem ["+worderExpLevSufficient+"]");
System.out.println("@@checkForAlternateItem Current site @@ : "+stockReturnMap);
System.out.println("After checkForAlternateItem item_code is="+detailMap.get("ITEM_CODE"));
//if ("Y".equalsIgnoreCase(tempWorderObj.getCritItem()))
//{
isSufficient = Boolean.parseBoolean(stockReturnMap.get("IS_SUFFICIENT"));
//}
//else
//{
// isSufficient = true;
//}
System.out.println("2@@@IS_SUFFICIENT"+isSufficient);
if( isSufficient )
......@@ -699,7 +784,15 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
balanceQty = Double.parseDouble(stockReturnMap.get("BALANCE_QTY"));
errorCodeRet = stockReturnMap.get("ERROR_CODE");
//if ("Y".equalsIgnoreCase(tempWorderObj.getCritItem()))
//{
isSufficient = Boolean.parseBoolean(stockReturnMap.get("IS_SUFFICIENT"));
//}
//else
//{
// isSufficient = true;
//}
System.out.println("isSufficient---["+isSufficient+"] balanceQty--->>["+balanceQty+"]");
//--------------------Third check stock in other site--------------------------------
if(! isSufficient)
......@@ -747,34 +840,53 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
detailMap.put("SITE_CODE", suppSiteCode); //update new site code
System.out.println("Checking for item_code="+detailMap.get("ITEM_CODE")+"in site="+suppSiteCode+"for quantity"+detailMap.get("QUANTITY"));
System.out.println("worderExpLevSufficient before checkCurrentSiteStock ["+worderExpLevSufficient+"]");
stockReturnMap = checkCurrentSiteStock(detailMap, conn);//Check for Other site
System.out.println("worderExpLevSufficient after checkCurrentSiteStock ["+worderExpLevSufficient+"]");
System.out.println("Current Stock return map : "+stockReturnMap);
balanceQty = Double.parseDouble(stockReturnMap.get("BALANCE_QTY"));
errorCodeRet = stockReturnMap.get("ERROR_CODE");
//if ("Y".equalsIgnoreCase(tempWorderObj.getCritItem()))
//{
isSufficient = Boolean.parseBoolean(stockReturnMap.get("IS_SUFFICIENT"));
//}
//else
//{
// isSufficient = true;
//}
if(errorCodeRet.length() > 0)
{
return stockReturnMap;
}
if(isSufficient)
{
tempWorderObj.setSufficient("Y");//Changed by wasim on 07-03-2016
break;
}
//if(isSufficient)
//{
// tempWorderObj.setSufficient("Y");//Changed by wasim on 07-03-2016
// break;
//}
//Changed by wasim on 07-03-2016 to check alternate item in other site if main item not found [START]
else
{
//else
//{
System.out.println("@@Checking for alternate item in other site becuase Main item not found");
if(!"O".equalsIgnoreCase(detailMap.get("ALLOCATE_TYPE")) && !isSufficient)
{
System.out.println("worderExpLevSufficient before checkForAlternateItem ["+worderExpLevSufficient+"]");
stockReturnMap = checkForAlternateItem(detailMap, conn);
System.out.println("worderExpLevSufficient after checkForAlternateItem ["+worderExpLevSufficient+"]");
System.out.println("Other site alternate Map return=="+stockReturnMap);
balanceQty = Double.parseDouble(stockReturnMap.get("BALANCE_QTY"));
errorCodeRet = stockReturnMap.get("ERROR_CODE");
if ("Y".equalsIgnoreCase(tempWorderObj.getCritItem()))
{
isSufficient = Boolean.parseBoolean(stockReturnMap.get("IS_SUFFICIENT"));
}
else
{
isSufficient = true;
}
if(errorCodeRet.length() > 0)
{
return stockReturnMap;
......@@ -790,7 +902,7 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
detailMap.put("QUANTITY",String.valueOf(tempWorderObj.getQuantity()));
}
}
}
//}
//Changed by wasim on 07-03-2016 to check alternate item in other site if main item not found [END]
}
}
......@@ -1504,10 +1616,10 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
System.out.println("manohar before .setQuantity 110["+worderStkBeanObj.getQuantity()+"] .getPotencyAdj[" + worderStkBeanObj.getPotencyAdj() + "] .getAllocQty[" + worderStkBeanObj.getAllocQty() + "] .getUpdQty[" + worderStkBeanObj.getUpdQty() +"]");
worderStkBeanObj.setQtyAdj(Double.parseDouble(df.format(potencyAdj)));
worderStkBeanObj.setAllocQty(balanceQty);
updQty = Double.parseDouble(df.format(balanceQty));
worderStkBeanObj.setAllocQty(Double.parseDouble(df.format(balanceQty + potencyAdj)));
updQty = Double.parseDouble(df.format(balanceQty + potencyAdj ));
System.out.println("manohar@@Sufficient--> before .getExpLevel [" + worderStkBeanObj.getExpLevel() +"] .setQuantity ["+worderStkBeanObj.getQuantity()+"] .setAllocQty [" + worderStkBeanObj.getAllocQty() + "] .setUpdQty [" + worderStkBeanObj.getUpdQty() + "] .setPotencyAdj( [" +worderStkBeanObj.getPotencyAdj() + "] .setQtyAdj(" + worderStkBeanObj.getQtyAdj() + "]" );
worderStkBeanObj.setQuantity(Double.parseDouble(df.format(balanceQty - potencyAdj)) );
worderStkBeanObj.setQuantity(Double.parseDouble(df.format(balanceQty)) );
System.out.println("manohar after .setQuantity 7["+worderStkBeanObj.getQuantity()+"]");
worderStkBeanObj.setAllocQty(updQty);
worderStkBeanObj.setUpdQty(updQty);
......@@ -2135,8 +2247,9 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
System.out.println("@@ItemCode["+itemCode+"] and @@ItemStdPotency="+ItemStdPotency);
//if(currentLotQty < balance) // if stock not sufficient
if(availableStock < balance)//Changed by wasim on 18-04-2016 as discussion with manohar sir
if(availableStock <= balance)//Changed by wasim on 18-04-2016 as discussion with manohar sir
{
System.out.println("@@Not Sufficient-->currentLotQty ["+currentLotQty+"] stkPotencyPerc ["+stkPotencyPerc+"] ItemStdPotency ["+ItemStdPotency+"]");
potencyAdj = currentLotQty - (currentLotQty * stkPotencyPerc / ItemStdPotency);
......@@ -2249,9 +2362,9 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
allocRetStr = updateStockAllocQty(stockAllocMap,conn);
System.out.println("allocRetStr :"+allocRetStr);
updQty = worderStkBeanObj.getAllocQty() + potencyAdj; //2 + 0.244 = 2.244
updQty = worderStkBeanObj.getAllocQty() + potencyAdj;
updQty = Double.parseDouble(df.format(updQty));
worderStkBeanObj.setAllocQty(updQty); // 2 + 0.244 = 2.244
worderStkBeanObj.setAllocQty(updQty);
worderStkBeanObj.setUpdQty(updQty);
worderStkBeanObj.setStockSufficient("N");
worderStkBeanObj.setQtyAdj(potencyAdj);//wasim on 13-04-2016
......@@ -2273,7 +2386,7 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
}
}//End
System.out.println("manohar after potency calculation balance 44["+balance+"]" );
if(balance > 0)
{
isReallocation = true;
......@@ -2313,7 +2426,7 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
detailMap.put("MIN_QTY_REQ", String.valueOf(worderDetailBeanObj.getMinReqQty()));
detailMap.put("BALANCE_QTY",balance+"");
System.out.println("manohar after potency calculation balance 444["+balance+"] fresh allocation to be done" );
Map<String,String>detailStkMap = checkCurrentSiteStock(detailMap, conn);
System.out.println("detailStkMap C.Potency-------->>["+detailStkMap+"]");
......@@ -2391,10 +2504,10 @@ public class WoFirmplanPrc extends ProcessEJB implements WoFirmplanPrcLocal,WoFi
System.out.println("In else of adj_potency null1.................."+requiredStock+" and avalable stock "+availableStock);
//directly set upd qty as bill qty
worderStkBeanObj.setAllocQty(requiredStock);
worderStkBeanObj.setUpdQty(requiredStock);
//worderStkBeanObj.setAllocQty(requiredStock);
//worderStkBeanObj.setUpdQty(requiredStock);
//worderStkBeanList.set(index, worderStkBeanObj); // 09-mar-16 manoharan commented
worderStkBeanList.set(innerCtr, worderStkBeanObj); // 09-mar-16 manoharan added
//worderStkBeanList.set(innerCtr, worderStkBeanObj); // 09-mar-16 manoharan added
}
}
......@@ -3974,6 +4087,7 @@ public String populateWorkOrderBill(Connection conn) throws Exception
System.out.println("WorkOrder12----------------->>"+wOrderBillObj.getWorkOrder());
workOrder = wOrderBillObj.getWorkOrder();
expLevel = wOrderBillObj.getExpLev();
System.out.println("Bill creation wOrderBillObj->WorkOrder["+wOrderBillObj.getWorkOrder()+"] ExpLev["+wOrderBillObj.getExpLev()+"] ItemCode["+wOrderBillObj.getItemCode()+"]SiteCode["+wOrderBillObj.getSiteCode()+"] Quantity["+wOrderBillObj.getQuantity()+"] Sufficient["+wOrderBillObj.getSufficient()+"] Operation["+wOrderBillObj.getOperation()+"] AllocateType["+wOrderBillObj.getAllocateType()+"] getAdjPotency ["+wOrderBillObj.getAdjPotency()+"] MatchPotency["+wOrderBillObj.getMatchPotency()+"] Crit Item["+wOrderBillObj.getCritItem()+"] ConsiderPartialAlt["+wOrderBillObj.getConsiderPartialAlt()+"] ConsiderLotNoIssue["+wOrderBillObj.getConsiderLotNoIssue()+"] MinPotencyPerc["+wOrderBillObj.getMinPotencyPerc()+"] QtyPer["+wOrderBillObj.getQtyPer()+"]getSuppCodeMfg["+wOrderBillObj.getSuppCodeMfg()+"] GetSufficient["+wOrderBillObj.getSufficient()+"] ReqQuantity["+wOrderBillObj.getReqQty()+"] getPotencyAdjQty["+wOrderBillObj.getPotencyAdjQty()+"] getItemCategory["+wOrderBillObj.getItemCategory()+"] getMinReqQty["+wOrderBillObj.getMinReqQty()+"] BatchNo["+wOrderBillObj.getBatchQty()+"] getRoundTo["+wOrderBillObj.getRoundTo()+"] getRound["+wOrderBillObj.getRound()+"] LocationUsageType["+wOrderBillObj.getLocUsageType()+"] ItemActive["+wOrderBillObj.getItemActive()+" AdjustedQuantity["+wOrderBillObj.getAdjustedQty()+"] UpdQuantity["+wOrderBillObj.getUpdQty()+"] LineType["+wOrderBillObj.getLineType()+"] QuantityRef["+wOrderBillObj.getQuantityRef()+"] UsageType["+wOrderBillObj.getUsageType()+"]");
String sql1 = "select item_code,unit from workorder where work_order = ?";
pstmt = conn.prepareStatement(sql1);
......@@ -4049,8 +4163,9 @@ public String populateWorkOrderBill(Connection conn) throws Exception
//Changed by wasim on 05-04-2016 to insert for usage type other than R [START]
System.out.println("Usage type["+wOrderBillObj.getUsageType()+"]");
if(!"R".equalsIgnoreCase(wOrderBillObj.getUsageType()))
{
// 09-jun-16 manoharan bill has to be created always for both usage_type O and R
//if(!"R".equalsIgnoreCase(wOrderBillObj.getUsageType()))
//{
pstmt = conn.prepareStatement(WoBillSql);
pstmt.setString(1, workOrder);
pstmt.setInt(2, wOrderBillObj.getOperation());
......@@ -4096,7 +4211,12 @@ public String populateWorkOrderBill(Connection conn) throws Exception
{
pstmt.close();pstmt = null;
}
}
System.out.println("worderExpMap------before >>["+worderExpMap+"]");
worderExpMap.put(workOrder+":"+expLevel, wOrderBillObj.getQuantity());
System.out.println("worderExpMap------after >>["+worderExpMap+"]");
//}
//Changed by wasim on 05-04-2016 to insert for usage type other than R [END]
for(WorderStkBean tempObj : worderStkBeanList)
......@@ -4368,9 +4488,12 @@ public String populateWorkOrderBill(Connection conn) throws Exception
invAllocateMap.put("chg_user",chgUser);
invAllocateMap.put("chg_term",termId);
invAllocateMap.put("chg_win","w_woFirmplan");
if (deAllocQty != 0)
{
errorString = invAllocTrace.updateInvallocTrace(invAllocateMap, conn);
System.out.println("After updateInvallocTrace errorString :["+errorString+"]");
}
}
else
{
System.out.println("Erorr in select");
......@@ -6147,12 +6270,15 @@ public String populateWorkOrderBill(Connection conn) throws Exception
strAllocate.put("chg_user",chgUser);
strAllocate.put("chg_term",termId);
strAllocate.put("chg_win","w_wo_firmplan");
if (allocQty != 0)
{
errorString = invAllocTrace.updateInvallocTrace(strAllocate, conn);
System.out.println("errorString after updateInvallocTrace allocate----->2["+errorString+"]");
}
}
}
}
}
......@@ -6228,7 +6354,7 @@ public String populateWorkOrderBill(Connection conn) throws Exception
StringBuffer stockDetailXml = new StringBuffer();
int cntReserve = 0, cntStk = 0;
boolean isReserve = false, isStkDetail = false;
boolean isReserve = false, isStkDetail = false, stockAllocated = false;
String workOrder = "",expLev = "";
firmPlanXMl.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
......@@ -6239,19 +6365,25 @@ public String populateWorkOrderBill(Connection conn) throws Exception
for(WorkOrderDetailBean tempDetailObj : workOrderBeanList)
{
if(reserveStockXMl.length() > 0)
{
reserveStockXMl.delete(0, reserveStockXMl.length());
}
if(stockDetailXml.length() > 0)
{
stockDetailXml.delete(0, stockDetailXml.length());
}
//if(reserveStockXMl.length() > 0)
//{
// reserveStockXMl.delete(0, reserveStockXMl.length());
//}
//if(stockDetailXml.length() > 0)
//{
// stockDetailXml.delete(0, stockDetailXml.length());
//}
reserveStockXMl = null;
stockDetailXml = null;
reserveStockXMl = new StringBuffer();
stockDetailXml = new StringBuffer();
isReserve = false;isStkDetail = false;
cntReserve = 0;
cntStk = 0;
workOrder = tempDetailObj.getWorkOrder();
expLev = tempDetailObj.getExpLev();
stockAllocated = false;
firmPlanXMl.append( "<exp_level>\r\n");
firmPlanXMl.append( "<work_order><![CDATA[" ).append( tempDetailObj.getWorkOrder() ).append( "]]></work_order>\r\n" );
......@@ -6301,16 +6433,18 @@ public String populateWorkOrderBill(Connection conn) throws Exception
for(WorderStkBean tempObj : worderStkBeanList)
{
isReserve = false;isStkDetail = false; // 07-jun-16 manoharan initialise for each stock item
if(workOrder.equalsIgnoreCase(tempObj.getWorkOrder()) && expLev.equalsIgnoreCase(tempObj.getExpLevel()) )
{
stockAllocated = true;
if("Y".equalsIgnoreCase(tempObj.getReserveStk()))
{
cntReserve++;
if(cntReserve == 1)
{
//cntReserve++;
//if(cntReserve == 1)
//{
reserveStockXMl.append("<reserve_stock>");
isReserve = true;
}
//isReserve = true;
//}
reserveStockXMl.append("<detail>");
reserveStockXMl.append("<site_code><![CDATA[" ).append( tempObj.getSiteCode() ).append( "]]></site_code>\r\n" );
......@@ -6335,17 +6469,44 @@ public String populateWorkOrderBill(Connection conn) throws Exception
reserveStockXMl.append( "<qty_adj><![CDATA[" ).append( tempObj.getPotencyAdj() ).append( "]]></qty_adj>\r\n" );
reserveStockXMl.append("<unit><![CDATA[" ).append( tempObj.getUnit() ).append( "]]></unit>\r\n" );
reserveStockXMl.append("</detail>");
reserveStockXMl.append("</reserve_stock> \r\n");
}
else
{
reserveStockXMl.append("<reserve_stock> \r\n");
reserveStockXMl.append("<detail>");
reserveStockXMl.append("<site_code><![CDATA[]]></site_code>\r\n" );
reserveStockXMl.append("<item_code><![CDATA[]]></item_code>\r\n" );
reserveStockXMl.append("<item_descr><![CDATA[]]></item_descr>\r\n" );
reserveStockXMl.append("<lot_no><![CDATA[]]></lot_no>\r\n" );
reserveStockXMl.append("<lot_sl><![CDATA[]]></lot_sl>\r\n" );
reserveStockXMl.append("<quantity><![CDATA[]]></quantity>\r\n" );
reserveStockXMl.append("<remarks><![CDATA[]]></remarks>\r\n" );
reserveStockXMl.append("<reas_code><![CDATA[]]></reas_code>\r\n" );
reserveStockXMl.append("<loc_code><![CDATA[]]></loc_code>\r\n" );
reserveStockXMl.append("<exp_lev><![CDATA[]]></exp_lev>\r\n" );
reserveStockXMl.append("<stock_potency><![CDATA[]]></stock_potency>\r\n" );
reserveStockXMl.append("<potency_adj><![CDATA[]]></potency_adj>\r\n" );
reserveStockXMl.append("<dealloc_qty><![CDATA[]]></dealloc_qty>\r\n" );
reserveStockXMl.append("<alloc_qty><![CDATA[]]></alloc_qty>\r\n" );
reserveStockXMl.append("<deallocated><![CDATA[]]></deallocated>\r\n" );
reserveStockXMl.append("<is_alternate><![CDATA[]]></is_alternate>\r\n" );
reserveStockXMl.append("</detail>");
reserveStockXMl.append("</reserve_stock> \r\n");
}
//else
if ( tempObj.getAllocQty() - tempObj.getReserveStkQty() > 0)
{
cntStk++;
if(cntStk == 1)
{
//cntStk++;
//if(cntStk == 1)
//{
stockDetailXml.append("<stock_detail>");
isStkDetail = true;
}
//isStkDetail = true;
//}
System.out.println("Other site for display["+tempObj.getSiteCode()+"]");
if("Y".equalsIgnoreCase(tempObj.getOtherSiteYN()))
......@@ -6379,6 +6540,7 @@ public String populateWorkOrderBill(Connection conn) throws Exception
stockDetailXml.append("<unit><![CDATA[" ).append( tempObj.getUnit() ).append( "]]></unit>\r\n" );
stockDetailXml.append("<other_site><![CDATA[" ).append("Y").append( "]]></other_site>\r\n" );
stockDetailXml.append("</detail>");
stockDetailXml.append("</stock_detail> \r\n");
}
}
else
......@@ -6407,19 +6569,36 @@ public String populateWorkOrderBill(Connection conn) throws Exception
stockDetailXml.append("<unit><![CDATA[" ).append( tempObj.getUnit() ).append( "]]></unit>\r\n" );
stockDetailXml.append("<other_site><![CDATA[" ).append("N").append( "]]></other_site>\r\n" );
stockDetailXml.append("</detail>");
stockDetailXml.append("</stock_detail> \r\n");
}
}
}
}
if( isReserve)
{
reserveStockXMl.append("</reserve_stock> \r\n");
}
if( isStkDetail)
else
{
stockDetailXml.append("<stock_detail> \r\n");
stockDetailXml.append("<detail>");
stockDetailXml.append("<site_code><![CDATA[]]></site_code>\r\n" );
stockDetailXml.append("<item_code><![CDATA[]]></item_code>\r\n" );
stockDetailXml.append("<item_descr><![CDATA[]]></item_descr>\r\n" );
stockDetailXml.append("<lot_no><![CDATA[]]></lot_no>\r\n" );
stockDetailXml.append("<lot_sl><![CDATA[]]></lot_sl>\r\n" );
stockDetailXml.append("<quantity><![CDATA[]]></quantity>\r\n" );
stockDetailXml.append("<remarks><![CDATA[]]></remarks>\r\n" );
stockDetailXml.append("<reas_code><![CDATA[]]></reas_code>\r\n" );
stockDetailXml.append("<loc_code><![CDATA[]]></loc_code>\r\n" );
stockDetailXml.append("<exp_lev><![CDATA[]]></exp_lev>\r\n" );
stockDetailXml.append("<potency_adj><![CDATA[]]></potency_adj>\r\n" );
stockDetailXml.append("<dealloc_qty><![CDATA[]]></dealloc_qty>\r\n" );
stockDetailXml.append("<alloc_qty><![CDATA[]]></alloc_qty>\r\n" );
stockDetailXml.append("<deallocated><![CDATA[]]></deallocated>\r\n" );
stockDetailXml.append("<is_alternate><![CDATA[]]></is_alternate>\r\n" );
stockDetailXml.append("</detail>");
stockDetailXml.append("</stock_detail> \r\n");
}
if(!isReserve)
}
if (!stockAllocated)
{
reserveStockXMl.append("<reserve_stock> \r\n");
reserveStockXMl.append("<detail>");
......@@ -6443,9 +6622,7 @@ public String populateWorkOrderBill(Connection conn) throws Exception
reserveStockXMl.append("<is_alternate><![CDATA[]]></is_alternate>\r\n" );
reserveStockXMl.append("</detail>");
reserveStockXMl.append("</reserve_stock> \r\n");
}
if(! isStkDetail)
{
stockDetailXml.append("<stock_detail> \r\n");
stockDetailXml.append("<detail>");
stockDetailXml.append("<site_code><![CDATA[]]></site_code>\r\n" );
......@@ -6468,6 +6645,17 @@ public String populateWorkOrderBill(Connection conn) throws Exception
stockDetailXml.append("</detail>");
stockDetailXml.append("</stock_detail> \r\n");
}
//if( isReserve)
//{
//reserveStockXMl.append("</reserve_stock> \r\n");
//}
//if( isStkDetail)
//{
// stockDetailXml.append("</stock_detail> \r\n");
//}
//if(!isReserve)
//if(! isStkDetail)
} /// for(WorderStkBean tempObj : worderStkBeanList)
firmPlanXMl.append(reserveStockXMl.append(stockDetailXml));
firmPlanXMl.append( "</exp_level>\r\n");
}
......
......@@ -100,7 +100,7 @@ public class WorkOrderRoute
pstmtInsert.setString(9, " ");
pstmtInsert.setString(10, " ");
//pstmtInsert.setString(11, schDate);
pstmtInsert.setDouble(11, quantity);
pstmtInsert.setDouble(11, procSize);
pstmtInsert.setDouble(12, waitTime);
pstmtInsert.setDouble(13, setTime);
pstmtInsert.setDouble(14, runTime);
......
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