Commit e39fefd3 authored by ngadkari's avatar ngadkari

Changes in generateDocKey() method and changes in lot_no itemChange if...

Changes in generateDocKey() method and changes in lot_no itemChange if invoiceID is not null condition.

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@190759 ce508802-f39f-4f6c-b175-0d175dae99d5
parent a7d36aa8
...@@ -21,7 +21,7 @@ import java.rmi.RemoteException; ...@@ -21,7 +21,7 @@ import java.rmi.RemoteException;
import java.sql.Connection; import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.util.Date;
import javax.ejb.CreateException; import javax.ejb.CreateException;
import javax.ejb.SessionBean; import javax.ejb.SessionBean;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
...@@ -409,6 +409,7 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales ...@@ -409,6 +409,7 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales
//Added by Santosh on 16/05/2017 [End] //Added by Santosh on 16/05/2017 [End]
String invRefId = "",invRefDate="" ; //Added By PriyankaC on 14/06/2018. String invRefId = "",invRefDate="" ; //Added By PriyankaC on 14/06/2018.
String shExpDiscAppl="";// Added by Nandkumar Gadkari on 19MAR2018 String shExpDiscAppl="";// Added by Nandkumar Gadkari on 19MAR2018
ArrayList<String> dokkeyList=null; // Added by Nandkumar Gadkari on 14/09/18
try try
{ {
// Changed by Sneha on 22-07-2016 for exchange rate [Start] // Changed by Sneha on 22-07-2016 for exchange rate [Start]
...@@ -3332,18 +3333,27 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales ...@@ -3332,18 +3333,27 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales
curRecordItemLotHMap.put("lot_no", checkNull(rs.getString("LOT_NO"))); curRecordItemLotHMap.put("lot_no", checkNull(rs.getString("LOT_NO")));
curRecordItemLotHMap.put("site_code", checkNull(rs.getString("SITE_CODE"))); curRecordItemLotHMap.put("site_code", checkNull(rs.getString("SITE_CODE")));
curRecordItemLotHMap.put("quantity", invoiceQty); curRecordItemLotHMap.put("quantity", invoiceQty);
minRateDocKey = generateDocKey(dom1, dom, invoiceId, conn); // Changes by Nandkumar Gadkari on 14/09/18--------[Start]---------
// minRateDocKey = generateDocKey(dom1, dom, invoiceId, conn); commented by Nandkumar Gadkari on 14/09/18
// dokkeyList = new ArrayList<String>();
dokkeyList = generateDocKey(dom1, dom, invoiceId, conn);
int size = dokkeyList.size();
for(int i=0;i<=size-1;i++)
{
minRateDocKey = dokkeyList.get(i);
if(lineNo > 1) if(lineNo > 1)
{ {
//Changed by Santosh on 16/05/2017 as invoiceId is not set on itemchange //Changed by Santosh on 16/05/2017 as invoiceId is not set on itemchange
//invoiceId = getAvailableInvId(dom2, curFormItemLotHMap, curRecordItemLotHMap, invoiceId, adjQty); //invoiceId = getAvailableInvId(dom2, curFormItemLotHMap, curRecordItemLotHMap, invoiceId, adjQty);
invoiceId = getAvailableInvId(dom2, curFormItemLotHMap, curRecordItemLotHMap, invoiceId, minRateDocKey, adjQty); invoiceId = getAvailableInvId(dom,dom2, curFormItemLotHMap, curRecordItemLotHMap, invoiceId, minRateDocKey, adjQty);// current dom added to parameters by Nandkumar Gadkari on 14/09/18
} }
if( invoiceId != null && invoiceId.trim().length() > 0) if( invoiceId != null && invoiceId.trim().length() > 0)
{ {
break; break;
} }
} }
// Changes by Nandkumar Gadkari on 14/09/18--------[end]---------
}
if(pstmt != null) if(pstmt != null)
{ {
pstmt.close(); pstmt.close();
...@@ -3431,7 +3441,72 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales ...@@ -3431,7 +3441,72 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales
} }
else if(invoiceId != null && invoiceId.trim().length()>0) else if(invoiceId != null && invoiceId.trim().length()>0)
{ {
minRateDocKey = generateDocKey(dom1, dom, invoiceId, conn); //minRateDocKey = generateDocKey(dom1, dom, invoiceId, conn); //commented by Nandkumar Gadkari on 14/09/18
//Added by Nandkumar Gadkari on 14/09/18----------------[Start]---------------------------------------
//dokkeyList = new ArrayList<String>();
dokkeyList= generateDocKey(dom1, dom, invoiceId, conn);
curFormItemLotHMap.put("cust_code", genericUtility.getColumnValue("cust_code", dom1));
curFormItemLotHMap.put("item_code", itemCode);
curFormItemLotHMap.put("lot_no", lotNo);
curFormItemLotHMap.put("site_code", siteCode);
curFormItemLotHMap.put("quantity", genericUtility.getColumnValue("quantity", dom));
custCode = genericUtility.getColumnValue("cust_code", dom1);
slineNo = genericUtility.getColumnValue("line_no", dom);
lineNo = Integer.parseInt(slineNo);
int size = dokkeyList.size();
for(int i=0;i<=size-1;i++)
{
minRateDocKey = dokkeyList.get(i);
System.out.println("@@@@@@@minRateDocKey ..........[" + minRateDocKey+"]");
sql = " SELECT MRH.INVOICE_ID,MRH.QUANTITY, MRH.CUST_CODE, MRH.ITEM_CODE, MRH.LOT_NO, MRH.SITE_CODE, MRH.INVOICE_DATE,"
+ " SUM( CASE WHEN SRDET.QUANTITY IS NULL THEN 0 ELSE SRDET.QUANTITY END) AS QTY_ADJ, MRH.EFF_COST"
+ " FROM MIN_RATE_HISTORY MRH, SRETURNDET SRDET"
+ " WHERE MRH.DOC_KEY =SRDET.DOC_KEY(+) AND MRH.CUST_CODE = ?"
+ " AND MRH.ITEM_CODE = ? AND MRH.LOT_NO = ?"
+ " AND MRH.SITE_CODE = ? AND MRH.QUANTITY - CASE WHEN MRH.QUANTITY_ADJ IS NULL THEN 0 ELSE MRH.QUANTITY_ADJ END > 0"
+ " AND MRH.QUANTITY IS NOT NULL AND MRH.DOC_KEY = ? "
+ " GROUP BY MRH.INVOICE_ID, MRH.QUANTITY, MRH.EFF_COST,MRH.CUST_CODE,MRH.ITEM_CODE,MRH.LOT_NO, MRH.SITE_CODE, MRH.INVOICE_DATE"
+ " HAVING MRH.QUANTITY-SUM( CASE WHEN SRDET.QUANTITY IS NULL THEN 0 ELSE SRDET.QUANTITY END) > 0"
+ orderByStr;
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, custCode);
pstmt.setString(2, itemCode);
pstmt.setString(3, lotNo);
pstmt.setString(4, siteCode);
pstmt.setString(5, minRateDocKey);
rs = pstmt.executeQuery();
while (rs.next()) {
invoiceQty = checkNull(rs.getString("QUANTITY"));
adjQty = checkNull(rs.getString("QTY_ADJ"));
rate = rs.getDouble("EFF_COST");
curRecordItemLotHMap.put("cust_code", checkNull(rs.getString("CUST_CODE")));
curRecordItemLotHMap.put("item_code", checkNull(rs.getString("ITEM_CODE")));
curRecordItemLotHMap.put("lot_no", checkNull(rs.getString("LOT_NO")));
curRecordItemLotHMap.put("site_code", checkNull(rs.getString("SITE_CODE")));
curRecordItemLotHMap.put("quantity", invoiceQty);
System.out.println("@@@@@@@@@@@@ dokkeyList["+dokkeyList+"]");
invoiceId = getAvailableInvId(dom,dom2, curFormItemLotHMap, curRecordItemLotHMap,invoiceId, minRateDocKey, adjQty);
if (invoiceId != null && invoiceId.trim().length() > 0)
{
break;
}
}
if (pstmt != null) {
pstmt.close();
pstmt = null;
}
if (rs != null) {
rs.close();
rs = null;
}
}
//Added by Nandkumar Gadkari on 14/09/18----------------[End]---------------------------------------
sql = "SELECT DOC_KEY,EFF_COST FROM MIN_RATE_HISTORY WHERE DOC_KEY = ?"; sql = "SELECT DOC_KEY,EFF_COST FROM MIN_RATE_HISTORY WHERE DOC_KEY = ?";
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
pstmt.setString(1, minRateDocKey); pstmt.setString(1, minRateDocKey);
...@@ -9931,7 +10006,7 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales ...@@ -9931,7 +10006,7 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales
//Added by Santosh on 27/04/2017 to get next available invoide id [Start] //Added by Santosh on 27/04/2017 to get next available invoide id [Start]
//Changed by Santosh on 16/05/2017 //Changed by Santosh on 16/05/2017
//private String getAvailableInvId(Document allDom, HashMap<String, String> curFormItemLotHMap, HashMap<String, String> curRecordItemLotHMap, String invoiceId, String minRateDocKey, String adjQty) //private String getAvailableInvId(Document allDom, HashMap<String, String> curFormItemLotHMap, HashMap<String, String> curRecordItemLotHMap, String invoiceId, String minRateDocKey, String adjQty)
private String getAvailableInvId(Document allDom, HashMap<String, String> curFormItemLotHMap, HashMap<String, String> curRecordItemLotHMap, String invoiceId, String minRateDocKey, String adjQty) private String getAvailableInvId(Document dom,Document allDom, HashMap<String, String> curFormItemLotHMap, HashMap<String, String> curRecordItemLotHMap, String invoiceId, String domDocKey, String adjQty)
{ {
String retInvoiceId = ""; String retInvoiceId = "";
NodeList detail1NList = null; NodeList detail1NList = null;
...@@ -9943,7 +10018,7 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales ...@@ -9943,7 +10018,7 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales
double dQtyAdj = 0.0, dCurRecInvQty = 0.0, dDomQty = 0.0, dTotalDomQty = 0.0; double dQtyAdj = 0.0, dCurRecInvQty = 0.0, dDomQty = 0.0, dTotalDomQty = 0.0;
boolean isCurFormDataInDom = false; boolean isCurFormDataInDom = false;
//Added by Santosh on 16/05/2017 //Added by Santosh on 16/05/2017
String domDocKey = ""; // String domDocKey = "";
try try
{ {
...@@ -9971,17 +10046,24 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales ...@@ -9971,17 +10046,24 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales
detail1NList = allDom.getElementsByTagName("Detail1"); detail1NList = allDom.getElementsByTagName("Detail1");
detail1Node = detail1NList.item(0); detail1Node = detail1NList.item(0);
detail2NList = allDom.getElementsByTagName("Detail2"); detail2NList = allDom.getElementsByTagName("Detail2");
for(int i=0; i< detail2NList.getLength() - 1; i++) for(int i=0; i< detail2NList.getLength(); i++)// removed detail2NList.getLength() -1 condition from loop by Nandkumar Gadkari on 14/09/18
{ {
Node eachDetail2Node = detail2NList.item(i); /*Node eachDetail2Node = detail2NList.item(i);
domCustCode = genericUtility.getColumnValueFromNode("cust_code", detail1Node).trim(); domCustCode = genericUtility.getColumnValueFromNode("cust_code", detail1Node).trim();
domItemCode = genericUtility.getColumnValueFromNode("item_code", eachDetail2Node).trim(); domItemCode = genericUtility.getColumnValueFromNode("item_code", eachDetail2Node).trim();
domLotNo = genericUtility.getColumnValueFromNode("lot_no", eachDetail2Node).trim(); domLotNo = genericUtility.getColumnValueFromNode("lot_no", eachDetail2Node).trim();
domSiteCode = genericUtility.getColumnValueFromNode("site_code", detail1Node).trim(); domSiteCode = genericUtility.getColumnValueFromNode("site_code", detail1Node).trim();
domQuantity = genericUtility.getColumnValueFromNode("quantity", eachDetail2Node).trim(); domQuantity = genericUtility.getColumnValueFromNode("quantity", eachDetail2Node).trim();*/ //commented by Nandkumar Gadkari on 14/09/18
//added by Nandkumar Gadkari on 14/09/18-------[START]---------------
domCustCode = genericUtility.getColumnValueFromNode("cust_code", detail1Node);
domItemCode = genericUtility.getColumnValue("item_code", dom);
domLotNo = (genericUtility.getColumnValue("lot_no", dom)).trim();
domSiteCode = genericUtility.getColumnValueFromNode("site_code", detail1Node);
domQuantity = genericUtility.getColumnValue("quantity", dom);
//added by Nandkumar Gadkari on 14/09/18-------[END]---------------
//Commented and changed by Santosh on 16/05/2017 //Commented and changed by Santosh on 16/05/2017
//domInvoiceId = genericUtility.getColumnValueFromNode("invoice_id", eachDetail2Node).trim(); //domInvoiceId = genericUtility.getColumnValueFromNode("invoice_id", eachDetail2Node).trim();
domDocKey = checkNull(genericUtility.getColumnValueFromNode("doc_key", eachDetail2Node)).trim(); //domDocKey = checkNull(genericUtility.getColumnValueFromNode("doc_key", eachDetail2Node)).trim(); //commented by Nandkumar Gadkari on 14/09/18
dDomQty = Double.parseDouble(domQuantity); dDomQty = Double.parseDouble(domQuantity);
...@@ -10107,20 +10189,22 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales ...@@ -10107,20 +10189,22 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales
} }
//Added by Santosh on 27/04/2017 to get next available invoide id [End] //Added by Santosh on 27/04/2017 to get next available invoide id [End]
//Added by Santosh on 16/05/2017 to generate minRateDocKey [Start] //Added by Santosh on 16/05/2017 to generate minRateDocKey [Start]
private String generateDocKey(Document headerDom, Document curDetDom, String invoiceID, Connection conn) private ArrayList<String> generateDocKey(Document headerDom, Document curDetDom, String invoiceID, Connection conn) // Change String to array list String by Nandkumar Gadkari on 14/09/18
{ {
String retDocKey = ""; //String retDocKey = "";// Commented by Nandkumar Gadkari on 14/09/18
DistCommon distCommon = new DistCommon(); DistCommon distCommon = new DistCommon();
String sNoOfKeys = "", schemeKey = "", varValue = "", docKey = null, docValue = ""; String sNoOfKeys = "", schemeKey = "", varValue = "", docKey = null, docValue = "";
int noOfKeys = 0; int noOfKeys = 0;
String col[] = new String[500]; String col[] = new String[500];
boolean dynamicCol = true; boolean dynamicCol = true;
ArrayList<String> retDocKey = new ArrayList<String>();// added by Nandkumar Gadkari on 14/09/18
try try
{ {
sNoOfKeys = distCommon.getDisparams("999999","SCHEME_HIST_NUM",conn); sNoOfKeys = distCommon.getDisparams("999999","SCHEME_HIST_NUM",conn);
if ( "NULLFOUND".equals( sNoOfKeys ) ) if ( "NULLFOUND".equals( sNoOfKeys ) )
{ {
retDocKey = ""; //retDocKey = "";
retDocKey = null; // Changes by Nandkumar Gadkari on 14/09/18
} }
else else
{ {
...@@ -10145,6 +10229,10 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales ...@@ -10145,6 +10229,10 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales
{ {
docValue = checkNull(genericUtility.getColumnValue(varValueArry[i].trim(),headerDom)).trim(); docValue = checkNull(genericUtility.getColumnValue(varValueArry[i].trim(),headerDom)).trim();
} }
else if ("cust_code__bil".equalsIgnoreCase(varValueArry[i].trim())) //if condition added by Nandkumar Gadkari on 14/09/18
{
docValue = checkNull(genericUtility.getColumnValue("cust_code__bill", headerDom)).trim();
}
else if("site_code".equalsIgnoreCase(varValueArry[i].trim())) else if("site_code".equalsIgnoreCase(varValueArry[i].trim()))
{ {
docValue = checkNull(genericUtility.getColumnValue(varValueArry[i].trim(),headerDom)).trim(); docValue = checkNull(genericUtility.getColumnValue(varValueArry[i].trim(),headerDom)).trim();
...@@ -10175,9 +10263,10 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales ...@@ -10175,9 +10263,10 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales
docKey = docValue; docKey = docValue;
} }
} }
retDocKey.add(docKey);// added by Nandkumar Gadkari on 14/09/18
} }
retDocKey = docKey; //retDocKey = docKey; // commented by Nandkumar Gadkari on 14/09/18
System.out.println("retDocKey["+retDocKey+"]"); System.out.println("retDocKey["+retDocKey+"]");
} }
catch (Exception e) catch (Exception e)
...@@ -10189,6 +10278,8 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales ...@@ -10189,6 +10278,8 @@ public class SalesReturn extends ValidatorEJB implements SalesReturnLocal, Sales
} }
//Added by Santosh on 16/05/2017 to generate minRateDocKey [End] //Added by Santosh on 16/05/2017 to generate minRateDocKey [End]
}// END OF MAIN CLASS }// END OF MAIN CLASS
\ 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