modifiche per task
This commit is contained in:
@@ -1066,55 +1066,47 @@ public class ActivityService {
|
||||
if (activityDTOS != null) {
|
||||
List<String> elencoId = Stream.of(activityDTOS).map(ActivityDTO::getIdAttivita).toList();
|
||||
sql =
|
||||
"SELECT parent.activity_id,\n" +
|
||||
" ISNULL(stb_activity.user_name, parent.user_name) AS user_name,\n" +
|
||||
"SELECT stb_activity.parent_activity_id,\n" +
|
||||
" stb_activity.user_name,\n" +
|
||||
" stb_user.full_name,\n" +
|
||||
" MAX(IIF(stb_activity.effective_date <= CAST(GETDATE() AS DATE), stb_activity.effective_date,\n" +
|
||||
" NULL)) AS last_activity_date,\n" +
|
||||
" MIN(IIF(stb_activity.estimated_date >= CAST(GETDATE() AS DATE), stb_activity.estimated_date,\n" +
|
||||
" NULL)) AS next_activity_date,\n" +
|
||||
" MAX(IIF(\n" +
|
||||
" ((stb_activity.estimated_date BETWEEN dbo.f_getfirstdayofweek(GETDATE()) AND dbo.f_getlastdayofweek(GETDATE()) OR\n" +
|
||||
" stb_activity.estimated_date IS NULL) AND stb_activity.effective_date IS NULL),\n" +
|
||||
" stb_activity.activity_description,\n" +
|
||||
" NULL)) AS activity_description,\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(ISNULL(stb_activity.effective_date, stb_activity.estimated_date),\n" +
|
||||
" parent.estimated_date) BETWEEN dbo.f_getfirstdayofweek(GETDATE()) AND dbo.f_getlastdayofweek(GETDATE()),\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" +
|
||||
" 0)) AS BIT) AS planned_this_week,\n" +
|
||||
" CAST(MAX(IIF(\n" +
|
||||
" ISNULL(ISNULL(stb_activity.effective_date, stb_activity.estimated_date),\n" +
|
||||
" parent.estimated_date) BETWEEN dbo.f_getfirstdayofweek(DATEADD(WEEK, -1, GETDATE())) AND dbo.f_getlastdayofweek(DATEADD(WEEK, -1, GETDATE())),\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" +
|
||||
" 0)) AS BIT) AS planned_previous_week,\n" +
|
||||
" CAST(MAX(IIF(\n" +
|
||||
" ISNULL(ISNULL(stb_activity.effective_date, stb_activity.estimated_date),\n" +
|
||||
" parent.estimated_date) BETWEEN dbo.f_getfirstdayofweek(DATEADD(WEEK, 1, GETDATE())) AND dbo.f_getlastdayofweek(DATEADD(WEEK, 1, GETDATE())),\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(stb_activity.effective_date IS NOT NULL AND\n" +
|
||||
" stb_activity.effective_date BETWEEN dbo.f_getfirstdayofmonth(GETDATE()) AND EOMONTH(GETDATE()), 1,\n" +
|
||||
" 0)) AS BIT) AS done_this_month,\n" +
|
||||
" CAST(MAX(IIF(stb_activity.effective_date IS NOT NULL AND\n" +
|
||||
" stb_activity.effective_date BETWEEN dbo.f_getfirstdayofmonth(DATEADD(MONTH, -1, GETDATE())) AND EOMONTH(DATEADD(MONTH, -1, GETDATE())),\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(stb_activity.effective_date IS NOT NULL AND\n" +
|
||||
" DATEPART(QUARTER, stb_activity.effective_date) = DATEPART(QUARTER, GETDATE()), 1,\n" +
|
||||
" 0)) AS BIT) AS done_this_quarter,\n" +
|
||||
" CAST(MAX(IIF(stb_activity.effective_date IS NOT NULL AND DATEPART(QUARTER, stb_activity.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 parent\n" +
|
||||
" LEFT OUTER JOIN stb_activity\n" +
|
||||
" ON stb_activity.parent_activity_id = parent.activity_id AND stb_activity.flag_tipologia = 'A'\n" +
|
||||
" INNER JOIN stb_user ON ISNULL(stb_activity.user_name, parent.user_name) = stb_user.user_name\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 parent.activity_id IN (" + UtilityDB.listValueToString(elencoId) + ")\n" +
|
||||
"GROUP BY parent.activity_id,\n" +
|
||||
" ISNULL(stb_activity.user_name, parent.user_name),\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);
|
||||
|
||||
@@ -52,6 +52,11 @@ import it.integry.ems_model.service.SetupGest;
|
||||
import it.integry.ems_model.types.OperationType;
|
||||
import it.integry.ems_model.utility.*;
|
||||
import it.integry.ems_model.utility.dto.ConvertQueryDTO;
|
||||
import it.integry.firebase.dto.MessageDTO;
|
||||
import it.integry.firebase.dto.NotificationDTO;
|
||||
import it.integry.firebase.dto.apns.ApnsConfigDTO;
|
||||
import it.integry.firebase.dto.apns.ApsDTO;
|
||||
import it.integry.firebase.service.NotificationService;
|
||||
import it.integry.security.cache.SecretKeyCacheComponent;
|
||||
import it.integry.security.dto.LoginRequestDTO;
|
||||
import kotlin.Triple;
|
||||
@@ -113,6 +118,8 @@ public class SystemController {
|
||||
|
||||
@Autowired
|
||||
private RequestDataDTO requestDataDTO;
|
||||
@Autowired
|
||||
private NotificationService notificationService;
|
||||
|
||||
|
||||
@GetMapping(value = "/system/ok")
|
||||
@@ -822,6 +829,44 @@ public class SystemController {
|
||||
multiDBTransactionManager);
|
||||
}
|
||||
activity.setActivityId(stbActivity.getActivityId());
|
||||
|
||||
|
||||
if (!stbActivity.getUserCreator().equalsIgnoreCase(stbActivity.getUserName()) &&
|
||||
!stbActivity.getUserName().equalsIgnoreCase("T0003") &&
|
||||
stbActivity.getActivityTypeId().equalsIgnoreCase("TICKET")) {
|
||||
|
||||
String title = "E' stato inserito un ticket";
|
||||
String message = String.format("E' stato inserito il ticket #%s commessa %s. %s", stbActivity.getActivityId(),
|
||||
stbActivity.getCodJcom(), stbActivity.getActivityDescription());
|
||||
|
||||
List<String> utenti = new ArrayList<>();
|
||||
if (stbActivity.getUserName().equalsIgnoreCase("DEV")) {
|
||||
utenti.add("F0003");
|
||||
utenti.add("F0237");
|
||||
utenti.add("F0060");
|
||||
} else {
|
||||
utenti.add(stbActivity.getUserName());
|
||||
}
|
||||
|
||||
for (String username : utenti) {
|
||||
notificationService.sendNotificationToUserDevices(new MessageDTO()
|
||||
.setUserName(username)
|
||||
.setAppName(WtbUserDeviceToken.AppName.TASK)
|
||||
.setNotification(new NotificationDTO()
|
||||
.setTitle(title)
|
||||
.setBody(message)
|
||||
)
|
||||
.setApns(new ApnsConfigDTO()
|
||||
.setAps(new ApsDTO()
|
||||
.setSound("default")
|
||||
.setContentAvailable(true)
|
||||
)
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return ServiceRestResponse.createPositiveResponse(activity);
|
||||
|
||||
} catch (Exception e) {
|
||||
|
||||
Reference in New Issue
Block a user