Merge remote-tracking branch 'origin/develop' into develop
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
This commit is contained in:
@@ -1003,73 +1003,76 @@ public class ActivityService {
|
||||
}
|
||||
|
||||
List<ActivityDTO> activityDTOS = UtilityDB.executeSimpleQueryDTO(multiDBTransactionManager.getPrimaryConnection(), sql, ActivityDTO.class);
|
||||
List<String> elencoId = Stream.of(activityDTOS).map(ActivityDTO::getIdAttivita).toList();
|
||||
sql =
|
||||
"SELECT stb_activity.parent_activity_id,\n" +
|
||||
" stb_activity.user_name,\n" +
|
||||
" stb_user.full_name,\n" +
|
||||
" MAX(IIF(effective_date <= CAST(GETDATE() AS DATE), effective_date, NULL)) AS last_activity_date,\n" +
|
||||
" MIN(IIF(estimated_date >= CAST(GETDATE() AS DATE), estimated_date, NULL)) AS next_activity_date,\n" +
|
||||
" MAX(IIF(((estimated_date BETWEEN dbo.f_getfirstdayofweek(GETDATE()) AND dbo.f_getlastdayofweek(GETDATE()) OR\n" +
|
||||
" estimated_date IS NULL) AND effective_date IS NULL), stb_activity.activity_description,\n" +
|
||||
" NULL)) AS activity_description,\n" +
|
||||
" CAST(MAX(IIF(\n" +
|
||||
" ISNULL(effective_date, estimated_date) BETWEEN dbo.f_getfirstdayofweek(GETDATE()) AND dbo.f_getlastdayofweek(GETDATE()),\n" +
|
||||
" 1,\n" +
|
||||
" 0)) AS BIT) AS planned_this_week,\n" +
|
||||
" CAST(MAX(IIF(\n" +
|
||||
" ISNULL(effective_date, estimated_date) BETWEEN dbo.f_getfirstdayofweek(DATEADD(WEEK, -1, GETDATE())) AND dbo.f_getlastdayofweek(DATEADD(WEEK, -1, GETDATE())),\n" +
|
||||
" 1,\n" +
|
||||
" 0)) AS BIT) AS planned_previous_week,\n" +
|
||||
" CAST(MAX(IIF(\n" +
|
||||
" ISNULL(effective_date, estimated_date) BETWEEN dbo.f_getfirstdayofweek(DATEADD(WEEK, 1, GETDATE())) AND dbo.f_getlastdayofweek(DATEADD(WEEK, 1, GETDATE())),\n" +
|
||||
" 1,\n" +
|
||||
" 0)) AS BIT) AS planned_next_week,\n" +
|
||||
" CAST(MAX(IIF(effective_date IS NOT NULL AND\n" +
|
||||
" effective_date BETWEEN dbo.f_getfirstdayofmonth(GETDATE()) AND EOMONTH(GETDATE()), 1,\n" +
|
||||
" 0)) AS BIT) AS done_this_month,\n" +
|
||||
" CAST(MAX(IIF(effective_date IS NOT NULL AND\n" +
|
||||
" effective_date BETWEEN dbo.f_getfirstdayofmonth(DATEADD(MONTH, -1, GETDATE())) AND EOMONTH(DATEADD(MONTH, -1, GETDATE())),\n" +
|
||||
" 1,\n" +
|
||||
" 0)) AS BIT) AS done_previous_month,\n" +
|
||||
" CAST(MAX(IIF(effective_date IS NOT NULL AND\n" +
|
||||
" DATEPART(QUARTER, effective_date) = DATEPART(QUARTER, GETDATE()), 1,\n" +
|
||||
" 0)) AS BIT) AS done_this_quarter,\n" +
|
||||
" CAST(MAX(IIF(effective_date IS NOT NULL AND DATEPART(QUARTER, effective_date) =\n" +
|
||||
" DATEPART(QUARTER, DATEADD(MONTH, -3, GETDATE())), 1,\n" +
|
||||
" 0)) AS BIT) AS done_previous_quarter,\n" +
|
||||
" SUM(jtb_rlavr.ore) AS ore_fatte\n" +
|
||||
"FROM stb_activity\n" +
|
||||
" INNER JOIN stb_user ON stb_activity.user_name = stb_user.user_name\n" +
|
||||
" LEFT OUTER JOIN jtb_rlavr ON stb_activity.activity_id = jtb_rlavr.activity_id\n" +
|
||||
"WHERE stb_activity.flag_tipologia = 'A'\n" +
|
||||
" AND stb_activity.parent_activity_id IN (" + UtilityDB.listValueToString(elencoId) + ")\n" +
|
||||
"GROUP BY stb_activity.parent_activity_id,\n" +
|
||||
" stb_activity.user_name,\n" +
|
||||
" stb_user.full_name";
|
||||
|
||||
List<ActivityDTO.WorkedHours> activityResponseDtoWorkedHours = UtilityDB.executeSimpleQueryDTO(multiDBTransactionManager.getPrimaryConnection(), sql, ActivityDTO.WorkedHours.class);
|
||||
if (activityDTOS != null) {
|
||||
List<String> elencoId = Stream.of(activityDTOS).map(ActivityDTO::getIdAttivita).toList();
|
||||
sql =
|
||||
"SELECT stb_activity.parent_activity_id,\n" +
|
||||
" stb_activity.user_name,\n" +
|
||||
" stb_user.full_name,\n" +
|
||||
" MAX(IIF(effective_date <= CAST(GETDATE() AS DATE), effective_date, NULL)) AS last_activity_date,\n" +
|
||||
" MIN(IIF(estimated_date >= CAST(GETDATE() AS DATE), estimated_date, NULL)) AS next_activity_date,\n" +
|
||||
" MAX(IIF(((estimated_date BETWEEN dbo.f_getfirstdayofweek(GETDATE()) AND dbo.f_getlastdayofweek(GETDATE()) OR\n" +
|
||||
" estimated_date IS NULL) AND effective_date IS NULL), stb_activity.activity_description,\n" +
|
||||
" NULL)) AS activity_description,\n" +
|
||||
" CAST(MAX(IIF(\n" +
|
||||
" ISNULL(effective_date, estimated_date) BETWEEN dbo.f_getfirstdayofweek(GETDATE()) AND dbo.f_getlastdayofweek(GETDATE()),\n" +
|
||||
" 1,\n" +
|
||||
" 0)) AS BIT) AS planned_this_week,\n" +
|
||||
" CAST(MAX(IIF(\n" +
|
||||
" ISNULL(effective_date, estimated_date) BETWEEN dbo.f_getfirstdayofweek(DATEADD(WEEK, -1, GETDATE())) AND dbo.f_getlastdayofweek(DATEADD(WEEK, -1, GETDATE())),\n" +
|
||||
" 1,\n" +
|
||||
" 0)) AS BIT) AS planned_previous_week,\n" +
|
||||
" CAST(MAX(IIF(\n" +
|
||||
" ISNULL(effective_date, estimated_date) BETWEEN dbo.f_getfirstdayofweek(DATEADD(WEEK, 1, GETDATE())) AND dbo.f_getlastdayofweek(DATEADD(WEEK, 1, GETDATE())),\n" +
|
||||
" 1,\n" +
|
||||
" 0)) AS BIT) AS planned_next_week,\n" +
|
||||
" CAST(MAX(IIF(effective_date IS NOT NULL AND\n" +
|
||||
" effective_date BETWEEN dbo.f_getfirstdayofmonth(GETDATE()) AND EOMONTH(GETDATE()), 1,\n" +
|
||||
" 0)) AS BIT) AS done_this_month,\n" +
|
||||
" CAST(MAX(IIF(effective_date IS NOT NULL AND\n" +
|
||||
" effective_date BETWEEN dbo.f_getfirstdayofmonth(DATEADD(MONTH, -1, GETDATE())) AND EOMONTH(DATEADD(MONTH, -1, GETDATE())),\n" +
|
||||
" 1,\n" +
|
||||
" 0)) AS BIT) AS done_previous_month,\n" +
|
||||
" CAST(MAX(IIF(effective_date IS NOT NULL AND\n" +
|
||||
" DATEPART(QUARTER, effective_date) = DATEPART(QUARTER, GETDATE()), 1,\n" +
|
||||
" 0)) AS BIT) AS done_this_quarter,\n" +
|
||||
" CAST(MAX(IIF(effective_date IS NOT NULL AND DATEPART(QUARTER, effective_date) =\n" +
|
||||
" DATEPART(QUARTER, DATEADD(MONTH, -3, GETDATE())), 1,\n" +
|
||||
" 0)) AS BIT) AS done_previous_quarter,\n" +
|
||||
" SUM(jtb_rlavr.ore) AS ore_fatte\n" +
|
||||
"FROM stb_activity\n" +
|
||||
" INNER JOIN stb_user ON stb_activity.user_name = stb_user.user_name\n" +
|
||||
" LEFT OUTER JOIN jtb_rlavr ON stb_activity.activity_id = jtb_rlavr.activity_id\n" +
|
||||
"WHERE stb_activity.flag_tipologia = 'A'\n" +
|
||||
" AND stb_activity.parent_activity_id IN (" + UtilityDB.listValueToString(elencoId) + ")\n" +
|
||||
"GROUP BY stb_activity.parent_activity_id,\n" +
|
||||
" stb_activity.user_name,\n" +
|
||||
" stb_user.full_name";
|
||||
|
||||
if (activityResponseDtoWorkedHours != null) {
|
||||
final HashMap<String, List<ActivityDTO.WorkedHours>> subActivityList = activityResponseDtoWorkedHours.stream()
|
||||
.collect(Collectors.groupingBy(
|
||||
ActivityDTO.WorkedHours::getParentActivityId,
|
||||
LinkedHashMap::new,
|
||||
Collectors.toList()
|
||||
));
|
||||
List<ActivityDTO.WorkedHours> activityResponseDtoWorkedHours = UtilityDB.executeSimpleQueryDTO(multiDBTransactionManager.getPrimaryConnection(), sql, ActivityDTO.WorkedHours.class);
|
||||
|
||||
for (ActivityDTO activityResponse : activityDTOS) {
|
||||
if (subActivityList.containsKey(activityResponse.getIdAttivita())) {
|
||||
List<ActivityDTO.WorkedHours> workedHours = subActivityList.get(activityResponse.getIdAttivita());
|
||||
if (activityResponseDtoWorkedHours != null) {
|
||||
final HashMap<String, List<ActivityDTO.WorkedHours>> subActivityList = activityResponseDtoWorkedHours.stream()
|
||||
.collect(Collectors.groupingBy(
|
||||
ActivityDTO.WorkedHours::getParentActivityId,
|
||||
LinkedHashMap::new,
|
||||
Collectors.toList()
|
||||
));
|
||||
|
||||
for (ActivityDTO.WorkedHours workedHour : workedHours) {
|
||||
if (workedHour.getActivityDescription() != null &&
|
||||
workedHour.getActivityDescription().equals(activityResponse.getDescrizione())) {
|
||||
workedHour.setActivityDescription(null);
|
||||
for (ActivityDTO activityResponse : activityDTOS) {
|
||||
if (subActivityList.containsKey(activityResponse.getIdAttivita())) {
|
||||
List<ActivityDTO.WorkedHours> workedHours = subActivityList.get(activityResponse.getIdAttivita());
|
||||
|
||||
for (ActivityDTO.WorkedHours workedHour : workedHours) {
|
||||
if (workedHour.getActivityDescription() != null &&
|
||||
workedHour.getActivityDescription().equals(activityResponse.getDescrizione())) {
|
||||
workedHour.setActivityDescription(null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
activityResponse.setWorkedHours(workedHours);
|
||||
activityResponse.setWorkedHours(workedHours);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user