Commit 728779db authored by vvengurlekar's avatar vvengurlekar

JNJ admin plan, plan vs actual, imp events ejb and servlet committed


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@106728 ce508802-f39f-4f6c-b175-0d175dae99d5
parent bbb38456
......@@ -17,7 +17,6 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;
import javax.ejb.Stateless;
@Stateless
......@@ -56,7 +55,7 @@ public class AdminPlan extends ValidatorEJB implements AdminPlanLocal,AdminPlanR
periodCode = year +""+month;
}
fromDate = getDateString("firstDayOfMonth",formatter);
toDate = getDateString("lastDayOfMonth",formatter);
toDate = getDateString("lastDayOfMonth",formatter);
System.out.println("fromDate:"+fromDate+" toDate:"+toDate);
if("".equalsIgnoreCase(salePersons)){
......@@ -68,8 +67,9 @@ public class AdminPlan extends ValidatorEJB implements AdminPlanLocal,AdminPlanR
"SR.STATION_TYPE, SP.SPRS_CODE__FOR FROM SPRS_PLAN SP INNER JOIN LOCALITY L ON SP.LOCALITY_CODE = L.LOCALITY_CODE " +
"INNER JOIN SPRS_ROUTE SR ON SR.LOCALITY_CODE = L.LOCALITY_CODE WHERE SPRS_CODE__FOR in (select emp_code from employee start with emp_code = (select emp_code from users where code='"+loginId+"') connect by prior emp_code = report_to) " +
"AND SP.PLAN_DATE BETWEEN '"+fromDate+"' AND '"+toDate+"' GROUP BY SR.STATION_TYPE,SP.SPRS_CODE__FOR ORDER BY SR.STATION_TYPE ) Query1 " +
"RIGHT JOIN (SELECT SPPS.STAN_TYPE, SPPS.WORK_DAYS FROM SF_PLAN_PARAM_STAN SPPS JOIN sf_plan_param SPP ON SPPS.PRD_CODE = SPP.PRD_CODE " +
"WHERE SPPS.PARAM_TABLE = SPP.PARAM_TABLE AND SPP.PARAM_TABLE = (SELECT PROP_VALUE FROM PROPERTIES WHERE PROP_NAME = 'PARAM_TABLE') AND SPP.PRD_CODE = '"+periodCode+"' " +
"RIGHT JOIN (SELECT SPPS.STAN_TYPE, SPPS.WORK_DAYS FROM SF_PLAN_PARAM_STAN SPPS JOIN sf_plan_param SPP ON SPPS.PRD_CODE = SPP.PRD_CODE " +
"WHERE SPPS.PARAM_TABLE = SPP.PARAM_TABLE " +
"AND SPP.PARAM_TABLE = (SELECT PROP_VALUE FROM PROPERTIES WHERE PROP_NAME = 'PARAM_TABLE') AND SPP.PRD_CODE = '"+periodCode+"' " +
"ORDER BY SPPS.stan_type ) Query2 ON Query1.STATION_TYPE = Query2.STAN_TYPE) ORDER BY Query2.STAN_TYPE) group by emp_name";
}
else {
......@@ -79,11 +79,17 @@ public class AdminPlan extends ValidatorEJB implements AdminPlanLocal,AdminPlanR
" AS WORK_DAYS, Query2.WORK_DAYS AS ADM_WORK_DAYS, (select emp_fname || ' ' || emp_lname from employee " +
"where emp_code = '"+salePersons+"') AS emp_name FROM ((SELECT COUNT(SR.STATION_TYPE) AS WORK_DAYS, " +
"SR.STATION_TYPE, SP.SPRS_CODE__FOR FROM SPRS_PLAN SP INNER JOIN LOCALITY L ON SP.LOCALITY_CODE = L.LOCALITY_CODE " +
"INNER JOIN SPRS_ROUTE SR ON SR.LOCALITY_CODE = L.LOCALITY_CODE WHERE SPRS_CODE__FOR in (select emp_code from employee start with emp_code = '"+salePersons+"' connect by prior emp_code = report_to) " +
"AND SP.PLAN_DATE BETWEEN '"+fromDate+"' AND '"+toDate+"' GROUP BY SR.STATION_TYPE,SP.SPRS_CODE__FOR ORDER BY SR.STATION_TYPE ) Query1 " +
"INNER JOIN SPRS_ROUTE SR ON SR.LOCALITY_CODE = L.LOCALITY_CODE " +
"WHERE SPRS_CODE__FOR in (select emp_code from employee start with emp_code = '"+salePersons+"' connect by prior emp_code = report_to) " +
"AND SP.PLAN_DATE BETWEEN '"+fromDate+"' AND '"+toDate+"' " +
"GROUP BY SR.STATION_TYPE,SP.SPRS_CODE__FOR ORDER BY SR.STATION_TYPE ) Query1 " +
"RIGHT JOIN (SELECT SPPS.STAN_TYPE, SPPS.WORK_DAYS FROM SF_PLAN_PARAM_STAN SPPS JOIN sf_plan_param SPP ON SPPS.PRD_CODE = SPP.PRD_CODE " +
"WHERE SPPS.PARAM_TABLE = SPP.PARAM_TABLE AND SPP.PARAM_TABLE = (SELECT PROP_VALUE FROM PROPERTIES WHERE PROP_NAME = 'PARAM_TABLE') AND SPP.PRD_CODE = '"+periodCode+"' " +
"WHERE SPPS.PARAM_TABLE = SPP.PARAM_TABLE " +
"AND SPP.PARAM_TABLE = (SELECT PROP_VALUE FROM PROPERTIES WHERE PROP_NAME = 'PARAM_TABLE') AND SPP.PRD_CODE = '"+periodCode+"' " +
"ORDER BY SPPS.stan_type ) Query2 ON Query1.STATION_TYPE = Query2.STAN_TYPE) ORDER BY Query2.STAN_TYPE) group by emp_name";
}
pstmt = conn.prepareStatement(sql);
......@@ -122,10 +128,8 @@ public class AdminPlan extends ValidatorEJB implements AdminPlanLocal,AdminPlanR
rawDataAdminPlanDtlJson.put(count, rowData);
count++;
}
rs.close();
rs=null;
pstmt.close();
pstmt=null;
rs = null;
pstmt = null;
System.out.println("rawDataPlanDtlJson :"+rawDataAdminPlanDtlJson);
......@@ -241,7 +245,8 @@ public class AdminPlan extends ValidatorEJB implements AdminPlanLocal,AdminPlanR
"INNER JOIN SPRS_ROUTE SR ON SR.LOCALITY_CODE = L.LOCALITY_CODE INNER JOIN EMPLOYEE E ON E.EMP_CODE = SP.SPRS_CODE__FOR " +
"WHERE SPRS_CODE__FOR in "+appendSQL+" AND SP.PLAN_DATE BETWEEN '"+fromDate+"' AND '"+toDate+"' GROUP BY SR.STATION_TYPE,SP.SPRS_CODE__FOR," +
"e.emp_fname,e.emp_lname ORDER BY SR.STATION_TYPE ) Query1 RIGHT JOIN (SELECT SPPS.STAN_TYPE, SPPS.WORK_DAYS FROM SF_PLAN_PARAM_STAN SPPS " +
"JOIN sf_plan_param SPP ON SPPS.PRD_CODE = SPP.PRD_CODE WHERE SPPS.PARAM_TABLE = SPP.PARAM_TABLE AND SPP.PARAM_TABLE = (" +
"JOIN sf_plan_param SPP ON SPPS.PRD_CODE = SPP.PRD_CODE WHERE SPPS.PARAM_TABLE = SPP.PARAM_TABLE " +
"AND SPP.PARAM_TABLE = (" +
"SELECT PROP_VALUE FROM PROPERTIES WHERE PROP_NAME = 'PARAM_TABLE') AND SPP.PRD_CODE = '"+period+"' ORDER BY SPPS.stan_type ) Query2 " +
"ON Query1.STATION_TYPE = Query2.STAN_TYPE) WHERE Query1.SPRS_CODE__FOR IS NOT NULL ORDER BY Query1.EMP_NAME,Query2.STAN_TYPE";
......@@ -306,10 +311,8 @@ public class AdminPlan extends ValidatorEJB implements AdminPlanLocal,AdminPlanR
salPersMap.put(salesPersCode, spStatDetailList);
}
}
rs.close();
rs=null;
pstmt.close();
pstmt=null;
rs = null;
pstmt = null;
for (Map.Entry<String, ArrayList<HashMap<String, String>>> entry : salPersMap.entrySet()) {
salesPersCode = entry.getKey();
......@@ -433,6 +436,7 @@ public class AdminPlan extends ValidatorEJB implements AdminPlanLocal,AdminPlanR
System.out.println("fromDate:"+fromDate+" toDate:"+toDate+" period:"+period);
appendSQL = " (select emp_code from employee where report_to = '"+spCode+"')";
sql = "SELECT CASE WHEN TO_CHAR(Query1.WORK_DAYS) IS NULL THEN '0' ELSE TO_CHAR(Query1.WORK_DAYS) END AS WORK_DAYS, " +
"Query2.STAN_TYPE AS STATION_TYPE, Query2.WORK_DAYS AS ADM_WORK_DAYS, Query1.SPRS_CODE__FOR AS SPRS_CODE, " +
"Query1.emp_name FROM( (SELECT COUNT(SR.STATION_TYPE) AS WORK_DAYS, SR.STATION_TYPE, SP.SPRS_CODE__FOR, " +
......@@ -505,10 +509,8 @@ public class AdminPlan extends ValidatorEJB implements AdminPlanLocal,AdminPlanR
salPersMap.put(salesPersCode, spStatDetailList);
}
}
rs.close();
rs=null;
pstmt.close();
pstmt=null;
rs = null;
pstmt = null;
for (Map.Entry<String, ArrayList<HashMap<String, String>>> entry : salPersMap.entrySet()) {
salesPersCode = entry.getKey();
......
......@@ -5,10 +5,13 @@ import java.rmi.RemoteException;
import javax.ejb.Local;
import org.json.simple.JSONObject;
@Local
public interface ImpEventsLocal {
public String getData(String loginCode) throws RemoteException, ITMException;
public String getData() throws RemoteException,ITMException;
public JSONObject getEvents(String loginCode, String dataSourceName) throws RemoteException, ITMException;
//public String getData(String loginCode) throws RemoteException, ITMException;
}
......@@ -6,12 +6,16 @@ import java.rmi.RemoteException;
import javax.ejb.Remote;
import org.json.simple.JSONObject;
@Remote
public interface ImpEventsRemote
{
public String getData(String loginCode) throws RemoteException, ITMException;
//public String getData(String loginCode) throws RemoteException, ITMException;
public JSONObject getEvents(String loginCode, String dataSourceName) throws RemoteException, ITMException;
public String getData() throws RemoteException, ITMException;
}
......@@ -81,11 +81,11 @@ public class PlanVsActual extends ValidatorEJB implements PlanVsActualLocal,Plan
while(rs.next())
{
eventDate = rs.getString("eventdate");
docName = rs.getString("DoctorName");
eventDate = rs.getString("eventdate");
docName = rs.getString("DoctorName");
docNamewithImage = getImageStrfromName(docName);
locality = rs.getString("LOCALITY");
speciality = rs.getString("SPECIALITY");
locality = rs.getString("LOCALITY");
speciality = rs.getString("SPECIALITY");
planHashMap = new HashMap<String, ArrayList<String>>();
if(finalMap!=null && finalMap.containsKey(eventDate))
{
......@@ -129,6 +129,7 @@ public class PlanVsActual extends ValidatorEJB implements PlanVsActualLocal,Plan
docNamewithImage = getImageStrfromName(docName);
locality = rs.getString("LOCALITY");
speciality = rs.getString("SPECIALITY");
planHashMap = new HashMap<String, ArrayList<String>>();
if(finalMap!=null && finalMap.containsKey(eventDate))
{
......@@ -258,7 +259,7 @@ public class PlanVsActual extends ValidatorEJB implements PlanVsActualLocal,Plan
String retString = "";
if(file.exists())
{
retString = "<img class='cardProdImg1' src='"+CommonConstants.TOMCAT_HOME+"/ibase/resource/images/users/"+doctorName+".png'/>";
retString = "<img class='defaultIconImage' src='"+CommonConstants.TOMCAT_HOME+"/ibase/resource/images/users/"+doctorName+".png'/>";
}else
{
doctorName = doctorName.trim();
......@@ -274,7 +275,7 @@ public class PlanVsActual extends ValidatorEJB implements PlanVsActualLocal,Plan
}
System.out.println("defaultUserImg :"+defaultUserImg);
retString = "<div class='defaultUserImg1'> "+defaultUserImg+" </div>";
retString = "<div class='defaultIconImage'> "+defaultUserImg+" </div>";
}
System.out.println("doctorName = "+doctorName+"retString ="+retString);
retString = doctorName+"~"+retString;
......@@ -325,14 +326,14 @@ public class PlanVsActual extends ValidatorEJB implements PlanVsActualLocal,Plan
while(rs.next())
{
rawJson = new JSONObject();
locality = rs.getString("LOCALITY");
doctorName = rs.getString("DOCTORNAME").trim();
scCode = rs.getString("SC_CODE").trim();
locality = rs.getString("LOCALITY");
doctorName = rs.getString("DOCTORNAME").trim();
scCode = rs.getString("SC_CODE").trim();
if(!locality.equalsIgnoreCase(prvlocality))
{
rawJson.put("locality", locality);
rawJson.put("cardSalesPersonTitle", "cardSalesPersonTitle");
rawJson.put("defaultIconTitle", "defaultIconTitle");
System.out.println("locality :"+locality);
prvlocality = locality;
}else
......@@ -343,7 +344,7 @@ public class PlanVsActual extends ValidatorEJB implements PlanVsActualLocal,Plan
File file = new File(userImagePath+doctorName+".png");
if(file.exists())
{
rawJson.put("doctor_image", "<img class='cardProdImg1' src='"+CommonConstants.TOMCAT_HOME+"/ibase/resource/images/users/"+doctorName+".png'/>");
rawJson.put("doctor_image", "<img class='defaultIconImage' src='"+CommonConstants.TOMCAT_HOME+"/ibase/resource/images/users/"+doctorName+".png'/>");
}else
{
doctorName = doctorName.trim();
......@@ -359,16 +360,19 @@ public class PlanVsActual extends ValidatorEJB implements PlanVsActualLocal,Plan
}
System.out.println("defaultUserImg :"+defaultUserImg);
rawJson.put("doctor_image", "<div class='defaultUserImg1'> "+defaultUserImg+" </div>");
rawJson.put("doctor_image", "<div class='defaultIconImage'> "+defaultUserImg+" </div>");
}
//doctorName = "<div class='defaultIconTitle'> "+doctorName+" </div>";
//String speciality = "<div class='defaultIconSubTitle'> "+rs.getString("SPECIALITY")+" </div>";
rawJson.put("doctorName", doctorName);
rawJson.put("time", "10:00 am");
rawJson.put("speciality", rs.getString("SPECIALITY"));
//rawJson.put("speciality", rs.getString("SPECIALITY"));
//rawJson.put("speciality", speciality);
if(strgCodeList.contains(scCode)){
//Changes done due to redirection of IP at client side
//rawJson.put("meet_status", "<img class='cardProdImg1' src='"+CommonConstants.TOMCAT_HOME+"/ibase/dwh/FusionChart/images/Tick-mark.png'/>");
rawJson.put("meet_status", "<img class='cardProdImg1' src='/ibase/dwh/FusionChart/images/Tick-mark.png'/>");
rawJson.put("meet_status", "<img class='defaultIconImage' src='/ibase/dwh/FusionChart/images/Tick-mark.png'/>");
}
else{
rawJson.put("meet_status", "");
......
package ibase.dashboard.sfa.servlet;
import java.io.IOException;
import java.io.OutputStream;
import javax.naming.InitialContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.json.simple.JSONObject;
import ibase.dashboard.sfa.ejb.ImpEventsRemote;
import ibase.system.config.AppConnectParm;
import ibase.utility.UserInfoBean;
import ibase.webitm.utility.ITMException;
public class ImportantEventServlet extends HttpServlet
{
private static final long serialVersionUID = 1L;
JSONObject jsonObjMetaData = null;
JSONObject jsonMetaData = null;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
System.out.println("@@@@@@@@@@@@@@@@ImportantEventServlet@@@@@@@@@@@@@@@@ DOPOST @@@@@@@@@");
ImpEventsRemote impEventsRemote = null;
InitialContext context = null;
AppConnectParm appConnectParm = new AppConnectParm();
String dataSourceName = "";
String empCode = "" ;
HttpSession session = null;
JSONObject jsonObjData = null;
OutputStream outputStream = null;
UserInfoBean userInfo = null;
try
{
response.setContentType("application/xml");
session = request.getSession(true);
userInfo = (ibase.utility.UserInfoBean) session.getAttribute("USER_INFO");
if(userInfo != null)
{
empCode = userInfo.getEmpCode();
}
else {
empCode ="BASE";
}
dataSourceName = request.getParameter("dataSourceName");
context = new InitialContext(appConnectParm.getProperty());
System.out.println("do post 1");
impEventsRemote = (ImpEventsRemote)context.lookup("ibase/ImpEvents/remote");
System.out.println("do post 2");
jsonObjData = (JSONObject) impEventsRemote.getEvents(empCode,dataSourceName);
outputStream = response.getOutputStream();
outputStream.write(jsonObjData.toString().getBytes());
outputStream.flush();
outputStream.close();
System.out.println(" Final data set in ImpEventsRemote build the Graph ="+ jsonObjData);
}
catch (Exception e)
{
System.out
.println("Exception : ImpEventsRemote :doPost(HttpServletRequest request, HttpServletResponse response) :"
+ e);
try
{
throw new ITMException(e);
}
catch (ITMException e1)
{
e1.printStackTrace();
}
}
}
}
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