updated code

This commit is contained in:
harish
2024-10-14 17:31:04 +05:30
parent 7b01e8eaa4
commit cd112b5663
3 changed files with 78 additions and 51 deletions

View File

@@ -2,7 +2,6 @@ package net.gepafin.tendermanagement.dao;
import net.gepafin.tendermanagement.entities.CompanyEntity; import net.gepafin.tendermanagement.entities.CompanyEntity;
import net.gepafin.tendermanagement.entities.UserEntity; import net.gepafin.tendermanagement.entities.UserEntity;
import net.gepafin.tendermanagement.enums.ApplicationStatusTypeEnum;
import net.gepafin.tendermanagement.enums.CallStatusEnum; import net.gepafin.tendermanagement.enums.CallStatusEnum;
import net.gepafin.tendermanagement.enums.RoleStatusEnum; import net.gepafin.tendermanagement.enums.RoleStatusEnum;
import net.gepafin.tendermanagement.enums.UserStatusEnum; import net.gepafin.tendermanagement.enums.UserStatusEnum;
@@ -13,68 +12,93 @@ import net.gepafin.tendermanagement.repositories.ApplicationRepository;
import net.gepafin.tendermanagement.repositories.CallRepository; import net.gepafin.tendermanagement.repositories.CallRepository;
import net.gepafin.tendermanagement.repositories.CompanyRepository; import net.gepafin.tendermanagement.repositories.CompanyRepository;
import net.gepafin.tendermanagement.repositories.UserRepository; import net.gepafin.tendermanagement.repositories.UserRepository;
import net.gepafin.tendermanagement.util.FieldValidator;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List;
@Component @Component
public class DashboardDao { public class DashboardDao {
@Autowired @Autowired
private CallRepository callRepository; private CallRepository callRepository;
@Autowired @Autowired
private UserRepository userRepository; private UserRepository userRepository;
@Autowired @Autowired
private ApplicationRepository applicationRepository; private ApplicationRepository applicationRepository;
@Autowired @Autowired
private CompanyRepository companyRepository; private CompanyRepository companyRepository;
public SuperAdminWidgetResponseBean getDashboardWidget() { public SuperAdminWidgetResponseBean getDashboardWidget() {
SuperAdminWidgetResponseBean widgetResponseBean = new SuperAdminWidgetResponseBean(); SuperAdminWidgetResponseBean widgetResponseBean = new SuperAdminWidgetResponseBean();
widgetResponseBean.setWidget1(createWidget1()); widgetResponseBean.setWidget1(createWidget1());
List<Object[]> widgetBars = callRepository.findApplicationsPerCall(); // List<Object[]> widgetBars = callRepository.findApplicationsPerCall();
// widgetResponseBean.setWidgetBars(widgetBars); // widgetResponseBean.setWidgetBars(widgetBars);
return widgetResponseBean; return widgetResponseBean;
} }
private Widget1 createWidget1() { private Widget1 createWidget1() {
Widget1 widget1 = new Widget1(); Widget1 widget1 = initializeWidget1();
Long activeCalls = callRepository.countByStatus(CallStatusEnum.PUBLISH.getValue());
if (Boolean.FALSE.equals(FieldValidator.isNullOrZero(activeCalls))) { setActiveCalls(widget1);
widget1.setNumberOfActiveCalls(activeCalls); setRegisteredUsers(widget1);
} setTotalActiveFinancing(widget1);
Long activeUsers = userRepository.countByStatusAndRoleEntity_RoleType(UserStatusEnum.ACTIVE.getValue(), RoleStatusEnum.ROLE_BENEFICIARY.getValue()); setSubmittedApplications(widget1);
if (Boolean.FALSE.equals(FieldValidator.isNullOrZero(activeUsers))) { setDraftApplications(widget1);
widget1.setNumberOfResgisteredUsers(activeUsers); setNumberOfCompanies(widget1);
}
BigDecimal totalActiveFinancing = callRepository.findTotalAmountOfPublishedCalls(); return widget1;
widget1.setTotalActiveFinancing(totalActiveFinancing); }
// Long preInvestigationQuestions = callRepository.countByStatus(CallStatusEnum.DRAFT.getValue());
// if (Boolean.FALSE.equals(FieldValidator.isNullOrZero(preInvestigationQuestions))) { private Widget1 initializeWidget1() {
// widget1.setPreInvestigationQuestions(preInvestigationQuestions); return Widget1.builder().numberOfActiveCalls(0L).numberOfCompany(0L).numberOfDraftApplications(0L)
// } .numberOfResgisteredUsers(0L).numberOfSubmittedApplications(0L).totalActiveFinancing(BigDecimal.ZERO)
Long submittedApplications=applicationRepository.countSubmittedApplications(); .build();
if(Boolean.FALSE.equals(FieldValidator.isNullOrZero(submittedApplications))) }
{
widget1.setNumberOfSubmittedApplications(submittedApplications); private void setActiveCalls(Widget1 widget1) {
} Long activeCalls = callRepository.countByStatus(CallStatusEnum.PUBLISH.getValue());
Long draftApplications=applicationRepository.countSubmittedApplications(); if (activeCalls != null) {
if(Boolean.FALSE.equals(FieldValidator.isNullOrZero(draftApplications))) widget1.setNumberOfActiveCalls(activeCalls);
{ }
widget1.setNumberOfDraftApplications(draftApplications); }
}
Long numberOfCompany=companyRepository.countTotalCompanies(); private void setRegisteredUsers(Widget1 widget1) {
if (Boolean.FALSE.equals(FieldValidator.isNullOrZero(numberOfCompany))) { Long activeUsers = userRepository.countByStatusAndRoleEntity_RoleType(UserStatusEnum.ACTIVE.getValue(),
widget1.setNumberOfCompany(numberOfCompany); RoleStatusEnum.ROLE_BENEFICIARY.getValue());
} if (activeUsers != null) {
return widget1; widget1.setNumberOfResgisteredUsers(activeUsers);
} }
}
private void setTotalActiveFinancing(Widget1 widget1) {
BigDecimal totalActiveFinancing = callRepository.findTotalAmountOfPublishedCalls();
widget1.setTotalActiveFinancing(totalActiveFinancing);
}
private void setSubmittedApplications(Widget1 widget1) {
Long submittedApplications = applicationRepository.countSubmittedApplications();
if (submittedApplications != null) {
widget1.setNumberOfSubmittedApplications(submittedApplications);
}
}
private void setDraftApplications(Widget1 widget1) {
Long draftApplications = applicationRepository.countDraftApplications();
if (draftApplications != null) {
widget1.setNumberOfDraftApplications(draftApplications);
}
}
private void setNumberOfCompanies(Widget1 widget1) {
Long numberOfCompanies = companyRepository.countTotalCompanies();
if (numberOfCompanies != null) {
widget1.setNumberOfCompany(numberOfCompanies);
}
}
public BeneficiaryWidgetResponseBean getDashboardWidgetForBeneficiary(UserEntity userEntity, public BeneficiaryWidgetResponseBean getDashboardWidgetForBeneficiary(UserEntity userEntity,
CompanyEntity company) { CompanyEntity company) {
@@ -84,7 +108,8 @@ public class DashboardDao {
if (activeCalls != null) { if (activeCalls != null) {
beneficiaryWidgetResponseBean.setNumberOfCalls(activeCalls); beneficiaryWidgetResponseBean.setNumberOfCalls(activeCalls);
} }
Long activeApplication = applicationRepository.countSubmittedApplicationsByUserId(userEntity.getId(), company.getId()); Long activeApplication = applicationRepository.countSubmittedApplicationsByUserId(userEntity.getId(),
company.getId());
if (activeApplication != null) { if (activeApplication != null) {
beneficiaryWidgetResponseBean.setNumberOfApplications(activeApplication); beneficiaryWidgetResponseBean.setNumberOfApplications(activeApplication);
} }

View File

@@ -9,6 +9,6 @@ public class SuperAdminWidgetResponseBean {
private Widget1 widget1; private Widget1 widget1;
private List<Object[]> widgetBars; // private List<Object[]> widgetBars;
} }

View File

@@ -1,10 +1,12 @@
package net.gepafin.tendermanagement.model.response; package net.gepafin.tendermanagement.model.response;
import lombok.Builder;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
@Data @Data
@Builder
public class Widget1 { public class Widget1 {
private Long numberOfActiveCalls; private Long numberOfActiveCalls;