Commit 693a8f75 authored by caluka's avatar caluka

free quantity value changed for 0.001 quantity


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@100989 ce508802-f39f-4f6c-b175-0d175dae99d5
parent ef681616
...@@ -8218,7 +8218,9 @@ private double GetFreeQty(String custCode,String itemCode,String itemSer,String ...@@ -8218,7 +8218,9 @@ private double GetFreeQty(String custCode,String itemCode,String itemSer,String
String invoiceIdArray[]; String invoiceIdArray[];
String invoiceSep="",nature=""; String invoiceSep="",nature="";
double freesQty=0.0,totalFreesQtyValue=0.0; double freesQty=0.0,totalFreesQtyValue=0.0;
double freValue=0.0;
ArrayList<Double> rcpFreeQtyListMethod=new ArrayList<Double>(); ArrayList<Double> rcpFreeQtyListMethod=new ArrayList<Double>();
boolean isExistFree=false;
try try
{ {
...@@ -8231,7 +8233,7 @@ private double GetFreeQty(String custCode,String itemCode,String itemSer,String ...@@ -8231,7 +8233,7 @@ private double GetFreeQty(String custCode,String itemCode,String itemSer,String
"from ( select invoice.invoice_id as invoice_id,0 quantity, max(rate__stduom) " + "from ( select invoice.invoice_id as invoice_id,0 quantity, max(rate__stduom) " +
"rate from invoice invoice,invoice_trace itrace where invoice.invoice_id= Itrace.invoice_id " + "rate from invoice invoice,invoice_trace itrace where invoice.invoice_id= Itrace.invoice_id " +
"and invoice.invoice_id in("+selectedInvList+") and item_code='"+itemCode+"' and itrace.item_ser__prom in ("+itemSer+") " + "and invoice.invoice_id in("+selectedInvList+") and item_code='"+itemCode+"' and itrace.item_ser__prom in ("+itemSer+") " +
" and invoice.inv_type='"+orderType+"' and rate__stduom>=0.001 group by invoice.invoice_id " + " and invoice.inv_type='"+orderType+"' and rate__stduom>0.001 group by invoice.invoice_id " +
"union all" + "union all" +
" select invoice.invoice_id as invoice_id,quantity__stduom quantity, 0 rate from " + " select invoice.invoice_id as invoice_id,quantity__stduom quantity, 0 rate from " +
"invoice invoice,invoice_trace itrace where invoice.invoice_id= Itrace.invoice_id and " + "invoice invoice,invoice_trace itrace where invoice.invoice_id= Itrace.invoice_id and " +
...@@ -8246,7 +8248,7 @@ private double GetFreeQty(String custCode,String itemCode,String itemSer,String ...@@ -8246,7 +8248,7 @@ private double GetFreeQty(String custCode,String itemCode,String itemSer,String
"from ( select invoice.invoice_id as invoice_id,0 quantity, max(rate__stduom) " + "from ( select invoice.invoice_id as invoice_id,0 quantity, max(rate__stduom) " +
"rate from invoice invoice,invoice_trace itrace where invoice.invoice_id= Itrace.invoice_id " + "rate from invoice invoice,invoice_trace itrace where invoice.invoice_id= Itrace.invoice_id " +
"and invoice.invoice_id in("+transitInvList+") and item_code='"+itemCode+"' and itrace.item_ser__prom in ("+itemSer+") " + "and invoice.invoice_id in("+transitInvList+") and item_code='"+itemCode+"' and itrace.item_ser__prom in ("+itemSer+") " +
" and invoice.inv_type='"+orderType+"' and rate__stduom>=0.001 group by invoice.invoice_id " + " and invoice.inv_type='"+orderType+"' and rate__stduom>0.001 group by invoice.invoice_id " +
"union all" + "union all" +
" select invoice.invoice_id as invoice_id,quantity__stduom quantity, 0 rate from " + " select invoice.invoice_id as invoice_id,quantity__stduom quantity, 0 rate from " +
"invoice invoice,invoice_trace itrace where invoice.invoice_id= Itrace.invoice_id and " + "invoice invoice,invoice_trace itrace where invoice.invoice_id= Itrace.invoice_id and " +
...@@ -8270,12 +8272,25 @@ private double GetFreeQty(String custCode,String itemCode,String itemSer,String ...@@ -8270,12 +8272,25 @@ private double GetFreeQty(String custCode,String itemCode,String itemSer,String
{ {
freesQty = rs.getDouble("freeqty"); freesQty = rs.getDouble("freeqty");
totalFreesQtyValue = rs.getDouble("totalvalue"); totalFreesQtyValue = rs.getDouble("totalvalue");
isExistFree=true;
} }
rs.close(); rs.close();
rs = null; rs = null;
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
System.out.println("isExistFree>>>>>"+isExistFree);
if("R".equalsIgnoreCase(quantityFlag) && isExistFree)
{
freValue=getPreviousInvoiceRateValue(custCode, orderType, itemSer,siteCode, selectedInvList, itemCode, fromDate, toDate,prdFrom, prdTo, conn);
}else if("T".equalsIgnoreCase(quantityFlag) && isExistFree)
{
freValue=getPreviousInvoiceRateValue(custCode, orderType, itemSer,siteCode, transitInvList, itemCode, fromDate, toDate,prdFrom, prdTo, conn);
}
System.out.println("totalFreesQtyValue>>>>>>"+totalFreesQtyValue);
System.out.println("freValue>>>>>>"+freValue);
totalFreesQtyValue=totalFreesQtyValue+freValue;
System.out.println("totalFreesQtyValue>>@@@@@@@@@>>>>"+totalFreesQtyValue);
rcpFreeQtyListMethod.add(freesQty); rcpFreeQtyListMethod.add(freesQty);
rcpFreeQtyListMethod.add(totalFreesQtyValue); rcpFreeQtyListMethod.add(totalFreesQtyValue);
...@@ -8595,5 +8610,73 @@ private double GetFreeQty(String custCode,String itemCode,String itemSer,String ...@@ -8595,5 +8610,73 @@ private double GetFreeQty(String custCode,String itemCode,String itemSer,String
} }
tempNode = null; tempNode = null;
} }
private double getPreviousInvoiceRateValue(String custCode, String orderType, String itemSer, String siteCode,String selectedInvList, String itemCode, Timestamp fromDate, Timestamp toDate, Timestamp prdFrom, Timestamp prdTo, Connection conn) throws Exception
{
PreparedStatement pstmt = null,pstmt1 = null,pstmt3 = null;
ResultSet rs = null,rs1 = null,rs3 = null;
String sql="",sql1="";
String invoiceId="";
double previousRate=0.0;
double freesQty=0.0;
double finalValue=0.0;
Timestamp invoiceTranDate=null;
ArrayList<String> rcpFreeQtyInvoice=new ArrayList<String>();
try
{
sql= "select invoice.invoice_id as invoice_id,invoice.tran_date as tran_date " +
",itrace.quantity__stduom as quantity__stduom from " +
"invoice invoice,invoice_trace itrace where invoice.invoice_id= Itrace.invoice_id and " +
"invoice.invoice_id in("+selectedInvList+") and item_code='"+itemCode+"' and itrace.item_ser__prom in ("+itemSer+")" +
" and invoice.inv_type='"+orderType+"' and rate__stduom = 0.001 ";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
while( rs.next() )
{
invoiceId = rs.getString("invoice_id");
invoiceTranDate = rs.getTimestamp("tran_date");
freesQty = rs.getDouble("quantity__stduom");
previousRate=0;
sql1="select rate__stduom from invoice invoice,invoice_trace itrace " +
" where invoice.invoice_id= Itrace.invoice_id and itrace.item_code= ?" +
" and invoice.cust_code= ? " +
" and itrace.item_ser__prom in ("+itemSer+") " +
"and invoice.inv_type=? and invoice.tran_date < ? " +
" and Itrace.rate__stduom>0.001 order by invoice.tran_date desc " ;
pstmt1 = conn.prepareStatement( sql1 );
pstmt1.setString(1, itemCode);
pstmt1.setString(2, custCode);
pstmt1.setString(3, orderType);
pstmt1.setTimestamp(4, invoiceTranDate );
rs1 = pstmt1.executeQuery();
if( rs1.next() )
{
previousRate = rs1.getDouble("rate__stduom");
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
System.out.println("previousRate>>>>>"+previousRate);
System.out.println("freesQty>>>>>"+freesQty);
finalValue=finalValue+(previousRate*freesQty);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
catch(Exception exception)
{
exception.printStackTrace();
//System.out.println("Exception ::" + exception.getMessage());
throw new ITMException( exception );
}
// TODO Auto-generated method stub
return finalValue;
}
} }
\ 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