package com.billpaymentservice.bbps.util; import java.text.SimpleDateFormat; import java.util.Date; public class BBPSConstant { // Jwt Token Expiration Time public static final long JWT_EXPIRATION_MS = 1000 * 60 * 60 * 24; // 24 hours public static final long JWT_TEMPERARY_EXPIRATION_MS = 1000 * 60 * 5; // 5 minutes public static final long REFRESH_EXPIRATION_MS = 1000L * 60 * 60 * 24 * 7; // 7 days public static final Long SENT_TO_PROCESSOR_CODE = 198L; public static final Long SUCCESS_CODE = 200L; public static final Long FAILED_CODE = 99L; public static final int OTP_VERIFIED_USER_NOT_FORUN = 601; public static final Long SCHEDULER_CODE = 222L; public static final Long PENDING_CODE = 211L; public static final Long FRAUD_CODE = 1001L; public static final int BADREQUEST = 400; public static final String SUCCESS_STATUS = "success"; public static final String FAILED_STATUS = "failed"; public static final String PENDING_STATUS = "pending"; public static final String SENT_TO_PROCESSOR_STATUS = "txn sent to processor"; public static final String SUCCESS_REMARK = "200-Transaction process successfully"; public static final String FAILED_REMARK = "99-Transaction failed"; public static final String FRAUD_REMARK = "1001-Transaction failed due to a fraud attempt"; public static final String CODE_MERCHANT_INACTIVE = "B002"; public static final String CODE_MERCHANT_INVALID = "B003"; public static final String ENCRYPTION_FAILED = "Error in encrypting order request"; public static final String BILLER_URL = "/billers"; public static final String MASTER_CATEGORY_URL = "/categories-master?tenantId="; public static final String CONTACT_MASTER_URL = "/contact-master?tenantId=%s&category=%s"; public static final String CUSTOMER_PARAM_GROUP = "/customerParamGroup?billerId="; public static final String AMOUNT_OPTIONS = "/amountOptions?billerId="; public static final String PLAN_CATEGORIES = "/planCategories?billerId="; public static final String INITIATING_CHANNEL = "/initiatingChannel"; public static final String BILLER_VALIDATE_URL = "/couapp/bills/validate"; public static final String BILL_VALIDATE_ID_URL = "/couapp/bills/validate/byId?billId="; public static final String BILLER_DATA_FETCH_URL = "/billersById?billerId="; public static final String CUSTOMPARAM_URL = "/customerParam?billerId="; public static final String BILL_FETCH_INTI = "/couapp/bills/fetch"; public static final String BILL_FETCH_BY_ID = "/couapp/bills/fetch/byId?billId="; public static final String BILL_FETCH_BY_CLIENT_REQ_ID = "/couapp/bills/fetch/byClientId?clientReqId="; public static final String BILL_VALIDATE_BY_CLIENT_REQ_ID = "/couapp/bills/validate/byClientId?clientReqId="; public static final String PAYMENT_URL = "/agent/bills/payment"; public static final String CHECK_TRANSACTION_URL = "/transactions/payment/byTxnId?txnId="; public static final String CHECK_TRANSACTION_BY_CLIENT_URL = "/bills/fetch/byClientId?clientReqId="; public static final String CHECK_TRANSACTION_BY_CLIENT_REQ_ID_URL = "/transactions/payment/byClientId?clientReqId="; public static final String DISPOSTION_URL = "/disposition"; public static final String TICKET_DISPOSTION_URL = "/ticket-disposition"; public static final String COMPALINT_STATUS = "/couapp/ticket/status"; public static final String REOPEN_COMPALINT = "/couapp/complaints/reopen"; public static final String COMPLAINT_HISTORY = "/couapp/ticket/history?ticketId="; public static final String CLOSE_COMPLAINT = "/couapp/complaints/closure"; public static final String VIEW_COMPLAINT_BY_ID = "/couapp/ticket/details?ticketId="; public static final String PLANS_URL = "/plans"; public static final String ADD_COMPLAIN_ENDPOINT = "/couapp/ticket/raise"; public static final String VIEW_ALL_COMPLAINTS_BASE = "/couapp/tickets"; // New centralized string/constants used across services public static final String API_INITIATE_BILL_FETCH = "InitiateBillFetch"; public static final String API_FETCH_BILL_BY_ID = "FetchBillById"; public static final String API_INITIATE_BILL_VALIDATE = "InitiateBillValidate"; public static final String API_FETCH_BILL_VALIDATE_BY_CLIENT_ID = "FetchBillValidateByClientIdRequest"; public static final String API_FETCH_BILL_BY_CLIENT_ID = "FetchBillByClientIdRequest"; public static final String HTTP_POST = "POST"; public static final String HTTP_GET = "GET"; public static final String INVALID_RESPONSE = "INVALID_RESPONSE"; public static final String JSON_ERROR = "JSON_ERROR"; public static final String CALLBACK_RECEIVED_SUCCESS = "CallBack Recieved Successfully"; public static final String NO_BILL_FOUND = "No Bill Found for given Client Req Id"; public static final String SUCCESS_CODE_STR = "200"; // Added constants referenced by ComplainServiceImpl public static final String ORG_ID = "ORG001"; public static final String API_ADD_COMPLAIN = "ADD_COMPLAIN"; public static final String API_COMPLAINT_STATUS = "COMPLAINT_STATUS"; public static final String API_VIEW_COMPLAINT_HISTORY = "View_Complaint_History"; public static final String API_VIEW_COMPLAINT_BY_ID = "View_Complaint_By_ID"; public static final String API_GET_ALL_MASTER_OPTIONS = "View All Options Fetch By Id"; public static final String API_CHECK_TXN_STATUS = "CheckTxnStatus"; public static final String API_VIEW_ALL_COMPLAINTS_BY_STATUS = "View_All_Complaint_By_Status_Type"; public static final String API_VIEW_ALL_COMPLAINTS_BY_USER_ID = "View_All_Complaint_By_USER_ID"; // API names used by MasterDataServiceImpl public static final String API_GET_MASTER_DATA = "GetMasterData"; public static final String API_GET_BILLER_BY_ID = "GetBillerByBillerId"; public static final String API_GET_CUSTOMER_PARAM_BY_BILLER_ID = "GetCustomerParamByBillerId"; public static final String API_FETCH_MASTER_DATA_CATEGORY_WISE = "FetchMasterDataCategoryWise"; public static final String API_FETCH_CATEGORY_MASTER_DATA = "FetchContactMasterResponse"; public static final String API_FETCH_CUSTOMER_PARAM_GROUP = "FetchCustomerParamGroup"; public static final String API_FETCH_ALL_MASTER_AMOUNT_OPTION = "FetchAllMasterAmountOption"; public static final String API_FETCH_PLAN_CATEGORIES = "FetchPlanCategorie"; public static final String API_FETCH_INITIATING_CHANNEL = "FetchInitiatingChannel"; public static final String API_FETCH_PLAN_BY_CATEGORIES = "FetchPlanByCategories"; public static final String API_GET_TICKET_DISPOSITIONS = "GetTicketDispositionDetails"; public static final String GET_PAYMENT_HISTORY = "GET_PAYMENT_HISTORY"; public static final String GET_PAYMENT_HISTORY_BY_TXN_ID = "GET_PAYMENT_HISTORY_TXN_ID"; // Payment related API names public static final String API_INITIATE_PAYMENT = "InitiatePayment"; public static final String API_CHECK_TRANSACTION_STATUS = "CheckTransactionStatus"; public static final String API_CHECK_TRANSACTION_PUBLIC = "checkTrasactionStatus"; public static final String API_CHECK_BY_CLIENT_REQ_ID = "checkTrasactionStatusbyClientReqId"; // Response and helper keys (already existing ones kept) public static final String RESPONSE_GENERIC_KEY = "genericResponse"; // Common messages used in PaymentServiceImpl public static final String EMPTY_RESPONSE_FROM_BBPS = "Empty response from BBPS"; public static final String INVALID_STRUCTURE = "INVALID_STRUCTURE"; public static final String FAILED_STR = "FAILED"; public static final int HTTP_OK_INT = 200; public static final int HTTP_NOT_FOUND = 404; public static final int HTTP_INTERNAL_SERVER_ERROR = 500; // Response and helper keys public static final String HTTP_SERVICE_ERROR_PREFIX = "HttpService Error"; public static final String RESPONSE_DATA_KEY = "data"; public static final String RESPONSE_MESSAGE_KEY = "message"; public static final String RESPONSE_STATUS_KEY = "status"; public static final String RESPONSE_STATUSCODE_KEY = "statusCode"; public static final String RESPONSE_REMARKS_KEY = "remarks"; public static final String RESPONSE_GENERAL_RESP = "generalResp"; public static final String SUCCESS_RESPONSE = "SUCCESS"; // Newly added constants for Payment integration (avoid magic strings in service code) public static final String UAT_PAYMENT_URL_WEB = "https://uat.godemo.in/api/UATIntegration/uat/payin/paymentrequest"; public static final String UAT_PAYMENT_URL_INTENT = "https://uat.godemo.in/api/UATIntegration/paymentrequest/seamless"; public static final String RESP_CODE_KEY = "respCode"; // key used by HttpService responses public static final String RESPONSE_TYPE_HTML = "HTML"; public static final String RESPONSE_TYPE_QR = "QR"; public static final String RESPONSE_TYPE_JSON = "JSON"; public static final String API_START_PAYMENT = "StartPayment"; public static final String WARNING_STATUS = "WARNING"; public static final String SIGNATURE_MISMATCH = "SIGNATURE_MISMATCH"; // Additional constants to remove magic values from service implementation public static final String ORDER_PREFIX = "ORD"; public static final String DEFAULT_DATE_OF_REG = "2025-12-31"; public static final String TXN_REQ_TYPE = "S"; // Common numeric status codes used by payment provider public static final int STATUS_CODE_205 = 205; public static final int STATUS_CODE_206 = 206; public static final int STATUS_CODE_207 = 207; public static final int STATUS_CODE_1003 = 1003; // Callback status labels (preserve existing uppercase values expected in DB) public static final String CALLBACK_STATUS_SUCCESS = "SUCCESS"; public static final String CALLBACK_STATUS_FAILED = "FAILED"; public static final String CALLBACK_STATUS_RECEIVED = "RECEIVED"; // Merchant acknowledgement codes returned to PG/callback public static final String MERCHANT_ACK_OK = "206"; public static final String MERCHANT_ACK_NO_MATCH = "205"; public static final String MERCHANT_ACK_REJECT = "207"; public static final String HTML_RESPONSE_MESSAGE = "HTML Response Received"; // Restore constants used by TxnHistoryServiceImpl and ComplainServiceImpl public static final String DB_OPTIONS = "/db/options"; // used as a logical URL/identifier for master options public static final String NULL_DATA_FROM_DB = "NULL_DATA_FROM_DB"; public static final String NO_MASTER_FIELDS_FOUND = "No master fields found"; public static final String ALL_MASTER_FIELDS_FETCH = "All master fields fetched successfully"; public static final String ALL_COMPLAINT_FIELDS_FETCH = "All complaint fields fetched successfully"; public static final String SOMETHING_WENT_WRONG = "Something went wrong"; public static final String USER_ID_IS_EMPTY = "User id is empty"; // Common user-facing and internal message constants used by payment flow public static final String MSG_UPSTREAM_HTTP_ERROR = "Upstream HTTP error"; public static final String MSG_EMPTY_RESPONSE_PROVIDER = "Empty response from payment provider"; public static final String MSG_EMPTY_RESPONSE_PG = "Empty response from PG"; public static final String MSG_INVALID_JSON_FROM_API = "Invalid JSON received from payment API"; public static final String MSG_TXN_PROCESSING = "Transaction processing"; public static final String MSG_WARNING_FROM_MERCHANT = "Warning from merchant"; public static final String MSG_FRAUD_REJECTED = "Fraud Rejected"; public static final String MSG_DECRYPTION_FAILED = "Decryption failed"; public static final String MSG_INVALID_DECRYPTED_JSON = "Invalid decrypted JSON"; public static final String MSG_NO_MATCHING_RECORD = "No matching record"; public static final String MSG_SIGNATURE_MISMATCH = "Signature mismatch"; public static final String MSG_CALLBACK_PROCESSED = "Callback processed"; // Timing/delay constants (milliseconds) public static final long BILL_FETCH_DELAY_MS = 5000L; // used after initiate bill fetch public static final long BILL_VALIDATE_DELAY_MS = 12000L; // used after initiate bill validate public static final long PAYMENT_STATUS_DELAY_MS = 9000L; // used after initiate payment public static final String enckey = "zk52olsyr9fl95h50eus8bhtyhoo5lp7"; public static final String mid = "Test-By-Aditya-1001"; public static final String callbackurl = "https://checkout.solwio.in/PGPayU/payu/callback"; public static final String companyName = "techwork technology"; }