Commit 1e6e6b21 authored by sbade's avatar sbade

added new methods for time and number of attempts analysis


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@100032 ce508802-f39f-4f6c-b175-0d175dae99d5
parent ca4b8ad3
......@@ -412,7 +412,257 @@ public JSONObject getWorstTimeAnalysisServlet(String dataSourceName,String frmPr
return rawEffTimeJson;
}
/********** End of method getWorstTimeAnalysisServlet() ******/
/********** Start of method for Top Time Analysis
* EJB Name : EmpProductivity.java
* Method Name : getTopTimeJobIdWiseServlet(String,String,String,String,String,String)
* Servlet Name : TopTimeJobIdWiseServlet
* Metadata xml Name : efftimeanalysis.xml
*
* */
@SuppressWarnings("unchecked")
public JSONObject getTopTimeJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException
{
JSONObject rawEffTimeJson = new JSONObject();
JSONObject rowData = null;
String sql = "";
ResultSet rs = null;
PreparedStatement pstmt = null;
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
String empCodeFilter="",deptCodeFilter="",topNosFilter="",empTaskFilter="";
DashboardUtility dashbordUtil = new DashboardUtility();
try
{
conn = connDriver.getConnectDB(dataSourceName);
connDriver = null;
if ( (frmPrd != null && frmPrd.trim().length()>0 ) && (toPrd != null && toPrd.trim().length()>0 ) )
{
System.out.println(" Inside getTopTimeJobIdWiseServlet() for Data Soruc Name ="+dataSourceName);
deptCode=deptCode.trim();
frmPrd=frmPrd.trim();
toPrd=toPrd.trim();
int count = 0;
if ((empTask != null) && (empTask.trim().length() > 0))
{
System.out.println("empTask" + empTask);
empTask = dashbordUtil.getCommaSeparated(empTask);
empTaskFilter = " AND TBLEPA_DAYSCORE.WINNAME in (" + empTask + ") ";
}
if ((empCode != null) && (empCode.trim().length() > 0))
{
System.out.println("empCode" + empCode);
empCode = dashbordUtil.getCommaSeparated(empCode);
empCodeFilter = " AND EMPLOYEE.EMP_CODE IN (" + empCode + ") ";
}
if ((deptCode != null) && (deptCode.trim().length() > 0))
{
System.out.println("deptCode" + deptCode);
deptCode = dashbordUtil.getCommaSeparated(deptCode);
deptCodeFilter = " and EMPLOYEE.DEPT_CODE in ("+deptCode+") ";
}
if ((topNos != null) && (topNos.trim().length() > 0))
{
System.out.println("topNos" + topNos);
topNosFilter = " AND D.RANK<="+topNos;
}
sql=" select D.emp_code,D.emp_name,D.JOBID,D.servert,D.oht,D.jobt,D.tot_time_min,D.RANK from ( "
+" select c.emp_code,c.emp_name,c.JOBID,c.servert,c.oht,c.jobt,c.tot_time_min, "
+" dense_rank () OVER (ORDER BY (c.tot_time_min) asc) AS RANK "
+" from( "
+" select b.emp_code,b.emp_name,count(b.jobid) jobid,TRUNC(AVG(b.servert/60),2) servert , "
+" TRUNC(AVG(b.oht/60),2) OHT ,TRUNC(AVG(b.jobt/60),2) JOBT, TRUNC((AVG(B.OHT)/60+AVG(b.servert)/60+AVG(b.jobt)/60),2) tot_time_min "
+" from ( "
+" select distinct tblEPA_dayScore.jobid jobid,EMPLOYEE.EMP_CODE as emp_code, "
+" (CASE WHEN Employee.emp_fname IS NULL THEN '' ELSE TRIM(Employee.emp_fname) || ' ' END) || "
+" (CASE WHEN employee.emp_mname IS NULL THEN '' "
+" ELSE TRIM(Employee.emp_mname) || ' ' END) || (case when EMPLOYEE.EMP_LNAME is null then '' else "
+" TRIM(EMPLOYEE.EMP_LNAME) || ' ' end) as EMP_NAME , "
+" trunc(AVG(nvl((tblEPA_dayScore.servert),0)),2) as servert, "
+" trunc(AVG(nvl((tblEPA_dayScore.oh),0)),2) as oht, "
+" trunc(AVG(nvl((tblEPA_dayScore.jobt),0)),2) as jobt "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('" +frmPrd + "','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('" +toPrd + "','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' "
+empTaskFilter+empCodeFilter +deptCodeFilter
+" group by tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE, Employee.emp_mname,Employee.emp_lname,Employee.emp_fname "
+" )b GROUP BY b.emp_code,b.emp_name) C) D where D.tot_time_min>0.04 "+topNosFilter+" order by D.RANK asc ";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next())
{
rowData = new JSONObject();
rowData.put("EMP_CODE", checkNull(rs.getString("emp_code")));
rowData.put("tot_time_spent", checkNull(rs.getString("tot_time_min"))+"@"+checkNull(rs.getString("EMP_NAME"))+"{br}#Transactions: "+checkNull(rs.getString("JOBID"))+"{br}Avg.Total Time:");
rawEffTimeJson.put(count, rowData);
count++;
}
}
System.out.println("fetch Data for getTopTimeJobIdWiseServlet() : " + rawEffTimeJson.toString());
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
} finally
{
try
{
if (conn != null)
{
if (rs != null)
rs.close();
rs = null;
if (pstmt != null)
pstmt.close();
pstmt = null;
conn.close();
conn = null;
}
conn = null;
} catch (Exception d)
{
d.printStackTrace();
System.out.println("Exception in :EmpProductivity : getTopTimeJobIdWiseServlet() :" + d.getMessage());
throw new ITMException(d);
}
}
return rawEffTimeJson;
}
/********** End of method getTopTimeJobIdWiseServlet() ******/
/********** Start of method for Worst Time Analysis
* EJB Name : EmpProductivity.java
* Method Name : getWorstTimeJobIdWiseServlet(String,String,String,String,String,String)
* Servlet Name : WorstTimeJobIdWiseServlet
* Metadata xml Name : efftimeanalysis.xml
*
* */
@SuppressWarnings("unchecked")
public JSONObject getWorstTimeJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException
{
JSONObject rawEffTimeJson = new JSONObject();
JSONObject rowData = null;
String sql = "";
ResultSet rs = null;
PreparedStatement pstmt = null;
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
String empCodeFilter="",deptCodeFilter="",topNosFilter="",empTaskFilter="";
DashboardUtility dashbordUtil = new DashboardUtility();
try
{
conn = connDriver.getConnectDB(dataSourceName);
connDriver = null;
if ( (frmPrd != null && frmPrd.trim().length()>0 ) && (toPrd != null && toPrd.trim().length()>0 ) )
{
System.out.println(" Inside getWorstTimeJobIdWiseServlet() for Data Soruc Name ="+dataSourceName);
deptCode=deptCode.trim();
frmPrd=frmPrd.trim();
toPrd=toPrd.trim();
int count = 0;
if ((empTask != null) && (empTask.trim().length() > 0))
{
System.out.println("empTask" + empTask);
empTask = dashbordUtil.getCommaSeparated(empTask);
empTaskFilter = " AND TBLEPA_DAYSCORE.WINNAME in (" + empTask + ") ";
}
if ((empCode != null) && (empCode.trim().length() > 0))
{
System.out.println("empCode" + empCode);
empCode = dashbordUtil.getCommaSeparated(empCode);
empCodeFilter = " AND employee.EMP_CODE IN (" + empCode + ") ";
}
if ((deptCode != null) && (deptCode.trim().length() > 0))
{
System.out.println("deptCode" + deptCode);
deptCode = dashbordUtil.getCommaSeparated(deptCode);
deptCodeFilter = " and EMPLOYEE.DEPT_CODE in ("+deptCode+") ";
}
if ((topNos != null) && (topNos.trim().length() > 0))
{
System.out.println("topNos" + topNos);
topNosFilter = " AND D.RANK<="+topNos;
}
sql=" select D.emp_code,D.emp_name,D.JOBID,D.servert,D.oht,D.jobt,D.tot_time_min,D.RANK from ( "
+" select c.emp_code,c.emp_name,c.JOBID,c.servert,c.oht,c.jobt,c.tot_time_min, "
+" dense_rank () OVER (ORDER BY (c.tot_time_min) desc) AS RANK "
+" from( "
+" select b.emp_code,b.emp_name,count(b.jobid) jobid,TRUNC(AVG(b.servert/60),2) servert , "
+" TRUNC(AVG(b.oht/60),2) OHT ,TRUNC(AVG(b.jobt/60),2) JOBT, TRUNC((AVG(B.OHT)/60+AVG(b.servert)/60+AVG(b.jobt)/60),2) tot_time_min "
+" from ( "
+" select distinct tblEPA_dayScore.jobid jobid,EMPLOYEE.EMP_CODE as emp_code, "
+" (CASE WHEN Employee.emp_fname IS NULL THEN '' ELSE TRIM(Employee.emp_fname) || ' ' END) || "
+" (CASE WHEN employee.emp_mname IS NULL THEN '' "
+" ELSE TRIM(Employee.emp_mname) || ' ' END) || (case when EMPLOYEE.EMP_LNAME is null then '' else "
+" TRIM(EMPLOYEE.EMP_LNAME) || ' ' end) as EMP_NAME , "
+" trunc(AVG(nvl((tblEPA_dayScore.servert),0)),2) as servert, "
+" trunc(AVG(nvl((tblEPA_dayScore.oh),0)),2) as oht, "
+" trunc(AVG(nvl((tblEPA_dayScore.jobt),0)),2) as jobt "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('" +frmPrd + "','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('" +toPrd + "','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' "
+empTaskFilter+empCodeFilter +deptCodeFilter
+" group by tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE, Employee.emp_mname,Employee.emp_lname,Employee.emp_fname "
+" )b GROUP BY b.emp_code,b.emp_name) C) D where D.tot_time_min>0.04 "+topNosFilter+" order by D.RANK asc ";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next())
{
rowData = new JSONObject();
rowData.put("EMP_CODE", checkNull(rs.getString("emp_code")));
rowData.put("tot_time_spent", checkNull(rs.getString("tot_time_min"))+"@"+checkNull(rs.getString("EMP_NAME"))+"{br}#Transactions: "+checkNull(rs.getString("JOBID"))+"{br}Avg.Total Time:");
rawEffTimeJson.put(count, rowData);
count++;
}
}
System.out.println("fetch Data for getWorstTimeJobIdWiseServlet() : " + rawEffTimeJson.toString());
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
} finally
{
try
{
if (conn != null)
{
if (rs != null)
rs.close();
rs = null;
if (pstmt != null)
pstmt.close();
pstmt = null;
conn.close();
conn = null;
}
conn = null;
} catch (Exception d)
{
d.printStackTrace();
System.out.println("Exception in :EmpProductivity : getWorstTimeJobIdWiseServlet() :" + d.getMessage());
throw new ITMException(d);
}
}
return rawEffTimeJson;
}
/********** End of method getWorstTimeJobIdWiseServlet() ******/
/********** Start of method for Top Efficiency Analysis
* EJB Name : EmpProductivity.java
* Method Name : getTopEfficiencyAnalysisServlet
......@@ -732,41 +982,41 @@ public JSONObject getTopEfficiencyAnalysisServlet(String dataSourceName,String f
}
sql=" select D.emp_code,D.emp_name,D.JOBID,D.noatt,D.success,D.fail,D.RANK from ( "
+" select c.emp_code,c.JOBID,c.emp_name,trunc(c.noatt,2) noatt,trunc(c.success,2) success,trunc(c.fail,2) fail,"
+" dense_rank () OVER (ORDER BY (c.noatt) asc) AS RANK "
+" from( "
+" select b.emp_code,b.emp_name,sum(b.jobid) jobid, "
+" trunc(AVG(b.noatt),2) noatt,trunc(AVG(b.success),2) success, trunc(AVG(b.fail),2) fail "
+" from ( "
+" select A.EMP_CODE,A.LOGDATE,"
+" A.EMP_NAME,count(a.jobid) jobid,trunc(AVG(A.SERVERT),2) SERVERT,trunc(AVG(A.OHT),2) OHT,trunc(AVG(a.JOBT),2) JOBT , "
+" trunc(AVG(a.noatt),2) noatt,trunc(AVG(a.success),2) success,trunc(AVG(a.fail),2) fail "
+" from( "
+" select distinct tblEPA_dayScore.jobid jobid,TBLEPA_DAYSCORE.LOGDATE,EMPLOYEE.EMP_CODE as emp_code,TBLEPA_DAYSCORE.WINNAME , "
+" (CASE WHEN Employee.emp_fname IS NULL THEN '' ELSE TRIM(Employee.emp_fname) || ' ' END) || "
+" (CASE WHEN employee.emp_mname IS NULL THEN '' "
+" ELSE TRIM(Employee.emp_mname) || ' ' END) || (case when EMPLOYEE.EMP_LNAME is null then '' else "
+" TRIM(EMPLOYEE.EMP_LNAME) || ' ' end) as EMP_NAME , "
+" trunc(AVG(nvl((tblEPA_dayScore.servert),0)),2) as servert, "
+" trunc(AVG(nvl((tblEPA_dayScore.oh),0)),2) as oht, "
+" trunc(AVG(nvl((tblEPA_dayScore.jobt),0)),2) as jobt , "
+" trunc(AVG(nvl((tblEPA_dayScore.noatt),0)),2) as noatt ,"
+" trunc(AVG(nvl((tblEPA_dayScore.success),0)),2) as success , "
+" trunc(AVG(nvl((tblEPA_dayScore.fail),0)),2) as fail "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) "
+" and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('"+frmPrd+"','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('"+toPrd+"','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' "
+" and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' "
+empTaskFilter+empCodeFilter +deptCodeFilter
+" group by TBLEPA_DAYSCORE.logdate,tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE,TBLEPA_DAYSCORE.WINNAME, "
+" Employee.emp_mname,Employee.emp_lname,Employee.emp_fname "
+" )a GROUP BY A.LOGDATE,A.EMP_CODE, A.EMP_NAME "
+" )b GROUP BY b.emp_code,b.emp_name "
+" ) C )D "+topNosFilter+" order by D.RANK asc ";
+" select c.emp_code,c.JOBID,c.emp_name,trunc(c.noatt,2) noatt,trunc(c.success,2) success,trunc(c.fail,2) fail,"
+" dense_rank () OVER (ORDER BY (c.noatt) asc) AS RANK "
+" from( "
+" select b.emp_code,b.emp_name,sum(b.jobid) jobid, "
+" trunc(AVG(b.noatt),2) noatt,trunc(AVG(b.success),2) success, trunc(AVG(b.fail),2) fail "
+" from ( "
+" select A.EMP_CODE,A.LOGDATE,"
+" A.EMP_NAME,count(a.jobid) jobid,trunc(AVG(A.SERVERT),2) SERVERT,trunc(AVG(A.OHT),2) OHT,trunc(AVG(a.JOBT),2) JOBT , "
+" trunc(AVG(a.noatt),2) noatt,trunc(AVG(a.success),2) success,trunc(AVG(a.fail),2) fail "
+" from( "
+" select distinct tblEPA_dayScore.jobid jobid,TBLEPA_DAYSCORE.LOGDATE,EMPLOYEE.EMP_CODE as emp_code,TBLEPA_DAYSCORE.WINNAME , "
+" (CASE WHEN Employee.emp_fname IS NULL THEN '' ELSE TRIM(Employee.emp_fname) || ' ' END) || "
+" (CASE WHEN employee.emp_mname IS NULL THEN '' "
+" ELSE TRIM(Employee.emp_mname) || ' ' END) || (case when EMPLOYEE.EMP_LNAME is null then '' else "
+" TRIM(EMPLOYEE.EMP_LNAME) || ' ' end) as EMP_NAME , "
+" trunc(AVG(nvl((tblEPA_dayScore.servert),0)),2) as servert, "
+" trunc(AVG(nvl((tblEPA_dayScore.oh),0)),2) as oht, "
+" trunc(AVG(nvl((tblEPA_dayScore.jobt),0)),2) as jobt , "
+" trunc(AVG(nvl((tblEPA_dayScore.noatt),0)),2) as noatt ,"
+" trunc(AVG(nvl((tblEPA_dayScore.success),0)),2) as success , "
+" trunc(AVG(nvl((tblEPA_dayScore.fail),0)),2) as fail "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) "
+" and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('"+frmPrd+"','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('"+toPrd+"','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' "
+" and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' "
+empTaskFilter+empCodeFilter +deptCodeFilter
+" group by TBLEPA_DAYSCORE.logdate,tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE,TBLEPA_DAYSCORE.WINNAME, "
+" Employee.emp_mname,Employee.emp_lname,Employee.emp_fname "
+" )a GROUP BY A.LOGDATE,A.EMP_CODE, A.EMP_NAME "
+" )b GROUP BY b.emp_code,b.emp_name "
+" ) C )D "+topNosFilter+" order by D.RANK asc ";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
......@@ -811,7 +1061,8 @@ public JSONObject getTopEfficiencyAnalysisServlet(String dataSourceName,String f
return rawEffTimeJson;
}
/********** End of method getTopNumAttemptAnalysisServlet() ******/
/********** Start of method for Worst no of attempts Analysis
* EJB Name : EmpProductivity.java
* Method Name : getWorstNumAttemptAnalysisServlet
......@@ -867,42 +1118,42 @@ public JSONObject getTopEfficiencyAnalysisServlet(String dataSourceName,String f
}
sql=" select D.emp_code,D.emp_name,D.JOBID,D.noatt,D.success,D.fail,D.RANK from ( "
+" select c.emp_code,c.JOBID,c.emp_name,trunc(c.noatt,2) noatt,trunc(c.success,2) success,trunc(c.fail,2) fail,"
+" dense_rank () OVER (ORDER BY (c.noatt) desc) AS RANK "
+" from( "
+" select b.emp_code,b.emp_name,sum(b.jobid) jobid, "
+" trunc(AVG(b.noatt),2) noatt,trunc(AVG(b.success),2) success, trunc(AVG(b.fail),2) fail "
+" from ( "
+" select A.EMP_CODE,A.LOGDATE,"
+" A.EMP_NAME,count(a.jobid) jobid,trunc(AVG(A.SERVERT),2) SERVERT,trunc(AVG(A.OHT),2) OHT,trunc(AVG(a.JOBT),2) JOBT , "
+" trunc(AVG(a.noatt),2) noatt,trunc(AVG(a.success),2) success,trunc(AVG(a.fail),2) fail "
+" from( "
+" select distinct tblEPA_dayScore.jobid jobid,TBLEPA_DAYSCORE.LOGDATE,EMPLOYEE.EMP_CODE as emp_code,TBLEPA_DAYSCORE.WINNAME , "
+" (CASE WHEN Employee.emp_fname IS NULL THEN '' ELSE TRIM(Employee.emp_fname) || ' ' END) || "
+" (CASE WHEN employee.emp_mname IS NULL THEN '' "
+" ELSE TRIM(Employee.emp_mname) || ' ' END) || (case when EMPLOYEE.EMP_LNAME is null then '' else "
+" TRIM(EMPLOYEE.EMP_LNAME) || ' ' end) as EMP_NAME , "
+" trunc(AVG(nvl((tblEPA_dayScore.servert),0)),2) as servert, "
+" trunc(AVG(nvl((tblEPA_dayScore.oh),0)),2) as oht, "
+" trunc(AVG(nvl((tblEPA_dayScore.jobt),0)),2) as jobt , "
+" trunc(AVG(nvl((tblEPA_dayScore.noatt),0)),2) as noatt ,"
+" trunc(AVG(nvl((tblEPA_dayScore.success),0)),2) as success , "
+" trunc(AVG(nvl((tblEPA_dayScore.fail),0)),2) as fail "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) "
+" and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('"+frmPrd+"','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('"+toPrd+"','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' "
+" and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' "
+empTaskFilter+empCodeFilter +deptCodeFilter
+" group by TBLEPA_DAYSCORE.logdate,tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE,TBLEPA_DAYSCORE.WINNAME, "
+" Employee.emp_mname,Employee.emp_lname,Employee.emp_fname "
+" )a GROUP BY A.LOGDATE,A.EMP_CODE, A.EMP_NAME "
+" )b GROUP BY b.emp_code,b.emp_name "
+" ) C )D "+topNosFilter+" order by D.RANK asc ";
+" select c.emp_code,c.JOBID,c.emp_name,trunc(c.noatt,2) noatt,trunc(c.success,2) success,trunc(c.fail,2) fail,"
+" dense_rank () OVER (ORDER BY (c.noatt) desc) AS RANK "
+" from( "
+" select b.emp_code,b.emp_name,sum(b.jobid) jobid, "
+" trunc(AVG(b.noatt),2) noatt,trunc(AVG(b.success),2) success, trunc(AVG(b.fail),2) fail "
+" from ( "
+" select A.EMP_CODE,A.LOGDATE,"
+" A.EMP_NAME,count(a.jobid) jobid,trunc(AVG(A.SERVERT),2) SERVERT,trunc(AVG(A.OHT),2) OHT,trunc(AVG(a.JOBT),2) JOBT , "
+" trunc(AVG(a.noatt),2) noatt,trunc(AVG(a.success),2) success,trunc(AVG(a.fail),2) fail "
+" from( "
+" select distinct tblEPA_dayScore.jobid jobid,TBLEPA_DAYSCORE.LOGDATE,EMPLOYEE.EMP_CODE as emp_code,TBLEPA_DAYSCORE.WINNAME , "
+" (CASE WHEN Employee.emp_fname IS NULL THEN '' ELSE TRIM(Employee.emp_fname) || ' ' END) || "
+" (CASE WHEN employee.emp_mname IS NULL THEN '' "
+" ELSE TRIM(Employee.emp_mname) || ' ' END) || (case when EMPLOYEE.EMP_LNAME is null then '' else "
+" TRIM(EMPLOYEE.EMP_LNAME) || ' ' end) as EMP_NAME , "
+" trunc(AVG(nvl((tblEPA_dayScore.servert),0)),2) as servert, "
+" trunc(AVG(nvl((tblEPA_dayScore.oh),0)),2) as oht, "
+" trunc(AVG(nvl((tblEPA_dayScore.jobt),0)),2) as jobt , "
+" trunc(AVG(nvl((tblEPA_dayScore.noatt),0)),2) as noatt ,"
+" trunc(AVG(nvl((tblEPA_dayScore.success),0)),2) as success , "
+" trunc(AVG(nvl((tblEPA_dayScore.fail),0)),2) as fail "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) "
+" and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('"+frmPrd+"','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('"+toPrd+"','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' "
+" and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' "
+empTaskFilter+empCodeFilter +deptCodeFilter
+" group by TBLEPA_DAYSCORE.logdate,tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE,TBLEPA_DAYSCORE.WINNAME, "
+" Employee.emp_mname,Employee.emp_lname,Employee.emp_fname "
+" )a GROUP BY A.LOGDATE,A.EMP_CODE, A.EMP_NAME "
+" )b GROUP BY b.emp_code,b.emp_name "
+" ) C )D "+topNosFilter+" order by D.RANK asc ";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next())
......@@ -947,55 +1198,313 @@ public JSONObject getTopEfficiencyAnalysisServlet(String dataSourceName,String f
}
/********** End of method getWorstNumAttemptAnalysisServlet() ******/
/********** Start of method for distribution of Time
* EJB Name : EmpProductivity.java
* Method Name : getDistributionDetailServlet
* Servlet Name : DistributionDetailServlet
* Metadata xml Name : attemptdistribution.xml(SSGrid),timedistribution.xml
*
* */
@SuppressWarnings("unchecked")
public JSONObject getDistributionDetailServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException
{
JSONObject rawEffTimeJson = new JSONObject();
JSONObject rowData = null;
String sql = "";
ResultSet rs = null;
PreparedStatement pstmt = null;
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
double toj_per=0.0,suc_per=0.0,servert_per=0.0,oh_per=0.0;
double tot_time=000.0;
String fta_per="";
double job_time=0,server_time=0.0,oh_time=0.0;
String deptCodeFilter="",empTaskFilter="";
String noAtt="",succAtt="";
DashboardUtility dashbordUtil = new DashboardUtility();
try
{
conn = connDriver.getConnectDB(dataSourceName);
connDriver = null;
if ((frmPrd != null && frmPrd.trim().length()>0 ) && (toPrd != null && toPrd.trim().length()>0 ))
/********** Start of method for Top no of attempts Analysis
* EJB Name : EmpProductivity.java
* Method Name : getTopNumAttemptJobIdWiseServlet
* Servlet Name : TopNumAttemptJobIdWiseServlet
* Metadata xml Name : efftimeanalysis.xml
*
* */
@SuppressWarnings("unchecked")
public JSONObject getTopNumAttemptJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException
{
System.out.println(" Inside getDistributionDetailServlet() for Data Soruc Name ="+dataSourceName);
if ((empTask != null) && (empTask.trim().length() > 0))
{
System.out.println("empTask" + empTask);
empTask = dashbordUtil.getCommaSeparated(empTask);
empTaskFilter = " AND tblEPA_dayScore.WINNAME in (" + empTask + ") ";
}
if ((deptCode != null) && (deptCode.trim().length() > 0))
{
System.out.println("deptCode" + deptCode);
deptCode = dashbordUtil.getCommaSeparated(deptCode);
deptCodeFilter = " and EMPLOYEE.DEPT_CODE in ("+deptCode+") ";
}
/*if ((topNos != null) && (topNos.trim().length() > 0))
{
System.out.println("topNos" + topNos);
topNosFilter = " where B.RN<="+topNos;
}*/
JSONObject rawEffTimeJson = new JSONObject();
JSONObject rowData = null;
String sql = "";
ResultSet rs = null;
PreparedStatement pstmt = null;
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
String empCodeFilter="",deptCodeFilter="",topNosFilter="",empTaskFilter="";
DashboardUtility dashbordUtil = new DashboardUtility();
try
{
conn = connDriver.getConnectDB(dataSourceName);
connDriver = null;
if ((frmPrd != null && frmPrd.trim().length()>0 ) && (toPrd != null && toPrd.trim().length()>0 ))
{
System.out.println(" Inside getTopNumAttemptJobIdWiseServlet() for Data Soruc Name ="+dataSourceName);
deptCode=deptCode.trim();
frmPrd=frmPrd.trim();
toPrd=toPrd.trim();
int count = 0;
if ((empTask != null) && (empTask.trim().length() > 0))
{
System.out.println("empTask" + empTask);
empTask = dashbordUtil.getCommaSeparated(empTask);
empTaskFilter = " AND TBLEPA_DAYSCORE.WINNAME in (" + empTask + ") ";
}
if ((empCode != null) && (empCode.trim().length() > 0))
{
System.out.println("empCode" + empCode);
empCode = dashbordUtil.getCommaSeparated(empCode);
empCodeFilter = " AND EMPLOYEE.EMP_CODE IN (" + empCode + ") ";
}
if ((deptCode != null) && (deptCode.trim().length() > 0))
{
System.out.println("deptCode" + deptCode);
deptCode = dashbordUtil.getCommaSeparated(deptCode);
deptCodeFilter = " and EMPLOYEE.DEPT_CODE in ("+deptCode+") ";
}
if ((topNos != null) && (topNos.trim().length() > 0))
{
System.out.println("topNos" + topNos);
topNosFilter = " where D.RANK<="+topNos;
}
sql="select D.emp_code,D.emp_name,D.JOBID,D.noatt,D.success,D.fail,D.RANK from ( "
+" select c.emp_code,c.JOBID,c.emp_name,trunc(c.noatt,2) noatt,trunc(c.success,2) success,trunc(c.fail,2) fail, "
+" dense_rank () OVER (ORDER BY (c.noatt) asc) AS RANK "
+" from( "
+" select b.emp_code,b.emp_name,count(b.jobid) jobid, "
+" trunc(AVG(b.noatt),2) noatt,trunc(AVG(b.success),2) success, trunc(AVG(b.fail),2) fail "
+" from ( "
+" select distinct tblEPA_dayScore.jobid jobid,EMPLOYEE.EMP_CODE as emp_code, "
+" (CASE WHEN Employee.emp_fname IS NULL THEN '' ELSE TRIM(Employee.emp_fname) || ' ' END) || "
+" (CASE WHEN employee.emp_mname IS NULL THEN '' "
+" ELSE TRIM(Employee.emp_mname) || ' ' END) || (case when EMPLOYEE.EMP_LNAME is null then '' else "
+" TRIM(EMPLOYEE.EMP_LNAME) || ' ' end) as EMP_NAME , "
+" trunc(AVG(nvl((tblEPA_dayScore.noatt),0)),2) as noatt , "
+" trunc(AVG(nvl((tblEPA_dayScore.success),0)),2) as success , "
+" trunc(AVG(nvl((tblEPA_dayScore.fail),0)),2) as fail "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) "
+" and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('"+frmPrd+"','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('"+toPrd+"','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' "
+" and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' "
+empTaskFilter+empCodeFilter +deptCodeFilter
+" group by tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE, "
+" Employee.emp_mname,Employee.emp_lname,Employee.emp_fname "
+" )b GROUP BY b.emp_code,b.emp_name ) C )D "+topNosFilter+" order by D.RANK asc ";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next())
{
rowData = new JSONObject();
rowData.put("EMP_CODE", checkNull(rs.getString("emp_code")));
rowData.put("no_of_attempt", checkNull(rs.getString("noatt"))+"@"+checkNull(rs.getString("EMP_NAME"))+"{br}#Transactions: "+checkNull(rs.getString("JOBID"))+"{br}Avg.No. of Attempts:");
rawEffTimeJson.put(count, rowData);
count++;
}
}
System.out.println("fetch Data for getTopNumAttemptJobIdWiseServlet() : " + rawEffTimeJson.toString());
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
} finally
{
try
{
if (conn != null)
{
if (rs != null)
rs.close();
rs = null;
if (pstmt != null)
pstmt.close();
pstmt = null;
conn.close();
conn = null;
}
conn = null;
} catch (Exception d)
{
d.printStackTrace();
System.out.println("Exception in :EmpProductivity : getTopNumAttemptJobIdWiseServlet() :" + d.getMessage());
throw new ITMException(d);
}
}
return rawEffTimeJson;
}
/********** End of method getTopNumAttemptJobIdWiseServlet() ******/
/********** Start of method for Worst no of attempts Analysis
* EJB Name : EmpProductivity.java
* Method Name : getWorstNumAttemptJobIdWiseServlet
* Servlet Name : WorstNumAttemptJobIdWiseServlet
* Metadata xml Name : efftimeanalysis.xml
*
* */
@SuppressWarnings("unchecked")
public JSONObject getWorstNumAttemptJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException
{
JSONObject rawEffTimeJson = new JSONObject();
JSONObject rowData = null;
String sql = "";
ResultSet rs = null;
PreparedStatement pstmt = null;
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
String empCodeFilter="",deptCodeFilter="",topNosFilter="",empTaskFilter="";
DashboardUtility dashbordUtil = new DashboardUtility();
try
{
conn = connDriver.getConnectDB(dataSourceName);
connDriver = null;
if ((frmPrd != null && frmPrd.trim().length()>0 ) && (toPrd != null && toPrd.trim().length()>0 ) )
{
System.out.println(" Inside getWorstNumAttemptJobIdWiseServlet() for Data Soruc Name ="+dataSourceName);
deptCode=deptCode.trim();
frmPrd=frmPrd.trim();
toPrd=toPrd.trim();
int count = 0;
if ((empTask != null) && (empTask.trim().length() > 0))
{
System.out.println("empTask" + empTask);
empTask = dashbordUtil.getCommaSeparated(empTask);
empTaskFilter = " AND TBLEPA_DAYSCORE.WINNAME in (" + empTask + ") ";
}
if ((empCode != null) && (empCode.trim().length() > 0))
{
System.out.println("empCode" + empCode);
empCode = dashbordUtil.getCommaSeparated(empCode);
empCodeFilter = " AND EMPLOYEE.EMP_CODE IN (" + empCode + ") ";
}
if ((deptCode != null) && (deptCode.trim().length() > 0))
{
System.out.println("deptCode" + deptCode);
deptCode = dashbordUtil.getCommaSeparated(deptCode);
deptCodeFilter = " and EMPLOYEE.DEPT_CODE in ("+deptCode+") ";
}
if ((topNos != null) && (topNos.trim().length() > 0))
{
System.out.println("topNos" + topNos);
topNosFilter = " where D.RANK<="+topNos;
}
sql="select D.emp_code,D.emp_name,D.JOBID,D.noatt,D.success,D.fail,D.RANK from ( "
+" select c.emp_code,c.JOBID,c.emp_name,trunc(c.noatt,2) noatt,trunc(c.success,2) success,trunc(c.fail,2) fail, "
+" dense_rank () OVER (ORDER BY (c.noatt) desc) AS RANK "
+" from( "
+" select b.emp_code,b.emp_name,count(b.jobid) jobid, "
+" trunc(AVG(b.noatt),2) noatt,trunc(AVG(b.success),2) success, trunc(AVG(b.fail),2) fail "
+" from ( "
+" select distinct tblEPA_dayScore.jobid jobid,EMPLOYEE.EMP_CODE as emp_code, "
+" (CASE WHEN Employee.emp_fname IS NULL THEN '' ELSE TRIM(Employee.emp_fname) || ' ' END) || "
+" (CASE WHEN employee.emp_mname IS NULL THEN '' "
+" ELSE TRIM(Employee.emp_mname) || ' ' END) || (case when EMPLOYEE.EMP_LNAME is null then '' else "
+" TRIM(EMPLOYEE.EMP_LNAME) || ' ' end) as EMP_NAME , "
+" trunc(AVG(nvl((tblEPA_dayScore.noatt),0)),2) as noatt , "
+" trunc(AVG(nvl((tblEPA_dayScore.success),0)),2) as success , "
+" trunc(AVG(nvl((tblEPA_dayScore.fail),0)),2) as fail "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) "
+" and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('"+frmPrd+"','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('"+toPrd+"','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' "
+" and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' "
+empTaskFilter+empCodeFilter +deptCodeFilter
+" group by tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE, "
+" Employee.emp_mname,Employee.emp_lname,Employee.emp_fname "
+" )b GROUP BY b.emp_code,b.emp_name ) C )D "+topNosFilter+" order by D.RANK asc ";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next())
{
rowData = new JSONObject();
rowData.put("EMP_CODE", checkNull(rs.getString("emp_code")));
rowData.put("no_of_attempt", checkNull(rs.getString("noatt"))+"@"+checkNull(rs.getString("EMP_NAME"))+"{br}#Transactions: "+checkNull(rs.getString("JOBID"))+"{br}Avg.No. of Attempts:");
rawEffTimeJson.put(count, rowData);
count++;
}
}
System.out.println("fetch Data for getWorstNumAttemptJobIdWiseServlet() : " + rawEffTimeJson.toString());
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
} finally
{
try
{
if (conn != null)
{
if (rs != null)
rs.close();
rs = null;
if (pstmt != null)
pstmt.close();
pstmt = null;
conn.close();
conn = null;
}
conn = null;
} catch (Exception d)
{
d.printStackTrace();
System.out.println("Exception in :EmpProductivity : getWorstNumAttemptJobIdWiseServlet() :" + d.getMessage());
throw new ITMException(d);
}
}
return rawEffTimeJson;
}
/********** End of method getWorstNumAttemptJobIdWiseServlet() ******/
/********** Start of method for distribution of Time
* EJB Name : EmpProductivity.java
* Method Name : getDistributionDetailServlet
* Servlet Name : DistributionDetailServlet
* Metadata xml Name : attemptdistribution.xml(SSGrid),timedistribution.xml
*
* */
@SuppressWarnings("unchecked")
public JSONObject getDistributionDetailServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException
{
JSONObject rawEffTimeJson = new JSONObject();
JSONObject rowData = null;
String sql = "";
ResultSet rs = null;
PreparedStatement pstmt = null;
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
double toj_per=0.0,suc_per=0.0,servert_per=0.0,oh_per=0.0;
double tot_time=000.0;
String fta_per="";
double job_time=0,server_time=0.0,oh_time=0.0;
String deptCodeFilter="",empTaskFilter="";
String noAtt="",succAtt="";
DashboardUtility dashbordUtil = new DashboardUtility();
try
{
conn = connDriver.getConnectDB(dataSourceName);
connDriver = null;
if ((frmPrd != null && frmPrd.trim().length()>0 ) && (toPrd != null && toPrd.trim().length()>0 ))
{
System.out.println(" Inside getDistributionDetailServlet() for Data Soruc Name ="+dataSourceName);
if ((empTask != null) && (empTask.trim().length() > 0))
{
System.out.println("empTask" + empTask);
empTask = dashbordUtil.getCommaSeparated(empTask);
empTaskFilter = " AND tblEPA_dayScore.WINNAME in (" + empTask + ") ";
}
if ((deptCode != null) && (deptCode.trim().length() > 0))
{
System.out.println("deptCode" + deptCode);
deptCode = dashbordUtil.getCommaSeparated(deptCode);
deptCodeFilter = " and EMPLOYEE.DEPT_CODE in ("+deptCode+") ";
}
/*if ((topNos != null) && (topNos.trim().length() > 0))
{
System.out.println("topNos" + topNos);
topNosFilter = " where B.RN<="+topNos;
}*/
deptCode=deptCode.trim();
frmPrd=frmPrd.trim();
toPrd=toPrd.trim();
......@@ -1131,6 +1640,184 @@ public JSONObject getTopEfficiencyAnalysisServlet(String dataSourceName,String f
}
/********** End of method getDistributionDetailServlet() ******/
/********** Start of method for distribution of Time
* EJB Name : EmpProductivity.java
* Method Name : getJobWiseDistributionServlet
* Servlet Name : JobWiseDistributionServlet
* Metadata xml Name : attemptdistribution.xml(SSGrid),timedistribution.xml
*
* */
@SuppressWarnings("unchecked")
public JSONObject getJobWiseDistributionServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException
{
JSONObject rawEffTimeJson = new JSONObject();
JSONObject rowData = null;
String sql = "";
ResultSet rs = null;
PreparedStatement pstmt = null;
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
double toj_per=0.0,suc_per=0.0,servert_per=0.0,oh_per=0.0;
double tot_time=000.0;
String fta_per="";
double job_time=0,server_time=0.0,oh_time=0.0;
String deptCodeFilter="",empTaskFilter="";
String noAtt="",succAtt="";
DashboardUtility dashbordUtil = new DashboardUtility();
try
{
conn = connDriver.getConnectDB(dataSourceName);
connDriver = null;
if ((frmPrd != null && frmPrd.trim().length()>0 ) && (toPrd != null && toPrd.trim().length()>0 ))
{
System.out.println(" Inside getJobWiseDistributionServlet() for Data Soruc Name ="+dataSourceName);
if ((empTask != null) && (empTask.trim().length() > 0))
{
System.out.println("empTask" + empTask);
empTask = dashbordUtil.getCommaSeparated(empTask);
empTaskFilter = " AND tblEPA_dayScore.WINNAME in (" + empTask + ") ";
}
if ((deptCode != null) && (deptCode.trim().length() > 0))
{
System.out.println("deptCode" + deptCode);
deptCode = dashbordUtil.getCommaSeparated(deptCode);
deptCodeFilter = " and EMPLOYEE.DEPT_CODE in ("+deptCode+") ";
}
/*if ((topNos != null) && (topNos.trim().length() > 0))
{
System.out.println("topNos" + topNos);
topNosFilter = " where B.RN<="+topNos;
}*/
deptCode=deptCode.trim();
frmPrd=frmPrd.trim();
toPrd=toPrd.trim();
int count = 0;
sql=" select b.emp_code,b.emp_name,TRUNC(AVG(b.servert/60),2) server_time , "
+" TRUNC(AVG(b.oht/60),2) oh_time ,TRUNC(AVG(b.jobt/60),2) job_time, "
+" TRUNC((AVG(B.OHT)/60+AVG(b.servert)/60+AVG(b.jobt)/60),2) TOTAL_TIME_MIN, "
+" trunc(AVG(b.noatt),2) NOATTEMPTS,trunc(AVG(b.success),2) success , trunc(AVG(b.fail),2) fail "
+" from ( "
+" select distinct tblEPA_dayScore.jobid jobid,EMPLOYEE.EMP_CODE as emp_code, "
+" (CASE WHEN Employee.emp_fname IS NULL THEN '' ELSE TRIM(Employee.emp_fname) || ' ' END) || "
+" (CASE WHEN employee.emp_mname IS NULL THEN '' "
+" ELSE TRIM(Employee.emp_mname) || ' ' END) || (case when EMPLOYEE.EMP_LNAME is null then '' else "
+" TRIM(EMPLOYEE.EMP_LNAME) || ' ' end) as EMP_NAME , "
+" trunc(AVG(nvl((tblEPA_dayScore.servert),0)),2) as servert, "
+" trunc(AVG(nvl((tblEPA_dayScore.oh),0)),2) as oht, "
+" trunc(AVG(nvl((tblEPA_dayScore.jobt),0)),2) as jobt , "
+" trunc(AVG(nvl((tblEPA_dayScore.noatt),0)),2) as noatt , "
+" trunc(AVG(nvl((tblEPA_dayScore.success),0)),2) as success , "
+" trunc(AVG(nvl((tblEPA_dayScore.fail),0)),2) as fail "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) "
+" and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('"+frmPrd+"','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('"+toPrd+"','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' and TRIM(EMPLOYEE.EMP_CODE) ='"+empCode.trim()+"' "
+" and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' " + empTaskFilter + deptCodeFilter
+" group by tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE, "
+" Employee.emp_mname,Employee.emp_lname,Employee.emp_fname "
+" )b GROUP BY b.emp_code,b.emp_name ";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next())
{
rowData = new JSONObject();
rowData.put("EMP_CODE", checkNull(rs.getString("emp_code")));
rowData.put("no_of_attempt", checkNull(rs.getString("NOATTEMPTS")));
rowData.put("success", checkNull(rs.getString("success")));
rowData.put("failure", checkNull(rs.getString("fail")));
toj_per=0.0;
servert_per=0.0;
oh_per=0.0;
job_time=Double.parseDouble((checkZero(rs.getString("job_time"))));
server_time=Double.parseDouble((checkZero(rs.getString("server_time"))));
oh_time=Double.parseDouble((checkZero(rs.getString("oh_time"))));
tot_time=Double.parseDouble((checkZero(rs.getString("TOTAL_TIME_MIN"))));
toj_per = Math.round((job_time*100)/tot_time);
servert_per = Math.round((server_time*100)/tot_time);
oh_per = Math.round((oh_time*100)/tot_time);
rowData.put("overhead_time",oh_time+"@"+checkNull(rs.getString("EMP_NAME"))+","+oh_per+"%{br}Avg.Overhead Time:");
rowData.put("job_time", job_time+"@"+checkNull(rs.getString("EMP_NAME"))+","+toj_per+"%{br}Avg.Job Time:");
rowData.put("server_time", server_time+"@"+checkNull(rs.getString("EMP_NAME"))+","+servert_per+"%{br}Avg.Server Time:");
noAtt = checkZero(rs.getString("NOATTEMPTS")) ;
succAtt=checkNull(rs.getString("success"));
fta_per= checkZero(rs.getString("fail"));
rowData.put("label", "Fail");
rowData.put("value", fta_per);
rawEffTimeJson.put(count, rowData);
count++;
System.out.println("fta_per: "+fta_per+" suc_per: "+suc_per);
}
rowData = new JSONObject();
rowData.put("EMP_CODE", "");
rowData.put("no_of_attempt", "");
rowData.put("success", "");
rowData.put("failure", "");
rowData.put("overhead_time", "");
rowData.put("job_time", "");
rowData.put("server_time", "");
rowData.put("escore", "");
rowData.put("job_time", "");
rowData.put("label", "Sucess");
rowData.put("value", succAtt);
rawEffTimeJson.put(count, rowData);
count++;
rowData = new JSONObject();
rowData.put("EMP_CODE", "");
rowData.put("no_of_attempt", "");
rowData.put("success", "");
rowData.put("failure", "");
rowData.put("overhead_time", "");
rowData.put("job_time", "");
rowData.put("server_time", "");
rowData.put("escore", "");
rowData.put("label", "No. Of Attempts");
rowData.put("value", noAtt);
rowData.put("toj_per", "");
rawEffTimeJson.put(count, rowData);
}
System.out.println("fetch Data for getJobWiseDistributionServlet() : " + rawEffTimeJson.toString());
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
} finally
{
try
{
if (conn != null)
{
if (rs != null)
rs.close();
rs = null;
if (pstmt != null)
pstmt.close();
pstmt = null;
conn.close();
conn = null;
}
conn = null;
} catch (Exception d)
{
d.printStackTrace();
System.out.println("Exception in :EmpProductivity : getJobWiseDistributionServlet() :" + d.getMessage());
throw new ITMException(d);
}
}
return rawEffTimeJson;
}
/********** End of method getJobWiseDistributionServlet() ******/
/********** Start of method for distribution of Number of Attempts Pie chart
* EJB Name : EmpProductivity.java
* Method Name : getPieChartDistributionDetailServlet
......@@ -1181,61 +1868,28 @@ public JSONObject getTopEfficiencyAnalysisServlet(String dataSourceName,String f
frmPrd=frmPrd.trim();
toPrd=toPrd.trim();
int count = 0;
//Sql for no of attempts distrivution in average commented by swati on 29 Dec 2015
/* sql=" select b.emp_code,b.emp_name,TRUNC(AVG(b.servert/60),2) server_time , "
+" TRUNC(AVG(b.oht/60),2) oh_time ,TRUNC(AVG(b.jobt/60),2) job_time, "
+" TRUNC((AVG(B.OHT)/60+AVG(b.servert)/60+AVG(b.jobt)/60),2) TOTAL_TIME_MIN, "
+" trunc(AVG(b.noatt),2) NOATTEMPTS,trunc(AVG(b.success),2) success , trunc(AVG(b.fail),2) fail "
+" from ( "
+" select A.EMP_CODE,A.LOGDATE, "
+" A.EMP_NAME,trunc(AVG(A.SERVERT),2) SERVERT,trunc(AVG(A.OHT),2) OHT,trunc(AVG(a.JOBT),2) JOBT , "
+" trunc(AVG(a.noatt),2) noatt,trunc(AVG(a.success),2) success,trunc(AVG(a.fail),2) fail "
+" from( "
+" select distinct tblEPA_dayScore.jobid jobid,TBLEPA_DAYSCORE.LOGDATE,EMPLOYEE.EMP_CODE as emp_code,TBLEPA_DAYSCORE.WINNAME , "
+" (CASE WHEN Employee.emp_fname IS NULL THEN '' ELSE TRIM(Employee.emp_fname) || ' ' END) || "
+" (CASE WHEN employee.emp_mname IS NULL THEN '' "
+" ELSE TRIM(Employee.emp_mname) || ' ' END) || (case when EMPLOYEE.EMP_LNAME is null then '' else "
+" TRIM(EMPLOYEE.EMP_LNAME) || ' ' end) as EMP_NAME , "
+" trunc(AVG(nvl((tblEPA_dayScore.servert),0)),2) as servert, "
+" trunc(AVG(nvl((tblEPA_dayScore.oh),0)),2) as oht, "
+" trunc(AVG(nvl((tblEPA_dayScore.jobt),0)),2) as jobt , "
+" trunc(AVG(nvl((tblEPA_dayScore.noatt),0)),2) as noatt , "
+" trunc(AVG(nvl((tblEPA_dayScore.success),0)),2) as success , "
+" trunc(AVG(nvl((tblEPA_dayScore.fail),0)),2) as fail "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) "
+" and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('"+frmPrd+"','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('"+toPrd+"','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' and TRIM(EMPLOYEE.EMP_CODE) ='"+empCode.trim()+"' "
+" and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' " + empTaskFilter + deptCodeFilter
+" group by TBLEPA_DAYSCORE.logdate,tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE,TBLEPA_DAYSCORE.WINNAME, "
+" Employee.emp_mname,Employee.emp_lname,Employee.emp_fname "
+" )a GROUP BY A.LOGDATE,A.EMP_CODE, A.EMP_NAME "
+")b GROUP BY b.emp_code,b.emp_name "; */
//new sql to show actual values for no of attempts distribution
sql=" select b.emp_code,trunc(sum(b.success),2) success , trunc(sum(b.fail),2) fail "
+" from ( "
+" select A.EMP_CODE,A.LOGDATE, trunc(sum(a.success),2) success,trunc(sum(a.fail),2) fail "
+" from( "
+" select distinct tblEPA_dayScore.jobid jobid,TBLEPA_DAYSCORE.LOGDATE,employee.emp_code, "
+" trunc(AVG(nvl((tblEPA_dayScore.success),0)),2) as success , "
+" trunc(AVG(nvl((tblEPA_dayScore.fail),0)),2) as fail "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) "
+" and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('"+frmPrd+"','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('"+toPrd+"','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' " + empTaskFilter + deptCodeFilter
+" and TRIM(EMPLOYEE.EMP_CODE) ='"+empCode.trim()+"' "
+" and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' "
+" group by TBLEPA_DAYSCORE.logdate,tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE "
+" )a GROUP BY A.LOGDATE,A.EMP_CODE "
+" )b GROUP BY b.emp_code ";
+" from ( "
+" select A.EMP_CODE,A.LOGDATE, trunc(sum(a.success),2) success,trunc(sum(a.fail),2) fail "
+" from( "
+" select distinct tblEPA_dayScore.jobid jobid,TBLEPA_DAYSCORE.LOGDATE,employee.emp_code, "
+" trunc(AVG(nvl((tblEPA_dayScore.success),0)),2) as success , "
+" trunc(AVG(nvl((tblEPA_dayScore.fail),0)),2) as fail "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) "
+" and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('"+frmPrd+"','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('"+toPrd+"','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' " + empTaskFilter + deptCodeFilter
+" and TRIM(EMPLOYEE.EMP_CODE) ='"+empCode.trim()+"' "
+" and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' "
+" group by TBLEPA_DAYSCORE.logdate,tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE "
+" )a GROUP BY A.LOGDATE,A.EMP_CODE "
+" )b GROUP BY b.emp_code ";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
......@@ -1287,6 +1941,124 @@ public JSONObject getTopEfficiencyAnalysisServlet(String dataSourceName,String f
return rawEffTimeJson;
}
/********** End of method getPieChartDistributionDetailServlet() ******/
/********** Start of method for distribution of Number of Attempts Pie chart
* EJB Name : EmpProductivity.java
* Method Name : getPieChartJobWiseDistributionServlet
* Servlet Name : PieChartJobWiseDistributionServlet
* Metadata xml Name : attemptdistribution.xml(Pie-Chart)
*
* */
@SuppressWarnings("unchecked")
public JSONObject getPieChartJobWiseDistributionServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException
{
JSONObject rawEffTimeJson = new JSONObject();
JSONObject rowData = null;
String sql = "";
ResultSet rs = null;
PreparedStatement pstmt = null;
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
double fta_per=0.0,suc_per=0.0;
String deptCodeFilter="",empTaskFilter="";
String fail_att="",succ_att="";
DashboardUtility dashbordUtil = new DashboardUtility();
try
{
conn = connDriver.getConnectDB(dataSourceName);
connDriver = null;
if ((frmPrd != null && frmPrd.trim().length()>0 ) && (toPrd != null && toPrd.trim().length()>0 ))
{
System.out.println(" Inside getPieChartJobWiseDistributionServlet() for No of Attempts Data Soruc Name ="+dataSourceName);
if ((empTask != null) && (empTask.trim().length() > 0))
{
System.out.println("empTask" + empTask);
empTask = dashbordUtil.getCommaSeparated(empTask);
empTaskFilter = " AND tblEPA_dayScore.WINNAME in (" + empTask + ") ";
}
if ((deptCode != null) && (deptCode.trim().length() > 0))
{
System.out.println("deptCode" + deptCode);
deptCode = dashbordUtil.getCommaSeparated(deptCode);
deptCodeFilter = " and EMPLOYEE.DEPT_CODE in ("+deptCode+") ";
}
/*if ((topNos != null) && (topNos.trim().length() > 0))
{
System.out.println("topNos" + topNos);
topNosFilter = " where B.RN<="+topNos;
}*/
deptCode=deptCode.trim();
frmPrd=frmPrd.trim();
toPrd=toPrd.trim();
int count = 0;
sql=" select A.EMP_CODE, trunc(sum(a.success),2) success,trunc(sum(a.fail),2) fail "
+" from( "
+" select distinct tblEPA_dayScore.jobid jobid,employee.emp_code, "
+" trunc(AVG(nvl((tblEPA_dayScore.success),0)),2) as success , "
+" trunc(AVG(nvl((tblEPA_dayScore.fail),0)),2) as fail "
+" from TBLEPA_DAYSCORE,EMPLOYEE,USERS,transetup "
+" where trim(tblEPA_dayScore.userid) =trim(USERS.CODE) "
+" and USERS.entity_code = EMPLOYEE.EMP_CODE "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') >= to_date('"+frmPrd+"','dd/mm/yy') "
+" and to_date(tblEPA_dayScore.logdate,'dd/mm/yy') <= to_date('"+toPrd+"','dd/mm/yy') "
+" and transetup.function_type='"+functionType+"' and UPPER(TRIM(transetup.tran_window))='W_' ||UPPER(TRIM(TBLEPA_DAYSCORE.winname)) "
+" and USERS.usage_intensity='"+usageIntensity+"' and TRIM(EMPLOYEE.EMP_CODE) ='"+empCode.trim()+"' "
+" and tblEPA_dayScore.jobid !='NA' and tblEPA_dayScore.ACtCode!='VIEW' " + empTaskFilter + deptCodeFilter
+" group by tblEPA_dayScore.jobid, EMPLOYEE.EMP_CODE )a GROUP BY A.EMP_CODE ";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next())
{
rowData = new JSONObject();
fail_att = checkNull(rs.getString("fail"));
succ_att = checkNull(rs.getString("success"));
rowData.put("attempt", "Fail");
rowData.put("fta_per", fail_att);
rawEffTimeJson.put(count, rowData);
count++;
System.out.println("fta_per: "+fta_per+" suc_per: "+suc_per);
}
rowData = new JSONObject();
rowData.put("attempt", "Sucess");
rowData.put("fta_per", succ_att);
rawEffTimeJson.put(count, rowData);
}
System.out.println("fetch Data for getPieChartJobWiseDistributionServlet() : " + rawEffTimeJson.toString());
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
} finally
{
try
{
if (conn != null)
{
if (rs != null)
rs.close();
rs = null;
if (pstmt != null)
pstmt.close();
pstmt = null;
conn.close();
conn = null;
}
conn = null;
} catch (Exception d)
{
d.printStackTrace();
System.out.println("Exception in :EmpProductivity : getPieChartJobWiseDistributionServlet() :" + d.getMessage());
throw new ITMException(d);
}
}
return rawEffTimeJson;
}
/********** End of method getPieChartJobWiseDistributionServlet() ******/
......
......@@ -43,6 +43,14 @@ public abstract interface EmpProductivityLocal extends ValidatorLocal
public JSONObject getWorstE2ScoreJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getTopE2ScoreJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getTopNumAttemptJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getWorstNumAttemptJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getTopTimeJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getWorstTimeJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getJobWiseDistributionServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getPieChartJobWiseDistributionServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
}
......
......@@ -43,6 +43,15 @@ public abstract interface EmpProductivityRemote extends ValidatorRemote
public JSONObject getWorstE2ScoreJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getTopE2ScoreJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getTopNumAttemptJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getWorstNumAttemptJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getTopTimeJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getWorstTimeJobIdWiseServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getJobWiseDistributionServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) throws RemoteException, ITMException;
public JSONObject getPieChartJobWiseDistributionServlet(String dataSourceName,String frmPrd,String toPrd,String empTask,String deptCode,String topNos,String empCode,String usageIntensity,String functionType) 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