Add company data to user response in API
This commit is contained in:
@@ -10,12 +10,14 @@ import net.gepafin.tendermanagement.entities.UserEntity;
|
|||||||
import net.gepafin.tendermanagement.enums.RoleStatusEnum;
|
import net.gepafin.tendermanagement.enums.RoleStatusEnum;
|
||||||
import net.gepafin.tendermanagement.enums.UserStatusEnum;
|
import net.gepafin.tendermanagement.enums.UserStatusEnum;
|
||||||
import net.gepafin.tendermanagement.model.request.*;
|
import net.gepafin.tendermanagement.model.request.*;
|
||||||
|
import net.gepafin.tendermanagement.model.response.CompanyResponse;
|
||||||
import net.gepafin.tendermanagement.model.response.RoleResponseBean;
|
import net.gepafin.tendermanagement.model.response.RoleResponseBean;
|
||||||
import net.gepafin.tendermanagement.model.response.UserSamlResponse;
|
import net.gepafin.tendermanagement.model.response.UserSamlResponse;
|
||||||
import net.gepafin.tendermanagement.model.response.UserResponseBean;
|
import net.gepafin.tendermanagement.model.response.UserResponseBean;
|
||||||
import net.gepafin.tendermanagement.model.util.JWTToken;
|
import net.gepafin.tendermanagement.model.util.JWTToken;
|
||||||
import net.gepafin.tendermanagement.repositories.BeneficiaryRepository;
|
import net.gepafin.tendermanagement.repositories.BeneficiaryRepository;
|
||||||
import net.gepafin.tendermanagement.repositories.UserRepository;
|
import net.gepafin.tendermanagement.repositories.UserRepository;
|
||||||
|
import net.gepafin.tendermanagement.service.CompanyService;
|
||||||
import net.gepafin.tendermanagement.service.impl.AuthenticationService;
|
import net.gepafin.tendermanagement.service.impl.AuthenticationService;
|
||||||
import net.gepafin.tendermanagement.util.Utils;
|
import net.gepafin.tendermanagement.util.Utils;
|
||||||
import net.gepafin.tendermanagement.web.rest.api.errors.CustomValidationException;
|
import net.gepafin.tendermanagement.web.rest.api.errors.CustomValidationException;
|
||||||
@@ -27,18 +29,22 @@ import org.slf4j.Logger;
|
|||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import static net.gepafin.tendermanagement.util.Utils.setIfUpdated;
|
import static net.gepafin.tendermanagement.util.Utils.setIfUpdated;
|
||||||
|
|
||||||
@Repository
|
@Component
|
||||||
public class UserDao {
|
public class UserDao {
|
||||||
|
|
||||||
private final Logger log = LoggerFactory.getLogger(UserDao.class);
|
private final Logger log = LoggerFactory.getLogger(UserDao.class);
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private UserRepository userRepository;
|
private UserRepository userRepository;
|
||||||
|
@Autowired
|
||||||
|
private CompanyDao companyDao;
|
||||||
@Autowired
|
@Autowired
|
||||||
private AuthenticationService authService;
|
private AuthenticationService authService;
|
||||||
|
|
||||||
@@ -77,8 +83,9 @@ public class UserDao {
|
|||||||
beneficiaryEntity.setLastName(userReq.getLastName());
|
beneficiaryEntity.setLastName(userReq.getLastName());
|
||||||
beneficiaryEntity.setOrganization(userReq.getOrganization());
|
beneficiaryEntity.setOrganization(userReq.getOrganization());
|
||||||
beneficiaryEntity.setPhoneNumber(userReq.getPhoneNumber());
|
beneficiaryEntity.setPhoneNumber(userReq.getPhoneNumber());
|
||||||
|
beneficiaryEntity =beneficiaryRepository.save(beneficiaryEntity);
|
||||||
}
|
}
|
||||||
return beneficiaryRepository.save(beneficiaryEntity);
|
return beneficiaryEntity;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void validateUserRequest(String tempToken, UserReq userReq) {
|
private void validateUserRequest(String tempToken, UserReq userReq) {
|
||||||
@@ -188,6 +195,8 @@ public class UserDao {
|
|||||||
RoleResponseBean roleResponseBean = roleDao.convertRoleEntityToRoleResponse(userEntity.getRoleEntity());
|
RoleResponseBean roleResponseBean = roleDao.convertRoleEntityToRoleResponse(userEntity.getRoleEntity());
|
||||||
userResponseBean.setRole(roleResponseBean);
|
userResponseBean.setRole(roleResponseBean);
|
||||||
userResponseBean.setLastLogin(userEntity.getLastLogin());
|
userResponseBean.setLastLogin(userEntity.getLastLogin());
|
||||||
|
List<CompanyResponse> companyResponseBeans = companyDao.getCompanyByUserId(userEntity.getId());
|
||||||
|
userResponseBean.setCompanies(companyResponseBeans);
|
||||||
if (userEntity.getBeneficiary() == null) {
|
if (userEntity.getBeneficiary() == null) {
|
||||||
userResponseBean.setFirstName(userEntity.getFirstName());
|
userResponseBean.setFirstName(userEntity.getFirstName());
|
||||||
userResponseBean.setLastName(userEntity.getLastName());
|
userResponseBean.setLastName(userEntity.getLastName());
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import lombok.NoArgsConstructor;
|
|||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
@@ -43,4 +44,6 @@ public class LoginResponse {
|
|||||||
private LocalDateTime createdDate;
|
private LocalDateTime createdDate;
|
||||||
|
|
||||||
private LocalDateTime updatedDate;
|
private LocalDateTime updatedDate;
|
||||||
|
|
||||||
|
private List<CompanyResponse> companies;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import net.gepafin.tendermanagement.enums.UserStatusEnum;
|
|||||||
import net.gepafin.tendermanagement.model.BaseBean;
|
import net.gepafin.tendermanagement.model.BaseBean;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
@@ -37,4 +38,5 @@ public class UserResponseBean extends BaseBean {
|
|||||||
|
|
||||||
private LocalDateTime dateOfBirth;
|
private LocalDateTime dateOfBirth;
|
||||||
|
|
||||||
|
private List<CompanyResponse> companies;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,11 +5,13 @@ import jakarta.servlet.http.HttpServletResponse;
|
|||||||
import net.gepafin.tendermanagement.config.Translator;
|
import net.gepafin.tendermanagement.config.Translator;
|
||||||
import net.gepafin.tendermanagement.config.jwt.TokenProvider;
|
import net.gepafin.tendermanagement.config.jwt.TokenProvider;
|
||||||
import net.gepafin.tendermanagement.constants.GepafinConstant;
|
import net.gepafin.tendermanagement.constants.GepafinConstant;
|
||||||
|
import net.gepafin.tendermanagement.dao.CompanyDao;
|
||||||
import net.gepafin.tendermanagement.dao.RoleDao;
|
import net.gepafin.tendermanagement.dao.RoleDao;
|
||||||
import net.gepafin.tendermanagement.entities.SamlResponseEntity;
|
import net.gepafin.tendermanagement.entities.SamlResponseEntity;
|
||||||
import net.gepafin.tendermanagement.entities.UserEntity;
|
import net.gepafin.tendermanagement.entities.UserEntity;
|
||||||
import net.gepafin.tendermanagement.enums.UserStatusEnum;
|
import net.gepafin.tendermanagement.enums.UserStatusEnum;
|
||||||
import net.gepafin.tendermanagement.model.request.LoginReq;
|
import net.gepafin.tendermanagement.model.request.LoginReq;
|
||||||
|
import net.gepafin.tendermanagement.model.response.CompanyResponse;
|
||||||
import net.gepafin.tendermanagement.model.response.LoginResponse;
|
import net.gepafin.tendermanagement.model.response.LoginResponse;
|
||||||
import net.gepafin.tendermanagement.model.response.RoleResponseBean;
|
import net.gepafin.tendermanagement.model.response.RoleResponseBean;
|
||||||
import net.gepafin.tendermanagement.model.response.UserSamlResponse;
|
import net.gepafin.tendermanagement.model.response.UserSamlResponse;
|
||||||
@@ -42,6 +44,8 @@ public class AuthenticationService {
|
|||||||
|
|
||||||
private final TokenProvider tokenProvider;
|
private final TokenProvider tokenProvider;
|
||||||
private final AuthenticationManager authenticationManager;
|
private final AuthenticationManager authenticationManager;
|
||||||
|
@Autowired
|
||||||
|
private CompanyDao companyDao;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private UserRepository userRepository;
|
private UserRepository userRepository;
|
||||||
@@ -90,10 +94,12 @@ public class AuthenticationService {
|
|||||||
return jwtToken;
|
return jwtToken;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static LoginResponse getLoginResponse(UserEntity user, RoleResponseBean roleResponseBean) {
|
private LoginResponse getLoginResponse(UserEntity user, RoleResponseBean roleResponseBean) {
|
||||||
LoginResponse loginResponse = new LoginResponse();
|
LoginResponse loginResponse = new LoginResponse();
|
||||||
loginResponse.setEmail(user.getEmail());
|
loginResponse.setEmail(user.getEmail());
|
||||||
loginResponse.setId(user.getId());
|
loginResponse.setId(user.getId());
|
||||||
|
List<CompanyResponse> companyResponseBeans = companyDao.getCompanyByUserId(user.getId());
|
||||||
|
loginResponse.setCompanies(companyResponseBeans);
|
||||||
loginResponse.setRole(roleResponseBean);
|
loginResponse.setRole(roleResponseBean);
|
||||||
loginResponse.setStatus(user.getStatus());
|
loginResponse.setStatus(user.getStatus());
|
||||||
loginResponse.setLastLogin(user.getLastLogin());
|
loginResponse.setLastLogin(user.getLastLogin());
|
||||||
|
|||||||
@@ -9,4 +9,4 @@ spring.h2.console.enabled=true
|
|||||||
base-url=http://bandi-api.gepafin.it
|
base-url=http://bandi-api.gepafin.it
|
||||||
|
|
||||||
isVatCheckGloballyDisabled = false
|
isVatCheckGloballyDisabled = false
|
||||||
fe.base.url=http://bandi.gepafin.it
|
fe.base.url=http://gepafin-production-fe.s3-website.eu-central-1.amazonaws.com
|
||||||
Reference in New Issue
Block a user