Time issue resolve
This commit is contained in:
@@ -250,5 +250,6 @@ public class GepafinConstant {
|
|||||||
public static final String EVALUATIONCRITERIA_INVALID = "evaluationCriteria.invalid";
|
public static final String EVALUATIONCRITERIA_INVALID = "evaluationCriteria.invalid";
|
||||||
public static final String APPLICATION_NOT_IN_DRAFT_STATUS="application.not.in.draft.status";
|
public static final String APPLICATION_NOT_IN_DRAFT_STATUS="application.not.in.draft.status";
|
||||||
public static final String GET_ERROR_S3 = "get.error.s3";
|
public static final String GET_ERROR_S3 = "get.error.s3";
|
||||||
|
public static final String INVALID_APPLICATION_STATUS = "invalid.application.status";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import net.gepafin.tendermanagement.constants.GepafinConstant;
|
|||||||
import net.gepafin.tendermanagement.entities.ApplicationEntity;
|
import net.gepafin.tendermanagement.entities.ApplicationEntity;
|
||||||
import net.gepafin.tendermanagement.entities.AssignedApplicationsEntity;
|
import net.gepafin.tendermanagement.entities.AssignedApplicationsEntity;
|
||||||
import net.gepafin.tendermanagement.entities.UserEntity;
|
import net.gepafin.tendermanagement.entities.UserEntity;
|
||||||
|
import net.gepafin.tendermanagement.enums.ApplicationStatusTypeEnum;
|
||||||
import net.gepafin.tendermanagement.enums.AssignedApplicationEnum;
|
import net.gepafin.tendermanagement.enums.AssignedApplicationEnum;
|
||||||
import net.gepafin.tendermanagement.model.request.AssignedApplicationsRequest;
|
import net.gepafin.tendermanagement.model.request.AssignedApplicationsRequest;
|
||||||
import net.gepafin.tendermanagement.model.response.AssignedApplicationsResponse;
|
import net.gepafin.tendermanagement.model.response.AssignedApplicationsResponse;
|
||||||
@@ -46,6 +47,12 @@ public class AssignedApplicationsDao {
|
|||||||
throw new CustomValidationException(Status.BAD_REQUEST, Translator.toLocale(GepafinConstant.APPLICATION_ALREADY_ASSIGNED));
|
throw new CustomValidationException(Status.BAD_REQUEST, Translator.toLocale(GepafinConstant.APPLICATION_ALREADY_ASSIGNED));
|
||||||
}
|
}
|
||||||
ApplicationEntity application = applicationService.validateApplication(applicationId);
|
ApplicationEntity application = applicationService.validateApplication(applicationId);
|
||||||
|
if (Boolean.FALSE.equals(ApplicationStatusTypeEnum.SUBMIT.equals(application.getStatus()))) {
|
||||||
|
throw new CustomValidationException(
|
||||||
|
Status.BAD_REQUEST,
|
||||||
|
Translator.toLocale(GepafinConstant.INVALID_APPLICATION_STATUS)
|
||||||
|
);
|
||||||
|
}
|
||||||
UserEntity user = userService.validateUser(userId);
|
UserEntity user = userService.validateUser(userId);
|
||||||
AssignedApplicationsEntity assignment = createAssignmentEntity(application, user.getId(), assignedByUser, assignedApplicationsRequest);
|
AssignedApplicationsEntity assignment = createAssignmentEntity(application, user.getId(), assignedByUser, assignedApplicationsRequest);
|
||||||
AssignedApplicationsResponse assignApplicationToInstructorResponse = convertEntityToResponse(assignment, assignedApplicationsRequest);
|
AssignedApplicationsResponse assignApplicationToInstructorResponse = convertEntityToResponse(assignment, assignedApplicationsRequest);
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import java.time.LocalDateTime;
|
|||||||
import java.time.LocalTime;
|
import java.time.LocalTime;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import net.gepafin.tendermanagement.enums.CallStatusEnum;
|
import net.gepafin.tendermanagement.enums.CallStatusEnum;
|
||||||
|
import net.gepafin.tendermanagement.util.DynamicLocalTimeSerializer;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class CallResponse {
|
public class CallResponse {
|
||||||
@@ -47,8 +49,10 @@ public class CallResponse {
|
|||||||
|
|
||||||
private String phoneNumber;
|
private String phoneNumber;
|
||||||
|
|
||||||
|
@JsonSerialize(using = DynamicLocalTimeSerializer.class)
|
||||||
private LocalTime startTime;
|
private LocalTime startTime;
|
||||||
|
|
||||||
|
@JsonSerialize(using = DynamicLocalTimeSerializer.class)
|
||||||
private LocalTime endTime;
|
private LocalTime endTime;
|
||||||
|
|
||||||
private LocalDateTime createdDate;
|
private LocalDateTime createdDate;
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
package net.gepafin.tendermanagement.util;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.core.JsonGenerator;
|
||||||
|
import com.fasterxml.jackson.databind.JsonSerializer;
|
||||||
|
import com.fasterxml.jackson.databind.SerializerProvider;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.time.LocalTime;
|
||||||
|
import java.time.format.DateTimeFormatter;
|
||||||
|
|
||||||
|
public class DynamicLocalTimeSerializer extends JsonSerializer<LocalTime> {
|
||||||
|
private static final DateTimeFormatter HH_MM_FORMAT = DateTimeFormatter.ofPattern("HH:mm");
|
||||||
|
private static final DateTimeFormatter HH_MM_SS_FORMAT = DateTimeFormatter.ofPattern("HH:mm:ss");
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void serialize(LocalTime time, JsonGenerator gen, SerializerProvider serializers) throws IOException {
|
||||||
|
// Use HH:mm if seconds are 00, otherwise use HH:mm:ss
|
||||||
|
String formattedTime = (time.getSecond() == 0)
|
||||||
|
? time.format(HH_MM_FORMAT)
|
||||||
|
: time.format(HH_MM_SS_FORMAT);
|
||||||
|
|
||||||
|
gen.writeString(formattedTime);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -275,4 +275,4 @@ assigned.application.deleted.success=Assigned Application successfully deleted.
|
|||||||
assigned.application.get.success=Assigned Application details fetched successfully.
|
assigned.application.get.success=Assigned Application details fetched successfully.
|
||||||
assigned.application.update.successfully=Assigned Application updated successfully.
|
assigned.application.update.successfully=Assigned Application updated successfully.
|
||||||
get.error.s3=Failed to fetch the file from S3.
|
get.error.s3=Failed to fetch the file from S3.
|
||||||
|
invalid.application.status = Invalid Application status.
|
||||||
|
|||||||
@@ -259,6 +259,7 @@ aasigned.application.not.found = Applicazione assegnata non trovata con l'ID spe
|
|||||||
assigned.application.deleted.success =Applicazione assegnata eliminata con successo.
|
assigned.application.deleted.success =Applicazione assegnata eliminata con successo.
|
||||||
assigned.application.get.success =Dettagli dell'applicazione assegnata recuperati correttamente.
|
assigned.application.get.success =Dettagli dell'applicazione assegnata recuperati correttamente.
|
||||||
assigned.application.update.successfully = Applicazione assegnata aggiornata correttamente.
|
assigned.application.update.successfully = Applicazione assegnata aggiornata correttamente.
|
||||||
|
invalid.application.status = Stato della domanda non valido.
|
||||||
|
|
||||||
# Hub Messages
|
# Hub Messages
|
||||||
hub_create_success=Hub creato con successo
|
hub_create_success=Hub creato con successo
|
||||||
|
|||||||
Reference in New Issue
Block a user