Commit dd679e94 authored by pborate's avatar pborate

Updated account activity dao.

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@179458 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 2c678b2f
...@@ -5,6 +5,7 @@ import java.io.FileFilter; ...@@ -5,6 +5,7 @@ import java.io.FileFilter;
import java.io.IOException; import java.io.IOException;
import java.lang.reflect.Array; import java.lang.reflect.Array;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.security.Timestamp;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalDate; import java.time.LocalDate;
...@@ -46,10 +47,25 @@ public class AccountActivityDao ...@@ -46,10 +47,25 @@ public class AccountActivityDao
System.out.println("getUserActivityData>>>"); System.out.println("getUserActivityData>>>");
profileId=profileId.trim(); profileId=profileId.trim();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("YYYYMMdd");
String today = LocalDate.now().format(formatter);
System.out.println("today date ["+today+"]");
/* FOR MIN MAX LOGIN TIME , LOGOUT TIME AND BATTERY STATUS
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("dd-MM-YY");
String today1 = LocalDate.now().format(formatter1);
System.out.println("today1 date ["+today1+"]");
List<Object[]> minMaxTimeList= getMinMaxTime(today1);
System.out.println("minMaxTimeList::::::: ["+minMaxTimeList+"]");
List<Object[]> batteryStatus = getBatteryStatus(today1);
System.out.println("batteryStatus::::::: ["+batteryStatus+"]");
*/
if( "ADMIN".equalsIgnoreCase(profileId) || "ADM".equalsIgnoreCase(profileId) ) if( "ADMIN".equalsIgnoreCase(profileId) || "ADM".equalsIgnoreCase(profileId) )
{ {
List<JSONObject> fileDataList= getUserActivityFileData(null, "", "");
List<JSONObject> fileDataList= getUserActivityFileData(null,today);
System.out.println("getUserActivityData>>>"+ fileDataList); System.out.println("getUserActivityData>>>"+ fileDataList);
for(JSONObject fileDataObj : fileDataList ) for(JSONObject fileDataObj : fileDataList )
{ {
...@@ -69,7 +85,7 @@ public class AccountActivityDao ...@@ -69,7 +85,7 @@ public class AccountActivityDao
{ {
List<String> userDataList = getUserDetails(loginCode,profileId); List<String> userDataList = getUserDetails(loginCode,profileId);
List<JSONObject> fileDataList= getUserActivityFileData(userDataList, "", ""); List<JSONObject> fileDataList= getUserActivityFileData(userDataList, today);
JSONObject selfActivityData = null; JSONObject selfActivityData = null;
JSONArray teamActivityData = new JSONArray(); JSONArray teamActivityData = new JSONArray();
...@@ -91,6 +107,7 @@ public class AccountActivityDao ...@@ -91,6 +107,7 @@ public class AccountActivityDao
JSONObject teamMemberActivityData = createActivityData(userId, fileContents); JSONObject teamMemberActivityData = createActivityData(userId, fileContents);
teamActivityData.put(teamMemberActivityData); teamActivityData.put(teamMemberActivityData);
} }
System.out.println("selfActivityData::::::::: ["+selfActivityData+"]");
} }
if(fileDataList != null && fileDataList.size() > 0 ) if(fileDataList != null && fileDataList.size() > 0 )
{ {
...@@ -331,6 +348,7 @@ public class AccountActivityDao ...@@ -331,6 +348,7 @@ public class AccountActivityDao
return activityData; return activityData;
} }
/*
private ActivityTime calcTotalTime(JSONArray prevArray) throws JSONException private ActivityTime calcTotalTime(JSONArray prevArray) throws JSONException
{ {
ActivityTime firstTime = null; ActivityTime firstTime = null;
...@@ -366,6 +384,32 @@ public class AccountActivityDao ...@@ -366,6 +384,32 @@ public class AccountActivityDao
return firstTime; return firstTime;
} }
*/
private ActivityTime calcTotalTime(JSONArray prevArray) throws JSONException
{
String startTime, endTime="";
ActivityTime actTime = new ActivityTime();
System.out.println("Inside calcTotalTime");
int len = prevArray.length();
if( len > 0 )
{
JSONObject jsonObjectStart = prevArray.getJSONObject(0);
startTime = jsonObjectStart.getString("ACCESS_START_TIME");
JSONObject jsonObjectEnd = prevArray.getJSONObject( len - 1 );
endTime = jsonObjectEnd.optString("ACCESS_END_TIME");
System.out.println("ACCESS_START_TIME>>"+startTime);
System.out.println("ACCESS_END_TIME>>"+endTime);
actTime = new ActivityTime(startTime, endTime);
}
System.out.println( "ActivityTime calcTotalTime >> " + actTime );
return actTime;
}
public JSONObject processSessionIds(String userCode, NodeList activitySessIdNL) throws JSONException public JSONObject processSessionIds(String userCode, NodeList activitySessIdNL) throws JSONException
{ {
...@@ -557,6 +601,90 @@ public class AccountActivityDao ...@@ -557,6 +601,90 @@ public class AccountActivityDao
System.out.println("userDetailList >>>>>>>>>"+userDetailList); System.out.println("userDetailList >>>>>>>>>"+userDetailList);
return userDetailList; return userDetailList;
} }
public List<Object[]> getMinMaxTime(String today)
{
List<Object[]> minMaxTimeList = null;
try
{
// 1. Get Session object
System.out.println("Inside getUserDetails userId: [" + today + "]");
Session session = HibernateUtil.getSessionFactory(siteTranDB).openSession();
// 2. Create Query
Query query = session.createSQLQuery("select userid, min(LOGINTIME) as LOGINTIME , max(LOGOUTTIME)as LOGOUTTIME"
+ " from logintrace"
+ " where to_char(LOGINTIME,'dd-MM-yy') = '"+today+"'"
+ " and LOGIN_STATUS = 'T'"
+ " group by userid");
System.out.println("query result>>>>>"+query);
minMaxTimeList= (List<Object[]>)query.list();
for(Object[] minMaxTime: minMaxTimeList){
String id = (String)minMaxTime[0];
Date loginTime = (Date) minMaxTime[1];
Date logoutTime = (Date) minMaxTime[2];
System.out.println("minMaxTimeList query result:::::::"+minMaxTimeList.size());
System.out.println("minMaxTimeList query id::::::: ["+id+"] loginTime ["+loginTime+"] logoutTime ["+logoutTime+"]");
}
session.close();
}
catch (HibernateException e)
{
System.out.println("HibernateException :");
System.out.println(e.getMessage());
}
System.out.println("minMaxTimeList >>>>>>>>>"+minMaxTimeList.toString());
return minMaxTimeList;
}
public List<Object[]> getBatteryStatus(String today)
{
List<Object[]> batteryStatusList = null;
try
{
// 1. Get Session object
System.out.println("Inside getUserDetails userId: [" + today + "]");
Session session = HibernateUtil.getSessionFactory(siteTranDB).openSession();
// 2. Create Query
Query query = session.createSQLQuery("select A.userid, to_char(A.LOGINTIME,'dd-MM-yy hh24:mi:ss') IN_TIME, "
+ " to_char(A.LOGOUTTIME,'dd-MM-yy hh24:mi:ss') OUT_TIME, "
+ " A.LOGIN_BATTERY_STAT, "
+ " A.LOGOUT_BATTERY_STAT"
+ " from logintrace A,"
+ " ("
+ " select userid, min(LOGINTIME) as LOGINTIME , max(LOGOUTTIME)as LOGOUTTIME"
+ " from logintrace"
+ " where to_char(LOGINTIME,'dd-MM-yy') = '"+today+"'"
+ " and LOGIN_BATTERY_STAT is not null "
+ " and LOGOUT_BATTERY_STAT is not null"
+ " group by userid"
+ " )B"
+ " where A.userid= B.userid"
+ " and ( A.LOGINTIME = B.LOGINTIME"
+ " or A.LOGOUTTIME = B.LOGOUTTIME )"
+ " order by A.userid, A.LOGINTIME"
+ "");
batteryStatusList= (List<Object[]>)query.list();
for(Object[] batteryStatus: batteryStatusList){
String id = (String)batteryStatus[0];
String loginTime = (String) batteryStatus[1];
System.out.println("batteryStatusList query result:::::::"+batteryStatusList.size()+"] userid ["+id);
System.out.println("batteryStatusList query result ID ["+id+"] loginTime ["+loginTime+"]");
}
session.close();
}
catch (HibernateException e)
{
System.out.println("HibernateException :");
System.out.println(e.getMessage());
}
System.out.println("batteryStatusList >>>>>>>>>"+batteryStatusList.toString());
return batteryStatusList;
}
public JSONArray processActivityAction(Node activityChildNode, JSONArray eventArray) throws JSONException public JSONArray processActivityAction(Node activityChildNode, JSONArray eventArray) throws JSONException
{ {
...@@ -615,12 +743,10 @@ public class AccountActivityDao ...@@ -615,12 +743,10 @@ public class AccountActivityDao
return eventObj; return eventObj;
} }
public List<JSONObject> getUserActivityFileData(List<String> users, String fromDate, String toDate) throws IOException, JSONException // public List<JSONObject> getUserActivityFileData(List<String> users, String fromDate, String toDate) throws IOException, JSONException
{ // {
public List<JSONObject> getUserActivityFileData(List<String> users, String today) throws IOException, JSONException
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("YYYYMMdd"); {
String today = LocalDate.now().format(formatter);
List<JSONObject> filesArrayList = new ArrayList<JSONObject>(); List<JSONObject> filesArrayList = new ArrayList<JSONObject>();
String jbossPath=CommonConstants.JBOSSHOME; String jbossPath=CommonConstants.JBOSSHOME;
System.out.println("CommonConstants.JBOSSHOME ["+CommonConstants.JBOSSHOME+"]"); System.out.println("CommonConstants.JBOSSHOME ["+CommonConstants.JBOSSHOME+"]");
...@@ -631,7 +757,7 @@ public class AccountActivityDao ...@@ -631,7 +757,7 @@ public class AccountActivityDao
File[] userActivityFiles = userActivityFolder.listFiles(new FileFilter() { File[] userActivityFiles = userActivityFolder.listFiles(new FileFilter() {
@Override @Override
public boolean accept(File pathname) { public boolean accept(File pathname) {
return pathname.getName().endsWith(".txt"); return pathname.getName().endsWith(today+".txt");
} }
}); });
......
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