Resolved conflict
This commit is contained in:
@@ -571,7 +571,7 @@ public class GepafinConstant {
|
|||||||
public static final String PROTOCOL_EXTERNAL_NUMBER="NUM_PG";
|
public static final String PROTOCOL_EXTERNAL_NUMBER="NUM_PG";
|
||||||
public static final String PROTOCOL_EXTERNAL_DATE="DATA_PG_DT";
|
public static final String PROTOCOL_EXTERNAL_DATE="DATA_PG_DT";
|
||||||
public static final String PROTOCOL_DOC_SUFFIX="#noauth";
|
public static final String PROTOCOL_DOC_SUFFIX="#noauth";
|
||||||
|
public static final String CREATE_NDG="CHECK_OR_CREATE_NDG_CODE";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -17,6 +17,11 @@ import net.gepafin.tendermanagement.entities.*;
|
|||||||
import net.gepafin.tendermanagement.entities.SystemEmailTemplatesEntity.SystemEmailTemplatesEntityTypeEnum;
|
import net.gepafin.tendermanagement.entities.SystemEmailTemplatesEntity.SystemEmailTemplatesEntityTypeEnum;
|
||||||
import net.gepafin.tendermanagement.enums.*;
|
import net.gepafin.tendermanagement.enums.*;
|
||||||
import net.gepafin.tendermanagement.model.request.*;
|
import net.gepafin.tendermanagement.model.request.*;
|
||||||
|
import net.gepafin.tendermanagement.model.request.ApplicationFormFieldRequestBean;
|
||||||
|
import net.gepafin.tendermanagement.model.request.ApplicationRequest;
|
||||||
|
import net.gepafin.tendermanagement.model.request.ApplicationRequestBean;
|
||||||
|
import net.gepafin.tendermanagement.model.request.EmailLogRequest;
|
||||||
|
import net.gepafin.tendermanagement.model.request.VersionHistoryRequest;
|
||||||
import net.gepafin.tendermanagement.model.response.*;
|
import net.gepafin.tendermanagement.model.response.*;
|
||||||
import net.gepafin.tendermanagement.model.util.SortBy;
|
import net.gepafin.tendermanagement.model.util.SortBy;
|
||||||
import net.gepafin.tendermanagement.repositories.*;
|
import net.gepafin.tendermanagement.repositories.*;
|
||||||
@@ -1990,7 +1995,7 @@ public class ApplicationDao {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Wrap it in ="..." to make Excel treat it as a literal string
|
// Wrap it in ="..." to make Excel treat it as a literal string
|
||||||
return "=\"" + stringValue.replace("\"", "\"\"") + "\"";
|
return stringValue;
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
return "";
|
return "";
|
||||||
|
|||||||
@@ -18,10 +18,7 @@ import net.gepafin.tendermanagement.entities.ApplicationEvaluationEntity;
|
|||||||
import net.gepafin.tendermanagement.entities.CompanyEntity;
|
import net.gepafin.tendermanagement.entities.CompanyEntity;
|
||||||
import net.gepafin.tendermanagement.entities.DocumentEntity;
|
import net.gepafin.tendermanagement.entities.DocumentEntity;
|
||||||
import net.gepafin.tendermanagement.entities.HubEntity;
|
import net.gepafin.tendermanagement.entities.HubEntity;
|
||||||
import net.gepafin.tendermanagement.enums.ApplicationStatusTypeEnum;
|
import net.gepafin.tendermanagement.enums.*;
|
||||||
import net.gepafin.tendermanagement.enums.DocumentSourceTypeEnum;
|
|
||||||
import net.gepafin.tendermanagement.enums.NotificationTypeEnum;
|
|
||||||
import net.gepafin.tendermanagement.enums.VersionActionTypeEnum;
|
|
||||||
import net.gepafin.tendermanagement.model.request.AppointmentCreationRequest;
|
import net.gepafin.tendermanagement.model.request.AppointmentCreationRequest;
|
||||||
import net.gepafin.tendermanagement.model.request.AppointmentNdgRequest;
|
import net.gepafin.tendermanagement.model.request.AppointmentNdgRequest;
|
||||||
import net.gepafin.tendermanagement.model.request.AppointmentVisuraListRequest;
|
import net.gepafin.tendermanagement.model.request.AppointmentVisuraListRequest;
|
||||||
@@ -55,6 +52,8 @@ import org.springframework.http.MediaType;
|
|||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.mock.web.MockMultipartFile;
|
import org.springframework.mock.web.MockMultipartFile;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
import org.springframework.web.context.request.RequestContextHolder;
|
||||||
|
import org.springframework.web.context.request.ServletRequestAttributes;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
@@ -66,7 +65,10 @@ import java.util.*;
|
|||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
import java.util.concurrent.Executors;
|
import java.util.concurrent.Executors;
|
||||||
|
import java.util.concurrent.ScheduledFuture;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
import java.util.concurrent.atomic.AtomicReference;
|
||||||
|
import java.util.concurrent.ScheduledExecutorService;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@Component
|
@Component
|
||||||
@@ -150,7 +152,8 @@ public class AppointmentDao {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private ApplicationEvaluationDao applicationEvaluationDao;
|
private ApplicationEvaluationDao applicationEvaluationDao;
|
||||||
|
|
||||||
private final Map<Long, ExecutorService> executorMap = new ConcurrentHashMap<>();
|
private final Map<Long, ScheduledExecutorService> executorMap = new ConcurrentHashMap<>();
|
||||||
|
|
||||||
|
|
||||||
private final ConcurrentHashMap<Long, ExecutorService> threadForDocumentMap = new ConcurrentHashMap<>();
|
private final ConcurrentHashMap<Long, ExecutorService> threadForDocumentMap = new ConcurrentHashMap<>();
|
||||||
|
|
||||||
@@ -159,6 +162,8 @@ public class AppointmentDao {
|
|||||||
public NdgResponse checkNdgForAppointment(Long applicationId) {
|
public NdgResponse checkNdgForAppointment(Long applicationId) {
|
||||||
log.info("Starting NDG check for appointment. applicationId: {}", applicationId);
|
log.info("Starting NDG check for appointment. applicationId: {}", applicationId);
|
||||||
ApplicationEntity application = applicationService.validateApplication(applicationId);
|
ApplicationEntity application = applicationService.validateApplication(applicationId);
|
||||||
|
ApplicationEntity oldApplication = Utils.getClonedEntityForData(application);
|
||||||
|
|
||||||
NdgResponse ndgResponse = new NdgResponse();
|
NdgResponse ndgResponse = new NdgResponse();
|
||||||
if (application.getNdgStatus() != null && application.getNdgStatus().equalsIgnoreCase(GepafinConstant.NDG_IN_PROGRESS)) {
|
if (application.getNdgStatus() != null && application.getNdgStatus().equalsIgnoreCase(GepafinConstant.NDG_IN_PROGRESS)) {
|
||||||
log.warn("NDG generation already in progress. applicationId: {}", applicationId);
|
log.warn("NDG generation already in progress. applicationId: {}", applicationId);
|
||||||
@@ -175,6 +180,10 @@ public class AppointmentDao {
|
|||||||
application.setNdgStatus(GepafinConstant.NDG_IN_PROGRESS);
|
application.setNdgStatus(GepafinConstant.NDG_IN_PROGRESS);
|
||||||
applicationRepository.save(application);
|
applicationRepository.save(application);
|
||||||
|
|
||||||
|
loggingUtil.addVersionHistory(
|
||||||
|
VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.UPDATE).oldData(oldApplication).newData(application).build());
|
||||||
|
|
||||||
|
|
||||||
// Start async processing
|
// Start async processing
|
||||||
HubEntity hub = hubRepository.findByHubId(application.getHubId());
|
HubEntity hub = hubRepository.findByHubId(application.getHubId());
|
||||||
loginToOdessa(hub, application);
|
loginToOdessa(hub, application);
|
||||||
@@ -432,35 +441,92 @@ public class AppointmentDao {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void startAsyncNdgProcessing(Long applicationId) {
|
private void startAsyncNdgProcessing(Long applicationId) {
|
||||||
// Check if a thread is already running for this application
|
// If already polling for this applicationId, do nothing:
|
||||||
if (executorMap.containsKey(applicationId)) {
|
if (executorMap.containsKey(applicationId)) {
|
||||||
log.warn("Async processing already running for applicationId: {}", applicationId);
|
log.warn("Async processing already running for applicationId: {}", applicationId);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
ServletRequestAttributes requestAttributes = new ServletRequestAttributes(request);
|
||||||
|
|
||||||
// Create a dedicated thread for asynchronous processing
|
ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor(runnable -> {
|
||||||
ExecutorService executor = Executors.newSingleThreadExecutor(runnable -> {
|
Thread t = new Thread(runnable);
|
||||||
Thread thread = new Thread(runnable);
|
t.setName("AsyncNdgProcessing-" + applicationId);
|
||||||
thread.setName("AsyncNdgProcessing-" + applicationId);
|
return t;
|
||||||
return thread;
|
|
||||||
});
|
});
|
||||||
executorMap.put(applicationId, executor);
|
executorMap.put(applicationId, scheduler);
|
||||||
|
|
||||||
executor.submit(() -> {
|
// Record the start time so we can stop after 2 hours:
|
||||||
|
long startTime = System.currentTimeMillis();
|
||||||
|
long twoHoursMs = TimeUnit.HOURS.toMillis(2);
|
||||||
|
long fifteenMin = 15; // in MINUTES
|
||||||
|
|
||||||
|
// We need a reference to cancel the scheduled task from inside itself when we're done:
|
||||||
|
AtomicReference<ScheduledFuture<?>> futureRef = new AtomicReference<>();
|
||||||
|
|
||||||
|
Runnable pollingTask = () -> {
|
||||||
|
RequestContextHolder.setRequestAttributes(requestAttributes, true);
|
||||||
|
Utils.setHttpServletRequestForThread(request,HttpMethodEnum.POST.getValue(),GepafinConstant.CREATE_NDG, (Long) request.getAttribute(GepafinConstant.USER_ACTION_ID));
|
||||||
try {
|
try {
|
||||||
log.info("Starting async processing for applicationId: {}", applicationId);
|
// 1) If 2 hours have already passed, mark as FAILED and shut down:
|
||||||
|
if (System.currentTimeMillis() - startTime > twoHoursMs) {
|
||||||
|
ApplicationEntity app = applicationService.validateApplication(applicationId);
|
||||||
|
log.warn("2-hour timeout reached for applicationId {}. Marking NDG_FAILED.", applicationId);
|
||||||
|
app.setNdgStatus(GepafinConstant.NDG_FAILED);
|
||||||
|
applicationRepository.save(app);
|
||||||
|
|
||||||
|
futureRef.get().cancel(false);
|
||||||
|
shutdownScheduler(applicationId);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2) Otherwise, call processNdgGeneration once:
|
||||||
processNdgGeneration(applicationId);
|
processNdgGeneration(applicationId);
|
||||||
} catch (Exception e) {
|
|
||||||
log.error("Error in async NDG processing for applicationId: {}", applicationId, e);
|
// 3) After return, check if NDG is now set or timed out. If so, cancel & shut down:
|
||||||
} finally {
|
ApplicationEntity updated = applicationService.validateApplication(applicationId);
|
||||||
// Cleanup resources
|
if (isNdgValid(updated.getNdg())) {
|
||||||
ExecutorService executorToShutdown = executorMap.remove(applicationId);
|
log.info("NDG found for applicationId {}. Shutting down scheduler.", applicationId);
|
||||||
if (executorToShutdown != null) {
|
futureRef.get().cancel(false);
|
||||||
executorToShutdown.shutdown();
|
shutdownScheduler(applicationId);
|
||||||
|
} else if (updated.getNdgStatus() != null && updated.getNdgStatus().equals(GepafinConstant.NDG_FAILED)) {
|
||||||
|
log.info("NDG status is NDG_FAILED for applicationId {}. Shutting down scheduler.", applicationId);
|
||||||
|
futureRef.get().cancel(false);
|
||||||
|
shutdownScheduler(applicationId);
|
||||||
}
|
}
|
||||||
log.info("Async processing completed for applicationId: {}", applicationId);
|
// Otherwise: no NDG yet, not timed out → next run happens in 15 minutes automatically.
|
||||||
|
} catch (Exception ex) {
|
||||||
|
log.error("Unexpected error during scheduled polling for applicationId {}: {}", applicationId, ex.getMessage(), ex);
|
||||||
|
try {
|
||||||
|
ApplicationEntity checkApp = applicationService.validateApplication(applicationId);
|
||||||
|
if (System.currentTimeMillis() - startTime > twoHoursMs) {
|
||||||
|
log.warn("After exception, 2-hour window passed for applicationId {}. Marking NDG_FAILED.", applicationId);
|
||||||
|
checkApp.setNdgStatus(GepafinConstant.NDG_FAILED);
|
||||||
|
applicationRepository.save(checkApp);
|
||||||
|
|
||||||
|
futureRef.get().cancel(false);
|
||||||
|
shutdownScheduler(applicationId);
|
||||||
}
|
}
|
||||||
});
|
} catch (Exception ignore) {
|
||||||
|
futureRef.get().cancel(false);
|
||||||
|
shutdownScheduler(applicationId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// Schedule pollingTask: run now (delay=0), then every fifteen minutes:
|
||||||
|
ScheduledFuture<?> future = scheduler.scheduleWithFixedDelay(pollingTask, 0, // initial delay = 0 min → run immediately
|
||||||
|
fifteenMin, // subsequent runs every 15 minutes
|
||||||
|
TimeUnit.MINUTES);
|
||||||
|
futureRef.set(future);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void shutdownScheduler(Long applicationId) {
|
||||||
|
|
||||||
|
ScheduledExecutorService shed = executorMap.remove(applicationId);
|
||||||
|
if (shed != null) {
|
||||||
|
shed.shutdownNow();
|
||||||
|
}
|
||||||
|
log.info("Scheduler shut down for applicationId: {}", applicationId);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processNdgGeneration(Long applicationId) {
|
private void processNdgGeneration(Long applicationId) {
|
||||||
@@ -486,84 +552,121 @@ public class AppointmentDao {
|
|||||||
// Try retrieving NDG by VAT number
|
// Try retrieving NDG by VAT number
|
||||||
AppointmentLoginResponse ndgResponse = retrieveNdgByVatNumber(company.getVatNumber(), authorizationToken, hub, application);
|
AppointmentLoginResponse ndgResponse = retrieveNdgByVatNumber(company.getVatNumber(), authorizationToken, hub, application);
|
||||||
if (isNdgValid(ndgResponse.getNdg())) {
|
if (isNdgValid(ndgResponse.getNdg())) {
|
||||||
saveNdgAndIdVisura(application, company, ndgResponse.getNdg(), null);
|
saveNdgAndIdVisura(application, company, ndgResponse.getNdg());
|
||||||
log.info("NDG successfully generated for applicationId: {}", applicationId);
|
log.info("NDG successfully generated for applicationId: {}", applicationId);
|
||||||
} else {
|
} else {
|
||||||
// If NDG isn't immediately available, start polling
|
log.info("Polling for NDG for applicationId: {}", applicationId);
|
||||||
handleNdgPolling(application, company, hub, authorizationToken);
|
handleNdgPolling(application, company, hub, authorizationToken);
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("Exception occurred during NDG generation. ApplicationId: {}, CompanyId: {}, HubId: {}, Error: {}",
|
log.error("Exception occurred during NDG generation. ApplicationId: {}, CompanyId: {}, HubId: {}, Error: {}", applicationId, company.getId(), hub.getId(),
|
||||||
applicationId, company.getId(), hub.getId(), e.getMessage(), e);
|
e.getMessage(), e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void handleNdgPolling(ApplicationEntity application, CompanyEntity company, HubEntity hub, String authorizationToken) {
|
private void handleNdgPolling(ApplicationEntity application, CompanyEntity company, HubEntity hub, String authorizationToken) {
|
||||||
|
|
||||||
try {
|
log.info("Starting single‐shot NDG polling attempt for applicationId: {}, CompanyId: {}, HubId: {}", application.getId(), company.getId(), hub.getId());
|
||||||
log.info("Starting NDG polling for applicationId: {}, CompanyId: {}, HubId: {}", application.getId(),company.getId(), hub.getId());
|
ApplicationEntity oldApplication = Utils.getClonedEntityForData(application);
|
||||||
|
CompanyEntity oldCompanyEntity=Utils.getClonedEntityForData(company);
|
||||||
long startTime = System.currentTimeMillis();
|
long startTime = System.currentTimeMillis();
|
||||||
|
long twoHoursMs = TimeUnit.HOURS.toMillis(2);
|
||||||
|
|
||||||
while (true) {
|
try {
|
||||||
|
// 1) If NDG was already populated (perhaps by another thread), skip polling.
|
||||||
if (application.getNdg() != null) {
|
if (application.getNdg() != null) {
|
||||||
log.info("NDG retrieved for applicationId: {}", application.getId());
|
log.info("NDG already present for applicationId {}. Exiting single‐shot polling.", application.getId());
|
||||||
break;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
// 2) Attempt to create Visura (this may immediately return a valid NDG)
|
||||||
// Fetch Visura list and attempt to parse NDG
|
AppointmentLoginResponse visuraResponse = createVisura(company, authorizationToken, hub);
|
||||||
String visuraListJson = getVisuraList(application.getIdVisura(), authorizationToken, application, hub);
|
|
||||||
log.debug("Parsing NDG from visura list response | ApplicationId: {}", application.getId());
|
|
||||||
String ndg = parseNdgFromVisuraListResponse(visuraListJson);
|
|
||||||
if (isNdgValid(ndg)) {
|
|
||||||
// CompanyEntity oldCompanyData = Utils.getClonedEntityForData(company);
|
|
||||||
// ApplicationEntity oldApplicationData = Utils.getClonedEntityForData(application);
|
|
||||||
|
|
||||||
log.info("Valid NDG retrieved: {} | ApplicationId: {}", ndg, application.getId());
|
// 2a) If createVisura gave us a valid NDG, persist & exit
|
||||||
company.setNdg(ndg);
|
String fetchedNdg = visuraResponse.getNdg();
|
||||||
application.setNdg(ndg);
|
if (isNdgValid(fetchedNdg)) {
|
||||||
|
log.info("Valid NDG retrieved from createVisura(): {} | applicationId: {}", fetchedNdg, application.getId());
|
||||||
|
|
||||||
|
company.setNdg(fetchedNdg);
|
||||||
|
application.setNdg(fetchedNdg);
|
||||||
application.setNdgStatus(GepafinConstant.NDG_GENERATED);
|
application.setNdgStatus(GepafinConstant.NDG_GENERATED);
|
||||||
application.setStatus(ApplicationStatusTypeEnum.NDG.getValue());
|
application.setStatus(ApplicationStatusTypeEnum.NDG.getValue());
|
||||||
applicationRepository.save(application);
|
application.setIdVisura(visuraResponse.getIdVisura());
|
||||||
|
|
||||||
companyRepository.save(company);
|
companyRepository.save(company);
|
||||||
ApplicationEvaluationEntity applicationEvaluationEntity = applicationEvaluationService.validateApplicationEvaluation(application.getApplicationEvaluationId());
|
applicationRepository.save(application);
|
||||||
// Map<String, String> placeHolders = notificationDao.sendNotificationToBeneficiary(application, NotificationTypeEnum.NDG_GENERATION);
|
loggingUtil.addVersionHistory(
|
||||||
|
VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.UPDATE).oldData(oldApplication).newData(application).build());
|
||||||
|
loggingUtil.addVersionHistory(
|
||||||
|
VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.UPDATE).oldData(oldCompanyEntity).newData(company).build());
|
||||||
|
|
||||||
|
ApplicationEvaluationEntity eval = applicationEvaluationService.validateApplicationEvaluation(application.getApplicationEvaluationId());
|
||||||
|
Map<String, String> placeholders = new HashMap<>();
|
||||||
|
placeholders.put("{{call_name}}", application.getCall().getName());
|
||||||
|
placeholders.put("{{protocol_number}}", String.valueOf(application.getProtocol().getProtocolNumber()));
|
||||||
|
notificationDao.sendNotificationToInstructor(placeholders, eval, NotificationTypeEnum.NDG_GENERATION);
|
||||||
|
notificationDao.sendNotificationToSuperUser(application, placeholders, NotificationTypeEnum.NDG_GENERATION);
|
||||||
|
|
||||||
Map<String, String> placeHolders = new HashMap<>();
|
|
||||||
placeHolders.put("{{call_name}}", application.getCall().getName());
|
|
||||||
String protocolNumber=application.getProtocol().getExternalProtocolNumber();
|
|
||||||
if(protocolNumber==null){
|
|
||||||
protocolNumber= String.valueOf(application.getProtocol().getProtocolNumber());
|
|
||||||
}
|
|
||||||
placeHolders.put("{{protocol_number}}", protocolNumber);
|
|
||||||
notificationDao.sendNotificationToInstructor(placeHolders, applicationEvaluationEntity, NotificationTypeEnum.NDG_GENERATION);
|
|
||||||
notificationDao.sendNotificationToSuperUser(application, placeHolders, NotificationTypeEnum.NDG_GENERATION);
|
|
||||||
log.info("NDG saved successfully for applicationId: {}", application.getId());
|
log.info("NDG saved successfully for applicationId: {}", application.getId());
|
||||||
break;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if polling has timed out
|
// 2b) If no immediate NDG, fetch the Visura list JSON and parse out NDG
|
||||||
if (System.currentTimeMillis() - startTime > TimeUnit.HOURS.toMillis(2)) {
|
String visuraListJson = getVisuraList(visuraResponse.getIdVisura(), authorizationToken, application, hub);
|
||||||
log.warn("NDG polling timed out for applicationId: {}", application.getId());
|
log.debug("Parsing NDG from VisuraList JSON for applicationId: {}", application.getId());
|
||||||
|
String parsedNdg = parseNdgFromVisuraListResponse(visuraListJson);
|
||||||
|
|
||||||
|
if (isNdgValid(parsedNdg)) {
|
||||||
|
log.info("Valid NDG parsed from VisuraList: {} | applicationId: {}", parsedNdg, application.getId());
|
||||||
|
|
||||||
|
company.setNdg(parsedNdg);
|
||||||
|
application.setNdg(parsedNdg);
|
||||||
|
application.setNdgStatus(GepafinConstant.NDG_GENERATED);
|
||||||
|
application.setStatus(ApplicationStatusTypeEnum.NDG.getValue());
|
||||||
|
application.setIdVisura(visuraResponse.getIdVisura());
|
||||||
|
|
||||||
|
companyRepository.save(company);
|
||||||
|
applicationRepository.save(application);
|
||||||
|
loggingUtil.addVersionHistory(
|
||||||
|
VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.UPDATE).oldData(oldApplication).newData(application).build());
|
||||||
|
loggingUtil.addVersionHistory(
|
||||||
|
VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.UPDATE).oldData(oldCompanyEntity).newData(company).build());
|
||||||
|
|
||||||
|
ApplicationEvaluationEntity eval = applicationEvaluationService.validateApplicationEvaluation(application.getApplicationEvaluationId());
|
||||||
|
Map<String, String> placeholders = new HashMap<>();
|
||||||
|
placeholders.put("{{call_name}}", application.getCall().getName());
|
||||||
|
placeholders.put("{{protocol_number}}", String.valueOf(application.getProtocol().getProtocolNumber()));
|
||||||
|
notificationDao.sendNotificationToInstructor(placeholders, eval, NotificationTypeEnum.NDG_GENERATION);
|
||||||
|
notificationDao.sendNotificationToSuperUser(application, placeholders, NotificationTypeEnum.NDG_GENERATION);
|
||||||
|
|
||||||
|
log.info("NDG saved successfully for applicationId: {}", application.getId());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3) Neither direct API nor parsing yielded a valid NDG. Check timeout.
|
||||||
|
if (System.currentTimeMillis() - startTime > twoHoursMs) {
|
||||||
|
log.warn("NDG polling timed out after 2 hours for applicationId: {}", application.getId());
|
||||||
application.setNdgStatus(GepafinConstant.NDG_FAILED);
|
application.setNdgStatus(GepafinConstant.NDG_FAILED);
|
||||||
applicationRepository.save(application);
|
applicationRepository.save(application);
|
||||||
break;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Wait before the next polling attempt
|
// 4) No NDG yet—just return. The scheduler will retry in 15 minutes.
|
||||||
Thread.sleep(TimeUnit.MINUTES.toMillis(15));
|
log.info("No valid NDG yet for applicationId {}. Returning to scheduler—next attempt in 15 minutes.", application.getId());
|
||||||
} catch (InterruptedException e) {
|
|
||||||
log.warn("NDG polling interrupted for applicationId: {}", application.getId());
|
|
||||||
Thread.currentThread().interrupt();
|
|
||||||
break;
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("Error during NDG polling for applicationId: {}", application.getId(), e);
|
log.error("Exception during NDG polling for applicationId: {}", application.getId(), e);
|
||||||
|
// If timeout after exception, mark NDG_FAILED
|
||||||
|
if (System.currentTimeMillis() - startTime > twoHoursMs) {
|
||||||
|
log.warn("Example: exiting single‐shot polling due to timeout after exception for applicationId: {}", application.getId());
|
||||||
|
application.setNdgStatus(GepafinConstant.NDG_FAILED);
|
||||||
|
applicationRepository.save(application);
|
||||||
|
} else {
|
||||||
|
log.info("Exception occurred but not timed out for applicationId {}. Returning to scheduler for next attempt in 15 minutes.", application.getId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} finally {
|
|
||||||
log.info("NDG polling completed for applicationId: {}", application.getId());
|
log.info("NDG polling completed for applicationId: {}", application.getId());
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private static String getBearerToken(HubEntity hub) {
|
private static String getBearerToken(HubEntity hub) {
|
||||||
|
|
||||||
@@ -575,24 +678,26 @@ public class AppointmentDao {
|
|||||||
return ndg != null && !ndg.isEmpty();
|
return ndg != null && !ndg.isEmpty();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void saveNdgAndIdVisura(ApplicationEntity application, CompanyEntity company, String ndg, String idVisura) {
|
private void saveNdgAndIdVisura(ApplicationEntity application, CompanyEntity company, String ndg) {
|
||||||
|
|
||||||
|
ApplicationEntity oldApplication = Utils.getClonedEntityForData(application);
|
||||||
|
CompanyEntity oldCompanyEntity=Utils.getClonedEntityForData(company);
|
||||||
application.setNdg(ndg);
|
application.setNdg(ndg);
|
||||||
application.setIdVisura(idVisura);
|
|
||||||
application.setNdgStatus(GepafinConstant.NDG_GENERATED);
|
application.setNdgStatus(GepafinConstant.NDG_GENERATED);
|
||||||
application.setStatus(ApplicationStatusTypeEnum.NDG.getValue());
|
application.setStatus(ApplicationStatusTypeEnum.NDG.getValue());
|
||||||
company.setNdg(ndg);
|
company.setNdg(ndg);
|
||||||
companyRepository.save(company);
|
companyRepository.save(company);
|
||||||
applicationRepository.save(application);
|
applicationRepository.save(application);
|
||||||
|
loggingUtil.addVersionHistory(
|
||||||
|
VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.UPDATE).oldData(oldApplication).newData(application).build());
|
||||||
|
loggingUtil.addVersionHistory(
|
||||||
|
VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.UPDATE).oldData(oldCompanyEntity).newData(company).build());
|
||||||
|
|
||||||
ApplicationEvaluationEntity applicationEvaluationEntity = applicationEvaluationService.validateApplicationEvaluation(application.getApplicationEvaluationId());
|
ApplicationEvaluationEntity applicationEvaluationEntity = applicationEvaluationService.validateApplicationEvaluation(application.getApplicationEvaluationId());
|
||||||
// Map<String, String> placeHolders = notificationDao.sendNotificationToBeneficiary(application, NotificationTypeEnum.NDG_GENERATION);
|
// Map<String, String> placeHolders = notificationDao.sendNotificationToBeneficiary(application, NotificationTypeEnum.NDG_GENERATION);
|
||||||
Map<String, String> placeHolders = new HashMap<>();
|
Map<String, String> placeHolders = new HashMap<>();
|
||||||
placeHolders.put("{{call_name}}", application.getCall().getName());
|
placeHolders.put("{{call_name}}", application.getCall().getName());
|
||||||
String protocolNumber=application.getProtocol().getExternalProtocolNumber();
|
placeHolders.put("{{protocol_number}}", String.valueOf(application.getProtocol().getProtocolNumber()));
|
||||||
if(protocolNumber==null){
|
|
||||||
protocolNumber= String.valueOf(application.getProtocol().getProtocolNumber());
|
|
||||||
}
|
|
||||||
placeHolders.put("{{protocol_number}}", protocolNumber);
|
|
||||||
notificationDao.sendNotificationToInstructor(placeHolders, applicationEvaluationEntity, NotificationTypeEnum.NDG_GENERATION);
|
notificationDao.sendNotificationToInstructor(placeHolders, applicationEvaluationEntity, NotificationTypeEnum.NDG_GENERATION);
|
||||||
notificationDao.sendNotificationToSuperUser(application, placeHolders, NotificationTypeEnum.NDG_GENERATION);
|
notificationDao.sendNotificationToSuperUser(application, placeHolders, NotificationTypeEnum.NDG_GENERATION);
|
||||||
log.info("NDG saved for applicationId: {}, {}", application.getId(), application.getNdg());
|
log.info("NDG saved for applicationId: {}, {}", application.getId(), application.getNdg());
|
||||||
@@ -758,19 +863,28 @@ public class AppointmentDao {
|
|||||||
public AppointmentLoginResponse parseVisuraResponse(String jsonResponse) {
|
public AppointmentLoginResponse parseVisuraResponse(String jsonResponse) {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
// Log full raw JSON for debug purposes
|
||||||
|
log.info("Raw Visura JSON Response: {}", jsonResponse);
|
||||||
ObjectMapper objectMapper = new ObjectMapper();
|
ObjectMapper objectMapper = new ObjectMapper();
|
||||||
JsonNode rootNode = objectMapper.readTree(jsonResponse);
|
JsonNode rootNode = objectMapper.readTree(jsonResponse);
|
||||||
JsonNode dataNode = rootNode.get(GepafinConstant.DATA_STRING);
|
JsonNode dataNode = rootNode.get(GepafinConstant.DATA_STRING);
|
||||||
|
|
||||||
if (dataNode != null) {
|
if (dataNode != null && dataNode.isObject()) {
|
||||||
AppointmentLoginResponse response = new AppointmentLoginResponse();
|
AppointmentLoginResponse response = new AppointmentLoginResponse();
|
||||||
response.setIdVisura(normalizeNullValue(dataNode.get(GepafinConstant.ID_VISURA_STRING).asText()));
|
JsonNode idVisuraNode = dataNode.get(GepafinConstant.ID_VISURA_STRING);
|
||||||
response.setNdg(normalizeNullValue(dataNode.get(GepafinConstant.NDG_STRING).asText()));
|
JsonNode ndgNode = dataNode.get(GepafinConstant.NDG_STRING);
|
||||||
|
if (idVisuraNode == null || ndgNode == null) {
|
||||||
|
log.error("Missing expected fields in 'data' node. JSON: {}", dataNode);
|
||||||
|
}
|
||||||
|
response.setIdVisura(normalizeNullValue(idVisuraNode != null ? idVisuraNode.asText() : null));
|
||||||
|
response.setNdg(normalizeNullValue(ndgNode != null ? ndgNode.asText() : null));
|
||||||
return response;
|
return response;
|
||||||
} else {
|
} else {
|
||||||
throw new RuntimeException("Invalid JSON structure: Missing 'data' node.");
|
System.err.println("Invalid JSON: 'data' node is missing or not an object.");
|
||||||
|
throw new RuntimeException("Invalid JSON structure: Missing or malformed 'data' node.");
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
System.err.println("Exception while parsing Visura response: " + e.getMessage());
|
||||||
throw new RuntimeException("Failed to parse response: " + e.getMessage(), e);
|
throw new RuntimeException("Failed to parse response: " + e.getMessage(), e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
import net.gepafin.tendermanagement.model.response.EmailSendResponse;
|
import net.gepafin.tendermanagement.model.response.EmailSendResponse;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
@@ -10,6 +11,7 @@ import java.util.List;
|
|||||||
@Entity
|
@Entity
|
||||||
@Table(name="application_amendment_request")
|
@Table(name="application_amendment_request")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class ApplicationAmendmentRequestEntity extends BaseEntity {
|
public class ApplicationAmendmentRequestEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "NOTE")
|
@Column(name = "NOTE")
|
||||||
@@ -33,9 +35,6 @@ public class ApplicationAmendmentRequestEntity extends BaseEntity {
|
|||||||
@Column(name = "FORM_FIELDS")
|
@Column(name = "FORM_FIELDS")
|
||||||
private String formFields;
|
private String formFields;
|
||||||
|
|
||||||
@Column(name="IS_DELETED")
|
|
||||||
private Boolean isDeleted=false;
|
|
||||||
|
|
||||||
@Column(name = "STATUS")
|
@Column(name = "STATUS")
|
||||||
private String status;
|
private String status;
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
@@ -9,6 +10,7 @@ import java.time.LocalDateTime;
|
|||||||
@Entity
|
@Entity
|
||||||
@Table(name = "APPLICATION")
|
@Table(name = "APPLICATION")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class ApplicationEntity extends BaseEntity {
|
public class ApplicationEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "USER_ID")
|
@Column(name = "USER_ID")
|
||||||
@@ -30,9 +32,6 @@ public class ApplicationEntity extends BaseEntity {
|
|||||||
@JoinColumn(name = "CALL_ID", nullable = false)
|
@JoinColumn(name = "CALL_ID", nullable = false)
|
||||||
private CallEntity call;
|
private CallEntity call;
|
||||||
|
|
||||||
@Column(name="IS_DELETED")
|
|
||||||
private Boolean isDeleted;
|
|
||||||
|
|
||||||
@OneToOne
|
@OneToOne
|
||||||
@JoinColumn(name = "PROTOCOL_NUMBER")
|
@JoinColumn(name = "PROTOCOL_NUMBER")
|
||||||
private ProtocolEntity protocol;
|
private ProtocolEntity protocol;
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
import net.gepafin.tendermanagement.model.response.EmailSendResponse;
|
import net.gepafin.tendermanagement.model.response.EmailSendResponse;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
@@ -10,6 +11,7 @@ import java.util.List;
|
|||||||
@Data
|
@Data
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "application_evaluation")
|
@Table(name = "application_evaluation")
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class ApplicationEvaluationEntity extends BaseEntity{
|
public class ApplicationEvaluationEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "application_Id")
|
@Column(name = "application_Id")
|
||||||
@@ -39,9 +41,6 @@ public class ApplicationEvaluationEntity extends BaseEntity{
|
|||||||
@Column(name = "MOTIVATION")
|
@Column(name = "MOTIVATION")
|
||||||
private String motivation;
|
private String motivation;
|
||||||
|
|
||||||
@Column(name="IS_DELETED")
|
|
||||||
private Boolean isDeleted;
|
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
@JoinColumn(name = "assigned_applications_id", nullable = true)
|
@JoinColumn(name = "assigned_applications_id", nullable = true)
|
||||||
private AssignedApplicationsEntity assignedApplicationsEntity;
|
private AssignedApplicationsEntity assignedApplicationsEntity;
|
||||||
|
|||||||
@@ -2,16 +2,15 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
@Data
|
||||||
@Table(name = "APPLICATION_EVALUATION_FORM")
|
@Table(name = "APPLICATION_EVALUATION_FORM")
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class ApplicationEvaluationFormEntity extends BaseEntity{
|
public class ApplicationEvaluationFormEntity extends BaseEntity{
|
||||||
private Long applicationId;
|
private Long applicationId;
|
||||||
|
|
||||||
@Column(name="IS_DELETED")
|
|
||||||
private Boolean isDeleted;
|
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
@JoinColumn(name = "EVALUATION_ID")
|
@JoinColumn(name = "EVALUATION_ID")
|
||||||
private ApplicationEvaluationEntity applicationEvaluation;
|
private ApplicationEvaluationEntity applicationEvaluation;
|
||||||
|
|||||||
@@ -2,10 +2,12 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
@Data
|
||||||
@Table(name = "APPLICATION_EVALUATION_FORM_FIELD")
|
@Table(name = "APPLICATION_EVALUATION_FORM_FIELD")
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class ApplicationEvaluationFormFieldEntity extends BaseEntity {
|
public class ApplicationEvaluationFormFieldEntity extends BaseEntity {
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
@@ -18,7 +20,4 @@ public class ApplicationEvaluationFormFieldEntity extends BaseEntity {
|
|||||||
@Column(name = "FIELD_VALUE")
|
@Column(name = "FIELD_VALUE")
|
||||||
private String fieldValue;
|
private String fieldValue;
|
||||||
|
|
||||||
@Column(name="IS_DELETED")
|
|
||||||
private Boolean isDeleted;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,11 +2,12 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "APPLICATION_FORM")
|
@Table(name = "APPLICATION_FORM")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class ApplicationFormEntity extends BaseEntity {
|
public class ApplicationFormEntity extends BaseEntity {
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@@ -11,6 +12,7 @@ import java.time.LocalDateTime;
|
|||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Builder
|
@Builder
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class ApplicationFormFieldEntity extends BaseEntity {
|
public class ApplicationFormFieldEntity extends BaseEntity {
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
|
|||||||
@@ -6,10 +6,12 @@ import jakarta.persistence.JoinColumn;
|
|||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "application_signed_document")
|
@Table(name = "application_signed_document")
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class ApplicationSignedDocumentEntity extends BaseEntity {
|
public class ApplicationSignedDocumentEntity extends BaseEntity {
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
|
|||||||
@@ -2,13 +2,14 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
@Data
|
||||||
@Table(name = "assigned_applications")
|
@Table(name = "assigned_applications")
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class AssignedApplicationsEntity extends BaseEntity{
|
public class AssignedApplicationsEntity extends BaseEntity{
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
@@ -27,9 +28,7 @@ public class AssignedApplicationsEntity extends BaseEntity{
|
|||||||
@Column(name = "NOTE")
|
@Column(name = "NOTE")
|
||||||
private String note;
|
private String note;
|
||||||
|
|
||||||
@Column(name="IS_DELETED")
|
|
||||||
private Boolean isDeleted=false;
|
|
||||||
|
|
||||||
@Column(nullable = false)
|
@Column(nullable = false)
|
||||||
private LocalDateTime assignedAt;
|
private LocalDateTime assignedAt;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,6 +22,11 @@ public class BaseEntity {
|
|||||||
@Column(name = "UPDATED_DATE")
|
@Column(name = "UPDATED_DATE")
|
||||||
LocalDateTime updatedDate;
|
LocalDateTime updatedDate;
|
||||||
|
|
||||||
|
|
||||||
|
@Column(name="IS_DELETED")
|
||||||
|
private Boolean isDeleted = false;
|
||||||
|
|
||||||
|
|
||||||
@PrePersist
|
@PrePersist
|
||||||
public void setCreatedDate() {
|
public void setCreatedDate() {
|
||||||
this.createdDate = DateTimeUtil.DateServerToUTC(LocalDateTime.now());
|
this.createdDate = DateTimeUtil.DateServerToUTC(LocalDateTime.now());
|
||||||
|
|||||||
@@ -7,10 +7,12 @@ import jakarta.persistence.Entity;
|
|||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import jakarta.validation.constraints.Email;
|
import jakarta.validation.constraints.Email;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "BENEFICIARY")
|
@Table(name = "BENEFICIARY")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class BeneficiaryEntity extends BaseEntity {
|
public class BeneficiaryEntity extends BaseEntity {
|
||||||
|
|
||||||
@Email
|
@Email
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import lombok.AllArgsConstructor;
|
|||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@@ -14,6 +15,7 @@ import java.time.LocalDateTime;
|
|||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Builder
|
@Builder
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class BeneficiaryPreferredCallEntity extends BaseEntity{
|
public class BeneficiaryPreferredCallEntity extends BaseEntity{
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
@@ -35,9 +37,6 @@ public class BeneficiaryPreferredCallEntity extends BaseEntity{
|
|||||||
@Column(name = "STATUS", length = 255)
|
@Column(name = "STATUS", length = 255)
|
||||||
private String status;
|
private String status;
|
||||||
|
|
||||||
@Column(name="IS_DELETED")
|
|
||||||
private Boolean isDeleted;
|
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
@JoinColumn(name = "USER_WITH_COMPANY_ID")
|
@JoinColumn(name = "USER_WITH_COMPANY_ID")
|
||||||
private UserWithCompanyEntity userWithCompany;
|
private UserWithCompanyEntity userWithCompany;
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import lombok.Data;
|
|||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
@@ -16,6 +17,7 @@ import java.time.LocalTime;
|
|||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Builder
|
@Builder
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class CallEntity extends BaseEntity {
|
public class CallEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "NAME", length = 255)
|
@Column(name = "NAME", length = 255)
|
||||||
|
|||||||
@@ -2,10 +2,12 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "CALL_TARGET_AUDIENCE_CHECKLIST")
|
@Table(name = "CALL_TARGET_AUDIENCE_CHECKLIST")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class CallTargetAudienceChecklistEntity extends BaseEntity{
|
public class CallTargetAudienceChecklistEntity extends BaseEntity{
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
@@ -19,8 +21,4 @@ public class CallTargetAudienceChecklistEntity extends BaseEntity{
|
|||||||
@Column(name = "IS_VALIDATED")
|
@Column(name = "IS_VALIDATED")
|
||||||
private Boolean isValidated;
|
private Boolean isValidated;
|
||||||
|
|
||||||
@Column(name ="IS_DELETED", nullable = false)
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,12 +6,14 @@ import jakarta.persistence.JoinColumn;
|
|||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "communication")
|
@Table(name = "communication")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class CommunicationEntity extends BaseEntity {
|
public class CommunicationEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "COMMUNICATION_TITLE")
|
@Column(name = "COMMUNICATION_TITLE")
|
||||||
@@ -20,9 +22,6 @@ public class CommunicationEntity extends BaseEntity {
|
|||||||
@Column(name = "COMMUNICATION_COMMENT")
|
@Column(name = "COMMUNICATION_COMMENT")
|
||||||
private String communicationComment;
|
private String communicationComment;
|
||||||
|
|
||||||
@Column(name = "IS_DELETED")
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
|
|
||||||
@Column(name = "COMMENTED_DATE")
|
@Column(name = "COMMENTED_DATE")
|
||||||
private LocalDateTime commentedDate;
|
private LocalDateTime commentedDate;
|
||||||
|
|
||||||
|
|||||||
@@ -2,12 +2,14 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "COMPANY_DOCUMENT")
|
@Table(name = "COMPANY_DOCUMENT")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class CompanyDocumentEntity extends BaseEntity {
|
public class CompanyDocumentEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "FILE_NAME")
|
@Column(name = "FILE_NAME")
|
||||||
@@ -25,9 +27,6 @@ public class CompanyDocumentEntity extends BaseEntity {
|
|||||||
@Column(name="COMPANY_ID")
|
@Column(name="COMPANY_ID")
|
||||||
private Long companyId;
|
private Long companyId;
|
||||||
|
|
||||||
@Column(name ="IS_DELETED")
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
|
|
||||||
@Column(name="UPLOADED_BY")
|
@Column(name="UPLOADED_BY")
|
||||||
private Long uploadedBy;
|
private Long uploadedBy;
|
||||||
|
|
||||||
|
|||||||
@@ -8,10 +8,12 @@ import jakarta.persistence.JoinColumn;
|
|||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "COMPANY")
|
@Table(name = "COMPANY")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class CompanyEntity extends BaseEntity{
|
public class CompanyEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "COMPANY_NAME")
|
@Column(name = "COMPANY_NAME")
|
||||||
|
|||||||
@@ -4,10 +4,12 @@ import jakarta.persistence.Column;
|
|||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "criteria_form_field")
|
@Table(name = "criteria_form_field")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class CriteriaFormFieldEntity extends BaseEntity {
|
public class CriteriaFormFieldEntity extends BaseEntity {
|
||||||
|
|
||||||
private Long callId;
|
private Long callId;
|
||||||
@@ -18,7 +20,4 @@ public class CriteriaFormFieldEntity extends BaseEntity {
|
|||||||
|
|
||||||
private Long evaluationCriteriaId;
|
private Long evaluationCriteriaId;
|
||||||
|
|
||||||
@Column(name ="IS_DELETED", nullable = false)
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,10 +4,12 @@ import jakarta.persistence.Column;
|
|||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "document_category")
|
@Table(name = "document_category")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class DocumentCategoryEntity extends BaseEntity {
|
public class DocumentCategoryEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "CATEGORY_NAME")
|
@Column(name = "CATEGORY_NAME")
|
||||||
@@ -16,7 +18,4 @@ public class DocumentCategoryEntity extends BaseEntity {
|
|||||||
@Column(name = "DESCRIPTION")
|
@Column(name = "DESCRIPTION")
|
||||||
private String description;
|
private String description;
|
||||||
|
|
||||||
@Column(name ="IS_DELETED")
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,10 +6,12 @@ import jakarta.persistence.JoinColumn;
|
|||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "DOCUMENT")
|
@Table(name = "DOCUMENT")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class DocumentEntity extends BaseEntity{
|
public class DocumentEntity extends BaseEntity{
|
||||||
@Column(name = "FILE_NAME", length = 255)
|
@Column(name = "FILE_NAME", length = 255)
|
||||||
private String fileName;
|
private String fileName;
|
||||||
@@ -26,9 +28,6 @@ public class DocumentEntity extends BaseEntity{
|
|||||||
@Column(name="SOURCE_ID")
|
@Column(name="SOURCE_ID")
|
||||||
private Long sourceId;
|
private Long sourceId;
|
||||||
|
|
||||||
@Column(name ="IS_DELETED", nullable = false)
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
|
|
||||||
@Column(name="DOCUMENT_ATTACHMENT_ID")
|
@Column(name="DOCUMENT_ATTACHMENT_ID")
|
||||||
private String documentAttachmentId;
|
private String documentAttachmentId;
|
||||||
|
|
||||||
|
|||||||
@@ -1,12 +1,14 @@
|
|||||||
package net.gepafin.tendermanagement.entities;
|
package net.gepafin.tendermanagement.entities;
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
@Data
|
||||||
@Table(name = "email_log")
|
@Table(name = "email_log")
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class EmailLogEntity extends BaseEntity{
|
public class EmailLogEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "email_type", nullable = false, length = 255)
|
@Column(name = "email_type", nullable = false, length = 255)
|
||||||
@@ -54,9 +56,6 @@ public class EmailLogEntity extends BaseEntity{
|
|||||||
@Column(name = "call_id")
|
@Column(name = "call_id")
|
||||||
private Long callId;
|
private Long callId;
|
||||||
|
|
||||||
@Column(name = "is_deleted")
|
|
||||||
private Boolean isDeleted;
|
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
@JoinColumn(name = "user_action_id")
|
@JoinColumn(name = "user_action_id")
|
||||||
private UserActionEntity userAction;
|
private UserActionEntity userAction;
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import jakarta.persistence.JoinColumn;
|
|||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
@@ -12,6 +13,7 @@ import java.math.BigDecimal;
|
|||||||
@Entity
|
@Entity
|
||||||
@Table(name = "EVALUATION_CRITERIA")
|
@Table(name = "EVALUATION_CRITERIA")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class EvaluationCriteriaEntity extends BaseEntity {
|
public class EvaluationCriteriaEntity extends BaseEntity {
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
@@ -25,7 +27,4 @@ public class EvaluationCriteriaEntity extends BaseEntity {
|
|||||||
@Column(name = "SCORE", nullable = false)
|
@Column(name = "SCORE", nullable = false)
|
||||||
private BigDecimal score;
|
private BigDecimal score;
|
||||||
|
|
||||||
@Column(name ="IS_DELETED", nullable = false)
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,12 +5,15 @@ import lombok.AllArgsConstructor;
|
|||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "EVALUATION_FORM")
|
@Table(name = "EVALUATION_FORM")
|
||||||
@Data
|
@Data
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Builder
|
@Builder
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class EvaluationFormEntity extends BaseEntity{
|
public class EvaluationFormEntity extends BaseEntity{
|
||||||
|
|
||||||
|
|
||||||
@@ -24,6 +27,4 @@ public class EvaluationFormEntity extends BaseEntity{
|
|||||||
@Column(name = "CONTENT")
|
@Column(name = "CONTENT")
|
||||||
private String content;
|
private String content;
|
||||||
|
|
||||||
@Column(name="IS_DELETED")
|
|
||||||
private Boolean isDeleted;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,10 +4,12 @@ import jakarta.persistence.Column;
|
|||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "expiration_config")
|
@Table(name = "expiration_config")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class ExpirationConfigEntity extends BaseEntity {
|
public class ExpirationConfigEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name="INTERVAL_DAYS")
|
@Column(name="INTERVAL_DAYS")
|
||||||
@@ -15,7 +17,4 @@ public class ExpirationConfigEntity extends BaseEntity {
|
|||||||
|
|
||||||
@Column(name="TYPE")
|
@Column(name="TYPE")
|
||||||
private String type;
|
private String type;
|
||||||
|
|
||||||
@Column(name="IS_DELETED")
|
|
||||||
private Boolean isDeleted;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,11 +9,12 @@ import jakarta.persistence.JoinColumn;
|
|||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "FAQ")
|
@Table(name = "FAQ")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class FaqEntity extends BaseEntity {
|
public class FaqEntity extends BaseEntity {
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
@@ -39,9 +40,6 @@ public class FaqEntity extends BaseEntity {
|
|||||||
@Column(name = "RESPONSE_DATE")
|
@Column(name = "RESPONSE_DATE")
|
||||||
private LocalDateTime responseDate;
|
private LocalDateTime responseDate;
|
||||||
|
|
||||||
@Column(name ="IS_DELETED", nullable = false)
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
|
|
||||||
@Column(name ="COMPANY_ID")
|
@Column(name ="COMPANY_ID")
|
||||||
private Long companyId;
|
private Long companyId;
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package net.gepafin.tendermanagement.entities;
|
package net.gepafin.tendermanagement.entities;
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@@ -10,6 +11,7 @@ import java.time.LocalDateTime;
|
|||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Builder
|
@Builder
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class FlowDataEntity extends BaseEntity{
|
public class FlowDataEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "FORM_ID")
|
@Column(name = "FORM_ID")
|
||||||
@@ -23,4 +25,5 @@ public class FlowDataEntity extends BaseEntity{
|
|||||||
|
|
||||||
@Column(name="CALL_ID")
|
@Column(name="CALL_ID")
|
||||||
private Long callId;
|
private Long callId;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@@ -11,6 +12,7 @@ import java.time.LocalDateTime;
|
|||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Builder
|
@Builder
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class FlowEdgesEntity extends BaseEntity {
|
public class FlowEdgesEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "SOURCE_ID")
|
@Column(name = "SOURCE_ID")
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import lombok.AllArgsConstructor;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "FORM")
|
@Table(name = "FORM")
|
||||||
@@ -12,6 +13,7 @@ import lombok.NoArgsConstructor;
|
|||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Builder
|
@Builder
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class FormEntity extends BaseEntity{
|
public class FormEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "LABEL", length = 255)
|
@Column(name = "LABEL", length = 255)
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import lombok.AllArgsConstructor;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "FORM_FIELD")
|
@Table(name = "FORM_FIELD")
|
||||||
@@ -12,6 +13,7 @@ import lombok.NoArgsConstructor;
|
|||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Builder
|
@Builder
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class FormFieldEntity extends BaseEntity{
|
public class FormFieldEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "NAME", length = 255)
|
@Column(name = "NAME", length = 255)
|
||||||
@@ -31,4 +33,5 @@ public class FormFieldEntity extends BaseEntity{
|
|||||||
|
|
||||||
@Column(name = "SORT_ORDER")
|
@Column(name = "SORT_ORDER")
|
||||||
private Integer sortOrder;
|
private Integer sortOrder;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import lombok.AllArgsConstructor;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "FORM_TEMPLATE")
|
@Table(name = "FORM_TEMPLATE")
|
||||||
@@ -12,6 +13,7 @@ import lombok.NoArgsConstructor;
|
|||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Builder
|
@Builder
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class FormTemplateEntity extends BaseEntity{
|
public class FormTemplateEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "LABEL", length = 255)
|
@Column(name = "LABEL", length = 255)
|
||||||
|
|||||||
@@ -15,7 +15,4 @@ public class GlobalConfigEntity extends BaseEntity{
|
|||||||
|
|
||||||
@Column(name = "TYPE")
|
@Column(name = "TYPE")
|
||||||
private String type;
|
private String type;
|
||||||
|
|
||||||
@Column(name = "IS_DELETED")
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,12 +4,13 @@ import jakarta.persistence.*;
|
|||||||
import jakarta.validation.constraints.Size;
|
import jakarta.validation.constraints.Size;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name="hub")
|
@Table(name="hub")
|
||||||
@Setter
|
@Setter
|
||||||
@Getter
|
@Getter
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class HubEntity extends BaseEntity{
|
public class HubEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "COMPANY_NAME")
|
@Column(name = "COMPANY_NAME")
|
||||||
|
|||||||
@@ -3,11 +3,13 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "hub_user")
|
@Table(name = "hub_user")
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class HubUserEntity extends BaseEntity{
|
public class HubUserEntity extends BaseEntity{
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
|
|||||||
@@ -2,12 +2,14 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "LOGIN_ATTEMPT")
|
@Table(name = "LOGIN_ATTEMPT")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class LoginAttemptEntity extends BaseEntity{
|
public class LoginAttemptEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "USERNAME")
|
@Column(name = "USERNAME")
|
||||||
|
|||||||
@@ -3,10 +3,12 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
import com.fasterxml.jackson.annotation.JsonValue;
|
import com.fasterxml.jackson.annotation.JsonValue;
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "LOOKUP_DATA")
|
@Table(name = "LOOKUP_DATA")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class LookUpDataEntity extends BaseEntity{
|
public class LookUpDataEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "TITLE", columnDefinition = "TEXT", nullable = true)
|
@Column(name = "TITLE", columnDefinition = "TEXT", nullable = true)
|
||||||
|
|||||||
@@ -6,10 +6,12 @@ import jakarta.persistence.JoinColumn;
|
|||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "NOTIFICATION")
|
@Table(name = "NOTIFICATION")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class NotificationEntity extends BaseEntity {
|
public class NotificationEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "USER_ID")
|
@Column(name = "USER_ID")
|
||||||
@@ -24,9 +26,6 @@ public class NotificationEntity extends BaseEntity {
|
|||||||
@Column(name = "STATUS")
|
@Column(name = "STATUS")
|
||||||
private String status;
|
private String status;
|
||||||
|
|
||||||
@Column(name = "IS_DELETED")
|
|
||||||
private Boolean isDeleted;
|
|
||||||
|
|
||||||
@Column(name = "NOTIFICATION_TYPE")
|
@Column(name = "NOTIFICATION_TYPE")
|
||||||
private String notificationType;
|
private String notificationType;
|
||||||
|
|
||||||
|
|||||||
@@ -4,10 +4,12 @@ import jakarta.persistence.Column;
|
|||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
@Data
|
||||||
@Table(name = "NOTIFICATION_TYPE")
|
@Table(name = "NOTIFICATION_TYPE")
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class NotificationTypeEntity extends BaseEntity {
|
public class NotificationTypeEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "NOTIFICATION_NAME")
|
@Column(name = "NOTIFICATION_NAME")
|
||||||
@@ -18,7 +20,4 @@ public class NotificationTypeEntity extends BaseEntity {
|
|||||||
|
|
||||||
@Column(name = "TITLE")
|
@Column(name = "TITLE")
|
||||||
private String title;
|
private String title;
|
||||||
|
|
||||||
@Column(name="IS_DELETED")
|
|
||||||
private Boolean isDeleted;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import net.gepafin.tendermanagement.config.LocalTimeAttributeConverter;
|
import net.gepafin.tendermanagement.config.LocalTimeAttributeConverter;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.time.LocalTime;
|
import java.time.LocalTime;
|
||||||
@@ -10,6 +11,7 @@ import java.time.LocalTime;
|
|||||||
@Entity
|
@Entity
|
||||||
@Table(name = "PROTOCOL")
|
@Table(name = "PROTOCOL")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class ProtocolEntity extends BaseEntity {
|
public class ProtocolEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "PROTOCOL_NUMBER", nullable = false)
|
@Column(name = "PROTOCOL_NUMBER", nullable = false)
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import jakarta.persistence.Table;
|
|||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
@@ -13,6 +14,7 @@ import java.math.BigDecimal;
|
|||||||
@Table(name = "REGION")
|
@Table(name = "REGION")
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class RegionEntity extends BaseEntity {
|
public class RegionEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "REGION_NAME", length = 255, nullable = true)
|
@Column(name = "REGION_NAME", length = 255, nullable = true)
|
||||||
|
|||||||
@@ -4,10 +4,12 @@ import jakarta.persistence.Column;
|
|||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
@Data
|
||||||
@Table(name ="role_action_context")
|
@Table(name ="role_action_context")
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class RoleActionContextEntity extends BaseEntity {
|
public class RoleActionContextEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "action_context")
|
@Column(name = "action_context")
|
||||||
@@ -16,9 +18,6 @@ public class RoleActionContextEntity extends BaseEntity {
|
|||||||
@Column(name = "role_id")
|
@Column(name = "role_id")
|
||||||
private Long roleId;
|
private Long roleId;
|
||||||
|
|
||||||
@Column(name="is_deleted")
|
|
||||||
private Boolean isDeleted;
|
|
||||||
|
|
||||||
@Column(name = "is_viewed")
|
@Column(name = "is_viewed")
|
||||||
private Boolean isViewed;
|
private Boolean isViewed;
|
||||||
|
|
||||||
|
|||||||
@@ -4,11 +4,13 @@ import jakarta.persistence.*;
|
|||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "ROLE")
|
@Table(name = "ROLE")
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class RoleEntity extends BaseEntity {
|
public class RoleEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "ROLE_NAME", length = 255, nullable = true)
|
@Column(name = "ROLE_NAME", length = 255, nullable = true)
|
||||||
|
|||||||
@@ -4,10 +4,12 @@ import jakarta.persistence.Column;
|
|||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "s3_path_configuration")
|
@Table(name = "s3_path_configuration")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class S3ConfigEntity extends BaseEntity {
|
public class S3ConfigEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "TYPE")
|
@Column(name = "TYPE")
|
||||||
@@ -21,5 +23,6 @@ public class S3ConfigEntity extends BaseEntity {
|
|||||||
|
|
||||||
@Column(name = "PARENT_FOLDER")
|
@Column(name = "PARENT_FOLDER")
|
||||||
private String parentFolder;
|
private String parentFolder;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -4,10 +4,12 @@ import jakarta.persistence.Column;
|
|||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "SAML_RESPONSE")
|
@Table(name = "SAML_RESPONSE")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class SamlResponseEntity extends BaseEntity{
|
public class SamlResponseEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "AUTHENTICATION_OBJECT")
|
@Column(name = "AUTHENTICATION_OBJECT")
|
||||||
@@ -31,5 +33,4 @@ public class SamlResponseEntity extends BaseEntity{
|
|||||||
@Column(name = "TOKEN")
|
@Column(name = "TOKEN")
|
||||||
private String token;
|
private String token;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,10 +8,12 @@ import jakarta.persistence.JoinColumn;
|
|||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "system_email_template")
|
@Table(name = "system_email_template")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class SystemEmailTemplatesEntity extends BaseEntity {
|
public class SystemEmailTemplatesEntity extends BaseEntity {
|
||||||
|
|
||||||
|
|
||||||
@@ -33,9 +35,6 @@ public class SystemEmailTemplatesEntity extends BaseEntity {
|
|||||||
@Column(name = "SYSTEM")
|
@Column(name = "SYSTEM")
|
||||||
private Boolean system;
|
private Boolean system;
|
||||||
|
|
||||||
@Column(name ="IS_DELETED", nullable = false)
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
|
|
||||||
@Column(name = "email_scenario")
|
@Column(name = "email_scenario")
|
||||||
private String emailScenario;
|
private String emailScenario;
|
||||||
|
|
||||||
|
|||||||
@@ -4,10 +4,12 @@ import jakarta.persistence.Column;
|
|||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "user_action")
|
@Table(name = "user_action")
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class UserActionEntity extends BaseEntity {
|
public class UserActionEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "USER_ID")
|
@Column(name = "USER_ID")
|
||||||
@@ -40,7 +42,4 @@ public class UserActionEntity extends BaseEntity {
|
|||||||
@Column(name = "RESPONSE")
|
@Column(name = "RESPONSE")
|
||||||
private String response;
|
private String response;
|
||||||
|
|
||||||
@Column(name = "IS_DELETED", nullable = false)
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -2,10 +2,12 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "user_company_delegation")
|
@Table(name = "user_company_delegation")
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class UserCompanyDelegationEntity extends BaseEntity{
|
public class UserCompanyDelegationEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name="USER_ID")
|
@Column(name="USER_ID")
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore;
|
|||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
import net.gepafin.tendermanagement.model.response.EmailSendResponse;
|
import net.gepafin.tendermanagement.model.response.EmailSendResponse;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
@@ -16,6 +17,7 @@ import java.util.List;
|
|||||||
@Table(name = "GEPAFIN_USER")
|
@Table(name = "GEPAFIN_USER")
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class UserEntity extends BaseEntity {
|
public class UserEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "PASSWORD", columnDefinition = "TEXT",nullable = true)
|
@Column(name = "PASSWORD", columnDefinition = "TEXT",nullable = true)
|
||||||
|
|||||||
@@ -4,10 +4,12 @@ import jakarta.persistence.Column;
|
|||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "USER_WITH_COMPANY")
|
@Table(name = "USER_WITH_COMPANY")
|
||||||
@Data
|
@Data
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class UserWithCompanyEntity extends BaseEntity{
|
public class UserWithCompanyEntity extends BaseEntity{
|
||||||
|
|
||||||
@Column(name = "USER_ID")
|
@Column(name = "USER_ID")
|
||||||
@@ -35,7 +37,4 @@ public class UserWithCompanyEntity extends BaseEntity{
|
|||||||
@Column(name = "EMAIL")
|
@Column(name = "EMAIL")
|
||||||
private String email;
|
private String email;
|
||||||
|
|
||||||
@Column(name = "IS_DELETED")
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,10 +4,12 @@ import jakarta.persistence.Column;
|
|||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.annotations.Where;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "version_history")
|
@Table(name = "version_history")
|
||||||
|
@Where(clause = "is_deleted = false")
|
||||||
public class VersionHistoryEntity extends BaseEntity {
|
public class VersionHistoryEntity extends BaseEntity {
|
||||||
|
|
||||||
@Column(name = "OLD_DATA", columnDefinition = "LONGTEXT")
|
@Column(name = "OLD_DATA", columnDefinition = "LONGTEXT")
|
||||||
@@ -30,7 +32,4 @@ public class VersionHistoryEntity extends BaseEntity {
|
|||||||
|
|
||||||
@Column(name = "USER_ID")
|
@Column(name = "USER_ID")
|
||||||
private Long userId;
|
private Long userId;
|
||||||
|
|
||||||
@Column(name = "IS_DELETED", nullable = false)
|
|
||||||
private Boolean isDeleted = false;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
package net.gepafin.tendermanagement.enums;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonValue;
|
||||||
|
|
||||||
|
public enum HttpMethodEnum {
|
||||||
|
POST("POST"), PUT("PUT"), GET("GET"), DELETE("DELETE");
|
||||||
|
|
||||||
|
private String value;
|
||||||
|
|
||||||
|
HttpMethodEnum(String value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
@JsonValue
|
||||||
|
public String getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1052,5 +1052,17 @@ public class Utils {
|
|||||||
headers.add(org.apache.http.HttpHeaders.USER_AGENT, "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0");
|
headers.add(org.apache.http.HttpHeaders.USER_AGENT, "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0");
|
||||||
return headers;
|
return headers;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void setHttpServletRequestForThread(HttpServletRequest request,String methodType, String remoteUser, Long userActionId) {
|
||||||
|
MockHttpServletRequest mockRequest = new MockHttpServletRequest();
|
||||||
|
mockRequest.setRequestURI(request.getRequestURI());
|
||||||
|
mockRequest.setMethod(methodType);
|
||||||
|
mockRequest.setRemoteUser(remoteUser); // or pass it in if needed
|
||||||
|
mockRequest.setAttribute(GepafinConstant.USER_ACTION_ID, userActionId);
|
||||||
|
|
||||||
|
ServletRequestAttributes attributes = new ServletRequestAttributes(mockRequest);
|
||||||
|
RequestContextHolder.setRequestAttributes(attributes, true);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2737,6 +2737,132 @@
|
|||||||
</insert>
|
</insert>
|
||||||
</changeSet>
|
</changeSet>
|
||||||
|
|
||||||
|
<changeSet id="09-01-2025_PK_120129" author="Piyush Kag">
|
||||||
|
<addColumn tableName="application_signed_document">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="APPLICATION_FORM">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="APPLICATION_FORM_FIELD">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="BENEFICIARY">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="CALL">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="COMPANY">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="FLOW_DATA">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="FLOW_EDGES">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="FORM">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="FORM_FIELD">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="FORM_TEMPLATE">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
<addColumn tableName="hub">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="LOGIN_ATTEMPT">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="LOOKUP_DATA">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="PROTOCOL">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="REGION">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="ROLE">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="s3_path_configuration">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="SAML_RESPONSE">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="user_company_delegation">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
|
||||||
|
<addColumn tableName="GEPAFIN_USER">
|
||||||
|
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||||
|
<constraints nullable="false"/>
|
||||||
|
</column>
|
||||||
|
</addColumn>
|
||||||
|
</changeSet>
|
||||||
|
|
||||||
<changeSet id="08-04-2025_PK_160730" author="Piyush kag">
|
<changeSet id="08-04-2025_PK_160730" author="Piyush kag">
|
||||||
<sqlFile dbms="postgresql"
|
<sqlFile dbms="postgresql"
|
||||||
|
|||||||
Reference in New Issue
Block a user