You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

180 lines
8.1 KiB
Markdown

# Local Debug enviroment setup
## Razer-pay-backend-api
* Create `/home/config`
* Update these file
* baseEnv.properties
```ini
#部署国家
DEPLOY_COUNTRY=Singapore
MANAGEMENT_DEPLOY_COUNTRY=Malaysia,Singapore
DEPLOY_MODE=uat
################通用配置部分####################
#通用redis配置部分
#REDIS_HOST=172.88.1.229
#REDIS_PORT=6379
#REDIS_PASSWORD=clkj123456
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=admin
allUrls=Malaysia_https://api-uat.pay.razer.com_ws://api-uat.pay.razer.com:9015/websocket,Singapore_https://api-uat-sg.pay.razer.com_ws://content-uat-sg.pay.razer.com:9015/websocket
#java api url 前缀
WEBSOCKET_URL=ws://content-uat-sg.pay.razer.com:9015/websocket
JAVAAPI_URL_PREFIX=https://api-uat-sg.pay.razer.com
#MQ host name
#MQ_HOST_NAME=tcp://172.88.1.149:61616
#MQ_USERNAME=admin
#MQ_PASSWORD=admin
MQ_HOST_NAME=tcp://localhost:61616
MQ_USERNAME=admin
MQ_PASSWORD=admin
```
* Singapore_env.properties
```ini
数据库配置
jdbc.driverClassName=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/razerpay-singapore-product?useSSL=false&useUnicode=true&characterEncoding=UTF8&characterSetResults=UTF8&serverTimezone=UTC
jdbc.username=root
jdbc.password=root
```
* launch from command prompt `gradle bootrun`
* bypass authentication code - setting breakpoint at BusinessAspect::doAround() class
## razer-pay-wallet-api
* create `razer-pay-wallet-api/config/default.json`
```json
{
"database": {
"database": "razerpay-singapore-product",
"username": "root",
"password": "root",
"host": "localhost"
},
"redis": {
"host": "localhost",
"port": 6379,
"password": "admin",
"topupLimitCheck": "true"
},
"tnc": {
"title": "Razer Pay Terms of Service & Privacy Policy Update",
"content": "Razer Pay is updating its Terms of Service to inform you of the changes to the Wallet Limits for verified and unverified Razer Pay Accounts. The updated Terms of Service will take effect on the date of posting that is 06 May 2020. Your registration and/or continued use of the Razer Pay Service shall constitute your acceptance of the updated Terms of Service. If you would like more information, you may contact our Customer Support Lina and our other customer support staff."
},
"ossConfig": {
"region": "oss-ap-southeast-3",
"accessKeyId": "LTAI0NCWIPAQ1Z9N",
"accessKeySecret": "3sYlH1bc97yYjv5JcwThqyhQMNRa42",
"bucket": "certification"
},
"awsConfig": {
"accessKeyId": "AKIAJXPY3N7XFSIYCIVQ",
"secretAccessKey": "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",
"imagePath": "certification-production",
"region": "ap-southeast-1",
"bucket": "rpd-bucket-chenling-singapore",
"smtp": {
"accessKeyId": "AKIA4YZEDSSVENY7F4BL",
"secretAccessKey": "BGYQfUYDbqdWMd79+23DfCyglmPhzx2XLazuTrghNKFv",
"emailFrom": "noreply@pay.razer.com",
"region": "us-east-1"
}
},
"deployConfig": {
"country": "singapore"
},
"firebaseConfig": {
"type": "service_account",
"project_id": "one-2-pay-my",
"private_key_id": "f72deabfab3fd34ea4978c301d515c3540c0a5ce",
"private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCg7z54SBWgrKlR\nguA6ztrpik/xE5qDH4yvCwYd48c/I9EUZHEGwfeDIP/FQkmGf9+IoLBNhIh2v8Jl\noeiA99357/Bt4mG+/YUbrv9nlvVbbJkdATKuc46gIIa/waBV5JgWpwdIGwcPt6a1\n4+oypVX0TObfw+D/rT4I5SUlktzAAUMxjdEBuJLQxWZVbBu9BMluJRqoQmSBMmHv\nwXVXdnCZdC5mX8LMQQDrZTHG2+ktspfhWB0i1J2VPxmBtswYBSsMHTN50sMaICaV\nwvpHQV/nI0WhdJghOaCHtYMsxyEjsk5u18r1PzYja1j5srU3UnUnb6c4nlJ3g/43\nxAILRfoPAgMBAAECggEAF/zhIluYQa1KxZgM5ScdES9pEAV8g+vpc9PgUwc3FS25\nBeGcyUWTJ4v9I8FoJTCdOIe/D6bgElct2ilCdyq6/vypKS/Tovy14PT6I84n/zsW\nLXEWxVL7INoIS7/ILtVWaBX4a2J/8HNO2ZDBwU/Mmo/138eaG3IOq5PAMDQOTF4H\nEa6nJGRMULQVrM9Lf9ZkAeGn1qEV6Vp0I+g9cJJRQ5CSPboVY0lMfLoAqctQ2l1c\nTZ4O+RlaEFQxPReFtGss4BMuSbyjtODQWcYJj3K+fBXUzY0lSwWuB70ys7Me/1vC\nhGy+40dua4ViCgxjGRNr4V66kAndHmGKltdBAumMvQKBgQDdYTI1yT9xTZfU7T0o\nhCfiVqjsD/zpJoFCTZbzT/9gFM1kjHSIm1N9UwBfyCOfGKydmQtpo8K0DMeIYDJF\natpHNIkw+CHsb4c7ejD5pPccquXaNYOwnhHLYIEnt0K4a7vWRP6fOAr4TRWxDIM0\nIZmjOQgn1c/upoXG8eyen+lOTQKBgQC6GinEDKg7ZDepJypXvAEIXfoPYAwFyuzw\nxDYv4ErfCwR7gvuXIvRpjuueBPUmiodNoiPG7KvBGsJYjm0Cyve6Ez/TDGeXo4wV\nj2t/AMHYcpI6NWSmdoL3Cl8F9mFQKdmr51rmG3YN7sOu4tyv8YD5iPfspdGR5Piv\n5GValVfvywKBgASUmkFapKFnhZi2P+myslCQknYv7n+0eEAy8sieAx6tz4IhFdgt\nvpB9Qyi4L2R/UjMAk6ff54tqKEa+Fsww5ctLXvtQZwNJW3bzlEfWDfbd4ludd9gT\nrTKUEJgNxqeiMwS/8LTCqBdzINvE8oIFn/QsneqVFfROJb50Cv1NObqRAoGAJwZ7\ngagh0yqF3Yvf/jvnf4itenHqs4BFRYvvzQRczv7xdrEV7zCeTlBxKlbhza45B1eb\n5wgUUE87N/TN+Ur0velxdeFhC9R4+MB1i1FuVORZs6kkrR+nAQUEvixXZccQ5VKD\npkNV80ABevgJzT94i1tkmhR/qPd6CvB7LI6qvRcCgYBg+/DwtGwVAe+/INJg9nFN\nN4st/iN+K/XtNssux2n6sTNFS2JU5jFzMz5KvFgezTYEpV++OU5DvsODqXgGa9Ct\nmGk4HcL55Ep0QHlZp5dgRJ+5XP8bjRNeo2Jhvea6ZvQoAXGaF5JfefI+6oiUlV4S\nLfXBWmItyRijbT+7gSZciQ==\n-----END PRIVATE KEY-----\n",
"client_email": "firebase-adminsdk-pasnh@one-2-pay-my.iam.gserviceaccount.com",
"client_id": "101427092907458528864",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-pasnh%40one-2-pay-my.iam.gserviceaccount.com"
},
"mq": {
"address": "localhost",
"port": "61613",
"user": "admin",
"pass": "admin",
"protocolVersion": "1.0"
},
"rms": {
"rmsInitUrl": "https://www.onlinepayment.com.my/MOLPay/API/RazerPay/payment_miniapp.php",
"rmsSuccessUrl": "https://www.onlinepayment.com.my//MOLPay/RazerPay/notification.php",
"rmsSecret": "2d150dc8ca3eb40bd38124266d0a8e7867ca5f9e94db85d832497b7351a703a3",
"rmsApiSecret": "f3a25b8e58a2a222d042eeaa700ad3e58036f862469432eb15dc4ab604d060ce",
"visaConfirmUrl": "https://visa-backend-sg.pay.razer.com/visa/v1/card/auth/update",
"visaSecretKey": "a11d7c9d70e3703acc3017cdcb8d3d917fbac1b0db87d24623558da2e4e12c2a"
},
"recurringPayment": {
"recurringPaymentUrl": "https://www.onlinepayment.com.my/MOLPay/API/Recurring/input_v3.php",
"recordType": "F"
},
"testFilter": {
"accounts": [
"60101822379"
],
"types": [
"IS_ICON_DISPLAY"
]
},
"rmsPrefix": "RZP-",
"visaConfig": {
"listCardsUrl": "https://api-sg.pay.razer.com/v3/card/list",
"changeCardStatusUrl": "https://api-sg.pay.razer.com/v3/card/changeStatus",
"showCardDetailsUrl": "https://api-sg.pay.razer.com/v3/card/showCardDetails",
"cardEnquiryUrl": "",
"getCardStatementUrl": "",
"generateCardImageUrl": "",
"setCardPinUrl": " https://api-sg.pay.razer.com/v3/card/setPin",
"activateCardPinUrl": "https://api-sg.pay.razer.com/v3/card/activate",
"convertCardUrl": "https://api-sg.pay.razer.com/v3/card/convert"
},
"perx": {
"perx_api_host": "https://api-razer.perxtech.io",
"perx_client_id": "d0bcb1115b22c807d7d3d0edf0c69a2a798e910edc0cc78cf1c8c35d8717732f",
"perx_client_secret": "8ca55ca52b89170d0c28f12b163d9dfca0ced0a857c9dd7aa4b7dde7362caabf",
"event_rule_id_ekyc": "483df061-2b26-4b02-a302-3d7cbc411792",
"event_rule_id_card_validation": "aa190907-1c74-4030-8b39-a4e43fcc8c28"
}
}
```
* start docker container for mysql & redis
* npm start
* bypass some authentication code in `server.js` if needed
```js
// add this
app.use('/', routes);
// bypass below
// app.use('/', [auth, jwtMiddleware.processRequest()], routes);
// app.use('/', jwtMiddleware.processVisaMiddlewareRequest(), middlewareRoutes);
```