first commit
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
|
||||
use Illuminate\Foundation\Bus\DispatchesJobs;
|
||||
use Illuminate\Foundation\Validation\ValidatesRequests;
|
||||
use Illuminate\Routing\Controller as BaseController;
|
||||
|
||||
class Controller extends BaseController
|
||||
{
|
||||
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
class PasienController extends Controller
|
||||
{
|
||||
public function inquiryStatus()
|
||||
{
|
||||
$response = [
|
||||
'responseCode' => '5047300',
|
||||
'responseMessage' => 'Timeout',
|
||||
];
|
||||
return response()->json($response, 500);
|
||||
}
|
||||
|
||||
public function login()
|
||||
{
|
||||
$response = [
|
||||
'responseCode' => '5047300',
|
||||
'responseMessage' => 'Timeout',
|
||||
];
|
||||
return response()->json($response, 500);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Poct;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Poct\Driver;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class DriverController extends Controller
|
||||
{
|
||||
public function GetDriver()
|
||||
{
|
||||
$aa= Driver::all();
|
||||
dd($aa);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,135 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Poct;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Poct\Request\ListPemeriksaanRequest;
|
||||
use App\Models\Poct\Request\ListPemeriksaanResponse;
|
||||
use App\Services\Poct\ListPemeriksaanService;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Str;
|
||||
use Illuminate\Validation\ValidationException;
|
||||
|
||||
class PemeriksaanController extends Controller
|
||||
{
|
||||
public function ListPemeriksaan(Request $request, ListPemeriksaanService $listPemeriksaanService)
|
||||
{
|
||||
$validator = validator($request->all(), [
|
||||
'tgl_order' => ['required', 'date_format:Y-m-d'],
|
||||
], [], [
|
||||
'tgl_order' => 'Tgl Order',
|
||||
]);
|
||||
|
||||
$data = new ListPemeriksaanRequest($request->all());
|
||||
$result = new ListPemeriksaanResponse($request->all());
|
||||
try {
|
||||
$validator->validate();
|
||||
$timestamp = $request->header('x-timestamp');
|
||||
$signarture = $request->header('x-signature');
|
||||
$token = $request->header('authorization');
|
||||
|
||||
if (!empty($timestamp) && !empty($signarture) && !empty($token)) {
|
||||
if ($token == env('PEC_TOKEN')){
|
||||
$verif_signarture = $this->generateSignature($token, $timestamp);
|
||||
if ($verif_signarture == $signarture) {
|
||||
$proses = $listPemeriksaanService->fetchPemeriksaan($data, $result, 'list');
|
||||
$response = $proses->toArray();
|
||||
} else {
|
||||
$result->setresponseCode("01");
|
||||
$result->setresponseMessage("Unauthorized X-Signature!");
|
||||
$response = $result->toArray();
|
||||
}
|
||||
}else{
|
||||
$result->setresponseCode("01");
|
||||
$result->setresponseMessage("Unauthorized Token!");
|
||||
$response = $result->toArray();
|
||||
}
|
||||
} else {
|
||||
$result->setresponseCode("01");
|
||||
$result->setresponseMessage("Invalid X-Timestamp or X-Signature or Token!");
|
||||
$response = $result->toArray();
|
||||
}
|
||||
return response()->json($response, 200);
|
||||
} catch (ValidationException $e) {
|
||||
$result->setresponseCode("00");
|
||||
$result->setresponseMessage($e->getMessage());
|
||||
$response = $result->toArray();
|
||||
return response()->json($response, 400);
|
||||
}
|
||||
}
|
||||
|
||||
public function RekapPemeriksaan(Request $request, ListPemeriksaanService $listPemeriksaanService)
|
||||
{
|
||||
$validator = validator($request->all(), [
|
||||
'tgl_awal' => ['required', 'date_format:Y-m-d'],
|
||||
'tgl_akhir' => ['required', 'date_format:Y-m-d'],
|
||||
], [], [
|
||||
'tgl_awal' => 'Tgl Awal',
|
||||
'tgl_akhir' => 'Tgl Akhir',
|
||||
]);
|
||||
|
||||
$data = new ListPemeriksaanRequest($request->all());
|
||||
$result = new ListPemeriksaanResponse($request->all());
|
||||
|
||||
try {
|
||||
$validator->validate();
|
||||
$timestamp = $request->header('x-timestamp');
|
||||
$signarture = $request->header('x-signature');
|
||||
$token = $request->header('authorization');
|
||||
|
||||
if (!empty($timestamp) && !empty($signarture) && !empty($token)) {
|
||||
if ($token == env('PEC_TOKEN')){
|
||||
$verif_signarture = $this->generateSignature($token, $timestamp);
|
||||
if ($verif_signarture == $signarture) {
|
||||
$proses = $listPemeriksaanService->fetchPemeriksaan($data, $result, 'rekap');
|
||||
$response = $proses->toArray();
|
||||
return response()->json($response, 200);
|
||||
} else {
|
||||
$result->setresponseCode("01");
|
||||
$result->setresponseMessage("Unauthorized X-Signature!");
|
||||
$response = $result->toArray();
|
||||
}
|
||||
}else{
|
||||
$result->setresponseCode("01");
|
||||
$result->setresponseMessage("Unauthorized Token!");
|
||||
$response = $result->toArray();
|
||||
}
|
||||
} else {
|
||||
$result->setresponseCode("01");
|
||||
$result->setresponseMessage("Invalid X-Timestamp or X-Signature or Token!");
|
||||
$response = $result->toArray();
|
||||
}
|
||||
return response()->json($response, 200);
|
||||
} catch (ValidationException $e) {
|
||||
$result->setresponseCode("00");
|
||||
$result->setresponseMessage($e->getMessage());
|
||||
$response = $result->toArray();
|
||||
return response()->json($response, 400);
|
||||
}
|
||||
}
|
||||
|
||||
public function Signature(Request $request)
|
||||
{
|
||||
$signature = $this->generateSignature($request->token, $request->timestamp);
|
||||
$response = array(
|
||||
"signature" => $signature
|
||||
);
|
||||
return response()->json($response, 200);
|
||||
}
|
||||
|
||||
public function Token(Request $request)
|
||||
{
|
||||
$strToken = Str::random(60);
|
||||
$response = array(
|
||||
"token" => $strToken
|
||||
);
|
||||
return response()->json($response, 200);
|
||||
}
|
||||
|
||||
public function generateSignature($token, $timestamp)
|
||||
{
|
||||
$strToString = env('PEC_TOKEN') . '_' . $timestamp;
|
||||
$signature = hash('sha256', $strToString);
|
||||
return $signature;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,138 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Qris\v1;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Qris\v1\QrisJatimCheckStatusQrisRequest;
|
||||
use App\Models\Qris\v1\QrisJatimGenerateRequest;
|
||||
use App\Models\Qris\v1\QrisJatimGenerateResponse;
|
||||
use App\Models\Qris\v1\QrisJatimPaymentRequest;
|
||||
use App\Models\Qris\v1\QrisJatimPaymentResponse;
|
||||
use App\Services\Qris\v1\QrisJatimService;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Validation\ValidationException;
|
||||
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: ITKOM-EFFENDY
|
||||
* Date: 01/04/2024
|
||||
* Time: 14:15
|
||||
*/
|
||||
class QrisJatimController extends Controller
|
||||
{
|
||||
protected $settings;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->settings = array(
|
||||
'apiUrl' => env('BANK_JATIM_URL', 'https://jatimva.bankjatim.co.id/'),
|
||||
'merchant' => env('BANK_JATIM_MERCHANT', '9360011400001347721'),
|
||||
'hashcode' => env('BANK_JATIM_HASCODE', 'Y1MACZ4B5R'),
|
||||
'terminalUser' => env('BANK_JATIM_TERMINAL_USER', 'ID2024310949969'),
|
||||
'username' => env('BANK_JATIM_USERNAME', 'RSUDDRSA3206'),
|
||||
'password' => env('BANK_JATIM_PASSWORD', '111111'),
|
||||
);
|
||||
}
|
||||
|
||||
public function GenerateQris(QrisJatimService $qrisJatimService, Request $request)
|
||||
{
|
||||
$validator = validator($request->all(), [
|
||||
'billNumber' => ['required', 'string', 'max:20'],
|
||||
'purposetrx' => ['required', 'string', 'max:28'],
|
||||
'storelabel' => ['required', 'string', 'max:100'],
|
||||
'customerlabel' => ['nullable', 'string', 'max:100'],
|
||||
'terminalUser' => ['nullable', 'string', 'max:30'],
|
||||
'expiredDate' => ['nullable', 'string', 'max:30'],
|
||||
'amount' => ['nullable', 'string'],
|
||||
], [], [
|
||||
'billNumber' => 'Bill Number',
|
||||
'purposetrx' => 'Purpose Set Trx',
|
||||
'storelabel' => 'Store Label',
|
||||
'customerlabel' => 'Customer Label',
|
||||
'terminalUser' => 'Terminal User',
|
||||
'expiredDate' => 'Expired Date',
|
||||
'amount' => 'Amount',
|
||||
]);
|
||||
|
||||
try {
|
||||
$validator->validate();
|
||||
$data = new QrisJatimGenerateRequest($request->all());
|
||||
$generateHashCode = $this->generateHashCode($this->settings['merchant'], $data->getbillNumber(), $data->getterminalUser(), $this->settings['hashcode']);
|
||||
|
||||
$data->setmerchantPan($this->settings['merchant']);
|
||||
$data->sethashcodeKey('3C569A8C898FD24243CE0FABD4B6B60E30267C7409A5A06F859416C325482964');
|
||||
// $data->sethashcodeKey(strtoupper($generateHashCode['hashCode']));
|
||||
|
||||
$response = $qrisJatimService->generateApiQris($data);
|
||||
return response()->json($response, 200);
|
||||
} catch (ValidationException $e) {
|
||||
dd($e);
|
||||
} catch (\Exception $e) {
|
||||
dd($e);
|
||||
}
|
||||
}
|
||||
|
||||
public function PaymentQris(Request $request, QrisJatimService $qrisJatimService){
|
||||
$validator = validator($request->all(), [
|
||||
'billNumber' => ['required', 'string', 'max:20'],
|
||||
'purposetrx' => ['required', 'string', 'max:28'],
|
||||
'storelabel' => ['required', 'string', 'max:100'],
|
||||
'customerlabel' => ['nullable', 'string', 'max:100'],
|
||||
'terminalUser' => ['nullable', 'string', 'max:30'],
|
||||
'amount' => ['nullable', 'string'],
|
||||
'core_reference'=>['nullable', 'string'],
|
||||
'customerPan'=>['nullable', 'string'],
|
||||
'merchantPan'=>['nullable', 'string'],
|
||||
'pjsp'=>['nullable', 'string'],
|
||||
'invoice_number'=>['nullable', 'string'],
|
||||
'transactionDate'=>['nullable', 'string'],
|
||||
]);
|
||||
|
||||
try{
|
||||
|
||||
$validator->validate();
|
||||
$data = new QrisJatimPaymentRequest($request->all());
|
||||
$result = new QrisJatimPaymentResponse($request->all());
|
||||
|
||||
$proses = $qrisJatimService->updateQris($data, $result);
|
||||
$response = $proses->toArray();
|
||||
|
||||
$qrisJatimService->log('bankjatim/PaymentQr', $data->toArray(), $proses->toArray());
|
||||
return response()->json($response, 200);
|
||||
} catch (ValidationException $e) {
|
||||
dd($e);
|
||||
} catch (\Exception $e) {
|
||||
dd($e);
|
||||
}
|
||||
}
|
||||
|
||||
public function CheckStatusQris(QrisJatimService $qrisJatimService, Request $request)
|
||||
{
|
||||
$validator = validator($request->all(), [
|
||||
'username' => ['required', 'string', 'max:20'],
|
||||
'password' => ['required', 'string', 'max:28'],
|
||||
'invoice_number' => ['required', 'string', 'max:100'],
|
||||
]);
|
||||
|
||||
try {
|
||||
$validator->validate();
|
||||
$data = new QrisJatimCheckStatusQrisRequest($request->all());
|
||||
$response = $qrisJatimService->checkStatusQrisPayment($data);
|
||||
|
||||
return response()->json($response, 200);
|
||||
} catch (ValidationException $e) {
|
||||
|
||||
} catch (\Exception $e) {
|
||||
}
|
||||
}
|
||||
|
||||
public function generateHashCode($marchant, $billNumber, $terminalUser, $hashCode)
|
||||
{
|
||||
$stringToSign = $marchant . $billNumber . $terminalUser . $hashCode;
|
||||
return [
|
||||
'hashCode' => hash('sha256',$stringToSign)
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Va\v1;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Va\v1\VirtualAccountJatimRequest;
|
||||
use App\Models\Va\v1\VirtualAccountJatimResponse;
|
||||
use App\Services\Va\v1\VirtualAccountJatimService;
|
||||
use Illuminate\Validation\ValidationException;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: USER
|
||||
* Date: 14/05/2024
|
||||
* Time: 9:36
|
||||
*/
|
||||
class VirtualAccountController extends Controller
|
||||
{
|
||||
protected $settings;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->settings = array(
|
||||
'apiUrl' => env('BANK_JATIM_URL', 'https://jatimva.bankjatim.co.id/'),
|
||||
'merchant' => env('BANK_JATIM_MERCHANT', '9360011400001347721'),
|
||||
'hashcode' => env('BANK_JATIM_HASCODE', 'Y1MACZ4B5R'),
|
||||
'terminalUser' => env('BANK_JATIM_TERMINAL_USER', 'ID2024310949969'),
|
||||
'username' => env('BANK_JATIM_USERNAME', 'RSUDDRSA3206'),
|
||||
'password' => env('BANK_JATIM_PASSWORD', '111111'),
|
||||
);
|
||||
}
|
||||
|
||||
public function CreateVirtualAccountFull(Request $request)
|
||||
{
|
||||
$validator = validator($request->all(), [
|
||||
'VirtualAccount' => ['required', 'string', 'max:16'],
|
||||
'Nama' => ['required', 'string', 'max:100'],
|
||||
'TotalTagihan' => ['required', 'string'],
|
||||
'TanggalExp' => ['required', 'date_format:YYYYMMDD'],
|
||||
'Berita1' => ['nullable', 'string', 'max:50'],
|
||||
'Berita2' => ['nullable', 'string', 'max:50'],
|
||||
'Berita3' => ['nullable', 'string', 'max:50'],
|
||||
'Berita4' => ['nullable', 'string', 'max:50'],
|
||||
'Berita5' => ['nullable', 'string', 'max:50'],
|
||||
'FlagProses' => ['nullable', 'string', 'max:1'],
|
||||
], [], [
|
||||
'VirtualAccount' => 'Virtual Account',
|
||||
'Nama' => 'Nama',
|
||||
'TotalTagihan' => 'Store Label',
|
||||
'TanggalExp' => 'Tanggal Exp',
|
||||
'Berita1' => 'Berita 1',
|
||||
'Berita2' => 'Berita 2',
|
||||
'Berita3' => 'Berita 3',
|
||||
'Berita4' => 'Berita 4',
|
||||
'Berita5' => 'Berita 5',
|
||||
]);
|
||||
}
|
||||
|
||||
public function CallbackVa(VirtualAccountJatimService $virtualAccountJatimService, Request $request)
|
||||
{
|
||||
$validator = validator($request->all(), [
|
||||
'VirtualAccount' => ['required', 'string', 'max:16'],
|
||||
'Nama' => ['required', 'string', 'max:100'],
|
||||
'Amount' => ['required', 'numeric'],
|
||||
'References' => ['required', 'string', 'max:50'],
|
||||
'Tanggal' => ['required', 'date_format:Y-m-d H:i:s'],
|
||||
], [], [
|
||||
'VirtualAccount' => 'Virtual Account',
|
||||
'Nama' => 'Nama',
|
||||
'Amount' => 'Amount',
|
||||
'References' => 'References',
|
||||
'Tanggal' => 'Tanggal',
|
||||
]);
|
||||
|
||||
try {
|
||||
// $validator->validate();
|
||||
$data = new VirtualAccountJatimRequest($request->all());
|
||||
$result = new VirtualAccountJatimResponse($request->all());
|
||||
|
||||
$proses = $virtualAccountJatimService->updatePayment($data, $result);
|
||||
$response = $proses->toArray();
|
||||
|
||||
$virtualAccountJatimService->log('bankjatim/callback-va', $data->toArray(), $proses->toArray());
|
||||
return response()->json($response, 200);
|
||||
} catch (ValidationException $e) {
|
||||
dd($e);
|
||||
} catch (\Exception $e) {
|
||||
dd($e);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user