Commit bf76c16a authored by pborate's avatar pborate

Updated account activity dao.

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@179606 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 6c5e47ca
...@@ -12,6 +12,7 @@ import java.time.LocalDate; ...@@ -12,6 +12,7 @@ import java.time.LocalDate;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
...@@ -50,23 +51,25 @@ public class AccountActivityDao ...@@ -50,23 +51,25 @@ public class AccountActivityDao
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("YYYYMMdd"); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("YYYYMMdd");
String today = LocalDate.now().format(formatter); String today = LocalDate.now().format(formatter);
System.out.println("today date ["+today+"]"); System.out.println("today date ["+today+"]");
/* FOR MIN MAX LOGIN TIME , LOGOUT TIME AND BATTERY STATUS
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("dd-MM-YY"); DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("dd-MM-YY");
String today1 = LocalDate.now().format(formatter1); String todayFormat = LocalDate.now().format(formatter1);
System.out.println("today1 date ["+today1+"]"); System.out.println("today1 date ["+todayFormat+"]");
List<Object[]> minMaxTimeList= getMinMaxTime(today1);
/* FOR MIN MAX LOGIN TIME , LOGOUT TIME AND BATTERY STATUS
List<Object[]> minMaxTimeList= getMinMaxTime(todayFormat);
System.out.println("minMaxTimeList::::::: ["+minMaxTimeList+"]"); System.out.println("minMaxTimeList::::::: ["+minMaxTimeList+"]");
List<Object[]> batteryStatus = getBatteryStatus(today1); List<Object[]> batteryStatus = getBatteryStatus(todayFormat);
System.out.println("batteryStatus::::::: ["+batteryStatus+"]"); System.out.println("batteryStatus::::::: ["+batteryStatus+"]");
*/ */
if( "ADMIN".equalsIgnoreCase(profileId) || "ADM".equalsIgnoreCase(profileId) )
if( "ADMIN".equalsIgnoreCase(profileId) || "ADM".equalsIgnoreCase(profileId) )
{ {
List<JSONObject> fileDataList= getUserActivityFileData(null,today); List<JSONObject> fileDataList= getUserActivityFileData(null,today);
System.out.println("getUserActivityData>>>"+ fileDataList); System.out.println("getUserActivityData>>>"+ fileDataList);
HashMap<String, JSONObject> minMaxTimeList= getMinMaxTime(todayFormat,null);
for(JSONObject fileDataObj : fileDataList ) for(JSONObject fileDataObj : fileDataList )
{ {
String userId = fileDataObj.optString("userId"); String userId = fileDataObj.optString("userId");
...@@ -75,6 +78,7 @@ public class AccountActivityDao ...@@ -75,6 +78,7 @@ public class AccountActivityDao
System.out.println("fileName::::::::: ["+userId+"]["+activityDate+"]"); System.out.println("fileName::::::::: ["+userId+"]["+activityDate+"]");
JSONObject activityData = createActivityData(userId, fileContents); JSONObject activityData = createActivityData(userId, fileContents);
activityData = updateMinMaxTime(activityData, minMaxTimeList.get(userId)) ;
activityDataFinal.put(activityData); activityDataFinal.put(activityData);
} }
...@@ -84,6 +88,11 @@ public class AccountActivityDao ...@@ -84,6 +88,11 @@ public class AccountActivityDao
else else
{ {
List<String> userDataList = getUserDetails(loginCode,profileId); List<String> userDataList = getUserDetails(loginCode,profileId);
System.out.println("userDataList AFTER>>>"+userDataList);
HashMap<String, JSONObject> minMaxTimeList= getMinMaxTime(todayFormat,userDataList);
System.out.println("minMaxTimeList AFTER>>>"+minMaxTimeList);
List<JSONObject> fileDataList= getUserActivityFileData(userDataList, today); List<JSONObject> fileDataList= getUserActivityFileData(userDataList, today);
...@@ -101,10 +110,12 @@ public class AccountActivityDao ...@@ -101,10 +110,12 @@ public class AccountActivityDao
if( userId.equalsIgnoreCase(loginCode) ) if( userId.equalsIgnoreCase(loginCode) )
{ {
selfActivityData = createActivityData(userId, fileContents); selfActivityData = createActivityData(userId, fileContents);
selfActivityData = updateMinMaxTime(selfActivityData, minMaxTimeList.get(loginCode)) ;
} }
else else
{ {
JSONObject teamMemberActivityData = createActivityData(userId, fileContents); JSONObject teamMemberActivityData = createActivityData(userId, fileContents);
teamMemberActivityData = updateMinMaxTime(teamMemberActivityData, minMaxTimeList.get(loginCode)) ;
teamActivityData.put(teamMemberActivityData); teamActivityData.put(teamMemberActivityData);
} }
System.out.println("selfActivityData::::::::: ["+selfActivityData+"]"); System.out.println("selfActivityData::::::::: ["+selfActivityData+"]");
...@@ -114,6 +125,7 @@ public class AccountActivityDao ...@@ -114,6 +125,7 @@ public class AccountActivityDao
if( selfActivityData == null ) if( selfActivityData == null )
{ {
selfActivityData = getUserDetail(new JSONObject(), loginCode); selfActivityData = getUserDetail(new JSONObject(), loginCode);
selfActivityData = updateMinMaxTime(selfActivityData, minMaxTimeList.get(loginCode)) ;
} }
if(teamActivityData.length()>0){ if(teamActivityData.length()>0){
selfActivityData.put("TEAM", teamActivityData); selfActivityData.put("TEAM", teamActivityData);
...@@ -142,15 +154,32 @@ public class AccountActivityDao ...@@ -142,15 +154,32 @@ public class AccountActivityDao
return activityDataFinal; return activityDataFinal;
} }
private JSONObject updateMinMaxTime(JSONObject activityData, JSONObject minMaxTimeObj) throws JSONException
{
if(minMaxTimeObj != null)
{
activityData.put("LOGIN_TIME", minMaxTimeObj.opt("loginTime"));
activityData.put("LOGOUT_TIME", minMaxTimeObj.opt("logoutTime"));
System.out.println("minMaxTimeList query result:::::::"+minMaxTimeObj);
}
return activityData;
}
private JSONObject getUserDetail(JSONObject activityData, String userCode) throws JSONException private JSONObject getUserDetail(JSONObject activityData, String userCode) throws JSONException
{ {
List<Employee> employeeDataList = getUserDesignation(userCode); Employee employee= getEmployeeDetail(userCode);
for( Employee employee : employeeDataList ) if( employee != null )
{ {
activityData.put("NAME", employee.getEmpFname()); activityData.put("NAME", employee.getEmpFname());
activityData.put("DESIGNATION", employee.getDesignation()); activityData.put("DESIGNATION", employee.getDesignation());
activityData.put("USER_ID", userCode); activityData.put("USER_ID", userCode);
} }
// if(minMaxTimeObj != null)
// {
// activityData.put("LOGIN_TIME", minMaxTimeObj.opt("loginTime"));
// activityData.put("LOGOUT_TIME", minMaxTimeObj.opt("logoutTime"));
// System.out.println("minMaxTimeList query result:::::::"+minMaxTimeObj);
// }
return activityData; return activityData;
} }
...@@ -524,10 +553,10 @@ public class AccountActivityDao ...@@ -524,10 +553,10 @@ public class AccountActivityDao
return loginTraceList; return loginTraceList;
} }
private List<Employee> getUserDesignation(String userCode) private Employee getEmployeeDetail(String userCode)
{ {
System.out.println("Inside getUserDesignation"); System.out.println("Inside getUserDesignation");
List<Employee> employeeDataList = null; Employee employee = null;
Employee result = new Employee(); Employee result = new Employee();
try { try {
// 1. Get Session object // 1. Get Session object
...@@ -546,17 +575,20 @@ public class AccountActivityDao ...@@ -546,17 +575,20 @@ public class AccountActivityDao
System.out.println("Inside getLogDetails query: [" + query + "]"); System.out.println("Inside getLogDetails query: [" + query + "]");
employeeDataList = query.getResultList(); List<Employee> employeeDataList = query.getResultList();
System.out.println("getLogDetails: loginTraceList [" + employeeDataList + "]"); System.out.println("getLogDetails: loginTraceList [" + employeeDataList + "]");
if( employeeDataList != null && employeeDataList.size() > 0 )
{
employee = employeeDataList.get(0);
}
session.close(); session.close();
} catch (HibernateException e) { } catch (HibernateException e) {
System.out.println("HibernateException :"); System.out.println("HibernateException :");
System.out.println(e.getMessage()); System.out.println(e.getMessage());
} }
return employeeDataList; return employee;
} }
public List<String> getUserDetails(String userId, String profileId) public List<String> getUserDetails(String userId, String profileId)
...@@ -602,13 +634,18 @@ public class AccountActivityDao ...@@ -602,13 +634,18 @@ public class AccountActivityDao
return userDetailList; return userDetailList;
} }
public List<Object[]> getMinMaxTime(String today) public HashMap<String, JSONObject> getMinMaxTime(String today, List<String> userDataList )
{ {
List<Object[]> minMaxTimeList = null; HashMap<String, JSONObject> minMaxTimeMap = new HashMap<String, JSONObject>();
try try
{ {
// 1. Get Session object // 1. Get Session object
String whereClausePart = "";
if(userDataList != null)
{
String userList = getEnclosedString(userDataList);
whereClausePart = " and userid in("+ userList +")";
}
System.out.println("Inside getUserDetails userId: [" + today + "]"); System.out.println("Inside getUserDetails userId: [" + today + "]");
Session session = HibernateUtil.getSessionFactory(siteTranDB).openSession(); Session session = HibernateUtil.getSessionFactory(siteTranDB).openSession();
// 2. Create Query // 2. Create Query
...@@ -616,15 +653,21 @@ public class AccountActivityDao ...@@ -616,15 +653,21 @@ public class AccountActivityDao
+ " from logintrace" + " from logintrace"
+ " where to_char(LOGINTIME,'dd-MM-yy') = '"+today+"'" + " where to_char(LOGINTIME,'dd-MM-yy') = '"+today+"'"
+ " and LOGIN_STATUS = 'T'" + " and LOGIN_STATUS = 'T'"
+ whereClausePart
+ " group by userid"); + " group by userid");
System.out.println("query result>>>>>"+query); System.out.println("query result>>>>>"+query);
minMaxTimeList= (List<Object[]>)query.list(); List<Object[]> minMaxTimeList= (List<Object[]>)query.list();
for(Object[] minMaxTime: minMaxTimeList){ for(Object[] minMaxTime: minMaxTimeList){
String id = (String)minMaxTime[0]; String userId = (String)minMaxTime[0];
Date loginTime = (Date) minMaxTime[1]; Date loginTime = (Date) minMaxTime[1];
Date logoutTime = (Date) minMaxTime[2]; Date logoutTime = (Date) minMaxTime[2];
JSONObject jsonObject = new JSONObject();
jsonObject.put("loginTime", loginTime);
jsonObject.put("logoutTime", logoutTime);
minMaxTimeMap.put(userId, jsonObject);
System.out.println("minMaxTimeList query result:::::::"+minMaxTimeList.size()); System.out.println("minMaxTimeList query result:::::::"+minMaxTimeList.size());
System.out.println("minMaxTimeList query id::::::: ["+id+"] loginTime ["+loginTime+"] logoutTime ["+logoutTime+"]"); System.out.println("minMaxTimeList query id::::::: ["+userId+"] jsonObject ["+jsonObject+"]");
} }
session.close(); session.close();
} }
...@@ -632,9 +675,12 @@ public class AccountActivityDao ...@@ -632,9 +675,12 @@ public class AccountActivityDao
{ {
System.out.println("HibernateException :"); System.out.println("HibernateException :");
System.out.println(e.getMessage()); System.out.println(e.getMessage());
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
System.out.println("minMaxTimeList >>>>>>>>>"+minMaxTimeList.toString()); System.out.println("minMaxTimeMap >>>>>>>>>"+minMaxTimeMap);
return minMaxTimeList; return minMaxTimeMap;
} }
public List<Object[]> getBatteryStatus(String today) public List<Object[]> getBatteryStatus(String today)
...@@ -751,7 +797,7 @@ public class AccountActivityDao ...@@ -751,7 +797,7 @@ public class AccountActivityDao
String jbossPath=CommonConstants.JBOSSHOME; String jbossPath=CommonConstants.JBOSSHOME;
System.out.println("CommonConstants.JBOSSHOME ["+CommonConstants.JBOSSHOME+"]"); System.out.println("CommonConstants.JBOSSHOME ["+CommonConstants.JBOSSHOME+"]");
File userActivityFolder = new File(jbossPath+"/server/default/UserActivity"); File userActivityFolder = new File(jbossPath+"/server/default/UserActivity");
System.out.println("userActivityFolder ["+userActivityFolder+"]"); System.out.println("userActivityFolder ["+userActivityFolder+"] Users "+users+"]");
if( userActivityFolder.isDirectory() ) if( userActivityFolder.isDirectory() )
{ {
File[] userActivityFiles = userActivityFolder.listFiles(new FileFilter() { File[] userActivityFiles = userActivityFolder.listFiles(new FileFilter() {
...@@ -797,6 +843,28 @@ public class AccountActivityDao ...@@ -797,6 +843,28 @@ public class AccountActivityDao
return filesArrayList; return filesArrayList;
} }
private String getEnclosedString(List<String> docIdList)
{
StringBuffer buffer = new StringBuffer();
int len = 0;
for(String docId : docIdList)
{
buffer.append("'").append(docId.trim()).append("'");
len++;
if( len < docIdList.size() )
{
buffer.append(",");
}
}
if( buffer.length() == 0 )
{
buffer.append("''");
}
System.out.println("Inside getEnclosedString buffer: [" + buffer +"]");
return buffer.toString();
}
/* /*
private JSONArray processData(JSONArray activityDataFinal) private JSONArray processData(JSONArray activityDataFinal)
{ {
......
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