Commit b3ff6bcf authored by ppatro's avatar ppatro

To merge src for WMS updated wave gen changes.


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@91964 ce508802-f39f-4f6c-b175-0d175dae99d5
parent a353bd14
......@@ -124,7 +124,23 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
int replCnt = 0;
boolean isReplHdr = false;
String replOrdCpy = "";
String replPndCpy = "";
int rplCntDSO = 0;
boolean isReplHdrDSO = false;
String replOrdDSOCpy = "";
int rplCntPND = 0;
boolean isReplHdrPND = false;
String replPNDCpy = "";
int rplCntPSO = 0;
boolean isReplHdrPSO = false;
String replOrdPSOCpy = "";
int rplCntRSV = 0;
boolean isReplHdrRSV = false;
String replOrdRSVCpy = "";
//Changed by Rohan on 13-09-12 to generate only one Repalnishmement Header.end
public String process() throws RemoteException,ITMException
......@@ -675,13 +691,15 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
System.out.println("partQty =["+partQty+"]");
System.out.println("singleLot =["+singleLot+"]");
System.out.println("MIN_SHELF_LIFE =["+minSelfLife+"]");
HashMap itemVolMap = getItemVoumeMap(itemCode, "", conn);
double packSize = (Double)itemVolMap.get("PACK_SIZE");
double itemSize = (Double)itemVolMap.get("ITEM_SIZE");
//Change by Rohan Bhogale on 19/07/12 To display transporte details.start
getTranInfo = new HashMap();
saleOrderTran = rs.getString("SALE_ORDER");
getTranInfo = getTransportInfo(saleOrderTran,conn);
getTranInfo = getTransportInfo(saleOrderTran,itemSize * pendingQty, conn);
tranCod = (String)getTranInfo.get("TRAN_CODE");
docLocation = getDocLoc(tranCod, conn);
pstmtTran = conn.prepareStatement(sqlTran);
......@@ -703,8 +721,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
rsTran = null;
}
HashMap itemVolMap = getItemVoumeMap(itemCode, "", conn);
double packSize = (Double)itemVolMap.get("PACK_SIZE");
/*HashMap itemVolMap = getItemVoumeMap(itemCode, "", conn);
double packSize = (Double)itemVolMap.get("PACK_SIZE");*/
if((pendingQty % packSize) > 0)
{
......@@ -1373,7 +1391,22 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
replCnt = 1;
isReplHdr = false;
replOrdCpy = "";
replPndCpy = "";
rplCntDSO = 1;
isReplHdrDSO = false;
replOrdDSOCpy = "";
rplCntPND = 1;
isReplHdrPND = false;
replPNDCpy = "";
rplCntPSO = 1;
isReplHdrPSO = false;
replOrdPSOCpy = "";
rplCntRSV = 1;
isReplHdrRSV = false;
replOrdRSVCpy = "";
//Changed by Rohan on 13-09-12 to generate only one Repalnishmement Header.end
try
......@@ -3132,7 +3165,12 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
String transMode = "";
//Changed by Rohan on 1-12-11 on [WM1ESUN006] to generate automatic ptcn number
String ptcnID = "";
String itemCode = "";
String lotNo = "";
double quantity = 0.0;
double itemWeight = 0.0;
double itemVolume = 0.0;
double packSize = 0.0;
//Changed by sumit on 03/08/12 start.
ArrayList ptcnList = new ArrayList();
......@@ -3191,10 +3229,14 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
Set sordList = saleOrderWiseMap.keySet();
Iterator it = sordList.iterator();
while(it.hasNext())
{
String sorderKey = (String)it.next();;
double totalWeightCurrentshipment = 0.0;
double totActVolume = 0.0, totActWeight = 0.0;
//String sorderKey = (String)it.next();;
String sorderKey = (String)it.next();
ArrayList itemMapList = (ArrayList)saleOrderWiseMap.get(sorderKey);
System.out.println("wave Id :"+waveId);
......@@ -3203,9 +3245,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
int itemMapListLen = itemMapList.size();
System.out.println("Current Sorder No :["+sorderKey+"]Map Length["+itemMapListLen+"]");
//Changed By Pragyan Demo4
HashMap transPorterInfoMap = getTransportInfo(saleOrder, conn);
/*HashMap transPorterInfoMap = getTransportInfo(saleOrder, conn);
tranCode = (String)transPorterInfoMap.get("TRAN_CODE");
transMode = (String)transPorterInfoMap.get("TRANS_MODE");
transMode = (String)transPorterInfoMap.get("TRANS_MODE");*/
/*for(int i =0;i<itemMapListLen;i++)
{
......@@ -3234,6 +3276,38 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
}*/
for(int i =0;i<itemMapListLen;i++)
{
double actCount = 0.0;
HashMap loadMap = (HashMap)itemMapList.get(i);
itemCode = (String)loadMap.get("item_code");
lotNo = (String)loadMap.get("lot_no");
quantity = (Double)loadMap.get("alloc_qty");
HashMap dataTempMap = getItemVoumeMap(itemCode, lotNo, conn);
itemWeight = (Double)dataTempMap.get("ITEM_WEIGHT");
itemVolume = (Double)dataTempMap.get("ITEM_SIZE");
packSize = (Double)dataTempMap.get("PACK_SIZE");
System.out.println("current item code"+itemCode+"]quantity["+quantity+"]itemWeight["+itemWeight+"]");
if(quantity < packSize)
{
actCount = quantity;
}
else
{
actCount = quantity % packSize;
}
totActWeight = totActWeight + ( actCount * itemWeight );
totActVolume = totActVolume + ( actCount * itemVolume );
totalWeightCurrentshipment = totalWeightCurrentshipment + ( itemWeight * quantity);
System.out.println("current total weight "+totalWeightCurrentshipment+"]");
}
System.out.println("Final weight for th shipment "+totalWeightCurrentshipment+"]");
HashMap transPorterInfoMap = getTransportInfo(saleOrder,totalWeightCurrentshipment, conn);
tranCode = (String)transPorterInfoMap.get("TRAN_CODE");
transMode = (String)transPorterInfoMap.get("TRANS_MODE");
// 05/07/12 separate list for PSO and DSO as earlier logic is wrong
//if(replList.size() > 0 || pickList.size() > 0)
//if(replListPSO.size() > 0 || replListDSO.size() > 0 || pickList.size() > 0)
......@@ -3252,7 +3326,7 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
pstmt = null;
}
errString = updatePickOrdPartII(headerDom, detailDom,waveId, siteCode,saleOrder ,xtraParams, itemMapList,ptcnID,transPorterInfoMap, conn);
errString = updatePickOrdPartII(headerDom, detailDom,waveId, siteCode,saleOrder ,xtraParams, itemMapList,ptcnID,transPorterInfoMap,totActVolume,totActWeight, conn);
//System.out.println("replListPSO.size() ["+replListPSO.size()+"] replListDSO.size() ["+replListDSO.size()+"] pickList.size()"+pickList.size());
......@@ -10255,7 +10329,7 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
}
//Changed by sumit sarkar on 26/08/2011 [ WM1ESUN006 ] update pick_ord_hrd & pick_ord_det table end.
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$-PICKING LOGIC CHANGE.START
private String updatePickOrdPartII(Document headerDom, Document detailDom,String waveID,String siteCode,String saleOrder, String xtraParams, ArrayList dataList,String ptcn,HashMap transportInfoMap, Connection conn )throws Exception
private String updatePickOrdPartII(Document headerDom, Document detailDom,String waveID,String siteCode,String saleOrder, String xtraParams, ArrayList dataList,String ptcn,HashMap transportInfoMap,double totActVolume,double totActWeight, Connection conn )throws Exception
{
String errString = "";
String sql = "";
......@@ -10294,6 +10368,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
double palletVolume = 0.0;
double palletMaxWeight = 0.0;
double packetMaxVolumeActive = 0.0;
double packetMaxWeightActive = 0.0;
double masterPackWeight = 0.0;
double masterPackCount = 0.0;
double masterPackWeightPerOrder = 0.0;
......@@ -10316,8 +10392,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
//Changed by Rohan on 13-09-12 to generate only one Repalnishmement Header.start
replCnt = 1;
isReplHdr = false;
boolean isActivePickHdr = false;
replOrdCpy = "";
boolean isActivePickHdr = false;
String pickHdrCpy = "";
//Changed by Rohan on 13-09-12 to generate only one Repalnishmement Header.end
......@@ -10351,6 +10427,22 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
masterPackWeight = Double.parseDouble(discommon.getDisparams("999999","MASTER_PACK_WEIGHT",conn));
isSinglePickMasterPack = discommon.getDisparams("999999","MASTER_PACK_SINGLE_PICK",conn);
if(totActWeight > 0 && totActVolume > 0)
{
String[] itmWeightVol = new String[3];
String itemVolumeWeight = getPackItemVolumeWeight(totActWeight , totActVolume, "A", conn);
itmWeightVol = itemVolumeWeight.split(":");
if(Double.parseDouble(itmWeightVol[0]) != 0.0)
{
packetMaxVolumeActive = Double.parseDouble(itmWeightVol[0]);
}
if(Double.parseDouble(itmWeightVol[1]) != 0.0)
{
packetMaxWeightActive = Double.parseDouble(itmWeightVol[1]);
}
}
mPackAllow = genericUtility.getColumnValue("master_pack_allow",detailDom);
mPackAllow = (mPackAllow != null && mPackAllow.length() > 0)?mPackAllow:"N";
......@@ -11076,7 +11168,7 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
quantity = activeCount;
}
//Changed by Rohan on 9/03/12 to get case packet,volume,wegiht.start
String[] itmWeightVol = new String[3];
/*String[] itmWeightVol = new String[3];
String itemVolumeWeight = getPackItemVolumeWeight((quantity * itemWeight) , (quantity * perItemVolume), "A", conn);
itmWeightVol = itemVolumeWeight.split(":");
......@@ -11088,12 +11180,12 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
if(Double.parseDouble(itmWeightVol[1]) != 0.0)
{
caseVolume = Double.parseDouble(itmWeightVol[1]);
}
System.out.println("palletMaxWeight:"+palletMaxWeight+"caseVolume:"+caseVolume);
}*/
System.out.println("packetMaxWeightActive:"+packetMaxWeightActive+"packetMaxVolumeActive:"+packetMaxVolumeActive);
//Changed by Rohan on 9/03/12 to get case packet,volume,wegiht.end
double quantityPerPallet = Math.floor( (quantity * perItemVolume)/caseVolume);
double totQtyPerPallet = Math.floor(caseVolume/perItemVolume);
double quantityPerPallet = Math.floor( (quantity * perItemVolume)/packetMaxVolumeActive);
double totQtyPerPallet = Math.floor(packetMaxVolumeActive/perItemVolume);
double renCtr = 0;
double volumeRmaining = Math.floor(perItemVolume * quantity);
......@@ -11134,10 +11226,10 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
double lastPackVolume = (Double)tempMap.get("LAST_PACK_VOLUME");
double lastPackWeight = (Double)tempMap.get("LAST_PACK_WEIGHT");
if(lastPackVolume < caseVolume && lastPackWeight < palletMaxWeight)
if(lastPackVolume < packetMaxVolumeActive && lastPackWeight < packetMaxWeightActive)
{
double remainingVolume = caseVolume - lastPackVolume;
double remainingVolume = packetMaxVolumeActive - lastPackVolume;
if(remainingVolume >= perItemVolume)
{
......@@ -11219,12 +11311,12 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
}
volumeRmaining = volumeRmaining - totQtyPerPallet * perItemVolume;
if(totQtyPerPallet < (volumeRmaining/perItemVolume))
if(totQtyPerPallet < Math.floor((volumeRmaining/perItemVolume)))
{
}
else
{
totQtyPerPallet =(volumeRmaining/perItemVolume);
totQtyPerPallet =Math.floor((volumeRmaining/perItemVolume));
System.out.println("After calculating>>>> ["+totQtyPerPallet+"]");
totQtyPerPallet =Math.floor(volumeRmaining/perItemVolume);
System.out.println("To be check after Floor>>>> ["+totQtyPerPallet+"]");
......@@ -12038,8 +12130,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
double packSizeCase = 0;
int cnt = 0;
String pickRefId = "";
String replRefId ="";
//String replRefId ="";
String replRefDeepId = "";
String replRefPndId ="";
pstmtRplHdr.setString(1,replRefDeepId);
pstmtRplHdr.setDate(2,orderDate);
......@@ -12064,7 +12157,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
pstmt.setDate(8,orderDate);
pstmt.setString(9,chgTerm);
//pstmt.executeUpdate();
double itemVolumeTotal = 0.0;
double itemWeightTotal = 0.0;
ArrayList tempList = (ArrayList)allActivesList.get(cCTR);
int tempLen = tempList.size();
......@@ -12100,8 +12194,10 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
double itemVolume = (Double)mapItemVolume.get("ITEM_SIZE");
double itemWeight=(Double)mapItemVolume.get("ITEM_WEIGHT");
packSizeCase = (Double)mapItemVolume.get("PACK_SIZE");
double itemVolumeTotal = quantity*itemVolume;
double itemWeightTotal = quantity*itemWeight;
/*double itemVolumeTotal = quantity*itemVolume;
double itemWeightTotal = quantity*itemWeight; */
int refCtr = 1;
pstmtRplDet.setString(1,replRefDeepId);
......@@ -12192,10 +12288,11 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
pstmtDet.setInt(15,Integer.parseInt(replLineNo));
pstmtDet.executeUpdate();
updateReplOrdDet( "",itemCode, siteCode, locCode, lotNo, lotSl,locCodeAct,0.0,acReplOrder,replLineNo, conn);
itemVolumeTotal = avilableQty*itemVolume;
itemWeightTotal = avilableQty*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
//updateReplOrdDet( "",itemCode, siteCode, locCode, lotNo, lotSl,locCodeAct,0.0,acReplOrder,replLineNo, conn);
updateReplOrdDet( "",itemCode, siteCode, locCode, lotNo, lotSl,locCodeAct,0.0,acPrvReplOrder,acPrvLineNo, conn);
itemVolumeTotal = itemVolumeTotal + avilableQty*itemVolume;
itemWeightTotal = itemWeightTotal + avilableQty*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
double quantityToUpd = quantity - avilableQty;
if(quantityToUpd > 0)
......@@ -12249,9 +12346,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
pstmtDet.setString(14,dPickReplOrder);
pstmtDet.setInt(15,Integer.parseInt(dPickReplLineNo));
pstmtDet.executeUpdate();
itemVolumeTotal = quantityToUpd*itemVolume;
itemWeightTotal = quantityToUpd*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
itemVolumeTotal = itemVolumeTotal + quantityToUpd*itemVolume;
itemWeightTotal = itemWeightTotal + quantityToUpd*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
//Insert avilableQty into Pick Ord hdr and Det.end
System.out.println("pendActQty"+pendActQty);
if(pendActQty > 0)
......@@ -12307,9 +12404,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
pstmtDet.executeUpdate();
updateReplOrdDet( "",itemCode, siteCode, locCode, lotNo, lotSl,actPkDeepLoc, (avilableCaseQty - packSizeCase - quantityToUpd) ,cReplOrder,cReplOrderLine, conn);
updateReplOrdDet( "Q",itemCode, siteCode, locCodeCase, lotNo, lotSl,locCodeCaseAct, (packSizeCase - pendActQty) ,dReplOrder,dReplOrderLine, conn);
itemVolumeTotal = pendActQty*itemVolume;
itemWeightTotal = pendActQty*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
itemVolumeTotal = itemVolumeTotal + pendActQty*itemVolume;
itemWeightTotal = itemWeightTotal + pendActQty*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
}
}
......@@ -12325,9 +12422,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
pstmtDet.setString(14,acPrvReplOrder);
pstmtDet.setInt(15,Integer.parseInt(acPrvLineNo));
pstmtDet.executeUpdate();
itemVolumeTotal = quantityToUpd*itemVolume;
itemWeightTotal = quantityToUpd*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
itemVolumeTotal = itemWeightTotal + quantityToUpd*itemVolume;
itemWeightTotal = itemWeightTotal + quantityToUpd*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
}
}
else
......@@ -12394,49 +12491,114 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
updateReplOrdDet( "Q",itemCode, siteCode, locCodeCase, lotNo, lotSl,actPkDeepLoc, (packSizeCase - quantityToUpd) ,replRefDeepId,String.valueOf(replCnt), conn);
updateReplOrdDet( "",itemCode, siteCode, locCode, lotNo, lotSl,actPkDeepLoc, (avilableCaseQty - packSizeCase - quantityToUpd) ,cReplOrder,cReplOrderLine, conn);
itemVolumeTotal = quantityToUpd*itemVolume;
itemWeightTotal = quantityToUpd*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
itemVolumeTotal = itemWeightTotal + quantityToUpd*itemVolume;
itemWeightTotal = itemWeightTotal + quantityToUpd*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
}
}
else
{
if(!locInvStat.equalsIgnoreCase(activePickInv))
{
if(locInvStat.equalsIgnoreCase(casePickInv))
{
if(!isReplHdr)
{
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"R-ACT","E",ptcn,conn);
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"R-CPA","E",ptcn,conn);
pstmtRplHdr.setString(1,replRefDeepId);
pstmtRplHdr.setString(9,"Q");
pstmtRplHdr.executeUpdate();
isReplHdr = true;
replOrdCpy = replRefDeepId;
}
else
{
replRefDeepId = replOrdCpy ;
replCnt++;
refCtr = replCnt;
}
if(!isActivePickHdr)
}
if(locInvStat.equalsIgnoreCase(invDeepReserve))
{
pickRefId = updateWaveTaskDet(waveID,2,saleOrder,"A-PICK","A",ptcn,conn);
pickHdrCpy = pickRefId;
isActivePickHdr = true;
pstmt.setString(1,pickRefId);
pstmt.executeUpdate();
if(!isReplHdrDSO)
{
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"RD-DSA","E",ptcn,conn);
pstmtRplHdr.setString(1,replRefDeepId);
pstmtRplHdr.setString(9,"E");
pstmtRplHdr.executeUpdate();
isReplHdrDSO = true;
replOrdDSOCpy = replRefDeepId;
}
else
{
pickRefId = pickHdrCpy;
pickCtr++;
replRefDeepId = replOrdDSOCpy ;
//replCnt++;
rplCntDSO++;
System.out.println("Current DSO Line No ["+rplCntDSO+"]");
refCtr = rplCntDSO;
System.out.println("Current DSO Line No refCtr ["+refCtr+"]");
}
}
if(locInvStat.equalsIgnoreCase(invReserve))
{
if(!isReplHdrPSO)
{
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"RR-DSA","E",ptcn,conn);
pstmtRplHdr.setString(1,replRefDeepId);
pstmtRplHdr.setString(9,"Q");
pstmtRplHdr.executeUpdate();
isReplHdrPSO = true;
replOrdPSOCpy = replRefDeepId;
}
else
{
replRefDeepId = replOrdPSOCpy ;
//replCnt++;
rplCntPSO++;
refCtr = rplCntPSO;
}
}
if(locInvStat.equalsIgnoreCase(partialResrvLoc))
{
if(!isReplHdrRSV)
{
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"RP-ACT","E",ptcn,conn);
pstmtRplHdr.setString(1,replRefDeepId);
pstmtRplHdr.setString(9,"Q");
pstmtRplHdr.executeUpdate();
isReplHdrRSV = true;
replOrdRSVCpy = replRefDeepId;
}
else
{
replRefDeepId = replOrdRSVCpy ;
//replCnt++;
rplCntRSV++;
refCtr = rplCntRSV;
}
}
pstmtRplDet.setString(1,replRefDeepId);
pstmtRplDet.setInt(2,replCnt);
pstmtRplDet.setInt(2,refCtr);
pstmtRplDet.setString(12,"");
replCnt++;
//replCnt++;
pstmtRplDet.setInt(13,0);
/*if(locInvStat.equalsIgnoreCase(partialResrvLoc))
{
packSizeCase = stkQty;
pstmtRplDet.setDouble(11, stkQty);
}*/
if(locInvStat.equalsIgnoreCase(invDeepReserve))
{
pndLoc = getAvilablePickLocation("N", conn, itemLocType,locZonePref,locCode,itemCode,siteCode,lotNo,lotSl);
......@@ -12467,21 +12629,39 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
return errString;
}
}
pstmtRplDet.executeUpdate();
}
if(locInvStat.equalsIgnoreCase(invDeepReserve))
{
pstmtRplDet.setString(1,replRefDeepId);
pstmtRplDet.setInt(2,replCnt);
//Changed by Rohan on 13-09-12 to generate only one Repalnishmement Header.start
//pstmtRplDet.setString(12,pickRefId);
if(!isReplHdrPND)
{
replRefPndId = updateWaveTaskDet(waveID,1,saleOrder,"RN-DSA","E",ptcn,conn);
pstmtRplHdr.setString(1,replRefPndId);
pstmtRplHdr.setString(9,"I");
pstmtRplHdr.executeUpdate();
isReplHdrPND = true;
replPNDCpy = replRefPndId;
}
else
{
replRefPndId = replPNDCpy ;
//replCnt++;
rplCntPND++;
}
actPkDeepLoc = getAvilablePickLocation(pickType, conn, itemLocType,locZonePref,locCode,itemCode,siteCode,lotNo,lotSl);
pstmtRplDet.setString(1,replRefPndId);
pstmtRplDet.setInt(2,rplCntPND);
pstmtRplDet.setString(12,replRefDeepId);
pstmtRplDet.setInt(13,(replCnt-1));
//Changed by Rohan on 13-09-12 to generate only one Repalnishmement Header.end
pstmtRplDet.setInt(13,rplCntDSO);
pstmtRplDet.setString(7,pndLoc);
actPkDeepLoc = getAvilablePickLocation(pickType, conn, itemLocType,locZonePref,locCode,itemCode,siteCode,lotNo,lotSl);
if(actPkDeepLoc != null && actPkDeepLoc.length() > 0)
{
pstmtRplDet.setString(15,actPkDeepLoc);
......@@ -12492,24 +12672,53 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
errString = getError(saleOrder,"INVAPKLOC",conn);
return errString;
}
pstmtRplDet.executeUpdate();
}
if(!isActivePickHdr)
{
pickRefId = updateWaveTaskDet(waveID,2,saleOrder,"A-PICK","A",ptcn,conn);
pickHdrCpy = pickRefId;
isActivePickHdr = true;
pstmt.setString(1,pickRefId);
pstmt.executeUpdate();
}
else
{
pickRefId = pickHdrCpy;
pickCtr++;
}
pstmtDet.setString(1,pickRefId);
pstmtDet.setInt(2,pickCtr);
if(locInvStat.equalsIgnoreCase(invDeepReserve) || locInvStat.equalsIgnoreCase(invReserve) || locInvStat.equalsIgnoreCase(casePickInv) || locInvStat.equalsIgnoreCase(partialResrvLoc))
{
pstmtDet.setString(7,actPkDeepLoc);
}
else
{
pstmtDet.setString(7,locCode);
}
pstmtDet.setDouble(11,quantityToUpd);
if(locInvStat.equalsIgnoreCase(invDeepReserve))
{
pstmtDet.setString(14,replRefPndId);
pstmtDet.setInt(15,rplCntPND);
}
else
{
pstmtDet.setString(14,replRefDeepId);
//Changed by Rohan on 13-09-12 to generate only one Repalnishmement Header
pstmtDet.setInt(15,(replCnt-1));
pstmtDet.setInt(15,refCtr);
}
pstmtDet.executeUpdate();
//Changed by Rohan on 13-09-12 to generate only one Repalnishmement Header
//updateReplOrdDet("I", itemCode, siteCode, locCode, lotNo, lotSl,actPkDeepLoc,(packSizeCase - quantityToUpd),replRefDeepId, conn);
updateReplOrdDet("I", itemCode, siteCode, locCode, lotNo, lotSl,actPkDeepLoc,(packSizeCase - quantityToUpd),replRefDeepId,String.valueOf(replCnt-1), conn);
itemVolumeTotal = quantityToUpd*itemVolume;
itemWeightTotal = quantityToUpd*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
itemVolumeTotal = itemVolumeTotal + quantityToUpd*itemVolume;
itemWeightTotal = itemWeightTotal + quantityToUpd*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
}
}
......@@ -12543,10 +12752,10 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
pstmtDet.executeUpdate();
//Changed by Rohan on 13-09-12 to generate only one Repalnishmement Header
//updateReplOrdDet("I", itemCode, siteCode, locCode, lotNo, lotSl,locCodeAct, avilableQty - quantity,acReplOrder, conn);
updateReplOrdDet("I", itemCode, siteCode, locCode, lotNo, lotSl,locCodeAct, avilableQty - quantity,acReplOrder,replLineNo, conn);
itemVolumeTotal = quantity*itemVolume;
itemWeightTotal = quantity*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
updateReplOrdDet("I", itemCode, siteCode, locCode, lotNo, lotSl,locCodeAct, avilableQty - quantity,acPrvReplOrder,acPrvLineNo, conn);
itemVolumeTotal = itemWeightTotal + quantity*itemVolume;
itemWeightTotal = itemWeightTotal + quantity*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
}
}
else if(tempCaseReplList.size() > 0)
......@@ -12604,16 +12813,16 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
//updateReplOrdDet( "",itemCode, siteCode, locCode, lotNo, lotSl,actPkDeepLoc, (avilableCaseQty - avilableCaseActQty) ,lloReplOrder,replLineNo, conn);
updateReplenishmentRecord(itemCode, siteCode, lotNo, lotSl, locCode, avilableCaseActQty, lloReplOrder,"",9999, 2,casePackSize,false, conn);
itemVolumeTotal = avilableCaseActQty*itemVolume;
itemWeightTotal = avilableCaseActQty*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
itemVolumeTotal = itemWeightTotal + avilableCaseActQty*itemVolume;
itemWeightTotal = itemWeightTotal + avilableCaseActQty*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
//Insert avilableQty into Pick Ord hdr and Det.end
if(pendActQty > 0)
{
if(!isReplHdr)
{
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"R-ACT","C",ptcn,conn);
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"R-CPA","C",ptcn,conn);
pstmtRplHdr.setString(1,replRefDeepId);
pstmtRplHdr.setString(9,"Q");
pstmtRplHdr.executeUpdate();
......@@ -12676,9 +12885,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
//updateReplOrdDet( "",itemCode, siteCode, locCode, lotNo, lotSl,actPkDeepLoc, (avilableCaseQty - pendActQty - avilableCaseActQty) ,lloReplOrder,replLineNo, conn);
updateReplenishmentRecord(itemCode, siteCode, lotNo, lotSl, locCode, pendActQty, lloReplOrder,"",9999, 2,casePackSize,false, conn);
//Changed by Rohan on 13-09-12 to generate only one Repalnishmement Header.end
itemVolumeTotal = pendActQty*itemVolume;
itemWeightTotal = pendActQty*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
itemVolumeTotal = itemVolumeTotal + pendActQty*itemVolume;
itemWeightTotal = itemWeightTotal + pendActQty*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
}
}
......@@ -12711,9 +12920,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
updateReplOrdDet( "Q",itemCode, siteCode, locCodeCase, lotNo, lotSl,locCodeCaseAct,pendActQty,sReplOrder,replLineNoDsa, conn);
//updateReplOrdDet( "",itemCode, siteCode, locCode, lotNo, lotSl,actPkDeepLoc, (avilableCaseQty - quantity) ,lloReplOrder,replLineNo, conn);
updateReplenishmentRecord(itemCode, siteCode, lotNo, lotSl, locCode, quantity, lloReplOrder,"",9999, 2,casePackSize,false, conn);
itemVolumeTotal = quantity*itemVolume;
itemWeightTotal = quantity*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
itemVolumeTotal =itemWeightTotal + quantity*itemVolume;
itemWeightTotal = itemWeightTotal + quantity*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
}
}
else
......@@ -12721,7 +12930,7 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
if(!isReplHdr)
{
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"R-ACT","C",ptcn,conn);
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"R-CPA","C",ptcn,conn);
pstmtRplHdr.setString(1,replRefDeepId);
pstmtRplHdr.setString(9,"Q");
pstmtRplHdr.executeUpdate();
......@@ -12793,9 +13002,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
updateReplOrdDet( "Q",itemCode, siteCode, locCodeCase, lotNo, lotSl,actPkDeepLoc, (packSizeCase - quantity) ,replRefDeepId,String.valueOf(replCnt), conn);
//updateReplOrdDet( "",itemCode, siteCode, locCode, lotNo, lotSl,actPkDeepLoc, (avilableCaseQty - quantity) ,lloReplOrder,replLineNo, conn);
updateReplenishmentRecord(itemCode, siteCode, lotNo, lotSl, locCode,quantity , lloReplOrder,"",9999, 2,casePackSize,false, conn);
itemVolumeTotal = quantity*itemVolume;
itemWeightTotal = quantity*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
itemVolumeTotal = itemVolumeTotal + quantity*itemVolume;
itemWeightTotal = itemWeightTotal + quantity*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
}
......@@ -12807,9 +13016,11 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
if(!locInvStat.equalsIgnoreCase(activePickInv))
{
if(locInvStat.equalsIgnoreCase(casePickInv))
{
if(!isReplHdr)
{
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"R-ACT","E",ptcn,conn);
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"R-CPA","E",ptcn,conn);
pstmtRplHdr.setString(1,replRefDeepId);
pstmtRplHdr.setString(9,"Q");
pstmtRplHdr.executeUpdate();
......@@ -12820,13 +13031,78 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
{
replRefDeepId = replOrdCpy ;
replCnt++;
refCtr = replCnt;
}
}
if(locInvStat.equalsIgnoreCase(invDeepReserve))
{
if(!isReplHdrDSO)
{
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"RD-DSA","E",ptcn,conn);
pstmtRplHdr.setString(1,replRefDeepId);
pstmtRplHdr.setString(9,"E");
pstmtRplHdr.executeUpdate();
isReplHdrDSO = true;
replOrdDSOCpy = replRefDeepId;
}
else
{
replRefDeepId = replOrdDSOCpy ;
//replCnt++;
rplCntDSO++;
System.out.println("Current DSO Line No ["+rplCntDSO+"]");
refCtr = rplCntDSO;
System.out.println("Current DSO Line No refCtr ["+refCtr+"]");
}
}
if(locInvStat.equalsIgnoreCase(invReserve))
{
if(!isReplHdrPSO)
{
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"RR-DSA","E",ptcn,conn);
pstmtRplHdr.setString(1,replRefDeepId);
pstmtRplHdr.setString(9,"Q");
pstmtRplHdr.executeUpdate();
isReplHdrPSO = true;
replOrdPSOCpy = replRefDeepId;
}
else
{
replRefDeepId = replOrdPSOCpy ;
//replCnt++;
rplCntPSO++;
refCtr = rplCntPSO;
}
}
if(locInvStat.equalsIgnoreCase(partialResrvLoc))
{
if(!isReplHdrRSV)
{
replRefDeepId = updateWaveTaskDet(waveID,1,saleOrder,"RP-ACT","E",ptcn,conn);
pstmtRplHdr.setString(1,replRefDeepId);
pstmtRplHdr.setString(9,"Q");
pstmtRplHdr.executeUpdate();
isReplHdrRSV = true;
replOrdRSVCpy = replRefDeepId;
}
else
{
replRefDeepId = replOrdRSVCpy ;
//replCnt++;
rplCntRSV++;
refCtr = rplCntRSV;
}
}
pstmtRplDet.setString(1,replRefDeepId);
pstmtRplDet.setInt(2,replCnt);
pstmtRplDet.setInt(2,refCtr);
pstmtRplDet.setString(12,"");
replCnt++;
//replCnt++;
pstmtRplDet.setInt(13,0);
if(locInvStat.equalsIgnoreCase(partialResrvLoc))
......@@ -12873,12 +13149,29 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
if(locInvStat.equalsIgnoreCase(invDeepReserve))
{
if(!isReplHdrPND)
{
replRefPndId = updateWaveTaskDet(waveID,1,saleOrder,"RN-DSA","E",ptcn,conn);
pstmtRplHdr.setString(1,replRefPndId);
pstmtRplHdr.setString(9,"I");
pstmtRplHdr.executeUpdate();
isReplHdrPND = true;
replPNDCpy = replRefPndId;
}
else
{
replRefPndId = replPNDCpy ;
//replCnt++;
rplCntPND++;
}
actPkDeepLoc = getAvilablePickLocation(pickType, conn, itemLocType,locZonePref,locCode,itemCode,siteCode,lotNo,lotSl);
pstmtRplDet.setString(1,replRefDeepId);
pstmtRplDet.setString(1,replRefPndId);
pstmtRplDet.setInt(2,replCnt);
pstmtRplDet.setInt(2,rplCntPND);
pstmtRplDet.setString(12,replRefDeepId);
pstmtRplDet.setInt(13,(replCnt-1));
pstmtRplDet.setInt(13,rplCntDSO);
pstmtRplDet.setString(7,pndLoc);
......@@ -12921,19 +13214,32 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
{
pstmtDet.setString(7,locCode);
}
if(locInvStat.equalsIgnoreCase(invDeepReserve))
{
pstmtDet.setString(14,replRefPndId);
pstmtDet.setInt(15,rplCntPND);
}
else
{
pstmtDet.setString(14,replRefDeepId);
pstmtDet.setInt(15,(replCnt-1));
pstmtDet.setInt(15,refCtr);
}
pstmtDet.executeUpdate();
if(!locInvStat.equalsIgnoreCase(activePickInv))
{
updateReplOrdDet("I", itemCode, siteCode, locCode, lotNo, lotSl,actPkDeepLoc,(packSizeCase - quantity),replRefDeepId,String.valueOf(replCnt-1), conn);
updateReplOrdDet("I", itemCode, siteCode, locCode, lotNo, lotSl,actPkDeepLoc,(packSizeCase - quantity),replRefDeepId,String.valueOf(refCtr), conn);
}
itemVolumeTotal = quantity*itemVolume;
itemWeightTotal = quantity*itemWeight;
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
itemVolumeTotal = itemVolumeTotal + quantity*itemVolume;
itemWeightTotal = itemWeightTotal + quantity*itemWeight;
//updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
}
}
//////////////////////To add Carton no generation for Actives Hear///////////////////////////////////////
updateCartonMaster(pickRefId, pickCtr,Double.parseDouble(noArt),ptcn,"A-PICK", xtraParams, conn,itemWeightTotal,itemVolumeTotal,pickType);
}
}
......@@ -13465,7 +13771,7 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
int ctr, curDigit = 0, chkDigit = 0, padLen = 0; // runNumber = 4967235
try
{
if (mfgCode == null || mfgCode.trim().length() <= 0)
if (mfgCode == null || mfgCode.length() <= 0)
{
mfgCode = "04";
}
......@@ -13497,13 +13803,14 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
// step 1 - multiple odd sum with 3
sumOdd = sumOdd * 3;
chkDigit = 10 - ((sumEven + sumOdd) % 10) ;
if (chkDigit > 9)
if(chkDigit > 9)
{
chkDigit = 0;
}
//System.out.println( " Integer(chkDigit).toString() [" + String.valueOf(chkDigit) +"]" );
//sscc18 =
sscc18 = "0" + inputStr + String.valueOf(chkDigit);
sscc18 ="0" + inputStr + String.valueOf(chkDigit);
System.out.println(" chkDigit [" + chkDigit + "] sumOdd [" + sumOdd + "] sumEven [" + sumEven + "] inputStr [" + inputStr + "] sscc18 [" + sscc18 +"]" );
......@@ -13759,7 +14066,7 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
dlvAdd1 = rSet.getString(7);
dlvAdd2 = rSet.getString(8);
countCodeDlv = rSet.getString(9);
transMode = rSet.getString(10);
//transMode = rSet.getString(10);
stanCode = rSet.getString(11);
confirmed = rSet.getString(12);
confDate = rSet.getTimestamp(13);
......@@ -14138,12 +14445,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
}
//packSize = (lotHeight * lotWidth * lotLen)/(itmLen * itmWidth * itmHeight);
//Changed by sumit on 10/10/12 doing floor (as per Pragyan sir) start
/*itemSize = (itmLen * itmWidth * itmHeight);
lotSize = (lotHeight * lotWidth * lotLen);*/
itemSize = Math.floor((itmLen * itmWidth * itmHeight));
itemSize = Math.floor(itmLen * itmWidth * itmHeight);
lotSize = Math.floor((lotHeight * lotWidth * lotLen));
//Changed by sumit on 10/10/12 doing floor (as per Pragyan sir) end
dataVolumeMap.put("PACK_SIZE", packSize);
dataVolumeMap.put("ITEM_SIZE", itemSize);
......@@ -14932,7 +15235,7 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
}
return suggLocCode;
}
private HashMap getTransportInfo(String saleOrder,Connection conn) throws ITMException
private HashMap getTransportInfo(String saleOrder,double perShipWeight ,Connection conn) throws ITMException
{
String sql = "";
String sql1 = "";
......@@ -15052,7 +15355,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
sql = " SELECT A.TRAN_CODE AS TRAN_CODE,A.TRANS_MODE AS TRANS_MODE,A.MAX_WEIGHT,A.LOC_TYPE FROM DISTROUTEDET A,DISTROUTE B "
+ " WHERE ( A.PIN__FR = ? OR A.PIN__FR = ' ' ) AND (A.PIN__TO = ? OR A.PIN__TO = ' ') AND (A.STAN_CODE__FR =? OR A.STAN_CODE__FR = ' ' ) "
+ " AND ( A.STAN_CODE__TO =? OR A.STAN_CODE__TO = ' ') AND ( A.STATE_CODE__FR = ? OR A.STATE_CODE__FR = ' ') "
+ "AND ( A.STATE_CODE__TO = ? OR A.STATE_CODE__TO = ' ' ) AND A.DIST_ROUTE = B.DIST_ROUTE AND B.CUST_CODE = ? ";
// + "AND ( A.STATE_CODE__TO = ? OR A.STATE_CODE__TO = ' ' ) AND A.DIST_ROUTE = B.DIST_ROUTE AND B.CUST_CODE = ? ";
+ "AND ( A.STATE_CODE__TO = ? OR A.STATE_CODE__TO = ' ' ) AND A.DIST_ROUTE = B.DIST_ROUTE AND B.CUST_CODE = ? AND MIN_WEIGHT <= ? AND MAX_WEIGHT >= ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,pinFrm);
......@@ -15062,6 +15366,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
pstmt.setString(5,stateCodeFrm);
pstmt.setString(6,stateCodeCust);
pstmt.setString(7,custCodeDlv);
pstmt.setDouble(8,perShipWeight);
pstmt.setDouble(9,perShipWeight);
rs = pstmt.executeQuery();
if(rs.next())
......@@ -15086,7 +15392,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
sql = " SELECT A.TRAN_CODE AS TRAN_CODE,A.TRANS_MODE AS TRANS_MODE,A.MAX_WEIGHT,A.LOC_TYPE FROM DISTROUTEDET A,DISTROUTE B "
+ " WHERE ( A.PIN__FR = ? OR A.PIN__FR = ' ' ) AND (A.PIN__TO = ? OR A.PIN__TO = ' ') AND (A.STAN_CODE__FR =? OR A.STAN_CODE__FR = ' ' ) "
+ " AND ( A.STAN_CODE__TO =? OR A.STAN_CODE__TO = ' ') AND ( A.STATE_CODE__FR = ? OR A.STATE_CODE__FR = ' ') "
+ "AND ( A.STATE_CODE__TO = ? OR A.STATE_CODE__TO = ' ' ) AND A.DIST_ROUTE = B.DIST_ROUTE ";
// + "AND ( A.STATE_CODE__TO = ? OR A.STATE_CODE__TO = ' ' ) AND A.DIST_ROUTE = B.DIST_ROUTE ";
+ "AND ( A.STATE_CODE__TO = ? OR A.STATE_CODE__TO = ' ' ) AND A.DIST_ROUTE = B.DIST_ROUTE AND MIN_WEIGHT <= ? AND MAX_WEIGHT >= ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,pinFrm);
......@@ -15095,6 +15402,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
pstmt.setString(4,stanCodeCust);
pstmt.setString(5,stateCodeFrm);
pstmt.setString(6,stateCodeCust);
pstmt.setDouble(7,perShipWeight);
pstmt.setDouble(8,perShipWeight);
rs = pstmt.executeQuery();
if(rs.next())
{
......@@ -18697,7 +19007,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
}
sqlPnd = "SELECT R.REPL_ORDER,R.LINE_NO,R.PICK_ORDER,R.LINE_NO__PICK,R.LOC_CODE__TO,R.ACTUAL_QTY FROM REPL_ORD_DET R,lOCATION L WHERE R.REPL_ORDER = ? AND R.LINE_NO = ?";
//sqlPnd = "SELECT R.REPL_ORDER,R.LINE_NO,R.PICK_ORDER,R.LINE_NO__PICK,R.LOC_CODE__TO,R.ACTUAL_QTY FROM REPL_ORD_DET R,lOCATION L WHERE R.REPL_ORDER = ? AND R.LINE_NO = ?";
sqlPnd = "SELECT R.REPL_ORDER,R.LINE_NO,R.PICK_ORDER,R.LINE_NO__PICK,R.LOC_CODE__TO,R.ACTUAL_QTY FROM REPL_ORD_DET R,lOCATION L WHERE R.PICK_ORDER = ? AND R.LINE_NO__PICK = ?";
/*else if(replType.equalsIgnoreCase("I"))
{
......@@ -18737,14 +19048,17 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
pstmt = null;
}
if((replType.equalsIgnoreCase("I") || replType == "") && ( pickOrder != null && pickOrder.length() > 0))
//if((replType.equalsIgnoreCase("I") || replType == "") && ( pickOrder != null && pickOrder.length() > 0))
if((replType.equalsIgnoreCase("I") || replType == ""))
{
pstmt = conn.prepareStatement(sqlPnd);
pstmt.setString(1, pickOrder);
pstmt.setString(2, lineNoPick);
pstmt.setString(1, replOrder);
pstmt.setString(2, replLineNo);
rs = pstmt.executeQuery();
if(replType == "")
{
if(rs.next())
{
//replOrder = checkNull(rs.getString("REPL_ORDER"));
......@@ -18754,6 +19068,19 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
LocCodeTo = checkNull(rs.getString("LOC_CODE__TO"));
}
}
else
{
if(rs.next())
{
replOrder = checkNull(rs.getString("REPL_ORDER"));
replLineNo = checkNull(rs.getString("LINE_NO"));
pickOrder = checkNull(rs.getString("PICK_ORDER"));
lineNoPick = checkNull(rs.getString("LINE_NO__PICK"));
LocCodeTo = checkNull(rs.getString("LOC_CODE__TO"));
}
}
if(rs != null)
{
rs.close();
......@@ -18767,6 +19094,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
}
if(LocCodeTo != null && LocCodeTo.length() > 0)
{
tempList.add(LocCodeTo);
......@@ -18934,16 +19263,18 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
private String getPackItemVolumeWeight(double weight,double volume, String packType,Connection conn)throws Exception
{
String sql = "";
String sql = "",sSQL = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
PreparedStatement pstmt1 = null;
ResultSet rs1 = null;
double volumeItem = 0.0;
double weightItem = 0.0;
try
{
sql = "SELECT GROSS_WEIGHT,LENGTH*WIDTH*HEIGHT AS VOLUME "+
sql= "SELECT GROSS_WEIGHT,LENGTH*WIDTH*HEIGHT AS VOLUME "+
" FROM PACKING WHERE " +
"LENGTH*WIDTH*HEIGHT>=? and "+
"GROSS_WEIGHT= ( SELECT MIN(GROSS_WEIGHT) " +
......@@ -18953,6 +19284,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
"GROSS_WEIGHT>=? AND LENGTH*WIDTH*HEIGHT>=? AND PACK_TYPE IN(?,'B') ) AND PACK_TYPE IN(?,'B') ) AND PACK_TYPE IN(?,'B') "+
"ORDER BY LENGTH*WIDTH*HEIGHT";
sSQL = "SELECT GROSS_WEIGHT,LENGTH*WIDTH*HEIGHT AS VOLUME "
+" FROM PACKING WHERE PACK_TYPE IN( ?,'B') AND ( LENGTH*WIDTH*HEIGHT) > 0 AND GROSS_WEIGHT > 0 "
+" ORDER BY LENGTH*WIDTH*HEIGHT DESC";
pstmt = conn.prepareStatement(sql);
......@@ -18966,8 +19300,43 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
rs = pstmt.executeQuery();
if(rs.next())
{
weightItem = rs.getDouble("GROSS_WEIGHT");
volumeItem = rs.getDouble("VOLUME");
weightItem = Math.floor( rs.getDouble("GROSS_WEIGHT"));
volumeItem = Math.floor( rs.getDouble("VOLUME"));
}
else
{
pstmt1 = conn.prepareStatement(sSQL);
pstmt1.setString(1, packType);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
weightItem = Math.floor( rs1.getDouble("GROSS_WEIGHT"));
volumeItem = Math.floor( rs1.getDouble("VOLUME"));
}
if(rs1 != null)
{
rs1.close();
rs1 = null;
}
if(pstmt1 != null)
{
pstmt1.close();
pstmt1 = null;
}
}
if(rs != null)
{
rs.close();
rs = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch(Exception e)
......
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