Commit 495c9ca4 authored by nsawalakhe's avatar nsawalakhe

Added new sql changes


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@103453 ce508802-f39f-4f6c-b175-0d175dae99d5
parent d06c1db0
package ibase.dashboard.sfa.ejb; package ibase.dashboard.sfa.ejb;
import ibase.system.config.ConnDriver; import ibase.system.config.ConnDriver;
import ibase.webitm.ejb.ValidatorEJB; import ibase.webitm.ejb.ValidatorEJB;
...@@ -10,7 +10,6 @@ import java.sql.PreparedStatement; ...@@ -10,7 +10,6 @@ import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Calendar; import java.util.Calendar;
import javax.ejb.Stateless; import javax.ejb.Stateless;
import org.json.simple.JSONObject; import org.json.simple.JSONObject;
...@@ -29,7 +28,7 @@ public class TargetVsAchievement extends ValidatorEJB implements TargetVsAchiev ...@@ -29,7 +28,7 @@ public class TargetVsAchievement extends ValidatorEJB implements TargetVsAchiev
* */ * */
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
public JSONObject getTargetVsAchievement(String dataSourceName,String prdCode) throws RemoteException, ITMException public JSONObject getTargetVsAchievement(String dataSourceName,String defaultPreCode,String empCode) throws RemoteException, ITMException
{ {
JSONObject rawEffTimeJson = new JSONObject(); JSONObject rawEffTimeJson = new JSONObject();
JSONObject rowData = null; JSONObject rowData = null;
...@@ -38,25 +37,46 @@ public class TargetVsAchievement extends ValidatorEJB implements TargetVsAchiev ...@@ -38,25 +37,46 @@ public class TargetVsAchievement extends ValidatorEJB implements TargetVsAchiev
PreparedStatement pstmt = null; PreparedStatement pstmt = null;
Connection conn = null; Connection conn = null;
ConnDriver connDriver = new ConnDriver(); ConnDriver connDriver = new ConnDriver();
int count=0; int count=0;
SimpleDateFormat simpleDateFormat = null;
Calendar calendar = null;
try try
{ {
conn = connDriver.getConnectDB(dataSourceName); conn = connDriver.getConnectDB(dataSourceName);
connDriver = null; connDriver = null;
System.out.println(" Inside getSDNoAttemptAnalyticsTopServlet() for Data Soruc Name ="+dataSourceName);
/*if ( (prdCode == null || prdCode.trim().length()==0 ) ||(prdCode.equals(""))) if (defaultPreCode!= null && empCode!=null)
{ {
simpleDateFormat = new SimpleDateFormat( "yyyyMM");
calendar = Calendar.getInstance(); System.out.println("TargetVsAchievement inside EJB passing Preriod code="+defaultPreCode +" and EmpCode ="+empCode);
calendar.add(calendar.MONTH, -1);
prdCode = simpleDateFormat.format(calendar.getTime()); //Note: This sql used for testing purpose means static sql
System.out.println("getTargetVsAchievement prdCode: "+prdCode); /*sql="SELECT dense_rank() over (order by A.ACT_AMT DESC) AS Rank ," +
}*/ "A.SALES_PERS__FOR ,A.SP_NAME ,A.TARGET_AMT ," +
System.out.println("prdCode: "+prdCode); "A.ACT_AMT FROM ( SELECT DET.SALES_PERS__FOR ,SP_NAME ,TARGET_AMT ," +
sql = " Select dense_rank() over (order by tgt_act desc) as Rank," + "(SELECT SUM(SKU_VALUE) FROM STRG_MEET WHERE SALES_PERS=SP.SALES_PERS " +
"AND STRG_TYPE='C' and to_char(event_date,'YYYYMM')=BUD.PRD_CODE) AS ACT_AMT " +
"FROM TD_SALES_BUD BUD INNER JOIN TD_SALES_BUD_DET DET ON DET.TRAN_ID=BUD.TRAN_ID " +
"INNER JOIN SALES_PERS SP ON SP.SALES_PERS=DET.SALES_PERS__FOR " +
"WHERE SP.SALES_PERS IN (SELECT EMP_CODE FROM EMPLOYEE START " +
"WITH EMP_CODE = (SELECT EMP_CODE FROM EMPLOYEE " +
"WHERE EMP_CODE='62851') CONNECT BY PRIOR EMP_CODE = REPORT_TO) " +
"AND BUD.PRD_CODE='201512' )A ";*/
sql="SELECT dense_rank() over (order by A.ACT_AMT DESC) AS Rank ," +
"A.SALES_PERS__FOR ,A.SP_NAME ,A.TARGET_AMT ," +
"A.ACT_AMT FROM ( SELECT DET.SALES_PERS__FOR ,SP_NAME ,TARGET_AMT ," +
"(SELECT SUM(SKU_VALUE) FROM STRG_MEET WHERE SALES_PERS=SP.SALES_PERS " +
"AND STRG_TYPE='C' and to_char(event_date,'YYYYMM')=BUD.PRD_CODE) AS ACT_AMT " +
"FROM TD_SALES_BUD BUD INNER JOIN TD_SALES_BUD_DET DET ON DET.TRAN_ID=BUD.TRAN_ID " +
"INNER JOIN SALES_PERS SP ON SP.SALES_PERS=DET.SALES_PERS__FOR " +
"WHERE SP.SALES_PERS IN (SELECT EMP_CODE FROM EMPLOYEE START " +
"WITH EMP_CODE = (SELECT EMP_CODE FROM EMPLOYEE " +
"WHERE EMP_CODE='"+empCode+"') CONNECT BY PRIOR EMP_CODE = REPORT_TO) " +
"AND BUD.PRD_CODE='"+defaultPreCode+"' )A ";
/*sql_secondLast = " Select dense_rank() over (order by tgt_act desc) as Rank," +
" Sales_Id, Salespers_Name, tgt_amt, ach_amt " + " Sales_Id, Salespers_Name, tgt_amt, ach_amt " +
" From ( Select Sales_Pers__For as Sales_ID, sp.sp_name as Salespers_Name, " + " From ( Select Sales_Pers__For as Sales_ID, sp.sp_name as Salespers_Name, " +
" det.target_amt as tgt_amt, det.ach_amt as ach_amt, " + " det.target_amt as tgt_amt, det.ach_amt as ach_amt, " +
...@@ -65,24 +85,29 @@ public class TargetVsAchievement extends ValidatorEJB implements TargetVsAchiev ...@@ -65,24 +85,29 @@ public class TargetVsAchievement extends ValidatorEJB implements TargetVsAchiev
" WHere hdr.tran_id = det.tran_id " + " WHere hdr.tran_id = det.tran_id " +
" And det.Sales_Pers__For = sp.Sales_Pers " + " And det.Sales_Pers__For = sp.Sales_Pers " +
" And hdr.Prd_Code = '"+prdCode+"' ) " + " And hdr.Prd_Code = '"+prdCode+"' ) " +
" Order By Rank,tgt_amt desc "; " Order By Rank,tgt_amt desc "; */
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
while (rs.next()) while (rs.next())
{ {
rowData = new JSONObject(); rowData = new JSONObject();
rowData.put("rank", checkNull(rs.getString("RANK"))); rowData.put("rank", checkNull(rs.getString("RANK")));
rowData.put("sales_id", checkNull(rs.getString("SALES_ID"))); rowData.put("sales_pers_code", checkNull(rs.getString("SALES_PERS__FOR")));
rowData.put("salespers_name", checkNull(rs.getString("SALESPERS_NAME"))); rowData.put("sales_pers_name", checkNull(rs.getString("SP_NAME")));
rowData.put("tgt_amt", checkNull(rs.getString("TGT_AMT"))+"@"+checkNull(rs.getString("SALESPERS_NAME"))+",{br}"); rowData.put("target_amt_g", checkNull(rs.getString("TARGET_AMT"))+"@"+checkNull(rs.getString("SP_NAME"))+",{br}");
rowData.put("ach_amt", checkNull(rs.getString("ACH_AMT"))+"@"+checkNull(rs.getString("SALESPERS_NAME"))+",{br}"); rowData.put("Achievement_amt_g", checkNull(rs.getString("ACT_AMT"))+"@"+checkNull(rs.getString("SP_NAME"))+",{br}");
rowData.put("tgt_amt_grid", checkNull(rs.getString("TGT_AMT"))); rowData.put("target_amt_t", checkNull(rs.getString("TARGET_AMT")));
rowData.put("ach_amt_grid", checkNull(rs.getString("ACH_AMT"))); rowData.put("Achievement_amt_t", checkNull(rs.getString("ACT_AMT")));
rawEffTimeJson.put(count, rowData); rawEffTimeJson.put(count, rowData);
count++; count++;
} }
System.out.println("rawEffTimeJson: "+rawEffTimeJson); System.out.println("TargetVsAchievement EJB Rawdata: "+rawEffTimeJson);
} }
}
catch (Exception e) catch (Exception e)
{ {
e.printStackTrace(); e.printStackTrace();
......
...@@ -10,5 +10,5 @@ import org.json.simple.JSONObject; ...@@ -10,5 +10,5 @@ import org.json.simple.JSONObject;
public abstract interface TargetVsAchievementLocal extends ValidatorLocal public abstract interface TargetVsAchievementLocal extends ValidatorLocal
{ {
public JSONObject getTargetVsAchievement(String dataSourceName,String prdCode) throws RemoteException, ITMException; public JSONObject getTargetVsAchievement(String dataSourceName,String prdCode,String empCode) throws RemoteException, ITMException;
} }
...@@ -9,6 +9,6 @@ import org.json.simple.JSONObject; ...@@ -9,6 +9,6 @@ import org.json.simple.JSONObject;
@Remote @Remote
public abstract interface TargetVsAchievementRemote extends ValidatorRemote public abstract interface TargetVsAchievementRemote extends ValidatorRemote
{ {
public JSONObject getTargetVsAchievement(String dataSourceName,String prdCode) throws RemoteException, ITMException; public JSONObject getTargetVsAchievement(String dataSourceName,String prdCode,String empCode) throws RemoteException, ITMException;
} }
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