Commit 9d431e0f authored by msharma's avatar msharma

Validation added in Mis Pay submit button


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@99995 ce508802-f39f-4f6c-b175-0d175dae99d5
parent c8291da1
......@@ -42,7 +42,7 @@ public class MiscPaySubAct extends ActionHandlerEJB implements MiscPaySubActLoca
String retString = "";
String sql = ""; String sql1 = ""; String sql2 = "";
String confStatus="",wfStatus="",sundryCode = "", payMode = "", supPayMod = "", bankCode = "", chqNo = "",sundryType="";
String finparPayMode="",PayMode1="";
String finparPayMode="";
/*String currAppdate ="";
String tranIdTest="",todayStr="";*/
java.sql.Timestamp datesubmit=null;
......@@ -50,7 +50,7 @@ public class MiscPaySubAct extends ActionHandlerEJB implements MiscPaySubActLoca
double totAmt = 0.0,totAmtMiscPay = 0.0,adjAmtMiscPay = 0.0,payAmt = 0.0;
int cnt = 0, cnt1 = 0;
int dupChqCnt=0;
double holdAmtMiscPay=0;
ArrayList<String> stnCdList = new ArrayList<String>();
ArrayList<String> finparPayModeArrList=new ArrayList<String>();
String finparPayModeArr[];
......@@ -60,6 +60,14 @@ public class MiscPaySubAct extends ActionHandlerEJB implements MiscPaySubActLoca
Timestamp tranDate = null;
String refNo = "",tranSer = "";
FinCommon fin = new FinCommon();
String stationCode="";
String sundrtyTypeDet="";
int countBankStanSer=0;
String sundryCodeDet="";
String bankAcct="",ifsc="";
int countVouchNo=0;
double subPayAmt=0;
double payableAmt=0;
try
{
ConnDriver connDriver = null;
......@@ -140,6 +148,14 @@ public class MiscPaySubAct extends ActionHandlerEJB implements MiscPaySubActLoca
finparPayModeArrList.addAll(Arrays.asList(finparPayModeArr));
}
if(finparPayModeArrList.contains(payMode.trim()))
{
if(chqNo.trim().length()>0)
{
retString = itmDBAccessLocal.getErrorString("","VTREFNTALW","");
return retString;
}
}
//End added by chandrashekar on 28-dec-2015
sql = "select sum(pay_amt) as totAmt from misc_paydet where tran_id = ? ";
......@@ -161,7 +177,7 @@ public class MiscPaySubAct extends ActionHandlerEJB implements MiscPaySubActLoca
return retString;
}
sql1 = "select TRAN_SER,vouch_no,pay_amt from misc_paydet where tran_id = ?";
sql1 = "select TRAN_SER,vouch_no,pay_amt,stan_code,sundry_type,sundry_code from misc_paydet where tran_id = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, tranId);
rs1 = pstmt1.executeQuery();
......@@ -171,8 +187,110 @@ public class MiscPaySubAct extends ActionHandlerEJB implements MiscPaySubActLoca
tranSer = checkNull(rs1.getString("TRAN_SER"));
refNo = checkNull(rs1.getString("vouch_no"));
payAmt = rs1.getDouble("pay_amt");
stationCode= checkNull(rs1.getString("stan_code"));
sundrtyTypeDet= checkNull(rs1.getString("sundry_type"));
sundryCodeDet= checkNull(rs1.getString("sundry_code"));
countVouchNo=0;
/*sql="select count(a.tran_id) from misc_payment a,misc_paydet b where a.tran_id=b.tran_id and a.tran_id<>? " +
" and b.vouch_no=? and case when a.wf_status is null then 'O' else a.wf_status end ='S' and case when a.confirmed is null then 'N' else a.confirmed end ='N' ";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,tranId);
pstmt.setString(2,refNo);
rs=pstmt.executeQuery();
if(rs.next())
{
countVouchNo=rs.getInt(1);
}
rs.close();
rs=null;
pstmt.close();
pstmt=null;
if(countVouchNo>0)
{
retString = itmDBAccessLocal.getErrorString("","VTIINVVCH","");
return retString;
}*/
if("T".equalsIgnoreCase(payMode) && "E".equalsIgnoreCase(sundrtyTypeDet))
{
sql="select count(1) from bank_stan_serv where bank_code=? and stan_code=?";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,bankCode);
pstmt.setString(2, stationCode);
rs=pstmt.executeQuery();
if(rs.next())
{
countBankStanSer=rs.getInt(1);
}
rs.close();
rs=null;
pstmt.close();
pstmt=null;
if(countBankStanSer==0)
{
retString = itmDBAccessLocal.getErrorString("","VTINBNKSTN","");
return retString;
}
sql="select bank_acct,ifsc from employee where emp_code=? ";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,sundryCodeDet);
rs=pstmt.executeQuery();
while(rs.next())
{
bankAcct=checkNull(rs.getString("bank_acct"));
ifsc=checkNull(rs.getString("ifsc"));
}
rs.close();
rs=null;
pstmt.close();
pstmt=null;
if(bankAcct.trim().length()==0)
{
retString = itmDBAccessLocal.getErrorString("","VTIINVACCT","");
return retString;
}
if(ifsc.trim().length()==0)
{
retString = itmDBAccessLocal.getErrorString("","VTIINVIFSC","");
return retString;
}
}
// if(!"E".equalsIgnoreCase(sundrtyTypeDet.trim()) && finparPayModeArrList.contains(payMode.trim()))
if ((stationCode.trim()).length()==0)
{
stanCdBlank = true;
break;
}
else if(finparPayModeArrList.contains(payMode.trim()))
{
System.out.println("@V@ Stan code not blank");
if (!"E".equalsIgnoreCase(sundryType))
{
System.out.println("@V@ Sundry type NOT 'E'");
if (stnCdList.size() > 0)
{
System.out.println("@V@ List size is NOT 0 :-[" + stnCdList.size() + "]");
if (!stnCdList.contains(stationCode))
{
System.out.println("@V@ Stan code match NOT found");
stanCdDupl = true;
break;
}
sql = "SELECT tot_amt as tot_amt, adj_amt as adj_amt , sundry_type as sundrytype from misc_payables where tran_ser = ?"
}
else
{
System.out.println("@V@ First Stan code added in list");
stnCdList.add(stationCode);
}
}
}
sql = "SELECT tot_amt as tot_amt, adj_amt as adj_amt ,hold_amt,sundry_type as sundrytype from misc_payables where tran_ser = ?"
+ " and ref_no = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tranSer);
......@@ -183,11 +301,29 @@ public class MiscPaySubAct extends ActionHandlerEJB implements MiscPaySubActLoca
{
totAmtMiscPay = rs.getDouble("tot_amt");
adjAmtMiscPay = rs.getDouble("adj_amt");
holdAmtMiscPay= rs.getDouble("hold_amt");
System.out.println("totAmtMiscPay ========="+ totAmtMiscPay);
System.out.println("adjAmtMiscPay ========="+ adjAmtMiscPay);
System.out.println("Pay Amount ============ "+ payAmt);
if(Math.abs(totAmtMiscPay - adjAmtMiscPay) < Math.abs(payAmt))//if there is no balance in misc_payables
sql = "select sum(case when b.pay_amt is null then 0 else b.pay_amt end) from misc_payment a,misc_paydet b where a.tran_id=b.tran_id and wf_status='S'"
+ " AND CONFIRMED='N' and b.tran_id <> ? and b.VOUCH_NO=? and b.tran_ser=?";
pstmt2=conn.prepareStatement(sql);
pstmt2.setString(1,tranId);
pstmt2.setString(2,refNo);
pstmt2.setString(3,tranSer);
rs2=pstmt2.executeQuery();
if(rs2.next())
{
subPayAmt=rs2.getDouble(1);
}
rs2.close();
rs2=null;
pstmt2.close();
pstmt2=null;
System.out.println("subPayAmt["+subPayAmt+"]");
System.out.println("holdAmtMiscPay["+holdAmtMiscPay+"]");
if(Math.abs(totAmtMiscPay - adjAmtMiscPay-holdAmtMiscPay-subPayAmt) < Math.abs(payAmt))//if there is no balance in misc_payables
{
System.out.println("Entering the if condition Pay Amount ============ "+ payAmt);
retString = itmDBAccessLocal.getErrorString("","VTBAL1","");
......@@ -243,7 +379,7 @@ public class MiscPaySubAct extends ActionHandlerEJB implements MiscPaySubActLoca
}
}
sql = "select stan_code from misc_paydet where tran_id=?";
/*sql = "select stan_code from misc_paydet where tran_id=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
......@@ -291,11 +427,7 @@ public class MiscPaySubAct extends ActionHandlerEJB implements MiscPaySubActLoca
stanCdDupl = true;
break;
}
else
{
System.out.println("@V@ Stan code added in list");
stnCdList.add(rs.getString("stan_code"));
}
}
else
{
......@@ -308,7 +440,7 @@ public class MiscPaySubAct extends ActionHandlerEJB implements MiscPaySubActLoca
pstmt.close();
pstmt = null;
rs.close();
rs = null;
rs = null;*/
if (stanCdBlank)
{
......@@ -332,29 +464,7 @@ public class MiscPaySubAct extends ActionHandlerEJB implements MiscPaySubActLoca
}
}
sql = "select count(*) AS CNT from misc_payment a,misc_paydet b where a.tran_id=b.tran_id and wf_status='S'"
+ " AND CONFIRMED='N' and b.tran_id <> ? and b.VOUCH_NO in(select VOUCH_NO from misc_paydet where tran_id=?)";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
pstmt.setString(2, tranId);
rs = pstmt.executeQuery();
if (rs.next())
{
cnt = rs.getInt("CNT");
}
pstmt.close();
pstmt = null;
rs.close();
rs = null;
if (cnt > 0)
{
System.out.println("@V@ Voucher Duplicate found in 'misc_payment'");
retString = itmDBAccessLocal.getErrorString("", "VTVCHNODPL", "");
return retString;
}
/* sql = "SELECT COUNT(*) AS CNT FROM BANKTRAN_LOG WHERE BANK_CODE=? AND TRAN_TYPE='P' AND TRAN_SER <> 'R-DIS' AND REF_NO=?";
pstmt = conn.prepareStatement(sql);
......
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