Updated code

This commit is contained in:
nisha
2025-01-09 15:21:59 +05:30
parent 609bb7d99a
commit f9c228f0c9
7 changed files with 57 additions and 12 deletions

View File

@@ -46,6 +46,7 @@ import jakarta.servlet.http.HttpServletRequest;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.math.BigDecimal;
import java.text.MessageFormat;
import java.time.LocalDateTime;
import java.util.*;
@@ -449,7 +450,22 @@ public class ApplicationDao {
List<Long> newDocumentIds = validateFileUploadDocuments(applicationFormFieldRequestBean, formEntity);
validateFileUploadDocuments(applicationFormFieldRequestBean, formEntity);
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;
if (applicationFormFieldEntities == null || applicationFormFieldEntities.isEmpty()) {

View File

@@ -579,6 +579,7 @@ public class ApplicationEvaluationDao {
Optional<AssignedApplicationsEntity> assignedApplications =
assignedApplicationsRepository.findByIdAndIsDeletedFalse(assignedApplicationId);
ApplicationEvaluationEntity oldApplicationEvaluation = null;
ApplicationEntity application = applicationService.validateApplication(assignedApplications.get().getApplication().getId());
VersionActionTypeEnum actionType = VersionActionTypeEnum.INSERT;
if (existingEntityOptional.isPresent()) {
entity = existingEntityOptional.get();
@@ -595,6 +596,7 @@ public class ApplicationEvaluationDao {
entity.setIsDeleted(false);
setIfUpdated(entity::getNote, entity::setNote, req.getNote());
setIfUpdated(entity::getMotivation, entity::setMotivation, req.getMotivation());
application.setAmountAccepted(req.getAmountAccepted());
actionType = VersionActionTypeEnum.UPDATE;
} else {
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());
if (status != null) {
ApplicationEntity application = applicationService.validateApplication(assignedApplications.get().getApplication().getId());
AssignedApplicationsEntity assignedApplicationsEntity = assignedApplications.get();
return updateApplicationEvaluationStatus(application, assignedApplicationsEntity, status);
} else {
@@ -1791,11 +1792,18 @@ public class ApplicationEvaluationDao {
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);
}
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);
}
return convertToResponse(entity);
}
return null;

View File

@@ -81,14 +81,14 @@ public class DashboardDao {
}
private void setAmountRequested(Widget1 widget1, UserEntity requestedUserEntity) {
BigDecimal amountRequested = callRepository.findTotalAmountOfPublishedCalls(requestedUserEntity.getHub().getId());
BigDecimal amountRequested = applicationRepository.findTotalAmountRequestedOfApplication(requestedUserEntity.getHub().getId());
if (amountRequested != null) {
widget1.setAmountRequested(amountRequested);
}
}
private void setAmountAccepted(Widget1 widget1, UserEntity requestedUserEntity) {
BigDecimal amountAccepted = applicationRepository.findTotalApprovedApplicationAmount(requestedUserEntity.getHub().getId());
BigDecimal amountAccepted = applicationRepository.findTotalAmountAcceptedOfApplication(requestedUserEntity.getHub().getId());
if (amountAccepted != null) {
widget1.setAmountAccepted(amountAccepted);
}

View File

@@ -3,6 +3,7 @@ package net.gepafin.tendermanagement.entities;
import jakarta.persistence.*;
import lombok.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
@Entity
@@ -55,4 +56,16 @@ public class ApplicationEntity extends BaseEntity {
@Column(name = "APPOINTMENT_ID")
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;
}

View File

@@ -3,6 +3,7 @@ package net.gepafin.tendermanagement.model.request;
import lombok.Data;
import net.gepafin.tendermanagement.enums.ApplicationStatusForEvaluation;
import java.math.BigDecimal;
import java.util.List;
@Data
public class ApplicationEvaluationRequest {
@@ -15,4 +16,5 @@ public class ApplicationEvaluationRequest {
private String note;
private ApplicationStatusForEvaluation applicationStatus;
private String motivation;
private BigDecimal amountAccepted;
}

View File

@@ -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")
List<Object[]> findApplicationsByStatus(@Param("hubId") Long hubId);
// Total Amount of Approved Applications by Hub ID
@Query("SELECT SUM(a.call.amount) FROM ApplicationEntity a WHERE a.status = 'APPROVED' AND a.isDeleted = false AND a.call.hub.id = :hubId")
BigDecimal findTotalApprovedApplicationAmount(@Param("hubId") Long hubId);
@Query("SELECT SUM(a.amountRequested) " +
"FROM ApplicationEntity a " +
"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);
}