Commit be89e23f authored by arawankar's avatar arawankar

Added new methods in fincommon.java

getStanDrawn
getPayableAt
getBankChargesCalc
getCalcDiscountDate

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@186521 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 9383e2f5
...@@ -15287,4 +15287,789 @@ public String nfCheckPeriod(String modCode, java.util.Date tranDate , String sit ...@@ -15287,4 +15287,789 @@ public String nfCheckPeriod(String modCode, java.util.Date tranDate , String sit
return errString; return errString;
} }
//Ended by Varsha V for showing description message on 30-04-18 //Ended by Varsha V for showing description message on 30-04-18
//Added by Anjali R. on[30/04/2018][Migrated method gbf_calc_discountdate][Start]
public java.util.Date getCalcDiscountDate(String crTerm ,java.util.Date tranDate , java.util.Date effDate, java.util.Date billDate ,Connection conn) throws ITMException
{
System.out.println("============================= Inside getCalcDiscountDate method ===========================================");
System.out.println("Parameters---crTerm--["+crTerm+"]\n tranDate--["+tranDate+"] \n effDate--["+effDate+"] \n billDate--["+billDate+"]");
String sql = "";
PreparedStatement pstmt = null;
ResultSet resultSet = null;
String startFrom = "";
String monthStr = "";
int month = 0;
int crDays = 0;
int maxDays = 0;
int currDays = 0;
int dueDays = 0;
String overrideDiscDate = "";
java.util.Date startDate = null;
java.util.Date toDate = null;
UtilMethods utilMethods = null;
java.util.Date dueDate = null;
try
{
utilMethods = new UtilMethods();
sql = "select start_from from crterm where cr_term = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, crTerm);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
startFrom = checkNull(resultSet.getString("start_from"));
}
System.out.println("startFrom---["+startFrom+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
if("R".equalsIgnoreCase(startFrom))
{
startDate = tranDate;
}
else if("D".equalsIgnoreCase(startFrom) || "Q".equalsIgnoreCase(startFrom))
{
startDate = effDate;
}
else if("B".equalsIgnoreCase(startFrom))
{
startDate = billDate;
}
System.out.println("startDate--------["+startDate+"]");
month = utilMethods.month(startDate);
System.out.println("month--["+month+"]");
if(month == 12)
{
month = 1;
monthStr = "01";
}
else
{
month = month + 1;
System.out.println("month--["+month+"]");
if(month > 9)
{
monthStr = String.valueOf(month);
System.out.println("monthStr--["+monthStr+"]");
}
else
{
monthStr = "0" + String.valueOf(month);
System.out.println("monthStr--["+monthStr+"]");
}
}
sql = "select override_discount_date from crterm_disc where cr_term = ? and cr_month= ? "
+ " and override_discount_date is not null";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, crTerm);
pstmt.setString(2, monthStr);
resultSet = pstmt.executeQuery();
if(resultSet.next())
{
overrideDiscDate = resultSet.getString("override_discount_date");
System.out.println("overrideDiscDate--["+overrideDiscDate+"]");
if(overrideDiscDate.trim().length() > 0 && overrideDiscDate != null)
{
crDays =Integer.parseInt(utilMethods.mid(overrideDiscDate , 3 ,2));
System.out.println("crDays----["+crDays+"]");
}
}
else
{
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
sql = "select crtermfc.max_day,crterm_disc.override_discount_date from crterm_disc,"
+ "crtermfc where crterm_disc.cr_term = crtermfc.cr_term and trim(crtermfc.line_no) = '1' and "
+ "crterm_disc.cr_term = ? and crterm_disc.cr_month = '99' and crterm_disc.override_discount_date is not null";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, crTerm);
resultSet = pstmt.executeQuery();
if(resultSet.next())
{
maxDays = resultSet.getInt("max_day");
overrideDiscDate = resultSet.getString("override_discount_date");
System.out.println("maxDays--["+maxDays+"]overrideDiscDate--["+overrideDiscDate+"]");
if(overrideDiscDate.trim().length() > 0 && overrideDiscDate != null)
{
crDays =Integer.parseInt(utilMethods.mid(overrideDiscDate , 3 ,2));
System.out.println("crDays----["+crDays+"]");
}
}
else
{
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
sql = "select max_day from crtermfc where cr_term = ? and trim(crtermfc.line_no) = '1'";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, crTerm);
resultSet = pstmt.executeQuery();
if(resultSet.next())
{
maxDays = resultSet.getInt("max_day");
}
else
{
dueDate = null;
}
System.out.println("maxDays--["+maxDays+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
}
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
sql = "select cr_days from crterm where cr_term = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, crTerm);
resultSet = pstmt.executeQuery();
if(resultSet.next())
{
dueDays = resultSet.getInt("cr_days");
System.out.println("dueDays---["+dueDays+"]");
}
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
maxDays = dueDays + maxDays;
System.out.println("maxDays---["+maxDays+"]");
if(overrideDiscDate != null || overrideDiscDate.trim().length() > 0)
{
sql = "select to_date from period where fr_date <= ? and to_date >= ?";
pstmt = conn.prepareStatement(sql);
pstmt.setDate(1, new java.sql.Date( startDate.getTime()));
pstmt.setDate(2, new java.sql.Date( startDate.getTime()));
resultSet = pstmt.executeQuery();
if(resultSet.next())
{
toDate = resultSet.getDate("to_date") != null ?new java.sql.Date(resultSet.getDate("to_date").getTime()) : null;
}
System.out.println("toDate---["+toDate+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
currDays = utilMethods.DaysAfter(startDate , toDate );
System.out.println("currDays--["+currDays+"]");
maxDays = currDays + crDays;
System.out.println("maxDays--["+maxDays+"]");
}
dueDate = utilMethods.RelativeDate(startDate, maxDays );
System.out.println("dueDate--["+dueDate+"]");
}
catch(Exception e)
{
System.out.println("Exception from getCalcDiscountDate--["+ e.getMessage() +"]");
e.printStackTrace();
throw new ITMException(e);
}
return dueDate;
}
//Added by Anjali R. on[30/04/2018][Migrated method gbf_calc_discountdate][End]
//Added by Anjali R. on[30/04/2018][Migrated method gf_bankcharges_calc][Start]
public double getBankChargesCalc(String bankCode,String payMode,java.util.Date date ,double amount,Connection conn)
{
String sql = "";
PreparedStatement pstmt = null;
ResultSet resultSet = null;
double cumCharges = 0.0;
double rndTo = 0.0;
double minAmt = 0.0;
double maxAmt = 0.0;
double charge = 0.0;
String cumm = "";
String round = "";
String chgType = "";
DistCommon distCommon = null;
try
{
distCommon = new DistCommon();
System.out.println("======= Inside getBankChargesCalc==============");
System.out.println("Input ---bankCode["+bankCode+"]payMode--["+payMode+"]date--["+date+"]amount--["+amount+"]");
sql = "select bank_charges, cumulative, round, round_to, charge_type from bank_charges where bank_code = ? "
+ "and pay_mode = ? and eff_date <= ?"
+ " and exp_date >= ? and min_amt <= ? and max_amt >= ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, bankCode);
pstmt.setString(2, payMode);
pstmt.setDate(3,new java.sql.Date( date.getTime()));
pstmt.setDate(4,new java.sql.Date( date.getTime()));
pstmt.setDouble(5, amount);
pstmt.setDouble(6, amount);
resultSet = pstmt.executeQuery();
if(resultSet.next())
{
cumCharges = resultSet.getDouble("bank_charges");
cumm = checkNull(resultSet.getString("cumulative"));
round = checkNull(resultSet.getString("round"));
rndTo = resultSet.getDouble("round_to");
chgType = checkNull(resultSet.getString("charge_type"));
}
System.out.println("cumCharges--["+cumCharges+"] \ncumm--["+cumm+"]\nround--["+round+"]\nrndTo--["+rndTo+"]\n chgType--["+chgType+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
if("P".equalsIgnoreCase(payMode))
{
cumCharges = amount * cumCharges/100;
System.out.println("cumCharges--["+cumCharges+"]");
}
if(!(cumm == null || cumm.trim().length() == 0 || "N".equalsIgnoreCase(cumm)))
{
cumCharges = 0.0;
sql = "select min_amt, max_amt, charge_type, bank_charges from bank_charges where bank_code = ? and"
+ "pay_mode = ? and eff_date <= ? and exp_date >= ? and ( min_amt < ? or "
+ "( min_amt < ? and max_amt > ? ) ) and cumulative = 'Y' order by min_amt";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, bankCode);
pstmt.setString(2, payMode);
pstmt.setDate(3,new java.sql.Date( date.getTime()));
pstmt.setDate(4,new java.sql.Date( date.getTime()));
pstmt.setDouble(5, amount);
pstmt.setDouble(6, amount);
pstmt.setDouble(7, amount);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
minAmt = resultSet.getDouble("min_amt");
maxAmt = resultSet.getDouble("max_amt");
chgType = resultSet.getString("charge_type");
charge = resultSet.getDouble("bank_charges");
System.out.println("minAmt--["+minAmt+"] \n maxAmt--["+maxAmt+"]\n chgType--["+chgType+"]\n charge--["+charge+"]");
if(chgType != null)
{
if("F".equalsIgnoreCase(chgType))
{
cumCharges = cumCharges + charge;
System.out.println("cumCharges-[F]----["+cumCharges+"]");
}
else if("P".equalsIgnoreCase(chgType))
{
System.out.println("amount--["+amount+"] \n maxAmt--["+maxAmt+"]");
if(amount > maxAmt)
{
cumCharges = cumCharges + charge * ( maxAmt - minAmt ) / 100;
System.out.println("cumCharges--["+cumCharges+"]");
}
else
{
cumCharges = cumCharges + charge * ( amount - minAmt ) / 100;
System.out.println("cumCharges--["+cumCharges+"]");
}
}
else
{
cumCharges = 0.0;
}
}
}
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
cumCharges = distCommon.getRndamt(cumCharges, round, rndTo);
System.out.println("Return cumCharges--["+cumCharges+"]");
}
}
catch(Exception e)
{
System.out.println("Exception from getBankChargesCalc--["+ e.getMessage() +"]");
e.printStackTrace();
}
finally
{
try
{
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
return cumCharges;
}
//Added by Anjali R. on[30/04/2018][Migrated method gf_bankcharges_calc][End]
//Added by Anjali R. on[02/05/2018][Migrated method gbf_payable_at from nvo_business_object_fin component][Start]
public String getPayableAt(String sundryType,String sundryCode,String bankCode,Connection conn)
{
String sql = "";
PreparedStatement pstmt = null;
ResultSet resultSet = null;
String payableAt = "";
String stanCode = "";
String bankRef = "";
try
{
System.out.println("========= Inside getPayableAt ===================");
System.out.println("sundryType--["+sundryType+"]\n sundryCode--["+sundryCode+"] \n bankCode--["+bankCode+"]");
if("E".equalsIgnoreCase(sundryType))
{
sql = "select dd_payable_bank, stan_code from employee where emp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, sundryCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
payableAt = checkNull(resultSet.getString("dd_payable_bank"));
stanCode = checkNull(resultSet.getString("stan_code"));
}
System.out.println("payableAt--["+payableAt+"] \n stanCode--["+stanCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
else if("S".equalsIgnoreCase(sundryType))
{
sql = "select bank_ref, stan_code from supplier where supp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, sundryCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
payableAt = checkNull(resultSet.getString("bank_ref"));
stanCode = checkNull(resultSet.getString("stan_code"));
}
System.out.println("payableAt--["+payableAt+"] \n stanCode--["+stanCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
else if("C".equalsIgnoreCase(sundryType))
{
sql = "select bank_name, stan_code from customer where cust_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, sundryCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
payableAt = checkNull(resultSet.getString("bank_name"));
stanCode = checkNull(resultSet.getString("stan_code"));
}
System.out.println("payableAt--["+payableAt+"] \n stanCode--["+stanCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
else if("P".equalsIgnoreCase(sundryType) || "T".equalsIgnoreCase(sundryType))
{
sql = "select payable_ref, stan_code from transporter where tran_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, sundryCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
payableAt = checkNull(resultSet.getString("payable_ref"));
stanCode = checkNull(resultSet.getString("stan_code"));
}
System.out.println("payableAt--["+payableAt+"] \n stanCode--["+stanCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
else if("X".equalsIgnoreCase(sundryType))
{
sql = "select bank_ref, stan_code from tax_authority where tauth_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, sundryCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
payableAt = checkNull(resultSet.getString("bank_ref"));
stanCode = checkNull(resultSet.getString("stan_code"));
}
System.out.println("payableAt--["+payableAt+"] \n stanCode--["+stanCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
if(payableAt == null || payableAt.trim().length() == 0)
{
sql = "select drawn_at, bank_ref from bank_stan_serv where bank_code = ? and stan_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, bankCode);
pstmt.setString(2, stanCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
payableAt = checkNull(resultSet.getString("drawn_at"));
bankRef = checkNull(resultSet.getString("drawn_at"));
}
System.out.println("payableAt--["+payableAt+"] \n bankRef--["+bankRef+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
if(bankRef!= null && bankRef.trim().length() > 0)
{
payableAt = payableAt.trim() + bankRef.trim();
System.out.println("payableAt--["+payableAt+"]");
}
}
}
catch(Exception e)
{
System.out.println("Exception from getPayableAt--["+ e.getMessage() +"]");
e.printStackTrace();
}
finally
{
try
{
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
System.out.println("Return payableAt--["+payableAt+"]");
return payableAt;
}
//Added by Anjali R. on[02/05/2018][Migrated method gbf_payable_at from nvo_business_object_fin component][End]
//Added by Anjali R. on[02/05/2018][Migrated method gbf_stan_drawn from nvo_business_object_fin component][Start]
public String getStanDrawn(String sundryType, String sundryCode,Connection conn)
{
String stanCode = "";
String empCode = "";
String sql = "";
PreparedStatement pstmt = null;
ResultSet resultSet = null;
try
{
System.out.println("========= Inside getStanDrawn ======================");
System.out.println("sundryType--["+sundryType+"] \n sundryCode--["+sundryCode+"]");
if("E".equalsIgnoreCase(sundryType))
{
sql = "select stan_code from employee where emp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, sundryCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
stanCode = resultSet.getString("stan_code");
}
System.out.println("stanCode--["+stanCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
else if("S".equalsIgnoreCase(sundryType))
{
sql = "select stan_code from supplier where supp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, sundryCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
stanCode = resultSet.getString("stan_code");
}
System.out.println("stanCode--["+stanCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
else if("C".equalsIgnoreCase(sundryType))
{
sql = "select stan_code from customer where cust_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, sundryCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
stanCode = resultSet.getString("stan_code");
}
System.out.println("stanCode--["+stanCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
else if("P".equalsIgnoreCase(sundryType))
{
sql = "select emp_code from sales_pers where sales_pers = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, sundryCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
empCode = resultSet.getString("emp_code");
}
System.out.println("empCode--["+empCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
if(empCode != null && empCode.trim().length() > 0)
{
sql = "select stan_code from employee where emp_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, empCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
stanCode = resultSet.getString("stan_code");
}
System.out.println("stanCode--["+stanCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
}
else if("T".equalsIgnoreCase(sundryType))
{
sql = "select stan_code from transporter where tran_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, sundryCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
stanCode = resultSet.getString("stan_code");
}
System.out.println("stanCode--["+stanCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
else if("X".equalsIgnoreCase(sundryType))
{
sql = "select stan_code from tax_authority where tauth_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, sundryCode);
resultSet = pstmt.executeQuery();
while(resultSet.next())
{
stanCode = resultSet.getString("stan_code");
}
System.out.println("stanCode--["+stanCode+"]");
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
}
catch(Exception e)
{
System.out.println("Exception from getStanDrawn--[ "+ e.getMessage() +"]");
e.printStackTrace();
}
finally
{
try
{
if(resultSet != null)
{
resultSet.close();
resultSet = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
return stanCode;
}
//Added by Anjali R. on[02/05/2018][Migrated method gbf_stan_drawn from nvo_business_object_fin component][End]
} }
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