Merge branch 'develop' of https://github.com/Kitzanos/GEPAFIN-BE into feature/GEPAFINBE-55

This commit is contained in:
Anisha Gokhru
2024-10-21 18:52:36 +05:30
65 changed files with 1603 additions and 297 deletions

View File

@@ -40,21 +40,19 @@ public class ApplicationServiceImpl implements ApplicationService {
@Transactional(rollbackFor = Exception.class)
public ApplicationResponseBean createApplication(HttpServletRequest request,
ApplicationRequestBean applicationRequestBean, Long applicationId, Long formId) {
UserEntity userEntity = validator.validateUser(request);
return applicationDao.createApplication(applicationRequestBean, userEntity, formId, applicationId);
return applicationDao.createApplication(request, applicationRequestBean, formId, applicationId);
}
@Override
@Transactional(readOnly = true)
public ApplicationGetResponseBean getApplicationByFormId(HttpServletRequest request, Long applicationId,Long formId) {
UserEntity userEntity = validator.validateUser(request);
return applicationDao.getApplicationByFormId(applicationId,formId,userEntity);
return applicationDao.getApplicationByFormId(request, applicationId,formId);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void deleteApplication(HttpServletRequest request, Long applicationId) {
applicationDao.deleteById(applicationId);
applicationDao.deleteById(request, applicationId);
}
@Override
@@ -74,14 +72,14 @@ public class ApplicationServiceImpl implements ApplicationService {
public NextOrPreviousFormResponse getNextOrPreviousForm(HttpServletRequest request, Long applicationId, Long formId,
FormActionEnum action) {
ApplicationEntity applicationEntity = validateApplication(applicationId);
validator.validateUserWithCompany(request, applicationEntity.getCompany().getId());
return flowFormDao.getNextOrPreviousForm(applicationEntity, formId, action);
}
@Override
@Transactional(rollbackFor = Exception.class)
public ApplicationResponse updateApplicationStatus(HttpServletRequest request, Long applicationId, ApplicationStatusTypeEnum status) {
UserEntity userEntity = validator.validateUser(request);
return applicationDao.updateApplicationStatus(userEntity, applicationId, status);
return applicationDao.updateApplicationStatus(request, applicationId, status);
}

View File

@@ -70,17 +70,18 @@ public class AuthenticationService {
this.authenticationManager = authenticationManager;
}
public JWTToken login(LoginReq loginReq,HttpServletRequest request) {
public JWTToken login(LoginReq loginReq, HttpServletRequest request) {
UserEntity user=null;
LoginAttemptEntity loginAttemptEntity = prepareLoginAttemptEntity(loginReq, request);
log.info("Attempting login for email: {}", loginReq.getEmail());
String emailWithHubId = loginReq.getEmail()+":"+loginReq.getHubUuid();
UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(
loginReq.getEmail(), loginReq.getPassword());
emailWithHubId, loginReq.getPassword());
Authentication authentication = this.authenticationManager.authenticate(authenticationToken);
SecurityContextHolder.getContext().setAuthentication(authentication);
log.info("Authentication successful for email: {}", loginReq.getEmail());
user = userRepository.findByEmailIgnoreCase(loginReq.getEmail())
user = userRepository.findByEmailIgnoreCaseAndHubUniqueUuid(loginReq.getEmail(), loginReq.getHubUuid())
.orElseThrow(() -> new ResourceNotFoundException(Status.NOT_FOUND,
Translator.toLocale(GepafinConstant.USER_NOT_FOUND_MSG)));
loginAttemptEntity.setUserId(user.getId());

View File

@@ -1,7 +1,6 @@
package net.gepafin.tendermanagement.service.impl;
import jakarta.servlet.http.HttpServletRequest;
import net.gepafin.tendermanagement.config.jwt.TokenProvider;
import net.gepafin.tendermanagement.dao.CallDao;
import net.gepafin.tendermanagement.entities.CallEntity;
import net.gepafin.tendermanagement.entities.UserEntity;
@@ -12,12 +11,13 @@ import net.gepafin.tendermanagement.model.request.UpdateCallRequestStep1;
import net.gepafin.tendermanagement.model.response.CallDetailsResponseBean;
import net.gepafin.tendermanagement.model.response.CallResponse;
import net.gepafin.tendermanagement.service.CallService;
import net.gepafin.tendermanagement.util.Validator;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
@Service
@@ -27,59 +27,61 @@ public class CallServiceImpl implements CallService {
private CallDao callDao;
@Autowired
private TokenProvider tokenProvider;
private Validator validator;
@Override
@Transactional(rollbackFor = Exception.class)
public CallResponse createCallStep1(HttpServletRequest request, CreateCallRequestStep1 createCallRequest) {
Map<String, Object> userInfo= tokenProvider.getUserInfoAndUserIdFromToken(request);
return callDao.createCallStep1(createCallRequest, Long.parseLong(userInfo.get("userId").toString()));
UserEntity user = validator.validateUser(request);
return callDao.createCallStep1(createCallRequest, user);
}
@Override
@Transactional(rollbackFor = Exception.class)
public CallResponse createCallStep2(HttpServletRequest request, Long callId, CreateCallRequestStep2 createCallRequest) {
Map<String, Object> userInfo= tokenProvider.getUserInfoAndUserIdFromToken(request);
return callDao.createCallStep2(callId, createCallRequest, Long.parseLong(userInfo.get("userId").toString()));
UserEntity user = validator.validateUser(request);
CallEntity call = validator.validateUserWithCall(user, callId);
return callDao.createCallStep2(call, createCallRequest, user);
}
@Override
@Transactional(rollbackFor = Exception.class)
public CallResponse updateCallStep1(HttpServletRequest request, Long callId,
UpdateCallRequestStep1 updateCallRequest) {
Map<String, Object> userInfo= tokenProvider.getUserInfoAndUserIdFromToken(request);
return callDao.updateCallStep1(callId, updateCallRequest, Long.parseLong(userInfo.get("userId").toString()));
UserEntity user = validator.validateUser(request);
CallEntity call = validator.validateUserWithCall(user, callId);
return callDao.updateCallStep1(call, updateCallRequest, user);
}
@Override
@Transactional(readOnly = true)
public CallResponse getCallById(Long callId) {
return callDao.getCallById(callId);
public CallResponse getCallById(HttpServletRequest request, Long callId) {
UserEntity user = validator.validateUser(request);
CallEntity call = validator.validateUserWithCall(user, callId);
return callDao.getCallById(call);
}
@Override
@Transactional(readOnly = true)
public List<CallDetailsResponseBean> getAllCalls(HttpServletRequest request) {
Map<String, Object> userInfo= tokenProvider.getUserInfoAndUserIdFromToken(request);
UserEntity user=tokenProvider.validateUser(userInfo);
UserEntity user = validator.validateUser(request);
return callDao.getAllCalls(user);
}
@Override
@Transactional(rollbackFor = Exception.class)
public CallResponse validateCallData(Long callId) {
return callDao.validateCallData(callDao.validateCall(callId));
}
@Override
public CallEntity getCallEntityById(Long id){
return callDao.getCallEntityById(id);
public CallResponse validateCallData(HttpServletRequest request, Long callId) {
UserEntity user = validator.validateUser(request);
CallEntity call = validator.validateUserWithCall(user, callId);
return callDao.validateCallData(call);
}
@Override
@Transactional(rollbackFor = Exception.class)
public CallResponse updateCallStatus(HttpServletRequest request, Long callId, CallStatusEnum statusReq) {
return callDao.updateCallStatus(callId, statusReq);
UserEntity user = validator.validateUser(request);
CallEntity call = validator.validateUserWithCall(user, callId);
return callDao.updateCallStatus(call, statusReq);
}
@@ -88,13 +90,15 @@ public class CallServiceImpl implements CallService {
return callDao.validateCall(callId);
}
@Override
public CallEntity validatePublishedCall(Long callId) {
return callDao.validatePublishedCall(callId);
}
@Override
@Transactional(readOnly = true)
public byte[] downloadCallDocumentsAsZip(Long callId) {
return callDao.downloadCallDocumentsAsZip(callId);
}
}
@Override
public CallEntity validatePublishedCall(Long callId) {
return callDao.validatePublishedCall(callId);
}
@Override
@Transactional(readOnly = true)
public byte[] downloadCallDocumentsAsZip(Long callId) {
return callDao.downloadCallDocumentsAsZip(callId);
}
}

View File

@@ -22,7 +22,8 @@ public class DashboardServiceImpl implements DashboardService {
@Override
public SuperAdminWidgetResponseBean getDashboardWidgetForSuperAdmin(HttpServletRequest request) {
return dashboardDao.getDashboardWidget();
UserEntity userEntity=validator.validateUser(request);
return dashboardDao.getDashboardWidget(userEntity);
}
@Override

View File

@@ -2,6 +2,7 @@ package net.gepafin.tendermanagement.service.impl;
import jakarta.servlet.http.HttpServletRequest;
import net.gepafin.tendermanagement.dao.EvaluationCriteriaDao;
import net.gepafin.tendermanagement.entities.EvaluationCriteriaEntity;
import net.gepafin.tendermanagement.model.request.EvaluationCriteriaRequest;
import net.gepafin.tendermanagement.model.response.EvaluationCriteriaResponseBean;
import net.gepafin.tendermanagement.service.EvaluationCriteriaService;
@@ -33,4 +34,9 @@ public class EvaluationCriteriaServiceImpl implements EvaluationCriteriaService
public void deleteEvaluationCriteria(HttpServletRequest request,Long id) {
evaluationCriteriaDao.deleteEvaluationCriteria(id);
}
@Override
public EvaluationCriteriaEntity validateEvaluationCriteria(Long id) {
return evaluationCriteriaDao.validateEvaluationCriteria(id);
}
}

View File

@@ -3,12 +3,15 @@ package net.gepafin.tendermanagement.service.impl;
import jakarta.servlet.http.HttpServletRequest;
import net.gepafin.tendermanagement.dao.FormDao;
import net.gepafin.tendermanagement.entities.ApplicationEntity;
import net.gepafin.tendermanagement.entities.CallEntity;
import net.gepafin.tendermanagement.entities.FormEntity;
import net.gepafin.tendermanagement.entities.UserEntity;
import net.gepafin.tendermanagement.model.request.ApplicationFormFieldRequestBean;
import net.gepafin.tendermanagement.model.request.FormRequest;
import net.gepafin.tendermanagement.model.response.FormResponseBean;
import net.gepafin.tendermanagement.service.FormService;
import net.gepafin.tendermanagement.util.Validator;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -19,26 +22,33 @@ public class FormServiceImpl implements FormService {
@Autowired
private FormDao formDao;
@Autowired
private Validator validator;
@Override
public FormResponseBean createForm(HttpServletRequest request,Long callId, FormRequest formRequest) {
return formDao.createForm(callId,formRequest);
UserEntity user = validator.validateUser(request);
CallEntity call = validator.validateUserWithCall(user, callId);
return formDao.createForm(call,formRequest);
}
@Override
public FormResponseBean updateForm(HttpServletRequest request, Long formId, FormRequest formRequest,Boolean forceDeleteFlow) {
return formDao.updateForm(formId,formRequest,forceDeleteFlow);
UserEntity user = validator.validateUser(request);
return formDao.updateForm(user, formId,formRequest,forceDeleteFlow);
}
@Override
public FormResponseBean getFormById(HttpServletRequest request, Long formId) {
return formDao.getFormEntityById(formId);
UserEntity user = validator.validateUser(request);
return formDao.getFormEntityById(user, formId);
}
@Override
public void deleteForm(HttpServletRequest request, Long formId) {
formDao.deleteFormById(formId);
return;
UserEntity user = validator.validateUser(request);
formDao.deleteFormById(user, formId);
}
@Override
@@ -48,7 +58,9 @@ public class FormServiceImpl implements FormService {
@Override
public List<FormResponseBean> getFormsByCallId(HttpServletRequest request, Long callId) {
return formDao.getFormsByCallId(callId);
UserEntity user = validator.validateUser(request);
CallEntity call = validator.validateUserWithCall(user, callId);
return formDao.getFormsByCallId(call);
}
@Override

View File

@@ -0,0 +1,59 @@
package net.gepafin.tendermanagement.service.impl;
import net.gepafin.tendermanagement.dao.HubDao;
import net.gepafin.tendermanagement.entities.HubEntity;
import net.gepafin.tendermanagement.model.request.HubReq;
import net.gepafin.tendermanagement.model.response.HubResponseBean;
import net.gepafin.tendermanagement.service.HubService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Service
public class HubServiceImpl implements HubService {
@Autowired
private HubDao hubDao;
@Override
@Transactional(rollbackFor = Exception.class)
public HubResponseBean createHub(HubReq hubReq) {
return hubDao.createHub(hubReq);
}
@Override
@Transactional(rollbackFor = Exception.class)
public HubResponseBean updateHub(Long hubId, HubReq hubReq) {
return hubDao.updateHub(hubId, hubReq);
}
@Override
@Transactional(readOnly = true)
public HubResponseBean getHubById(Long hubId) {
return hubDao.getHubById(hubId);
}
@Override
@Transactional(readOnly = true)
public List<HubResponseBean> getAllHubs() {
return hubDao.getAllHubs();
}
@Override
@Transactional(rollbackFor = Exception.class)
public void deleteHub(Long hubId) {
hubDao.deleteHub(hubId);
}
@Override
public HubEntity getHubByUuid(String hubUuid) {
return hubDao.getHubByUuid(hubUuid);
}
@Override
public HubResponseBean getHubByHubUuid(String uuid) {
return hubDao.getHubByHubUuid(uuid);
}
}

View File

@@ -2,13 +2,11 @@ package net.gepafin.tendermanagement.service.impl;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import net.gepafin.tendermanagement.config.SamlSuccessHandler;
import net.gepafin.tendermanagement.dao.UserDao;
import net.gepafin.tendermanagement.entities.UserEntity;
import net.gepafin.tendermanagement.model.request.LoginReq;
import net.gepafin.tendermanagement.model.request.UpdateUserReq;
import net.gepafin.tendermanagement.model.request.UserReq;
import net.gepafin.tendermanagement.enums.RoleStatusEnum;
import net.gepafin.tendermanagement.enums.UserStatusEnum;
import net.gepafin.tendermanagement.model.request.*;
import net.gepafin.tendermanagement.model.response.UserSamlResponse;
@@ -32,18 +30,10 @@ public class UserServiceImpl implements UserService {
@Autowired
private Validator validator;
@Autowired
private SamlSuccessHandler samlSuccessHandler;
@Override
@Transactional(rollbackFor = Exception.class)
public JWTToken createUser(HttpServletRequest request, String tempToken, UserReq userReq) {
if (tempToken == null) {
validator.validateRequest(request,RoleStatusEnum.ROLE_SUPER_ADMIN);
}else {
samlSuccessHandler.validateToken(tempToken, userReq.getCodiceFiscale());
}
return userDao.createUser(request, tempToken, userReq);
}
@@ -67,7 +57,7 @@ public class UserServiceImpl implements UserService {
}
@Override
public JWTToken login(LoginReq loginReq,HttpServletRequest request) {
public JWTToken login(LoginReq loginReq, HttpServletRequest request) {
return userDao.login(loginReq,request);
}
@@ -87,8 +77,8 @@ public class UserServiceImpl implements UserService {
return userDao.resetPassword(resetPasswordReq);
}
@Override
public Boolean changePassword(ChangePasswordRequest request){
return userDao.changePassword(request);
public Boolean changePassword(HttpServletRequest httpServletRequest, ChangePasswordRequest request){
return userDao.changePassword(validator.validateUser(httpServletRequest), request);
}
@Override
public void logoutUser(HttpServletRequest request, HttpServletResponse response) {
@@ -127,8 +117,8 @@ public class UserServiceImpl implements UserService {
}
@Override
@Transactional(readOnly = true)
public List<UserResponseBean> getAllUsers(Long roleId) {
// Calling DAO Function
return userDao.getAllUsers(roleId);
public List<UserResponseBean> getAllUsers(HttpServletRequest request, Long roleId) {
UserEntity user=validator.validateUser(request);
return userDao.getAllUsers(user, roleId);
}
}