Compare commits
12 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 93b99c6eb0 | |||
| 1385539d31 | |||
| d5cfe503c5 | |||
| 8dd8def358 | |||
| e3e7694b54 | |||
| 4648c7072b | |||
| ac57e04eac | |||
| a8888e66d1 | |||
| d0f08545d1 | |||
| 6c9f2f4f0f | |||
| 5d208f7a79 | |||
| 50cf966da7 |
@@ -158,7 +158,6 @@ class GadaiController extends Controller
|
||||
}
|
||||
|
||||
public function create($kodcaw,Request $request){
|
||||
|
||||
$master = new MasterServices($kodcaw);
|
||||
$response = $master->createGadai($request);
|
||||
|
||||
@@ -228,11 +227,14 @@ class GadaiController extends Controller
|
||||
}
|
||||
|
||||
|
||||
public function daftarGadaiMarhun($norujukan,Request $request){
|
||||
// dd("ggwp");
|
||||
$master = new MasterServices($request->kodcaw);
|
||||
$response = $master->createMarhunGadai($request->norujukan,$request);
|
||||
|
||||
public function daftarGadaiMarhun($kodcaw, $norujukan, Request $request)
|
||||
{
|
||||
if (\App\ShorakaTransaction::where('norujukan', $norujukan)->exists()) {
|
||||
abort(409, 'Kontrak telah dihantar ke Shoraka dan tidak boleh diubah.');
|
||||
}
|
||||
$request->merge(['kodcaw' => $kodcaw, 'norujukan' => $norujukan]);
|
||||
$master = new MasterServices($kodcaw);
|
||||
$response = $master->createMarhunGadai($norujukan, $request);
|
||||
return response()->json($response, 200);
|
||||
}
|
||||
|
||||
@@ -369,6 +371,9 @@ class GadaiController extends Controller
|
||||
}
|
||||
|
||||
public function batalGadai($kodcaw, $norujukan,Request $request){
|
||||
if (\App\ShorakaTransaction::where('norujukan', $norujukan)->exists()) {
|
||||
abort(409, 'Transaksi Shoraka telah dihantar. Semakan operasi diperlukan sebelum pembatalan.');
|
||||
}
|
||||
|
||||
$current = Carbon::now();
|
||||
$current = new Carbon();
|
||||
@@ -406,6 +411,11 @@ class GadaiController extends Controller
|
||||
}
|
||||
|
||||
public function pembelianKomuditi($kodcaw,$norujukan){
|
||||
if (\App\ShorakaTransaction::where('norujukan', $norujukan)->exists()
|
||||
|| !\App\KomuditiTransaksi::on('mysql7')->where('norujukan', $norujukan)->exists()) {
|
||||
app(\App\Services\ShorakaGadaiService::class)->assertCompleted($kodcaw, $norujukan);
|
||||
}
|
||||
|
||||
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
||||
|
||||
$gadai = Gadai::on($cawangan['mysql'])
|
||||
@@ -418,6 +428,10 @@ class GadaiController extends Controller
|
||||
}
|
||||
|
||||
public function cetakSAG($kodcaw,$norujukan,Request $request){
|
||||
if (\App\ShorakaTransaction::where('norujukan', $norujukan)->exists()) {
|
||||
app(\App\Services\ShorakaGadaiService::class)->assertCompleted($kodcaw, $norujukan);
|
||||
}
|
||||
|
||||
$harini = Carbon::now();
|
||||
|
||||
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
||||
@@ -442,6 +456,10 @@ class GadaiController extends Controller
|
||||
}
|
||||
|
||||
public function serahMarhun($kodcaw,$norujukan){
|
||||
if (\App\ShorakaTransaction::where('norujukan', $norujukan)->exists()) {
|
||||
app(\App\Services\ShorakaGadaiService::class)->assertCompleted($kodcaw, $norujukan);
|
||||
}
|
||||
|
||||
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
||||
$gadai = Gadai::on($cawangan['mysql'])
|
||||
->where('norujukan','=',$norujukan)
|
||||
|
||||
@@ -120,6 +120,9 @@ class KomuditiController extends Controller
|
||||
}
|
||||
|
||||
public function updateKomuditi(Request $request){
|
||||
if (\App\ShorakaTransaction::where('norujukan', $request->norujukan)->exists()) {
|
||||
abort(409, 'Transaksi Shoraka memerlukan semakan operasi; stok lama tidak boleh diubah.');
|
||||
}
|
||||
$current = Carbon::now();
|
||||
$current = new Carbon();
|
||||
|
||||
@@ -141,37 +144,20 @@ class KomuditiController extends Controller
|
||||
return response()->json($komuditi_transaksi);
|
||||
}
|
||||
|
||||
public function transaksiKomuditi(Request $request){
|
||||
$current = Carbon::now();
|
||||
$current = new Carbon();
|
||||
|
||||
$komuditi_current = KomuditiPurchase::on('mysql7')->where('date_purchase','=',$current->toDateString())->orderBy('created_at','desc')->first();
|
||||
|
||||
$unit_current = $komuditi_current['unit_komuditi'];
|
||||
$update_unit = $unit_current - $request->unit_komuditi;
|
||||
|
||||
$unit_current = round((float) $komuditi_current['unit_komuditi'], 2);
|
||||
$unit_komuditi = round((float) $request->unit_komuditi, 2);
|
||||
$update_unit = round($unit_current - $unit_komuditi, 2);
|
||||
|
||||
$update_komuditi = KomuditiPurchase::on('mysql7')->where('id','=',$komuditi_current['id'])->update([
|
||||
'unit_komuditi' => $update_unit
|
||||
]);
|
||||
|
||||
$komuditi_transaksi = KomuditiTransaksi::on('mysql7')->create([
|
||||
'unit_komuditi' => $unit_komuditi,
|
||||
'nosijil'=>$komuditi_current['no_sijil'],
|
||||
'norujukan' => $request->norujukan,
|
||||
'kodcaw' => $request->kodcaw ,
|
||||
'teller' => $request->teller ,
|
||||
'masa' => $current->toTimeString(),
|
||||
'tarikh' => $current->toDateString()
|
||||
]);
|
||||
|
||||
return response()->json($komuditi_transaksi);
|
||||
public function transaksiKomuditi(Request $request)
|
||||
{
|
||||
$this->validate($request, ['kodcaw' => 'required|string', 'norujukan' => 'required|string']);
|
||||
return app(ShorakaGadaiController::class)->submitGadai(
|
||||
$request->kodcaw, $request->norujukan,
|
||||
app(\App\Services\ShorakaGadaiService::class),
|
||||
app(\App\Services\ShorakaService::class)
|
||||
);
|
||||
}
|
||||
|
||||
public function batalKomuditi(Request $request){
|
||||
if (\App\ShorakaTransaction::where('norujukan', $request->norujukan)->exists()) {
|
||||
abort(409, 'Transaksi Shoraka memerlukan semakan operasi; stok lama tidak boleh diubah.');
|
||||
}
|
||||
|
||||
$komuditi_current = KomuditiPurchase::on('mysql7')->orderBy('created_at','desc')->first();
|
||||
|
||||
|
||||
@@ -59,6 +59,11 @@ class MarhunController extends Controller
|
||||
|
||||
public function create($kodcaw,Request $request)
|
||||
{
|
||||
$order = \App\ShorakaTransaction::where('norujukan', $request->norujukan)->first();
|
||||
if ($order) {
|
||||
abort(409, 'Kontrak Shoraka telah dihantar dan tidak boleh diubah.');
|
||||
}
|
||||
|
||||
$current = Carbon::now();
|
||||
$current = new Carbon();
|
||||
|
||||
@@ -127,6 +132,10 @@ class MarhunController extends Controller
|
||||
|
||||
public function deletemarhun($kodcaw,$norujukan,Request $request)
|
||||
{
|
||||
$order = \App\ShorakaTransaction::where('norujukan', $norujukan)->first();
|
||||
if ($order) {
|
||||
abort(409, 'Kontrak Shoraka telah dihantar dan tidak boleh diubah.');
|
||||
}
|
||||
|
||||
$current = Carbon::now();
|
||||
$current = new Carbon();
|
||||
@@ -152,6 +161,11 @@ class MarhunController extends Controller
|
||||
|
||||
public function editmarhun($kodcaw,$norujukan,Request $request)
|
||||
{
|
||||
$order = \App\ShorakaTransaction::where('norujukan', $norujukan)->first();
|
||||
if ($order) {
|
||||
abort(409, 'Kontrak Shoraka telah dihantar dan tidak boleh diubah.');
|
||||
}
|
||||
|
||||
|
||||
$current = Carbon::now();
|
||||
$current = new Carbon();
|
||||
|
||||
@@ -0,0 +1,291 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\ShorakaTransaction;
|
||||
use App\Services\ShorakaService;
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Database\QueryException;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Throwable;
|
||||
|
||||
class ShorakaController extends Controller
|
||||
{
|
||||
public function index(Request $request)
|
||||
{
|
||||
$this->validate($request, [
|
||||
'kodcaw' => 'nullable|string|max:30',
|
||||
'norujukan' => 'nullable|string|max:100',
|
||||
'status' => 'nullable|string|max:30',
|
||||
'date_from' => 'nullable|date_format:Y-m-d',
|
||||
'date_to' => 'nullable|date_format:Y-m-d',
|
||||
'per_page' => 'nullable|integer|min:1|max:100',
|
||||
'page' => 'nullable|integer|min:1',
|
||||
'branch_scope' => 'nullable|string|max:30',
|
||||
]);
|
||||
|
||||
$query = ShorakaTransaction::query();
|
||||
foreach (['kodcaw', 'norujukan', 'status'] as $field) {
|
||||
if ($request->filled($field)) {
|
||||
$query->where($field, $request->input($field));
|
||||
}
|
||||
}
|
||||
if ($request->filled('date_from')) {
|
||||
$query->where('created_at', '>=', $request->input('date_from') . ' 00:00:00');
|
||||
}
|
||||
if ($request->filled('date_to')) {
|
||||
$query->where('created_at', '<', Carbon::parse($request->input('date_to'))->addDay()->format('Y-m-d') . ' 00:00:00');
|
||||
}
|
||||
$records = $query->orderByDesc('created_at')->orderByDesc('id')
|
||||
->paginate(min(100, max(1, (int) $request->input('per_page', 25))));
|
||||
$payload = [
|
||||
'data' => $records->getCollection()->map(function (ShorakaTransaction $record) {
|
||||
return [
|
||||
'id' => $record->id,
|
||||
'kodcaw' => $record->kodcaw,
|
||||
'norujukan' => $record->norujukan,
|
||||
'teller' => $record->teller,
|
||||
'status' => $record->status,
|
||||
'order_id' => $record->order_id,
|
||||
'created_at' => optional($record->created_at)->toDateTimeString(),
|
||||
'updated_at' => optional($record->updated_at)->toDateTimeString(),
|
||||
];
|
||||
})->values(),
|
||||
'total' => $records->total(),
|
||||
'current_page' => $records->currentPage(),
|
||||
'per_page' => $records->perPage(),
|
||||
'last_page' => $records->lastPage(),
|
||||
];
|
||||
if ($request->input('with_branches')) {
|
||||
$branches = ShorakaTransaction::query()->whereNotNull('kodcaw');
|
||||
if ($request->filled('branch_scope')) {
|
||||
$branches->where('kodcaw', $request->input('branch_scope'));
|
||||
}
|
||||
$payload['branches'] = $branches->distinct()->orderBy('kodcaw')->pluck('kodcaw')->values();
|
||||
}
|
||||
return response()->json($payload);
|
||||
}
|
||||
|
||||
public function submit(Request $request, ShorakaService $shoraka)
|
||||
{
|
||||
$validated = $this->validate($request, [
|
||||
'norujukan' => 'required|string|max:255',
|
||||
'ownership' => 'required|string|max:255',
|
||||
'order_amount' => 'required|numeric|min:0.01|max:9999999999999.99',
|
||||
'murabaha_amount' => 'required|numeric|min:0.01|max:9999999999999.99',
|
||||
'tenor_other' => 'required|integer|min:1',
|
||||
'teller' => 'nullable|string|max:255',
|
||||
]);
|
||||
if (!$shoraka->configured()) {
|
||||
return $this->unconfigured();
|
||||
}
|
||||
|
||||
$existing = ShorakaTransaction::where('norujukan', $validated['norujukan'])->first();
|
||||
if ($existing) {
|
||||
return $this->duplicate($existing);
|
||||
}
|
||||
|
||||
$payload = [
|
||||
'product_type' => 'FINANCING',
|
||||
'commodity_type' => '000-COPPER',
|
||||
'ownership' => $validated['ownership'],
|
||||
'ownership_doc_no' => $validated['norujukan'],
|
||||
'value_date' => Carbon::now()->format('d/m/Y'),
|
||||
'order_currency' => 'MYR',
|
||||
'order_amount' => number_format((float) $validated['order_amount'], 2, '.', ''),
|
||||
'murabaha_amount' => number_format((float) $validated['murabaha_amount'], 2, '.', ''),
|
||||
// Appendix codes in v1.5: OTHERS and MONTH.
|
||||
'tenor' => 'OTHERS',
|
||||
'tenor_other' => $validated['tenor_other'],
|
||||
'tenor_other_unit' => 'MONTH',
|
||||
'order_type' => 'Buy & Sell',
|
||||
];
|
||||
|
||||
try {
|
||||
// The unique norujukan index is the atomic claim for concurrent submissions.
|
||||
$attributes = [
|
||||
'norujukan' => $validated['norujukan'],
|
||||
'kodcaw' => $request->attributes->get('shoraka_kodcaw'),
|
||||
'teller' => $validated['teller'] ?? null,
|
||||
'status' => 'PENDING',
|
||||
'product_type' => $payload['product_type'],
|
||||
'commodity_type' => $payload['commodity_type'],
|
||||
'ownership_name' => $payload['ownership'],
|
||||
'ownership_doc_no' => $payload['ownership_doc_no'],
|
||||
'order_amount' => $payload['order_amount'],
|
||||
'murabaha_amount' => $payload['murabaha_amount'],
|
||||
'request_payload' => $payload,
|
||||
'attempt_count' => 1,
|
||||
];
|
||||
$transaction = ShorakaTransaction::create($attributes);
|
||||
} catch (QueryException $exception) {
|
||||
$existing = ShorakaTransaction::where('norujukan', $validated['norujukan'])->first();
|
||||
if ($existing) {
|
||||
return $this->duplicate($existing);
|
||||
}
|
||||
throw $exception;
|
||||
}
|
||||
|
||||
try {
|
||||
$response = $shoraka->submitOrder($payload);
|
||||
$this->saveOrder($transaction, $response);
|
||||
|
||||
return response()->json([
|
||||
'success' => true,
|
||||
'message' => 'Order berjaya dihantar ke Shoraka.',
|
||||
'data' => $this->orderData($transaction),
|
||||
]);
|
||||
} catch (Throwable $exception) {
|
||||
// A timeout or invalid response does not prove the remote trade failed.
|
||||
// Block resubmission until this reference has been reconciled with Shoraka.
|
||||
$transaction->update([
|
||||
'status' => $transaction->order_id ? $transaction->status : 'UNKNOWN',
|
||||
'error_message' => 'Submission outcome requires reconciliation with Shoraka.',
|
||||
]);
|
||||
|
||||
return $this->upstreamError('submit', $transaction, $exception);
|
||||
}
|
||||
}
|
||||
|
||||
public function refresh(string $norujukan, ShorakaService $shoraka)
|
||||
{
|
||||
if (!$shoraka->configured()) {
|
||||
return $this->unconfigured();
|
||||
}
|
||||
$transaction = ShorakaTransaction::where('norujukan', $norujukan)->firstOrFail();
|
||||
if (!$transaction->order_id) {
|
||||
return $this->missingOrderId();
|
||||
}
|
||||
|
||||
try {
|
||||
$response = $shoraka->orderStatus($transaction->order_id);
|
||||
$this->saveOrder($transaction, $response);
|
||||
|
||||
return response()->json(['success' => true, 'data' => $this->orderData($transaction)]);
|
||||
} catch (Throwable $exception) {
|
||||
return $this->upstreamError('status', $transaction, $exception);
|
||||
}
|
||||
}
|
||||
|
||||
public function certificate(string $norujukan, ShorakaService $shoraka)
|
||||
{
|
||||
if (!$shoraka->configured()) {
|
||||
return $this->unconfigured();
|
||||
}
|
||||
$transaction = ShorakaTransaction::where('norujukan', $norujukan)->firstOrFail();
|
||||
if (!$transaction->order_id) {
|
||||
return $this->missingOrderId();
|
||||
}
|
||||
|
||||
try {
|
||||
$pdf = $shoraka->certificate($transaction->order_id);
|
||||
|
||||
return response($pdf, 200, [
|
||||
'Content-Type' => 'application/pdf',
|
||||
'Content-Disposition' => 'attachment; filename="shoraka-' . $transaction->id . '.pdf"',
|
||||
'Cache-Control' => 'private, no-store',
|
||||
]);
|
||||
} catch (Throwable $exception) {
|
||||
return $this->upstreamError('certificate', $transaction, $exception);
|
||||
}
|
||||
}
|
||||
|
||||
public function callback(Request $request, ShorakaService $shoraka)
|
||||
{
|
||||
if (!$shoraka->configured()) {
|
||||
return $this->unconfigured();
|
||||
}
|
||||
$payload = $request->json()->all();
|
||||
if (!$shoraka->validCallback($payload)) {
|
||||
return response()->json(['success' => false, 'message' => 'Invalid callback signature.'], 401);
|
||||
}
|
||||
|
||||
// ownershipDocNo and certificateUrl are NOT signed. Never use them to link
|
||||
// a callback to a local record or download a file.
|
||||
$transaction = ShorakaTransaction::where('order_id', $payload['orderId'])->first();
|
||||
if (!$transaction) {
|
||||
return response()->json(['success' => false, 'message' => 'Order not found.'], 404);
|
||||
}
|
||||
|
||||
try {
|
||||
// There is no signed callback timestamp. Query the current order so a
|
||||
// delayed/replayed callback cannot directly restore an old status.
|
||||
$response = $shoraka->orderStatus($transaction->order_id);
|
||||
unset($payload['signature']);
|
||||
$this->saveOrder($transaction, $response, ['callback_payload' => $payload]);
|
||||
|
||||
// Exact acknowledgement required by section 6.
|
||||
return response('OK', 200, ['Content-Type' => 'text/plain']);
|
||||
} catch (Throwable $exception) {
|
||||
return $this->upstreamError('callback', $transaction, $exception);
|
||||
}
|
||||
}
|
||||
|
||||
protected function saveOrder(ShorakaTransaction $transaction, array $response, array $extra = []): void
|
||||
{
|
||||
$transaction->update(array_merge([
|
||||
'order_id' => (string) $response['orderId'],
|
||||
'status' => $response['status'],
|
||||
'certificate_url' => $response['certificateUrl'] ?? null,
|
||||
'response_payload' => $response,
|
||||
'submitted_at' => $transaction->submitted_at ?: Carbon::now(),
|
||||
'completed_at' => $response['status'] === 'Completed'
|
||||
? ($transaction->completed_at ?: Carbon::now()) : $transaction->completed_at,
|
||||
'error_message' => null,
|
||||
], $extra));
|
||||
app(\App\Services\ShorakaGadaiService::class)->sync($transaction);
|
||||
}
|
||||
|
||||
protected function orderData(ShorakaTransaction $transaction): array
|
||||
{
|
||||
return [
|
||||
'norujukan' => $transaction->norujukan,
|
||||
'kodcaw' => $transaction->kodcaw,
|
||||
'teller' => $transaction->teller,
|
||||
'order_id' => $transaction->order_id,
|
||||
'status' => $transaction->status,
|
||||
'certificate_url' => $transaction->certificate_url,
|
||||
];
|
||||
}
|
||||
|
||||
protected function duplicate(ShorakaTransaction $transaction)
|
||||
{
|
||||
return response()->json([
|
||||
'success' => false,
|
||||
'message' => 'Transaksi telah direkodkan. Semak status dengan Shoraka sebelum penghantaran semula.',
|
||||
'data' => $this->orderData($transaction),
|
||||
], 409);
|
||||
}
|
||||
|
||||
protected function missingOrderId()
|
||||
{
|
||||
return response()->json([
|
||||
'success' => false,
|
||||
'message' => 'Order ID belum tersedia. Semakan dengan Shoraka diperlukan.',
|
||||
], 409);
|
||||
}
|
||||
|
||||
protected function unconfigured()
|
||||
{
|
||||
return response()->json([
|
||||
'success' => false,
|
||||
'message' => 'API ID dan Secret Key Shoraka belum dikonfigurasi.',
|
||||
], 503);
|
||||
}
|
||||
|
||||
protected function upstreamError(string $operation, ShorakaTransaction $transaction, Throwable $exception)
|
||||
{
|
||||
// Connection exceptions may include request details; log only the class.
|
||||
Log::error('Shoraka request failed', [
|
||||
'operation' => $operation,
|
||||
'transaction_id' => $transaction->id,
|
||||
'exception_type' => get_class($exception),
|
||||
]);
|
||||
|
||||
return response()->json([
|
||||
'success' => false,
|
||||
'message' => 'Permintaan Shoraka gagal. Semak status transaksi sebelum mencuba semula.',
|
||||
], 502);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\KomuditiTransaksi;
|
||||
use App\Services\ShorakaGadaiService;
|
||||
use App\Services\ShorakaService;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class ShorakaGadaiController extends ShorakaController
|
||||
{
|
||||
public function readiness(ShorakaService $shoraka)
|
||||
{
|
||||
try {
|
||||
\App\ShorakaTransaction::query()->limit(1)->exists();
|
||||
$storeReady = true;
|
||||
} catch (\Throwable $exception) {
|
||||
$storeReady = false;
|
||||
}
|
||||
return response()->json(['provider' => 'shoraka', 'ready' => $storeReady && $shoraka->configured()]);
|
||||
}
|
||||
|
||||
public function showGadai(string $kodcaw, string $norujukan, ShorakaGadaiService $gadaiService)
|
||||
{
|
||||
$gadai = $gadaiService->gadai($kodcaw, $norujukan);
|
||||
$order = $gadaiService->transaction($kodcaw, $norujukan);
|
||||
return response()->json([
|
||||
'success' => true,
|
||||
'data' => [
|
||||
'norujukan' => $norujukan, 'kodcaw' => $kodcaw,
|
||||
'order_amount' => $gadai->pinjaman, 'murabaha_amount' => $gadai->hargajualan,
|
||||
'order' => $order ? $this->orderData($order) : null,
|
||||
'details' => $order ? $order->response_payload : null,
|
||||
'simulation' => $order && strpos((string) $order->order_id, 'SIM-') === 0,
|
||||
'can_complete' => $gadai->exists && $order && $order->status === 'Completed'
|
||||
&& number_format((float) $gadai->pinjaman, 2, '.', '') === $order->order_amount
|
||||
&& number_format((float) $gadai->hargajualan, 2, '.', '') === $order->murabaha_amount,
|
||||
],
|
||||
]);
|
||||
}
|
||||
|
||||
public function submitGadai(string $kodcaw, string $norujukan, Request $request, ShorakaGadaiService $gadaiService, ShorakaService $shoraka)
|
||||
{
|
||||
$gadai = $gadaiService->gadai($kodcaw, $norujukan);
|
||||
$existing = $gadaiService->transaction($kodcaw, $norujukan);
|
||||
if ($existing) {
|
||||
return $this->duplicate($existing);
|
||||
}
|
||||
// Historical commodity purchases must never be traded again.
|
||||
if (KomuditiTransaksi::on('mysql7')->where('norujukan', $norujukan)->exists()
|
||||
|| $gadai->cetak || $gadai->sttebus) {
|
||||
abort(409, 'Gadaian lama atau telah selesai tidak boleh dihantar sebagai order baharu.');
|
||||
}
|
||||
$payload = $gadaiService->payload($gadai);
|
||||
$teller = $request->input('teller');
|
||||
if (is_string($teller) && $teller !== '') {
|
||||
$payload['teller'] = $teller;
|
||||
}
|
||||
$submission = new Request($payload);
|
||||
$submission->attributes->set('shoraka_kodcaw', $kodcaw);
|
||||
return $this->submit($submission, $shoraka);
|
||||
}
|
||||
|
||||
public function refreshGadai(string $kodcaw, string $norujukan, ShorakaGadaiService $gadaiService, ShorakaService $shoraka)
|
||||
{
|
||||
$gadaiService->gadai($kodcaw, $norujukan);
|
||||
$gadaiService->transaction($kodcaw, $norujukan);
|
||||
return $this->refresh($norujukan, $shoraka);
|
||||
}
|
||||
|
||||
public function certificateGadai(string $kodcaw, string $norujukan, ShorakaGadaiService $gadaiService, ShorakaService $shoraka)
|
||||
{
|
||||
$gadaiService->assertCompleted($kodcaw, $norujukan);
|
||||
return $this->certificate($norujukan, $shoraka);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
<?php
|
||||
|
||||
namespace App\Services;
|
||||
|
||||
use App\Cawangan;
|
||||
use App\Customer;
|
||||
use App\Gadai;
|
||||
use App\ShorakaTransaction;
|
||||
use Illuminate\Validation\ValidationException;
|
||||
|
||||
class ShorakaGadaiService
|
||||
{
|
||||
public function gadai(string $kodcaw, string $norujukan): Gadai
|
||||
{
|
||||
$branch = Cawangan::on('mysql7')->where('kodcaw', $kodcaw)->firstOrFail();
|
||||
return Gadai::on($branch->mysql)->where('kodcaw', $kodcaw)->where('norujukan', $norujukan)->first()
|
||||
?? abort(404, 'Maklumat gadaian tidak tersedia. Semakan diperlukan.');
|
||||
}
|
||||
|
||||
public function payload(Gadai $gadai): array
|
||||
{
|
||||
$customer = Customer::on('mysql7')->where(function ($query) use ($gadai) {
|
||||
$query->where('kpbaru', $gadai->nokp)->orWhere('kplama', $gadai->nokp);
|
||||
})->firstOrFail();
|
||||
if (!$customer->nama || $gadai->pinjaman <= 0 || $gadai->hargajualan < $gadai->pinjaman) {
|
||||
throw ValidationException::withMessages([
|
||||
'norujukan' => 'Nama pelanggan, pembiayaan dan harga jualan mesti lengkap.',
|
||||
]);
|
||||
}
|
||||
|
||||
return [
|
||||
'norujukan' => $gadai->norujukan,
|
||||
'ownership' => $customer->nama,
|
||||
'order_amount' => $gadai->pinjaman,
|
||||
'murabaha_amount' => $gadai->hargajualan,
|
||||
// Both GadaiV1 and GadaiV2 price the contract using upah12.
|
||||
// "tempoh" is elapsed charge time, NOT the contractual tenor.
|
||||
'tenor_other' => 12,
|
||||
];
|
||||
}
|
||||
|
||||
public function transaction(string $kodcaw, string $norujukan)
|
||||
{
|
||||
$order = ShorakaTransaction::where('norujukan', $norujukan)->first();
|
||||
if ($order && (string) $order->kodcaw !== $kodcaw) {
|
||||
abort(409, 'Rekod Shoraka tidak dipadankan dengan cawangan ini.');
|
||||
}
|
||||
return $order;
|
||||
}
|
||||
|
||||
public function sync(ShorakaTransaction $order): void
|
||||
{
|
||||
if (!$order->kodcaw) {
|
||||
return;
|
||||
}
|
||||
$gadai = $this->gadai($order->kodcaw, $order->norujukan);
|
||||
if (!$gadai->exists) {
|
||||
return;
|
||||
}
|
||||
$sameAmounts = number_format((float) $gadai->pinjaman, 2, '.', '') === $order->order_amount
|
||||
&& number_format((float) $gadai->hargajualan, 2, '.', '') === $order->murabaha_amount;
|
||||
$gadai->getConnection()->table('gadai')->where('norujukan', $order->norujukan)->update([
|
||||
'tagkomuditi' => $order->status === 'Completed' && $sameAmounts ? 1 : 0,
|
||||
]);
|
||||
}
|
||||
|
||||
public function assertCompleted(string $kodcaw, string $norujukan): void
|
||||
{
|
||||
$gadai = $this->gadai($kodcaw, $norujukan);
|
||||
$order = $this->transaction($kodcaw, $norujukan);
|
||||
if (!$gadai->exists || !$order || $order->status !== 'Completed'
|
||||
|| number_format((float) $gadai->pinjaman, 2, '.', '') !== $order->order_amount
|
||||
|| number_format((float) $gadai->hargajualan, 2, '.', '') !== $order->murabaha_amount) {
|
||||
abort(409, 'Pembiayaan dan SAG ditahan sehingga transaksi Shoraka selesai dan amaun sepadan.');
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,220 @@
|
||||
<?php
|
||||
|
||||
namespace App\Services;
|
||||
|
||||
use Illuminate\Http\Client\Response;
|
||||
use Illuminate\Support\Facades\Http;
|
||||
use RuntimeException;
|
||||
|
||||
class ShorakaService
|
||||
{
|
||||
const STATUSES = ['Active', 'Completed', 'Cancelled', 'Pending Sell', 'Take Delivery'];
|
||||
|
||||
const CALLBACK_FIELDS = [
|
||||
'orderId', 'status', 'bankName', 'ownershipName', 'commodityType',
|
||||
'unit', 'volume', 'productType', 'valueDate', 'cancelDate', 'orderType',
|
||||
'orderCurrency', 'orderAmount', 'murabahaAmount', 'tenor',
|
||||
'tenorOther', 'tenorOtherUnit',
|
||||
];
|
||||
|
||||
protected $baseUrl;
|
||||
protected $apiId;
|
||||
protected $secretKey;
|
||||
protected $timeout;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->baseUrl = rtrim((string) config('services.shoraka.base_url'), '/');
|
||||
$this->apiId = (string) config('services.shoraka.api_id');
|
||||
$this->secretKey = (string) config('services.shoraka.secret_key');
|
||||
$this->timeout = (int) config('services.shoraka.timeout', 60);
|
||||
}
|
||||
|
||||
public function configured(): bool
|
||||
{
|
||||
if ($this->simulationRequested()) {
|
||||
return $this->simulationAllowed() && in_array($this->simulationMode(), ['failed', 'pending'], true);
|
||||
}
|
||||
return $this->apiId !== '' && $this->secretKey !== '';
|
||||
}
|
||||
|
||||
protected function simulationAllowed(): bool
|
||||
{
|
||||
return app()->environment('local', 'testing');
|
||||
}
|
||||
|
||||
protected function simulationMode(): string
|
||||
{
|
||||
return strtolower(trim((string) config('services.shoraka.simulation', 'off')));
|
||||
}
|
||||
|
||||
protected function simulationRequested(): bool
|
||||
{
|
||||
return !in_array($this->simulationMode(), ['', 'off'], true);
|
||||
}
|
||||
|
||||
private function simulatedResponse(string $orderId): array
|
||||
{
|
||||
if (!$this->simulationAllowed()) {
|
||||
throw new RuntimeException('Shoraka simulation is restricted to local/testing.');
|
||||
}
|
||||
if (strpos($orderId, 'SIM-FAILED-') === 0) {
|
||||
return ['orderId' => $orderId, 'status' => 'Cancelled'];
|
||||
}
|
||||
if (strpos($orderId, 'SIM-PENDING-') === 0) {
|
||||
return ['orderId' => $orderId, 'status' => 'Active'];
|
||||
}
|
||||
throw new RuntimeException('Invalid simulation order ID.');
|
||||
}
|
||||
|
||||
public function submitOrder(array $data): array
|
||||
{
|
||||
if ($this->simulationRequested()) {
|
||||
if (!$this->simulationAllowed() || !in_array($this->simulationMode(), ['failed', 'pending'], true)) {
|
||||
throw new RuntimeException('Shoraka simulation configuration is not allowed.');
|
||||
}
|
||||
return $this->simulatedResponse('SIM-' . strtoupper($this->simulationMode()) . '-' . bin2hex(random_bytes(12)));
|
||||
}
|
||||
|
||||
$payload = ['api_id' => $this->apiId];
|
||||
foreach ([
|
||||
'product_type', 'commodity_type', 'ownership', 'value_date',
|
||||
'order_currency', 'order_amount', 'murabaha_amount', 'tenor',
|
||||
'tenor_other', 'tenor_other_unit', 'order_type', 'ownership_doc_no',
|
||||
] as $field) {
|
||||
$payload[$field] = $data[$field] ?? '';
|
||||
}
|
||||
foreach (['order_amount', 'murabaha_amount'] as $field) {
|
||||
$payload[$field] = number_format((float) $payload[$field], 2, '.', '');
|
||||
}
|
||||
|
||||
// ownership_doc_no is deliberately excluded by the v1.5 signature contract.
|
||||
$signed = $payload;
|
||||
unset($signed['api_id'], $signed['ownership_doc_no']);
|
||||
$payload['signature'] = $this->signature(array_values($signed));
|
||||
|
||||
return $this->orderResponse($this->request()->post(
|
||||
$this->baseUrl . '/api/submitorder', $payload
|
||||
));
|
||||
}
|
||||
|
||||
public function orderStatus(string $orderId): array
|
||||
{
|
||||
if (strpos($orderId, 'SIM-') === 0) {
|
||||
return $this->simulatedResponse($orderId); // Never send simulated references to the real provider.
|
||||
}
|
||||
if ($this->simulationRequested()) {
|
||||
throw new RuntimeException('Real order status is unavailable while simulation is enabled.');
|
||||
}
|
||||
|
||||
return $this->orderResponse($this->request()->post(
|
||||
$this->baseUrl . '/api/orderstatus', $this->orderPayload($orderId)
|
||||
), $orderId);
|
||||
}
|
||||
|
||||
public function certificate(string $orderId): string
|
||||
{
|
||||
if ($this->simulationRequested() || strpos($orderId, 'SIM-') === 0) {
|
||||
throw new RuntimeException('Certificates are unavailable for simulation.');
|
||||
}
|
||||
|
||||
// Section 5 specifies POST, despite GET in the document history.
|
||||
$response = $this->request()->accept('application/pdf')->post(
|
||||
$this->baseUrl . '/api/certificate', $this->orderPayload($orderId)
|
||||
);
|
||||
$this->checkResponse($response);
|
||||
$type = strtolower(trim(explode(';', $response->header('Content-Type'))[0]));
|
||||
if ($type !== 'application/pdf' || substr($response->body(), 0, 5) !== '%PDF-') {
|
||||
throw new RuntimeException('Shoraka returned an invalid PDF certificate.');
|
||||
}
|
||||
|
||||
return $response->body();
|
||||
}
|
||||
|
||||
public function validCallback(array $payload): bool
|
||||
{
|
||||
if ($this->simulationRequested() || strpos((string) ($payload['orderId'] ?? ''), 'SIM-') === 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!$this->configured()
|
||||
|| !isset($payload['apiId'], $payload['signature'])
|
||||
|| !is_string($payload['apiId'])
|
||||
|| !hash_equals($this->apiId, $payload['apiId'])
|
||||
|| !is_string($payload['signature'])
|
||||
|| !preg_match('/\A[0-9a-fA-F]{64}\z/', $payload['signature'])) {
|
||||
return false;
|
||||
}
|
||||
|
||||
$values = [];
|
||||
foreach (self::CALLBACK_FIELDS as $field) {
|
||||
// Preserve the original strings: decimal formatting affects the hash.
|
||||
if (!array_key_exists($field, $payload) || !is_string($payload[$field])) {
|
||||
return false;
|
||||
}
|
||||
$values[] = $payload[$field];
|
||||
}
|
||||
|
||||
return $payload['orderId'] !== ''
|
||||
&& in_array($payload['status'], self::STATUSES, true)
|
||||
&& hash_equals($this->signature($values), strtolower($payload['signature']));
|
||||
}
|
||||
|
||||
protected function signature(array $values): string
|
||||
{
|
||||
return hash('sha256', implode(';', array_merge(
|
||||
[$this->secretKey, $this->apiId], $values
|
||||
)));
|
||||
}
|
||||
|
||||
protected function orderPayload(string $orderId): array
|
||||
{
|
||||
if ($orderId === '') {
|
||||
throw new RuntimeException('Shoraka order ID is required.');
|
||||
}
|
||||
|
||||
return [
|
||||
'api_id' => $this->apiId,
|
||||
'order_id' => $orderId,
|
||||
'signature' => $this->signature([$orderId]),
|
||||
];
|
||||
}
|
||||
|
||||
protected function request()
|
||||
{
|
||||
if (!$this->configured()) {
|
||||
throw new RuntimeException('Shoraka credentials are not configured.');
|
||||
}
|
||||
|
||||
// Never forward signed requests through redirects or retry a trade automatically.
|
||||
return Http::asForm()->acceptJson()->timeout($this->timeout)
|
||||
->withOptions(['allow_redirects' => false]);
|
||||
}
|
||||
|
||||
protected function checkResponse(Response $response): void
|
||||
{
|
||||
if (!$response->successful()) {
|
||||
// Do not expose upstream bodies which may contain credentials or customer data.
|
||||
throw new RuntimeException('Shoraka request failed. HTTP ' . $response->status());
|
||||
}
|
||||
}
|
||||
|
||||
protected function orderResponse(Response $response, string $expectedId = null): array
|
||||
{
|
||||
$this->checkResponse($response);
|
||||
$data = $response->json();
|
||||
if (!is_array($data)
|
||||
|| !isset($data['orderId'], $data['status'])
|
||||
|| !(is_string($data['orderId']) || is_int($data['orderId']))
|
||||
|| (string) $data['orderId'] === ''
|
||||
|| !in_array($data['status'], self::STATUSES, true)
|
||||
|| ($expectedId !== null && (string) $data['orderId'] !== $expectedId)) {
|
||||
throw new RuntimeException('Shoraka returned an invalid order response.');
|
||||
}
|
||||
if (isset($data['certificateUrl']) && !is_string($data['certificateUrl'])) {
|
||||
throw new RuntimeException('Shoraka returned an invalid certificate URL.');
|
||||
}
|
||||
|
||||
return $data;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
|
||||
namespace App;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class ShorakaTransaction extends Model
|
||||
{
|
||||
protected $fillable = [
|
||||
'norujukan',
|
||||
'kodcaw',
|
||||
'teller',
|
||||
'order_id',
|
||||
'status',
|
||||
'product_type',
|
||||
'commodity_type',
|
||||
'ownership_name',
|
||||
'ownership_doc_no',
|
||||
'order_amount',
|
||||
'murabaha_amount',
|
||||
'certificate_url',
|
||||
'certificate_path',
|
||||
'request_payload',
|
||||
'response_payload',
|
||||
'callback_payload',
|
||||
'attempt_count',
|
||||
'error_message',
|
||||
'submitted_at',
|
||||
'completed_at',
|
||||
];
|
||||
|
||||
protected $casts = [
|
||||
'order_amount' => 'decimal:2',
|
||||
'murabaha_amount' => 'decimal:2',
|
||||
'request_payload' => 'array',
|
||||
'response_payload' => 'array',
|
||||
'callback_payload' => 'array',
|
||||
'submitted_at' => 'datetime',
|
||||
'completed_at' => 'datetime',
|
||||
];
|
||||
}
|
||||
@@ -88,9 +88,7 @@ class GadaiV1
|
||||
|
||||
$hargajualan = $request->pinjaman + $upah12;
|
||||
|
||||
$gadai = Gadai::on($cawangan['mysql'])
|
||||
->where('norujukan','=',$norujukan)
|
||||
->update(array(
|
||||
$gadaiFields = array(
|
||||
'nilaimarhun' => $total_nilai_marhun,
|
||||
'berat'=> $total_berat,
|
||||
'pinjaman' => $request->pinjaman,
|
||||
@@ -115,7 +113,8 @@ class GadaiV1
|
||||
'upahdibayar' => 0.00,
|
||||
'tempohbayar' => 0.00,
|
||||
'lelong_tawarruq' => 1
|
||||
));
|
||||
);
|
||||
$gadai = Gadai::on($cawangan['mysql'])->where('norujukan', $norujukan)->update($gadaiFields);
|
||||
|
||||
$new_data = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->first();
|
||||
|
||||
|
||||
@@ -11,8 +11,6 @@ use Carbon\Carbon;
|
||||
use App\Gadai;
|
||||
use App\HargaEmas;
|
||||
use App\InOutMar;
|
||||
use App\KomuditiPurchase;
|
||||
use App\KomuditiTransaksi;
|
||||
use App\Marhun;
|
||||
use App\Moratorium;
|
||||
use App\Palsu;
|
||||
@@ -809,19 +807,18 @@ class Penebusan
|
||||
$array_tebus = $request->only(['jeniskeuntungan', 'nopelanggan','jenistebus','addpinjaman','nowakil','marhun','teller','bakipinjaman','bakiupah']);
|
||||
$array_trans = $request->only(['nopelanggan', 'noic','jenisAT','pinjaman','pinjamanbaru','marhun','teller','jenistebus']);
|
||||
$array_tebus_base = $request->only(['totalbayaran', 'bakiupah','jeniskeuntungan','bakipinjaman','jenistebus','teller','nowakil','duitpelanggan']);
|
||||
$array_trans_base = $request->only(['pinjaman','teller','pinjamanbaru']);
|
||||
|
||||
try{
|
||||
DB::connection($cawangan['mysql'])->beginTransaction();
|
||||
$this->saveTebus($kodcaw,$norujukan,$gadai,$cawangan,$array_tebus);
|
||||
$this->createTransaction($cawangan,$kodcaw,$norujukan,$array_trans);
|
||||
$newReference = $this->createTransaction($cawangan,$kodcaw,$norujukan,$array_trans);
|
||||
|
||||
DB::connection('mysql7')->beginTransaction();
|
||||
$this->saveTebusBase($kodcaw,$norujukan,$gadai,$array_tebus_base);
|
||||
$this->createTransactionBase($norujukan,$kodcaw,$array_trans_base);
|
||||
$array_response = [
|
||||
'result' => 'success',
|
||||
'data' => 1
|
||||
'data' => 1,
|
||||
'norujukan_baru' => $newReference
|
||||
];
|
||||
|
||||
DB::connection($cawangan['mysql'])->commit();
|
||||
@@ -949,7 +946,7 @@ class Penebusan
|
||||
$gadaiTransaction = Gadai::on($cawangan['mysql'])->where('t_gadai','=',$current->toDateString())->orderBy('sirig', 'desc')->first();
|
||||
$gadaiTransaction = optional($gadaiTransaction)->toArray();
|
||||
|
||||
$new_sirig = ($gadaiTransaction) ? $gadaiTransaction['sirig'] + 1 : 1;
|
||||
$new_sirig = (int) ($gadaiTransaction['sirig'] ?? 0) + 1;
|
||||
$curent_year = substr($current->year,2,2);
|
||||
$curent_month = sprintf("%02d", $current->month);
|
||||
$current_day = sprintf("%02d", $current->day);
|
||||
@@ -1077,37 +1074,11 @@ class Penebusan
|
||||
't_update' => $current->toDateString(),
|
||||
));
|
||||
|
||||
return $new_sag_number;
|
||||
}catch(\Exception $e){
|
||||
throw new \Exception("Error in Transaction: " . $e->getMessage());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private function createTransactionBase($norujukan,$kodcaw,$array_trans_base){
|
||||
$current = Carbon::now();
|
||||
|
||||
$komuditi_current = KomuditiPurchase::on('mysql7')->where('date_purchase','=',$current->toDateString())->orderBy('created_at','desc')->first();
|
||||
|
||||
$unit_current = isset($komuditi_current['unit_komuditi']) ? $komuditi_current['unit_komuditi']: 0;
|
||||
|
||||
try{
|
||||
$update_unit = $unit_current - $array_trans_base['pinjamanbaru'];
|
||||
|
||||
KomuditiPurchase::on('mysql7')->where('id','=',$komuditi_current['id'])->update([
|
||||
'unit_komuditi' => $update_unit
|
||||
]);
|
||||
|
||||
KomuditiTransaksi::on('mysql7')->create([
|
||||
'unit_komuditi' => $update_unit,
|
||||
'nosijil'=>$komuditi_current['no_sijil'],
|
||||
'norujukan' => $norujukan,
|
||||
'kodcaw' => $kodcaw,
|
||||
'teller' => $array_trans_base['teller'],
|
||||
'masa' => $current->toTimeString(),
|
||||
'tarikh' => $current->toDateString()
|
||||
]);
|
||||
}catch(\Exception $e){
|
||||
throw new \Exception("Error in TransactionBase: " . $e->getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,8 +12,6 @@ use Carbon\Carbon;
|
||||
use App\Gadai;
|
||||
use App\HargaEmas;
|
||||
use App\InOutMar;
|
||||
use App\KomuditiPurchase;
|
||||
use App\KomuditiTransaksi;
|
||||
use App\Marhun;
|
||||
use App\FailoverTransaction;
|
||||
use App\FailoverTransactionFailed;
|
||||
@@ -984,20 +982,19 @@ class Penebusan
|
||||
$array_tebus = $request->only(['jeniskeuntungan', 'nopelanggan','jenistebus','addpinjaman','nowakil','marhun','teller']);
|
||||
$array_trans = $request->only(['nopelanggan', 'noic','jenisAT','pinjaman','pinjamanbaru','marhun','teller','jenistebus']);
|
||||
$array_tebus_base = $request->only(['totalbayaran', 'bakiupah','jeniskeuntungan','bakipinjaman','jenistebus','teller','nowakil','duitpelanggan']);
|
||||
$array_trans_base = $request->only(['pinjaman','teller','pinjamanbaru']);
|
||||
|
||||
try{
|
||||
|
||||
DB::connection($cawangan['mysql'])->beginTransaction();
|
||||
$this->saveTebus($kodcaw,$norujukan,$gadai,$cawangan,$array_tebus);
|
||||
$this->createTransaction($cawangan,$kodcaw,$norujukan,$array_trans);
|
||||
$newReference = $this->createTransaction($cawangan,$kodcaw,$norujukan,$array_trans);
|
||||
|
||||
DB::connection('mysql7')->beginTransaction();
|
||||
$this->saveTebusBase($kodcaw,$norujukan,$gadai,$array_tebus_base);
|
||||
$this->createTransactionBase($norujukan,$kodcaw,$array_trans_base);
|
||||
$array_response = [
|
||||
'result' => 'success',
|
||||
'data' => 1
|
||||
'data' => 1,
|
||||
'norujukan_baru' => $newReference
|
||||
];
|
||||
|
||||
DB::connection($cawangan['mysql'])->commit();
|
||||
@@ -1044,19 +1041,18 @@ class Penebusan
|
||||
$array_tebus = $request->only(['jeniskeuntungan', 'nopelanggan','jenistebus','addpinjaman','nowakil','marhun','teller']);
|
||||
$array_trans = $request->only(['nopelanggan', 'noic','pinjaman','pinjamanbaru','marhun','teller','jenistebus']);
|
||||
$array_tebus_base = $request->only(['totalbayaran', 'bakiupah','jeniskeuntungan','bakipinjaman','jenistebus','teller','nowakil','duitpelanggan']);
|
||||
$array_trans_base = $request->only(['pinjaman','teller','pinjamanbaru']);
|
||||
|
||||
try{
|
||||
DB::connection($cawangan['mysql'])->beginTransaction();
|
||||
$this->saveTebus($kodcaw,$norujukan,$gadai,$cawangan,$array_tebus);
|
||||
$this->createTransaction($cawangan,$kodcaw,$norujukan,$array_trans);
|
||||
$newReference = $this->createTransaction($cawangan,$kodcaw,$norujukan,$array_trans);
|
||||
DB::connection('mysql7')->beginTransaction();
|
||||
$this->saveTebusBase($kodcaw,$norujukan,$gadai,$array_tebus_base);
|
||||
$this->createTransactionBase($norujukan,$kodcaw,$array_trans_base);
|
||||
|
||||
$array_response = [
|
||||
'result' => 'success',
|
||||
'data' => 1
|
||||
'data' => 1,
|
||||
'norujukan_baru' => $newReference
|
||||
];
|
||||
|
||||
DB::connection($cawangan['mysql'])->commit();
|
||||
@@ -1228,7 +1224,7 @@ class Penebusan
|
||||
$gadaiTransaction = Gadai::on($cawangan['mysql'])->where('t_gadai','=',$current->toDateString())->orderBy('sirig', 'desc')->first();
|
||||
$gadaiTransaction = optional($gadaiTransaction)->toArray();
|
||||
|
||||
$new_sirig = ($gadaiTransaction) ? $gadaiTransaction['sirig'] + 1 : 1;
|
||||
$new_sirig = (int) ($gadaiTransaction['sirig'] ?? 0) + 1;
|
||||
$curent_year = substr($current->year,2,2);
|
||||
$curent_month = sprintf("%02d", $current->month);
|
||||
$current_day = sprintf("%02d", $current->day);
|
||||
@@ -1356,39 +1352,11 @@ class Penebusan
|
||||
't_update' => $current->toDateString(),
|
||||
));
|
||||
|
||||
return $new_sag_number;
|
||||
}catch(\Exception $e){
|
||||
throw new \Exception("Error in Transaction: " . $e->getMessage());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private function createTransactionBase($norujukan,$kodcaw,$array_trans_base){
|
||||
$current = Carbon::now();
|
||||
|
||||
$komuditi_current = KomuditiPurchase::on('mysql7')->where('date_purchase','=',$current->toDateString())->orderBy('created_at','desc')->first();
|
||||
|
||||
$unit_current = isset($komuditi_current['unit_komuditi']) ? $komuditi_current['unit_komuditi']: 0;
|
||||
|
||||
try{
|
||||
$update_unit = $unit_current - $array_trans_base['pinjamanbaru'];
|
||||
|
||||
KomuditiPurchase::on('mysql7')->where('id','=',$komuditi_current['id'])->update([
|
||||
'unit_komuditi' => $update_unit
|
||||
]);
|
||||
|
||||
KomuditiTransaksi::on('mysql7')->create([
|
||||
'unit_komuditi' => $update_unit,
|
||||
'nosijil'=>$komuditi_current['no_sijil'],
|
||||
'norujukan' => $norujukan,
|
||||
'kodcaw' => $kodcaw,
|
||||
'teller' => $array_trans_base['teller'],
|
||||
'masa' => $current->toTimeString(),
|
||||
'tarikh' => $current->toDateString()
|
||||
]);
|
||||
}catch(\Exception $e){
|
||||
throw new \Exception("Error in TransactionBase: " . $e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,6 +87,7 @@ $app->singleton(
|
||||
*/
|
||||
|
||||
$app->configure('app');
|
||||
$app->configure('services');
|
||||
$app->configure('logging');
|
||||
$app->configure('logviewer');
|
||||
$app->configure('tinker');
|
||||
@@ -157,4 +158,7 @@ $app->middleware([
|
||||
$app->register(\Rap2hpoutre\LaravelLogViewer\LaravelLogViewerServiceProvider::class);
|
||||
$app->register(\Laravel\Tinker\TinkerServiceProvider::class);
|
||||
$app->register(\App\Providers\AppServiceProvider::class);
|
||||
|
||||
$app->register(\KitLoong\MigrationsGenerator\MigrationsGeneratorServiceProvider::class);
|
||||
|
||||
return $app;
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
},
|
||||
"require-dev": {
|
||||
"fzaninotto/faker": "^1.9.1",
|
||||
"kitloong/laravel-migrations-generator": "^6.11",
|
||||
"mockery/mockery": "^1.3.1",
|
||||
"phpunit/phpunit": "^8.5"
|
||||
},
|
||||
|
||||
Generated
+142
-4
@@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "2a35e67752107934701ceea957a4fd34",
|
||||
"content-hash": "64c3d9455edb548f4cd5ec1f8d9f77be",
|
||||
"packages": [
|
||||
{
|
||||
"name": "auth0/auth0-php",
|
||||
@@ -6686,6 +6686,81 @@
|
||||
},
|
||||
"time": "2020-07-09T08:09:16+00:00"
|
||||
},
|
||||
{
|
||||
"name": "kitloong/laravel-migrations-generator",
|
||||
"version": "v6.11.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/kitloong/laravel-migrations-generator.git",
|
||||
"reference": "0f007e86dce6e0cfd71dc0b757da18851c376c3b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/kitloong/laravel-migrations-generator/zipball/0f007e86dce6e0cfd71dc0b757da18851c376c3b",
|
||||
"reference": "0f007e86dce6e0cfd71dc0b757da18851c376c3b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"doctrine/dbal": "^2.4|^3.0",
|
||||
"ext-pdo": "*",
|
||||
"illuminate/support": "^5.6|^6.0|^7.0|^8.0|^9.0|^10.0",
|
||||
"myclabs/php-enum": "^1.6|^1.7|^1.8",
|
||||
"php": ">=7.1.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"barryvdh/laravel-ide-helper": "^2.5",
|
||||
"friendsofphp/php-cs-fixer": "^2.19.0|^3.1",
|
||||
"larastan/larastan": "^0.4|^0.5|^0.6|^0.7|^1.0|^2.0",
|
||||
"mockery/mockery": "^1.0",
|
||||
"orchestra/testbench": "^3.6|^4.0|^5.0|^6.0|^7.0|^8.0",
|
||||
"phpmd/phpmd": "^2.10",
|
||||
"slevomat/coding-standard": "^6.0|^7.0|^8.5",
|
||||
"squizlabs/php_codesniffer": "^3.5"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"laravel": {
|
||||
"providers": [
|
||||
"KitLoong\\MigrationsGenerator\\MigrationsGeneratorServiceProvider"
|
||||
]
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"KitLoong\\MigrationsGenerator\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Kit Loong",
|
||||
"email": "kitloong1008@gmail.com"
|
||||
}
|
||||
],
|
||||
"description": "Generates Laravel Migrations from an existing database",
|
||||
"keywords": [
|
||||
"artisan",
|
||||
"generator",
|
||||
"laravel",
|
||||
"lumen",
|
||||
"migration",
|
||||
"migrations"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/kitloong/laravel-migrations-generator/issues",
|
||||
"source": "https://github.com/kitloong/laravel-migrations-generator/tree/v6.11.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://www.buymeacoffee.com/kitloong",
|
||||
"type": "custom"
|
||||
}
|
||||
],
|
||||
"time": "2024-02-06T14:42:33+00:00"
|
||||
},
|
||||
{
|
||||
"name": "mockery/mockery",
|
||||
"version": "1.5.0",
|
||||
@@ -6817,6 +6892,69 @@
|
||||
],
|
||||
"time": "2022-03-03T13:19:32+00:00"
|
||||
},
|
||||
{
|
||||
"name": "myclabs/php-enum",
|
||||
"version": "1.8.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/myclabs/php-enum.git",
|
||||
"reference": "e7be26966b7398204a234f8673fdad5ac6277802"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/myclabs/php-enum/zipball/e7be26966b7398204a234f8673fdad5ac6277802",
|
||||
"reference": "e7be26966b7398204a234f8673fdad5ac6277802",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-json": "*",
|
||||
"php": "^7.3 || ^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.5",
|
||||
"squizlabs/php_codesniffer": "1.*",
|
||||
"vimeo/psalm": "^4.6.2 || ^5.2"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"MyCLabs\\Enum\\": "src/"
|
||||
},
|
||||
"classmap": [
|
||||
"stubs/Stringable.php"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "PHP Enum contributors",
|
||||
"homepage": "https://github.com/myclabs/php-enum/graphs/contributors"
|
||||
}
|
||||
],
|
||||
"description": "PHP Enum implementation",
|
||||
"homepage": "https://github.com/myclabs/php-enum",
|
||||
"keywords": [
|
||||
"enum"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/myclabs/php-enum/issues",
|
||||
"source": "https://github.com/myclabs/php-enum/tree/1.8.5"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/mnapoli",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/myclabs/php-enum",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2025-01-14T11:49:03+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phar-io/manifest",
|
||||
"version": "2.0.3",
|
||||
@@ -8389,12 +8527,12 @@
|
||||
],
|
||||
"aliases": [],
|
||||
"minimum-stability": "dev",
|
||||
"stability-flags": [],
|
||||
"stability-flags": {},
|
||||
"prefer-stable": true,
|
||||
"prefer-lowest": false,
|
||||
"platform": {
|
||||
"php": "^7.2.5"
|
||||
},
|
||||
"platform-dev": [],
|
||||
"plugin-api-version": "2.3.0"
|
||||
"platform-dev": {},
|
||||
"plugin-api-version": "2.9.0"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'shoraka' => [
|
||||
// Local UI tests only: off, failed or pending. Success is deliberately excluded.
|
||||
'simulation' => env('SHORAKA_SIMULATION', 'off'),
|
||||
'base_url' => env(
|
||||
'SHORAKA_BASE_URL',
|
||||
'https://uat2.shorakagroup.com'
|
||||
),
|
||||
|
||||
'api_id' => env('SHORAKA_API_ID'),
|
||||
|
||||
'secret_key' => env('SHORAKA_SECRET_KEY'),
|
||||
|
||||
'timeout' => env(
|
||||
'SHORAKA_TIMEOUT',
|
||||
60
|
||||
),
|
||||
],
|
||||
|
||||
];
|
||||
@@ -0,0 +1,87 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateShorakaTransactionsTable extends Migration
|
||||
{
|
||||
public function up()
|
||||
{
|
||||
Schema::create(
|
||||
'shoraka_transactions',
|
||||
function (Blueprint $table) {
|
||||
$table->id();
|
||||
|
||||
// Rujukan pembiayaan dalam eRahn
|
||||
$table->string('norujukan')->unique();
|
||||
|
||||
// Maklumat daripada Shoraka
|
||||
$table->string('order_id')
|
||||
->nullable()
|
||||
->unique();
|
||||
|
||||
$table->string('status')
|
||||
->default('PENDING');
|
||||
|
||||
$table->string('product_type')
|
||||
->default('FINANCING');
|
||||
|
||||
$table->string('commodity_type');
|
||||
|
||||
$table->string('ownership_name');
|
||||
$table->string('ownership_doc_no')
|
||||
->nullable();
|
||||
|
||||
$table->decimal(
|
||||
'order_amount',
|
||||
15,
|
||||
2
|
||||
);
|
||||
|
||||
$table->decimal(
|
||||
'murabaha_amount',
|
||||
15,
|
||||
2
|
||||
);
|
||||
|
||||
$table->string('certificate_url')
|
||||
->nullable();
|
||||
|
||||
$table->string('certificate_path')
|
||||
->nullable();
|
||||
|
||||
// Simpan payload untuk audit dan troubleshooting
|
||||
$table->json('request_payload')
|
||||
->nullable();
|
||||
|
||||
$table->json('response_payload')
|
||||
->nullable();
|
||||
|
||||
$table->json('callback_payload')
|
||||
->nullable();
|
||||
|
||||
$table->unsignedInteger('attempt_count')
|
||||
->default(0);
|
||||
|
||||
$table->text('error_message')
|
||||
->nullable();
|
||||
|
||||
$table->timestamp('submitted_at')
|
||||
->nullable();
|
||||
|
||||
$table->timestamp('completed_at')
|
||||
->nullable();
|
||||
|
||||
$table->timestamps();
|
||||
|
||||
$table->index('status');
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('shoraka_transactions');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class AddKodcawToShorakaTransactions extends Migration
|
||||
{
|
||||
public function up()
|
||||
{
|
||||
Schema::table('shoraka_transactions', function (Blueprint $table) {
|
||||
$table->string('kodcaw', 20)->nullable()->index();
|
||||
});
|
||||
}
|
||||
|
||||
public function down()
|
||||
{
|
||||
Schema::table('shoraka_transactions', function (Blueprint $table) {
|
||||
$table->dropColumn('kodcaw');
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class AddTellerToShorakaTransactions extends Migration
|
||||
{
|
||||
public function up()
|
||||
{
|
||||
Schema::table('shoraka_transactions', function (Blueprint $table) {
|
||||
$table->string('teller')->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
public function down()
|
||||
{
|
||||
Schema::table('shoraka_transactions', function (Blueprint $table) {
|
||||
$table->dropColumn('teller');
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,170 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
class DropUnusedCawanganTables extends Migration
|
||||
{
|
||||
/**
|
||||
* Empty legacy tables on every branch database.
|
||||
* mysql7 is the master database and is skipped.
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
$tables = [
|
||||
'advansur',
|
||||
'alert',
|
||||
'ansrugi',
|
||||
'auditbarcode',
|
||||
'auditdaftar',
|
||||
'auditrekodsemakan',
|
||||
'audtrail',
|
||||
'bajet',
|
||||
'bakipelanggan',
|
||||
'batchlel_xtra',
|
||||
'bayaranpenebusan',
|
||||
'belian',
|
||||
'budgetgadai',
|
||||
'budgettebus',
|
||||
'budgetupah',
|
||||
'checker',
|
||||
'configkaunter',
|
||||
'coordination',
|
||||
'customer',
|
||||
'gadaisimulasi',
|
||||
'gadaitemp',
|
||||
'gadaixtra',
|
||||
'glejer',
|
||||
'hapusgadaionline',
|
||||
'hapuskira',
|
||||
'hargaemasbeli',
|
||||
'hargaemasjual',
|
||||
'imbangan',
|
||||
'imbang_duga_lama',
|
||||
'inoutmarxtra',
|
||||
'jemas00',
|
||||
'jemasbeli',
|
||||
'jemasxtra',
|
||||
'jualan',
|
||||
'jualemas',
|
||||
'jumlahtebus',
|
||||
'karatbeli',
|
||||
'karatjual',
|
||||
'karatxtra',
|
||||
'kawalanstok',
|
||||
'kawalanstokxtra',
|
||||
'kawalanstok_lama',
|
||||
'kumpulan',
|
||||
'kurangxtra',
|
||||
'ku_nm',
|
||||
'ku_nmbaru',
|
||||
'ku_nmxtra',
|
||||
'lapringkasan',
|
||||
'lapterkumpul',
|
||||
'lapterkumpulharian',
|
||||
'lelkarat',
|
||||
'lelmarhun_xtra',
|
||||
'lelongxtra',
|
||||
'marhunbeli',
|
||||
'marhunjual',
|
||||
'marhunsimulasi',
|
||||
'marhunxtra',
|
||||
'model',
|
||||
'outmarhun',
|
||||
'outmarhunxtra',
|
||||
'parameter',
|
||||
'pelelong',
|
||||
'pembeliemas',
|
||||
'pemeriksaan',
|
||||
'pengesahangadai',
|
||||
'pengguna',
|
||||
'percentonline',
|
||||
'polisxtra',
|
||||
'poskod',
|
||||
'ramalan',
|
||||
'rekodtangguh',
|
||||
'sahabat',
|
||||
'senhitam',
|
||||
'serahbaki',
|
||||
'simpanan',
|
||||
'simulasi_batchlel',
|
||||
'simulasi_batchlelxtra',
|
||||
'simulasi_lelmarhun',
|
||||
'simulasi_lelongxtra',
|
||||
'syarikat',
|
||||
'tagpelanggan',
|
||||
'tebuslelong',
|
||||
'tebus_xtra',
|
||||
'tempimbang',
|
||||
'tempnosiri',
|
||||
'tempnosirixtra',
|
||||
'temppwd',
|
||||
'temptarikhaging',
|
||||
'temp_ic',
|
||||
'tunaigadteb',
|
||||
'tuntutan',
|
||||
'tuntutbakixtra',
|
||||
'ubs_code',
|
||||
'zparameter',
|
||||
'zparameter1',
|
||||
];
|
||||
|
||||
foreach ($this->getActiveDB() as $connection) {
|
||||
$this->dropTables($connection, $tables);
|
||||
}
|
||||
}
|
||||
|
||||
public function down()
|
||||
{
|
||||
// Original table definitions are not kept. This drop cannot be reversed.
|
||||
}
|
||||
|
||||
private function getActiveDB()
|
||||
{
|
||||
$config_db = array_keys(config('database.connections'));
|
||||
|
||||
return array_filter($config_db, function ($connection) {
|
||||
try {
|
||||
if ($connection === 'mysql7') {
|
||||
return false;
|
||||
}
|
||||
|
||||
DB::connection($connection)->getPdo();
|
||||
|
||||
return true;
|
||||
} catch (\Exception $e) {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private function dropTables($connection, array $tables)
|
||||
{
|
||||
$db = DB::connection($connection);
|
||||
$placeholders = implode(',', array_fill(0, count($tables), '?'));
|
||||
$rows = $db->select(
|
||||
"SELECT TABLE_NAME AS table_name
|
||||
FROM information_schema.TABLES
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_TYPE = 'BASE TABLE'
|
||||
AND LOWER(TABLE_NAME) IN ($placeholders)",
|
||||
$tables
|
||||
);
|
||||
|
||||
if (count($rows) === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
$quoted = array_map(function ($row) {
|
||||
return '`'.str_replace('`', '``', $row->table_name).'`';
|
||||
}, $rows);
|
||||
|
||||
$db->statement('SET FOREIGN_KEY_CHECKS=0');
|
||||
|
||||
try {
|
||||
$db->statement('DROP TABLE IF EXISTS '.implode(', ', $quoted));
|
||||
} finally {
|
||||
$db->statement('SET FOREIGN_KEY_CHECKS=1');
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
class DropUnusedMasterTables extends Migration
|
||||
{
|
||||
/**
|
||||
* Empty legacy tables on the master database (mysql7).
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
$tables = [
|
||||
'approval_withdrawal',
|
||||
'cawangan00',
|
||||
'cawangan_notis',
|
||||
'coordination',
|
||||
'customers_main',
|
||||
'log_blast_sms',
|
||||
'log_blast_wasap',
|
||||
'mobile_payment_info',
|
||||
'mobile_payment_log',
|
||||
'moratorium',
|
||||
'otp_token',
|
||||
'tac_express_payment',
|
||||
];
|
||||
|
||||
$db = DB::connection('mysql7');
|
||||
$placeholders = implode(',', array_fill(0, count($tables), '?'));
|
||||
$rows = $db->select(
|
||||
"SELECT TABLE_NAME AS table_name
|
||||
FROM information_schema.TABLES
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_TYPE = 'BASE TABLE'
|
||||
AND LOWER(TABLE_NAME) IN ($placeholders)",
|
||||
$tables
|
||||
);
|
||||
|
||||
if (count($rows) === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
$quoted = array_map(function ($row) {
|
||||
return '`'.str_replace('`', '``', $row->table_name).'`';
|
||||
}, $rows);
|
||||
|
||||
$db->statement('SET FOREIGN_KEY_CHECKS=0');
|
||||
|
||||
try {
|
||||
$db->statement('DROP TABLE IF EXISTS '.implode(', ', $quoted));
|
||||
} finally {
|
||||
$db->statement('SET FOREIGN_KEY_CHECKS=1');
|
||||
}
|
||||
}
|
||||
|
||||
public function down()
|
||||
{
|
||||
// Original table definitions are not kept. This drop cannot be reversed.
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateAddtunaiTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('addtunai', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->string('kodcaw', 10)->nullable()->default('');
|
||||
$table->string('kodlaluan', 100)->nullable()->default('');
|
||||
$table->decimal('tambah', 11)->nullable()->default(0);
|
||||
$table->decimal('kurang', 11)->nullable()->default(0);
|
||||
$table->string('nota', 40)->nullable()->default('');
|
||||
$table->integer('bil')->default(0);
|
||||
$table->timestamp('created_at');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('addtunai');
|
||||
}
|
||||
}
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateAkruNetPecahanTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('akru_net_pecahan', function (Blueprint $table) {
|
||||
$table->unsignedBigInteger('id');
|
||||
$table->integer('tahun');
|
||||
$table->integer('bulan');
|
||||
$table->decimal('persen_semasa', 9);
|
||||
$table->decimal('ujrah_semasa', 9);
|
||||
$table->decimal('persen_sebelum', 9);
|
||||
$table->decimal('ujrah_sebelum', 9);
|
||||
$table->decimal('keuntungan_semasa_1persen', 9);
|
||||
$table->decimal('keuntungan_semasa_ujrah', 9);
|
||||
$table->decimal('baki_keun_blm_byr_1persen', 9);
|
||||
$table->decimal('baki_keun_blm_byr_ujrah', 9);
|
||||
$table->decimal('pend_akru_1persen', 9);
|
||||
$table->decimal('pend_akru_ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('akru_net_pecahan');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateAkruNetTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('akru_net', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->decimal('jumlah', 9)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('akru_net');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateBandarTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('bandar', function (Blueprint $table) {
|
||||
$table->string('kodbandar', 10)->nullable();
|
||||
$table->string('namabandar', 30)->nullable();
|
||||
$table->string('kodnegeri', 3)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('bandar');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateBankTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('bank', function (Blueprint $table) {
|
||||
$table->string('bankcode', 10)->nullable();
|
||||
$table->string('bankdesc', 30)->nullable();
|
||||
$table->string('note', 30)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('bank');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateBatalgadaiTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('batalgadai', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->string('norujukan', 20)->nullable();
|
||||
$table->string('tellerid', 50)->nullable();
|
||||
$table->string('namateller', 30)->nullable();
|
||||
$table->date('tarikh');
|
||||
$table->time('masa');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('batalgadai');
|
||||
}
|
||||
}
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateBatchPembiayaanOnlineTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('batch_pembiayaan_online', function (Blueprint $table) {
|
||||
$table->bigIncrements('id');
|
||||
$table->string('batch_no', 50);
|
||||
$table->string('kodcaw', 20);
|
||||
$table->date('tarikh');
|
||||
$table->string('slot', 20)->nullable()->comment('BATCH1 / BATCH2');
|
||||
$table->integer('bilangan')->default(0);
|
||||
$table->decimal('jumlah_keseluruhan', 12)->default(0);
|
||||
$table->string('status', 30)->default('DRAFT');
|
||||
$table->string('pc_submitted_by', 100)->nullable();
|
||||
$table->timestamp('submitted_at')->nullable();
|
||||
$table->timestamps();
|
||||
|
||||
$table->index(['kodcaw', 'tarikh', 'status']);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('batch_pembiayaan_online');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateBatchlelTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('batchlel', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->string('kodcaw', 10)->default('');
|
||||
$table->integer('batchno');
|
||||
$table->date('tarikh')->nullable()->default('0000-00-00');
|
||||
$table->date('tarikh2')->nullable()->default('0000-00-00');
|
||||
$table->time('masadari')->nullable()->default('00:00:00');
|
||||
$table->time('masahingga')->nullable()->default('00:00:00');
|
||||
$table->string('pilihankos', 1)->default('');
|
||||
$table->decimal('pcntkos', 5)->default(0);
|
||||
$table->decimal('koslelong', 7)->default(0);
|
||||
$table->decimal('jumnm', 11)->default(0);
|
||||
$table->decimal('diskaun', 5)->default(0);
|
||||
$table->string('alamat1', 40)->default('');
|
||||
$table->string('alamat2', 40)->default('');
|
||||
$table->string('alamat3', 40)->default('');
|
||||
$table->string('alamat4', 20)->default('');
|
||||
$table->string('telefon', 30)->default('');
|
||||
$table->integer('nopelelong')->default(0);
|
||||
$table->decimal('percentgst', 3)->default(6);
|
||||
$table->decimal('percentgst_hj', 3)->default(0);
|
||||
$table->date('t_daftar')->nullable();
|
||||
$table->integer('tag_sms')->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('batchlel');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateBrandTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('brand', function (Blueprint $table) {
|
||||
$table->integer('brandNo');
|
||||
$table->string('brand', 30);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('brand');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateCawanganTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('cawangan', function (Blueprint $table) {
|
||||
$table->string('kodcaw', 10);
|
||||
$table->string('kodnegeri', 3)->nullable();
|
||||
$table->string('namacaw', 80)->nullable();
|
||||
$table->string('alamat1', 60)->nullable();
|
||||
$table->string('alamat2', 60)->nullable();
|
||||
$table->string('alamat3', 60)->nullable();
|
||||
$table->string('alamat4', 60)->nullable();
|
||||
$table->string('notel', 40)->nullable();
|
||||
$table->string('nofaks', 11);
|
||||
$table->date('systemdate')->nullable();
|
||||
$table->decimal('cajkhidmat', 7)->nullable()->default(0);
|
||||
$table->tinyInteger('openst')->nullable()->default(0);
|
||||
$table->string('prkod', 2)->nullable();
|
||||
$table->string('nokotak', 10)->nullable();
|
||||
$table->string('murtahin', 60)->nullable();
|
||||
$table->string('saksi', 60)->nullable();
|
||||
$table->string('glus', 15)->nullable();
|
||||
$table->string('glut', 15)->nullable();
|
||||
$table->decimal('ut_kasar', 15)->default(0);
|
||||
$table->decimal('belanjat', 15)->default(0);
|
||||
$table->decimal('ut_bersih', 15)->default(0);
|
||||
$table->string('msword', 80)->nullable();
|
||||
$table->date('t_aging');
|
||||
$table->string('cawangan', 20)->nullable()->default('Wakaf Bharu');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('cawangan');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateDaerahTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('daerah', function (Blueprint $table) {
|
||||
$table->integer('koddaerah')->nullable()->default(0);
|
||||
$table->string('namadaerah', 30)->nullable();
|
||||
$table->string('kodnegeri', 3)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('daerah');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateDenominasiTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('denominasi', function (Blueprint $table) {
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->integer('bd1')->default(0);
|
||||
$table->decimal('b1', 11)->default(0);
|
||||
$table->integer('bd5')->default(0);
|
||||
$table->decimal('b5', 11)->default(0);
|
||||
$table->integer('bd10')->default(0);
|
||||
$table->decimal('b10', 11)->default(0);
|
||||
$table->integer('bd20')->default(0);
|
||||
$table->decimal('b20', 11)->default(0);
|
||||
$table->integer('bd50')->default(0);
|
||||
$table->decimal('b50', 11)->default(0);
|
||||
$table->integer('bd100')->default(0);
|
||||
$table->decimal('b100', 11)->default(0);
|
||||
$table->integer('txtring1')->default(0);
|
||||
$table->decimal('k1', 11)->default(0);
|
||||
$table->integer('txtring5')->default(0);
|
||||
$table->decimal('k5', 11)->default(0);
|
||||
$table->integer('txtsen1')->default(0);
|
||||
$table->decimal('k01', 11)->default(0);
|
||||
$table->integer('txtsen5')->default(0);
|
||||
$table->decimal('k05', 11)->default(0);
|
||||
$table->integer('txtsen10')->default(0);
|
||||
$table->decimal('k010', 11)->default(0);
|
||||
$table->integer('txtsen20')->default(0);
|
||||
$table->decimal('k020', 11)->default(0);
|
||||
$table->integer('txtsen50')->default(0);
|
||||
$table->decimal('k050', 11)->default(0);
|
||||
$table->integer('txtring10')->default(0);
|
||||
$table->decimal('k10', 11)->default(0);
|
||||
$table->integer('txtring20')->default(0);
|
||||
$table->decimal('k20', 11)->default(0);
|
||||
$table->integer('txtring50')->default(0);
|
||||
$table->decimal('k50', 11)->default(0);
|
||||
$table->integer('txtring100')->default(0);
|
||||
$table->decimal('k100', 11)->default(0);
|
||||
$table->integer('txtring1000')->default(0);
|
||||
$table->decimal('k1000', 11)->default(0);
|
||||
$table->decimal('jumlahbundle', 11)->default(0);
|
||||
$table->decimal('txtjumlah', 11)->default(0);
|
||||
$table->string('nota', 100)->nullable();
|
||||
$table->decimal('jumlahkeping', 11)->default(0);
|
||||
$table->decimal('lebihan', 11)->default(0);
|
||||
$table->integer('sd1')->default(0);
|
||||
$table->integer('sd2')->default(0);
|
||||
$table->integer('sd5')->default(0);
|
||||
$table->decimal('s1', 11)->default(0);
|
||||
$table->decimal('s2', 11)->default(0);
|
||||
$table->decimal('s5', 11)->default(0);
|
||||
$table->integer('recno');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('denominasi');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,169 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateGadaiTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('gadai', function (Blueprint $table) {
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->string('norujukan', 20);
|
||||
$table->string('prkod', 2)->nullable();
|
||||
$table->string('nopelanggan', 12)->nullable();
|
||||
$table->string('nokp', 14)->nullable();
|
||||
$table->date('t_gadai')->nullable();
|
||||
$table->time('masa')->nullable();
|
||||
$table->integer('sirig')->nullable()->default(0);
|
||||
$table->decimal('nilaimarhun', 9)->nullable()->default(0);
|
||||
$table->decimal('n_marhuns', 9)->nullable()->default(0);
|
||||
$table->decimal('berat', 7)->nullable()->default(0);
|
||||
$table->decimal('pinjaman', 9)->nullable()->default(0);
|
||||
$table->string('cara_terima', 20)->nullable();
|
||||
$table->decimal('telahbayar', 7)->nullable()->default(0);
|
||||
$table->decimal('upahtelahbyr', 7)->default(0);
|
||||
$table->decimal('cajtelahbyr', 7)->nullable()->default(0);
|
||||
$table->decimal('ansuran', 9)->nullable()->default(0);
|
||||
$table->decimal('ansupah', 7)->nullable()->default(0);
|
||||
$table->decimal('kadarupah', 5)->nullable()->default(0);
|
||||
$table->decimal('tempoh', 10)->default(0);
|
||||
$table->date('t_lanjut1')->nullable();
|
||||
$table->date('t_lanjut2')->nullable();
|
||||
$table->date('t_matang')->nullable();
|
||||
$table->date('t_matang1')->nullable();
|
||||
$table->date('t_matang2')->nullable();
|
||||
$table->date('t_notis1')->nullable();
|
||||
$table->date('t_notis2')->nullable();
|
||||
$table->date('t_notis3')->nullable();
|
||||
$table->date('t_lelong')->nullable();
|
||||
$table->date('t_hapus')->nullable();
|
||||
$table->string('sttebus', 1)->nullable();
|
||||
$table->string('terima', 1)->nullable();
|
||||
$table->integer('cetak')->nullable()->default(0);
|
||||
$table->string('tncek', 1)->nullable();
|
||||
$table->string('nocek', 10)->nullable();
|
||||
$table->string('bkcode', 4)->nullable();
|
||||
$table->string('glcode', 15)->nullable();
|
||||
$table->string('teller', 100)->nullable();
|
||||
$table->string('pelulus', 50)->nullable();
|
||||
$table->string('pelulust', 7)->nullable();
|
||||
$table->string('disburseid', 7)->nullable();
|
||||
$table->time('disbursetime')->nullable();
|
||||
$table->string('cancelid', 7)->nullable();
|
||||
$table->time('canceltime')->nullable();
|
||||
$table->string('f_lulus', 1)->nullable();
|
||||
$table->string('tag', 1)->nullable();
|
||||
$table->decimal('jbg', 9)->nullable()->default(0);
|
||||
$table->decimal('bakipjm', 9)->nullable()->default(0);
|
||||
$table->decimal('bakiupah', 9)->nullable()->default(0);
|
||||
$table->decimal('cajlain', 7)->nullable()->default(0);
|
||||
$table->string('marhun')->nullable();
|
||||
$table->string('jenisupah', 1)->nullable();
|
||||
$table->decimal('cajkhidmat', 7)->nullable()->default(0);
|
||||
$table->tinyInteger('stcajkhidmat')->nullable()->default(0);
|
||||
$table->string('kodgl', 15)->nullable();
|
||||
$table->tinyInteger('taglel')->nullable()->default(0);
|
||||
$table->integer('instno')->nullable()->default(0);
|
||||
$table->integer('currInstno')->nullable()->default(0);
|
||||
$table->decimal('ansakhir', 7)->nullable()->default(0);
|
||||
$table->decimal('ansupahakhir', 7)->nullable()->default(0);
|
||||
$table->decimal('jumupahaz', 7)->nullable()->default(0);
|
||||
$table->decimal('tunggakan', 7)->nullable()->default(0);
|
||||
$table->date('t_update')->nullable();
|
||||
$table->string('jantina', 1)->nullable();
|
||||
$table->string('bangsa', 1)->nullable();
|
||||
$table->integer('sirit')->nullable()->default(0);
|
||||
$table->tinyInteger('jenisansur')->nullable()->default(0);
|
||||
$table->string('nokotak', 10)->nullable();
|
||||
$table->tinyInteger('tiada')->nullable()->default(0);
|
||||
$table->integer('tagtbaki')->default(0);
|
||||
$table->string('penilai', 50)->nullable();
|
||||
$table->string('namapenilai', 30)->nullable();
|
||||
$table->integer('tagserah')->default(0);
|
||||
$table->date('tempTarikhAging')->nullable();
|
||||
$table->string('jenistebus', 1);
|
||||
$table->string('namapelulus', 50)->nullable();
|
||||
$table->decimal('percentpinj', 9)->default(0);
|
||||
$table->integer('kuantiti')->default(0);
|
||||
$table->string('namateller', 30)->nullable();
|
||||
$table->decimal('jumtebus', 11)->nullable()->default(0);
|
||||
$table->decimal('upahnotis', 9)->nullable()->default(0);
|
||||
$table->decimal('upahpercuma', 11);
|
||||
$table->integer('tagpalsu')->default(0);
|
||||
$table->decimal('upahdibayar', 10)->default(0);
|
||||
$table->integer('tagcetak');
|
||||
$table->integer('tag_sms')->default(0);
|
||||
$table->string('semakbarcode', 40)->default('Tidak Lulus');
|
||||
$table->integer('wangkeluarteller')->default(0);
|
||||
$table->integer('semakpetibesi')->default(0);
|
||||
$table->integer('semakaudit')->default(0);
|
||||
$table->string('historygadaian', 20)->default('0');
|
||||
$table->integer('tagkiratebus')->default(0);
|
||||
$table->integer('checkbp')->default(0);
|
||||
$table->decimal('pampasan', 9)->default(0);
|
||||
$table->integer('lel1stop')->default(0);
|
||||
$table->string('tellernew', 40);
|
||||
$table->string('idjompay', 25)->default('0');
|
||||
$table->integer('tangguh')->default(0);
|
||||
$table->date('tebus')->nullable();
|
||||
$table->decimal('upahSim', 7)->default(0);
|
||||
$table->decimal('jbgakru', 5)->default(0);
|
||||
$table->decimal('upahakru', 7)->default(0);
|
||||
$table->integer('tagpalsu2')->default(0);
|
||||
$table->integer('tagcall')->default(0);
|
||||
$table->decimal('upah_semasa', 11)->nullable()->default(0);
|
||||
$table->decimal('simulasi_hargaasas', 11)->nullable()->default(0);
|
||||
$table->decimal('simulasi_cajlelong', 11)->nullable()->default(0);
|
||||
$table->decimal('simulasi_bakilelong', 11)->nullable()->default(0);
|
||||
$table->decimal('sim_hargaasas', 9)->nullable()->default(0);
|
||||
$table->decimal('sim_cajlelong', 9)->nullable()->default(0);
|
||||
$table->decimal('sim_upahlelong', 9)->nullable()->default(0);
|
||||
$table->decimal('sim_bakilelong', 9)->nullable()->default(0);
|
||||
$table->decimal('percentrebet', 9)->nullable()->default(0);
|
||||
$table->decimal('rebet', 9)->nullable()->default(0);
|
||||
$table->decimal('upahlpsrebet', 9)->nullable()->default(0);
|
||||
$table->integer('taguploadslip')->nullable()->default(0);
|
||||
$table->integer('tagsahupahonline')->nullable()->default(0);
|
||||
$table->decimal('bayarupahonline', 9)->nullable()->default(0);
|
||||
$table->date('tbayaronline')->nullable();
|
||||
$table->decimal('upahsebenar', 9)->nullable()->default(0);
|
||||
$table->integer('tagupdatedbonline')->nullable()->default(0);
|
||||
$table->decimal('bayarpinjamanonline', 9)->nullable()->default(0);
|
||||
$table->string('jenis_bayaran', 5)->nullable();
|
||||
$table->decimal('upah12', 9)->nullable();
|
||||
$table->decimal('hargajualan', 9)->nullable();
|
||||
$table->decimal('bakihargajualan', 9)->nullable();
|
||||
$table->tinyInteger('tagkomuditi')->nullable();
|
||||
$table->tinyInteger('lelong_tawarruq')->nullable()->default(1);
|
||||
$table->float('tempohbayar', 10)->default(0);
|
||||
$table->char('tag_tebus', 2);
|
||||
$table->decimal('kadarujrah', 5);
|
||||
$table->decimal('ujrah', 9);
|
||||
$table->decimal('onepercent', 9);
|
||||
$table->decimal('margin_semasa', 5);
|
||||
$table->tinyInteger('tagbaru')->default(0);
|
||||
$table->decimal('tunggakanujrah', 9);
|
||||
$table->decimal('tunggakanonepercent', 9);
|
||||
$table->tinyInteger('tagnotis')->default(0);
|
||||
$table->decimal('kadarrebet', 8, 4)->nullable()->default(0);
|
||||
$table->decimal('diskaun', 12)->nullable()->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('gadai');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateGlcodeTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('glcode', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->string('glcode', 15)->nullable();
|
||||
$table->string('descpt', 40)->nullable();
|
||||
$table->string('acttype', 1)->nullable();
|
||||
$table->string('jenisakaun', 10)->nullable();
|
||||
$table->tinyInteger('bayaran')->nullable()->default(0);
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->decimal('amaun', 15)->nullable()->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('glcode');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateGldetailTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('gldetail', function (Blueprint $table) {
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->integer('recno');
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->string('dtacct', 15)->nullable();
|
||||
$table->string('ktacct', 15)->nullable();
|
||||
$table->string('descpt', 40)->nullable();
|
||||
$table->string('acttype', 1)->nullable();
|
||||
$table->string('fracttype', 1)->nullable();
|
||||
$table->decimal('amaun', 13)->default(0);
|
||||
$table->string('teller', 7)->nullable();
|
||||
$table->string('pelulus', 7)->nullable();
|
||||
$table->string('terima', 1)->nullable();
|
||||
$table->string('jenisbyr', 2)->nullable();
|
||||
$table->string('bkcode', 4)->nullable();
|
||||
$table->string('nocek', 6)->nullable();
|
||||
$table->decimal('pendahuluan', 13)->nullable()->default(0);
|
||||
$table->decimal('serahan', 13)->nullable()->default(0);
|
||||
$table->timestamp('date_created');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('gldetail');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateHargaemasTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('hargaemas', function (Blueprint $table) {
|
||||
$table->string('karat', 5)->nullable();
|
||||
$table->date('t_efektif')->nullable();
|
||||
$table->decimal('harga', 7)->nullable()->default(0);
|
||||
$table->time('m_efektif');
|
||||
$table->decimal('harga2', 5);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('hargaemas');
|
||||
}
|
||||
}
|
||||
+68
@@ -0,0 +1,68 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateImbangDugaBackupTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('imbang_duga_backup', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->decimal('tunaiditangan', 11)->nullable();
|
||||
$table->decimal('pembiayaantawarruq', 11)->nullable();
|
||||
$table->decimal('bayaranpendahuluan', 11)->nullable();
|
||||
$table->decimal('pinjamankoop', 11)->nullable();
|
||||
$table->decimal('emaspalsu', 11)->nullable();
|
||||
$table->decimal('serahan', 11)->nullable();
|
||||
$table->decimal('bds', 11)->nullable();
|
||||
$table->decimal('perubatan', 11)->nullable();
|
||||
$table->decimal('keraian', 11)->nullable();
|
||||
$table->decimal('rugilelong', 11)->nullable();
|
||||
$table->decimal('bakilelong', 11)->nullable();
|
||||
$table->decimal('wtd', 11)->nullable();
|
||||
$table->decimal('untungrugiterkumpul', 11)->nullable();
|
||||
$table->decimal('keun_sebenar', 11)->nullable();
|
||||
$table->decimal('pendahuluan', 11)->nullable();
|
||||
$table->decimal('cajlelong', 11)->nullable();
|
||||
$table->decimal('pindahkekpkb', 11)->nullable();
|
||||
$table->decimal('penghutangkaki', 11)->nullable();
|
||||
$table->decimal('phapuskira', 11)->nullable();
|
||||
$table->decimal('belian1stop', 11)->nullable();
|
||||
$table->decimal('keun_penggadai', 11)->nullable();
|
||||
$table->decimal('pend_terakru', 11)->nullable();
|
||||
$table->decimal('cajperkhidmatan', 11)->nullable();
|
||||
$table->decimal('cajlelongxtra', 11)->nullable();
|
||||
$table->decimal('upahsimpanxtra', 11)->nullable();
|
||||
$table->decimal('bakilelongxtra', 11)->nullable();
|
||||
$table->decimal('rugilelongxtra', 11)->nullable();
|
||||
$table->decimal('utgterkumpulxtra', 11)->nullable();
|
||||
$table->decimal('jualan1stop', 11)->nullable();
|
||||
$table->decimal('hapuskira', 11)->nullable();
|
||||
$table->decimal('totalharta', 11)->nullable();
|
||||
$table->decimal('totaltanggungan', 11)->nullable();
|
||||
$table->integer('tagtally')->nullable();
|
||||
$table->timestamps();
|
||||
$table->decimal('ujrah', 9);
|
||||
$table->decimal('onepercent', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('imbang_duga_backup');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateInoutmarTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('inoutmar', function (Blueprint $table) {
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->time('masa')->nullable();
|
||||
$table->string('norujukan', 14)->nullable();
|
||||
$table->decimal('nm', 9)->nullable();
|
||||
$table->string('kpd', 20)->nullable();
|
||||
$table->string('drp', 20)->nullable();
|
||||
$table->decimal('bln', 3, 0)->nullable();
|
||||
$table->decimal('thn', 5, 0)->nullable();
|
||||
$table->tinyInteger('tag')->nullable();
|
||||
$table->string('jenistebus', 2);
|
||||
$table->string('namateller', 30);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('inoutmar');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateJemasTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('jemas', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->string('marhun', 30)->nullable();
|
||||
$table->string('descpt', 30)->nullable();
|
||||
$table->integer('ordernum');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('jemas');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateJenisakaunTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('jenisakaun', function (Blueprint $table) {
|
||||
$table->integer('recno')->default(0);
|
||||
$table->string('kod', 1)->nullable();
|
||||
$table->string('keterangan', 20)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('jenisakaun');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateKaratTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('karat', function (Blueprint $table) {
|
||||
$table->string('karat', 10)->nullable();
|
||||
$table->string('keterangan', 20)->nullable();
|
||||
$table->decimal('harga', 5)->nullable();
|
||||
$table->integer('recno');
|
||||
$table->decimal('harga2', 5)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('karat');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateLelmarhunTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('lelmarhun', function (Blueprint $table) {
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->string('norujukan', 20)->nullable();
|
||||
$table->date('t_gadai')->nullable();
|
||||
$table->decimal('bil', 3, 0)->nullable();
|
||||
$table->string('marhun', 30)->nullable();
|
||||
$table->string('nota', 30)->nullable();
|
||||
$table->string('karat', 10)->nullable();
|
||||
$table->decimal('berat', 7)->nullable();
|
||||
$table->decimal('harga', 5)->nullable();
|
||||
$table->decimal('n_marhun', 9)->nullable();
|
||||
$table->integer('batch_no')->nullable();
|
||||
$table->decimal('hargaasas', 11)->nullable();
|
||||
$table->integer('recno');
|
||||
$table->decimal('hargaasas_sim', 7)->nullable();
|
||||
$table->decimal('beratasal', 11)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('lelmarhun');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,119 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateLelongTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('lelong', function (Blueprint $table) {
|
||||
$table->integer('batchno')->default(0);
|
||||
$table->integer('sirilel')->nullable();
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->string('norujukan', 20)->nullable();
|
||||
$table->date('t_lelong')->nullable();
|
||||
$table->decimal('hargaasas', 9)->nullable()->default(0);
|
||||
$table->decimal('sandaran', 11)->default(0);
|
||||
$table->decimal('hargajual', 9)->nullable()->default(0);
|
||||
$table->string('glcode', 15)->nullable();
|
||||
$table->date('t_jual')->nullable();
|
||||
$table->integer('nopembeli')->nullable()->default(0);
|
||||
$table->decimal('jbg', 7)->nullable()->default(0);
|
||||
$table->decimal('kadarupah', 5)->default(0);
|
||||
$table->decimal('upahsimpan', 7)->nullable();
|
||||
$table->decimal('ansuran', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->default(0);
|
||||
$table->decimal('pinjaman', 9)->default(0);
|
||||
$table->decimal('bakipjmas', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('bakiupahas', 7)->nullable();
|
||||
$table->decimal('bakiupah', 9)->default(0);
|
||||
$table->decimal('cajlainas', 7)->nullable();
|
||||
$table->decimal('cajlain', 7)->nullable();
|
||||
$table->decimal('cajlelongas', 7)->nullable();
|
||||
$table->decimal('cajlelong', 7)->default(0);
|
||||
$table->decimal('baki', 9)->default(0);
|
||||
$table->string('terima', 1)->nullable();
|
||||
$table->tinyInteger('cetak')->default(0);
|
||||
$table->string('teller', 20)->nullable();
|
||||
$table->string('pelulus', 20)->nullable();
|
||||
$table->string('pelulust', 7)->nullable();
|
||||
$table->string('f_lulus', 1)->nullable();
|
||||
$table->string('type', 1)->nullable();
|
||||
$table->string('prkod', 2)->nullable();
|
||||
$table->tinyInteger('tagsurat')->nullable();
|
||||
$table->date('trkhtuntut')->nullable();
|
||||
$table->string('tellertb', 7)->nullable();
|
||||
$table->string('pelulustb', 7)->nullable();
|
||||
$table->string('terimatb', 1)->nullable();
|
||||
$table->date('t_hapuskira')->nullable();
|
||||
$table->decimal('hapuskira', 7)->nullable();
|
||||
$table->decimal('hkpjm', 9)->nullable();
|
||||
$table->string('cancelid', 7)->nullable();
|
||||
$table->time('canceltime')->nullable();
|
||||
$table->string('kodgl', 15)->nullable();
|
||||
$table->date('t_update')->nullable();
|
||||
$table->decimal('berat', 7)->default(0);
|
||||
$table->string('marhun')->nullable();
|
||||
$table->integer('recno');
|
||||
$table->decimal('lebihkurang', 9)->default(0);
|
||||
$table->decimal('nilaimarhuns', 9)->default(0);
|
||||
$table->integer('tagaid')->nullable();
|
||||
$table->decimal('gst_hj', 7)->nullable();
|
||||
$table->decimal('gst_cl', 7)->nullable();
|
||||
$table->decimal('hargajual_sim', 7)->nullable();
|
||||
$table->decimal('cajlelong_sim', 7)->nullable();
|
||||
$table->decimal('gst_hj_sim', 7)->nullable();
|
||||
$table->decimal('gst_cl_sim', 7)->nullable();
|
||||
$table->decimal('bakiupah_sim', 7)->nullable();
|
||||
$table->decimal('hargaasas_sim', 7)->nullable();
|
||||
$table->string('mutu_terendah', 10)->nullable();
|
||||
$table->decimal('harga_baru', 7)->nullable();
|
||||
$table->decimal('turun', 7)->nullable();
|
||||
$table->decimal('percent', 7)->nullable();
|
||||
$table->decimal('baki_sim', 7)->nullable();
|
||||
$table->decimal('hargalama', 7)->nullable();
|
||||
$table->date('t_lelong_sim')->nullable();
|
||||
$table->integer('tag_gst')->nullable();
|
||||
$table->decimal('makan_pinj', 7)->nullable();
|
||||
$table->decimal('baki_upah6', 7)->nullable();
|
||||
$table->decimal('baki6', 7)->nullable();
|
||||
$table->decimal('rugi_asal', 9)->default(0);
|
||||
$table->string('tagpelanggan', 20)->nullable()->default('99');
|
||||
$table->integer('fasa')->default(0);
|
||||
$table->decimal('pmt', 11)->nullable();
|
||||
$table->string('tagpmt', 20)->nullable();
|
||||
$table->decimal('hargaasasasal', 11)->nullable();
|
||||
$table->decimal('beratasal', 11)->default(0);
|
||||
$table->integer(' loopsemak')->nullable();
|
||||
$table->integer('lel1stop')->default(0);
|
||||
$table->integer('jbg_lelong')->default(0);
|
||||
$table->decimal('berat_plastik', 11)->nullable()->default(0);
|
||||
$table->integer('status_bida_online')->default(0);
|
||||
$table->string('nopelanggan', 14)->nullable();
|
||||
$table->integer('tag_tbaki')->nullable();
|
||||
$table->string('pel_tbaki', 20)->default('0');
|
||||
$table->integer('tagcall')->default(0);
|
||||
$table->decimal('ujrah', 9);
|
||||
$table->decimal('onepercent', 9);
|
||||
$table->tinyInteger('tagujrah')->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('lelong');
|
||||
}
|
||||
}
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateLelongTebusTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('lelong_tebus', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->string('teller', 100)->nullable();
|
||||
$table->string('norujukan', 30)->nullable();
|
||||
$table->string('batch_no', 10)->nullable();
|
||||
$table->decimal('nilai_marhun', 11)->nullable();
|
||||
$table->decimal('pinjaman', 11)->nullable();
|
||||
$table->decimal('upah', 11)->nullable();
|
||||
$table->integer('jbg')->nullable();
|
||||
$table->string('jenis_tebus', 10)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('lelong_tebus');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateMarhunTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('marhun', function (Blueprint $table) {
|
||||
$table->string('kodcaw', 3)->nullable();
|
||||
$table->string('norujukan', 20)->nullable();
|
||||
$table->date('t_gadai')->nullable();
|
||||
$table->decimal('bil', 3, 0)->nullable();
|
||||
$table->string('marhun', 30)->nullable();
|
||||
$table->string('nota', 30)->nullable();
|
||||
$table->string('karat', 10)->nullable();
|
||||
$table->decimal('berat', 7)->nullable();
|
||||
$table->decimal('harga', 5)->nullable();
|
||||
$table->decimal('n_marhun', 9)->nullable();
|
||||
$table->tinyInteger('tags')->nullable();
|
||||
$table->tinyInteger('cfmlelong')->nullable();
|
||||
$table->decimal('hargas', 5)->nullable();
|
||||
$table->decimal('n_marhuns', 7)->nullable();
|
||||
$table->integer('recno');
|
||||
$table->integer('new')->nullable();
|
||||
$table->date('ttag')->nullable();
|
||||
$table->decimal('hel', 9)->nullable();
|
||||
$table->decimal('nml', 9)->nullable();
|
||||
$table->decimal('berat_batu_permata', 7)->nullable();
|
||||
$table->integer('tag_permata')->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('marhun');
|
||||
}
|
||||
}
|
||||
+43
@@ -0,0 +1,43 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateModalOnlineTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('modal_online', function (Blueprint $table) {
|
||||
$table->bigIncrements('id');
|
||||
$table->date('tarikh');
|
||||
$table->string('kodcaw', 20);
|
||||
$table->decimal('had', 12)->default(100000);
|
||||
$table->decimal('digunakan', 12)->default(0);
|
||||
$table->decimal('baki', 12)->default(100000);
|
||||
$table->decimal('tambah', 12)->default(0);
|
||||
$table->decimal('kurang', 12)->default(0);
|
||||
$table->tinyInteger('ditutup')->default(0);
|
||||
$table->string('ditutup_oleh', 100)->nullable();
|
||||
$table->timestamp('ditutup_at')->nullable();
|
||||
$table->timestamps();
|
||||
|
||||
$table->unique(['tarikh', 'kodcaw']);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('modal_online');
|
||||
}
|
||||
}
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateMohonAnggotaTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('mohon_anggota', function (Blueprint $table) {
|
||||
$table->unsignedBigInteger('id');
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->string('nokp', 20)->nullable();
|
||||
$table->string('nama', 100)->nullable();
|
||||
$table->string('status', 50)->default('MENUNGGU OPERASI');
|
||||
$table->text('komen')->nullable();
|
||||
$table->string('teller', 100)->nullable();
|
||||
$table->string('peloperasi', 100)->nullable();
|
||||
$table->dateTime('datetime_pelulus')->nullable();
|
||||
$table->timestamps();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('mohon_anggota');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateMohonTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('mohon', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->string('norujukan', 20);
|
||||
$table->decimal('siri', 9, 0)->default(0);
|
||||
$table->mediumText('komen')->nullable();
|
||||
$table->date('lastdategadai')->nullable();
|
||||
$table->integer('bilgad')->default(0);
|
||||
$table->decimal('jumpinj', 9)->default(0);
|
||||
$table->string('jenistebus', 2);
|
||||
$table->string('teller', 100)->nullable();
|
||||
$table->string('pelulus', 100);
|
||||
$table->string('peloperasi', 100);
|
||||
$table->string('masalulus', 100);
|
||||
$table->string('khazanah', 100);
|
||||
$table->string('operasi', 100);
|
||||
$table->decimal('margin', 10)->nullable();
|
||||
$table->decimal('nilaimarhun', 10)->nullable();
|
||||
$table->decimal('berat', 10)->nullable();
|
||||
$table->string('status', 100)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('mohon');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateMohonidTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('mohonid', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->time('masa')->nullable()->comment('Time period');
|
||||
$table->string('onlineid', 40)->nullable();
|
||||
$table->string('mohon', 40)->nullable();
|
||||
$table->string('norujukan', 20)->nullable();
|
||||
$table->string('id', 40)->nullable();
|
||||
$table->timestamp('timestamp_approved_by_pc')->nullable()->comment('Time Approved by PC');
|
||||
$table->string('katalaluan', 50)->nullable();
|
||||
$table->integer('benar')->nullable();
|
||||
$table->string('teller', 100)->nullable();
|
||||
$table->decimal('pinjaman', 10)->nullable();
|
||||
$table->decimal('ansuran', 10)->default(0)->comment('Ansuran Amount');
|
||||
$table->decimal('nilaimarhun', 10)->nullable();
|
||||
$table->decimal('berat', 10)->nullable();
|
||||
$table->decimal('margin', 4)->nullable();
|
||||
$table->boolean('tagoperasi')->default(false)->comment('Tag Operasi');
|
||||
$table->string('operasi')->nullable()->comment('Nama Operasi');
|
||||
$table->timestamp('timestamp_approved_by_operasi')->nullable()->comment('Time approved by Operasi');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('mohonid');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateNegeriTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('negeri', function (Blueprint $table) {
|
||||
$table->string('kodnegeri', 3)->nullable();
|
||||
$table->string('negeri', 25)->nullable();
|
||||
$table->string('cutiumum', 1)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('negeri');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreatePalsuTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('palsu', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->string('norujukan', 20)->nullable();
|
||||
$table->string('teller', 20)->nullable();
|
||||
$table->string('nota', 100)->nullable();
|
||||
$table->decimal('pembiayaan', 11)->nullable()->comment('Pembiayaan amount');
|
||||
$table->decimal('nilaimarhun', 11)->nullable()->comment('Nilai marhun amount');
|
||||
$table->double('jbg', 4, 2)->nullable()->comment('JBG value');
|
||||
$table->decimal('untung', 11)->nullable()->comment('Untung amount');
|
||||
$table->decimal('untungonepercent', 11)->nullable()->comment('Satu Persen amount');
|
||||
$table->decimal('untungcajlain', 11)->nullable()->comment('Caj Lain-Lain amount');
|
||||
$table->string('jenis', 50)->nullable()->comment('Jenis/Type classification');
|
||||
$table->unsignedSmallInteger('status')->default(0)->comment('Status value');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('palsu');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreatePampasanTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('pampasan', function (Blueprint $table) {
|
||||
$table->bigIncrements('id');
|
||||
$table->string('norujukan', 50)->unique();
|
||||
$table->string('baucerno', 30)->index();
|
||||
$table->string('kodcaw', 20)->index();
|
||||
$table->decimal('jumlah_pampasan', 11);
|
||||
$table->json('denominasi')->nullable();
|
||||
$table->string('teller', 100);
|
||||
$table->tinyInteger('status')->default(0)->comment('0 = belum dituntut, 1 = dituntut');
|
||||
$table->timestamps();
|
||||
$table->timestamp('agreement_printed_at')->nullable()->comment('Timestamp when agreement was printed');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('pampasan');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreatePanjarTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('panjar', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->string('deskripsi', 100)->nullable();
|
||||
$table->decimal('bayaran', 11)->nullable();
|
||||
$table->longText('nota')->nullable();
|
||||
$table->integer('tag')->nullable();
|
||||
$table->string('kategori', 40)->nullable();
|
||||
$table->string('nama', 40);
|
||||
$table->string('id', 40)->nullable();
|
||||
$table->decimal('bakiperubatan', 11)->nullable();
|
||||
$table->string('nobaucer', 15)->nullable();
|
||||
$table->integer('nobil')->nullable();
|
||||
$table->string('tuntutoleh', 40)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('panjar');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreatePekerjaanTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('pekerjaan', function (Blueprint $table) {
|
||||
$table->string('kodkerja', 2)->nullable();
|
||||
$table->string('keterangan', 30)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('pekerjaan');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreatePembeliTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('pembeli', function (Blueprint $table) {
|
||||
$table->integer('nopembeli');
|
||||
$table->string('nokp', 14)->nullable();
|
||||
$table->string('nama', 100)->nullable();
|
||||
$table->string('alamat1', 300)->nullable();
|
||||
$table->string('alamat2', 40)->nullable();
|
||||
$table->string('alamat3', 40)->nullable();
|
||||
$table->string('alamat4', 20)->nullable();
|
||||
$table->string('telefon', 20)->nullable();
|
||||
$table->integer('tag_syarikat')->nullable()->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('pembeli');
|
||||
}
|
||||
}
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreatePembiayaanOnlineTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('pembiayaan_online', function (Blueprint $table) {
|
||||
$table->bigIncrements('id');
|
||||
$table->string('norujukan', 50)->index();
|
||||
$table->string('nokp', 20);
|
||||
$table->string('nopelanggan', 50)->nullable();
|
||||
$table->string('nama_pelanggan', 150)->nullable();
|
||||
$table->string('kodcaw', 20);
|
||||
$table->decimal('pinjaman', 12);
|
||||
$table->string('kodbank', 20)->nullable();
|
||||
$table->string('nama_bank', 100)->nullable();
|
||||
$table->string('noakaun', 50)->nullable();
|
||||
$table->string('nama_akaun', 150)->nullable();
|
||||
$table->unsignedBigInteger('bukti_akaun_file_id')->nullable();
|
||||
$table->unsignedBigInteger('borang_file_id')->nullable();
|
||||
$table->string('status', 30)->default('PENDING_PC');
|
||||
$table->text('reject_reason')->nullable();
|
||||
$table->string('rejected_by', 100)->nullable();
|
||||
$table->timestamp('rejected_at')->nullable();
|
||||
$table->unsignedBigInteger('batch_id')->nullable()->index();
|
||||
$table->unsignedBigInteger('bukti_file_id')->nullable();
|
||||
$table->string('no_rujukan_bayaran', 100)->nullable();
|
||||
$table->date('tarikh_bayaran')->nullable();
|
||||
$table->timestamp('paid_at')->nullable();
|
||||
$table->string('created_by', 100)->nullable();
|
||||
$table->string('pc_submitted_by', 100)->nullable();
|
||||
$table->string('pc_verified_by', 100)->nullable();
|
||||
$table->timestamp('pc_verified_at')->nullable();
|
||||
$table->string('ops_by', 100)->nullable();
|
||||
$table->text('nota')->nullable();
|
||||
$table->tinyInteger('blast_sent')->default(0);
|
||||
$table->timestamps();
|
||||
|
||||
$table->index(['kodcaw', 'status']);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('pembiayaan_online');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,98 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreatePeratusanTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('peratusan', function (Blueprint $table) {
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->date('tarikhawal')->nullable();
|
||||
$table->date('tarikhakhir')->nullable();
|
||||
$table->decimal('upah', 11)->nullable();
|
||||
$table->decimal('gadai', 11)->nullable();
|
||||
$table->decimal('tebus', 11)->nullable();
|
||||
$table->decimal('bakipb', 11)->nullable();
|
||||
$table->decimal('nmgad', 9)->nullable();
|
||||
$table->decimal('nmteb', 9)->nullable();
|
||||
$table->integer('statgad')->nullable();
|
||||
$table->integer('statteb')->nullable();
|
||||
$table->integer('statpel')->nullable();
|
||||
$table->decimal('per', 9)->nullable();
|
||||
$table->integer('bilper')->nullable();
|
||||
$table->integer('perbilper')->nullable();
|
||||
$table->decimal('pinj', 9)->nullable();
|
||||
$table->integer('perpinj')->nullable();
|
||||
$table->decimal('nm', 9)->nullable();
|
||||
$table->decimal('overpinj', 9)->nullable();
|
||||
$table->decimal('pinjover', 9)->nullable();
|
||||
$table->integer('bilpinjover')->nullable();
|
||||
$table->decimal('nmover', 9)->nullable();
|
||||
$table->decimal('berat14', 7)->nullable();
|
||||
$table->decimal('nm14', 9)->nullable();
|
||||
$table->decimal('nms14', 9)->nullable();
|
||||
$table->decimal('beratm14', 7)->nullable();
|
||||
$table->decimal('nmsm14', 9)->nullable();
|
||||
$table->decimal('berat18', 7, 1)->nullable();
|
||||
$table->decimal('nm18', 9)->nullable();
|
||||
$table->decimal('nms18', 9)->nullable();
|
||||
$table->decimal('beratm18', 7)->nullable();
|
||||
$table->decimal('nmsm18', 9)->nullable();
|
||||
$table->decimal('berat20', 7)->nullable();
|
||||
$table->decimal('nm20', 9)->nullable();
|
||||
$table->decimal('nms20', 9)->nullable();
|
||||
$table->decimal('beratm20', 7)->nullable();
|
||||
$table->decimal('nmsm20', 9)->nullable();
|
||||
$table->decimal('berat21', 7)->nullable();
|
||||
$table->decimal('nm21', 9)->nullable();
|
||||
$table->decimal('nms21', 9)->nullable();
|
||||
$table->decimal('beratm21', 7)->nullable();
|
||||
$table->decimal('nmsm21', 9)->nullable();
|
||||
$table->decimal('berat22', 7)->nullable();
|
||||
$table->decimal('nm22', 9)->nullable();
|
||||
$table->decimal('nms22', 9)->nullable();
|
||||
$table->decimal('beratm22', 7)->nullable();
|
||||
$table->decimal('nmsm22', 9)->nullable();
|
||||
$table->decimal('berat23', 7)->nullable();
|
||||
$table->decimal('nm23', 9)->nullable();
|
||||
$table->decimal('nms23', 9)->nullable();
|
||||
$table->decimal('beratm23', 7)->nullable();
|
||||
$table->decimal('nmsm23', 9)->nullable();
|
||||
$table->decimal('berat24', 7)->nullable();
|
||||
$table->decimal('nm24', 9)->nullable();
|
||||
$table->decimal('nms24', 9)->nullable();
|
||||
$table->decimal('beratm24', 7)->nullable();
|
||||
$table->decimal('nmsm24', 9)->nullable();
|
||||
$table->decimal('jumberat', 7)->nullable();
|
||||
$table->decimal('jumnm', 9)->nullable();
|
||||
$table->decimal('jumnms', 9)->nullable();
|
||||
$table->decimal('jumberatm', 7)->nullable();
|
||||
$table->decimal('jumnmsm', 9)->nullable();
|
||||
$table->decimal('bezarm', 10)->nullable();
|
||||
$table->decimal('bezaper', 3)->nullable();
|
||||
$table->decimal('jumberath', 11)->nullable();
|
||||
$table->decimal('jumnmh', 11)->nullable();
|
||||
$table->decimal('jumnmsh', 11)->nullable();
|
||||
$table->decimal('jumberatb', 11)->nullable();
|
||||
$table->decimal('jumnmsb', 11)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('peratusan');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreatePolisTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('polis', function (Blueprint $table) {
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->string('norujukan', 20)->nullable();
|
||||
$table->string('komen1', 30)->nullable();
|
||||
$table->string('komen2', 30)->nullable();
|
||||
$table->tinyInteger('tebus')->nullable();
|
||||
$table->integer('recno');
|
||||
$table->string('teller', 100)->nullable();
|
||||
$table->decimal('caj', 9)->default(0);
|
||||
$table->string('kodnegeri', 3)->nullable();
|
||||
$table->string('koddaerah', 3)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('polis');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,89 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateProductTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('product', function (Blueprint $table) {
|
||||
$table->string('prkod', 2);
|
||||
$table->string('database', 8)->nullable();
|
||||
$table->string('keterangan', 20)->nullable();
|
||||
$table->integer('tempoh')->nullable();
|
||||
$table->integer('tempohmax')->nullable();
|
||||
$table->decimal('pinjaman', 7)->nullable();
|
||||
$table->decimal('pinjaman2', 7)->nullable();
|
||||
$table->decimal('marginmin', 5)->nullable();
|
||||
$table->decimal('marginmax', 5)->nullable();
|
||||
$table->decimal('marginansur', 7)->nullable();
|
||||
$table->string('laporan', 40)->nullable();
|
||||
$table->integer('lanjut1')->nullable();
|
||||
$table->integer('lanjut2')->nullable();
|
||||
$table->integer('matang')->nullable();
|
||||
$table->integer('notis1')->nullable();
|
||||
$table->integer('notis2')->nullable();
|
||||
$table->integer('notis3')->nullable();
|
||||
$table->tinyInteger('nt1')->nullable();
|
||||
$table->tinyInteger('nt2')->nullable();
|
||||
$table->tinyInteger('nt3')->nullable();
|
||||
$table->tinyInteger('nt1a')->nullable();
|
||||
$table->tinyInteger('nt2a')->nullable();
|
||||
$table->tinyInteger('nt3a')->nullable();
|
||||
$table->decimal('cajnotis3', 5)->nullable();
|
||||
$table->decimal('cajnotis', 5)->nullable();
|
||||
$table->integer('sks1')->nullable();
|
||||
$table->integer('sks2')->nullable();
|
||||
$table->integer('sks3')->nullable();
|
||||
$table->integer('sks4')->nullable();
|
||||
$table->integer('sks5')->nullable();
|
||||
$table->integer('sks6')->nullable();
|
||||
$table->tinyInteger('sks1n')->nullable();
|
||||
$table->tinyInteger('sks2n')->nullable();
|
||||
$table->tinyInteger('sks3n')->nullable();
|
||||
$table->tinyInteger('sks4n')->nullable();
|
||||
$table->tinyInteger('sks5n')->nullable();
|
||||
$table->tinyInteger('sks6n')->nullable();
|
||||
$table->string('pkadarupah', 1)->nullable();
|
||||
$table->integer('hari')->nullable();
|
||||
$table->string('kodgl', 15)->nullable();
|
||||
$table->string('glcode', 15)->nullable();
|
||||
$table->string('glcodebk', 15)->nullable();
|
||||
$table->string('glcode_up', 15)->nullable();
|
||||
$table->string('glcode_kc', 15)->nullable();
|
||||
$table->string('glcode_cn', 15)->nullable();
|
||||
$table->string('glcode_cl', 15)->nullable();
|
||||
$table->string('glcode_hk', 15)->nullable();
|
||||
$table->string('glcode_sc', 15)->nullable();
|
||||
$table->string('glcode_up_jmc', 10)->default('5000/016');
|
||||
$table->string('pilihtempoh', 1)->default('0');
|
||||
$table->integer('harisebulan')->default(0);
|
||||
$table->integer('hari15')->default(0);
|
||||
$table->tinyInteger('jenisansur')->nullable();
|
||||
$table->dateTime('tarikh')->nullable();
|
||||
$table->string('gl_phk', 10)->nullable();
|
||||
$table->string('gl_bp', 10)->nullable();
|
||||
$table->string('gl_belumbp', 10)->nullable();
|
||||
$table->string('glcode_upxtra', 15);
|
||||
$table->string('glcode_clxtra', 15);
|
||||
$table->string('glpd_xtra', 15);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('product');
|
||||
}
|
||||
}
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateSimulasiLelongTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('simulasi_lelong', function (Blueprint $table) {
|
||||
$table->integer('recNo');
|
||||
$table->smallInteger('BatchNo')->nullable()->default(0);
|
||||
$table->integer('SiriLel')->nullable()->default(0);
|
||||
$table->string('KodCaw', 3)->nullable();
|
||||
$table->string('NoRujukan', 20)->nullable();
|
||||
$table->date('T_Lelong')->nullable();
|
||||
$table->decimal('HargaAsas', 9)->nullable()->default(0);
|
||||
$table->decimal('HargaJual', 9)->nullable()->default(0);
|
||||
$table->date('T_Jual')->nullable();
|
||||
$table->integer('NoPembeli')->nullable()->default(0);
|
||||
$table->decimal('Jbg', 7)->nullable()->default(0);
|
||||
$table->decimal('KadarUpah', 5)->nullable()->default(0);
|
||||
$table->decimal('NilaiMarhun', 9)->nullable()->default(0);
|
||||
$table->decimal('NilaiMarhunS', 9)->default(0);
|
||||
$table->decimal('Pinjaman', 9)->nullable()->default(0);
|
||||
$table->decimal('BakiUpah', 7)->nullable()->default(0);
|
||||
$table->decimal('CajLain', 7)->nullable()->default(0);
|
||||
$table->decimal('CajLelong', 7)->nullable()->default(0);
|
||||
$table->decimal('Baki', 9)->nullable()->default(0);
|
||||
$table->string('Terima', 1)->nullable();
|
||||
$table->tinyInteger('Cetak')->nullable()->default(0);
|
||||
$table->string('Teller', 7)->nullable();
|
||||
$table->string('Pelulus', 7)->nullable();
|
||||
$table->tinyInteger('TagSurat')->nullable()->default(0);
|
||||
$table->date('TrkhTuntut')->nullable();
|
||||
$table->decimal('Berat', 7)->nullable()->default(0);
|
||||
$table->string('Marhun', 30)->nullable();
|
||||
$table->decimal('percent', 9)->default(0);
|
||||
$table->decimal('turun', 11)->default(0);
|
||||
$table->decimal('hargalama', 11)->default(0);
|
||||
$table->string('mutu_terendah', 4);
|
||||
$table->decimal('harga_baru', 11)->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('simulasi_lelong');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit10Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit10', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit10');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit11Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit11', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit11');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit12Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit12', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit12');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit1Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit1', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit1');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit2Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit2', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit2');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit3Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit3', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit3');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit4Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit4', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit4');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit5Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit5', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit5');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit6Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit6', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit6');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit7Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit7', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit7');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit8Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit8', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit8');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateStokaudit9Table extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('stokaudit9', function (Blueprint $table) {
|
||||
$table->integer('id');
|
||||
$table->integer('tahun')->nullable();
|
||||
$table->integer('bulan')->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->decimal('tempoh', 9)->nullable();
|
||||
$table->string('nokp', 199)->nullable();
|
||||
$table->decimal('berat', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->nullable();
|
||||
$table->decimal('kadarupah', 9)->nullable();
|
||||
$table->decimal('tempohblmbyar', 9)->nullable();
|
||||
$table->decimal('upahblmbyar', 9)->nullable();
|
||||
$table->integer('lanjutan')->nullable();
|
||||
$table->decimal('utgonepercent', 9);
|
||||
$table->decimal('ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('stokaudit9');
|
||||
}
|
||||
}
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateTangguhlelongTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('tangguhlelong', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->smallInteger('batchno')->nullable();
|
||||
$table->string('norujukan', 20)->nullable();
|
||||
$table->date('tarikhtangguh')->nullable();
|
||||
$table->string('nota', 30)->nullable();
|
||||
$table->decimal('pinjaman', 11)->nullable();
|
||||
$table->decimal('percentpinj', 9)->nullable();
|
||||
$table->integer('jbg')->nullable();
|
||||
$table->decimal('berat', 7)->nullable();
|
||||
$table->integer('fasa')->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('tangguhlelong');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateTarafTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('taraf', function (Blueprint $table) {
|
||||
$table->string('taraf', 2)->nullable();
|
||||
$table->string('keterangan', 25)->nullable();
|
||||
$table->decimal('pinjmax', 5)->nullable();
|
||||
$table->decimal('limittunait', 9)->nullable();
|
||||
$table->decimal('limittunaip', 9)->nullable();
|
||||
$table->decimal('maxpinjmohon', 9)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('taraf');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,86 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateTebusTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('tebus', function (Blueprint $table) {
|
||||
$table->integer('sirit');
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->string('norujukan', 20)->nullable();
|
||||
$table->string('nopelanggan', 12)->nullable();
|
||||
$table->string('jenisbyr', 2)->nullable();
|
||||
$table->string('jenistebus', 1)->nullable();
|
||||
$table->string('jeniscek', 2)->nullable();
|
||||
$table->string('bankcode', 4)->nullable();
|
||||
$table->string('nocek', 20)->nullable();
|
||||
$table->decimal('cajcek', 5)->nullable()->default(0);
|
||||
$table->string('glcode', 15)->nullable();
|
||||
$table->date('t_jangka')->nullable();
|
||||
$table->date('t_lunas')->nullable();
|
||||
$table->date('t_tendang')->nullable();
|
||||
$table->date('t_tebus')->nullable();
|
||||
$table->decimal('jbg', 7)->nullable();
|
||||
$table->decimal('kadarupah', 5)->nullable();
|
||||
$table->decimal('upahsimpan', 7)->nullable();
|
||||
$table->decimal('ansuran', 9)->nullable();
|
||||
$table->decimal('nilaimarhun', 9)->nullable();
|
||||
$table->decimal('addpinjaman', 7)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakipjm', 9)->default(0);
|
||||
$table->decimal('bakiupah', 7)->nullable();
|
||||
$table->decimal('cajlain', 7)->nullable()->default(0);
|
||||
$table->string('terima', 1)->nullable();
|
||||
$table->integer('cetak')->nullable();
|
||||
$table->string('teller', 100)->nullable();
|
||||
$table->string('pelulus', 7)->nullable();
|
||||
$table->string('pelulust', 7)->nullable();
|
||||
$table->string('f_lulus', 1)->nullable();
|
||||
$table->integer('nowakil')->nullable();
|
||||
$table->string('prkod', 2)->nullable();
|
||||
$table->string('cancelid', 7)->nullable();
|
||||
$table->time('canceltime')->nullable();
|
||||
$table->string('kodgl', 15)->nullable();
|
||||
$table->decimal('upahasal', 7)->nullable()->default(0);
|
||||
$table->string('nota', 30)->nullable();
|
||||
$table->decimal('rebate', 7)->nullable();
|
||||
$table->string('marhuntebus', 80)->nullable();
|
||||
$table->tinyInteger('tiada')->nullable()->default(0);
|
||||
$table->decimal('gantirugi', 9)->nullable()->default(0);
|
||||
$table->date('trkhupah')->nullable();
|
||||
$table->integer('tagterima')->nullable()->default(0);
|
||||
$table->string('hubungan', 10)->nullable();
|
||||
$table->decimal('upahpercuma', 11)->nullable();
|
||||
$table->decimal('upahdibayar', 11)->default(0);
|
||||
$table->string('historygadaian', 20)->nullable();
|
||||
$table->decimal('pinjamanterkini', 11)->nullable();
|
||||
$table->decimal('bayaranpampasan', 9)->nullable();
|
||||
$table->decimal('byrnonline', 9)->nullable();
|
||||
$table->decimal('byrnlebih', 9)->nullable();
|
||||
$table->decimal('byrnkurang', 9)->nullable();
|
||||
$table->date('tarikhbyrn')->nullable();
|
||||
$table->decimal('ujrah', 9);
|
||||
$table->decimal('onepercent', 9);
|
||||
$table->decimal('diskaun_rebate', 12)->nullable()->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('tebus');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateTunaiTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('tunai', function (Blueprint $table) {
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->string('kodlaluan', 100)->nullable();
|
||||
$table->decimal('bakiawal', 11)->default(0);
|
||||
$table->decimal('masuk', 11)->default(0);
|
||||
$table->decimal('yuran', 7)->default(0);
|
||||
$table->decimal('keluar', 11)->default(0);
|
||||
$table->decimal('baki', 11)->default(0);
|
||||
$table->decimal('tambah', 11)->default(0);
|
||||
$table->decimal('kurang', 11)->default(0);
|
||||
$table->integer('recno');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('tunai');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateTuntutbakiTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('tuntutbaki', function (Blueprint $table) {
|
||||
$table->integer('recno');
|
||||
$table->integer('batchno')->nullable()->default(0);
|
||||
$table->string('jenis', 1)->nullable();
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->string('norujukan', 20)->nullable();
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->string('prkod', 2)->nullable();
|
||||
$table->string('teller', 100)->nullable();
|
||||
$table->string('pelulus', 20)->nullable();
|
||||
$table->decimal('bakipjm', 9)->default(0);
|
||||
$table->decimal('bakiupah', 7)->default(0);
|
||||
$table->decimal('cajlain', 7)->default(0);
|
||||
$table->decimal('cajlelong', 7)->default(0);
|
||||
$table->string('kodgl', 15)->nullable();
|
||||
$table->string('glcode', 15)->nullable();
|
||||
$table->string('terima', 1)->nullable();
|
||||
$table->string('f_lulus', 1)->nullable();
|
||||
$table->decimal('jumlah', 7)->default(0);
|
||||
$table->integer('nowakil')->default(0);
|
||||
$table->decimal('hargajual', 9)->default(0);
|
||||
$table->decimal('gst_cl', 9)->nullable()->default(0);
|
||||
$table->decimal('gst_hj', 9)->nullable()->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('tuntutbaki');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateUgamaTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('ugama', function (Blueprint $table) {
|
||||
$table->string('kodugama', 2)->nullable();
|
||||
$table->string('keterangan', 15)->nullable();
|
||||
$table->integer('recno')->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('ugama');
|
||||
}
|
||||
}
|
||||
+49
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateUpdateserverTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('updateserver', function (Blueprint $table) {
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->decimal('gadai', 11)->nullable();
|
||||
$table->decimal('bajetgadai', 11)->default(0);
|
||||
$table->decimal('variansgadai', 11)->default(0);
|
||||
$table->decimal('tebus', 11)->nullable();
|
||||
$table->decimal('bajettebus', 11)->default(0);
|
||||
$table->decimal('varianstebus', 11)->default(0);
|
||||
$table->decimal('upah', 11)->nullable();
|
||||
$table->decimal('upahbajet', 11)->default(0);
|
||||
$table->decimal('variansupah', 11)->default(0);
|
||||
$table->decimal('pinjamangadai', 11)->nullable();
|
||||
$table->integer('customerbaru')->nullable();
|
||||
$table->decimal('bakipetibesi', 11)->nullable();
|
||||
$table->decimal('nilaimarhuntotal', 11)->nullable();
|
||||
$table->decimal('vgadai', 11)->nullable();
|
||||
$table->decimal('vtebus', 11)->nullable();
|
||||
$table->decimal('vupah', 11)->nullable();
|
||||
$table->decimal('vsumgadai', 11)->nullable();
|
||||
$table->decimal('vsumtebus', 11)->nullable();
|
||||
$table->decimal('vsumupah', 11)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('updateserver');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateVaultTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('vault', function (Blueprint $table) {
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->decimal('bakiawal', 11)->default(0);
|
||||
$table->decimal('keluar', 11)->default(0);
|
||||
$table->decimal('masuk', 11)->default(0);
|
||||
$table->decimal('bakiakhir', 11)->default(0);
|
||||
$table->decimal('bakieod', 11)->default(0);
|
||||
$table->integer('recno');
|
||||
$table->decimal('pendahuluan', 11)->default(0);
|
||||
$table->decimal('serahan', 11)->default(0);
|
||||
$table->integer('1sen')->default(0);
|
||||
$table->integer('5sen')->default(0);
|
||||
$table->integer('10sen')->default(0);
|
||||
$table->integer('20sen')->default(0);
|
||||
$table->integer('50sen')->default(0);
|
||||
$table->integer('rm1')->default(0);
|
||||
$table->integer('rm2')->default(0);
|
||||
$table->integer('rm5')->default(0);
|
||||
$table->integer('rm10')->default(0);
|
||||
$table->integer('rm20')->default(0);
|
||||
$table->integer('rm50')->default(0);
|
||||
$table->integer('rm100')->default(0);
|
||||
$table->integer('rm1000')->default(0);
|
||||
$table->decimal('totpanjar', 11)->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('vault');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateWakilSuratTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('wakil_surat', function (Blueprint $table) {
|
||||
$table->unsignedBigInteger('id');
|
||||
$table->string('nosiri')->nullable();
|
||||
$table->string('no_surat')->nullable();
|
||||
$table->string('norujukan')->nullable();
|
||||
$table->string('t_cetak')->nullable();
|
||||
$table->timestamps();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('wakil_surat');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateWakilTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('wakil', function (Blueprint $table) {
|
||||
$table->string('nopelanggan', 12)->nullable();
|
||||
$table->integer('nowakil');
|
||||
$table->string('nama', 40)->nullable();
|
||||
$table->string('nokp', 14)->nullable();
|
||||
$table->string('hubungan', 20)->nullable();
|
||||
$table->string('alamat1', 40)->nullable();
|
||||
$table->string('alamat2', 40)->nullable();
|
||||
$table->string('alamat3', 40)->nullable();
|
||||
$table->string('telefon', 20)->nullable();
|
||||
$table->string('nota', 20)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('wakil');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateWtdTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::connection('mysql2')->create('wtd', function (Blueprint $table) {
|
||||
$table->string('norujukan', 20);
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->string('nokp', 20)->nullable();
|
||||
$table->string('nopelanggan', 20)->nullable();
|
||||
$table->string('nama', 50);
|
||||
$table->integer('batchno')->nullable();
|
||||
$table->date('t_jual')->nullable();
|
||||
$table->decimal('hargajual', 9)->nullable();
|
||||
$table->decimal('pinjaman', 9)->nullable();
|
||||
$table->decimal('bakiupah', 9)->nullable();
|
||||
$table->decimal('cajlelong', 9)->nullable();
|
||||
$table->decimal('gst_cl', 9)->nullable();
|
||||
$table->decimal('baki', 9)->nullable();
|
||||
$table->decimal('rugi', 9)->nullable();
|
||||
$table->decimal('ansrugi', 9)->nullable();
|
||||
$table->decimal('wtd', 9)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::connection('mysql2')->dropIfExists('wtd');
|
||||
}
|
||||
}
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateAkruNetPecahanTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('akru_net_pecahan', function (Blueprint $table) {
|
||||
$table->unsignedBigInteger('id')->primary();
|
||||
$table->integer('tahun');
|
||||
$table->integer('bulan');
|
||||
$table->decimal('persen_semasa', 9);
|
||||
$table->decimal('ujrah_semasa', 9);
|
||||
$table->decimal('persen_sebelum', 9);
|
||||
$table->decimal('ujrah_sebelum', 9);
|
||||
$table->decimal('keuntungan_semasa_1persen', 9);
|
||||
$table->decimal('keuntungan_semasa_ujrah', 9);
|
||||
$table->decimal('baki_keun_blm_byr_1persen', 9);
|
||||
$table->decimal('baki_keun_blm_byr_ujrah', 9);
|
||||
$table->decimal('pend_akru_1persen', 9);
|
||||
$table->decimal('pend_akru_ujrah', 9);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('akru_net_pecahan');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateAnggotaTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('anggota', function (Blueprint $table) {
|
||||
$table->unsignedBigInteger('id')->primary();
|
||||
$table->string('no_anggota')->nullable()->unique();
|
||||
$table->string('nama');
|
||||
$table->string('noic')->unique();
|
||||
$table->string('no_tel')->nullable();
|
||||
$table->tinyInteger('status')->default(1)->comment('1 = aktif, 0 = tidak aktif');
|
||||
$table->timestamps();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('anggota');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateArrahnFilesTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('arrahn_files', function (Blueprint $table) {
|
||||
$table->bigIncrements('id');
|
||||
$table->unsignedBigInteger('files_id')->nullable()->index();
|
||||
$table->longText('data')->nullable();
|
||||
$table->string('filename')->nullable();
|
||||
$table->string('type', 100)->nullable();
|
||||
$table->string('tarikhmasa', 50)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('arrahn_files');
|
||||
}
|
||||
}
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateArrahnMasterDbTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('arrahn_master_db', function (Blueprint $table) {
|
||||
$table->integer('mid')->primary();
|
||||
$table->string('ip_caw', 25);
|
||||
$table->string('id_caw', 50);
|
||||
$table->string('pwd_caw', 25)->default('');
|
||||
$table->string('details_caw', 50);
|
||||
$table->string('db_name', 50);
|
||||
$table->string('kodcaw', 10);
|
||||
$table->string('mysql', 10);
|
||||
$table->integer('zone')->nullable();
|
||||
$table->integer('group_id');
|
||||
$table->char('version', 4)->default('v1');
|
||||
$table->integer('tagarrahnbid')->default(0);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('arrahn_master_db');
|
||||
}
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateAuditCustomerTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('audit_customer', function (Blueprint $table) {
|
||||
$table->integer('aid', true);
|
||||
$table->string('username', 50)->default('');
|
||||
$table->string('old_data', 5000)->default('');
|
||||
$table->string('new_data', 5000)->default('');
|
||||
$table->string('kodcaw', 50)->default('');
|
||||
$table->timestamp('created_at');
|
||||
$table->timestamp('updated_at')->nullable();
|
||||
$table->string('customer_name', 100)->default('');
|
||||
$table->string('customer_nokp', 50)->default('');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('audit_customer');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateAuditTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('audit', function (Blueprint $table) {
|
||||
$table->increments('id');
|
||||
$table->string('users', 199)->nullable();
|
||||
$table->string('actions', 199)->nullable();
|
||||
$table->string('norujukan', 199)->nullable();
|
||||
$table->string('old_data', 5000)->nullable();
|
||||
$table->string('new_data', 5000)->nullable();
|
||||
$table->string('kodcaw', 199)->nullable();
|
||||
$table->timestamps();
|
||||
$table->string('details', 5000)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('audit');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateBajetTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('bajet', function (Blueprint $table) {
|
||||
$table->integer('id')->primary();
|
||||
$table->string('kodcaw', 50)->nullable();
|
||||
$table->string('bulan', 50)->nullable();
|
||||
$table->decimal('nilaibajet', 9)->nullable();
|
||||
$table->timestamps();
|
||||
$table->string('updated_by', 50)->nullable();
|
||||
$table->integer('bajetid')->nullable()->index('FK_bajet_bajettahunan');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('bajet');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateBajettahunanTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('bajettahunan', function (Blueprint $table) {
|
||||
$table->integer('id')->primary();
|
||||
$table->string('kodcaw', 50)->nullable();
|
||||
$table->date('tahun')->nullable();
|
||||
$table->string('jenisbajet', 50)->nullable();
|
||||
$table->timestamps();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('bajettahunan');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateBankTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('bank', function (Blueprint $table) {
|
||||
$table->integer('id')->primary();
|
||||
$table->string('name', 100)->default('0');
|
||||
$table->string('abbreviation', 100)->default('0');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('bank');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateBsasOrdersTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('bsas_orders', function (Blueprint $table) {
|
||||
$table->bigIncrements('id');
|
||||
$table->string('uuid', 64)->nullable()->unique();
|
||||
$table->string('norujukan', 50)->index();
|
||||
$table->string('kodcaw', 20)->index();
|
||||
$table->string('serial_number', 20)->default('1');
|
||||
$table->string('product_code', 50)->nullable();
|
||||
$table->decimal('bid_value', 14)->nullable();
|
||||
$table->decimal('otc_murabaha_value', 14)->nullable();
|
||||
$table->string('otc_counter_party', 150)->nullable();
|
||||
$table->string('status', 30)->default('pending')->index();
|
||||
$table->integer('status_code')->nullable();
|
||||
$table->string('status_message')->nullable();
|
||||
$table->string('e_cert_no', 100)->nullable()->index();
|
||||
$table->json('bid_ecert_response')->nullable();
|
||||
$table->json('otc_ecert_response')->nullable();
|
||||
$table->json('stb_ecert_response')->nullable();
|
||||
$table->json('request_payload')->nullable();
|
||||
$table->json('order_response')->nullable();
|
||||
$table->json('result_response')->nullable();
|
||||
$table->string('created_by', 100)->nullable();
|
||||
$table->timestamps();
|
||||
|
||||
$table->index(['norujukan', 'status']);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('bsas_orders');
|
||||
}
|
||||
}
|
||||
+36
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateCawanganFeatureTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('cawangan_feature', function (Blueprint $table) {
|
||||
$table->bigIncrements('id');
|
||||
$table->string('kodcaw', 20);
|
||||
$table->string('feature', 64);
|
||||
$table->tinyInteger('enabled')->default(0);
|
||||
$table->timestamps();
|
||||
|
||||
$table->unique(['kodcaw', 'feature'], 'uniq_cawangan_feature');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('cawangan_feature');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateCawanganTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('cawangan', function (Blueprint $table) {
|
||||
$table->integer('caw_id')->primary();
|
||||
$table->string('caw_dbuser', 20);
|
||||
$table->string('caw_dbpass', 20);
|
||||
$table->string('caw_dbname', 20);
|
||||
$table->string('caw_ip', 100);
|
||||
$table->string('caw_host', 100);
|
||||
$table->string('caw_name', 100);
|
||||
$table->string('caw_code', 10);
|
||||
$table->string('kategori', 10);
|
||||
$table->string('nama_bank', 100);
|
||||
$table->string('bank_acc', 100);
|
||||
$table->string('bank_acc_no', 30);
|
||||
$table->string('alamat1', 50);
|
||||
$table->string('alamat2', 50);
|
||||
$table->string('notel', 20);
|
||||
$table->string('nofaks', 20);
|
||||
$table->string('lokasi', 20);
|
||||
$table->integer('pkb_jmc');
|
||||
$table->string('aros', 30);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('cawangan');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateCustomerTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('customer', function (Blueprint $table) {
|
||||
$table->bigInteger('id')->unique('nopelanggan');
|
||||
$table->string('ahli', 1)->nullable();
|
||||
$table->boolean('tag_anggota')->default(false);
|
||||
$table->unsignedBigInteger('gambar_mykad')->nullable();
|
||||
$table->string('kodcaw', 10)->nullable();
|
||||
$table->integer('nosiri')->nullable();
|
||||
$table->date('tarikhdaftar')->nullable();
|
||||
$table->string('nopelanggan', 12)->default('');
|
||||
$table->string('kplama', 14)->nullable()->index('kplama');
|
||||
$table->string('kpbaru', 14)->nullable()->index('kpbaru');
|
||||
$table->string('nama', 60)->nullable()->index('nama');
|
||||
$table->date('t_lahir')->nullable();
|
||||
$table->string('jantina', 1)->nullable();
|
||||
$table->string('alamat1', 300)->nullable();
|
||||
$table->string('alamat2', 40)->nullable();
|
||||
$table->string('alamat3', 40)->nullable();
|
||||
$table->string('alamat4', 20)->nullable();
|
||||
$table->string('poskod', 5)->nullable();
|
||||
$table->integer('koddaerah')->nullable();
|
||||
$table->string('kodnegeri', 3)->nullable();
|
||||
$table->string('telefon', 20)->nullable();
|
||||
$table->decimal('jumpinjaman', 9)->nullable();
|
||||
$table->date('t_gadai')->nullable();
|
||||
$table->decimal('pinjamhari', 9)->nullable();
|
||||
$table->string('bumiputra', 1)->nullable();
|
||||
$table->string('warganegara', 1)->nullable();
|
||||
$table->string('bangsa', 1)->nullable();
|
||||
$table->string('kodkerja', 2)->nullable();
|
||||
$table->string('kodugama', 2)->nullable();
|
||||
$table->string('kodstatus', 3)->nullable();
|
||||
$table->string('kodbank', 4)->nullable();
|
||||
$table->string('noakaun', 20)->nullable();
|
||||
$table->string('nota', 200)->nullable();
|
||||
$table->string('teller', 100)->nullable();
|
||||
$table->string('pelulus', 20)->nullable();
|
||||
$table->date('t_ubah')->nullable();
|
||||
$table->time('m_ubah')->nullable();
|
||||
$table->string('aktif', 1)->nullable();
|
||||
$table->decimal('yuranahli', 5)->nullable();
|
||||
$table->string('nopelangganlama', 12)->nullable();
|
||||
$table->string('tujuangadai', 30)->nullable();
|
||||
$table->string('kodkerjabaru', 2)->nullable();
|
||||
$table->integer('tagperingatan')->nullable();
|
||||
$table->string('namateller', 100)->nullable();
|
||||
$table->integer('kumpulan')->nullable();
|
||||
$table->string('telefon2', 20)->nullable();
|
||||
$table->string('tagpelanggan', 20)->nullable();
|
||||
$table->string('nota_pekerjaan')->nullable();
|
||||
$table->string('nota_arcc')->nullable();
|
||||
|
||||
$table->primary(['id']);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('customer');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateDaerahTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('daerah', function (Blueprint $table) {
|
||||
$table->integer('koddaerah')->index('koddaerah');
|
||||
$table->string('namadaerah', 30)->nullable();
|
||||
$table->string('kodnegeri', 3)->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('daerah');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateDenopanjarTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('denopanjar', function (Blueprint $table) {
|
||||
$table->integer('no')->primary();
|
||||
$table->string('kodlaluan', 100)->nullable();
|
||||
$table->float('serahan', 9)->nullable();
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->time('masa');
|
||||
$table->integer('update')->default(0);
|
||||
$table->string('jenis', 50)->nullable();
|
||||
$table->integer('recno')->nullable()->index('recno');
|
||||
$table->string('kodcaw', 50);
|
||||
$table->integer('bd1')->nullable();
|
||||
$table->integer('bd5')->nullable();
|
||||
$table->integer('bd10')->nullable();
|
||||
$table->integer('bd20')->nullable();
|
||||
$table->integer('bd50')->nullable();
|
||||
$table->integer('bd100')->nullable();
|
||||
$table->integer('txtring1')->nullable();
|
||||
$table->integer('txtring5')->nullable();
|
||||
$table->integer('txtring10')->nullable();
|
||||
$table->integer('txtring20')->nullable();
|
||||
$table->integer('txtring50')->nullable();
|
||||
$table->integer('txtring100')->nullable();
|
||||
$table->integer('txtring1000')->nullable();
|
||||
$table->integer('txtsen1')->nullable();
|
||||
$table->integer('txtsen5')->nullable();
|
||||
$table->integer('txtsen10')->nullable();
|
||||
$table->integer('txtsen20')->nullable();
|
||||
$table->integer('txtsen50')->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('denopanjar');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateDenopendserTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('denopendser', function (Blueprint $table) {
|
||||
$table->integer('no', true);
|
||||
$table->string('kodlaluan', 100)->nullable();
|
||||
$table->float('amaun', 9)->nullable();
|
||||
$table->date('tarikh')->nullable();
|
||||
$table->time('masa');
|
||||
$table->integer('update')->default(0);
|
||||
$table->string('jenis', 50)->nullable();
|
||||
$table->integer('recno')->nullable()->index('recno');
|
||||
$table->string('kodcaw', 50);
|
||||
$table->integer('bd1')->nullable();
|
||||
$table->integer('bd5')->nullable();
|
||||
$table->integer('bd10')->nullable();
|
||||
$table->integer('bd20')->nullable();
|
||||
$table->integer('bd50')->nullable();
|
||||
$table->integer('bd100')->nullable();
|
||||
$table->integer('txtring1')->nullable();
|
||||
$table->integer('txtring5')->nullable();
|
||||
$table->integer('txtring10')->nullable();
|
||||
$table->integer('txtring20')->nullable();
|
||||
$table->integer('txtring50')->nullable();
|
||||
$table->integer('txtring100')->nullable();
|
||||
$table->integer('txtring1000')->nullable();
|
||||
$table->integer('txtsen1')->nullable();
|
||||
$table->integer('txtsen5')->nullable();
|
||||
$table->integer('txtsen10')->nullable();
|
||||
$table->integer('txtsen20')->nullable();
|
||||
$table->integer('txtsen50')->nullable();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('denopendser');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateFaqTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('faq', function (Blueprint $table) {
|
||||
$table->unsignedInteger('id')->primary();
|
||||
$table->string('tajuk', 2000);
|
||||
$table->string('isikandungan', 5000);
|
||||
$table->timestamp('reg_date');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('faq');
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user