Commit fd30b106 authored by prane's avatar prane

Adjustment receipt - no_art calculation to consider item_lot_packsize,...

Adjustment receipt - no_art calculation to consider item_lot_packsize, quantity / shipper_size to be considered, if not defined to take from packing last to be shipper_size from item


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@200624 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 35c92fda
...@@ -20,6 +20,7 @@ import java.sql.PreparedStatement; ...@@ -20,6 +20,7 @@ import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.sql.SQLPermission; import java.sql.SQLPermission;
import java.text.NumberFormat;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import javax.ejb.Stateless; import javax.ejb.Stateless;
...@@ -1155,9 +1156,9 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj ...@@ -1155,9 +1156,9 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj
if( rs1.next()) if( rs1.next())
{ {
System.out.println("intered in result set hhho.."); //System.out.println("intered in result set hhho..");
siteDescr= checkNull(rs1.getString("descr")); siteDescr= checkNull(rs1.getString("descr"));
System.out.println("intered in rs site descr hhho.."+siteDescr); System.out.println("item_default::"+siteDescr);
} }
rs1.close(); rs1.close();
rs1 = null; rs1 = null;
...@@ -1225,9 +1226,9 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj ...@@ -1225,9 +1226,9 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj
if( rs1.next()) if( rs1.next())
{ {
System.out.println("intered in result set hhho.."); //System.out.println("intered in result set hhho..");
siteItmDescr= checkNull(rs1.getString("descr")); siteItmDescr= checkNull(rs1.getString("descr"));
System.out.println("intered in rs site descr hhho.."+siteItmDescr); System.out.println("site_code."+siteItmDescr);
} }
rs1.close(); rs1.close();
rs1 = null; rs1 = null;
...@@ -1245,9 +1246,9 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj ...@@ -1245,9 +1246,9 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj
if( rs1.next()) if( rs1.next())
{ {
System.out.println("intered in result set hhho.."); //System.out.println("intered in result set hhho..");
deptDescr= checkNull(rs1.getString("descr")); deptDescr= checkNull(rs1.getString("descr"));
System.out.println("intered in rs dept descr hhho.."+deptDescr); System.out.println("dept_code"+deptDescr);
} }
rs1.close(); rs1.close();
rs1 = null; rs1 = null;
...@@ -1611,63 +1612,114 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj ...@@ -1611,63 +1612,114 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj
itemCodeDom=checkNull(genericUtility.getColumnValue("item_code",dom)); itemCodeDom=checkNull(genericUtility.getColumnValue("item_code",dom));
lotNo=checkNull(genericUtility.getColumnValue("lot_no",dom)); lotNo=checkNull(genericUtility.getColumnValue("lot_no",dom));
packCode=checkNull(genericUtility.getColumnValue("pack_code",dom)); packCode=checkNull(genericUtility.getColumnValue("pack_code",dom));
System.out.println("Pavan Rane DOM[ "+genericUtility.serializeDom(dom)+"]\n\n\n");
if(!(packCode==null || packCode.trim().length()>0)) //Pavan R on may19[no of art to consider from item_lot_packsize, item and if not found then packing master]
double noOfArt = 0d, shipperSize = 0d;
sql = "select (case when shipper_size is null then 0 else shipper_size end) as shipper_size, "
+ "(case when gross_weight is null then 0 else gross_weight end) as lc_gross_weigth, "
+ "(case when net_weight is null then 0 else net_weight end) as lc_net_weight "
+ "from item_lot_packsize where item_code = ? "
+ "and ? >= lot_no__from and ? <= lot_no__to";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, itemCodeDom);
pstmt.setString(2, lotNo);
pstmt.setString(3, lotNo);
rs = pstmt.executeQuery();
if(rs.next())
{
shipperSize = rs.getDouble("shipper_size");
mGrossWeight= rs.getDouble("LC_GROSS_WEIGTH");
mNetWeight= rs.getDouble("LC_NET_WEIGHT");
System.out.println("Pavan R shipperSize["+shipperSize+"] grossWeight [ "+grossWeight+" ] netWeight[ "+netWeight+" ]");
if (shipperSize > 0)
{
double mod = mQty/shipperSize;
noOfArt = getRndamt(mod , "X", 1);
System.out.println("Pavan R noOfArt["+noOfArt+"]");
valueXmlString.append("<no_art><![CDATA[").append(noOfArt).append("]]></no_art>\r\n");
if(noOfArt > 0)
{
//mGrosswt = noOfArt * mGrossWeight;
mGrosswt = ((mGrossWeight/shipperSize) * mQty);
//mNetWt = noOfArt * mNetWeight;
mNetWt = ((mNetWeight/shipperSize) * mQty);
System.out.println("Pavan R mGrosswt [ "+mGrosswt+" ]");
if(mGrossWeight > 0)
{
valueXmlString.append("<gross_weight ><![CDATA[").append(getRequiredDecimal(mGrosswt,3)).append("]]></gross_weight>\r\n");
valueXmlString.append("<net_weight ><![CDATA[").append(getRequiredDecimal(mNetWt,3)).append("]]></net_weight>\r\n");
mTareWt=mGrosswt - mNetWt;
System.out.println("Pavan R mGrossWeight > 0 mTareWt [ "+mTareWt+" ]");
valueXmlString.append("<tare_weight ><![CDATA[").append(getRequiredDecimal(mTareWt, 3)).append("]]></tare_weight>\r\n");
}
} //if(noOfArt > 0)
}//if(shipperSize > 0)
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(shipperSize == 0)
{
System.out.println("Pavan Rane After ShipperSize ==0 PackingCode ["+packCode+"]");
//if(!(packCode==null || packCode.trim().length()>0))
//Pavan R end
if(packCode != null && packCode.trim().length()>0)
{ {
double mlcMode = 0d;
sqlCapacity="select capacity from packing where pack_code = ? "; sqlCapacity="select capacity from packing where pack_code = ? ";
pstmt1=conn.prepareStatement(sqlCapacity); pstmt1=conn.prepareStatement(sqlCapacity);
pstmt1.setString(1,packCode); pstmt1.setString(1,packCode);
rs1 = pstmt1.executeQuery(); rs1 = pstmt1.executeQuery();
if( rs1.next()) if( rs1.next())
{ {
System.out.println("intered in result set hhho.."); //capacity= checkNull(rs1.getString("capacity"));
capacity= checkNull(rs1.getString("capacity")); mCapacity= rs1.getDouble("capacity");
System.out.println("intered in rs item descr hhho.."+capacity); System.out.println("Pavan R Capacity::["+mCapacity+"]");
} }
rs1.close(); rs1.close();
rs1 = null; rs1 = null;
pstmt1.close(); pstmt1.close();
pstmt1=null; pstmt1=null;
if(capacity.trim().length() > 0 ) /*if(capacity.trim().length() > 0 )
{ {
mCapacity=Double.parseDouble(capacity); mCapacity=Double.parseDouble(capacity);
}*/
} }
//if((packCode!=null && packCode.trim().length()>0) && (capacity !=null && capacity.trim().length()>0))
if((packCode!=null && packCode.trim().length()>0) && (mCapacity > 0))
}
if((packCode!=null && packCode.trim().length()>0) && (capacity !=null && capacity.trim().length()>0))
{ {
sqlLcMode="SELECT FN_MOD( ? ,? ) AS LC_MODE FROM DUAL "; /*sqlLcMode="SELECT FN_MOD( ? ,? ) AS LC_MODE FROM DUAL ";
pstmt1=conn.prepareStatement(sqlLcMode); pstmt1=conn.prepareStatement(sqlLcMode);
pstmt1.setString(1,qty); pstmt1.setDouble(1,mQty);//pstmt1.setString(1,qty);
pstmt1.setString(2,capacity); pstmt1.setDouble(2, mCapacity);//pstmt1.setString(2,capacity);
rs1 = pstmt1.executeQuery(); rs1 = pstmt1.executeQuery();
if( rs1.next()) if( rs1.next())
{ {
System.out.println("intered in result set hhho.."); //lcMode= checkNull(rs1.getString("LC_MODE"));
lcMode= checkNull(rs1.getString("LC_MODE")); lcMode= checkNull(rs1.getString("LC_MODE"));
System.out.println("intered in rs item descr hhho.."+lcMode); System.out.println("Pavan Rane FN_MOD for qty["+qty+"] capacity["+capacity+"] = "+lcMode+"]");
} }
rs1.close(); rs1.close();
rs1 = null; rs1 = null;
pstmt1.close(); pstmt1.close();
pstmt1=null; pstmt1=null;*/
double mod = mQty/mCapacity;
if(lcMode.length()>0) mNoart = getRndamt(mod, "X", 1);
System.out.println("Pavan R mNoart["+mNoart+"]");
/*if(lcMode.length()>0)
{ {
mNoart=(mQty / mCapacity) + 1; //in pb int is used before open brackets mNoart=(mQty / mCapacity) + 1; //in pb int is used before open brackets
//mNoart=(getRndamt(mQty, "X", 1));//
System.out.println("Pavan Rane Mod>0 mNoart["+mNoart+"]");
} }
else else
{ {
mNoart=(mQty / mCapacity) ; //in pb int is used before open brackets mNoart=(mQty / mCapacity) ; //in pb int is used before open brackets
} System.out.println("Pavan Rane Mod<0 less mNoart["+mNoart+"]");
}*/
valueXmlString.append("<no_art ><![CDATA[").append(mNoart).append("]]></no_art>\r\n"); valueXmlString.append("<no_art ><![CDATA[").append(mNoart).append("]]></no_art>\r\n");
if(( mNoart > 0)) if(( mNoart > 0))
{ {
sqlLcMode="SELECT (CASE WHEN GROSS_WEIGHT IS NULL THEN 0 ELSE GROSS_WEIGHT END) AS LC_GROSS_WEIGTH, (CASE WHEN NET_WEIGHT IS NULL THEN 0 ELSE NET_WEIGHT END) AS LC_NET_WEIGHT FROM ITEM_LOT_PACKSIZE WHERE ITEM_CODE = ? AND ? BETWEEN LOT_NO__FROM AND LOT_NO__TO "; sqlLcMode="SELECT (CASE WHEN GROSS_WEIGHT IS NULL THEN 0 ELSE GROSS_WEIGHT END) AS LC_GROSS_WEIGTH, (CASE WHEN NET_WEIGHT IS NULL THEN 0 ELSE NET_WEIGHT END) AS LC_NET_WEIGHT FROM ITEM_LOT_PACKSIZE WHERE ITEM_CODE = ? AND ? BETWEEN LOT_NO__FROM AND LOT_NO__TO ";
...@@ -1678,11 +1730,9 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj ...@@ -1678,11 +1730,9 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj
if( rs1.next()) if( rs1.next())
{ {
System.out.println("intered in result set hhho..");
grossWeight= checkNull(rs1.getString("LC_GROSS_WEIGTH")); grossWeight= checkNull(rs1.getString("LC_GROSS_WEIGTH"));
netWeight= checkNull(rs1.getString("LC_NET_WEIGHT")); netWeight= checkNull(rs1.getString("LC_NET_WEIGHT"));
System.out.println("intered in rs grossWeight hhho.."+grossWeight); System.out.println("Pavan Rane grossWeight ["+grossWeight+"]netWeight["+netWeight+"]");
System.out.println("intered in rs netWeight hhho.."+netWeight);
} }
rs1.close(); rs1.close();
rs1 = null; rs1 = null;
...@@ -1697,16 +1747,19 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj ...@@ -1697,16 +1747,19 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj
mNetWeight=Double.parseDouble(netWeight); mNetWeight=Double.parseDouble(netWeight);
} }
mGrosswt = ((mGrossWeight/mCapacity) * mQty);
mNetWt = ((mNetWeight/mCapacity) * mQty);
mGrosswt= mNoart * mGrossWeight; //mGrosswt= mNoart * mGrossWeight;
System.out.println("Pavan Rane total mGrosswt["+mGrosswt+"] mGrossWeight["+mGrossWeight+"]");
if(mGrossWeight > 0) if(mGrossWeight > 0)
{ {
valueXmlString.append("<gross_weight ><![CDATA[").append(mGrosswt).append("]]></gross_weight>\r\n"); valueXmlString.append("<gross_weight ><![CDATA[").append(getRequiredDecimal(mGrosswt, 3)).append("]]></gross_weight>\r\n");
valueXmlString.append("<net_weight ><![CDATA[").append(mNetWeight).append("]]></net_weight>\r\n"); //valueXmlString.append("<net_weight ><![CDATA[").append(getRequiredDecimal(mNetWeight, 3)).append("]]></net_weight>\r\n");
valueXmlString.append("<net_weight ><![CDATA[").append(getRequiredDecimal(mNetWt, 3)).append("]]></net_weight>\r\n");
mTareWt=mGrosswt - mNetWeight; //mTareWt=mGrosswt - mNetWeight;
valueXmlString.append("<tare_weight ><![CDATA[").append(mTareWt).append("]]></tare_weight>\r\n"); mTareWt=mGrosswt - mNetWt;
valueXmlString.append("<tare_weight ><![CDATA[").append(getRequiredDecimal(mTareWt, 3)).append("]]></tare_weight>\r\n");
} }
} }
...@@ -1720,11 +1773,9 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj ...@@ -1720,11 +1773,9 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj
if( rs1.next()) if( rs1.next())
{ {
System.out.println("intered in result set hhho..");
netWtItem= checkNull(rs1.getString("NET_WT_ITEM")); netWtItem= checkNull(rs1.getString("NET_WT_ITEM"));
integrlQty= checkNull(rs1.getString("INTEGRAL_QTY")); netWtItem= checkNull(rs1.getString("INTEGRAL_QTY"));
System.out.println("intered in rs netWtitem hhho.."+netWtItem); System.out.println("Pavan Rane else netWtItem["+netWtItem+"] netWtItem["+netWtItem+"]");
System.out.println("intered in rs integrlQty hhho.."+integrlQty);
} }
rs1.close(); rs1.close();
rs1 = null; rs1 = null;
...@@ -1739,9 +1790,10 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj ...@@ -1739,9 +1790,10 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj
if( rs1.next()) if( rs1.next())
{ {
System.out.println("intered in result set hhho.."); // System.out.println("intered in result set hhho..");
netWt= checkNull(rs1.getString("NET_WT")); netWt= checkNull(rs1.getString("NET_WT"));
System.out.println("intered in rs netWt hhho.."+netWt); //System.out.println("intered in rs netWt hhho.."+netWt);
System.out.println("Pavan Rane netWt["+netWt+"]");
} }
rs1.close(); rs1.close();
rs1 = null; rs1 = null;
...@@ -1806,12 +1858,13 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj ...@@ -1806,12 +1858,13 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj
mNoart=mQty; mNoart=mQty;
} }
} }
valueXmlString.append("<gross_weight ><![CDATA[").append(mNetWt).append("]]></gross_weight>\r\n"); valueXmlString.append("<gross_weight ><![CDATA[").append(getRequiredDecimal(mNetWt, 3)).append("]]></gross_weight>\r\n");
valueXmlString.append("<net_weight ><![CDATA[").append(mNetWt).append("]]></net_weight>\r\n"); valueXmlString.append("<net_weight ><![CDATA[").append(getRequiredDecimal(mNetWt, 3)).append("]]></net_weight>\r\n");
valueXmlString.append("<tare_weight ><![CDATA[").append("0").append("]]></tare_weight>\r\n"); valueXmlString.append("<tare_weight ><![CDATA[").append("0").append("]]></tare_weight>\r\n");
valueXmlString.append("<no_art ><![CDATA[").append(mNoart).append("]]></no_art>\r\n"); valueXmlString.append("<no_art ><![CDATA[").append(mNoart).append("]]></no_art>\r\n");
} }
}
itemCodeDom=checkNull(genericUtility.getColumnValue("item_code",dom)); itemCodeDom=checkNull(genericUtility.getColumnValue("item_code",dom));
sql="SELECT ITEM_TYPE, UNIT__NETWT, UNIT__RATE FROM ITEM WHERE ITEM_CODE = ? "; sql="SELECT ITEM_TYPE, UNIT__NETWT, UNIT__RATE FROM ITEM WHERE ITEM_CODE = ? ";
...@@ -3485,4 +3538,76 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj ...@@ -3485,4 +3538,76 @@ public class AdjReceiptIC extends ValidatorEJB implements AdjReceiptICRemote,Adj
} }
return errorCode; return errorCode;
} }
public double getRndamt(double newQty, String round, double roundTo) {
System.out.println(newQty+"~~~"+round+"~~~"+roundTo);
double lcMultiply = 1;
try {
round = round.toUpperCase();
if (newQty < 0) {
lcMultiply = -1;
newQty = Math.abs(newQty);
} else if (newQty == 0) {
return newQty;
} else if (round.trim().equals("N")) {
return newQty;
} else if (roundTo == 0) {
return newQty;
}
if (round.trim().equals("X")) {
if(newQty == (newQty - (newQty % roundTo)))
{
return newQty;
}
else
{
newQty = ((newQty - (newQty % roundTo)) + roundTo);
}
}
if (round.trim().equals("P")) {
newQty = (newQty - (newQty % roundTo));
}
if (round.trim().equals("R")) {
if ((newQty % roundTo) < (roundTo / 2)) {
newQty = (newQty - (newQty % roundTo));
} else {
newQty = (newQty - (newQty % roundTo) + roundTo);
}
}
System.out.println("newQty[" + newQty + "]");
System.out.println("lcMultiply[" + lcMultiply + "]");
newQty = newQty * lcMultiply;
System.out.println("newQty * lcMultiply[" + newQty + "]");
return newQty;
} catch (Exception e) {
System.out.println("Exception :Conversion Qty ::" + e.getMessage()
+ ":");
}
if (roundTo == 1) {
newQty = getRequiredDecimal(newQty, 0);
} else if (roundTo == .1) {
newQty = getRequiredDecimal(newQty, 1);
} else if (roundTo == .01) {
newQty = getRequiredDecimal(newQty, 2);
} else if (roundTo == .001) {
newQty = getRequiredDecimal(newQty, 3);
} else if (roundTo == .0001) {
newQty = getRequiredDecimal(newQty, 4);
}
return newQty;
}
public double getRequiredDecimal(double actVal, int prec) {
NumberFormat numberFormat = NumberFormat.getIntegerInstance();
Double DoubleValue = new Double(actVal);
numberFormat.setMaximumFractionDigits(3);
String strValue = numberFormat.format(DoubleValue);
strValue = strValue.replaceAll(",", "");
double reqVal = Double.parseDouble(strValue);
return reqVal;
}
} }
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