Commit d14e67b7 authored by pborate's avatar pborate

Updated account activity dao.


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@179983 ce508802-f39f-4f6c-b175-0d175dae99d5
parent eb989edd
...@@ -60,6 +60,7 @@ public class AccountActivityDao ...@@ -60,6 +60,7 @@ public class AccountActivityDao
String todayFormat = LocalDate.now().format(formatter1); String todayFormat = LocalDate.now().format(formatter1);
System.out.println("today1 date ["+todayFormat+"]"); System.out.println("today1 date ["+todayFormat+"]");
/* For ADMIN and ADM user all users data read */
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);
...@@ -69,7 +70,9 @@ public class AccountActivityDao ...@@ -69,7 +70,9 @@ public class AccountActivityDao
List<String> loginUserList = getLoginUsers(todayFormat); List<String> loginUserList = getLoginUsers(todayFormat);
JSONObject activityData = new JSONObject(); JSONObject activityData = new JSONObject();
System.out.println("loginUserList in Admin case:::::"+loginUserList); System.out.println("loginUserList in Admin case:::::"+loginUserList);
if(fileDataList.isEmpty()){
if(fileDataList.isEmpty()) //No User perform userActivity.
{
if(loginUserList != null){ if(loginUserList != null){
for(String usersId : loginUserList){ for(String usersId : loginUserList){
activityData=fileNotFoundUsers(activityData,minMaxTimeList,minMaxBatteryStatus,usersId); activityData=fileNotFoundUsers(activityData,minMaxTimeList,minMaxBatteryStatus,usersId);
...@@ -78,10 +81,10 @@ public class AccountActivityDao ...@@ -78,10 +81,10 @@ public class AccountActivityDao
} }
System.out.println("activityDataFinal for if"+activityDataFinal); System.out.println("activityDataFinal for if"+activityDataFinal);
} }
else else //User perform userActivity
{ {
List<String> fileUsersList = new ArrayList<String>(); List<String> fileUsersList = new ArrayList<String>();
for(JSONObject fileDataObj : fileDataList ) for(JSONObject fileDataObj : fileDataList )
{ {
String userId = fileDataObj.optString("userId"); String userId = fileDataObj.optString("userId");
String activityDate = fileDataObj.optString("activityDate"); String activityDate = fileDataObj.optString("activityDate");
...@@ -94,7 +97,7 @@ public class AccountActivityDao ...@@ -94,7 +97,7 @@ public class AccountActivityDao
activityData = checkUserForBatteryStatus(activityData, minMaxBatteryStatus,userId) ; activityData = checkUserForBatteryStatus(activityData, minMaxBatteryStatus,userId) ;
activityDataFinal.put(activityData); activityDataFinal.put(activityData);
} }
loginUserList.removeAll(fileUsersList); loginUserList.removeAll(fileUsersList); //For some user who didn't perform userActivity
System.out.println("loginUserList after:::"+loginUserList); System.out.println("loginUserList after:::"+loginUserList);
for(String usersId : loginUserList) for(String usersId : loginUserList)
{ {
...@@ -105,9 +108,10 @@ public class AccountActivityDao ...@@ -105,9 +108,10 @@ public class AccountActivityDao
activityDataFinal = prepareAllUsersData(activityDataFinal); activityDataFinal = prepareAllUsersData(activityDataFinal);
} }
/* For Profile Ids except ADMIN and ADM */
else else
{ {
List<String> userDataList = getUserDetails(loginCode,profileId); List<String> userDataList = getUserDetails(loginCode,profileId); // For User who have team
System.out.println("userDataList AFTER>>>"+userDataList); System.out.println("userDataList AFTER>>>"+userDataList);
HashMap<String, JSONObject> minMaxTimeList= getMinMaxTime(todayFormat,userDataList); HashMap<String, JSONObject> minMaxTimeList= getMinMaxTime(todayFormat,userDataList);
HashMap<String, JSONObject> minMaxBatteryStatus = getBatteryStatus(todayFormat); HashMap<String, JSONObject> minMaxBatteryStatus = getBatteryStatus(todayFormat);
...@@ -124,7 +128,8 @@ public class AccountActivityDao ...@@ -124,7 +128,8 @@ public class AccountActivityDao
System.out.println("userDataList AFTER>>>"+userDataList); System.out.println("userDataList AFTER>>>"+userDataList);
System.out.println("userDataList.size AFTER>>>"+userDataList.size()); System.out.println("userDataList.size AFTER>>>"+userDataList.size());
if(fileDataList.isEmpty()){ if(fileDataList.isEmpty()) // For users which is in userDataList didn't perform any userActivity .
{
selfActivityData=fileNotFoundUsers(selfActivityData,minMaxTimeList,minMaxBatteryStatus,loginCode); selfActivityData=fileNotFoundUsers(selfActivityData,minMaxTimeList,minMaxBatteryStatus,loginCode);
System.out.println("selfActivityData after:::"+selfActivityData); System.out.println("selfActivityData after:::"+selfActivityData);
userDataList.remove(loginCode); userDataList.remove(loginCode);
...@@ -142,7 +147,7 @@ public class AccountActivityDao ...@@ -142,7 +147,7 @@ public class AccountActivityDao
System.out.println("activityDataFinal for if"+activityDataFinal); System.out.println("activityDataFinal for if"+activityDataFinal);
} }
else else //For users which is in userDataList perform userActivity.
{ {
List<String> fileUsersList = new ArrayList<String>(); List<String> fileUsersList = new ArrayList<String>();
for(JSONObject fileDataObj : fileDataList ) for(JSONObject fileDataObj : fileDataList )
...@@ -172,7 +177,7 @@ public class AccountActivityDao ...@@ -172,7 +177,7 @@ public class AccountActivityDao
} }
userDataList.removeAll(fileUsersList); userDataList.removeAll(fileUsersList);
System.out.println("userDataList after:::"+userDataList); System.out.println("userDataList after:::"+userDataList);
for(String usersId : userDataList) for(String usersId : userDataList) // For users which is in userDataList if some user didn't perform user Activity
{ {
if( usersId.equalsIgnoreCase(loginCode)) if( usersId.equalsIgnoreCase(loginCode))
{ {
...@@ -193,7 +198,8 @@ public class AccountActivityDao ...@@ -193,7 +198,8 @@ public class AccountActivityDao
selfActivityData = updateMinMaxTime(selfActivityData, minMaxTimeList.get(loginCode)) ; selfActivityData = updateMinMaxTime(selfActivityData, minMaxTimeList.get(loginCode)) ;
selfActivityData = checkUserForBatteryStatus(selfActivityData, minMaxBatteryStatus,loginCode) ; selfActivityData = checkUserForBatteryStatus(selfActivityData, minMaxBatteryStatus,loginCode) ;
} }
if(teamActivityData.length()>0){ if(teamActivityData.length()>0)
{
selfActivityData.put("TEAM", teamActivityData); selfActivityData.put("TEAM", teamActivityData);
} }
activityDataFinal.put(selfActivityData); activityDataFinal.put(selfActivityData);
...@@ -205,11 +211,12 @@ public class AccountActivityDao ...@@ -205,11 +211,12 @@ public class AccountActivityDao
return activityDataFinal.toString(); return activityDataFinal.toString();
} }
/*If user activity file not Present*/
private JSONObject fileNotFoundUsers(JSONObject selfActivityData,HashMap<String, JSONObject> minMaxTimeList,HashMap<String, JSONObject> minMaxBatteryStatus,String usersId) throws JSONException { private JSONObject fileNotFoundUsers(JSONObject selfActivityData,HashMap<String, JSONObject> minMaxTimeList,HashMap<String, JSONObject> minMaxBatteryStatus,String usersId) throws JSONException {
selfActivityData = getUserDetail(new JSONObject(), usersId); selfActivityData = getUserDetail(new JSONObject(), usersId);
selfActivityData = checkUserForMinMaxTime(selfActivityData, minMaxTimeList,usersId) ; selfActivityData = checkUserForMinMaxTime(selfActivityData, minMaxTimeList,usersId) ;
selfActivityData = checkUserForBatteryStatus(selfActivityData, minMaxBatteryStatus,usersId) ; selfActivityData = checkUserForBatteryStatus(selfActivityData, minMaxBatteryStatus,usersId) ;
return selfActivityData; return selfActivityData;
} }
private JSONArray prepareAllUsersData(JSONArray activityDataFinal) { private JSONArray prepareAllUsersData(JSONArray activityDataFinal) {
...@@ -225,7 +232,7 @@ public class AccountActivityDao ...@@ -225,7 +232,7 @@ public class AccountActivityDao
private JSONObject updateMinMaxTime(JSONObject activityData, JSONObject minMaxTimeObj) throws JSONException private JSONObject updateMinMaxTime(JSONObject activityData, JSONObject minMaxTimeObj) throws JSONException
{ {
if(minMaxTimeObj !=null) if(minMaxTimeObj !=null)
{ {
activityData.put("LOGIN_TIME", checkNull(minMaxTimeObj.opt("loginTime"))); activityData.put("LOGIN_TIME", checkNull(minMaxTimeObj.opt("loginTime")));
activityData.put("LOGOUT_TIME", checkNull(minMaxTimeObj.opt("logoutTime"))); activityData.put("LOGOUT_TIME", checkNull(minMaxTimeObj.opt("logoutTime")));
...@@ -249,7 +256,7 @@ public class AccountActivityDao ...@@ -249,7 +256,7 @@ public class AccountActivityDao
activityData = updateMinMaxTime(activityData, minMaxTimeObj.get(userId)) ; activityData = updateMinMaxTime(activityData, minMaxTimeObj.get(userId)) ;
return activityData; return activityData;
} }
else else // If perticular userId data not present.
{ {
activityData = updateMinMaxTime(activityData, null) ; activityData = updateMinMaxTime(activityData, null) ;
return activityData; return activityData;
...@@ -273,7 +280,6 @@ public class AccountActivityDao ...@@ -273,7 +280,6 @@ public class AccountActivityDao
System.out.println("minMaxBatteryStatus else query result:::::::"+minMaxBatteryStatus); System.out.println("minMaxBatteryStatus else query result:::::::"+minMaxBatteryStatus);
return activityData; return activityData;
} }
} }
private JSONObject checkUserForBatteryStatus(JSONObject activityData,HashMap<String, JSONObject> minMaxBatteryStatus,String userId) throws JSONException private JSONObject checkUserForBatteryStatus(JSONObject activityData,HashMap<String, JSONObject> minMaxBatteryStatus,String userId) throws JSONException
...@@ -286,7 +292,7 @@ public class AccountActivityDao ...@@ -286,7 +292,7 @@ public class AccountActivityDao
} }
else else
{ {
activityData = updateMinMaxBatteryStatus(activityData, null) ; activityData = updateMinMaxBatteryStatus(activityData, null) ; //If perticular userId data not present.
return activityData; return activityData;
} }
...@@ -304,6 +310,7 @@ public class AccountActivityDao ...@@ -304,6 +310,7 @@ public class AccountActivityDao
return activityData; return activityData;
} }
/* Read user activity file */
private JSONObject createActivityData(String userCode, String activityLogXml) private JSONObject createActivityData(String userCode, String activityLogXml)
{ {
E12GenericUtility e12GenericUtility = new E12GenericUtility(); E12GenericUtility e12GenericUtility = new E12GenericUtility();
...@@ -538,24 +545,21 @@ public class AccountActivityDao ...@@ -538,24 +545,21 @@ public class AccountActivityDao
private ActivityTime calcTotalTime(JSONArray prevArray) throws JSONException private ActivityTime calcTotalTime(JSONArray prevArray) throws JSONException
{ {
String startTime, endTime="";
String startTime, endTime=""; ActivityTime actTime = new ActivityTime();
ActivityTime actTime = new ActivityTime(); System.out.println("Inside calcTotalTime");
System.out.println("Inside calcTotalTime"); int len = prevArray.length();
int len = prevArray.length();
if( len > 0 ) if( len > 0 )
{ {
JSONObject jsonObjectStart = prevArray.getJSONObject(0); JSONObject jsonObjectStart = prevArray.getJSONObject(0);
startTime = jsonObjectStart.getString("ACCESS_START_TIME"); startTime = jsonObjectStart.getString("ACCESS_START_TIME");
JSONObject jsonObjectEnd = prevArray.getJSONObject( len - 1 ); JSONObject jsonObjectEnd = prevArray.getJSONObject( len - 1 );
endTime = jsonObjectEnd.optString("ACCESS_END_TIME"); endTime = jsonObjectEnd.optString("ACCESS_END_TIME");
System.out.println("ACCESS_START_TIME>>"+startTime); System.out.println("ACCESS_START_TIME>>"+startTime);
System.out.println("ACCESS_END_TIME>>"+endTime); System.out.println("ACCESS_END_TIME>>"+endTime);
actTime = new ActivityTime(startTime, endTime); actTime = new ActivityTime(startTime, endTime);
} }
System.out.println( "ActivityTime calcTotalTime >> " + actTime ); System.out.println( "ActivityTime calcTotalTime >> " + actTime );
return actTime; return actTime;
...@@ -658,9 +662,9 @@ public class AccountActivityDao ...@@ -658,9 +662,9 @@ public class AccountActivityDao
Session session = HibernateUtil.getSessionFactory(siteTranDB).openSession(); Session session = HibernateUtil.getSessionFactory(siteTranDB).openSession();
// 2. Create Query // 2. Create Query
System.out.println("Inside getLogDetails sessionId: [" + sessionIds + "] USER CODE ["+userCode+"]"); System.out.println("Inside getLogDetails sessionId: [" + sessionIds + "] USER CODE ["+userCode+"]");
Query query = session.createQuery("FROM LoginTrace where userId='" + userCode + "' AND sessionId IN ( " + sessionIds + " ) "); Query query = session.createQuery("FROM LoginTrace where userId='" + userCode + "' AND sessionId IN ( " + sessionIds + " ) ");
System.out.println("Inside getLogDetails query: [" + query + "]"); System.out.println("Inside getLogDetails query: [" + query + "]");
loginTraceList = query.getResultList(); loginTraceList = query.getResultList();
System.out.println("getLogDetails: loginTraceList [" + loginTraceList + "]"); System.out.println("getLogDetails: loginTraceList [" + loginTraceList + "]");
...@@ -684,7 +688,6 @@ public class AccountActivityDao ...@@ -684,7 +688,6 @@ public class AccountActivityDao
// 1. Get Session object // 1. Get Session object
Session session = HibernateUtil.getSessionFactory(siteTranDB).openSession(); Session session = HibernateUtil.getSessionFactory(siteTranDB).openSession();
// 2. Create Query // 2. Create Query
Query query = session.createQuery("FROM Employee e WHERE e.empCode IN ( " Query query = session.createQuery("FROM Employee e WHERE e.empCode IN ( "
+ " SELECT u.empCode " + " SELECT u.empCode "
+ " FROM UserProfile u " + " FROM UserProfile u "
...@@ -692,7 +695,6 @@ public class AccountActivityDao ...@@ -692,7 +695,6 @@ public class AccountActivityDao
+ " )"); + " )");
System.out.println("Inside getLogDetails query: [" + query + "]"); System.out.println("Inside getLogDetails query: [" + query + "]");
List<Employee> 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 ) if( employeeDataList != null && employeeDataList.size() > 0 )
...@@ -1215,4 +1217,3 @@ class ActivityTime implements java.io.Serializable ...@@ -1215,4 +1217,3 @@ class ActivityTime implements java.io.Serializable
return this.toJSON().toString(); return this.toJSON().toString();
} }
} }
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