28 lines
983 B
JavaScript
28 lines
983 B
JavaScript
const creditCardService = require('../services/credit-card.service');
|
|
const responseHelper = require('../../../helpers/response.helper');
|
|
|
|
class CreditCardController {
|
|
static async charge(req, res) {
|
|
try {
|
|
const payload = req.body;
|
|
|
|
if (!payload.credit_card_token) {
|
|
return responseHelper.error(res, "credit_card_token wajib disertakan (dapatkan dari frontend Midtrans JS)", 400);
|
|
}
|
|
|
|
if (!payload.order_id || !payload.external_id) {
|
|
return responseHelper.error(res, "order_id dan external_id wajib diisi", 400);
|
|
}
|
|
|
|
const result = await creditCardService.createTransaction(payload);
|
|
|
|
return responseHelper.success(res, "Transaksi Credit Card berhasil diinisialisasi", result);
|
|
} catch (error) {
|
|
console.error(error);
|
|
return responseHelper.error(res, error.message);
|
|
}
|
|
}
|
|
}
|
|
|
|
module.exports = CreditCardController;
|