Commit 62d249b3 authored by ngadkari's avatar ngadkari

new scheme_balance changes in wfValData neture column

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@191675 ce508802-f39f-4f6c-b175-0d175dae99d5
parent f9f61d0f
...@@ -2480,6 +2480,259 @@ public class SalesOrderIC extends ValidatorEJB implements SalesOrderICLocal, Sal ...@@ -2480,6 +2480,259 @@ public class SalesOrderIC extends ValidatorEJB implements SalesOrderICLocal, Sal
} }
} }
// ---------------------------- Nandkumar Gadkari -------------on 03/10/18---------start--------------------
else if (childNodeName.equalsIgnoreCase("nature")) {
double totFreeQty = 0, unConfTotFreeQty = 0 , freeQty = 0, prvFreeQty = 0, rate1 = 0,qty=0.0;
String lineNo = "", browItemCode = "", currLineNo = "";
nature = checkNullandTrim(genericUtility.getColumnValue("nature", dom));
itemCodeOrd = checkNull(genericUtility.getColumnValue("item_code__ord", dom));
siteCode = checkNull(genericUtility.getColumnValue("site_code", dom1));
custCode = checkNull(genericUtility.getColumnValue("cust_code", dom1));
orderDate = Timestamp.valueOf(
genericUtility.getValidDateString(genericUtility.getColumnValue("order_date", dom1),
genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat())
+ " 00:00:00.0");
saleOrder = checkNull(genericUtility.getColumnValue("sale_order", dom2));
if(saleOrder.trim().length() == 0)
{
saleOrder=" ";
}
freeQty=0.0;
qty = checkDoubleNull(genericUtility.getColumnValue("quantity", dom));
System.out.println("inside scheme balance..............." +nature);
System.out.println("itemCodeOrd==" + itemCodeOrd);
System.out.println("siteCode==" + siteCode);
System.out.println("custCode==" + custCode);
System.out.println("quantity==" + qty);
System.out.println("orderDate==" + orderDate);
if ("V".equalsIgnoreCase(nature.trim()))
{
sql = " SELECT BALANCE_FREE_VALUE - USED_FREE_VALUE FROM SCHEME_BALANCE WHERE BALANCE_FREE_VALUE - USED_FREE_VALUE > 0 "
+ " AND EFF_FROM <= ? AND VALID_UPTO >=? AND CUST_CODE = ? AND ITEM_CODE= ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setTimestamp(1, orderDate);
pstmt.setTimestamp(2, orderDate);
pstmt.setString(3,custCode);
pstmt.setString(4,"X");
rs1 = pstmt.executeQuery();
if (rs1.next())
{
freeQty = rs1.getDouble(1);
}
rs1.close();
rs1 = null;
pstmt.close();
pstmt = null;
if(freeQty > 0)
{
sql = " select sum(case when nature ='V' then quantity else 0 end) as unconfirmFreeQty " +
" from sorder a,sorddet b where a.sale_order = b.sale_order and a.site_code = ? "
+ " and a.cust_code = ? and a.sale_order <> ? and a.order_date between ? and ?"
+ " and (case when a.confirmed is null then 'N' else a.confirmed end )= 'N' and b.nature in ('V')";
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString(1, siteCode);
pstmt1.setString(2, custCode);
pstmt1.setString(3, saleOrder);
pstmt1.setTimestamp(4, orderDate);
pstmt1.setTimestamp(5, orderDate);
rs1 = pstmt1.executeQuery();
if (rs1.next()) {
unConfTotFreeQty = rs1.getDouble("unconfirmFreeQty");
System.out.println("unConfTotFreeQty separte free" + unConfTotFreeQty);
}
pstmt1.close();
rs1.close();
pstmt1 = null;
rs1 = null;
//---------------------------
Node currDetail1 = null;
prvFreeQty = 0;
int count = 0;
currLineNo = checkNull(genericUtility.getColumnValue("line_no", dom));
NodeList detailList1 = dom2.getElementsByTagName("Detail2");
int noOfDetails = detailList1.getLength();
for (int ctr1 = 0; ctr1 < noOfDetails; ctr1++) {
currDetail1 = detailList1.item(ctr1);
lineNo = checkNullandTrim(genericUtility.getColumnValueFromNode("line_no", currDetail1));
nature = checkNull(genericUtility.getColumnValueFromNode("nature", currDetail1));
browItemCode = checkNull(genericUtility.getColumnValueFromNode("item_code", currDetail1));
quantity = checkDoubleNull(genericUtility.getColumnValueFromNode("quantity", currDetail1));
System.out.println("rate1: ====" + rate1 + "]lineNo" + lineNo + "quantity"+quantity);
System.out.println("currLineNo: ====" + currLineNo + "]lineNo" + lineNo + "");
if (!currLineNo.trim().equalsIgnoreCase(lineNo.trim())) {
System.out.println("Insideif00000forSCHEME_BALANCE ");
if (nature.equals("V")) {
prvFreeQty = prvFreeQty + quantity;
}
System.out.println(
"prvFreeQty insdie V[" + prvFreeQty+ "]");
}
}
if ((qty +unConfTotFreeQty + prvFreeQty ) > freeQty) {
errCode = "VTFREEQTY1";// Entered free quantity is
// greater than scheme's free
// quantity
System.out.println("before ....errList.." + errList);
errList.add(errCode);
System.out.println("after ....errList.." + errList);
System.out.println("errFields..[" + errFields + "][" + childNodeName + "]");
errFields.add(checkNull(" ".toLowerCase()));
// errFields.add(checkNull(childNodeName.toLowerCase()));
System.out.println(
"Entered free quantity is greater than sCHEME_BALANCE quantity" + errFields);
}
}
else
{
errCode = "VTQTYSCBAL";// Entered free quantity is
// greater than scheme's free
// quantity
System.out.println("before ....errList.." + errList);
errList.add(errCode);
System.out.println("after ....errList.." + errList);
System.out.println("errFields..[" + errFields + "][" + childNodeName + "]");
errFields.add(checkNull(" ".toLowerCase()));
// errFields.add(checkNull(childNodeName.toLowerCase()));
System.out.println(
"Entered free quantity is greater than sCHEME_BALANCE quantity" + errFields);
}
}
if ("I".equalsIgnoreCase(nature.trim()))
{
sql = " SELECT BALANCE_FREE_QTY - USED_FREE_QTY FROM SCHEME_BALANCE WHERE BALANCE_FREE_QTY - USED_FREE_QTY > 0 "
+ " AND EFF_FROM <= ? AND VALID_UPTO >=? AND CUST_CODE = ? AND ITEM_CODE= ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setTimestamp(1, orderDate);
pstmt.setTimestamp(2, orderDate);
pstmt.setString(3,custCode);
pstmt.setString(4,itemCodeOrd);
rs1 = pstmt.executeQuery();
if (rs1.next())
{
freeQty = rs1.getDouble(1);
}
rs1.close();
rs1 = null;
pstmt.close();
pstmt = null;
if(freeQty > 0)
{
sql = " select sum(case when nature ='I' then quantity else 0 end) as unconfirmFreeQty " +
" from sorder a,sorddet b where a.sale_order = b.sale_order and a.site_code = ? "
+ " and a.cust_code = ? and a.sale_order <> ? and a.order_date between ? and ?"
+ " and b.item_code__ord = ?"
+ " and (case when a.confirmed is null then 'N' else a.confirmed end )= 'N' and b.nature in ('I')";
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString(1, siteCode);
pstmt1.setString(2, custCode);
pstmt1.setString(3, saleOrder);
pstmt1.setTimestamp(4, orderDate);
pstmt1.setTimestamp(5, orderDate);
pstmt1.setString(6, itemCodeOrd);
rs1 = pstmt1.executeQuery();
if (rs1.next()) {
unConfTotFreeQty = rs1.getDouble("unconfirmFreeQty");
System.out.println("unConfTotFreeQty separte free" + unConfTotFreeQty);
}
pstmt1.close();
rs1.close();
pstmt1 = null;
rs1 = null;
//---------------------------
Node currDetail1 = null;
prvFreeQty = 0;
int count = 0;
currLineNo = checkNull(genericUtility.getColumnValue("line_no", dom));
NodeList detailList1 = dom2.getElementsByTagName("Detail2");
int noOfDetails = detailList1.getLength();
for (int ctr1 = 0; ctr1 < noOfDetails; ctr1++) {
currDetail1 = detailList1.item(ctr1);
lineNo = checkNullandTrim(genericUtility.getColumnValueFromNode("line_no", currDetail1));
nature = checkNull(genericUtility.getColumnValueFromNode("nature", currDetail1));
browItemCode = checkNull(genericUtility.getColumnValueFromNode("item_code", currDetail1));
quantity = checkDoubleNull(genericUtility.getColumnValueFromNode("quantity", currDetail1));
System.out.println("rate1: ====" + rate1 + "]lineNo" + lineNo + "quantity"+quantity);
System.out.println("currLineNo: ====" + currLineNo + "]lineNo" + lineNo + "");
if (!currLineNo.trim().equalsIgnoreCase(lineNo.trim())) {
System.out.println("Insideif00000forSCHEME_BALANCE ");
if (nature.equals("I") && (browItemCode.equalsIgnoreCase(itemCodeOrd))) {
prvFreeQty = prvFreeQty + quantity;
}
System.out.println(
"prvFreeQty insdie V[" + prvFreeQty+ "]");
}
}
if ((qty +unConfTotFreeQty + prvFreeQty ) > freeQty) {
errCode = "VTFREEQTY1";// Entered free quantity is
// greater than scheme's free
// quantity
System.out.println("before ....errList.." + errList);
errList.add(errCode);
System.out.println("after ....errList.." + errList);
System.out.println("errFields..[" + errFields + "][" + childNodeName + "]");
errFields.add(checkNull(" ".toLowerCase()));
// errFields.add(checkNull(childNodeName.toLowerCase()));
System.out.println(
"Entered free quantity is greater than sCHEME_BALANCE quantity" + errFields);
}
}
else
{
errCode = "VTQTYSCBAL";// Entered free quantity is
// greater than scheme's free
// quantity
System.out.println("before ....errList.." + errList);
errList.add(errCode);
System.out.println("after ....errList.." + errList);
System.out.println("errFields..[" + errFields + "][" + childNodeName + "]");
errFields.add(checkNull(" ".toLowerCase()));
// errFields.add(checkNull(childNodeName.toLowerCase()));
System.out.println(
"Entered free quantity is greater than sCHEME_BALANCE quantity" + errFields);
}
}
}
// ---------------------------- Nandkumar Gadkari -------------on 03/10/18----------end----------------------
// unit // unit
else if (childNodeName.equalsIgnoreCase("unit")) { else if (childNodeName.equalsIgnoreCase("unit")) {
unit = checkNullandTrim(genericUtility.getColumnValue("unit", dom)); unit = checkNullandTrim(genericUtility.getColumnValue("unit", dom));
...@@ -14490,11 +14743,11 @@ public class SalesOrderIC extends ValidatorEJB implements SalesOrderICLocal, Sal ...@@ -14490,11 +14743,11 @@ public class SalesOrderIC extends ValidatorEJB implements SalesOrderICLocal, Sal
SimpleDateFormat dateFormat1 = new SimpleDateFormat("dd-MMM-yy"); SimpleDateFormat dateFormat1 = new SimpleDateFormat("dd-MMM-yy");
SimpleDateFormat sdf; SimpleDateFormat sdf;
StringBuffer valueXmlString = new StringBuffer(); StringBuffer valueXmlString = new StringBuffer();
PreparedStatement pstmt = null, pstmt1 = null; PreparedStatement pstmt = null, pstmt1 = null,pstmt2 = null;
ResultSet rs = null, rs1 = null; ResultSet rs = null, rs1 = null, rs2 = null;
E12GenericUtility genericUtility = new E12GenericUtility(); E12GenericUtility genericUtility = new E12GenericUtility();
ConnDriver connDriver = new ConnDriver(); ConnDriver connDriver = new ConnDriver();
String sql = ""; String sql = "",sql2="";
double chargeQty = 0, batQty = 0, roundTo = 0, appMinQty = 0, appMaxQty = 0, qtyPer = 0, freeQty = 0, double chargeQty = 0, batQty = 0, roundTo = 0, appMinQty = 0, appMaxQty = 0, qtyPer = 0, freeQty = 0,
discount = 0, chargeQty1 = 0; discount = 0, chargeQty1 = 0;
double totChargeQty = 0, totFreeQty = 0, totSampleQty = 0, totBonusQty = 0, minQty = 0, unConfTotChargeQty = 0,unconfirmChargeValue = 0, double totChargeQty = 0, totFreeQty = 0, totSampleQty = 0, totBonusQty = 0, minQty = 0, unConfTotChargeQty = 0,unconfirmChargeValue = 0,
...@@ -14627,15 +14880,16 @@ public class SalesOrderIC extends ValidatorEJB implements SalesOrderICLocal, Sal ...@@ -14627,15 +14880,16 @@ public class SalesOrderIC extends ValidatorEJB implements SalesOrderICLocal, Sal
if (countCodeDlv == null) { if (countCodeDlv == null) {
countCodeDlv = ""; countCodeDlv = "";
} }
sql = "select a.scheme_code from scheme_applicability a,scheme_applicability_det b where a.scheme_code= b.scheme_code and a.item_code= ? and a.app_from <= ? and a.valid_upto>= ? and (b.site_code= ? or b.state_code = ? or b.count_code= ?)"; sql2 = "select a.scheme_code from scheme_applicability a,scheme_applicability_det b where a.scheme_code= b.scheme_code and a.item_code= ? and a.app_from <= ? and a.valid_upto>= ? and (b.site_code= ? or b.state_code = ? or b.count_code= ?)";
pstmt = conn.prepareStatement(sql); pstmt2 = conn.prepareStatement(sql2);
pstmt.setString(1, itemCodeOrd); pstmt2.setString(1, itemCodeOrd);
pstmt.setTimestamp(2, orderDate); pstmt2.setTimestamp(2, orderDate);
pstmt.setTimestamp(3, orderDate); pstmt2.setTimestamp(3, orderDate);
pstmt.setString(4, siteCode); pstmt2.setString(4, siteCode);
pstmt.setString(5, stateCodeDlv); pstmt2.setString(5, stateCodeDlv);
pstmt.setString(6, countCodeDlv); pstmt2.setString(6, countCodeDlv);
while (rs.next()) { rs2 = pstmt2.executeQuery();// missing executeQuery and pstmt2 rs2 added by Nandkumar Gadkari on 03/10/18
while (rs2.next()) {
schemeCode = rs.getString("scheme_code"); schemeCode = rs.getString("scheme_code");
String prodSh1 = "N"; String prodSh1 = "N";
...@@ -14699,7 +14953,8 @@ public class SalesOrderIC extends ValidatorEJB implements SalesOrderICLocal, Sal ...@@ -14699,7 +14953,8 @@ public class SalesOrderIC extends ValidatorEJB implements SalesOrderICLocal, Sal
sql = "select (case when apply_cust_list is null then ' ' else apply_cust_list end) as apply_cust_list, (case when noapply_cust_list is null then ' ' else noapply_cust_list end)as noapply_cust_list,order_type from scheme_applicability where scheme_code = ?"; sql = "select (case when apply_cust_list is null then ' ' else apply_cust_list end) as apply_cust_list, (case when noapply_cust_list is null then ' ' else noapply_cust_list end)as noapply_cust_list,order_type from scheme_applicability where scheme_code = ?";
pstmt1 = conn.prepareStatement(sql); pstmt1 = conn.prepareStatement(sql);
pstmt1.setString(1, schemeCode); pstmt1.setString(1, schemeCode);
rs = pstmt1.executeQuery(); rs1 = pstmt1.executeQuery();// rs1 make by nandkumar gadkari on 03/10/18
if (rs1.next()) { if (rs1.next()) {
applyCustList = rs1.getString("apply_cust_list"); applyCustList = rs1.getString("apply_cust_list");
noApplyCustList = rs1.getString("noapply_cust_list"); noApplyCustList = rs1.getString("noapply_cust_list");
...@@ -14746,10 +15001,10 @@ public class SalesOrderIC extends ValidatorEJB implements SalesOrderICLocal, Sal ...@@ -14746,10 +15001,10 @@ public class SalesOrderIC extends ValidatorEJB implements SalesOrderICLocal, Sal
schemeCode1 = prevScheme; schemeCode1 = prevScheme;
} }
} }
pstmt.close(); pstmt2.close();
rs.close(); rs2.close();
pstmt = null; pstmt2 = null;
rs = null; rs2 = null;
if (schCnt == 0) { if (schCnt == 0) {
errCode = "VTFREEQTY";// Scheme is not applicable for the errCode = "VTFREEQTY";// Scheme is not applicable for the
// entered item code // entered item code
......
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