Updated code
This commit is contained in:
@@ -46,6 +46,7 @@ import jakarta.servlet.http.HttpServletRequest;
|
|||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.text.MessageFormat;
|
import java.text.MessageFormat;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@@ -449,7 +450,22 @@ public class ApplicationDao {
|
|||||||
List<Long> newDocumentIds = validateFileUploadDocuments(applicationFormFieldRequestBean, formEntity);
|
List<Long> newDocumentIds = validateFileUploadDocuments(applicationFormFieldRequestBean, formEntity);
|
||||||
validateFileUploadDocuments(applicationFormFieldRequestBean, formEntity);
|
validateFileUploadDocuments(applicationFormFieldRequestBean, formEntity);
|
||||||
VersionActionTypeEnum actionType = VersionActionTypeEnum.INSERT;
|
VersionActionTypeEnum actionType = VersionActionTypeEnum.INSERT;
|
||||||
|
List<ContentResponseBean> contentResponseBeans=formDao.convertFormEntityToFormResponseBean(formEntity).getContent();
|
||||||
|
for (ContentResponseBean contentResponseBean:contentResponseBeans){
|
||||||
|
if(Boolean.TRUE.equals(contentResponseBean.getName().equals("numberinput"))) {
|
||||||
|
List<SettingResponseBean> settingResponseBeans=contentResponseBean.getSettings();
|
||||||
|
for(SettingResponseBean settingResponseBean:settingResponseBeans){
|
||||||
|
if(settingResponseBean.getName().equals("isRequestedAmount")){
|
||||||
|
Object value=settingResponseBean.getValue();
|
||||||
|
if (value instanceof Boolean) {
|
||||||
|
if(Boolean.TRUE.equals(value))
|
||||||
|
{
|
||||||
|
applicationFormEntity.getApplication().setAmountRequested((BigDecimal) applicationFormFieldRequestBean.getFieldValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}}
|
||||||
ApplicationFormFieldEntity oldApplicationFormFieldData = null;
|
ApplicationFormFieldEntity oldApplicationFormFieldData = null;
|
||||||
|
|
||||||
if (applicationFormFieldEntities == null || applicationFormFieldEntities.isEmpty()) {
|
if (applicationFormFieldEntities == null || applicationFormFieldEntities.isEmpty()) {
|
||||||
|
|||||||
@@ -579,6 +579,7 @@ public class ApplicationEvaluationDao {
|
|||||||
Optional<AssignedApplicationsEntity> assignedApplications =
|
Optional<AssignedApplicationsEntity> assignedApplications =
|
||||||
assignedApplicationsRepository.findByIdAndIsDeletedFalse(assignedApplicationId);
|
assignedApplicationsRepository.findByIdAndIsDeletedFalse(assignedApplicationId);
|
||||||
ApplicationEvaluationEntity oldApplicationEvaluation = null;
|
ApplicationEvaluationEntity oldApplicationEvaluation = null;
|
||||||
|
ApplicationEntity application = applicationService.validateApplication(assignedApplications.get().getApplication().getId());
|
||||||
VersionActionTypeEnum actionType = VersionActionTypeEnum.INSERT;
|
VersionActionTypeEnum actionType = VersionActionTypeEnum.INSERT;
|
||||||
if (existingEntityOptional.isPresent()) {
|
if (existingEntityOptional.isPresent()) {
|
||||||
entity = existingEntityOptional.get();
|
entity = existingEntityOptional.get();
|
||||||
@@ -595,6 +596,7 @@ public class ApplicationEvaluationDao {
|
|||||||
entity.setIsDeleted(false);
|
entity.setIsDeleted(false);
|
||||||
setIfUpdated(entity::getNote, entity::setNote, req.getNote());
|
setIfUpdated(entity::getNote, entity::setNote, req.getNote());
|
||||||
setIfUpdated(entity::getMotivation, entity::setMotivation, req.getMotivation());
|
setIfUpdated(entity::getMotivation, entity::setMotivation, req.getMotivation());
|
||||||
|
application.setAmountAccepted(req.getAmountAccepted());
|
||||||
actionType = VersionActionTypeEnum.UPDATE;
|
actionType = VersionActionTypeEnum.UPDATE;
|
||||||
} else {
|
} else {
|
||||||
entity = convertToEntity(user, req, assignedApplicationId);
|
entity = convertToEntity(user, req, assignedApplicationId);
|
||||||
@@ -620,7 +622,6 @@ public class ApplicationEvaluationDao {
|
|||||||
loggingUtil.addVersionHistory(VersionHistoryRequest.builder().request(request).actionType(actionType).oldData(oldApplicationEvaluation).newData(entity).build());
|
loggingUtil.addVersionHistory(VersionHistoryRequest.builder().request(request).actionType(actionType).oldData(oldApplicationEvaluation).newData(entity).build());
|
||||||
|
|
||||||
if (status != null) {
|
if (status != null) {
|
||||||
ApplicationEntity application = applicationService.validateApplication(assignedApplications.get().getApplication().getId());
|
|
||||||
AssignedApplicationsEntity assignedApplicationsEntity = assignedApplications.get();
|
AssignedApplicationsEntity assignedApplicationsEntity = assignedApplications.get();
|
||||||
return updateApplicationEvaluationStatus(application, assignedApplicationsEntity, status);
|
return updateApplicationEvaluationStatus(application, assignedApplicationsEntity, status);
|
||||||
} else {
|
} else {
|
||||||
@@ -1791,11 +1792,18 @@ public class ApplicationEvaluationDao {
|
|||||||
|
|
||||||
|
|
||||||
if (Boolean.TRUE.equals(statusType.equals((ApplicationStatusTypeEnum.APPROVED.getValue())))) {
|
if (Boolean.TRUE.equals(statusType.equals((ApplicationStatusTypeEnum.APPROVED.getValue())))) {
|
||||||
|
application.setDateAccepted(DateTimeUtil.DateServerToUTC(LocalDateTime.now()));
|
||||||
|
application.setUpdatedDate(DateTimeUtil.DateServerToUTC(LocalDateTime.now()));
|
||||||
|
application = applicationRepository.save(application);
|
||||||
emailNotificationDao.sendAdmissibilityNotificationEmailForApprovedApplication(application);
|
emailNotificationDao.sendAdmissibilityNotificationEmailForApprovedApplication(application);
|
||||||
}
|
}
|
||||||
if (Boolean.TRUE.equals(statusType.equals((ApplicationStatusTypeEnum.REJECTED.getValue())))) {
|
if (Boolean.TRUE.equals(statusType.equals((ApplicationStatusTypeEnum.REJECTED.getValue())))) {
|
||||||
|
application.setDateRejected(DateTimeUtil.DateServerToUTC(LocalDateTime.now()));
|
||||||
|
application.setUpdatedDate(DateTimeUtil.DateServerToUTC(LocalDateTime.now()));
|
||||||
|
application = applicationRepository.save(application);
|
||||||
emailNotificationDao.sendInadmissibilityEmailForRejectedApplication(application,existingEntity);
|
emailNotificationDao.sendInadmissibilityEmailForRejectedApplication(application,existingEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
return convertToResponse(entity);
|
return convertToResponse(entity);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -81,14 +81,14 @@ public class DashboardDao {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void setAmountRequested(Widget1 widget1, UserEntity requestedUserEntity) {
|
private void setAmountRequested(Widget1 widget1, UserEntity requestedUserEntity) {
|
||||||
BigDecimal amountRequested = callRepository.findTotalAmountOfPublishedCalls(requestedUserEntity.getHub().getId());
|
BigDecimal amountRequested = applicationRepository.findTotalAmountRequestedOfApplication(requestedUserEntity.getHub().getId());
|
||||||
if (amountRequested != null) {
|
if (amountRequested != null) {
|
||||||
widget1.setAmountRequested(amountRequested);
|
widget1.setAmountRequested(amountRequested);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setAmountAccepted(Widget1 widget1, UserEntity requestedUserEntity) {
|
private void setAmountAccepted(Widget1 widget1, UserEntity requestedUserEntity) {
|
||||||
BigDecimal amountAccepted = applicationRepository.findTotalApprovedApplicationAmount(requestedUserEntity.getHub().getId());
|
BigDecimal amountAccepted = applicationRepository.findTotalAmountAcceptedOfApplication(requestedUserEntity.getHub().getId());
|
||||||
if (amountAccepted != null) {
|
if (amountAccepted != null) {
|
||||||
widget1.setAmountAccepted(amountAccepted);
|
widget1.setAmountAccepted(amountAccepted);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package net.gepafin.tendermanagement.entities;
|
|||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@@ -55,4 +56,16 @@ public class ApplicationEntity extends BaseEntity {
|
|||||||
@Column(name = "APPOINTMENT_ID")
|
@Column(name = "APPOINTMENT_ID")
|
||||||
private String appointmentId;
|
private String appointmentId;
|
||||||
|
|
||||||
|
@Column(name="AMOUNT_REQUESTED")
|
||||||
|
private BigDecimal amountRequested;
|
||||||
|
|
||||||
|
@Column(name="AMOUNT_ACCEPTED")
|
||||||
|
private BigDecimal amountAccepted;
|
||||||
|
|
||||||
|
@Column(name="DATE_ACCEPTED")
|
||||||
|
private LocalDateTime dateAccepted;
|
||||||
|
|
||||||
|
@Column(name="DATE_REJECTED")
|
||||||
|
private LocalDateTime dateRejected;
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -3,6 +3,7 @@ package net.gepafin.tendermanagement.model.request;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import net.gepafin.tendermanagement.enums.ApplicationStatusForEvaluation;
|
import net.gepafin.tendermanagement.enums.ApplicationStatusForEvaluation;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@Data
|
@Data
|
||||||
public class ApplicationEvaluationRequest {
|
public class ApplicationEvaluationRequest {
|
||||||
@@ -15,4 +16,5 @@ public class ApplicationEvaluationRequest {
|
|||||||
private String note;
|
private String note;
|
||||||
private ApplicationStatusForEvaluation applicationStatus;
|
private ApplicationStatusForEvaluation applicationStatus;
|
||||||
private String motivation;
|
private String motivation;
|
||||||
|
private BigDecimal amountAccepted;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,7 +52,13 @@ public interface ApplicationRepository extends JpaRepository<ApplicationEntity,
|
|||||||
@Query("SELECT a.status, COUNT(a.id) FROM ApplicationEntity a WHERE a.isDeleted = false AND a.call.hub.id = :hubId GROUP BY a.status")
|
@Query("SELECT a.status, COUNT(a.id) FROM ApplicationEntity a WHERE a.isDeleted = false AND a.call.hub.id = :hubId GROUP BY a.status")
|
||||||
List<Object[]> findApplicationsByStatus(@Param("hubId") Long hubId);
|
List<Object[]> findApplicationsByStatus(@Param("hubId") Long hubId);
|
||||||
|
|
||||||
// Total Amount of Approved Applications by Hub ID
|
@Query("SELECT SUM(a.amountRequested) " +
|
||||||
@Query("SELECT SUM(a.call.amount) FROM ApplicationEntity a WHERE a.status = 'APPROVED' AND a.isDeleted = false AND a.call.hub.id = :hubId")
|
"FROM ApplicationEntity a " +
|
||||||
BigDecimal findTotalApprovedApplicationAmount(@Param("hubId") Long hubId);
|
"WHERE a.hubId = :hubId AND a.status = 'SUBMIT'")
|
||||||
|
BigDecimal findTotalAmountRequestedOfApplication(@Param("hubId") Long hubId);
|
||||||
|
|
||||||
|
@Query("SELECT SUM(a.amountAccepted) " +
|
||||||
|
"FROM ApplicationEntity a " +
|
||||||
|
"WHERE a.hubId = :hubId AND a.status = 'APPROVED'")
|
||||||
|
BigDecimal findTotalAmountAcceptedOfApplication(@Param("hubId") Long hubId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2067,10 +2067,10 @@
|
|||||||
|
|
||||||
<changeSet id="08-01-2025_NK_075410" author="Nisha kashyap">
|
<changeSet id="08-01-2025_NK_075410" author="Nisha kashyap">
|
||||||
<addColumn tableName="application">
|
<addColumn tableName="application">
|
||||||
<column name="amountRequested" type="numeric"></column>
|
<column name="amount_requested" type="numeric"></column>
|
||||||
<column name="amountAccepted" type="numeric"></column>
|
<column name="amount_accepted" type="numeric"></column>
|
||||||
<column name="dateAccepted" type="TIMESTAMP WITHOUT TIME ZONE"></column>
|
<column name="date_accepted" type="TIMESTAMP WITHOUT TIME ZONE"></column>
|
||||||
<column name="dateRejected" type="TIMESTAMP WITHOUT TIME ZONE"></column>
|
<column name="date_rejected" type="TIMESTAMP WITHOUT TIME ZONE"></column>
|
||||||
</addColumn>
|
</addColumn>
|
||||||
</changeSet>
|
</changeSet>
|
||||||
</databaseChangeLog>
|
</databaseChangeLog>
|
||||||
|
|||||||
Reference in New Issue
Block a user