update complaint
This commit is contained in:
@@ -2,13 +2,14 @@ package com.billpaymentservice.bbps.config;
|
|||||||
|
|
||||||
import java.security.cert.X509Certificate;
|
import java.security.cert.X509Certificate;
|
||||||
|
|
||||||
|
import javax.net.ssl.HttpsURLConnection;
|
||||||
import javax.net.ssl.SSLContext;
|
import javax.net.ssl.SSLContext;
|
||||||
import javax.net.ssl.TrustManager;
|
import javax.net.ssl.TrustManager;
|
||||||
import javax.net.ssl.X509TrustManager;
|
import javax.net.ssl.X509TrustManager;
|
||||||
|
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
|
import org.springframework.http.client.SimpleClientHttpRequestFactory;
|
||||||
import org.springframework.web.client.RestClient;
|
import org.springframework.web.client.RestClient;
|
||||||
|
|
||||||
@Configuration
|
@Configuration
|
||||||
@@ -16,24 +17,31 @@ public class RestClientConfig {
|
|||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
public RestClient restClient() throws Exception {
|
public RestClient restClient() throws Exception {
|
||||||
// ✅ Create trust all SSL context
|
|
||||||
SSLContext sslContext = SSLContext.getInstance("TLS");
|
// Create Trust-All SSL context
|
||||||
TrustManager[] trustAllCerts = new TrustManager[]{
|
TrustManager[] trustAllCerts = new TrustManager[]{
|
||||||
new X509TrustManager() {
|
new X509TrustManager() {
|
||||||
public X509Certificate[] getAcceptedIssuers() {
|
public X509Certificate[] getAcceptedIssuers() {
|
||||||
return new X509Certificate[0];
|
return new X509Certificate[0];
|
||||||
}
|
}
|
||||||
public void checkClientTrusted(X509Certificate[] certs, String authType) {
|
public void checkClientTrusted(X509Certificate[] certs, String authType) {}
|
||||||
}
|
public void checkServerTrusted(X509Certificate[] certs, String authType) {}
|
||||||
public void checkServerTrusted(X509Certificate[] certs, String authType) {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
SSLContext sslContext = SSLContext.getInstance("TLS");
|
||||||
sslContext.init(null, trustAllCerts, new java.security.SecureRandom());
|
sslContext.init(null, trustAllCerts, new java.security.SecureRandom());
|
||||||
|
|
||||||
// ✅ Create RestClient with custom SSL context
|
// Use JDK's Simple HTTP client with custom SSL context
|
||||||
|
SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory();
|
||||||
|
requestFactory.setBufferRequestBody(false);
|
||||||
|
|
||||||
|
// Apply SSL context to HttpsURLConnection globally
|
||||||
|
HttpsURLConnection.setDefaultSSLSocketFactory(sslContext.getSocketFactory());
|
||||||
|
HttpsURLConnection.setDefaultHostnameVerifier((hostname, session) -> true);
|
||||||
|
|
||||||
return RestClient.builder()
|
return RestClient.builder()
|
||||||
.requestFactory(new HttpComponentsClientHttpRequestFactory())
|
.requestFactory(requestFactory)
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,10 +1,13 @@
|
|||||||
package com.billpaymentservice.bbps.dto.request;
|
package com.billpaymentservice.bbps.dto.request;
|
||||||
|
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
public class PollBackRequest extends BaseClass{
|
public class PollBackRequest extends BaseClass {
|
||||||
private String orderId;
|
|
||||||
|
@NotBlank(message = "order Id not be null")
|
||||||
|
private String orderId;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import lombok.Setter;
|
|||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "Bharat_connect_master")
|
@Table(name = "bharat_connect_master")
|
||||||
public class BharatConnectMaster extends Auditable<String> {
|
public class BharatConnectMaster extends Auditable<String> {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
|||||||
@@ -7,6 +7,8 @@ import jakarta.persistence.Entity;
|
|||||||
import jakarta.persistence.GeneratedValue;
|
import jakarta.persistence.GeneratedValue;
|
||||||
import jakarta.persistence.GenerationType;
|
import jakarta.persistence.GenerationType;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
|
import jakarta.persistence.JoinColumn;
|
||||||
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
@@ -71,4 +73,8 @@ public class ComplainStatus extends Auditable<String> {
|
|||||||
|
|
||||||
@Column(name = "user_id")
|
@Column(name = "user_id")
|
||||||
private String userId;
|
private String userId;
|
||||||
|
|
||||||
|
@ManyToOne
|
||||||
|
@JoinColumn(name = "complaint_response_id")
|
||||||
|
private ComplaintResponseEntity complaintResponse;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,8 @@ import jakarta.persistence.Entity;
|
|||||||
import jakarta.persistence.GeneratedValue;
|
import jakarta.persistence.GeneratedValue;
|
||||||
import jakarta.persistence.GenerationType;
|
import jakarta.persistence.GenerationType;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
|
import jakarta.persistence.JoinColumn;
|
||||||
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
@@ -46,4 +48,8 @@ public class ComplaintHistory extends Auditable<String> {
|
|||||||
@Column(name = "user_id")
|
@Column(name = "user_id")
|
||||||
private String userId;
|
private String userId;
|
||||||
|
|
||||||
|
@ManyToOne
|
||||||
|
@JoinColumn(name = "complaint_response_id")
|
||||||
|
private ComplaintResponseEntity complaintResponse;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,12 +1,16 @@
|
|||||||
package com.billpaymentservice.bbps.entites;
|
package com.billpaymentservice.bbps.entites;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import com.billpaymentservice.bbps.audit.Auditable;
|
import com.billpaymentservice.bbps.audit.Auditable;
|
||||||
|
|
||||||
|
import jakarta.persistence.CascadeType;
|
||||||
import jakarta.persistence.Column;
|
import jakarta.persistence.Column;
|
||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.GeneratedValue;
|
import jakarta.persistence.GeneratedValue;
|
||||||
import jakarta.persistence.GenerationType;
|
import jakarta.persistence.GenerationType;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
|
import jakarta.persistence.OneToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
@@ -68,4 +72,16 @@ public class ComplaintResponseEntity extends Auditable<String> {
|
|||||||
@Column(name = "user_id")
|
@Column(name = "user_id")
|
||||||
private String userId;
|
private String userId;
|
||||||
|
|
||||||
|
@OneToMany(mappedBy = "complaintResponse", cascade = CascadeType.ALL, orphanRemoval = false)
|
||||||
|
private List<ComplainStatus> complaintStatusList;
|
||||||
|
|
||||||
|
@OneToMany(mappedBy = "complaintResponse", cascade = CascadeType.ALL, orphanRemoval = false)
|
||||||
|
private List<ComplaintHistory> historyList;
|
||||||
|
|
||||||
|
@OneToMany(mappedBy = "complaintResponse", cascade = CascadeType.ALL, orphanRemoval = false)
|
||||||
|
private List<ComplaintStatusDetails> statusDetailsList;
|
||||||
|
|
||||||
|
@OneToMany(mappedBy = "complaintResponse", cascade = CascadeType.ALL, orphanRemoval = false)
|
||||||
|
private List<ViewAllComplaintTicketStatusDetails> viewAllList;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,8 @@ import jakarta.persistence.Entity;
|
|||||||
import jakarta.persistence.GeneratedValue;
|
import jakarta.persistence.GeneratedValue;
|
||||||
import jakarta.persistence.GenerationType;
|
import jakarta.persistence.GenerationType;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
|
import jakarta.persistence.JoinColumn;
|
||||||
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
@@ -87,4 +89,8 @@ public class ComplaintStatusDetails extends Auditable<String> {
|
|||||||
@Column(name = "biller_name")
|
@Column(name = "biller_name")
|
||||||
private String billerName;
|
private String billerName;
|
||||||
|
|
||||||
|
@ManyToOne
|
||||||
|
@JoinColumn(name = "complaint_response_id")
|
||||||
|
private ComplaintResponseEntity complaintResponse;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+6
@@ -7,6 +7,8 @@ import jakarta.persistence.Entity;
|
|||||||
import jakarta.persistence.GeneratedValue;
|
import jakarta.persistence.GeneratedValue;
|
||||||
import jakarta.persistence.GenerationType;
|
import jakarta.persistence.GenerationType;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
|
import jakarta.persistence.JoinColumn;
|
||||||
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
@@ -86,4 +88,8 @@ public class ViewAllComplaintTicketStatusDetails extends Auditable<String> {
|
|||||||
|
|
||||||
@Column(name = "biller_name")
|
@Column(name = "biller_name")
|
||||||
private String billerName;
|
private String billerName;
|
||||||
|
|
||||||
|
@ManyToOne
|
||||||
|
@JoinColumn(name = "complaint_response_id")
|
||||||
|
private ComplaintResponseEntity complaintResponse;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,6 +9,11 @@ import com.billpaymentservice.bbps.entites.BBPSMastersData;
|
|||||||
@Repository
|
@Repository
|
||||||
public interface BBPSMasterDataRepo extends JpaRepository<BBPSMastersData, Long> {
|
public interface BBPSMasterDataRepo extends JpaRepository<BBPSMastersData, Long> {
|
||||||
|
|
||||||
@Query("from BBPSMastersData where mid = ?1 and isDeleted = false")
|
// @Query("from BBPSMastersData where mid = ?1 and isDeleted = false")
|
||||||
public BBPSMastersData findByMid(String mid);
|
// public BBPSMastersData findByMid(String mid);
|
||||||
|
|
||||||
|
@Query(value = "SELECT * FROM bbps_master_data WHERE mid = ?1 AND is_deleted = false",
|
||||||
|
nativeQuery = true)
|
||||||
|
BBPSMastersData findByMid(String mid);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+9
-4
@@ -1,12 +1,17 @@
|
|||||||
package com.billpaymentservice.bbps.repository;
|
package com.billpaymentservice.bbps.repository;
|
||||||
|
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
import org.springframework.data.jpa.repository.Query;
|
||||||
|
import org.springframework.data.repository.query.Param;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
import com.billpaymentservice.bbps.entites.BharatConnectMaster;
|
import com.billpaymentservice.bbps.entites.BharatConnectMaster;
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface BharatConnectMasterRepository extends JpaRepository<BharatConnectMaster,String>
|
public interface BharatConnectMasterRepository extends JpaRepository<BharatConnectMaster, String> {
|
||||||
{
|
// public BharatConnectMaster findByOrgId(String orgId);
|
||||||
public BharatConnectMaster findByOrgId(String orgId);
|
|
||||||
|
@Query(value = "SELECT * FROM bharat_connect_master WHERE org_id = :orgId", nativeQuery = true)
|
||||||
|
BharatConnectMaster findByOrgId(@Param("orgId") String orgId);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import java.time.LocalDateTime;
|
|||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.http.HttpHeaders;
|
import org.springframework.http.HttpHeaders;
|
||||||
@@ -71,19 +72,20 @@ public class Helper {
|
|||||||
BBPSMastersData merchantValidation = bbpsMasterDataRepo.findByMid(mid);
|
BBPSMastersData merchantValidation = bbpsMasterDataRepo.findByMid(mid);
|
||||||
|
|
||||||
if (merchantValidation == null) {
|
if (merchantValidation == null) {
|
||||||
LOGGER.warn("Merchant not found for MID: {}", mid);
|
LOGGER.warn("Merchant not found for MID: {}", mid);
|
||||||
throw new CustomException("Merchant not found by id", "FAILED", BBPSConstant.BADREQUEST, null);
|
throw new CustomException("Merchant not found by id", "FAILED", BBPSConstant.BADREQUEST, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (merchantValidation.getApiKey() == null && merchantValidation.getSecreteKey() == null) {
|
if (StringUtils.isBlank(merchantValidation.getApiKey())
|
||||||
LOGGER.warn("Merchant BBPS service is not active MID: {}", mid);
|
&& StringUtils.isBlank(merchantValidation.getSecreteKey())) {
|
||||||
throw new CustomException("Merchant BBPS Service is not active by mid", "FAILED", BBPSConstant.BADREQUEST,
|
|
||||||
null);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
LOGGER.warn("Merchant BBPS service is not active MID: {}", mid);
|
||||||
|
throw new CustomException("Merchant BBPS Service is not active by mid",
|
||||||
|
"FAILED", BBPSConstant.BADREQUEST, null);
|
||||||
|
}
|
||||||
if (!Boolean.TRUE.equals(merchantValidation.getIsActive())) {
|
if (!Boolean.TRUE.equals(merchantValidation.getIsActive())) {
|
||||||
LOGGER.warn("Merchant inactive for MID: {}", mid);
|
LOGGER.warn("Merchant inactive for MID: {}", mid);
|
||||||
throw new CustomException("Merchant is inactive", "FAILED", BBPSConstant.BADREQUEST, null);
|
throw new CustomException("Merchant is inactive", "FAILED", BBPSConstant.BADREQUEST, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
LOGGER.info("Merchant is valid and active for MID: {}", mid);
|
LOGGER.info("Merchant is valid and active for MID: {}", mid);
|
||||||
|
|||||||
@@ -20,9 +20,9 @@ swagger.server.description=Local Development Server
|
|||||||
# DataSource
|
# DataSource
|
||||||
spring.datasource.url=jdbc:postgresql://localhost:5432/BBPS
|
spring.datasource.url=jdbc:postgresql://localhost:5432/BBPS
|
||||||
spring.datasource.username=postgres
|
spring.datasource.username=postgres
|
||||||
#spring.datasource.password=UAT@DB_2025
|
spring.datasource.password=UAT@DB_2025
|
||||||
|
|
||||||
spring.datasource.password=himanshu@123
|
#spring.datasource.password=himanshu@123
|
||||||
spring.datasource.driver-class-name=org.postgresql.Driver
|
spring.datasource.driver-class-name=org.postgresql.Driver
|
||||||
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
|
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user