This commit is contained in:
meusinfirmary
2025-05-29 13:21:59 +07:00
parent 3b9d94620a
commit 77bc5f10a6
29 changed files with 2206 additions and 2247 deletions

View File

@ -6,7 +6,6 @@ use App\Models\OrdersInvoices;
class Helper class Helper
{ {
const EARTH_RADIUS_M = 6371000; const EARTH_RADIUS_M = 6371000;
const EARTH_RADIUS_KM = 6371; const EARTH_RADIUS_KM = 6371;
const EARTH_RADIUS_MILES = 3959; // 3958.756 || 3959 || 3963 const EARTH_RADIUS_MILES = 3959; // 3958.756 || 3959 || 3963
@ -25,7 +24,7 @@ class Helper
* miles: 3958.756 || 3959 * miles: 3958.756 || 3959
* km: 6371 * km: 6371
* meters: 6371000 * meters: 6371000
* more accurate using km/meters than miles i think ~ rafifmulia * more accurate using km/meters than miles i think
*/ */
public static function haversineGreatCircleDistance( public static function haversineGreatCircleDistance(
$latitudeFrom, $latitudeFrom,
@ -43,7 +42,9 @@ class Helper
$latDelta = $latTo - $latFrom; $latDelta = $latTo - $latFrom;
$lonDelta = $lonTo - $lonFrom; $lonDelta = $lonTo - $lonFrom;
$angle = 2 * asin(sqrt(pow(sin($latDelta / 2), 2) + cos($latFrom) * cos($latTo) * pow(sin($lonDelta / 2), 2))); $angle =
2 *
asin(sqrt(pow(sin($latDelta / 2), 2) + cos($latFrom) * cos($latTo) * pow(sin($lonDelta / 2), 2)));
$distance = $angle * $earthRadius; $distance = $angle * $earthRadius;
return $distance; return $distance;
@ -56,19 +57,25 @@ class Helper
$longitudeTo, $longitudeTo,
$earthRadius = 6371000 $earthRadius = 6371000
) { ) {
return ($earthRadius * acos((cos(deg2rad($latitudeFrom))) * (cos(deg2rad($latitudeTo))) * (cos(deg2rad($longitudeTo) - deg2rad($longitudeFrom))) + ((sin(deg2rad($latitudeFrom))) * (sin(deg2rad($latitudeTo)))))); return $earthRadius *
acos(
cos(deg2rad($latitudeFrom)) *
cos(deg2rad($latitudeTo)) *
cos(deg2rad($longitudeTo) - deg2rad($longitudeFrom)) +
sin(deg2rad($latitudeFrom)) * sin(deg2rad($latitudeTo))
);
} }
public static function createPayload($array) public static function createPayload($array)
{ {
$string = ''; $string = "";
foreach ($array as $key => $val) { foreach ($array as $key => $val) {
if (is_array($val)) { if (is_array($val)) {
self::createPayload($val); self::createPayload($val);
continue; continue;
} }
$string .= $key . '=' . $val . '&'; $string .= $key . "=" . $val . "&";
} }
return $string; return $string;
@ -93,27 +100,25 @@ class Helper
$resp = curl_exec($ch); $resp = curl_exec($ch);
if (curl_errno($ch)) { if (curl_errno($ch)) {
$result = [ $result = [
'type' => 'error', "type" => "error",
'message' => curl_error($ch) "message" => curl_error($ch),
]; ];
return $result; return $result;
} else { } else {
$result = ["type" => "success"];
$result = ['type' => 'success'];
try { try {
$data = json_decode($resp); $data = json_decode($resp);
if (json_last_error() == JSON_ERROR_NONE) { if (json_last_error() == JSON_ERROR_NONE) {
$result['data'] = $data; $result["data"] = $data;
} else { } else {
$result['data'] = $resp; $result["data"] = $resp;
} }
return $result; return $result;
} catch (\Exception $e) { } catch (\Exception $e) {
$result['data'] = $resp; $result["data"] = $resp;
return $result; return $result;
} }
} }
@ -136,24 +141,24 @@ class Helper
if (curl_errno($ch)) { if (curl_errno($ch)) {
$result = [ $result = [
'type' => 'error', "type" => "error",
'message' => curl_error($ch) "message" => curl_error($ch),
]; ];
return $result; return $result;
} else { } else {
$result = ['type' => 'success']; $result = ["type" => "success"];
try { try {
$data = json_decode($resp); $data = json_decode($resp);
if (json_last_error() == JSON_ERROR_NONE) { if (json_last_error() == JSON_ERROR_NONE) {
$result['data'] = $data; $result["data"] = $data;
} else { } else {
$result['data'] = $resp; $result["data"] = $resp;
} }
return $result; return $result;
} catch (\Exception $e) { } catch (\Exception $e) {
$result['data'] = $resp; $result["data"] = $resp;
return $result; return $result;
} }
} }
@ -163,73 +168,87 @@ class Helper
{ {
return [ return [
[ [
'id' => 'A', "id" => "A",
'name' => 'A', "name" => "A",
], ],
[ [
'id' => 'A+', "id" => "A+",
'name' => 'A+', "name" => "A+",
], ],
[ [
'id' => 'B', "id" => "B",
'name' => 'B', "name" => "B",
], ],
[ [
'id' => 'B+', "id" => "B+",
'name' => 'B+', "name" => "B+",
], ],
[ [
'id' => 'O', "id" => "O",
'name' => 'O', "name" => "O",
], ],
[ [
'id' => 'O+', "id" => "O+",
'name' => 'O+', "name" => "O+",
], ],
[ [
'id' => 'AB', "id" => "AB",
'name' => 'AB', "name" => "AB",
], ],
[ [
'id' => 'AB+', "id" => "AB+",
'name' => 'AB+', "name" => "AB+",
], ],
]; ];
} }
public static function countAge($date_ymd) public static function countAge($date_ymd)
{ {
$then = date('Ymd', strtotime($date_ymd)); $then = date("Ymd", strtotime($date_ymd));
$diff = date('Ymd') - $then; $diff = date("Ymd") - $then;
return (int) substr($diff, 0, -4); return (int) substr($diff, 0, -4);
} }
public static function terbilang($nilai) public static function terbilang($nilai)
{ {
function penyebut($nilai) { function penyebut($nilai)
{
$nilai = abs($nilai); $nilai = abs($nilai);
$huruf = array("", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas"); $huruf = [
"",
"satu",
"dua",
"tiga",
"empat",
"lima",
"enam",
"tujuh",
"delapan",
"sembilan",
"sepuluh",
"sebelas",
];
$temp = ""; $temp = "";
if ($nilai < 12) { if ($nilai < 12) {
$temp = " ". $huruf[$nilai]; $temp = " " . $huruf[$nilai];
} else if ($nilai <20) { } elseif ($nilai < 20) {
$temp = penyebut($nilai - 10). " belas"; $temp = penyebut($nilai - 10) . " belas";
} else if ($nilai < 100) { } elseif ($nilai < 100) {
$temp = penyebut($nilai/10)." puluh". penyebut($nilai % 10); $temp = penyebut($nilai / 10) . " puluh" . penyebut($nilai % 10);
} else if ($nilai < 200) { } elseif ($nilai < 200) {
$temp = " seratus" . penyebut($nilai - 100); $temp = " seratus" . penyebut($nilai - 100);
} else if ($nilai < 1000) { } elseif ($nilai < 1000) {
$temp = penyebut($nilai/100) . " ratus" . penyebut($nilai % 100); $temp = penyebut($nilai / 100) . " ratus" . penyebut($nilai % 100);
} else if ($nilai < 2000) { } elseif ($nilai < 2000) {
$temp = " seribu" . penyebut($nilai - 1000); $temp = " seribu" . penyebut($nilai - 1000);
} else if ($nilai < 1000000) { } elseif ($nilai < 1000000) {
$temp = penyebut($nilai/1000) . " ribu" . penyebut($nilai % 1000); $temp = penyebut($nilai / 1000) . " ribu" . penyebut($nilai % 1000);
} else if ($nilai < 1000000000) { } elseif ($nilai < 1000000000) {
$temp = penyebut($nilai/1000000) . " juta" . penyebut($nilai % 1000000); $temp = penyebut($nilai / 1000000) . " juta" . penyebut($nilai % 1000000);
} else if ($nilai < 1000000000000) { } elseif ($nilai < 1000000000000) {
$temp = penyebut($nilai/1000000000) . " milyar" . penyebut(fmod($nilai,1000000000)); $temp = penyebut($nilai / 1000000000) . " milyar" . penyebut(fmod($nilai, 1000000000));
} else if ($nilai < 1000000000000000) { } elseif ($nilai < 1000000000000000) {
$temp = penyebut($nilai/1000000000000) . " trilyun" . penyebut(fmod($nilai,1000000000000)); $temp = penyebut($nilai / 1000000000000) . " trilyun" . penyebut(fmod($nilai, 1000000000000));
} }
return $temp; return $temp;
} }
@ -245,42 +264,44 @@ class Helper
public static function lastDigitYear() public static function lastDigitYear()
{ {
// 2023 => 3 // 2023 => 3
return substr(date('Y'), -1); return substr(date("Y"), -1);
} }
public static function weekNumOfYear() public static function weekNumOfYear()
{ {
// 27 jul 2022 => 30 // 27 jul 2022 => 30
return date('W'); return date("W");
} }
public static function dayOfWeek() public static function dayOfWeek()
{ {
// monday => 01, sunday => 07 // monday => 01, sunday => 07
return date('N'); return date("N");
} }
public static function gnrtOrdCode($type) { public static function gnrtOrdCode($type)
$ord_code = ''; {
$ord_code = "";
$ord_code .= $type; $ord_code .= $type;
$ord_code .= Helper::lastDigitYear() . Helper::weekNumOfYear() . Helper::dayOfWeek(); $ord_code .= Helper::lastDigitYear() . Helper::weekNumOfYear() . Helper::dayOfWeek();
// above before running number // above before running number
$likeCode = \App\Models\Orders::getOrderLikeCode($ord_code); $likeCode = \App\Models\Orders::getOrderLikeCode($ord_code);
// below after running number // below after running number
if (count($likeCode) < 1 || $likeCode === false) { if (count($likeCode) < 1 || $likeCode === false) {
$ord_code .= '001'; $ord_code .= "001";
} else { } else {
if ($likeCode[0]->total < 1) { if ($likeCode[0]->total < 1) {
$ord_code .= '001'; $ord_code .= "001";
} else { } else {
$ord_code .= str_pad($likeCode[0]->total + 1, 3, '0', STR_PAD_LEFT); $ord_code .= str_pad($likeCode[0]->total + 1, 3, "0", STR_PAD_LEFT);
} }
} }
return $ord_code; return $ord_code;
} }
public static function gnrtInvcCode($ord_code) { public static function gnrtInvcCode($ord_code)
$invc_code = ''; {
$invc_code = "";
$type = substr($ord_code, 0, 1); $type = substr($ord_code, 0, 1);
$invc_code .= Helper::lastDigitYear() . Helper::weekNumOfYear() . $type; $invc_code .= Helper::lastDigitYear() . Helper::weekNumOfYear() . $type;
$first_invc_code = $invc_code; $first_invc_code = $invc_code;
@ -288,18 +309,18 @@ class Helper
$likeCode = \App\Models\OrdersInvoices::getLikeCode($invc_code); $likeCode = \App\Models\OrdersInvoices::getLikeCode($invc_code);
// below after running number // below after running number
if (count($likeCode) < 1 || $likeCode === false) { if (count($likeCode) < 1 || $likeCode === false) {
$invc_code .= '001'; $invc_code .= "001";
} else { } else {
if ($likeCode[0]->total < 1) { if ($likeCode[0]->total < 1) {
$invc_code .= '001'; $invc_code .= "001";
} else { } else {
$invc_code .= str_pad($likeCode[0]->total + 1, 3, '0', STR_PAD_LEFT); $invc_code .= str_pad($likeCode[0]->total + 1, 3, "0", STR_PAD_LEFT);
$checkCode = OrdersInvoices::getByCode($invc_code); $checkCode = OrdersInvoices::getByCode($invc_code);
if (count($checkCode) > 0) { if (count($checkCode) > 0) {
$invc_code = $first_invc_code; $invc_code = $first_invc_code;
$lastRN = OrdersInvoices::getLikeCodeLastRunningNumber($invc_code); $lastRN = OrdersInvoices::getLikeCodeLastRunningNumber($invc_code);
$newRN = (int)substr($lastRN[0]->code, -3); $newRN = (int) substr($lastRN[0]->code, -3);
$invc_code .= str_pad($newRN + 1, 3, '0', STR_PAD_LEFT); $invc_code .= str_pad($newRN + 1, 3, "0", STR_PAD_LEFT);
} }
} }
} }
@ -324,7 +345,10 @@ class Helper
// invoice close // invoice close
return 4; return 4;
} else { } else {
if ($prev_termin !== 0 && $prev_termin->termin_is_paid === \App\Models\OrdersTermins::IS_PAID_NO) { if (
$prev_termin !== 0 &&
$prev_termin->termin_is_paid === \App\Models\OrdersTermins::IS_PAID_NO
) {
// Termin sebelumnya belum terkonfirmasi selesai // Termin sebelumnya belum terkonfirmasi selesai
return 3; return 3;
} }
@ -337,7 +361,10 @@ class Helper
// invoice close // invoice close
return 4; return 4;
} else { } else {
if ($prev_termin !== 0 && $prev_termin->termin_is_paid === \App\Models\OrdersTermins::IS_PAID_NO) { if (
$prev_termin !== 0 &&
$prev_termin->termin_is_paid === \App\Models\OrdersTermins::IS_PAID_NO
) {
// Termin sebelumnya belum terkonfirmasi selesai // Termin sebelumnya belum terkonfirmasi selesai
return 3; return 3;
} }
@ -350,8 +377,8 @@ class Helper
public static function changeIpToDomain($fullurl) public static function changeIpToDomain($fullurl)
{ {
$replace = $fullurl; $replace = $fullurl;
if (!strpos($fullurl, env('ORI_IP')) === false) { if (!strpos($fullurl, env("ORI_IP")) === false) {
$replace = str_replace(env('ORI_IP'), env('ORI_DOMAIN'), $replace); $replace = str_replace(env("ORI_IP"), env("ORI_DOMAIN"), $replace);
} }
return $replace; return $replace;
} }

View File

@ -20,54 +20,57 @@ class LoggerController extends Controller
$now = time(); $now = time();
try { try {
$input = [ $input = [
'label' => $req->label, "label" => $req->label,
'level' => $req->level, "level" => $req->level,
'logtype' => $req->logtype, "logtype" => $req->logtype,
'keys' => $req->keys, "keys" => $req->keys,
'act' => 'email', "act" => "email",
'to' => ['rafifmreswara@gmail.com'], "to" => ["emirsyafmun@gmail.com"],
'errors' => $req->errors, "errors" => $req->errors,
'vers' => '1.2.1', "vers" => "1.2.1",
'source' => 'service', "source" => "service",
'payloads' => $req->payloads, "payloads" => $req->payloads,
]; ];
$rulesInput = [ $rulesInput = [
'label' => 'required|string', "label" => "required|string",
'level' => 'required|numeric', "level" => "required|numeric",
'logtype' => 'required|string', "logtype" => "required|string",
'keys' => 'required|array', "keys" => "required|array",
'act' => 'required|string', "act" => "required|string",
'to' => 'nullable|array', "to" => "nullable|array",
'errors' => 'nullable|string', "errors" => "nullable|string",
'vers' => 'required|string', "vers" => "required|string",
'source' => 'required|string', "source" => "required|string",
'payloads' => 'nullable|string', "payloads" => "nullable|string",
]; ];
// validasi input // validasi input
$isValidInput = Validator::make($input, $rulesInput); $isValidInput = Validator::make($input, $rulesInput);
if (!$isValidInput->passes()) { if (!$isValidInput->passes()) {
$apiResp = Responses::bad_input($isValidInput->messages()->first()); $apiResp = Responses::bad_input($isValidInput->messages()->first());
return new Response($apiResp, $apiResp['meta']['code']); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
$payload = Helper::createPayload([ $payload = Helper::createPayload([
'usnme' => 'rafif', "usnme" => "emrsyf",
'paswd' => 12345678 "paswd" => 12345678,
]); ]);
$login = Helper::req_post('https://api.simerahputih.com/logger/login', [ $login = Helper::req_post(
'Content-Type: application/x-www-form-urlencoded', "https://api.simerahputih.com/logger/login",
], $payload); ["Content-Type: application/x-www-form-urlencoded"],
$payload
);
// $payload = Helper::createPayload($input); // $payload = Helper::createPayload($input);
// dd($payload); // dd($payload);
$resp = Helper::req_post('https://api.simerahputih.com/logger/log', [ $resp = Helper::req_post(
'Content-Type: application/json', "https://api.simerahputih.com/logger/log",
'x-api-key: ' . $login['data']->data->token ["Content-Type: application/json", "x-api-key: " . $login["data"]->data->token],
], json_encode($input)); json_encode($input)
);
$apiResp = Responses::success('success send log'); $apiResp = Responses::success("success send log");
return new Response($apiResp, $apiResp['meta']['code']); return new Response($apiResp, $apiResp["meta"]["code"]);
} catch (\Exception $e) { } catch (\Exception $e) {
dd($e); dd($e);
} }

View File

@ -226,16 +226,16 @@ class MenuController extends Controller
) )
->get(); ->get();
foreach ($rawData as $_data) { foreach ($rawData as $_data) {
$ehck = DB::table("t_orders_drivers_uploads") // $ehck = DB::table("t_orders_drivers_uploads")
->select( // ->select(
"id", // // "id", //
"checklist_name", // "checklist_name",
"checklist_desc", // "checklist_desc",
"img", // "img",
"updt" // "updt"
) // )
->where("ord_pck_drop_id", $_data->id) // ->where("ord_pck_drop_id", $_data->id)
->get(); // ->get();
$data[] = [ $data[] = [
"id" => $_data->id, "id" => $_data->id,
"pck_date" => $_data->pck_date, "pck_date" => $_data->pck_date,
@ -244,11 +244,9 @@ class MenuController extends Controller
"pck_addr" => $_data->pck_addr, "pck_addr" => $_data->pck_addr,
"drop_name" => $_data->drop_name, "drop_name" => $_data->drop_name,
"drop_addr" => $_data->drop_addr, "drop_addr" => $_data->drop_addr,
"checklist_array" => $ehck, "checklist_array" => [],
]; ];
} }
// dd($data[0]["checklist_array"]);
// dd($data);
$data = [ $data = [
"data" => $data, "data" => $data,
"orders" => $orders, "orders" => $orders,
@ -317,11 +315,12 @@ class MenuController extends Controller
$rate = OrdersRates::getById($order[0]->ord_rate_id); $rate = OrdersRates::getById($order[0]->ord_rate_id);
$data = [ $data = [
"order" => $order[0], "order" => $order[0],
"vendors" => OrdersVendors::searchVendorsByRate([ // "vendors" => OrdersVendors::searchVendorsByRate([
"active_rates" => $rate[0], // "active_rates" => $rate[0],
"prefer_truck_type" => $order[0]->prefer_truck_type, // "prefer_truck_type" => $order[0]->prefer_truck_type,
]), // ]),
]; ];
// dd($data["order"]);
return view("menu_v1._confirmTransactions", $data); return view("menu_v1._confirmTransactions", $data);
} }
@ -340,16 +339,22 @@ class MenuController extends Controller
public function view_transactions_add(Request $req) public function view_transactions_add(Request $req)
{ {
$data = [ // dd(Users::ROLE_ADMIN);
"uclients" => Users::listUsers([ $uclients = Users::listUsers([
"role" => Users::ROLE_CLIENT_ADMIN, "role" => Users::ROLE_ADMIN,
"status" => Users::STATUS_ACTIVE, "status" => Users::STATUS_ACTIVE,
]), ]);
// dd($uclients);
$data = [
"uclients" => [collect($uclients)->firstWhere("id", 1)],
"truck_types" => ConfTruckTypes::listTruckTypesRates( "truck_types" => ConfTruckTypes::listTruckTypesRates(
ConfTruckTypes::IS_ACTIVE, ConfTruckTypes::IS_ACTIVE,
ConfRates::LANE_EARTH ConfRates::LANE_EARTH
), ),
"vehicle" => Vehicles::listVehicles([]),
"driver" => Drivers::getDrivers([]),
]; ];
// dd($data["vehicle"]);
return view("menu_v2.Clients._addTransactions", $data); return view("menu_v2.Clients._addTransactions", $data);
} }

View File

@ -36,6 +36,7 @@ class TrackController extends Controller
]; ];
if ($req->cptid) { if ($req->cptid) {
$filter["company"] = $req->cptid; $filter["company"] = $req->cptid;
// $filter["company"] = 1;
} }
if ($req->auth->is_tracking === Users::IS_TRACK_VHC_YES) { if ($req->auth->is_tracking === Users::IS_TRACK_VHC_YES) {
@ -84,6 +85,7 @@ class TrackController extends Controller
} }
$list = Tracks::listCurrentTracks($filter); $list = Tracks::listCurrentTracks($filter);
// dd($list);
foreach ($list as $key => $row) { foreach ($list as $key => $row) {
$list[$key]->DT_RowIndex = $key + 1; $list[$key]->DT_RowIndex = $key + 1;
// $list[$key]->mileage_km = '-'; // $list[$key]->mileage_km = '-';

View File

@ -248,7 +248,7 @@ class TransactionController extends Controller
$pdfPath = "", $pdfPath = "",
$pdfTitle = "", $pdfTitle = "",
$imgName = "", $imgName = "",
$outputPdfFile = "", $outputPdfFile = ""
) { ) {
if (empty($imgPathFile)) { if (empty($imgPathFile)) {
return false; return false;
@ -317,7 +317,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Foto Seal", "Foto Seal",
"ord_pck_seal_img", "ord_pck_seal_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -328,7 +328,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Foto Seal", "Foto Seal",
"ord_pck_seal_img", "ord_pck_seal_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -340,7 +340,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Foto Pengemudi + Armada", "Foto Pengemudi + Armada",
"ord_pck_drv_armd_img", "ord_pck_drv_armd_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -351,7 +351,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Foto Pengemudi + Armada", "Foto Pengemudi + Armada",
"ord_pck_drv_armd_img", "ord_pck_drv_armd_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -363,7 +363,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Nomor Polisi Kendaraan", "Nomor Polisi Kendaraan",
"ord_pck_nopol_img", "ord_pck_nopol_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -374,7 +374,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Nomor Polisi Kendaraan", "Nomor Polisi Kendaraan",
"ord_pck_nopol_img", "ord_pck_nopol_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -389,7 +389,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Dokumen Kelengkapan dari Client", "Dokumen Kelengkapan dari Client",
"ord_pck_doc_client_img_" . $i, "ord_pck_doc_client_img_" . $i
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -400,7 +400,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Dokumen Kelengkapan dari Client", "Dokumen Kelengkapan dari Client",
"ord_pck_doc_client_img_" . $i, "ord_pck_doc_client_img_" . $i
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -413,7 +413,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Foto Pemasangan Seal", "Foto Pemasangan Seal",
"ord_pck_seal_install_img", "ord_pck_seal_install_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -424,7 +424,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Foto Pemasangan Seal", "Foto Pemasangan Seal",
"ord_pck_seal_install_img", "ord_pck_seal_install_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -436,7 +436,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Foto Barang", "Foto Barang",
"ord_pck_goods_img", "ord_pck_goods_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -447,7 +447,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Penjemputan", "Data Penjemputan",
"Foto Barang", "Foto Barang",
"ord_pck_goods_img", "ord_pck_goods_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -461,7 +461,7 @@ class TransactionController extends Controller
if (count($availToMergers) > 0) { if (count($availToMergers) > 0) {
$pdfMerge->merge( $pdfMerge->merge(
"file", "file",
storage_path("app/public/" . $pdfPath . "download_report_pickup.pdf"), storage_path("app/public/" . $pdfPath . "download_report_pickup.pdf")
); );
} }
@ -579,7 +579,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Pengantaran", "Data Pengantaran",
"Foto mobil tiba di tujuan", "Foto mobil tiba di tujuan",
"ord_drop_arrived_img", "ord_drop_arrived_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -590,7 +590,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Pengantaran", "Data Pengantaran",
"Foto mobil tiba di tujuan", "Foto mobil tiba di tujuan",
"ord_drop_arrived_img", "ord_drop_arrived_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -602,7 +602,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Pengantaran", "Data Pengantaran",
"Foto serah terima", "Foto serah terima",
"ord_drop_handover_img", "ord_drop_handover_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -613,7 +613,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Pengantaran", "Data Pengantaran",
"Foto serah terima", "Foto serah terima",
"ord_drop_handover_img", "ord_drop_handover_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -625,7 +625,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Pengantaran", "Data Pengantaran",
"Foto DO yg sudah di TTD", "Foto DO yg sudah di TTD",
"ord_drop_do_ttd_img", "ord_drop_do_ttd_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -636,7 +636,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Pengantaran", "Data Pengantaran",
"Foto DO yg sudah di TTD", "Foto DO yg sudah di TTD",
"ord_drop_do_ttd_img", "ord_drop_do_ttd_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -648,7 +648,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Pengantaran", "Data Pengantaran",
"Foto surat jalan di TTD", "Foto surat jalan di TTD",
"ord_drop_spk_img", "ord_drop_spk_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -659,7 +659,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Pengantaran", "Data Pengantaran",
"Foto surat jalan di TTD", "Foto surat jalan di TTD",
"ord_drop_spk_img", "ord_drop_spk_img"
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -768,7 +768,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Kecelakaan", "Data Kecelakaan",
"Foto Pendukung", "Foto Pendukung",
"ord_acdnt_img_" . $i, "ord_acdnt_img_" . $i
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -779,7 +779,7 @@ class TransactionController extends Controller
$pdfPath, $pdfPath,
"Data Kecelakaan", "Data Kecelakaan",
"Foto Pendukung", "Foto Pendukung",
"ord_acdnt_img_" . $i, "ord_acdnt_img_" . $i
); );
if ($onePagePdf) { if ($onePagePdf) {
$availToMergers[] = $onePagePdf; $availToMergers[] = $onePagePdf;
@ -794,7 +794,7 @@ class TransactionController extends Controller
if (count($availToMergers) > 0) { if (count($availToMergers) > 0) {
$pdfMerge->merge( $pdfMerge->merge(
"file", "file",
storage_path("app/public/" . $pdfPath . "download_report_acdnt.pdf"), storage_path("app/public/" . $pdfPath . "download_report_acdnt.pdf")
); );
} }
@ -1021,7 +1021,7 @@ class TransactionController extends Controller
tod.drop_name, tod.drop_name,
tod.drop_addr, tod.drop_addr,
tod.pic_name as drp_pic_name, tod.pic_name as drp_pic_name,
tod.pic_phone_val as drp_pic_phone", tod.pic_phone_val as drp_pic_phone"
); );
if (isset($req->point_id)) { if (isset($req->point_id)) {
$rawData->where("topd.id", $req->point_id); $rawData->where("topd.id", $req->point_id);
@ -1035,7 +1035,7 @@ class TransactionController extends Controller
"checklist_name", "checklist_name",
"checklist_desc", "checklist_desc",
"img", "img",
"updt", "updt"
) )
->where("ord_pck_drop_id", $_data->id) ->where("ord_pck_drop_id", $_data->id)
->get(); ->get();
@ -1185,7 +1185,7 @@ class TransactionController extends Controller
foreach ($req->packing_list as $k => $v) { foreach ($req->packing_list as $k => $v) {
if (count(OrdersItems::getOrderItemByCode($v["Item Code"])) > 0) { if (count(OrdersItems::getOrderItemByCode($v["Item Code"])) > 0) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request(
"Item Code: " . $v["Item Code"] . " not uniq, please reupload your packing list", "Item Code: " . $v["Item Code"] . " not uniq, please reupload your packing list"
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -1255,7 +1255,7 @@ class TransactionController extends Controller
// } // }
if ($calc_weight === 0 && $calc_cbm === 0) { if ($calc_weight === 0 && $calc_cbm === 0) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request(
"You must fill in at least 1 of weight / dimension / volume on packing list.", "You must fill in at least 1 of weight / dimension / volume on packing list."
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -1330,7 +1330,7 @@ class TransactionController extends Controller
} }
if ($pck[0]->prid == 0) { if ($pck[0]->prid == 0) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request(
"Pickup zone province not filled, please recheck input province zone", "Pickup zone province not filled, please recheck input province zone"
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -1342,13 +1342,13 @@ class TransactionController extends Controller
} }
if ($drop[0]->ktid == 0) { if ($drop[0]->ktid == 0) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request(
"Drop zone city not filled, please recheck input city zone", "Drop zone city not filled, please recheck input city zone"
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
if ($drop[0]->kcid == 0) { if ($drop[0]->kcid == 0) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request(
"Drop zone district not filled, please recheck input district zone", "Drop zone district not filled, please recheck input district zone"
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -1380,7 +1380,7 @@ class TransactionController extends Controller
} else { } else {
$truck_types = ConfTruckTypes::listTruckTypesRates( $truck_types = ConfTruckTypes::listTruckTypesRates(
ConfTruckTypes::IS_ACTIVE, ConfTruckTypes::IS_ACTIVE,
ConfRates::LANE_EARTH, ConfRates::LANE_EARTH
); );
if (count($truck_types) < 1) { if (count($truck_types) < 1) {
$apiResp = Responses::bad_request("No vehicle available"); $apiResp = Responses::bad_request("No vehicle available");
@ -1481,15 +1481,15 @@ class TransactionController extends Controller
"pickup_at" => $req->pickup_at, "pickup_at" => $req->pickup_at,
"pickup_zone_id" => $req->pickup_zone_id, "pickup_zone_id" => $req->pickup_zone_id,
"drop_zone_id" => $req->drop_zone_id, "drop_zone_id" => $req->drop_zone_id,
"truck_type_id" => $req->truck_type_id, // "truck_type_id" => $req->truck_type_id,
"truck_type_name" => $req->truck_type_name, // "truck_type_name" => $req->truck_type_name,
]; ];
$rulesInput = [ $rulesInput = [
"pickup_at" => "required|integer", "pickup_at" => "required|integer",
"pickup_zone_id" => "required|integer", "pickup_zone_id" => "required|integer",
"drop_zone_id" => "required|integer", "drop_zone_id" => "required|integer",
"truck_type_id" => "required|numeric", // "truck_type_id" => "required|numeric",
"truck_type_name" => "nullable|string", // "truck_type_name" => "nullable|string",
]; ];
// validasi input // validasi input
@ -1530,7 +1530,7 @@ class TransactionController extends Controller
} }
if ($pck[0]->prid == 0) { if ($pck[0]->prid == 0) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request(
"Pickup zone province not filled, please recheck input province zone", "Pickup zone province not filled, please recheck input province zone"
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -1542,27 +1542,28 @@ class TransactionController extends Controller
} }
if ($drop[0]->ktid == 0) { if ($drop[0]->ktid == 0) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request(
"Drop zone city not filled, please recheck input city zone", "Drop zone city not filled, please recheck input city zone"
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
if ($drop[0]->kcid == 0) { if ($drop[0]->kcid == 0) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request(
"Drop zone district not filled, please recheck input district zone", "Drop zone district not filled, please recheck input district zone"
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
$rates = ConfRates::getRateByDestDistrict($pck[0]->prid, $drop[0]->kcid); // $rates = ConfRates::getRateByDestDistrict($pck[0]->prid, $drop[0]->kcid);
// dd($rates); // // dd($rates);
if (count($rates) < 1) { // if (count($rates) < 1) {
$rates = ConfRates::getRateByDestCity($pck[0]->prid, $drop[0]->ktid); // $rates = ConfRates::getRateByDestCity($pck[0]->prid, $drop[0]->ktid);
} // }
if (count($rates) < 1) { // if (count($rates) < 1) {
$apiResp = Responses::bad_request("No service available going to drop zone"); // $apiResp = Responses::bad_request("No service available going to drop zone");
return new Response($apiResp, $apiResp["meta"]["code"]); // return new Response($apiResp, $apiResp["meta"]["code"]);
} // }
$rates = 0;
$client = Clients::getClientById($req->auth->client_group_id); $client = Clients::getClientById($req->auth->client_group_id);
@ -1574,59 +1575,59 @@ class TransactionController extends Controller
} }
$opts = []; $opts = [];
foreach ($rates as $k => $v) { // foreach ($rates as $k => $v) {
if ($check_truck_type) { // if ($check_truck_type) {
if ($v->vhc_type !== $ttid) { // if ($v->vhc_type !== $ttid) {
continue; // continue;
} // }
} // }
$opt = [ // $opt = [
"is_best" => 0, // "is_best" => 0,
]; // ];
if ($k === 0) { // if ($k === 0) {
$opt["is_best"] = 1; // $opt["is_best"] = 1;
} // }
$opt["lead_time_id"] = $v->id; // $opt["lead_time_id"] = $v->id;
// $center_time = $v->long_time - $v->fast_time; // // $center_time = $v->long_time - $v->fast_time;
$opt["lead_time"] = $v->long_time; // $opt["lead_time"] = $v->long_time;
$price = $v->sell_ftl ?? 0; // $price = $v->sell_ftl ?? 0;
// TRIGER JIKA HARGA 0 // // TRIGER JIKA HARGA 0
// if ($price < 1) { // // if ($price < 1) {
// $apiResp = Responses::bad_request("No service provided"); // // $apiResp = Responses::bad_request("No service provided");
// // return new Response($apiResp, $apiResp["meta"]["code"]);
// // }
// $opt["price"] = $price;
// $opt["real_price"] = $price;
// $opt["disc_price"] = 0;
// $opt["disc_type"] = $client[0]->disc_type;
// $opt["disc_percent"] = 0;
// if ($client[0]->disc_type === Clients::DISC_TYPE_FIX) {
// $opt["disc_price"] = $client[0]->disc_amount;
// $opt["price"] = $opt["price"] - $opt["disc_price"];
// } elseif ($client[0]->disc_type === Clients::DISC_TYPE_PERCENT) {
// $opt["disc_percent"] = $client[0]->disc_amount;
// $opt["disc_price"] = ($opt["price"] * $client[0]->disc_amount) / 100;
// $opt["price"] = $opt["price"] - $opt["disc_price"];
// }
// // group by lead_time and sell_price
// $isSame = 0;
// foreach ($opts as $key => $val) {
// if ($val["price"] == $opt["price"] && $val["lead_time"] == $opt["lead_time"]) {
// $isSame = 1;
// }
// }
// if ($isSame === 1) {
// continue;
// }
// array_push($opts, $opt);
// }
// dd(count($opts));
// if (count($opts) < 1 && $check_truck_type) {
// $apiResp = Responses::bad_request("No truck type available going to drop zone");
// return new Response($apiResp, $apiResp["meta"]["code"]); // return new Response($apiResp, $apiResp["meta"]["code"]);
// } // }
$opt["price"] = $price;
$opt["real_price"] = $price;
$opt["disc_price"] = 0;
$opt["disc_type"] = $client[0]->disc_type;
$opt["disc_percent"] = 0;
if ($client[0]->disc_type === Clients::DISC_TYPE_FIX) {
$opt["disc_price"] = $client[0]->disc_amount;
$opt["price"] = $opt["price"] - $opt["disc_price"];
} elseif ($client[0]->disc_type === Clients::DISC_TYPE_PERCENT) {
$opt["disc_percent"] = $client[0]->disc_amount;
$opt["disc_price"] = ($opt["price"] * $client[0]->disc_amount) / 100;
$opt["price"] = $opt["price"] - $opt["disc_price"];
}
// group by lead_time and sell_price
$isSame = 0;
foreach ($opts as $key => $val) {
if ($val["price"] == $opt["price"] && $val["lead_time"] == $opt["lead_time"]) {
$isSame = 1;
}
}
if ($isSame === 1) {
continue;
}
array_push($opts, $opt);
}
// dd(count($opts));
if (count($opts) < 1 && $check_truck_type) {
$apiResp = Responses::bad_request("No truck type available going to drop zone");
return new Response($apiResp, $apiResp["meta"]["code"]);
}
$apiResp = Responses::success("checkout success"); $apiResp = Responses::success("checkout success");
$apiResp["data"] = $opts; $apiResp["data"] = $opts;
@ -2028,6 +2029,7 @@ class TransactionController extends Controller
public function api_create_order_v2(Request $req) public function api_create_order_v2(Request $req)
{ {
// dd($req->all());
try { try {
// $apiResp = Responses::bad_request("Service on maintenance"); // $apiResp = Responses::bad_request("Service on maintenance");
// return new Response($apiResp, $apiResp["meta"]["code"]); // return new Response($apiResp, $apiResp["meta"]["code"]);
@ -2037,25 +2039,29 @@ class TransactionController extends Controller
"pickup_at" => $req->pickup_at, "pickup_at" => $req->pickup_at,
"pickup_zone_id" => $req->pickup_zone_id, "pickup_zone_id" => $req->pickup_zone_id,
"drop_zone_id" => $req->drop_zone_id, "drop_zone_id" => $req->drop_zone_id,
"lead_time" => $req->lead_time, // "lead_time" => $req->lead_time,
"price" => $req->price, // "price" => $req->price,
"real_price" => $req->real_price, // "real_price" => $req->real_price,
"disc_price" => $req->disc_price, // "disc_price" => $req->disc_price,
"lead_time_id" => $req->lead_time_id, // "lead_time_id" => $req->lead_time_id,
"truck_type_id" => $req->truck_type_id, "vehicle_id" => $req->vehicle_id,
"truck_type_name" => $req->truck_type_name, "vehicle_name" => $req->vehicle_name,
"driver_id" => $req->driver_id,
"driver_name" => $req->driver_name,
]; ];
$rulesInput = [ $rulesInput = [
"pickup_at" => "required|integer", "pickup_at" => "required|integer",
"pickup_zone_id" => "required|integer", "pickup_zone_id" => "required|integer",
"drop_zone_id" => "required|integer", "drop_zone_id" => "required|integer",
"lead_time" => "required|numeric", // "lead_time" => "required|numeric",
"price" => "required|numeric", // "price" => "required|numeric",
"real_price" => "required|numeric", // "real_price" => "required|numeric",
"disc_price" => "required|numeric", // "disc_price" => "required|numeric",
"lead_time_id" => "required|integer|not_in:0", // "lead_time_id" => "required|integer|not_in:0",
"truck_type_id" => "nullable|numeric", "vehicle_id" => "nullable|numeric",
"truck_type_name" => "nullable|string", "vehicle_name" => "nullable|string",
"driver_id" => "nullable|numeric",
"driver_name" => "nullable|string",
]; ];
// validasi input // validasi input
@ -2089,11 +2095,11 @@ class TransactionController extends Controller
$crt_type_order = Orders::CRT_TYPE_ORDER_ADMIN; $crt_type_order = Orders::CRT_TYPE_ORDER_ADMIN;
} }
$type_truck_name = $req->truck_type_name; $vehicle_name = $req->vehicle_name;
if ($req->truck_type_id && $req->truck_type_id != 0) { if ($req->vehicle_id && $req->vehicle_id != 0) {
$type_truck_name = $req->truck_type_name; $vehicle_name = $req->vehicle_name;
} else { } else {
$type_truck_name = ""; $vehicle_name = "";
$req->truck_type_id = 0; $req->truck_type_id = 0;
} }
@ -2110,7 +2116,7 @@ class TransactionController extends Controller
} while ($doWhile); } while ($doWhile);
$client = Clients::getClientById($req->auth->client_group_id); $client = Clients::getClientById($req->auth->client_group_id);
$rate = ConfRates::getRateById($req->lead_time_id); // $rate = ConfRates::getRateById(0);
$pck = Zone::getZoneById($req->pickup_zone_id); $pck = Zone::getZoneById($req->pickup_zone_id);
// $pck_pic = Clients::getClientById($pck[0]->client_group_id); // $pck_pic = Clients::getClientById($pck[0]->client_group_id);
$drop = Zone::getZoneById($req->drop_zone_id); $drop = Zone::getZoneById($req->drop_zone_id);
@ -2142,16 +2148,16 @@ class TransactionController extends Controller
"type" => Orders::TYPE_FCL, "type" => Orders::TYPE_FCL,
"pck_total" => 1, "pck_total" => 1,
"drop_total" => 1, "drop_total" => 1,
"est_lead_time" => $req->lead_time, "est_lead_time" => 0,
"lead_time" => $req->lead_time, "lead_time" => 0,
"est_price" => $req->price, "est_price" => 0,
"price" => $req->price, "price" => 0,
"est_real_price" => $req->real_price, "est_real_price" => 0,
"real_price" => $req->real_price, "real_price" => 0,
"est_disc_price" => $req->disc_price, "est_disc_price" => 0,
"disc_price" => $req->disc_price, "disc_price" => 0,
"est_rate_id" => $req->lead_time_id, "est_rate_id" => 0,
"rate_id" => $req->lead_time_id, "rate_id" => 0,
"crt_type_order" => $crt_type_order, "crt_type_order" => $crt_type_order,
"crt" => $now, "crt" => $now,
"crt_by" => $req->auth->uid, "crt_by" => $req->auth->uid,
@ -2161,13 +2167,6 @@ class TransactionController extends Controller
]; ];
$ord_id = Orders::addOrder($insOrd); $ord_id = Orders::addOrder($insOrd);
// if ($pck[0]->boundary_bounds) {
// // $pck[0]->boundary_bounds = json_encode($pck[0]->boundary_bounds);
// }
// if ($pck[0]->boundary_latlngs) {
// // $pck[0]->boundary_latlngs = json_encode($pck[0]->boundary_latlngs);
// }
$insPck = [ $insPck = [
"ord_id" => $ord_id, "ord_id" => $ord_id,
"ord_code" => $code, "ord_code" => $code,
@ -2205,13 +2204,6 @@ class TransactionController extends Controller
$pck_id = OrdersPickups::add($insPck); $pck_id = OrdersPickups::add($insPck);
// if ($drop[0]->boundary_bounds) {
// // $drop[0]->boundary_bounds = json_encode($drop[0]->boundary_bounds);
// }
// if ($drop[0]->boundary_latlngs) {
// // $drop[0]->boundary_latlngs = json_encode($drop[0]->boundary_latlngs);
// }
$insDrop = [ $insDrop = [
"ord_id" => $ord_id, "ord_id" => $ord_id,
"ord_code" => $code, "ord_code" => $code,
@ -2271,44 +2263,10 @@ class TransactionController extends Controller
"c_pt_pic_phone_val" => $client[0]->pic_phone, "c_pt_pic_phone_val" => $client[0]->pic_phone,
"c_pt_pic_mail" => $client[0]->pic_mail, "c_pt_pic_mail" => $client[0]->pic_mail,
"c_pt_pic_addr" => null, "c_pt_pic_addr" => null,
"prefer_truck_type" => $req->truck_type_id, "prefer_truck_type" => 1,
]; ];
$ord_client_id = OrdersClients::add($insClient); $ord_client_id = OrdersClients::add($insClient);
$insRate = [
"ord_id" => $ord_id,
"ord_code" => $code,
"rate_id" => $rate[0]->id,
"rate_code" => $rate[0]->code,
"origin_prov" => $rate[0]->origin_prov,
"origin_city" => $rate[0]->origin_city,
"origin_district" => $rate[0]->origin_district,
"origin_village" => $rate[0]->origin_village,
"lane" => $rate[0]->lane,
"dest_prov" => $rate[0]->dest_prov,
"dest_city" => $rate[0]->dest_city,
"dest_district" => $rate[0]->dest_district,
"dest_village" => $rate[0]->dest_village,
"fast_time" => $rate[0]->fast_time,
"long_time" => $rate[0]->long_time,
"unit_time" => $rate[0]->unit_time,
"sell_kg" => $rate[0]->sell_kg,
"buy_kg" => $rate[0]->buy_kg,
"margin_kg" => $rate[0]->margin_kg,
"percent_kg" => $rate[0]->percent_kg,
"sell_cbm" => $rate[0]->sell_cbm,
"buy_cbm" => $rate[0]->buy_cbm,
"margin_cbm" => $rate[0]->margin_cbm,
"percent_cbm" => $rate[0]->percent_cbm,
"sell_ftl" => $rate[0]->sell_ftl,
"buy_ftl" => $rate[0]->buy_ftl,
"margin_ftl" => $rate[0]->margin_ftl,
"percent_ftl" => $rate[0]->percent_ftl,
"vdr_id" => $rate[0]->vdr_id,
"vhc_type" => $rate[0]->vhc_type,
];
OrdersRates::add($insRate);
if (count($insurance) > 0) { if (count($insurance) > 0) {
$insInsurance = [ $insInsurance = [
"ord_id" => $ord_id, "ord_id" => $ord_id,
@ -2322,45 +2280,106 @@ class TransactionController extends Controller
]; ];
OrdersInsurances::add($insInsurance); OrdersInsurances::add($insInsurance);
} }
Orders::updateOrder($ord_id, [
"status" => Orders::STTS_HAVE_GET_VHC,
]);
Vehicles::updateVehicle($req->vehicle_id, [
"is_in_ord" => Vehicles::IN_ORD_YES,
"ord_id" => $ord_id,
"ord_code" => $code,
"c_did" => $req->driver_id,
"a_did" => $req->driver_id,
]);
Drivers::updateDriver($req->driver_id, [
"is_in_ord" => Drivers::IN_ORD_YES,
"ord_id" => $ord_id,
"ord_code" => $code,
]);
$order = Orders::showOrder([
"id" => $ord_id,
"get_exp_vendor" => 1,
// "vdr_id" => $req->auth->uid,
]);
$driver = Drivers::getDriverByIdAllData($req->driver_id);
$vehicle = Vehicles::getVehicleByIdAllData($req->vehicle_id);
OrdersDrivers::add([
"ord_id" => $order[0]->ord_id,
"ord_code" => $order[0]->ord_code,
"vdr_id" => $driver[0]->vendor_id,
"drv_id" => $driver[0]->drv_id,
"drv_name" => $driver[0]->fullname,
"drv_mail" => $driver[0]->email,
"drv_name2" => $driver[0]->fullname2,
"drv_phone_code" => $driver[0]->phone_code,
"drv_phone_val" => $driver[0]->phone,
"drv_phone2_code" => $driver[0]->phone2_code,
"drv_phone2_val" => $driver[0]->phone2,
"drv_addr" => $driver[0]->fulladdress,
"drv_cgroup_id" => $driver[0]->client_group_id,
"drv_nik" => $driver[0]->nik,
"drv_dob" => $driver[0]->dob,
"drv_age" => Helper::countAge($driver[0]->dob),
"drv_gender" => $driver[0]->gender,
"drv_blood" => $driver[0]->blood,
"em_fullname" => $driver[0]->em_fullname,
"em_phone_code" => $driver[0]->em_phone_code,
"em_phone_val" => $driver[0]->em_phone,
"em_relationship" => $driver[0]->em_relationship,
"drv_ktp_img" => $driver[0]->ktp_img,
"drv_npwp_img" => $driver[0]->npwp_img,
"drv_npwp_number" => $driver[0]->npwp_number,
"drv_npwp_string" => $driver[0]->npwp_string,
"drv_license_img" => $driver[0]->license_img,
"drv_license_number" => $driver[0]->license_number,
"drv_license_exp" => $driver[0]->license_exp,
]);
OrdersVehicles::add([
"ord_id" => $order[0]->ord_id,
"ord_code" => $order[0]->ord_code,
"vhc_id" => $vehicle[0]->vhc_id,
"vhc_name" => $vehicle[0]->name,
"vhc_device_id" => $vehicle[0]->device_id,
"vhc_cat_id" => $vehicle[0]->cat_id,
"vhc_brand_id" => $vehicle[0]->brand_id,
"vhc_type_id" => $vehicle[0]->type_id,
"vhc_model_id" => $vehicle[0]->model_id,
"vhc_c_did" => $vehicle[0]->c_did,
"vhc_a_did" => $vehicle[0]->a_did,
"vhc_nopol1" => $vehicle[0]->nopol1,
"vhc_nopol2" => $vehicle[0]->nopol2,
"vhc_nopol3" => $vehicle[0]->nopol3,
"vhc_is_track_holiday" => $vehicle[0]->is_track_holiday,
"vhc_track_sch_d" => $vehicle[0]->track_sch_d,
"vhc_track_sch_h" => $vehicle[0]->track_sch_h,
"vhc_cgroup_id" => $vehicle[0]->client_group_id,
"vhc_vdr_id" => $vehicle[0]->vendor_id,
"vhc_speed_limit" => $vehicle[0]->speed_limit,
"vhc_fuel_capacity" => $vehicle[0]->fuel_capacity,
"vhc_fuel_drop_treshold" => $vehicle[0]->fuel_drop_treshold,
"vhc_max_pressure" => $vehicle[0]->max_pressure,
"vhc_fvhc_img" => $vehicle[0]->fvhc_img,
"vhc_stnk_img" => $vehicle[0]->stnk_img,
"vhc_stnk_exp" => $vehicle[0]->stnk_exp,
"vhc_vyear" => $vehicle[0]->vyear,
"vhc_cc" => $vehicle[0]->cc,
"vhc_vin" => $vehicle[0]->vin,
"vhc_en" => $vehicle[0]->en,
"vhc_vcolor" => $vehicle[0]->vcolor,
"vhc_fuel_type" => $vehicle[0]->fuel_type,
"vhc_tnkb_color" => $vehicle[0]->tnkb_color,
"vhc_regis_year" => $vehicle[0]->regis_year,
"vhc_tax_exp" => $vehicle[0]->tax_exp,
]);
// JIKA PAKAI DANA $dt_inst_pck_drop = [
// $url = env("API_URL_NODE") . "/order/create"; "ord_id" => $order[0]->ord_id,
// $guzReq = new GuzzleClient(); "ord_code" => $order[0]->ord_code,
// $respNode = $guzReq->request("POST", $url, [ "pck_id" => $pck_id,
// "headers" => [ "drop_id" => $drop_id,
// "Host" => $_SERVER["SERVER_ADDR"], "is_active" => 1,
// "User-Agent" => "curl/7.65.3", "stts" => 1,
// "Accept" => "*/*", ];
// "Accept-Encoding" => "gzip, deflate, br", DB::table("t_orders_pck_drop")->insert($dt_inst_pck_drop);
// // 'Content-Type' => 'application/x-www-form-urlencoded; charset=UTF-8',
// // 'Connection' => 'keep-alive',
// ],
// "json" => [
// "trx_code" => $code,
// "trx_at" => $now,
// "client_id" => $req->auth->uid,
// "client_name" => $req->auth->first_name,
// "client_phone" =>
// $req->auth->phone_code .
// " " .
// implode(" ", str_split($req->auth->phone, 4)),
// "client_mail" => $req->auth->email,
// "client_addr" => "",
// "client_prefer_type_truck" => $type_truck_name,
// "pickup_zone_title" => $pck[0]->name,
// "pickup_zone_addr" => $pck[0]->fulladdress,
// "pickup_at" => $req->pickup_at,
// "drop_zone_title" => $drop[0]->name,
// "drop_zone_addr" => $drop[0]->fulladdress,
// "admins" => $admins_data,
// ],
// ]);
// if ($respNode->getStatusCode() != 200) {
// DB::rollBack();
// $apiResp = Responses::bad_request("fail create order 0");
// return new Response($apiResp, $apiResp["meta"]["code"]);
// }
// $body = json_decode($respNode->getBody()->getContents());
$apiResp = Responses::created("success create order"); $apiResp = Responses::created("success create order");
@ -2666,7 +2685,7 @@ class TransactionController extends Controller
if ($found_prefer === 0) { if ($found_prefer === 0) {
// $tt = ConfTruckTypes::getTypeById($order[0]->prefer_truck_type); // $tt = ConfTruckTypes::getTypeById($order[0]->prefer_truck_type);
$apiResp = Responses::not_found( $apiResp = Responses::not_found(
"no vehicle available with prefered type truck " . $order[0]->prefer_truck_type_name, "no vehicle available with prefered type truck " . $order[0]->prefer_truck_type_name
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -2893,7 +2912,7 @@ class TransactionController extends Controller
$vhcs = Vehicles::getVehiclesInVendorIdsActiveNoInOrder( $vhcs = Vehicles::getVehiclesInVendorIdsActiveNoInOrder(
"" . $vendor[0]->id, "" . $vendor[0]->id,
$order[0]->prefer_truck_type, $order[0]->prefer_truck_type
); );
foreach ($vhcs as $vhc) { foreach ($vhcs as $vhc) {
if ($vhc->type_id === $order[0]->prefer_truck_type) { if ($vhc->type_id === $order[0]->prefer_truck_type) {
@ -2906,7 +2925,7 @@ class TransactionController extends Controller
if ($found_prefer === 0) { if ($found_prefer === 0) {
// $tt = ConfTruckTypes::getTypeById($order[0]->prefer_truck_type); // $tt = ConfTruckTypes::getTypeById($order[0]->prefer_truck_type);
$apiResp = Responses::not_found( $apiResp = Responses::not_found(
"no vehicle available with prefered type truck " . $order[0]->prefer_truck_type_name, "no vehicle available with prefered type truck " . $order[0]->prefer_truck_type_name
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -3108,11 +3127,11 @@ class TransactionController extends Controller
// validate if another vendor want this order // validate if another vendor want this order
$otherVendorsWantThisOrder = OrdersVendors::getOtherVendorsWantThisOrder( $otherVendorsWantThisOrder = OrdersVendors::getOtherVendorsWantThisOrder(
$order[0]->ord_id, $order[0]->ord_id,
$req->auth->uid, $req->auth->uid
); );
if (count($otherVendorsWantThisOrder) > 0) { if (count($otherVendorsWantThisOrder) > 0) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request(
"There other vendor want this order, if next 10 minutes the vendor not take the order, we will send email again to you", "There other vendor want this order, if next 10 minutes the vendor not take the order, we will send email again to you"
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -3338,7 +3357,6 @@ class TransactionController extends Controller
"vhc_regis_year" => $vehicle[0]->regis_year, "vhc_regis_year" => $vehicle[0]->regis_year,
"vhc_tax_exp" => $vehicle[0]->tax_exp, "vhc_tax_exp" => $vehicle[0]->tax_exp,
]); ]);
// $url = env("API_URL_NODE") . "/order/email_vendor_acc_order"; // $url = env("API_URL_NODE") . "/order/email_vendor_acc_order";
// $guzReq = new GuzzleClient(); // $guzReq = new GuzzleClient();
// $respNode = $guzReq->request("POST", $url, [ // $respNode = $guzReq->request("POST", $url, [
@ -3795,7 +3813,7 @@ class TransactionController extends Controller
$clearBase64 = preg_replace( $clearBase64 = preg_replace(
"/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/", "/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/",
"", "",
$req->seal_img_base64, $req->seal_img_base64
); );
$type = "jpeg"; $type = "jpeg";
if (strpos($req->seal_img_base64, "application/pdf") !== false) { if (strpos($req->seal_img_base64, "application/pdf") !== false) {
@ -3818,7 +3836,7 @@ class TransactionController extends Controller
$clearBase64 = preg_replace( $clearBase64 = preg_replace(
"/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/", "/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/",
"", "",
$req->drv_armd_img_base64, $req->drv_armd_img_base64
); );
$type = "jpeg"; $type = "jpeg";
if (strpos($req->drv_armd_img_base64, "application/pdf") !== false) { if (strpos($req->drv_armd_img_base64, "application/pdf") !== false) {
@ -3842,7 +3860,7 @@ class TransactionController extends Controller
$clearBase64 = preg_replace( $clearBase64 = preg_replace(
"/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/", "/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/",
"", "",
$req->nopol_img_base64, $req->nopol_img_base64
); );
$type = "jpeg"; $type = "jpeg";
if (strpos($req->nopol_img_base64, "application/pdf") !== false) { if (strpos($req->nopol_img_base64, "application/pdf") !== false) {
@ -3872,7 +3890,7 @@ class TransactionController extends Controller
$clearBase64 = preg_replace( $clearBase64 = preg_replace(
"/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/", "/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/",
"", "",
$img, $img
); );
$type = "jpeg"; $type = "jpeg";
if (strpos($img, "application/pdf") !== false) { if (strpos($img, "application/pdf") !== false) {
@ -3903,7 +3921,7 @@ class TransactionController extends Controller
$clearBase64 = preg_replace( $clearBase64 = preg_replace(
"/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/", "/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/",
"", "",
$req->install_seal_img_base64, $req->install_seal_img_base64
); );
$type = "jpeg"; $type = "jpeg";
if (strpos($req->install_seal_img_base64, "application/pdf") !== false) { if (strpos($req->install_seal_img_base64, "application/pdf") !== false) {
@ -3932,7 +3950,7 @@ class TransactionController extends Controller
$clearBase64 = preg_replace( $clearBase64 = preg_replace(
"/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/", "/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/",
"", "",
$req->goods_img_base64, $req->goods_img_base64
); );
$type = "jpeg"; $type = "jpeg";
if (strpos($req->goods_img_base64, "application/pdf") !== false) { if (strpos($req->goods_img_base64, "application/pdf") !== false) {
@ -4079,7 +4097,7 @@ class TransactionController extends Controller
$clearBase64 = preg_replace( $clearBase64 = preg_replace(
"/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/", "/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/",
"", "",
$req->arrived_img_base64, $req->arrived_img_base64
); );
$type = "jpeg"; $type = "jpeg";
if (strpos($req->arrived_img_base64, "application/pdf") !== false) { if (strpos($req->arrived_img_base64, "application/pdf") !== false) {
@ -4102,7 +4120,7 @@ class TransactionController extends Controller
$clearBase64 = preg_replace( $clearBase64 = preg_replace(
"/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/", "/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/",
"", "",
$req->handover_img_base64, $req->handover_img_base64
); );
$type = "jpeg"; $type = "jpeg";
if (strpos($req->handover_img_base64, "application/pdf") !== false) { if (strpos($req->handover_img_base64, "application/pdf") !== false) {
@ -4127,7 +4145,7 @@ class TransactionController extends Controller
$clearBase64 = preg_replace( $clearBase64 = preg_replace(
"/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/", "/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/",
"", "",
$req->do_ttd_img_base64, $req->do_ttd_img_base64
); );
$type = "jpeg"; $type = "jpeg";
if (strpos($req->do_ttd_img_base64, "application/pdf") !== false) { if (strpos($req->do_ttd_img_base64, "application/pdf") !== false) {
@ -4170,7 +4188,7 @@ class TransactionController extends Controller
$clearBase64 = preg_replace( $clearBase64 = preg_replace(
"/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/", "/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/",
"", "",
$req->spk_img_base64, $req->spk_img_base64
); );
$type = "jpeg"; $type = "jpeg";
if (strpos($req->spk_img_base64, "application/pdf") !== false) { if (strpos($req->spk_img_base64, "application/pdf") !== false) {
@ -4388,7 +4406,7 @@ class TransactionController extends Controller
$clearBase64 = preg_replace( $clearBase64 = preg_replace(
"/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/", "/^data:(image|application)\/(png|jpg|jpeg|pdf);base64,/",
"", "",
$img, $img
); );
$type = "jpeg"; $type = "jpeg";
if (strpos($img, "application/pdf") !== false) { if (strpos($img, "application/pdf") !== false) {
@ -4582,12 +4600,12 @@ class TransactionController extends Controller
$drvAppInsideCircle = Zone::insideOrdZoneCircle( $drvAppInsideCircle = Zone::insideOrdZoneCircle(
$lastLocDriverAps[0]->latitude, $lastLocDriverAps[0]->latitude,
$lastLocDriverAps[0]->longitude, $lastLocDriverAps[0]->longitude,
["zid" => $order[0]->ord_pck_zone_id], ["zid" => $order[0]->ord_pck_zone_id]
); );
$drvAppInsideShape = Zone::insideOrdZoneShape( $drvAppInsideShape = Zone::insideOrdZoneShape(
$lastLocDriverAps[0]->latitude, $lastLocDriverAps[0]->latitude,
$lastLocDriverAps[0]->longitude, $lastLocDriverAps[0]->longitude,
["zid" => $order[0]->ord_pck_zone_id], ["zid" => $order[0]->ord_pck_zone_id]
); );
if (count($drvAppInsideCircle) < 1 && count($drvAppInsideShape) < 1) { if (count($drvAppInsideCircle) < 1 && count($drvAppInsideShape) < 1) {
$apiResp = Responses::bad_request("Lokasi GPS App Tracker tidak didalam zona pickup"); $apiResp = Responses::bad_request("Lokasi GPS App Tracker tidak didalam zona pickup");
@ -5159,7 +5177,7 @@ class TransactionController extends Controller
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} elseif ($order[0]->pck_chk_stts != OrdersPickups::CHK_STTS_SUBMIT) { } elseif ($order[0]->pck_chk_stts != OrdersPickups::CHK_STTS_SUBMIT) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input(
'can\'t confirm price, checker pickup has not submitted data', 'can\'t confirm price, checker pickup has not submitted data'
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -5229,7 +5247,7 @@ class TransactionController extends Controller
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} elseif ($order[0]->pck_chk_stts != OrdersPickups::CHK_STTS_SUBMIT) { } elseif ($order[0]->pck_chk_stts != OrdersPickups::CHK_STTS_SUBMIT) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input(
'can\'t generate invoice, checker pickup has not submitted data', 'can\'t generate invoice, checker pickup has not submitted data'
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -5306,7 +5324,7 @@ class TransactionController extends Controller
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} elseif ($order[0]->pck_chk_stts != OrdersPickups::CHK_STTS_SUBMIT) { } elseif ($order[0]->pck_chk_stts != OrdersPickups::CHK_STTS_SUBMIT) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input(
'can\'t confirm payment, checker pickup has not submitted data', 'can\'t confirm payment, checker pickup has not submitted data'
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -5389,7 +5407,7 @@ class TransactionController extends Controller
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} elseif ($order[0]->drop_chk_stts != OrdersDrops::CHK_STTS_SUBMIT) { } elseif ($order[0]->drop_chk_stts != OrdersDrops::CHK_STTS_SUBMIT) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input(
'can\'t generate instruction payment, checker drop has not submitted data', 'can\'t generate instruction payment, checker drop has not submitted data'
); );
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }

View File

@ -131,7 +131,7 @@ class VehiclesController extends Controller
"regis_year" => $req->regis_year, "regis_year" => $req->regis_year,
"tax_exp" => $req->tax_exp, "tax_exp" => $req->tax_exp,
"kir_exp" => $req->kir_exp, "kir_exp" => $req->kir_exp,
"vendor_id" => $req->vendor_id, // "vendor_id" => $req->vendor_id,
]; ];
$rulesInput = [ $rulesInput = [
"front_vehicle_photo" => "required|string", "front_vehicle_photo" => "required|string",
@ -163,7 +163,7 @@ class VehiclesController extends Controller
"regis_year" => "required|digits:4", "regis_year" => "required|digits:4",
"tax_exp" => "required|date_format:Y-m-d", "tax_exp" => "required|date_format:Y-m-d",
"kir_exp" => "required|date_format:Y-m-d", "kir_exp" => "required|date_format:Y-m-d",
"vendor_id" => "nullable|integer|not_in:0", // "vendor_id" => "nullable|integer|not_in:0",
]; ];
if ($req->auth->role == Users::ROLE_VENDOR) { if ($req->auth->role == Users::ROLE_VENDOR) {
@ -221,11 +221,13 @@ class VehiclesController extends Controller
"track_sch_d" => Vehicles::DEFAULT_TRACK_SCH_D, "track_sch_d" => Vehicles::DEFAULT_TRACK_SCH_D,
"track_sch_h" => Vehicles::DEFAULT_TRACK_SCH_H, "track_sch_h" => Vehicles::DEFAULT_TRACK_SCH_H,
"client_group_id" => $req->auth->client_group_id ?? null, "client_group_id" => $req->auth->client_group_id ?? null,
"vendor_id" => $req->auth->client_group_id ?? 1,
"crt" => $now, "crt" => $now,
"crt_by" => $req->auth->uid, "crt_by" => $req->auth->uid,
"updt" => $now, "updt" => $now,
"updt_by" => $req->auth->uid, "updt_by" => $req->auth->uid,
]; ];
// dd($insVhc);
if ($req->model_id) { if ($req->model_id) {
$insVhc["model_id"] = $req->model_id; $insVhc["model_id"] = $req->model_id;
} }
@ -233,7 +235,7 @@ class VehiclesController extends Controller
$insVhc["vendor_id"] = $req->auth->uid; $insVhc["vendor_id"] = $req->auth->uid;
$insVhc["simcard"] = 0; $insVhc["simcard"] = 0;
} else { } else {
$insVhc["vendor_id"] = $req->vendor_id ?? 0; $insVhc["vendor_id"] = $req->vendor_id ?? 1;
} }
$vid = Vehicles::addVehicle($insVhc); $vid = Vehicles::addVehicle($insVhc);
@ -316,7 +318,7 @@ class VehiclesController extends Controller
$device_id = str_pad($req->device_id, Vehicles::MAX_DEVICE_ID, "0", STR_PAD_LEFT); $device_id = str_pad($req->device_id, Vehicles::MAX_DEVICE_ID, "0", STR_PAD_LEFT);
$input = [ $input = [
"vid" => $vid, "vid" => 1,
"front_vehicle_photo" => $req->fvhc_base64, "front_vehicle_photo" => $req->fvhc_base64,
"dvc_id" => $req->dvc_id ?? 0, "dvc_id" => $req->dvc_id ?? 0,
"simcard" => $req->simcard, "simcard" => $req->simcard,
@ -346,7 +348,7 @@ class VehiclesController extends Controller
"regis_year" => $req->regis_year, "regis_year" => $req->regis_year,
"tax_exp" => $req->tax_exp, "tax_exp" => $req->tax_exp,
"kir_exp" => $req->kir_exp, "kir_exp" => $req->kir_exp,
"vendor_id" => $req->vendor_id, // "vendor_id" => $req->vendor_id,
]; ];
$rulesInput = [ $rulesInput = [
"vid" => "required|integer|not_in:0", "vid" => "required|integer|not_in:0",
@ -379,7 +381,7 @@ class VehiclesController extends Controller
"regis_year" => "required|digits:4", "regis_year" => "required|digits:4",
"tax_exp" => "required|date_format:Y-m-d", "tax_exp" => "required|date_format:Y-m-d",
"kir_exp" => "required|date_format:Y-m-d", "kir_exp" => "required|date_format:Y-m-d",
"vendor_id" => "nullable|integer|not_in:0", // "vendor_id" => "nullable|integer|not_in:0",
]; ];
if ($req->auth->role == Users::ROLE_VENDOR) { if ($req->auth->role == Users::ROLE_VENDOR) {
@ -471,6 +473,7 @@ class VehiclesController extends Controller
"is_track_holiday" => Vehicles::DEFAULT_TRACK_HOLIDAY, "is_track_holiday" => Vehicles::DEFAULT_TRACK_HOLIDAY,
"track_sch_d" => Vehicles::DEFAULT_TRACK_SCH_D, "track_sch_d" => Vehicles::DEFAULT_TRACK_SCH_D,
"track_sch_h" => Vehicles::DEFAULT_TRACK_SCH_H, "track_sch_h" => Vehicles::DEFAULT_TRACK_SCH_H,
"vendor_id" => 1,
"updt" => $now, "updt" => $now,
"updt_by" => $req->auth->uid, "updt_by" => $req->auth->uid,
]; ];
@ -481,7 +484,7 @@ class VehiclesController extends Controller
$updtVhc["vendor_id"] = $req->auth->uid; $updtVhc["vendor_id"] = $req->auth->uid;
// $updtVhc["simcard"] = (int) $uniqDeviceId[0]->simcard; // $updtVhc["simcard"] = (int) $uniqDeviceId[0]->simcard;
} else { } else {
$updtVhc["vendor_id"] = $req->vendor_id ?? 0; $updtVhc["vendor_id"] = $req->vendor_id ?? 1;
} }
Vehicles::updateVehicle($vid, $updtVhc); Vehicles::updateVehicle($vid, $updtVhc);

View File

@ -78,9 +78,7 @@ class ZoneController extends Controller
$zone[0]->boundary_bounds = json_decode($zone[0]->boundary_bounds); $zone[0]->boundary_bounds = json_decode($zone[0]->boundary_bounds);
} }
if ($zone[0]->boundary_latlngs) { if ($zone[0]->boundary_latlngs) {
$zone[0]->boundary_latlngs = json_decode( $zone[0]->boundary_latlngs = json_decode($zone[0]->boundary_latlngs);
$zone[0]->boundary_latlngs
);
} }
unset($zone[0]->boundary_points); unset($zone[0]->boundary_points);
@ -136,9 +134,7 @@ class ZoneController extends Controller
$zone[0]->boundary_bounds = json_decode($zone[0]->boundary_bounds); $zone[0]->boundary_bounds = json_decode($zone[0]->boundary_bounds);
} }
if ($zone[0]->boundary_latlngs) { if ($zone[0]->boundary_latlngs) {
$zone[0]->boundary_latlngs = json_decode( $zone[0]->boundary_latlngs = json_decode($zone[0]->boundary_latlngs);
$zone[0]->boundary_latlngs
);
} }
unset($zone[0]->boundary_points); unset($zone[0]->boundary_points);
@ -233,9 +229,7 @@ class ZoneController extends Controller
// validasi input // validasi input
$isValidInput = Validator::make($input, $rulesInput); $isValidInput = Validator::make($input, $rulesInput);
if (!$isValidInput->passes()) { if (!$isValidInput->passes()) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input($isValidInput->messages()->first());
$isValidInput->messages()->first()
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -307,9 +301,7 @@ class ZoneController extends Controller
// validasi input // validasi input
$isValidInput = Validator::make($input, $rulesInput); $isValidInput = Validator::make($input, $rulesInput);
if (!$isValidInput->passes()) { if (!$isValidInput->passes()) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input($isValidInput->messages()->first());
$isValidInput->messages()->first()
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -336,16 +328,13 @@ class ZoneController extends Controller
"boundary_type" => $req->boundary_type, "boundary_type" => $req->boundary_type,
"boundary_hex_color" => strtoupper($req->boundary_hex_color), "boundary_hex_color" => strtoupper($req->boundary_hex_color),
"boundary_latlngs" => json_encode($req->boundary_latlngs), "boundary_latlngs" => json_encode($req->boundary_latlngs),
"boundary_bounds" => $req->boundary_bounds "boundary_bounds" => $req->boundary_bounds ? json_encode($req->boundary_bounds) : null, // $req->boundary_bounds ?? null,
? json_encode($req->boundary_bounds)
: null, // $req->boundary_bounds ?? null,
"boundary_radius" => $req->boundary_radius ?? 0, "boundary_radius" => $req->boundary_radius ?? 0,
"boundary_diameter" => $req->boundary_diameter ?? 0, "boundary_diameter" => $req->boundary_diameter ?? 0,
"boundary_area" => $req->boundary_area ?? 0, "boundary_area" => $req->boundary_area ?? 0,
"boundary_ha" => $req->boundary_ha ?? 0, "boundary_ha" => $req->boundary_ha ?? 0,
"status" => $req->status, "status" => $req->status,
"client_group_id" => "client_group_id" => $req->zone_client ?? ($user[0]->client_group_id ?? null),
$req->zone_client ?? ($user[0]->client_group_id ?? null),
"crt" => $now, "crt" => $now,
"crt_by" => $req->auth->uid, "crt_by" => $req->auth->uid,
"updt" => $now, "updt" => $now,
@ -356,14 +345,9 @@ class ZoneController extends Controller
$insZone["boundary_points"] = "ST_GeomFromText('MULTIPOINT("; $insZone["boundary_points"] = "ST_GeomFromText('MULTIPOINT(";
foreach ($req->boundary_latlngs as $key => $val) { foreach ($req->boundary_latlngs as $key => $val) {
$insZone["boundary_points"] .= $insZone["boundary_points"] .= $val["lng"] . " " . $val["lat"] . ", ";
$val["lng"] . " " . $val["lat"] . ", ";
} }
$insZone["boundary_points"] = substr( $insZone["boundary_points"] = substr($insZone["boundary_points"], 0, -2); // remove 2 last character
$insZone["boundary_points"],
0,
-2
); // remove 2 last character
$insZone["boundary_points"] .= ")')"; $insZone["boundary_points"] .= ")')";
$insZone["boundary_points"] = DB::raw($insZone["boundary_points"]); $insZone["boundary_points"] = DB::raw($insZone["boundary_points"]);
@ -433,9 +417,7 @@ class ZoneController extends Controller
// validasi input // validasi input
$isValidInput = Validator::make($input, $rulesInput); $isValidInput = Validator::make($input, $rulesInput);
if (!$isValidInput->passes()) { if (!$isValidInput->passes()) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input($isValidInput->messages()->first());
$isValidInput->messages()->first()
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -454,9 +436,7 @@ class ZoneController extends Controller
} }
} }
if ($notSameUser) { if ($notSameUser) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request("zone name has been used");
"zone name has been used"
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
} }
@ -478,16 +458,13 @@ class ZoneController extends Controller
"boundary_type" => $req->boundary_type, "boundary_type" => $req->boundary_type,
"boundary_hex_color" => strtoupper($req->boundary_hex_color), "boundary_hex_color" => strtoupper($req->boundary_hex_color),
"boundary_latlngs" => json_encode($req->boundary_latlngs), "boundary_latlngs" => json_encode($req->boundary_latlngs),
"boundary_bounds" => $req->boundary_bounds "boundary_bounds" => $req->boundary_bounds ? json_encode($req->boundary_bounds) : null, // $req->boundary_bounds ?? null,
? json_encode($req->boundary_bounds)
: null, // $req->boundary_bounds ?? null,
"boundary_radius" => $req->boundary_radius ?? 0, "boundary_radius" => $req->boundary_radius ?? 0,
"boundary_diameter" => $req->boundary_diameter ?? 0, "boundary_diameter" => $req->boundary_diameter ?? 0,
"boundary_area" => $req->boundary_area ?? 0, "boundary_area" => $req->boundary_area ?? 0,
"boundary_ha" => $req->boundary_ha ?? 0, "boundary_ha" => $req->boundary_ha ?? 0,
"status" => $req->status, "status" => $req->status,
"client_group_id" => "client_group_id" => $req->zone_client ?? ($user[0]->client_group_id ?? null),
$req->zone_client ?? ($user[0]->client_group_id ?? null),
"updt" => $now, "updt" => $now,
"updt_by" => $req->auth->uid, "updt_by" => $req->auth->uid,
]; ];
@ -496,18 +473,11 @@ class ZoneController extends Controller
$updtZone["boundary_points"] = "ST_GeomFromText('MULTIPOINT("; $updtZone["boundary_points"] = "ST_GeomFromText('MULTIPOINT(";
foreach ($req->boundary_latlngs as $key => $val) { foreach ($req->boundary_latlngs as $key => $val) {
$updtZone["boundary_points"] .= $updtZone["boundary_points"] .= $val["lng"] . " " . $val["lat"] . ", ";
$val["lng"] . " " . $val["lat"] . ", ";
} }
$updtZone["boundary_points"] = substr( $updtZone["boundary_points"] = substr($updtZone["boundary_points"], 0, -2); // remove 2 last character
$updtZone["boundary_points"],
0,
-2
); // remove 2 last character
$updtZone["boundary_points"] .= ")')"; $updtZone["boundary_points"] .= ")')";
$updtZone["boundary_points"] = DB::raw( $updtZone["boundary_points"] = DB::raw($updtZone["boundary_points"]);
$updtZone["boundary_points"]
);
Zone::updateZone($zid, $updtZone); Zone::updateZone($zid, $updtZone);
@ -537,9 +507,7 @@ class ZoneController extends Controller
// validasi input // validasi input
$isValidInput = Validator::make($input, $rulesInput); $isValidInput = Validator::make($input, $rulesInput);
if (!$isValidInput->passes()) { if (!$isValidInput->passes()) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input($isValidInput->messages()->first());
$isValidInput->messages()->first()
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -585,9 +553,7 @@ class ZoneController extends Controller
// validasi input // validasi input
$isValidInput = Validator::make($input, $rulesInput); $isValidInput = Validator::make($input, $rulesInput);
if (!$isValidInput->passes()) { if (!$isValidInput->passes()) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input($isValidInput->messages()->first());
$isValidInput->messages()->first()
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -599,15 +565,14 @@ class ZoneController extends Controller
} }
} }
// $zones = Zone::getActiveZones($req->cptid, Zone::ZONE_TYPE_WAREHOUSE, $req->workflow_type);
$zones = Zone::getActiveZones( $zones = Zone::getActiveZones(
$req->cptid, $req->cptid,
Zone::ZONE_TYPE_WAREHOUSE, [Zone::ZONE_TYPE_WAREHOUSE, Zone::ZONE_TYPE_AREA],
$req->workflow_type $req->workflow_type
); );
if (count($zones) < 1) { if (count($zones) < 1) {
$apiResp = Responses::not_found( $apiResp = Responses::not_found("no available zones for client " . $client[0]->c_name);
"no available zones for client " . $client[0]->c_name
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -643,9 +608,7 @@ class ZoneController extends Controller
// validasi input // validasi input
$isValidInput = Validator::make($input, $rulesInput); $isValidInput = Validator::make($input, $rulesInput);
if (!$isValidInput->passes()) { if (!$isValidInput->passes()) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input($isValidInput->messages()->first());
$isValidInput->messages()->first()
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -727,9 +690,7 @@ class ZoneController extends Controller
// validasi input // validasi input
$isValidInput = Validator::make($input, $rulesInput); $isValidInput = Validator::make($input, $rulesInput);
if (!$isValidInput->passes()) { if (!$isValidInput->passes()) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input($isValidInput->messages()->first());
$isValidInput->messages()->first()
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -748,9 +709,7 @@ class ZoneController extends Controller
} }
} }
if ($notSameUser) { if ($notSameUser) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request("zone name has been used");
"zone name has been used"
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
} }
@ -791,16 +750,13 @@ class ZoneController extends Controller
"boundary_type" => $req->boundary_type, "boundary_type" => $req->boundary_type,
"boundary_hex_color" => strtoupper($req->boundary_hex_color), "boundary_hex_color" => strtoupper($req->boundary_hex_color),
"boundary_latlngs" => json_encode($req->boundary_latlngs), "boundary_latlngs" => json_encode($req->boundary_latlngs),
"boundary_bounds" => $req->boundary_bounds "boundary_bounds" => $req->boundary_bounds ? json_encode($req->boundary_bounds) : null, // $req->boundary_bounds ?? null,
? json_encode($req->boundary_bounds)
: null, // $req->boundary_bounds ?? null,
"boundary_radius" => $req->boundary_radius ?? 0, "boundary_radius" => $req->boundary_radius ?? 0,
"boundary_diameter" => $req->boundary_diameter ?? 0, "boundary_diameter" => $req->boundary_diameter ?? 0,
"boundary_area" => $req->boundary_area ?? 0, "boundary_area" => $req->boundary_area ?? 0,
"boundary_ha" => $req->boundary_ha ?? 0, "boundary_ha" => $req->boundary_ha ?? 0,
"status" => $req->status, "status" => $req->status,
"client_group_id" => "client_group_id" => $req->zone_client ?? ($user[0]->client_group_id ?? null),
$req->zone_client ?? ($user[0]->client_group_id ?? null),
"updt" => $now, "updt" => $now,
"updt_by" => $req->auth->uid, "updt_by" => $req->auth->uid,
]; ];
@ -809,18 +765,11 @@ class ZoneController extends Controller
$updtZone["boundary_points"] = "ST_GeomFromText('MULTIPOINT("; $updtZone["boundary_points"] = "ST_GeomFromText('MULTIPOINT(";
foreach ($req->boundary_latlngs as $key => $val) { foreach ($req->boundary_latlngs as $key => $val) {
$updtZone["boundary_points"] .= $updtZone["boundary_points"] .= $val["lng"] . " " . $val["lat"] . ", ";
$val["lng"] . " " . $val["lat"] . ", ";
} }
$updtZone["boundary_points"] = substr( $updtZone["boundary_points"] = substr($updtZone["boundary_points"], 0, -2); // remove 2 last character
$updtZone["boundary_points"],
0,
-2
); // remove 2 last character
$updtZone["boundary_points"] .= ")')"; $updtZone["boundary_points"] .= ")')";
$updtZone["boundary_points"] = DB::raw( $updtZone["boundary_points"] = DB::raw($updtZone["boundary_points"]);
$updtZone["boundary_points"]
);
Zone::updateZone($req->zid, $updtZone); Zone::updateZone($req->zid, $updtZone);
@ -830,25 +779,16 @@ class ZoneController extends Controller
$drops = Zone::getZoneById($req->zid, ["region_name" => 1]); $drops = Zone::getZoneById($req->zid, ["region_name" => 1]);
if (count($drops) < 1) { if (count($drops) < 1) {
$apiResp = Responses::not_found( $apiResp = Responses::not_found("Lokasi pengantaran tidak ditemukan");
"Lokasi pengantaran tidak ditemukan"
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
if (empty($drops[0]->boundary_points)) { if (empty($drops[0]->boundary_points)) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request("Lokasi pengantaran tidak valid");
"Lokasi pengantaran tidak valid"
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
foreach ($drops as $iDrop => $drop) { foreach ($drops as $iDrop => $drop) {
if ( if ($drop->prid == 0 || $drop->ktid == 0 || $drop->kcid == 0 || $drop->klid == 0) {
$drop->prid == 0 ||
$drop->ktid == 0 ||
$drop->kcid == 0 ||
$drop->klid == 0
) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request(
"Zonasi wilayah(provinsi, kecamatan, ...) lokasi pengantaran " . "Zonasi wilayah(provinsi, kecamatan, ...) lokasi pengantaran " .
$drop->name . $drop->name .
@ -858,8 +798,7 @@ class ZoneController extends Controller
} }
$drops[$iDrop]->inpt_pic_name = $order->drop_pic_name; $drops[$iDrop]->inpt_pic_name = $order->drop_pic_name;
$drops[$iDrop]->inpt_pic_phone_code = 62; $drops[$iDrop]->inpt_pic_phone_code = 62;
$drops[$iDrop]->inpt_pic_phone_val = $drops[$iDrop]->inpt_pic_phone_val = (int) $order->drop_pic_phone_val;
(int) $order->drop_pic_phone_val;
$drops[$iDrop]->inpt_pic_mail = null; $drops[$iDrop]->inpt_pic_mail = null;
$updtDrop = [ $updtDrop = [
@ -973,9 +912,7 @@ class ZoneController extends Controller
// validasi input // validasi input
$isValidInput = Validator::make($input, $rulesInput); $isValidInput = Validator::make($input, $rulesInput);
if (!$isValidInput->passes()) { if (!$isValidInput->passes()) {
$apiResp = Responses::bad_input( $apiResp = Responses::bad_input($isValidInput->messages()->first());
$isValidInput->messages()->first()
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
@ -1014,25 +951,16 @@ class ZoneController extends Controller
$drops = Zone::getZoneById($req->drop_zid, ["region_name" => 1]); $drops = Zone::getZoneById($req->drop_zid, ["region_name" => 1]);
if (count($drops) < 1) { if (count($drops) < 1) {
$apiResp = Responses::not_found( $apiResp = Responses::not_found("Lokasi pengantaran tidak ditemukan");
"Lokasi pengantaran tidak ditemukan"
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
if (empty($drops[0]->boundary_points)) { if (empty($drops[0]->boundary_points)) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request("Lokasi pengantaran tidak valid");
"Lokasi pengantaran tidak valid"
);
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
foreach ($drops as $iDrop => $drop) { foreach ($drops as $iDrop => $drop) {
if ( if ($drop->prid == 0 || $drop->ktid == 0 || $drop->kcid == 0 || $drop->klid == 0) {
$drop->prid == 0 ||
$drop->ktid == 0 ||
$drop->kcid == 0 ||
$drop->klid == 0
) {
$apiResp = Responses::bad_request( $apiResp = Responses::bad_request(
"Zonasi wilayah(provinsi, kecamatan, ...) lokasi pengantaran " . "Zonasi wilayah(provinsi, kecamatan, ...) lokasi pengantaran " .
$drop->name . $drop->name .
@ -1042,8 +970,7 @@ class ZoneController extends Controller
} }
$drops[$iDrop]->inpt_pic_name = $order->drop_pic_name; $drops[$iDrop]->inpt_pic_name = $order->drop_pic_name;
$drops[$iDrop]->inpt_pic_phone_code = 62; $drops[$iDrop]->inpt_pic_phone_code = 62;
$drops[$iDrop]->inpt_pic_phone_val = $drops[$iDrop]->inpt_pic_phone_val = (int) $order->drop_pic_phone_val;
(int) $order->drop_pic_phone_val;
$drops[$iDrop]->inpt_pic_mail = null; $drops[$iDrop]->inpt_pic_mail = null;
$updtDrop = [ $updtDrop = [

View File

@ -24,214 +24,214 @@ class AuthUser
if ($request->auth->role == Users::ROLE_ADMIN) { if ($request->auth->role == Users::ROLE_ADMIN) {
// views // views
if ($request->is("gps/home/*")) { if ($request->is("home/*")) {
} elseif ($request->is("gps/home")) { } elseif ($request->is("home")) {
} elseif ($request->is("gps/dashboard/*")) { } elseif ($request->is("dashboard/*")) {
} elseif ($request->is("gps/dashboard")) { } elseif ($request->is("dashboard")) {
} elseif ($request->is("gps/drivers/*")) { } elseif ($request->is("drivers/*")) {
} elseif ($request->is("gps/drivers")) { } elseif ($request->is("drivers")) {
} elseif ($request->is("gps/transactions/*")) { } elseif ($request->is("transactions/*")) {
} elseif ($request->is("gps/transactions")) { } elseif ($request->is("transactions")) {
} elseif ($request->is("gps/vehicles/*")) { } elseif ($request->is("vehicles/*")) {
} elseif ($request->is("gps/vehicles")) { } elseif ($request->is("vehicles")) {
} elseif ($request->is("gps/clients/*")) { } elseif ($request->is("clients/*")) {
} elseif ($request->is("gps/clients")) { } elseif ($request->is("clients")) {
} elseif ($request->is("gps/zone/*")) { } elseif ($request->is("zone/*")) {
} elseif ($request->is("gps/zone")) { } elseif ($request->is("zone")) {
} elseif ($request->is("gps/users/*")) { } elseif ($request->is("users/*")) {
} elseif ($request->is("gps/users")) { } elseif ($request->is("users")) {
} elseif ($request->is("gps/profile/*")) { } elseif ($request->is("profile/*")) {
} elseif ($request->is("gps/profile")) { } elseif ($request->is("profile")) {
} elseif ($request->is("gps/config/*")) { } elseif ($request->is("config/*")) {
} elseif ($request->is("gps/config")) { } elseif ($request->is("config")) {
} elseif ($request->is("gps/pocket/*")) { } elseif ($request->is("pocket/*")) {
} elseif ($request->is("gps/pocket")) { } elseif ($request->is("pocket")) {
} elseif ($request->is("gps/lgb_types/*")) { } elseif ($request->is("lgb_types/*")) {
} elseif ($request->is("gps/lgb_types")) { } elseif ($request->is("lgb_types")) {
} elseif ($request->is("gps/lgb_masters/*")) { } elseif ($request->is("lgb_masters/*")) {
} elseif ($request->is("gps/lgb_masters")) { } elseif ($request->is("lgb_masters")) {
} elseif ($request->is("gps/insurances/*")) { } elseif ($request->is("insurances/*")) {
} elseif ($request->is("gps/static_insurances/*")) { } elseif ($request->is("static_insurances/*")) {
} }
// api // api
elseif ($request->is("gps/api/conf/*")) { elseif ($request->is("api/conf/*")) {
} elseif ($request->is("gps/api/conf")) { } elseif ($request->is("api/conf")) {
} elseif ($request->is("gps/api/osm/*")) { } elseif ($request->is("api/osm/*")) {
} elseif ($request->is("gps/api/osm")) { } elseif ($request->is("api/osm")) {
} elseif ($request->is("gps/api/region/*")) { } elseif ($request->is("api/region/*")) {
} elseif ($request->is("gps/api/region")) { } elseif ($request->is("api/region")) {
} elseif ($request->is("gps/api/zones/*")) { } elseif ($request->is("api/zones/*")) {
} elseif ($request->is("gps/api/zones")) { } elseif ($request->is("api/zones")) {
} elseif ($request->is("gps/api/vehicles/*")) { } elseif ($request->is("api/vehicles/*")) {
} elseif ($request->is("gps/api/vehicles")) { } elseif ($request->is("api/vehicles")) {
} elseif ($request->is("gps/api/drivers/*")) { } elseif ($request->is("api/drivers/*")) {
} elseif ($request->is("gps/api/drivers")) { } elseif ($request->is("api/drivers")) {
} elseif ($request->is("gps/api/users/*")) { } elseif ($request->is("api/users/*")) {
} elseif ($request->is("gps/api/users")) { } elseif ($request->is("api/users")) {
} elseif ($request->is("gps/api/clients/*")) { } elseif ($request->is("api/clients/*")) {
} elseif ($request->is("gps/api/clients")) { } elseif ($request->is("api/clients")) {
} elseif ($request->is("gps/api/tracks/*")) { } elseif ($request->is("api/tracks/*")) {
} elseif ($request->is("gps/api/tracks")) { } elseif ($request->is("api/tracks")) {
} elseif ($request->is("gps/api/transactions/*")) { } elseif ($request->is("api/transactions/*")) {
} elseif ($request->is("gps/api/transactions")) { } elseif ($request->is("api/transactions")) {
} elseif ($request->is("gps/api/transactions_spc/*")) { } elseif ($request->is("api/transactions_spc/*")) {
} elseif ($request->is("gps/api/transactions_spc")) { } elseif ($request->is("api/transactions_spc")) {
} elseif ($request->is("gps/api/insurances/*")) { } elseif ($request->is("api/insurances/*")) {
} elseif ($request->is("gps/api/insurances")) { } elseif ($request->is("api/insurances")) {
} elseif ($request->is("gps/api/devices/*")) { } elseif ($request->is("api/devices/*")) {
} elseif ($request->is("gps/api/devices")) { } elseif ($request->is("api/devices")) {
} elseif ($request->is("gps/api/user/clients/*")) { } elseif ($request->is("api/user/clients/*")) {
} elseif ($request->is("gps/api/user/clients")) { } elseif ($request->is("api/user/clients")) {
} elseif ($request->is("gps/api/a_items/*")) { } elseif ($request->is("api/a_items/*")) {
} elseif ($request->is("gps/api/a_items")) { } elseif ($request->is("api/a_items")) {
} elseif ($request->is("gps/api/admin/*")) { } elseif ($request->is("api/admin/*")) {
} elseif ($request->is("gps/api/admin")) { } elseif ($request->is("api/admin")) {
} elseif ($request->is("gps/api/static_insurances/*")) { } elseif ($request->is("api/static_insurances/*")) {
} elseif ($request->is("gps/api/static_insurances")) { } elseif ($request->is("api/static_insurances")) {
} elseif ($request->is("gps/api/menu_permissions/*")) { } elseif ($request->is("api/menu_permissions/*")) {
} elseif ($request->is("gps/api/menu_permissions")) { } elseif ($request->is("api/menu_permissions")) {
} elseif ($request->is("gps/api/pocket/*")) { } elseif ($request->is("api/pocket/*")) {
} elseif ($request->is("gps/api/pocket")) { } elseif ($request->is("api/pocket")) {
} elseif ($request->is("gps/api/lgb_types/*")) { } elseif ($request->is("api/lgb_types/*")) {
} elseif ($request->is("gps/api/lgb_types")) { } elseif ($request->is("api/lgb_types")) {
} elseif ($request->is("gps/api/lgb_keys/*")) { } elseif ($request->is("api/lgb_keys/*")) {
} elseif ($request->is("gps/api/lgb_keys")) { } elseif ($request->is("api/lgb_keys")) {
} elseif ($request->is("gps/api/dtypes/*")) { } elseif ($request->is("api/dtypes/*")) {
} elseif ($request->is("gps/api/dtypes")) { } elseif ($request->is("api/dtypes")) {
} elseif ($request->is("gps/api/dana/*")) { } elseif ($request->is("api/dana/*")) {
} elseif ($request->is("gps/api/dana")) { } elseif ($request->is("api/dana")) {
} elseif ($request->is("gps/api/universal/*")) { } elseif ($request->is("api/universal/*")) {
} elseif ($request->is("gps/api/universal")) { } elseif ($request->is("api/universal")) {
} else { } else {
return abort(403, "Unauthorized action."); return abort(403, "Unauthorized action.");
} }
} elseif ($request->auth->role == Users::ROLE_VENDOR) { } elseif ($request->auth->role == Users::ROLE_VENDOR) {
// views // views
if ($request->is("gps/home/*")) { if ($request->is("home/*")) {
} elseif ($request->is("gps/home")) { } elseif ($request->is("home")) {
} elseif ($request->is("gps/dashboard/*")) { } elseif ($request->is("dashboard/*")) {
} elseif ($request->is("gps/dashboard")) { } elseif ($request->is("dashboard")) {
} elseif ($request->is("gps/checklist/*")) { } elseif ($request->is("checklist/*")) {
} elseif ($request->is("gps/checklist")) { } elseif ($request->is("checklist")) {
} elseif ($request->is("gps/zone/*")) { } elseif ($request->is("zone/*")) {
} elseif ($request->is("gps/zone")) { } elseif ($request->is("zone")) {
} elseif ($request->is("gps/drivers/*")) { } elseif ($request->is("drivers/*")) {
} elseif ($request->is("gps/drivers")) { } elseif ($request->is("drivers")) {
} elseif ($request->is("gps/vehicles/*")) { } elseif ($request->is("vehicles/*")) {
} elseif ($request->is("gps/vehicles")) { } elseif ($request->is("vehicles")) {
} elseif ($request->is("gps/profile/*")) { } elseif ($request->is("profile/*")) {
} elseif ($request->is("gps/transactions/*")) { } elseif ($request->is("transactions/*")) {
} elseif ($request->is("gps/transactions")) { } elseif ($request->is("transactions")) {
} elseif ($request->is("gps/profile")) { } elseif ($request->is("profile")) {
} elseif ($request->is("gps/user/vendor/*")) { } elseif ($request->is("user/vendor/*")) {
} elseif ($request->is("gps/user/vendor")) { } elseif ($request->is("user/vendor")) {
} }
// api // api
elseif ($request->is("gps/api/conf")) { elseif ($request->is("api/conf")) {
} elseif ($request->is("gps/api/osm/*")) { } elseif ($request->is("api/osm/*")) {
} elseif ($request->is("gps/api/osm")) { } elseif ($request->is("api/osm")) {
} elseif ($request->is("gps/api/region/*")) { } elseif ($request->is("api/region/*")) {
} elseif ($request->is("gps/api/region")) { } elseif ($request->is("api/region")) {
} elseif ($request->is("gps/api/tracks/*")) { } elseif ($request->is("api/tracks/*")) {
} elseif ($request->is("gps/api/tracks")) { } elseif ($request->is("api/tracks")) {
} elseif ($request->is("gps/api/vehicles/*")) { } elseif ($request->is("api/vehicles/*")) {
} elseif ($request->is("gps/api/vehicles")) { } elseif ($request->is("api/vehicles")) {
} elseif ($request->is("gps/api/drivers/*")) { } elseif ($request->is("api/drivers/*")) {
} elseif ($request->is("gps/api/drivers")) { } elseif ($request->is("api/drivers")) {
} elseif ($request->is("gps/api/user/vendor/*")) { } elseif ($request->is("api/user/vendor/*")) {
} elseif ($request->is("gps/api/user/vendor")) { } elseif ($request->is("api/user/vendor")) {
} elseif ($request->is("gps/api/transactions_spc/*")) { } elseif ($request->is("api/transactions_spc/*")) {
} elseif ($request->is("gps/api/transactions_spc")) { } elseif ($request->is("api/transactions_spc")) {
} elseif ($request->is("gps/api/zones/*")) { } elseif ($request->is("api/zones/*")) {
} elseif ($request->is("gps/api/zones")) { } elseif ($request->is("api/zones")) {
} elseif ($request->is("gps/api/users/*")) { } elseif ($request->is("api/users/*")) {
} elseif ($request->is("gps/api/users")) { } elseif ($request->is("api/users")) {
} elseif ($request->is("gps/api/universal/*")) { } elseif ($request->is("api/universal/*")) {
} elseif ($request->is("gps/api/universal")) { } elseif ($request->is("api/universal")) {
} else { } else {
return abort(403, "Unauthorized action."); return abort(403, "Unauthorized action.");
} }
} elseif ($request->auth->role == Users::ROLE_CLIENT_ADMIN) { } elseif ($request->auth->role == Users::ROLE_CLIENT_ADMIN) {
// views // views
if ($request->is("gps/home/*")) { if ($request->is("home/*")) {
} elseif ($request->is("gps/home")) { } elseif ($request->is("home")) {
} elseif ($request->is("gps/dashboard/*")) { } elseif ($request->is("dashboard/*")) {
} elseif ($request->is("gps/dashboard")) { } elseif ($request->is("dashboard")) {
} elseif ($request->is("gps/zone/*")) { } elseif ($request->is("zone/*")) {
} elseif ($request->is("gps/zone")) { } elseif ($request->is("zone")) {
} elseif ($request->is("gps/profile/*")) { } elseif ($request->is("profile/*")) {
} elseif ($request->is("gps/profile")) { } elseif ($request->is("profile")) {
} elseif ($request->is("gps/user/clients/*")) { } elseif ($request->is("user/clients/*")) {
} elseif ($request->is("gps/user/clients")) { } elseif ($request->is("user/clients")) {
} }
// api // api
elseif ($request->is("gps/api/conf")) { elseif ($request->is("api/conf")) {
} elseif ($request->is("gps/api/osm/*")) { } elseif ($request->is("api/osm/*")) {
} elseif ($request->is("gps/api/osm")) { } elseif ($request->is("api/osm")) {
} elseif ($request->is("gps/api/region/*")) { } elseif ($request->is("api/region/*")) {
} elseif ($request->is("gps/api/region")) { } elseif ($request->is("api/region")) {
} elseif ($request->is("gps/api/zones/*")) { } elseif ($request->is("api/zones/*")) {
} elseif ($request->is("gps/api/zones")) { } elseif ($request->is("api/zones")) {
} elseif ($request->is("gps/api/tracks/*")) { } elseif ($request->is("api/tracks/*")) {
} elseif ($request->is("gps/api/tracks")) { } elseif ($request->is("api/tracks")) {
} elseif ($request->is("gps/api/user/clients/*")) { } elseif ($request->is("api/user/clients/*")) {
} elseif ($request->is("gps/api/user/clients")) { } elseif ($request->is("api/user/clients")) {
} elseif ($request->is("gps/api/users/*")) { } elseif ($request->is("api/users/*")) {
} elseif ($request->is("gps/api/users")) { } elseif ($request->is("api/users")) {
} elseif ($request->is("gps/api/universal/*")) { } elseif ($request->is("api/universal/*")) {
} elseif ($request->is("gps/api/universal")) { } elseif ($request->is("api/universal")) {
} else { } else {
return abort(403, "Unauthorized action."); return abort(403, "Unauthorized action.");
} }
} elseif ($request->auth->role == Users::ROLE_CHECKER) { } elseif ($request->auth->role == Users::ROLE_CHECKER) {
// views // views
if ($request->is("gps/user/checker/*")) { if ($request->is("user/checker/*")) {
} elseif ($request->is("gps/user/checker")) { } elseif ($request->is("user/checker")) {
} elseif ($request->is("gps/profile/*")) { } elseif ($request->is("profile/*")) {
} elseif ($request->is("gps/profile")) { } elseif ($request->is("profile")) {
} }
// api // api
elseif ($request->is("gps/api/user/checker/*")) { elseif ($request->is("api/user/checker/*")) {
} elseif ($request->is("gps/api/user/checker")) { } elseif ($request->is("api/user/checker")) {
} elseif ($request->is("gps/api/users/*")) { } elseif ($request->is("api/users/*")) {
} elseif ($request->is("gps/api/users")) { } elseif ($request->is("api/users")) {
} elseif ($request->is("gps/api/universal/*")) { } elseif ($request->is("api/universal/*")) {
} elseif ($request->is("gps/api/universal")) { } elseif ($request->is("api/universal")) {
} else { } else {
return abort(403, "Unauthorized action."); return abort(403, "Unauthorized action.");
} }
} elseif ($request->auth->role == Users::ROLE_FINANCE) { } elseif ($request->auth->role == Users::ROLE_FINANCE) {
// views // views
if ($request->is("gps/finance/*")) { if ($request->is("finance/*")) {
} elseif ($request->is("gps/profile/*")) { } elseif ($request->is("profile/*")) {
} elseif ($request->is("gps/profile")) { } elseif ($request->is("profile")) {
} }
// api // api
elseif ($request->is("gps/api/finance/*")) { elseif ($request->is("api/finance/*")) {
} elseif ($request->is("gps/api/finance")) { } elseif ($request->is("api/finance")) {
} elseif ($request->is("gps/api/a_items/*")) { } elseif ($request->is("api/a_items/*")) {
} elseif ($request->is("gps/api/a_items")) { } elseif ($request->is("api/a_items")) {
} elseif ($request->is("gps/api/users/*")) { } elseif ($request->is("api/users/*")) {
} elseif ($request->is("gps/api/users")) { } elseif ($request->is("api/users")) {
} elseif ($request->is("gps/api/dana/*")) { } elseif ($request->is("api/dana/*")) {
} elseif ($request->is("gps/api/dana")) { } elseif ($request->is("api/dana")) {
} elseif ($request->is("gps/api/universal/*")) { } elseif ($request->is("api/universal/*")) {
} elseif ($request->is("gps/api/universal")) { } elseif ($request->is("api/universal")) {
} else { } else {
return abort(403, "Unauthorized action."); return abort(403, "Unauthorized action.");
} }
} elseif ($request->auth->role == Users::ROLE_SPECIAL_TRACKING) { } elseif ($request->auth->role == Users::ROLE_SPECIAL_TRACKING) {
// views // views
if ($request->is("gps/dashboard/*")) { if ($request->is("dashboard/*")) {
} elseif ($request->is("gps/dashboard")) { } elseif ($request->is("dashboard")) {
} }
// api // api
elseif ($request->is("gps/api/tracks/*")) { elseif ($request->is("api/tracks/*")) {
} elseif ($request->is("gps/api/tracks")) { } elseif ($request->is("api/tracks")) {
} elseif ($request->is("gps/api/users/*")) { } elseif ($request->is("api/users/*")) {
} elseif ($request->is("gps/api/users")) { } elseif ($request->is("api/users")) {
} elseif ($request->is("gps/api/universal/*")) { } elseif ($request->is("api/universal/*")) {
} elseif ($request->is("gps/api/universal")) { } elseif ($request->is("api/universal")) {
} else { } else {
return abort(403, "Unauthorized action."); return abort(403, "Unauthorized action.");
} }

View File

@ -68,19 +68,14 @@ class Drivers extends Model
$params = []; $params = [];
$where_vendor = ""; $where_vendor = "";
$join_vendor = ""; $join_vendor = "";
if ($auth->role != Users::ROLE_ADMIN) { // if ($auth->role != Users::ROLE_ADMIN) {
$where_vendor .= " AND d.vendor_id = " . $auth->uid; // $where_vendor .= " AND d.vendor_id = " . $auth->uid;
} // }
if (isset($filter["status"])) { if (isset($filter["status"])) {
$where_vendor .= " AND d.status = ?"; $where_vendor .= " AND d.status = ?";
array_push($params, $filter["status"]); array_push($params, $filter["status"]);
} }
return DB::select( return DB::select("SELECT * FROM t_drivers as d WHERE dlt is null " . $where_vendor . ";", $params);
"SELECT * FROM t_drivers as d WHERE dlt is null " .
$where_vendor .
";",
$params
);
} }
public static function showDriverById($did) public static function showDriverById($did)
@ -99,34 +94,22 @@ class Drivers extends Model
public static function getDriverById($did) public static function getDriverById($did)
{ {
return DB::select( return DB::select("SELECT * FROM t_drivers WHERE dlt is null AND id = ? LIMIT 1;", [$did]);
"SELECT * FROM t_drivers WHERE dlt is null AND id = ? LIMIT 1;",
[$did]
);
} }
public static function getDriverByEmail($email) public static function getDriverByEmail($email)
{ {
return DB::select( return DB::select("SELECT * FROM t_drivers WHERE dlt is null AND email = ? LIMIT 2;", [$email]);
"SELECT * FROM t_drivers WHERE dlt is null AND email = ? LIMIT 2;",
[$email]
);
} }
public static function getDriverByPhone($phone) public static function getDriverByPhone($phone)
{ {
return DB::select( return DB::select("SELECT * FROM t_drivers WHERE dlt is null AND phone = ? LIMIT 2;", [$phone]);
"SELECT * FROM t_drivers WHERE dlt is null AND phone = ? LIMIT 2;",
[$phone]
);
} }
public static function getDriverByNik($nik) public static function getDriverByNik($nik)
{ {
return DB::select( return DB::select("SELECT * FROM t_drivers WHERE dlt is null AND nik = ? LIMIT 2;", [$nik]);
"SELECT * FROM t_drivers WHERE dlt is null AND nik = ? LIMIT 2;",
[$nik]
);
} }
public static function getDriverByIdAllData($did) public static function getDriverByIdAllData($did)

View File

@ -20,12 +20,16 @@ class Dummy extends Model
public static function updateDummyTrack($data) public static function updateDummyTrack($data)
{ {
return DB::table("t_dummy_tracks")->where("id", $data['id'])->update($data); return DB::table("t_dummy_tracks")
->where("id", $data["id"])
->update($data);
} }
public static function deleteDummyTrack($data) public static function deleteDummyTrack($data)
{ {
return DB::table("t_dummy_tracks")->where("id", $data['id'])->delete(); return DB::table("t_dummy_tracks")
->where("id", $data["id"])
->delete();
} }
// ------------------------------------------------------------------------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
@ -41,7 +45,7 @@ class Dummy extends Model
* miles: 3958.756 || 3959 * miles: 3958.756 || 3959
* km: 6371 * km: 6371
* meters: 6371000 * meters: 6371000
* more accurate using km/meters than miles i think ~ rafifmulia * more accurate using km/meters than miles i think ~
*/ */
public static function nearestHubInCircle($lat, $lng) public static function nearestHubInCircle($lat, $lng)
{ {
@ -51,9 +55,9 @@ class Dummy extends Model
HAVING distance <= 800 HAVING distance <= 800
ORDER BY distance;"; ORDER BY distance;";
$params = [ $params = [
'lat1' => $lat, "lat1" => $lat,
'lat2' => $lat, "lat2" => $lat,
'lng' => $lng, "lng" => $lng,
]; ];
return DB::select($query, $params); return DB::select($query, $params);
} }

View File

@ -65,6 +65,7 @@ class Orders extends Model
,ord_pck.pck_name,ord_pck.stts_pck,ord_pck.pck_addr ,ord_pck.pck_name,ord_pck.stts_pck,ord_pck.pck_addr
,ord_drop.drop_name,ord_drop.stts_drop,ord_drop.drop_addr ,ord_drop.drop_name,ord_drop.stts_drop,ord_drop.drop_addr
,ord_c.c_name ,ord_c.c_name
,ord_c.c_pt_name
,ord_vdr.vdr_name ,ord_vdr.vdr_name
,ord_drv.drv_name ,ord_drv.drv_name
,ord_vhc.vhc_id,ord_vhc.vhc_name,ord_vhc.vhc_nopol1,ord_vhc.vhc_nopol2,ord_vhc.vhc_nopol3 ,ord_vhc.vhc_id,ord_vhc.vhc_name,ord_vhc.vhc_nopol1,ord_vhc.vhc_nopol2,ord_vhc.vhc_nopol3
@ -140,7 +141,7 @@ class Orders extends Model
Orders::STTS_GO, Orders::STTS_GO,
Orders::STTS_PCK, Orders::STTS_PCK,
Orders::STTS_ARV, Orders::STTS_ARV,
Orders::STTS_DROP, Orders::STTS_DROP
); );
} }
@ -155,7 +156,7 @@ class Orders extends Model
Orders::STTS_DROP, Orders::STTS_DROP,
Orders::STTS_CLIENT_PAY, Orders::STTS_CLIENT_PAY,
Orders::STTS_VENDOR_PAYED, Orders::STTS_VENDOR_PAYED,
Orders::STTS_CLOSE, Orders::STTS_CLOSE
); );
} }
@ -168,7 +169,7 @@ class Orders extends Model
Orders::STTS_GO, Orders::STTS_GO,
Orders::STTS_PCK, Orders::STTS_PCK,
Orders::STTS_ARV, Orders::STTS_ARV,
Orders::STTS_DROP, Orders::STTS_DROP
); );
} }
if (isset($filter["is_accident"])) { if (isset($filter["is_accident"])) {
@ -239,7 +240,7 @@ class Orders extends Model
$order_by . $order_by .
" "
;", ;",
$params, $params
); );
} }
@ -459,7 +460,7 @@ class Orders extends Model
LIMIT " . LIMIT " .
$filter["limit"] . $filter["limit"] .
";", ";",
$params, $params
); );
} }
@ -491,7 +492,7 @@ class Orders extends Model
FROM t_orders as ord FROM t_orders as ord
INNER JOIN t_orders_clients as ord_c ON ord.id = ord_c.ord_id INNER JOIN t_orders_clients as ord_c ON ord.id = ord_c.ord_id
WHERE ord.dlt is null AND ord.status IN (?) AND ord_c.c_id = ?;", WHERE ord.dlt is null AND ord.status IN (?) AND ord_c.c_id = ?;",
[$stts, $client_id], [$stts, $client_id]
); );
} }
@ -505,7 +506,7 @@ class Orders extends Model
INNER JOIN t_orders_clients as ord_c ON ord.id = ord_c.ord_id INNER JOIN t_orders_clients as ord_c ON ord.id = ord_c.ord_id
WHERE ord.dlt is null AND ord_c.c_id = ? WHERE ord.dlt is null AND ord_c.c_id = ?
LIMIT ?;", LIMIT ?;",
[$client_id, $limit], [$client_id, $limit]
); );
} }
@ -609,7 +610,7 @@ class Orders extends Model
$limit . $limit .
" "
", ",
$params, $params
); );
} }

View File

@ -300,6 +300,7 @@ class Tracks extends Model
$_query = DB::select($_query, [$_list->vid]); $_query = DB::select($_query, [$_list->vid]);
$_list->lst_heartbeat = count($_query) == 0 ? "" : $_query[0]->lst_heartbeat; $_list->lst_heartbeat = count($_query) == 0 ? "" : $_query[0]->lst_heartbeat;
} }
// em
return $list; return $list;
} }

View File

@ -37,9 +37,9 @@ class Vehicles extends Model
$select = ""; $select = "";
$where = ""; $where = "";
if ($auth->role == Users::ROLE_VENDOR) { // if ($auth->role == Users::ROLE_VENDOR) {
$where .= " AND v.vendor_id = " . $auth->uid; // $where .= " AND v.vendor_id = " . $auth->uid;
} // }
if (isset($filter["company"])) { if (isset($filter["company"])) {
$where .= " AND client.id = ?"; $where .= " AND client.id = ?";
@ -106,10 +106,7 @@ class Vehicles extends Model
public static function getVehicleById($vid) public static function getVehicleById($vid)
{ {
return DB::select( return DB::select("SELECT * FROM t_vehicles WHERE dlt is null AND id = ? LIMIT 1;", [$vid]);
"SELECT * FROM t_vehicles WHERE dlt is null AND id = ? LIMIT 1;",
[$vid]
);
} }
public static function getVehicleByDeviceId($device_id) public static function getVehicleByDeviceId($device_id)
@ -122,10 +119,7 @@ class Vehicles extends Model
public static function getVehicleBySimcard($simcard) public static function getVehicleBySimcard($simcard)
{ {
return DB::select( return DB::select("SELECT * FROM t_vehicles WHERE dlt is null AND simcard = ? LIMIT 1;", [$simcard]);
"SELECT * FROM t_vehicles WHERE dlt is null AND simcard = ? LIMIT 1;",
[$simcard]
);
} }
public static function getVehicleByPlatNo($nopol1, $nopol2, $nopol3) public static function getVehicleByPlatNo($nopol1, $nopol2, $nopol3)
@ -177,9 +171,7 @@ class Vehicles extends Model
$where_in = substr($where_in, 0, -1); $where_in = substr($where_in, 0, -1);
} }
return DB::select( return DB::select(
"SELECT * FROM t_vehicles WHERE dlt is null AND id IN (" . "SELECT * FROM t_vehicles WHERE dlt is null AND id IN (" . $where_in . ");",
$where_in .
");",
$params $params
); );
} }
@ -227,10 +219,8 @@ class Vehicles extends Model
); );
} }
public static function getVehiclesInVendorIdsActiveNoInOrder( public static function getVehiclesInVendorIdsActiveNoInOrder($vendorIds, $prefer_truck_type = 0)
$vendorIds, {
$prefer_truck_type = 0
) {
$params = []; $params = [];
$where_in = ""; $where_in = "";
$where_where = ""; $where_where = "";
@ -305,30 +295,22 @@ class Vehicles extends Model
// default 1: truck // default 1: truck
public static function listCats() public static function listCats()
{ {
return DB::select( return DB::select("SELECT * FROM t_vehicles_cats WHERE dlt is null AND is_active = 1;");
"SELECT * FROM t_vehicles_cats WHERE dlt is null AND is_active = 1;"
);
} }
// default 1: unknown // default 1: unknown
public static function listBrands() public static function listBrands()
{ {
return DB::select( return DB::select("SELECT * FROM t_vehicles_brands WHERE dlt is null AND is_active = 1;");
"SELECT * FROM t_vehicles_brands WHERE dlt is null AND is_active = 1;"
);
} }
public static function listTypes() public static function listTypes()
{ {
return DB::select( return DB::select("SELECT * FROM t_vehicles_types WHERE dlt is null AND is_active = 1;");
"SELECT * FROM t_vehicles_types WHERE dlt is null AND is_active = 1;"
);
} }
public static function listModels() public static function listModels()
{ {
return DB::select( return DB::select("SELECT * FROM t_vehicles_models WHERE dlt is null AND is_active = 1;");
"SELECT * FROM t_vehicles_models WHERE dlt is null AND is_active = 1;"
);
} }
} }

View File

@ -107,33 +107,70 @@ class Zone extends Model
// ;"); // ;");
} }
// public static function getActiveZones($client_group_id = 0, $type = 0, $workflow_type = 0)
// {
// $where_client_group_id = "";
// if ($client_group_id != 0) {
// $where_client_group_id = " AND z.client_group_id = " . $client_group_id;
// }
// $where_type = "";
// if ($type != 0) {
// $where_type = " AND z.type = " . $type;
// }
// $where_workflow_type = "";
// if ($workflow_type != 0) {
// $where_workflow_type = " AND z.workflow_type = " . $workflow_type;
// }
// return DB::select(
// "SELECT
// z.*
// FROM t_zones as z WHERE z.dlt is null AND z.status = " .
// Zone::STATUS_ACTIVE .
// $where_client_group_id .
// $where_type .
// $where_workflow_type .
// " ;"
// );
// }
public static function getActiveZones($client_group_id = 0, $type = 0, $workflow_type = 0) public static function getActiveZones($client_group_id = 0, $type = 0, $workflow_type = 0)
{ {
$where_client_group_id = ""; $where_client_group_id = "";
if ($client_group_id != 0) { if ($client_group_id != 0) {
$where_client_group_id = " AND z.client_group_id = " . $client_group_id; $where_client_group_id = " AND z.client_group_id = " . intval($client_group_id);
} }
$where_type = ""; $where_type = "";
if ($type != 0) { if ($type != 0) {
$where_type = " AND z.type = " . $type; if (is_array($type)) {
$type_list = implode(",", array_map("intval", $type));
$where_type = " AND z.type IN (" . $type_list . ")";
} else {
$where_type = " AND z.type = " . intval($type);
}
} }
$where_workflow_type = ""; $where_workflow_type = "";
if ($workflow_type != 0) { if ($workflow_type != 0) {
$where_workflow_type = " AND z.workflow_type = " . $workflow_type; $where_workflow_type = " AND z.workflow_type = " . intval($workflow_type);
} }
return DB::select( $sql =
"SELECT "SELECT
z.* z.*
FROM t_zones as z WHERE z.dlt is null AND z.status = " . FROM t_zones as z
WHERE z.dlt IS NULL
AND z.status = " .
Zone::STATUS_ACTIVE . Zone::STATUS_ACTIVE .
$where_client_group_id . $where_client_group_id .
$where_type . $where_type .
$where_workflow_type . $where_workflow_type .
" ;" ";";
);
return DB::select($sql);
} }
public static function showZoneById($zid) public static function showZoneById($zid)

View File

@ -391,7 +391,7 @@
if (!AllowRouteSegment1.includes(AppState.route_segment1)) { if (!AllowRouteSegment1.includes(AppState.route_segment1)) {
const AllowRouteSegment2 = ['pocket']; const AllowRouteSegment2 = ['pocket'];
if (!AllowRouteSegment2.includes(AppState.route_segment2)) { if (!AllowRouteSegment2.includes(AppState.route_segment2)) {
$('#subNav').addClass('d-none'); // $('#subNav').addClass('d-none');
return false; return false;
} }
} }

View File

@ -12,7 +12,7 @@
<div class="card-header"> <div class="card-header">
<div class="row d-flex align-items-center"> <div class="row d-flex align-items-center">
<div class="col"> <div class="col">
<p class="card-title text-bold mb-0">Detail Pesanan</p> <p class="card-title text-bold mb-0">Detail Job</p>
</div> </div>
<div class="col text-end"> <div class="col text-end">
<button class="btn btn-secondary btn-sm" onclick="location.href='{{ route('view_transactions') }}'">Kembali</button> <button class="btn btn-secondary btn-sm" onclick="location.href='{{ route('view_transactions') }}'">Kembali</button>
@ -24,11 +24,11 @@
<div class="row d-flex"> <div class="row d-flex">
<div class="col-5 mb-3"> <div class="col-5 mb-3">
<div class="row"> <div class="row">
<div class="col-sm-12 mb-3"> {{-- <div class="col-sm-12 mb-3">
<p class="text-danger text-bold mb-0">Penjemputan dan Pengantaran</p> <p class="text-danger text-bold mb-0">Penjemputan dan Pengantaran</p>
</div> </div> --}}
<div class="col-sm-12 mb-3"> <div class="col-sm-12 mb-3">
<label for="" class="form-label">Tanggal Penjemputan</label> <label for="" class="form-label">Date</label>
<div class="card bg-light border mb-0"> <div class="card bg-light border mb-0">
<div class="card-body"> <div class="card-body">
<p class="mb-0"><span id="view-pickup_date_at"></span></p> <p class="mb-0"><span id="view-pickup_date_at"></span></p>
@ -36,7 +36,7 @@
</div> </div>
</div> </div>
<div class="col-sm-12 mb-3"> <div class="col-sm-12 mb-3">
<label for="" class="form-label">Waktu Penjemputan</label> <label for="" class="form-label">Time</label>
<div class="card bg-light border mb-0"> <div class="card bg-light border mb-0">
<div class="card-body"> <div class="card-body">
<p class="mb-0"><span id="view-pickup_time_at"></span></p> <p class="mb-0"><span id="view-pickup_time_at"></span></p>
@ -48,10 +48,10 @@
<div class="col-sm-2"></div> <div class="col-sm-2"></div>
<div class="col-sm-5 mb-3"> <div class="col-sm-5 mb-3">
<div class="row"> <div class="row">
<div class="col-sm-12 col-12 mb-3"> {{-- <div class="col-sm-12 col-12 mb-3">
<p class="text-danger text-bold mb-0">Layanan Yang Dipilih</p> <p class="text-danger text-bold mb-0">Layanan Yang Dipilih</p>
</div> </div> --}}
<div class="col-sm-12 col-6 mb-3"> {{-- <div class="col-sm-12 col-6 mb-3">
<label for="" class="form-label">Durasi Pengantaran</label> <label for="" class="form-label">Durasi Pengantaran</label>
<div class="card bg-light border mb-0 w-100"> <div class="card bg-light border mb-0 w-100">
<div class="card-body d-flex justify-content-between"> <div class="card-body d-flex justify-content-between">
@ -61,9 +61,9 @@
</p> </p>
</div> </div>
</div> </div>
</div> </div> --}}
<div class="col-sm-12 col-6 mb-3"> <div class="col-sm-12 col-6 mb-3">
<label for="" class="form-label">Tipe Kendaraan</label> <label for="" class="form-label">Vehicle</label>
<div class="card bg-light border mb-0 w-100"> <div class="card bg-light border mb-0 w-100">
<div class="card-body d-flex justify-content-between"> <div class="card-body d-flex justify-content-between">
<p class="mb-0">{{ $order->prefer_truck_type_name }}</p> <p class="mb-0">{{ $order->prefer_truck_type_name }}</p>
@ -75,7 +75,7 @@
</div> </div>
<div class="row mb-3 d-flex align-items-center"> <div class="row mb-3 d-flex align-items-center">
<div class="col-5 mb-3"> <div class="col-5 mb-3">
<label for="" class="form-label">Lokasi Penjemputan</label> <label for="" class="form-label">Origin</label>
<div class="card bg-light border mb-0"> <div class="card bg-light border mb-0">
<div class="card-body"> <div class="card-body">
{{-- <p class="text-bold mb-2">Gudang Pluit SiCepat (Jakarta)</p> --}} {{-- <p class="text-bold mb-2">Gudang Pluit SiCepat (Jakarta)</p> --}}
@ -91,7 +91,7 @@
<span class="ion-arrow-right-c text-danger" style="font-size: 15px"></span> <span class="ion-arrow-right-c text-danger" style="font-size: 15px"></span>
</div> </div>
<div class="col-5 mb-3"> <div class="col-5 mb-3">
<label for="" class="form-label">Lokasi Pengantaran</label> <label for="" class="form-label">Destination</label>
<div class="card bg-light border mb-0"> <div class="card bg-light border mb-0">
<div class="card-body"> <div class="card-body">
{{-- <p class="text-bold mb-2">Kantor Pusat SiCepat (yogyakarta)</p> --}} {{-- <p class="text-bold mb-2">Kantor Pusat SiCepat (yogyakarta)</p> --}}
@ -105,36 +105,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="col-sm-6"> {{-- <div class="col-sm-6">
@if ($order->confirm_at === 0)
<div class="card">
{{-- <div class="card-header">
<div class="row d-flex align-items-center">
<div class="col">
<p class="card-title text-bold mb-0">Order History</p>
</div>
</div>
</div> --}}
<div class="card-body">
<div class="col-12 mb-3">
<p class="text-danger text-bold mb-0">Pencarian Vendor Otomatis</p>
</div>
<div id="mapsOrder" class="mb-3"></div>
<div class="col-12">
<div class="text-end">
{{-- <button class="btn btn-danger btn-sm"
onclick="location.href='{{ route('view_transactions') }}'">Submit</button> --}}
<button id="btnSearchDriver" class="btn btn-danger btn-sm">Cari Otomatis</button>
<div id="group_btnSearchDrvSpinner" class="d-none">
<div class="spinner-border" role="status">
<span class="visually-hidden">Loading...</span>
</div>
</div>
</div>
</div>
</div>
</div>
@endif
<div class="card"> <div class="card">
<div class="card-body"> <div class="card-body">
<div class="col-12 mb-3"> <div class="col-12 mb-3">
@ -150,8 +121,6 @@
</select> </select>
</div> </div>
<div class="text-end"> <div class="text-end">
{{-- <button class="btn btn-danger btn-sm"
onclick="location.href='{{ route('view_transactions') }}'">Pilih</button> --}}
<button id="btnChooseVendor" class="btn btn-danger btn-sm">Pilih</button> <button id="btnChooseVendor" class="btn btn-danger btn-sm">Pilih</button>
<div id="group_btnChooseVdrSpinner" class="d-none"> <div id="group_btnChooseVdrSpinner" class="d-none">
<div class="spinner-border" role="status"> <div class="spinner-border" role="status">
@ -161,7 +130,7 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div> --}}
</div> </div>
</div> </div>
</div> </div>
@ -268,10 +237,7 @@
rectangle: "{{ App\Models\Zone::ZONE_BOUNDARY_RECTANGLE }}", rectangle: "{{ App\Models\Zone::ZONE_BOUNDARY_RECTANGLE }}",
}, },
boundary_type_choose: "{{ App\Models\Zone::ZONE_BOUNDARY_CIRCLE }}", boundary_type_choose: "{{ App\Models\Zone::ZONE_BOUNDARY_CIRCLE }}",
boundary_latlngs: [{
lat: "{{ $order->pck_center_lat }}",
lng: "{{ $order->pck_center_lng }}",
}], // [{lat,lng}].
boundary_radius: 2000, // in meters. only circle boundary_radius: 2000, // in meters. only circle
boundary_bounds: null, // {northEast:{lat,lng},southWest:{lat,lng}}. only polygon,rectangle boundary_bounds: null, // {northEast:{lat,lng},southWest:{lat,lng}}. only polygon,rectangle
default_boundary_hex: '#f26e6f', default_boundary_hex: '#f26e6f',

View File

@ -76,16 +76,13 @@
</div> </div>
<div class="col-2 text-center d-flex align-items-center justify-content-center"> <div class="col-2 text-center d-flex align-items-center justify-content-center">
<label for="" class="form-label mb-0 mt-0">&nbsp;</label> <label for="" class="form-label mb-0 mt-0">&nbsp;</label>
{{-- <p class="mb-0">to</p> --}}
<span class="ion-arrow-right-c text-danger" style="font-size: 15px"></span> <span class="ion-arrow-right-c text-danger" style="font-size: 15px"></span>
</div> </div>
<div class="col-5"> <div class="col-5">
<label for="" class="form-label">Lokasi Pengantaran</label> <label for="" class="form-label">Lokasi Pengantaran</label>
<div class="card bg-light border mb-0"> <div class="card bg-light border mb-0">
<div class="card-body"> <div class="card-body">
{{-- <p class="text-bold mb-2">Kantor Pusat SiCepat (yogyakarta)</p> --}}
<p class="text-bold mb-2">{{ $_order['drop_name'] }}</p> <p class="text-bold mb-2">{{ $_order['drop_name'] }}</p>
{{-- <p class="mb-0">Jl. Prof. Herman Yohanes No.989, Terban, Gondokusuman, Kota Yogyakarta, Daerah Istimewa Yogyakarta 55223, Indonesia</p> --}}
<p class="mb-0">{{ $_order['drop_addr'] }}</p> <p class="mb-0">{{ $_order['drop_addr'] }}</p>
</div> </div>
</div> </div>

View File

@ -29,7 +29,7 @@
</div> </div>
<div class="col text-end"> <div class="col text-end">
{{-- <a href="#" class="btn btn-sm btn-danger" data-bs-toggle="modal" data-bs-target="#addNewClientModal">Add New Client</a> --}} {{-- <a href="#" class="btn btn-sm btn-danger" data-bs-toggle="modal" data-bs-target="#addNewClientModal">Add New Client</a> --}}
<a href="#" class="btn btn-sm btn-danger" id="btnAddNewClientModal">Tambah Client</a> {{-- <a href="#" class="btn btn-sm btn-danger" id="btnAddNewClientModal">Tambah Client</a> --}}
</div> </div>
<div class="col-auto text-end ps-0"> <div class="col-auto text-end ps-0">
{{-- <button class="btn btn-sm btn-danger">Upload</button> --}} {{-- <button class="btn btn-sm btn-danger">Upload</button> --}}

View File

@ -234,10 +234,10 @@
</div> </div>
<div class="form-group mb-3 w-100"> <div class="form-group mb-3 w-100">
<select name="" class="form-control select2" style="width: 100%;" id="selectFiter"> <select name="" class="form-control select2" style="width: 100%;" id="selectFiter">
<option value="3">Pekerjaan</option> <option value="1">Vehicle</option>
<option value="1">Kendaraan</option> <option value="2">Driver</option>
<option value="2">Pengemudi</option> <option value="3">Job</option>
<option value="4">Riwayat Perjalanan</option> <option value="4">Travel History</option>
</select> </select>
</div> </div>
<ul class="list-group" id="infoVehicles"> <ul class="list-group" id="infoVehicles">
@ -249,7 +249,7 @@
<p id="infoVehicles-crt" class="text-muted mb-0">20-Jan-2022 23:16:18</p> <p id="infoVehicles-crt" class="text-muted mb-0">20-Jan-2022 23:16:18</p>
</li> </li>
<li class="list-group-item p-1 px-2"> <li class="list-group-item p-1 px-2">
<p class="text-bold mb-0">Lokasi saat ini</p> <p class="text-bold mb-0">Current Location</p>
<p id="infoVehicles-addr" class="text-muted mb-0">Kebon Baru - Tebet</p> <p id="infoVehicles-addr" class="text-muted mb-0">Kebon Baru - Tebet</p>
</li> </li>
<li class="list-group-item p-1 px-2"> <li class="list-group-item p-1 px-2">
@ -257,7 +257,7 @@
<p id="infoVehicles-lat_lng" class="text-muted mb-0">-6.27013, 106.731371</p> <p id="infoVehicles-lat_lng" class="text-muted mb-0">-6.27013, 106.731371</p>
</li> </li>
<li class="list-group-item p-1 px-2"> <li class="list-group-item p-1 px-2">
<p class="text-bold mb-0">Jarak tempuh kendaraan (km)</p> <p class="text-bold mb-0">Vehicle Mileage (km)</p>
<p id="infoVehicles-mileage" class="text-muted mb-0">45080.83</p> <p id="infoVehicles-mileage" class="text-muted mb-0">45080.83</p>
</li> </li>
{{-- <li class="list-group-item p-1 px-2"> {{-- <li class="list-group-item p-1 px-2">
@ -273,7 +273,7 @@
<p id="infoVehicles-ignition" class="text-muted mb-0">ON</p> <p id="infoVehicles-ignition" class="text-muted mb-0">ON</p>
</li> --}} </li> --}}
<li class="list-group-item p-1 px-2"> <li class="list-group-item p-1 px-2">
<p class="text-bold mb-0">Status Mesin</p> <p class="text-bold mb-0">Engine Status</p>
<p id="infoVehicles-engineStatus" class="text-muted mb-0">Idling</p> <p id="infoVehicles-engineStatus" class="text-muted mb-0">Idling</p>
</li> </li>
{{-- <li class="list-group-item p-1 px-2"> {{-- <li class="list-group-item p-1 px-2">
@ -305,15 +305,15 @@
</ul> </ul>
<ul class="list-group" id="infoDriver"> <ul class="list-group" id="infoDriver">
<li class="list-group-item p-1 px-2"> <li class="list-group-item p-1 px-2">
<p class="text-bold mb-0">Informasi Pengemudi</p> <p class="text-bold mb-0">Driver Information</p>
<p id="infoDrv-updt" class="text-muted mb-0">20-Jan-2022 23:16:18</p> <p id="infoDrv-updt" class="text-muted mb-0">20-Jan-2022 23:16:18</p>
</li> </li>
<li class="list-group-item p-1 px-2"> <li class="list-group-item p-1 px-2">
<p class="text-bold mb-0">Nama Pengemudi</p> <p class="text-bold mb-0">Driver Name</p>
<p id="infoDrv-name" class="text-muted mb-0">Rafif</p> <p id="infoDrv-name" class="text-muted mb-0">Emrsyf</p>
</li> </li>
<li class="list-group-item p-1 px-2"> <li class="list-group-item p-1 px-2">
<p class="text-bold mb-0">Phone 1</p> <p class="text-bold mb-0">Phone</p>
<p class="mb-0"> <p class="mb-0">
<a href="tel:0" id="infoDrv-phone1-tel"> <a href="tel:0" id="infoDrv-phone1-tel">
<i class="text-dark ion-ios-telephone"></i>&nbsp; <i class="text-dark ion-ios-telephone"></i>&nbsp;
@ -326,7 +326,7 @@
</a> </a>
</p> </p>
</li> </li>
<li class="list-group-item p-1 px-2"> {{-- <li class="list-group-item p-1 px-2">
<p class="text-bold mb-0">Phone 2</p> <p class="text-bold mb-0">Phone 2</p>
<p class="mb-0"> <p class="mb-0">
<a href="tel:0" id="infoDrv-phone2-tel"> <a href="tel:0" id="infoDrv-phone2-tel">
@ -339,7 +339,7 @@
<span class="infoDrv-phone2-text"></span> <span class="infoDrv-phone2-text"></span>
</a> </a>
</p> </p>
</li> </li> --}}
</ul> </ul>
<div id="infoJob"> <div id="infoJob">
{{-- @for ($i = 0; $i < 20; $i++) {{-- @for ($i = 0; $i < 20; $i++)
@ -356,9 +356,8 @@
</div> </div>
</li> </li>
@endfor --}} @endfor --}}
<ul class="list-group mb-3"> {{-- <ul class="list-group mb-3">
<li class="list-group-item p-1 px-2"> <li class="list-group-item p-1 px-2">
{{-- <p class="text-bold mb-0">#902192102910</p> --}}
<div class="row d-flex align-items-center justify-content-between"> <div class="row d-flex align-items-center justify-content-between">
<div class="col-12"> <div class="col-12">
<small class="text-muted">Client</small> <small class="text-muted">Client</small>
@ -366,13 +365,13 @@
</div> </div>
</div> </div>
</li> </li>
</ul> </ul> --}}
<ul class="list-group mb-3"> <ul class="list-group mb-3">
<li class="list-group-item p-1 px-2"> <li class="list-group-item p-1 px-2">
{{-- <p class="text-bold mb-0">#902192102910</p> --}} {{-- <p class="text-bold mb-0">#902192102910</p> --}}
<div class="row d-flex align-items-center justify-content-between"> <div class="row d-flex align-items-center justify-content-between">
<div class="col-12"> <div class="col-12">
<small class="text-muted">Dari</small> <small class="text-muted">Origin</small>
<p id="infoJob-pck_city" class="">Jakarta</p> <p id="infoJob-pck_city" class="">Jakarta</p>
<p id="infoJob-pck_name" class="mb-0">JKT-01</p> <p id="infoJob-pck_name" class="mb-0">JKT-01</p>
<p id="infoJob-pck_addr" class="mb-0">Jl. Pancoran Timur Raya No.9, RT.8/RW.9, Pancoran, Kec. Pancoran, Kota Jakarta Selatan, Daerah Khusus Ibukota Jakarta 12780</p> <p id="infoJob-pck_addr" class="mb-0">Jl. Pancoran Timur Raya No.9, RT.8/RW.9, Pancoran, Kec. Pancoran, Kota Jakarta Selatan, Daerah Khusus Ibukota Jakarta 12780</p>
@ -383,7 +382,7 @@
{{-- <p class="text-bold mb-0">#902192102910</p> --}} {{-- <p class="text-bold mb-0">#902192102910</p> --}}
<div class="row d-flex align-items-center justify-content-between"> <div class="row d-flex align-items-center justify-content-between">
<div class="col-12"> <div class="col-12">
<small class="text-muted">Tujuan</small> <small class="text-muted">Destination</small>
<p id="infoJob-drop_city" class="">Indramayu</p> <p id="infoJob-drop_city" class="">Indramayu</p>
<p id="infoJob-drop_name" class="mb-0">IND-01</p> <p id="infoJob-drop_name" class="mb-0">IND-01</p>
<p id="infoJob-drop_addr" class="mb-0">Jl. Jend. Sudirman, Karanganyar, Kec. Indramayu, Kabupaten Indramayu, Jawa Barat</p> <p id="infoJob-drop_addr" class="mb-0">Jl. Jend. Sudirman, Karanganyar, Kec. Indramayu, Kabupaten Indramayu, Jawa Barat</p>
@ -404,17 +403,17 @@
</ul> </ul>
</div> </div>
<ul class="list-group" id="infoMovement"> <ul class="list-group" id="infoMovement">
<li class="list-group-item p-1 px-2"> <li class="list-group-item p-1 px-2 mb-2" style="border-radius: 0.25rem;">
<p class="text-bold mb-0">Riwayat Perjalanan</p> <p class="text-bold mb-0">Trip History</p>
<p id="infoVehicles-infoMove" class="text-muted mb-0">Terbaru</p> <p id="infoVehicles-infoMove" class="text-muted mb-0">Most Recent</p>
</li> </li>
<div> <div>
<div> <div class="mb-2">
<label class="text-muted">Dari</label> <label class="text-muted">From</label>
<input class="form-control" type="date" id="historyStartDate"> <input class="form-control" type="date" id="historyStartDate">
</div> </div>
<div> <div class="mb-3">
<label class="text-muted">Sampai</label> <label class="text-muted">To</label>
<input class="form-control" type="date" id="historyEndDate"> <input class="form-control" type="date" id="historyEndDate">
</div> </div>
</div> </div>
@ -1225,7 +1224,7 @@
Menu.showViewDetailVehicle($(this).val()); Menu.showViewDetailVehicle($(this).val());
}); });
Menu.showViewDetailVehicle(State.stts_filterDetail.assignJob); Menu.showViewDetailVehicle(State.stts_filterDetail.vehicles);
Menu.eventListVehicle(); Menu.eventListVehicle();
Menu.eventListMovement(); Menu.eventListMovement();
@ -1280,8 +1279,8 @@
}, State.delay_hideTruckNotSelected); }, State.delay_hideTruckNotSelected);
}); });
Leaflet.clearLayer('eventRemoveDetailPlotMovement'); Leaflet.clearLayer('eventRemoveDetailPlotMovement');
$('#selectFiter').val(State.stts_filterDetail.assignJob).trigger('change'); $('#selectFiter').val(State.stts_filterDetail.vehicles).trigger('change');
$('#selectFiter').val(State.stts_filterDetail.assignJob).trigger('select2:select'); $('#selectFiter').val(State.stts_filterDetail.vehicles).trigger('select2:select');
$('#rightSideBar2').removeClass('d-none'); $('#rightSideBar2').removeClass('d-none');
if (Trucks.lists[i]?.lst_lat == null || Trucks.lists[i]?.lst_lng == null) { if (Trucks.lists[i]?.lst_lat == null || Trucks.lists[i]?.lst_lng == null) {
Helper.toast('Warning', 'just now', Helper.toast('Warning', 'just now',
@ -2424,7 +2423,7 @@
// driver // driver
$('#infoDrv-updt').text((truck?.ord_crt) ? moment.unix(truck?.ord_crt).format('DD MMM YYYY HH:mm') : '-'); $('#infoDrv-updt').text((truck?.ord_crt) ? moment.unix(truck?.ord_crt).format('DD MMM YYYY HH:mm') : '-');
$('#infoDrv-name').text(truck?.ord_drv_name ?? 'Tidak dalam order'); $('#infoDrv-name').text(truck?.ord_drv_name ?? 'Off Duty');
$('.infoDrv-phone1-text').text((truck?.ord_drv_phone_val) ? Helper.splitEvery4Char('0' + truck?.ord_drv_phone_val) : '-'); $('.infoDrv-phone1-text').text((truck?.ord_drv_phone_val) ? Helper.splitEvery4Char('0' + truck?.ord_drv_phone_val) : '-');
$('#infoDrv-phone1-tel').attr('tel:0' + (truck?.ord_drv_phone_val ?? '')); $('#infoDrv-phone1-tel').attr('tel:0' + (truck?.ord_drv_phone_val ?? ''));
$('#infoDrv-phone1-wa').attr('https://api.whatsapp.com/send/?phone=62' + (truck?.ord_drv_phone_val ?? '') + '&text=Halo&app_absent=0'); $('#infoDrv-phone1-wa').attr('https://api.whatsapp.com/send/?phone=62' + (truck?.ord_drv_phone_val ?? '') + '&text=Halo&app_absent=0');

View File

@ -25,7 +25,8 @@
<div class="col-3"> <div class="col-3">
<p class="card-title text-bold mb-0">List Driver</p> <p class="card-title text-bold mb-0">List Driver</p>
</div> </div>
@if ($user_role === \App\Models\Users::ROLE_VENDOR) {{-- @if ($user_role === \App\Models\Users::ROLE_VENDOR) --}}
@if ($user_role === \App\Models\Users::ROLE_ADMIN)
<div class="col text-end"> <div class="col text-end">
<button id="btnMdlNewDrv" class="btn btn-sm btn-danger">Add New Driver</button> <button id="btnMdlNewDrv" class="btn btn-sm btn-danger">Add New Driver</button>
</div> </div>

View File

@ -19,18 +19,18 @@
<div class="card-header"> <div class="card-header">
<div class="row d-flex align-items-center"> <div class="row d-flex align-items-center">
<div class="col"> <div class="col">
<p class="card-title text-bold mb-0">Transaksi</p> <p class="card-title text-bold mb-0">Transaction</p>
<p class="card-subtitle text-muted">Daftar Transaksi</p> <p class="card-subtitle text-muted">Transaction List</p>
</div> </div>
{{-- <div class="col-auto text-end ps-0"> {{-- <div class="col-auto text-end ps-0">
<a href="#" id="btnMdlMrgTrx" class="btn btn-sm btn-danger">Merge Transaksi</a> <a href="#" id="btnMdlMrgTrx" class="btn btn-sm btn-danger">Merge Transaksi</a>
</div> </div>
<div class="col-auto text-end ps-0"> <div class="col-auto text-end ps-0">
<a href="{{ route('view_transactions_spc_add') }}" class="btn btn-sm btn-warning">Transaksi Khusus</a> <a href="{{ route('view_transactions_spc_add') }}" class="btn btn-sm btn-warning">Transaksi Khusus</a>
</div>
<div class="col-auto text-end ps-0">
<a href="{{ route('view_transactions_add') }}" class="btn btn-sm btn-danger">Tambah Transaksi</a>
</div> --}} </div> --}}
<div class="col-auto text-end ps-0">
<a href="{{ route('view_transactions_add') }}" class="btn btn-sm btn-danger">Add New Job</a>
</div>
</div> </div>
</div> </div>
<div class="card-body"> <div class="card-body">
@ -39,20 +39,20 @@
<thead> <thead>
<tr class=""> <tr class="">
<th class="">#</th> <th class="">#</th>
<th class="text-nowrap text-center">Tindakan</th> <th class="text-nowrap text-center">Action</th>
<th class="text-nowrap">Kode Order</th> <th class="text-nowrap">Order Code</th>
<th class="text-nowrap">Nama Client</th> <th class="text-nowrap">Company</th>
<th class="text-nowrap">Waktu Pemesanan</th> <th class="text-nowrap">Order Time</th>
<th class="text-nowrap">Vendor</th> {{-- <th class="text-nowrap">Vendor</th> --}}
<th class="text-nowrap">Kendaraan</th> <th class="text-nowrap">Vehicle</th>
<th class="text-nowrap">Pengemudi</th> <th class="text-nowrap">Driver</th>
<th class="text-nowrap">Lokasi Penjemputan</th> <th class="text-nowrap">Origin</th>
<th class="text-nowrap">Lokasi Pengantaran</th> <th class="text-nowrap">Destination</th>
<th class="text-nowrap text-center">Status</th> <th class="text-nowrap text-center">Status</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr class=""> {{-- <tr class="">
<td class="text-nowrap">1</td> <td class="text-nowrap">1</td>
<td class="text-nowrap">SiCepat</td> <td class="text-nowrap">SiCepat</td>
<td class="text-nowrap">Feb 20, 2022 17:29:50</td> <td class="text-nowrap">Feb 20, 2022 17:29:50</td>
@ -75,7 +75,7 @@
<span class="icon ion-eye text-danger fz-16"></span> <span class="icon ion-eye text-danger fz-16"></span>
</a> </a>
</td> </td>
</tr> </tr> --}}
</tbody> </tbody>
</table> </table>
</div> </div>
@ -434,15 +434,57 @@
orderable: true, orderable: true,
searchable: true, searchable: true,
render: function(data, type, row, meta) { render: function(data, type, row, meta) {
console.log("rows: ", row)
let action = ``; let action = ``;
// if (row.confirm_at === 0) { // if (row.confirm_at === 0) {
if (!row.vdr_name) { // if (!row.vdr_name) {
action += `<a href="${State.url_conf_order}?code=${row.ord_code}" // action += `<a href="${State.url_conf_order}?code=${row.ord_code}"
class="text-decoration-none me-1" data-bs-toggle="tooltip" // class="text-decoration-none me-1" data-bs-toggle="tooltip"
data-bs-placement="bottom" title="Tindak Lanjuti"> // data-bs-placement="bottom" title="Tindak Lanjuti">
<span class="icon ion-forward text-danger fz-16"></span> // <span class="icon ion-forward text-danger fz-16"></span>
</a>`; // </a>`;
} else { // } else {
// let ord_codes = row.ord_code;
// if (typeof row.childs != 'undefined' && row.childs.length > 0) {
// for (const child of row.childs) {
// ord_codes += ',' + child.ord_code;
// }
// }
// action += `
// <a href="${State.url_view_order}?code=${ord_codes}"
// class="text-decoration-none me-1" data-bs-toggle="tooltip"
// data-bs-placement="bottom" title="Lihat">
// <span class="icon ion-eye text-danger fz-16"></span>
// </a>
// `;
// action += `
// <a href="#"
// class="text-decoration-none me-1 btnTrackOrder" data-bs-toggle="tooltip"
// data-bs-placement="bottom" title="Tracking #${row.ord_code}"
// data-id="${row.ord_id}" data-code="${row.ord_code}">
// <span class="icon ion-map text-danger fz-16"></span>
// </a>
// `;
// // data-bs-toggle="modal" data-bs-target="#mdlPantau"
// for (const child of row.childs) {
// action += `
// <a href="#"
// class="text-decoration-none me-1 btnTrackOrder" data-bs-toggle="tooltip"
// data-bs-placement="bottom" title="Tracking #${child.ord_code}"
// data-id="${child.ord_id}" data-code="${child.ord_code}">
// <span class="icon ion-map text-danger fz-16"></span>
// </a>
// `;
// }
// }
// action += `
// <a href="#"
// class="text-decoration-none me-1 btnDelOrder" data-bs-toggle="tooltip"
// data-bs-placement="bottom" title="Delete Order"
// data-id="${row.ord_id}" data-code="${row.ord_code}">
// <span class="icon ion-ios-trash text-danger fz-16"></span>
// </a>
// `;
let ord_codes = row.ord_code; let ord_codes = row.ord_code;
if (typeof row.childs != 'undefined' && row.childs.length > 0) { if (typeof row.childs != 'undefined' && row.childs.length > 0) {
for (const child of row.childs) { for (const child of row.childs) {
@ -475,7 +517,6 @@
</a> </a>
`; `;
} }
}
action += ` action += `
<a href="#" <a href="#"
class="text-decoration-none me-1 btnDelOrder" data-bs-toggle="tooltip" class="text-decoration-none me-1 btnDelOrder" data-bs-toggle="tooltip"
@ -506,7 +547,7 @@
}, },
}, },
{ {
data: 'c_name', data: 'c_pt_name',
className: 'text-start', className: 'text-start',
visible: true, visible: true,
orderable: true, orderable: true,
@ -520,8 +561,9 @@
// }, // },
render: function(data, type, row, meta) { render: function(data, type, row, meta) {
let txt = data; let txt = data;
console.log("row:", row);
for (const child of row.childs) { for (const child of row.childs) {
txt += '<br>' + child.c_name; txt += '<br>' + child.c_pt_name;
} }
return txt; return txt;
}, },
@ -540,29 +582,29 @@
return txt; return txt;
}, },
}, },
{ // {
data: 'vdr_name', // data: 'vdr_name',
className: 'text-start', // className: 'text-start',
visible: true, // visible: true,
orderable: true, // orderable: true,
searchable: true, // searchable: true,
render: function(data, type, row, meta) { // render: function(data, type, row, meta) {
let txt = ''; // let txt = '';
if (data) { // if (data) {
txt += data; // txt += data;
} else { // } else {
txt += `<span class="text-danger">belum ditugaskan</span>`; // txt += `<span class="text-danger">belum ditugaskan</span>`;
} // }
for (const child of row.childs) { // for (const child of row.childs) {
if (child.vdr_name) { // if (child.vdr_name) {
txt += '<br>' + child.vdr_name; // txt += '<br>' + child.vdr_name;
} else { // } else {
txt += `<br><span class="text-danger">belum ditugaskan</span>`; // txt += `<br><span class="text-danger">belum ditugaskan</span>`;
} // }
} // }
return txt; // return txt;
}, // },
}, // },
{ {
data: 'vhc_nopol1', data: 'vhc_nopol1',
className: 'text-start', className: 'text-start',

View File

@ -52,7 +52,7 @@
<tbody> <tbody>
<tr class=""> <tr class="">
<td class="">1</td> <td class="">1</td>
<td class="">Rafif</td> <td class="">Emrsyf</td>
<td class="">Jl. Letjen Mt. Haryono No.Kav. 20, RW.1, Cawang, Kec. <td class="">Jl. Letjen Mt. Haryono No.Kav. 20, RW.1, Cawang, Kec.
Kramat jati, Kota Jakarta Timur, Daerah Khusus Ibukota Jakarta 13630</td> Kramat jati, Kota Jakarta Timur, Daerah Khusus Ibukota Jakarta 13630</td>
<td class="text-nowrap">021 83782235</td> <td class="text-nowrap">021 83782235</td>

View File

@ -321,7 +321,7 @@
</div> </div>
</div> </div>
{{-- Other Data --}} {{-- Other Data --}}
@if ($user_role != \App\Models\Users::ROLE_VENDOR) {{-- @if ($user_role != \App\Models\Users::ROLE_VENDOR)
<div class="mb-3"> <div class="mb-3">
<div class="border-bottom"> <div class="border-bottom">
<h6>Other Data</h6> <h6>Other Data</h6>
@ -340,7 +340,7 @@
</div> </div>
</div> </div>
</div> </div>
@endif @endif --}}
</form> </form>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
@ -578,7 +578,7 @@
</div> </div>
</div> </div>
{{-- Other Data --}} {{-- Other Data --}}
@if ($user_role != \App\Models\Users::ROLE_VENDOR) {{-- @if ($user_role != \App\Models\Users::ROLE_VENDOR)
<div class="mb-3"> <div class="mb-3">
<div class="border-bottom"> <div class="border-bottom">
<h6>Other Data</h6> <h6>Other Data</h6>
@ -597,7 +597,7 @@
</div> </div>
</div> </div>
</div> </div>
@endif @endif --}}
</form> </form>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">

View File

@ -29,8 +29,8 @@
<div class="col"> <div class="col">
<p class="card-title text-bold mb-0">Zona (<span id="count_zones"></span>)</p> <p class="card-title text-bold mb-0">Zona (<span id="count_zones"></span>)</p>
</div> </div>
{{-- @if ($user_role === \App\Models\Users::ROLE_ADMIN || \App\Models\Users::ROLE_VENDOR) --}} @if ($user_role === \App\Models\Users::ROLE_ADMIN || \App\Models\Users::ROLE_VENDOR)
@if ($user_role === \App\Models\Users::ROLE_VENDOR) {{-- @if ($user_role === \App\Models\Users::ROLE_VENDOR) --}}
<div class="col text-end"> <div class="col text-end">
{{-- <a href="#" class="btn btn-sm btn-danger" data-bs-toggle="modal" data-bs-target="#addNewZoneModal">Add New Zone</a> --}} {{-- <a href="#" class="btn btn-sm btn-danger" data-bs-toggle="modal" data-bs-target="#addNewZoneModal">Add New Zone</a> --}}
<a href="{{ route('view_zone_add') }}" class="btn btn-sm btn-danger">Tambah Zona</a> <a href="{{ route('view_zone_add') }}" class="btn btn-sm btn-danger">Tambah Zona</a>

View File

@ -1,9 +1,9 @@
@php @php
if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) { if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
$route_list_trx = route('view_transactions'); $route_list_trx = route('view_transactions');
} else { } else {
$route_list_trx = route('view_user_client_transaction'); $route_list_trx = route('view_user_client_transaction');
} }
@endphp @endphp
@extends('app.app') @extends('app.app')
@ -20,28 +20,23 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
{{-- Form Order --}} {{-- Form Order --}}
<div class="col-sm-6"> <div class="col-sm-6">
<div class="card"> <div class="card">
<div class="card-header"> {{-- <div class="card-header">
<div class="row d-flex align-items-center"> <div class="row d-flex align-items-center">
<div class="col"> <div class="col">
<p class="card-title text-bold mb-0">Tambah Pengiriman Baru</p> <p class="card-title text-bold mb-0">Add new job</p>
</div> </div>
</div> </div>
</div> </div> --}}
<div class="card-body"> <div class="card-body pb-0">
@if (Auth::user()->role == \App\Models\Users::ROLE_ADMIN) @if (Auth::user()->role == \App\Models\Users::ROLE_ADMIN)
<div class="row mb-3 d-flex align-items-center"> <div class="row mb-3 d-flex align-items-center d-none">
<div class="col-12 mb-3">
<p class="text-danger text-bold mb-0">Pengiriman Untuk Client</p>
{{-- <small>Masukkan tanggal, jam, lokasi penjemputan, dan lokasi pengantaran yang ada pada daftar zona yang telah didaftarkan</small> --}}
</div>
<div class="col-sm-5 col-5 mb-3"> <div class="col-sm-5 col-5 mb-3">
<label for="add-client" class="form-label text-nowrap">Pilih Client</label> <label for="add-client" class="form-label text-nowrap">Company</label>
<select name="add-client" id="add-client" class="select2 form-control"> <select name="add-client" id="add-client" class="select2 form-control">
<option value="" selected disabled>Belum ada Client yang dipilih</option>
@foreach ($uclients as $uclient) @foreach ($uclients as $uclient)
<option value="{{ $uclient->id }}" data-uid="{{ $uclient->id }}" <option value="{{ $uclient->id }}" data-uid="{{ $uclient->id }}" data-cptid="{{ $uclient->client_group_id }}">
data-cptid="{{ $uclient->client_group_id }}"> {{ $uclient->client_group_name }}</option>
{{ $uclient->first_name." ($uclient->client_group_name)" }}</option>
@endforeach @endforeach
</select> </select>
</div> </div>
@ -49,25 +44,24 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
@endif @endif
<div class="row mb-3 d-flex align-items-center"> <div class="row mb-3 d-flex align-items-center">
<div class="col-12 mb-3"> <div class="col-12 mb-3">
<p class="text-danger text-bold mb-0">Penjemputan dan Pengantaran</p> <p class="text-danger text-bold mb-0">Orign & Destination</p>
{{-- <small>select time, pickup and drop zone from your zone list. Can't find your zone? <a href="{{ route('view_zone') }}">Add new zone</a></small> --}} {{-- <small>select time, pickup and drop zone from your zone list. Can't find your zone? <a href="{{ route('view_zone') }}">Add new zone</a></small> --}}
<small>Masukkan tanggal, jam, lokasi penjemputan, dan lokasi pengantaran yang ada pada <small>Enter the date, time, origin location, and destination location from<br>the list of registered zones.</small>
daftar zona yang telah didaftarkan</small>
</div> </div>
<div class="col-sm-5 col-5 mb-3"> <div class="col-sm-5 col-5 mb-3">
<label for="add-pickup_date" class="form-label text-nowrap">Tanggal Penjemputan</label> <label for="add-pickup_date" class="form-label text-nowrap">Date</label>
<input type="date" name="add-pickup_date" id="add-pickup_date" class="form-control"> <input type="date" name="add-pickup_date" id="add-pickup_date" class="form-control">
</div> </div>
<div class="col-2"></div> <div class="col-2"></div>
<div class="col-sm-5 col-5 mb-3"> <div class="col-sm-5 col-5 mb-3">
<label for="add-pickup_time" class="form-label text-nowrap">Waktu Penjemputan</label> <label for="add-pickup_time" class="form-label text-nowrap">Time</label>
{{-- <input type="time" name="add-pickup_time" id="add-pickup_time" class="form-control" {{-- <input type="time" name="add-pickup_time" id="add-pickup_time" class="form-control"
min="23:30"> --}} min="23:30"> --}}
<div class="row"> <div class="row">
<div class="col-md-4 col-lg-3" style="padding:0 0 0 0.75rem;"> <div class="col-md-4 col-lg-3" style="padding:0 0 0 0.75rem;">
<select name="add-pickup_time_hour" id="add-pickup_time_hour" class="form-control"> <select name="add-pickup_time_hour" id="add-pickup_time_hour" class="form-control">
<option value="" selected disabled hidden>--</option> <option value="" selected disabled hidden>--</option>
@for ($i=0; $i<24; $i++) @for ($i = 0; $i < 24; $i++)
<option value="{{ str_pad($i, 2, '0', STR_PAD_LEFT) }}">{{ str_pad($i, 2, '0', STR_PAD_LEFT) }}</option> <option value="{{ str_pad($i, 2, '0', STR_PAD_LEFT) }}">{{ str_pad($i, 2, '0', STR_PAD_LEFT) }}</option>
@endfor @endfor
</select> </select>
@ -75,7 +69,7 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
<div class="col-md-4 col-lg-3" style="padding:0 0 0 0.75rem;"> <div class="col-md-4 col-lg-3" style="padding:0 0 0 0.75rem;">
<select name="add-pickup_time_minute" id="add-pickup_time_minute" class="form-control"> <select name="add-pickup_time_minute" id="add-pickup_time_minute" class="form-control">
<option value="" selected disabled hidden>--</option> <option value="" selected disabled hidden>--</option>
@for ($i=0; $i<60; $i++) @for ($i = 0; $i < 60; $i++)
<option value="{{ str_pad($i, 2, '0', STR_PAD_LEFT) }}">{{ str_pad($i, 2, '0', STR_PAD_LEFT) }}</option> <option value="{{ str_pad($i, 2, '0', STR_PAD_LEFT) }}">{{ str_pad($i, 2, '0', STR_PAD_LEFT) }}</option>
@endfor @endfor
</select> </select>
@ -85,13 +79,12 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
</div> </div>
<div class="row mb-3 d-flex align-items-center"> <div class="row mb-3 d-flex align-items-center">
<div class="col-5 mb-3"> <div class="col-5 mb-3">
<label for="add-pickup_zone" class="form-label">Lokasi Penjemputan</label> <label for="add-pickup_zone" class="form-label">Origin</label>
<select name="add-pickup_zone" id="add-pickup_zone" class="select2 form-control"> <select name="add-pickup_zone" id="add-pickup_zone" class="select2 form-control">
<option value="" selected disabled>Belum ada lokasi yang dipilih</option> <option value="" selected disabled>No origin location selected</option>
@if (Auth::user()->role === \App\Models\Users::ROLE_CLIENT_ADMIN) @if (Auth::user()->role === \App\Models\Users::ROLE_CLIENT_ADMIN)
@foreach ($pickups as $pickup) @foreach ($pickups as $pickup)
<option value="{{ $pickup->id }}" data-id="{{ $pickup->id }}" <option value="{{ $pickup->id }}" data-id="{{ $pickup->id }}" data-title="{{ $pickup->name }}" data-addr="{{ $pickup->fulladdress }}">
data-title="{{ $pickup->name }}" data-addr="{{ $pickup->fulladdress }}">
{{ $pickup->name }}</option> {{ $pickup->name }}</option>
@endforeach @endforeach
@endif @endif
@ -103,20 +96,19 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
<span class="ion-arrow-right-c text-danger" style="font-size: 15px"></span> <span class="ion-arrow-right-c text-danger" style="font-size: 15px"></span>
</div> </div>
<div class="col-5 mb-3"> <div class="col-5 mb-3">
<label for="add-drop_zone" class="form-label">Lokasi Pengantaran</label> <label for="add-drop_zone" class="form-label">Destination</label>
<select name="add-drop_zone" id="add-drop_zone" class="select2 form-control"> <select name="add-drop_zone" id="add-drop_zone" class="select2 form-control">
<option value="" selected disabled>Belum ada lokasi yang dipilih</option> <option value="" selected disabled>No destination location selected</option>
@if (Auth::user()->role === \App\Models\Users::ROLE_CLIENT_ADMIN) @if (Auth::user()->role === \App\Models\Users::ROLE_CLIENT_ADMIN)
@foreach ($drops as $drop) @foreach ($drops as $drop)
<option value="{{ $drop->id }}" data-id="{{ $drop->id }}" <option value="{{ $drop->id }}" data-id="{{ $drop->id }}" data-title="{{ $drop->name }}" data-addr="{{ $drop->fulladdress }}">
data-title="{{ $drop->name }}" data-addr="{{ $drop->fulladdress }}">
{{ $drop->name }}</option> {{ $drop->name }}</option>
@endforeach @endforeach
@endif @endif
</select> </select>
</div> </div>
</div> </div>
<div class="row d-flex align-items-center mb-3"> <div class="row d-flex align-items-center justify-content-between">
<div class="col-12 mb-3"> <div class="col-12 mb-3">
<p class="text-danger text-bold mb-0">Informasi Kendaraan</p> <p class="text-danger text-bold mb-0">Informasi Kendaraan</p>
{{-- <small>You must fill in at least 1 of the package information.</small> --}} {{-- <small>You must fill in at least 1 of the package information.</small> --}}
@ -138,21 +130,37 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
<div class="col-5 mb-3 d-flex align-items-center"> <div class="col-5 mb-3 d-flex align-items-center">
<input type="number" name="add-koli" id="add-koli" class="form-control w-75 me-2">pcs <input type="number" name="add-koli" id="add-koli" class="form-control w-75 me-2">pcs
</div> --}} </div> --}}
<div class="col-5 mb-3"> {{-- <div class="col-5 mb-3">
<label for="add-truck_type" class="form-label">Jenis Kendaraan</label> <label for="add-truck_type" class="form-label">Jenis Kendaraan</label>
<select name="add-truck_type" id="add-truck_type" class="select2 form-control"> <select name="add-truck_type" id="add-truck_type" class="select2 form-control">
{{-- <option value="" data-name="Let system choose automatically" selected>Let system
choose automatically
</option> --}}
<option value="" selected disabled>Pilih kendaraan</option> <option value="" selected disabled>Pilih kendaraan</option>
@foreach ($truck_types as $tt) @foreach ($truck_types as $tt)
<option value="{{ $tt->type_id }}" data-id="{{ $tt->id }}" data-type_id="{{ $tt->type_id }}" <option value="{{ $tt->type_id }}" data-id="{{ $tt->id }}" data-type_id="{{ $tt->type_id }}" data-name="{{ $tt->type_name }}" data-weight="{{ $tt->max_kg }}" data-cbm="{{ $tt->max_cbm }}" data-koli="{{ $tt->max_koli }}">
data-name="{{ $tt->type_name }}" data-weight="{{ $tt->max_kg }}"
data-cbm="{{ $tt->max_cbm }}" data-koli="{{ $tt->max_koli }}">
{{ $tt->type_name }}</option> {{ $tt->type_name }}</option>
@endforeach @endforeach
</select> </select>
</div> --}}
<div class="col-5 mb-3">
<label for="add-truck_type" class="form-label">Select Vehicle</label>
<select name="add-truck_type" id="add-truck_type" class="select2 form-control">
<option value="" selected disabled>Select Vehicle</option>
@foreach ($vehicle as $_vehicle)
<option value="{{ $_vehicle->vid }}" data-id="{{ $_vehicle->vid }}" data-type_id="{{ $_vehicle->vid }}" data-name="{{ $_vehicle->name }}">
{{ $_vehicle->name }}</option>
@endforeach
</select>
</div> </div>
<div class="col-5 mb-3">
<label for="add-driver" class="form-label">Driver</label>
<select name="add-driver" id="add-driver" class="select2 form-control">
<option value="" selected disabled>Select Driver</option>
@foreach ($driver as $_driver)
<option value="{{ $_driver->id }}" data-id="{{ $_driver->id }}" data-driver_id="{{ $_driver->id }}" data-name="{{ $_driver->fullname }}">
{{ $_driver->fullname }}</option>
@endforeach
</select>
</div>
</div> </div>
{{-- <div class="row d-flex align-items-center"> {{-- <div class="row d-flex align-items-center">
<div class="col-12 mb-3"> <div class="col-12 mb-3">
@ -172,7 +180,7 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
</div> </div>
</div> </div>
</div> --}} </div> --}}
<div class="row d-flex align-items-center mb-3"> <div class="row d-flex align-items-center mb-3 d-none">
<div class="col-12 mb-3"> <div class="col-12 mb-3">
<p class="text-danger text-bold mb-0">Asuransi</p> <p class="text-danger text-bold mb-0">Asuransi</p>
<small>Apakah Anda ingin menambahkan Asuransi untuk pengiriman ini?</small> <small>Apakah Anda ingin menambahkan Asuransi untuk pengiriman ini?</small>
@ -198,12 +206,11 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
<div class="row d-flex align-items-center"> <div class="row d-flex align-items-center">
<div class="col-8"> <div class="col-8">
<p class="mb-0"> <p class="mb-0">
Sudahkah Anda mengisi semua kolom yang ada? Have you filled in all the required fields?
</p> </p>
</div> </div>
<div class="col-4 text-end"> <div class="col-4 text-end">
<button class="btn btn-warning btn-block btn-sm" id="btnCalculate">Kalkulasi <button class="btn btn-warning btn-block btn-sm" id="btnCalculate">&nbsp;&nbsp;&nbsp;&nbsp;Next&nbsp;&nbsp;&nbsp;&nbsp;</button>
Sekarang</button>
</div> </div>
</div> </div>
</div> </div>
@ -211,6 +218,7 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
</div> </div>
{{-- Checkout --}} {{-- Checkout --}}
<div class="col-sm-6 d-none" id="checkOutView"> <div class="col-sm-6 d-none" id="checkOutView">
{{-- <div class="col-sm-6"> --}}
<div class="card"> <div class="card">
<div class="card-header"> <div class="card-header">
<div class="row d-flex align-items-center"> <div class="row d-flex align-items-center">
@ -231,10 +239,10 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
<div class="card-body pb-0 checkoutBody"> <div class="card-body pb-0 checkoutBody">
<div class="row d-flex align-items-center"> <div class="row d-flex align-items-center">
<div class="col-12 mb-3"> <div class="col-12 mb-3">
<p class="text-danger text-bold mb-0">Penjemputan dan Pengantaran</p> <p class="text-danger text-bold mb-0">Orign & Destination</p>
</div> </div>
<div class="col-sm-5 mb-3"> <div class="col-sm-5 mb-3">
<label for="" class="form-label">Tanggal Penjemputan</label> <label for="" class="form-label">Date</label>
<div class="card bg-light border mb-0"> <div class="card bg-light border mb-0">
<div class="card-body"> <div class="card-body">
<p id="checkout-pickup_at" class="mb-0">Feb 22, 2022 23:59:00</p> <p id="checkout-pickup_at" class="mb-0">Feb 22, 2022 23:59:00</p>
@ -243,17 +251,18 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
</div> </div>
<div class="col-sm-2"></div> <div class="col-sm-2"></div>
<div class="col-sm-5 mb-3"> <div class="col-sm-5 mb-3">
<label for="" class="form-label">Jenis Kendaraan</label> <label for="" class="form-label">Vehicle</label>
<div class="card bg-light border mb-0"> <div class="card bg-light border mb-0">
<div class="card-body"> <div class="card-body">
<p id="checkout-truck_type" class="mb-0">CDD Long</p> <p id="checkout-truck_type" class="mb-0">CDD Long</p>
<p id="checkout-driver" class="mb-0">CDD Long</p>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="row d-flex align-items-center"> <div class="row d-flex align-items-center">
<div class="col-5 mb-3"> <div class="col-5 mb-3">
<label for="" class="form-label">Lokasi Penjemputan</label> <label for="" class="form-label">Origin</label>
<div class="card bg-light border mb-0"> <div class="card bg-light border mb-0">
<div class="card-body"> <div class="card-body">
<p id="checkout-pickup_zone_title" class="text-bold mb-2">Gudang Pluit SiCepat <p id="checkout-pickup_zone_title" class="text-bold mb-2">Gudang Pluit SiCepat
@ -270,7 +279,7 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
<span class="ion-arrow-right-c text-danger" style="font-size: 15px"></span> <span class="ion-arrow-right-c text-danger" style="font-size: 15px"></span>
</div> </div>
<div class="col-5 mb-3"> <div class="col-5 mb-3">
<label for="" class="form-label">Lokasi Pengantaran</label> <label for="" class="form-label">Destination</label>
<div class="card bg-light border mb-0"> <div class="card bg-light border mb-0">
<div class="card-body"> <div class="card-body">
<p id="checkout-drop_zone_title" class="text-bold mb-2">Kantor Pusat SiCepat <p id="checkout-drop_zone_title" class="text-bold mb-2">Kantor Pusat SiCepat
@ -318,12 +327,12 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
</div> </div>
</div> </div>
</div> --}} </div> --}}
<div class="row"> <div class="row d-none">
<div class="col-12"> <div class="col-12">
<hr> <hr>
</div> </div>
</div> </div>
<div class="row d-flex align-items-center"> <div class="row d-flex align-items-center d-none">
<div class="col-12 mb-3 mt-3"> <div class="col-12 mb-3 mt-3">
<p class="text-danger text-bold mb-0">Pilih Layanan</p> <p class="text-danger text-bold mb-0">Pilih Layanan</p>
<small>Berikut layanan yang tersedia untuk pesanan Anda</small> <small>Berikut layanan yang tersedia untuk pesanan Anda</small>
@ -378,11 +387,7 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
<div class="row mb-3 d-flex align-items-center"> <div class="row mb-3 d-flex align-items-center">
<div class="col-6"> <div class="col-6">
<div class="form-check"> <div class="form-check">
<input class="form-check-input" type="radio" name="chooseFleet" <input class="form-check-input" type="radio" name="chooseFleet" data-lead_time_id="${opt.lead_time_id}" data-lead_time="${opt.lead_time}" data-price="${opt.price}" data-real_price="${opt.real_price}" data-disc_price="${opt.disc_price}">
data-lead_time_id="${opt.lead_time_id}"
data-lead_time="${opt.lead_time}" data-price="${opt.price}"
data-real_price="${opt.real_price}"
data-disc_price="${opt.disc_price}">
<label class="form-check-label text-success"> <label class="form-check-label text-success">
1 Hari <span class="badge bg-success ms-2">Best services</span> 1 Hari <span class="badge bg-success ms-2">Best services</span>
</label> </label>
@ -397,11 +402,7 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
<div class="row mb-3 d-flex align-items-center"> <div class="row mb-3 d-flex align-items-center">
<div class="col-6"> <div class="col-6">
<div class="form-check"> <div class="form-check">
<input class="form-check-input" type="radio" name="chooseFleet" <input class="form-check-input" type="radio" name="chooseFleet" data-lead_time_id="${opt.lead_time_id}" data-lead_time="${opt.lead_time}" data-price="${opt.price}" data-real_price="${opt.real_price}" data-disc_price="${opt.disc_price}">
data-lead_time_id="${opt.lead_time_id}"
data-lead_time="${opt.lead_time}" data-price="${opt.price}"
data-real_price="${opt.real_price}"
data-disc_price="${opt.disc_price}">
<label class="form-check-label text-dark"> <label class="form-check-label text-dark">
2 Hari 2 Hari
</label> </label>
@ -427,15 +428,13 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
<div class="card-footer checkoutBody"> <div class="card-footer checkoutBody">
<div class="row d-flex align-items-center"> <div class="row d-flex align-items-center">
<div class="col-8"> <div class="col-8">
<p class="text-danger mb-0">Harga layanan yang tercantum adalah harga perkiraan, bukan
harga Final.</p>
<p class="mb-0"> <p class="mb-0">
Sudahkah Anda memeriksa ulang informasi pesanan? Have you reviewed the job information?
</p> </p>
</div> </div>
<div class="col-4 text-end"> <div class="col-4 text-end">
<button class="btn btn-danger btn-block btn-sm" id="btnOrder" {{-- onclick="location.href='{{ route('view_user_client_transaction') }}'" --}} {{-- <button class="btn btn-danger btn-block btn-sm" id="btnOrder" disabled>Pesan Sekarang</button> --}}
disabled>Pesan Sekarang</button> <button class="btn btn-danger btn-block btn-sm" id="btnOrder">Submit</button>
<div id="btnOrderSpinner" class="d-none"> <div id="btnOrderSpinner" class="d-none">
<div class="spinner-border" role="status"> <div class="spinner-border" role="status">
<span class="visually-hidden">Loading...</span> <span class="visually-hidden">Loading...</span>
@ -452,9 +451,7 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
@endsection @endsection
@section('customjs') @section('customjs')
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.18.2/xlsx.full.min.js" <script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.18.2/xlsx.full.min.js" integrity="sha512-oCjkwxjURabnte5K4Zeoc+hZ/G5pQE7GI4DYl+0wl6WaJIkBjb9FvUIaMU3lOPoBMSRZZ7QrczpGQoBFAKKB1Q==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
integrity="sha512-oCjkwxjURabnte5K4Zeoc+hZ/G5pQE7GI4DYl+0wl6WaJIkBjb9FvUIaMU3lOPoBMSRZZ7QrczpGQoBFAKKB1Q=="
crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script> <script>
$("#insuranceCheck").change(function() { $("#insuranceCheck").change(function() {
$("#insurancePrice").toggleClass("d-none") $("#insurancePrice").toggleClass("d-none")
@ -464,6 +461,12 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
$("#insuranceInput").prop('required', true); $("#insuranceInput").prop('required', true);
} }
}) })
$(document).ready(function() {
setTimeout(function() {
$('select[name=add-client]').val('1').change();
}, 100);
});
</script> </script>
<script> <script>
'use strict'; 'use strict';
@ -495,14 +498,13 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
TrxNew.activate(); TrxNew.activate();
}, },
event: function() { event: function() {
$('#checkout-group_pricing').on('click', 'input[name=chooseFleet]', function() { // $('#checkout-group_pricing').on('click', 'input[name=chooseFleet]', function() {
$('#btnOrder').prop("disabled", false); // $('#btnOrder').prop("disabled", false);
}); // });
// min date is today // min date is today
let TimeISOString = moment().toISOString().split('T'); let TimeISOString = moment().toISOString().split('T');
let time = TimeISOString[1].split('.')[0].split(':'); let time = TimeISOString[1].split('.')[0].split(':');
$('#add-pickup_date').attr('min', TimeISOString[0]); $('#add-pickup_date').attr('min', TimeISOString[0]);
// $('#add-pickup_time').attr('min', time[0] + ':' + time[1]);
}, },
}; };
@ -745,8 +747,8 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
TrxNew.hideCheckout(); TrxNew.hideCheckout();
let selected = $('#add-client :selected'); let selected = $('#add-client :selected');
$('#add-pickup_zone').html('<option value="" selected disabled>Belum ada lokasi yang dipilih</option>'); $('#add-pickup_zone').html('<option value="" selected disabled>No location has been selected.</option>');
$('#add-drop_zone').html('<option value="" selected disabled>Belum ada lokasi yang dipilih</option>'); $('#add-drop_zone').html('<option value="" selected disabled>No location has been selected.</option>');
const listPickupZones = await Req.list_client_zone({ const listPickupZones = await Req.list_client_zone({
cptid: selected.data('cptid'), cptid: selected.data('cptid'),
@ -844,8 +846,12 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
// data.koli = Number($('#add-koli').val() || 'n'); // data.koli = Number($('#add-koli').val() || 'n');
let truck_type = $('#add-truck_type :selected'); let truck_type = $('#add-truck_type :selected');
data.truck_type_id = truck_type.data('type_id'); data.vehicle_id = truck_type.data('type_id');
data.truck_type_name = truck_type.data('name')?.trim(); data.vehicle_name = truck_type.data('name')?.trim();
let driver = $('#add-driver :selected');
data.driver_id = driver.data('driver_id');
data.driver_name = driver.data('name')?.trim();
// data.truck_type_weight = truck_type.data('weight'); // data.truck_type_weight = truck_type.data('weight');
// data.truck_type_cbm = truck_type.data('cbm'); // data.truck_type_cbm = truck_type.data('cbm');
// data.truck_type_koli = truck_type.data('koli'); // data.truck_type_koli = truck_type.data('koli');
@ -872,25 +878,26 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
}, },
checkData: function(data, isAlert = false) { checkData: function(data, isAlert = false) {
if (data.pickup_at < 1 || isNaN(data.pickup_at)) { if (data.pickup_at < 1 || isNaN(data.pickup_at)) {
if (isAlert) Helper.toast('Warning', 'just now', 'Pickup date / time not valid'); if (isAlert) Helper.toast('Warning', 'just now', 'Date / time not valid');
return false; return false;
} }
if (data.pickup_at < moment().unix()) { if (data.pickup_at < moment().unix()) {
if (isAlert) Helper.toast('Warning', 'just now', if (isAlert) Helper.toast('Warning', 'just now',
'Pickup date / time is less than the current date / time'); 'Date / time is less than the current date / time');
return false; return false;
} }
if (data.pickup_at < moment().add(3, 'hours').unix()) { // if (data.pickup_at < moment().add(3, 'hours').unix()) {
if (data.pickup_at < moment().add(5, 'minutes').unix()) {
if (isAlert) Helper.toast('Warning', 'just now', if (isAlert) Helper.toast('Warning', 'just now',
'Pickup time minimum 3 hours from now'); 'The selected time is too soon. Minimum is 5 minutes from now.');
return false; return false;
} }
if (typeof data.pickup_zone_id == 'undefined') { if (typeof data.pickup_zone_id == 'undefined') {
if (isAlert) Helper.toast('Warning', 'just now', 'Pickup zone not valid'); if (isAlert) Helper.toast('Warning', 'just now', 'Origin zone not valid');
return false; return false;
} }
if (typeof data.drop_zone_id == 'undefined') { if (typeof data.drop_zone_id == 'undefined') {
if (isAlert) Helper.toast('Warning', 'just now', 'Drop zone not valid'); if (isAlert) Helper.toast('Warning', 'just now', 'Destination zone not valid');
return false; return false;
} }
@ -900,23 +907,23 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
// 'weight / volume / koli must be provided at least 1 of them'); // 'weight / volume / koli must be provided at least 1 of them');
// return false; // return false;
// } // }
// if (typeof data.truck_type_id != 'undefined') { // if (typeof data.vehicle_id != 'undefined') {
// if (!isNaN(data.weight) && data.truck_type_weight != 0 && data.weight > data // if (!isNaN(data.weight) && data.truck_type_weight != 0 && data.weight > data
// .truck_type_weight) { // .truck_type_weight) {
// if (isAlert) Helper.toast('Warning', 'just now', // if (isAlert) Helper.toast('Warning', 'just now',
// `maximum weight for type truck ${data.truck_type_name} is ${data.truck_type_weight} Kg` // `maximum weight for type truck ${data.vehicle_name} is ${data.truck_type_weight} Kg`
// ); // );
// return false; // return false;
// } // }
// if (!isNaN(data.cbm) && data.truck_type_cbm != 0 && data.cbm > data.truck_type_cbm) { // if (!isNaN(data.cbm) && data.truck_type_cbm != 0 && data.cbm > data.truck_type_cbm) {
// if (isAlert) Helper.toast('Warning', 'just now', // if (isAlert) Helper.toast('Warning', 'just now',
// `maximum volume for type truck ${data.truck_type_name} is ${data.truck_type_cbm} m³` // `maximum volume for type truck ${data.vehicle_name} is ${data.truck_type_cbm} m³`
// ); // );
// return false; // return false;
// } // }
// if (!isNaN(data.koli) && data.truck_type_koli != 0 && data.koli > data.truck_type_koli) { // if (!isNaN(data.koli) && data.truck_type_koli != 0 && data.koli > data.truck_type_koli) {
// if (isAlert) Helper.toast('Warning', 'just now', // if (isAlert) Helper.toast('Warning', 'just now',
// `maximum koli for type truck ${data.truck_type_name} is ${data.truck_type_koli} Pcs` // `maximum koli for type truck ${data.vehicle_name} is ${data.truck_type_koli} Pcs`
// ); // );
// return false; // return false;
// } // }
@ -1048,7 +1055,9 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
`); `);
} }
$('#checkout-truck_type').text(data.truck_type_name); $('#checkout-truck_type').text(data.vehicle_name);
console.log("driver:", data.driver_name);
$('#checkout-driver').text(data.driver_name);
$('#checkOutView').removeClass('d-none'); $('#checkOutView').removeClass('d-none');
$('#checkOutView').addClass('d-block'); $('#checkOutView').addClass('d-block');
@ -1056,7 +1065,7 @@ if (Auth::user()->role === \App\Models\Users::ROLE_ADMIN) {
hideCheckout: function() { hideCheckout: function() {
$('#checkOutView').addClass('d-none'); $('#checkOutView').addClass('d-none');
$('#checkOutView').removeClass('d-block'); $('#checkOutView').removeClass('d-block');
$('#btnOrder').attr('disabled', true); $('#btnOrder').attr('disabled', false);
}, },
downloadTemplatePackingList: function() { downloadTemplatePackingList: function() {
const fileName = 'template_packing_list.xlsx'; const fileName = 'template_packing_list.xlsx';

View File

@ -46,7 +46,7 @@
<p class="mb-0">BCA (014)</p> <p class="mb-0">BCA (014)</p>
<p class="mb-0">Bank Central Asia</p> <p class="mb-0">Bank Central Asia</p>
</td> </td>
<td class="text-start">Rafif</td> <td class="text-start">Emrsyf</td>
<td class="text-center">0101010100101</td> <td class="text-center">0101010100101</td>
<td class="text-center">2.500.000</td> <td class="text-center">2.500.000</td>
<td class="text-center"><span class="text-danger">Fail</span></td> <td class="text-center"><span class="text-danger">Fail</span></td>
@ -63,8 +63,7 @@
</div> </div>
{{-- modal resend pocket money tf --}} {{-- modal resend pocket money tf --}}
<div class="modal fade" id="mdlResendPocket" data-bs-backdrop="static" data-bs-keyboard="false" <div class="modal fade" id="mdlResendPocket" data-bs-backdrop="static" data-bs-keyboard="false" aria-labelledby="mdlResendPocketLabel" aria-hidden="true">
aria-labelledby="mdlResendPocketLabel" aria-hidden="true">
<div class="modal-dialog modal-md modal-dialog-centered modal-dialog-scrollable"> <div class="modal-dialog modal-md modal-dialog-centered modal-dialog-scrollable">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
@ -103,7 +102,7 @@
@endsection @endsection
@section('customjs') @section('customjs')
<script> <script>
'use strict' 'use strict'
const State = { const State = {
@ -195,7 +194,7 @@
$(td).attr('data-checkpoint_id', rowData.ord_checkpoint_id); $(td).attr('data-checkpoint_id', rowData.ord_checkpoint_id);
}, },
render: function(data, type, row, meta) { render: function(data, type, row, meta) {
return '#'+data; return '#' + data;
}, },
}, },
// { // {
@ -304,7 +303,7 @@
}; };
const ResendPocket = { const ResendPocket = {
activate: function () { activate: function() {
$('#tTable').on('click', '.btnResendPocket', async function(e) { $('#tTable').on('click', '.btnResendPocket', async function(e) {
let checkpoint_id = $(e.target).closest('tr').find('td[data-checkpoint_id]').data('checkpoint_id'); let checkpoint_id = $(e.target).closest('tr').find('td[data-checkpoint_id]').data('checkpoint_id');
console.log(checkpoint_id); console.log(checkpoint_id);
@ -397,5 +396,5 @@
} }
Wrapper.activate(); Wrapper.activate();
</script> </script>
@endsection @endsection

View File

@ -18,26 +18,26 @@
@if ($user_role === \App\Models\Users::ROLE_ADMIN || $user_role === \App\Models\Users::ROLE_VENDOR || $user_role === \App\Models\Users::ROLE_CLIENT_ADMIN || $user_role === \App\Models\Users::ROLE_SPECIAL_TRACKING) @if ($user_role === \App\Models\Users::ROLE_ADMIN || $user_role === \App\Models\Users::ROLE_VENDOR || $user_role === \App\Models\Users::ROLE_CLIENT_ADMIN || $user_role === \App\Models\Users::ROLE_SPECIAL_TRACKING)
<li class="nav-item {{ Request::segment(1) == 'dashboard' ? 'active' : '' }}"> <li class="nav-item {{ Request::segment(1) == 'dashboard' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_dashboard') }}"> <a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_dashboard') }}">
Beranda Dashboard
</a> </a>
</li> </li>
@endif @endif
@if ($user_role === \App\Models\Users::ROLE_VENDOR) @if ($user_role === \App\Models\Users::ROLE_VENDOR)
{{-- <li class="nav-item {{ Request::path() == 'user/vendor/transactions' || Request::path() == 'user/vendor/transactions/newOrder' ? 'active' : '' }}"> {{-- <li class="nav-item {{ Request::path() == 'user/vendor/transactions' || Request::path() == 'user/vendor/transactions/newOrder' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ url('user/vendor/transactions/newOrder') }}"> <a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ url('user/vendor/transactions/newOrder') }}">
Transaksi Transaction
</a> </a>
</li> --}} </li> --}}
<li class="nav-item {{ Request::path() == 'user/vendor/transactions' || Request::path() == 'transactions/add/special' ? 'active' : '' }}"> <li class="nav-item {{ Request::path() == 'user/vendor/transactions' || Request::path() == 'transactions/add/special' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ url('user/vendor/transactions') }}"> <a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ url('user/vendor/transactions') }}">
Transaksi Transaction
</a> </a>
</li> </li>
@endif @endif
@if ($user_role === \App\Models\Users::ROLE_VENDOR) @if ($user_role === \App\Models\Users::ROLE_VENDOR)
<li class="nav-item {{ Request::segment(1) == 'zone' ? 'active' : '' }}"> <li class="nav-item {{ Request::segment(1) == 'zone' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_zone') }}"> <a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_zone') }}">
Zona Zone
</a> </a>
</li> </li>
@endif @endif
@ -52,27 +52,22 @@
@if ($user_role === \App\Models\Users::ROLE_ADMIN) @if ($user_role === \App\Models\Users::ROLE_ADMIN)
<li class="nav-item {{ Request::segment(1) == 'transactions' ? 'active' : '' }}"> <li class="nav-item {{ Request::segment(1) == 'transactions' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_transactions') }}"> <a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_transactions') }}">
Transaksi Job
</a> </a>
</li> </li>
<li class="nav-item {{ Request::segment(1) == 'clients' ? 'active' : '' }}"> <li class="nav-item {{ Request::segment(1) == 'clients' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_clients') }}"> <a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_clients') }}">
Perusahaan Company
</a> </a>
</li> </li>
<li class="nav-item {{ Request::segment(1) == 'zone' ? 'active' : '' }}"> <li class="nav-item {{ Request::segment(1) == 'zone' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_zone') }}"> <a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_zone') }}">
Zona Zone
</a>
</li>
<li class="nav-item {{ Request::segment(1) == 'users' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_users') }}">
Pengguna
</a> </a>
</li> </li>
<li class="nav-item dropdown {{ Request::segment(1) == 'config' ? 'active' : '' }}"> <li class="nav-item dropdown {{ Request::segment(1) == 'config' ? 'active' : '' }}">
<a class="nav-link dropdown-toggle" href="#" id="dropdownConfig" role="button" data-bs-toggle="dropdown" aria-expanded="false"> <a class="nav-link dropdown-toggle" href="#" id="dropdownConfig" role="button" data-bs-toggle="dropdown" aria-expanded="false">
Konfigurasi Configuration
</a> </a>
<ul class="dropdown-menu" style="right: 0; left: auto;" aria-labelledby="dropdownConfig"> <ul class="dropdown-menu" style="right: 0; left: auto;" aria-labelledby="dropdownConfig">
{{-- <li> {{-- <li>
@ -114,15 +109,20 @@
{{-- @if ($user_role === \App\Models\Users::ROLE_ADMIN) --}} {{-- @if ($user_role === \App\Models\Users::ROLE_ADMIN) --}}
<li class="nav-item {{ Request::segment(1) == 'drivers' ? 'active' : '' }}"> <li class="nav-item {{ Request::segment(1) == 'drivers' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_drivers') }}"> <a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_drivers') }}">
Pengemudi Driver
</a> </a>
</li> </li>
<li class="nav-item {{ Request::segment(1) == 'vehicles' ? 'active' : '' }}"> <li class="nav-item {{ Request::segment(1) == 'vehicles' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_vehicles') }}"> <a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_vehicles') }}">
Kendaraan Vehicle
</a> </a>
</li> </li>
@endif @endif
<li class="nav-item {{ Request::segment(1) == 'users' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_users') }}">
User
</a>
</li>
{{-- only admin and client --}} {{-- only admin and client --}}
{{-- @if ($user_role === \App\Models\Users::ROLE_ADMIN || $user_role === \App\Models\Users::ROLE_CLIENT_ADMIN) {{-- @if ($user_role === \App\Models\Users::ROLE_ADMIN || $user_role === \App\Models\Users::ROLE_CLIENT_ADMIN)
@ -137,7 +137,7 @@
@if ($user_role === \App\Models\Users::ROLE_CLIENT_ADMIN) @if ($user_role === \App\Models\Users::ROLE_CLIENT_ADMIN)
<li class="nav-item {{ Request::path() == 'user/clients/transactions' || Request::path() == 'user/clients/transactions/addNew' || Request::path() == 'user/clients/transactions/view' ? 'active' : '' }}"> <li class="nav-item {{ Request::path() == 'user/clients/transactions' || Request::path() == 'user/clients/transactions/addNew' || Request::path() == 'user/clients/transactions/view' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_user_client_transaction') }}"> <a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="{{ route('view_user_client_transaction') }}">
Transaksi Transaction
</a> </a>
</li> </li>
{{-- <li class="nav-item {{ Request::segment(1) == 'zone' ? 'active' : '' }}"> {{-- <li class="nav-item {{ Request::segment(1) == 'zone' ? 'active' : '' }}">
@ -167,7 +167,7 @@
@if ($user_role === \App\Models\Users::ROLE_FINANCE) @if ($user_role === \App\Models\Users::ROLE_FINANCE)
<li class="nav-item {{ Request::segment(1) == 'dashboard' ? 'active' : '' }}"> <li class="nav-item {{ Request::segment(1) == 'dashboard' ? 'active' : '' }}">
<a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="#"> <a class="nav-link d-flex align-items-center text-capitalize" aria-current="page" href="#">
Beranda Dashboard
</a> </a>
</li> </li>
<li class="nav-item {{ Request::segment(3) == 'ledgerBalanceList' ? 'active' : '' }}"> <li class="nav-item {{ Request::segment(3) == 'ledgerBalanceList' ? 'active' : '' }}">
@ -237,22 +237,10 @@
<div class="col-auto"> <div class="col-auto">
<p class="text-bold mb-0">FLEET MANAGER</p> <p class="text-bold mb-0">FLEET MANAGER</p>
</div> </div>
<div class="col-5 d-flex align-items-center"> {{-- <div class="col-5 d-flex align-items-center">
<span class="me-2">Perusahaan</span> <span class="me-2">Company</span>
<select name="filter-company" class="select2 form-control" id="filter-company" style="width:100%;"> <select name="filter-company" class="select2 form-control" id="filter-company" style="width:100%;">
<option value="all">Semua Perusahaan</option> <option value="all">Semua Company</option>
</select>
</div>
{{-- <div class="col-2 d-flex align-items-center">
<span class="me-2">Divisi</span>
<select name="" class="select2 form-control" id="">
<option value="">Semua Divisi</option>
</select>
</div>
<div class="col-2 d-flex align-items-center">
<span class="me-2">Grup</span>
<select name="" class="select2 form-control" id="">
<option value="">Semua Grup</option>
</select> </select>
</div> --}} </div> --}}
</div> </div>

View File

@ -18,22 +18,22 @@ use App\Http\Controllers\Api\AuthController;
// Route::middleware('auth:api')->get('/user', function (Request $request) { // Route::middleware('auth:api')->get('/user', function (Request $request) {
// return $request->user(); // return $request->user();
// }); // });
Route::prefix("gps")->group(function () { // Route::prefix("gps")->group(function () {
Route::post("/v1/dummy/haversineGreatCircleDistance", "DummyController@api_haversineGreatCircleDistance"); Route::post("/v1/dummy/haversineGreatCircleDistance", "DummyController@api_haversineGreatCircleDistance");
Route::post("/v1/dummy/addBatchDummyTracks", "DummyController@api_addBatchDummyTracks"); Route::post("/v1/dummy/addBatchDummyTracks", "DummyController@api_addBatchDummyTracks");
Route::get("/v1/dummy/getTracksBySeconds", "DummyController@api_getTracksBySeconds"); Route::get("/v1/dummy/getTracksBySeconds", "DummyController@api_getTracksBySeconds");
Route::post("/v1/dummy/addDummyHub", "DummyController@api_addDummyHub"); Route::post("/v1/dummy/addDummyHub", "DummyController@api_addDummyHub");
Route::post("/v1/dummy/nearestHub", "DummyController@api_nearestHub"); Route::post("/v1/dummy/nearestHub", "DummyController@api_nearestHub");
Route::post("/v1/login", "AuthController@api_login")->name("api_login"); Route::post("/v1/login", "AuthController@api_login")->name("api_login");
Route::post("/v1/logout", "AuthController@api_logout")->name("api_logout"); Route::post("/v1/logout", "AuthController@api_logout")->name("api_logout");
// Route::post('/v1/profile', 'AuthController@api_profile')->name('api_profile'); // Route::post('/v1/profile', 'AuthController@api_profile')->name('api_profile');
Route::post("/v1/inject/add_gps_zones_v1", "InjectController@add_gps_zones_v1"); Route::post("/v1/inject/add_gps_zones_v1", "InjectController@add_gps_zones_v1");
Route::post("/v1/inject/add_vhc_tracks_v1", "InjectController@add_vhc_tracks_v1"); Route::post("/v1/inject/add_vhc_tracks_v1", "InjectController@add_vhc_tracks_v1");
Route::post("/v1/inject/add_conf_rate_v1", "InjectController@add_conf_rate_v1"); Route::post("/v1/inject/add_conf_rate_v1", "InjectController@add_conf_rate_v1");
Route::post("/v1/storage/save_photos", "StorageController@save_photos")->name("api_storage_save_photos"); Route::post("/v1/storage/save_photos", "StorageController@save_photos")->name("api_storage_save_photos");
Route::post("auth/login", [AuthController::class, "login"]); Route::post("auth/login", [AuthController::class, "login"]);
}); // });

View File

@ -12,20 +12,20 @@ use Illuminate\Support\Facades\Route;
| contains the "web" middleware group. Now create something great! | contains the "web" middleware group. Now create something great!
| |
*/ */
Route::prefix("gps")->group(function () { // Route::prefix("gps")->group(function () {
Route::get("/login", "AuthController@view_login")->name("view_login"); Route::get("/login", "AuthController@view_login")->name("view_login");
Route::get("/admin", "AuthController@view_login_admin")->name("login_admin"); Route::get("/admin", "AuthController@view_login_admin")->name("login_admin");
Route::get("/client", "AuthController@view_login_client")->name("login_client"); Route::get("/client", "AuthController@view_login_client")->name("login_client");
Route::get("/vendor", "AuthController@view_login_vendor")->name("login_vendor"); Route::get("/vendor", "AuthController@view_login_vendor")->name("login_vendor");
Route::get("/checker", "AuthController@view_login_checker")->name("login_checker"); Route::get("/checker", "AuthController@view_login_checker")->name("login_checker");
Auth::routes([ Auth::routes([
"register" => false, "register" => false,
// 'reset' => false, // 'reset' => false,
// 'verify' => false, // 'verify' => false,
]); ]);
// Route::get('/home', 'HomeController@index')->name('home'); // Route::get('/home', 'HomeController@index')->name('home');
Route::middleware(["auth", "auth.user"])->group(function () { Route::middleware(["auth", "auth.user"])->group(function () {
/** /**
* START VIEWS * START VIEWS
*/ */
@ -36,12 +36,8 @@ Route::prefix("gps")->group(function () {
Route::get("/transactions/confirm", "MenuController@view_transactions_confirm")->name( Route::get("/transactions/confirm", "MenuController@view_transactions_confirm")->name(
"view_transactions_confirm" "view_transactions_confirm"
); );
Route::get("/transactions/view", "MenuController@view_transactions_view")->name( Route::get("/transactions/view", "MenuController@view_transactions_view")->name("view_transactions_view");
"view_transactions_view" Route::get("/transactions/add", "MenuController@view_transactions_add")->name("view_transactions_add");
);
Route::get("/transactions/add", "MenuController@view_transactions_add")->name(
"view_transactions_add"
);
Route::get("/transactions/download_do", "TransactionController@view_transactions_download_do")->name( Route::get("/transactions/download_do", "TransactionController@view_transactions_download_do")->name(
"view_transactions_download_do" "view_transactions_download_do"
); );
@ -65,10 +61,9 @@ Route::prefix("gps")->group(function () {
"/transactions/download_report_acdnt", "/transactions/download_report_acdnt",
"TransactionController@view_transactions_download_report_acdnt" "TransactionController@view_transactions_download_report_acdnt"
)->name("view_transactions_download_report_acdnt"); )->name("view_transactions_download_report_acdnt");
Route::get( Route::get("/transactions/download_spk", "TransactionController@view_transactions_download_spk")->name(
"/transactions/download_spk", "view_transactions_download_spk"
"TransactionController@view_transactions_download_spk" );
)->name("view_transactions_download_spk");
Route::get( Route::get(
"/transactions/download_summary", "/transactions/download_summary",
"TransactionController@view_transactions_download_summary" "TransactionController@view_transactions_download_summary"
@ -90,9 +85,7 @@ Route::prefix("gps")->group(function () {
Route::get("/profile", "UsersController@view_profile")->name("view_profile"); Route::get("/profile", "UsersController@view_profile")->name("view_profile");
Route::get("/config/rates", "ConfRateController@view_rates")->name("view_config_rates"); Route::get("/config/rates", "ConfRateController@view_rates")->name("view_config_rates");
Route::get("/config/pocket", "PocketController@view_pockets")->name("view_config_pockets"); Route::get("/config/pocket", "PocketController@view_pockets")->name("view_config_pockets");
Route::get("/config/insurances", "InsuranceController@view_insurances")->name( Route::get("/config/insurances", "InsuranceController@view_insurances")->name("view_config_insurances");
"view_config_insurances"
);
Route::get("/config/static_insurances", "StaticInsuranceController@view_static_insurances")->name( Route::get("/config/static_insurances", "StaticInsuranceController@view_static_insurances")->name(
"view_config_static_insurances" "view_config_static_insurances"
); );
@ -108,17 +101,14 @@ Route::prefix("gps")->group(function () {
Route::get("/config/logbook_types", "LogbookTypesController@view_lgb_types")->name( Route::get("/config/logbook_types", "LogbookTypesController@view_lgb_types")->name(
"view_config_lgb_types" "view_config_lgb_types"
); );
Route::get("/config/logbook_keys", "LogbookKeysController@view_lgb_keys")->name( Route::get("/config/logbook_keys", "LogbookKeysController@view_lgb_keys")->name("view_config_lgb_keys");
"view_config_lgb_keys"
);
Route::get("/user/vendor/transactions", "MenuController@view_user_vendor_transaction")->name( Route::get("/user/vendor/transactions", "MenuController@view_user_vendor_transaction")->name(
"view_user_vendor_transaction" "view_user_vendor_transaction"
); );
Route::get( Route::get("/user/vendor/transactions/view", "MenuController@view_user_vendor_transaction_view")->name(
"/user/vendor/transactions/view", "view_user_vendor_transaction_view"
"MenuController@view_user_vendor_transaction_view" );
)->name("view_user_vendor_transaction_view");
Route::get( Route::get(
"/user/vendor/transactions/newOrder", "/user/vendor/transactions/newOrder",
"MenuController@view_user_vendor_transaction_new_order" "MenuController@view_user_vendor_transaction_new_order"
@ -140,19 +130,15 @@ Route::prefix("gps")->group(function () {
Route::get("/user/clients/transactions", "MenuController@view_user_client_transaction")->name( Route::get("/user/clients/transactions", "MenuController@view_user_client_transaction")->name(
"view_user_client_transaction" "view_user_client_transaction"
); );
Route::get( Route::get("/user/clients/transactions/view", "MenuController@view_user_client_transaction_view")->name(
"/user/clients/transactions/view", "view_user_client_transaction_view"
"MenuController@view_user_client_transaction_view" );
)->name("view_user_client_transaction_view"); Route::get("/user/clients/transactions/addNew", "MenuController@view_user_client_transaction_add")->name(
Route::get( "view_user_client_transaction_add"
"/user/clients/transactions/addNew", );
"MenuController@view_user_client_transaction_add"
)->name("view_user_client_transaction_add");
Route::get("/user/checker", "MenuController@view_user_checker")->name("view_user_checker"); Route::get("/user/checker", "MenuController@view_user_checker")->name("view_user_checker");
Route::get("/user/checker/view", "MenuController@view_user_checker_view")->name( Route::get("/user/checker/view", "MenuController@view_user_checker_view")->name("view_user_checker_view");
"view_user_checker_view"
);
Route::get("/user/checker/edt_zone", "ZoneController@view_user_checker_zone_edit")->name( Route::get("/user/checker/edt_zone", "ZoneController@view_user_checker_zone_edit")->name(
"view_user_checker_zone_edit" "view_user_checker_zone_edit"
); );
@ -279,14 +265,12 @@ Route::prefix("gps")->group(function () {
"api/user/clients/transactions/check_packing_list", "api/user/clients/transactions/check_packing_list",
"TransactionController@api_check_packing_list" "TransactionController@api_check_packing_list"
)->name("api_user_client_check_packing_list"); )->name("api_user_client_check_packing_list");
Route::post( Route::post("api/user/clients/transactions/checkout_v1", "TransactionController@api_checkout_v1")->name(
"api/user/clients/transactions/checkout_v1", "api_user_client_checkout_v1"
"TransactionController@api_checkout_v1" );
)->name("api_user_client_checkout_v1"); Route::post("api/user/clients/transactions/checkout_v2", "TransactionController@api_checkout_v2")->name(
Route::post( "api_user_client_checkout_v2"
"api/user/clients/transactions/checkout_v2", );
"TransactionController@api_checkout_v2"
)->name("api_user_client_checkout_v2");
Route::post( Route::post(
"api/user/clients/transactions/create_order_v1", "api/user/clients/transactions/create_order_v1",
"TransactionController@api_create_order_v1" "TransactionController@api_create_order_v1"
@ -295,10 +279,9 @@ Route::prefix("gps")->group(function () {
"api/user/clients/transactions/create_order_v2", "api/user/clients/transactions/create_order_v2",
"TransactionController@api_create_order_v2" "TransactionController@api_create_order_v2"
)->name("api_user_client_create_order_v2"); )->name("api_user_client_create_order_v2");
Route::get( Route::get("api/user/clients/transactions/list_orders", "TransactionController@api_list_orders")->name(
"api/user/clients/transactions/list_orders", "api_user_client_list_orders"
"TransactionController@api_list_orders" );
)->name("api_user_client_list_orders");
Route::get( Route::get(
"api/user/clients/transactions/download_package_list/{ord_id}", "api/user/clients/transactions/download_package_list/{ord_id}",
"TransactionController@api_download_package_list" "TransactionController@api_download_package_list"
@ -321,14 +304,12 @@ Route::prefix("gps")->group(function () {
"api/transactions/api_adm_assign_vendor", "api/transactions/api_adm_assign_vendor",
"TransactionController@api_adm_assign_vendor" "TransactionController@api_adm_assign_vendor"
)->name("api_adm_assign_vendor"); )->name("api_adm_assign_vendor");
Route::post( Route::post("api/transactions/adm_confirm_price", "TransactionController@api_adm_confirm_price")->name(
"api/transactions/adm_confirm_price", "api_adm_confirm_price"
"TransactionController@api_adm_confirm_price" );
)->name("api_adm_confirm_price"); Route::post("api/transactions/adm_invc_to_client", "TransactionController@api_adm_invc_to_client")->name(
Route::post( "api_adm_invc_to_client"
"api/transactions/adm_invc_to_client", );
"TransactionController@api_adm_invc_to_client"
)->name("api_adm_invc_to_client");
Route::post( Route::post(
"api/transactions/adm_confirm_client_pay", "api/transactions/adm_confirm_client_pay",
"TransactionController@api_adm_confirm_client_pay" "TransactionController@api_adm_confirm_client_pay"
@ -341,18 +322,16 @@ Route::prefix("gps")->group(function () {
"api/transactions/adm_confirm_vendor_pay", "api/transactions/adm_confirm_vendor_pay",
"TransactionController@api_adm_confirm_vendor_pay" "TransactionController@api_adm_confirm_vendor_pay"
)->name("api_adm_confirm_vendor_pay"); )->name("api_adm_confirm_vendor_pay");
Route::post( Route::post("api/transactions_spc/checkout_v1", "TransactionSpcController@api_trx_spc_checkout_v1")->name(
"api/transactions_spc/checkout_v1", "api_trx_spc_checkout_v1"
"TransactionSpcController@api_trx_spc_checkout_v1" );
)->name("api_trx_spc_checkout_v1");
Route::post( Route::post(
"api/transactions_spc/create_order_v1", "api/transactions_spc/create_order_v1",
"TransactionSpcController@api_trx_spc_create_order_v1" "TransactionSpcController@api_trx_spc_create_order_v1"
)->name("api_trx_spc_create_order_v1"); )->name("api_trx_spc_create_order_v1");
Route::delete( Route::delete("api/transactions/delete_order/{ord_id}", "TransactionController@api_delete_order")->name(
"api/transactions/delete_order/{ord_id}", "api_delete_order"
"TransactionController@api_delete_order" );
)->name("api_delete_order");
// vendor trx // vendor trx
Route::get("api/user/vendor/transactions/list_orders", "TransactionController@api_list_orders")->name( Route::get("api/user/vendor/transactions/list_orders", "TransactionController@api_list_orders")->name(
"api_user_vendor_list_orders" "api_user_vendor_list_orders"
@ -370,10 +349,9 @@ Route::prefix("gps")->group(function () {
"TransactionController@api_accept_order_v1" "TransactionController@api_accept_order_v1"
)->name("api_user_vendor_accept_order_v1"); )->name("api_user_vendor_accept_order_v1");
// checker trx // checker trx
Route::get( Route::get("api/user/checker/transactions/list_orders", "TransactionController@api_list_orders")->name(
"api/user/checker/transactions/list_orders", "api_user_checker_list_orders"
"TransactionController@api_list_orders" );
)->name("api_user_checker_list_orders");
Route::post( Route::post(
"api/user/checker/transactions/submit_items", "api/user/checker/transactions/submit_items",
"TransactionController@api_checker_submit_items" "TransactionController@api_checker_submit_items"
@ -390,10 +368,9 @@ Route::prefix("gps")->group(function () {
"api/user/checker/transactions/submit_accident", "api/user/checker/transactions/submit_accident",
"TransactionController@api_checker_submit_accident" "TransactionController@api_checker_submit_accident"
)->name("api_checker_submit_accident"); )->name("api_checker_submit_accident");
Route::post( Route::post("api/user/checker/transactions/aprv_pck", "TransactionController@api_checker_aprv_pck")->name(
"api/user/checker/transactions/aprv_pck", "api_checker_aprv_pck"
"TransactionController@api_checker_aprv_pck" );
)->name("api_checker_aprv_pck");
Route::post( Route::post(
"api/user/checker/transactions/recreate_pocket", "api/user/checker/transactions/recreate_pocket",
"TransactionController@api_recreate_pocket" "TransactionController@api_recreate_pocket"
@ -420,17 +397,15 @@ Route::prefix("gps")->group(function () {
"api/finance/list_adt_items_payments", "api/finance/list_adt_items_payments",
"FinanceController@api_finance_list_adt_items_payments" "FinanceController@api_finance_list_adt_items_payments"
)->name("api_finance_list_adt_items_payments"); )->name("api_finance_list_adt_items_payments");
Route::get( Route::get("api/finance/show_a_item/{ord_a_item_id}", "FinanceController@api_finance_show_a_item")->name(
"api/finance/show_a_item/{ord_a_item_id}", "api_finance_show_a_item"
"FinanceController@api_finance_show_a_item" );
)->name("api_finance_show_a_item");
Route::post("api/finance/add_a_items", "FinanceController@api_finance_add_a_items")->name( Route::post("api/finance/add_a_items", "FinanceController@api_finance_add_a_items")->name(
"api_finance_add_a_items" "api_finance_add_a_items"
); );
Route::put( Route::put("api/finance/pay_a_items/{ord_a_item_id}", "FinanceController@api_finance_pay_a_items")->name(
"api/finance/pay_a_items/{ord_a_item_id}", "api_finance_pay_a_items"
"FinanceController@api_finance_pay_a_items" );
)->name("api_finance_pay_a_items");
Route::post("api/finance/crt_updt_invc", "FinanceController@api_finance_crt_updt_invc")->name( Route::post("api/finance/crt_updt_invc", "FinanceController@api_finance_crt_updt_invc")->name(
"api_finance_crt_updt_invc" "api_finance_crt_updt_invc"
); );
@ -497,9 +472,7 @@ Route::prefix("gps")->group(function () {
Route::post("/api/pocket", "PocketController@api_add_pocket")->name("api_add_pocket"); Route::post("/api/pocket", "PocketController@api_add_pocket")->name("api_add_pocket");
Route::put("/api/pocket/{pocket_id}", "PocketController@api_edit_pocket")->name("api_edit_pocket"); Route::put("/api/pocket/{pocket_id}", "PocketController@api_edit_pocket")->name("api_edit_pocket");
Route::delete("/api/pocket/{pocket_id}", "PocketController@api_del_pocket")->name("api_del_pocket"); Route::delete("/api/pocket/{pocket_id}", "PocketController@api_del_pocket")->name("api_del_pocket");
Route::post("/api/pocket/pck_drop", "PocketController@api_pck_drop_pocket")->name( Route::post("/api/pocket/pck_drop", "PocketController@api_pck_drop_pocket")->name("api_pck_drop_pocket");
"api_pck_drop_pocket"
);
// checker // checker
Route::post("/api/user/checker/get_pocket", "PocketController@api_pck_drop_pocket")->name( Route::post("/api/user/checker/get_pocket", "PocketController@api_pck_drop_pocket")->name(
"api_checker_get_pocket" "api_checker_get_pocket"
@ -507,13 +480,9 @@ Route::prefix("gps")->group(function () {
// checker // checker
Route::get("/api/insurances", "InsuranceController@api_list_insurances")->name("api_list_insurances"); Route::get("/api/insurances", "InsuranceController@api_list_insurances")->name("api_list_insurances");
Route::get("/api/insurances/{iid}", "InsuranceController@api_show_insurance")->name( Route::get("/api/insurances/{iid}", "InsuranceController@api_show_insurance")->name("api_show_insurance");
"api_show_insurance"
);
Route::post("/api/insurances", "InsuranceController@api_add_insurance")->name("api_add_insurance"); Route::post("/api/insurances", "InsuranceController@api_add_insurance")->name("api_add_insurance");
Route::put("/api/insurances/{iid}", "InsuranceController@api_edit_insurance")->name( Route::put("/api/insurances/{iid}", "InsuranceController@api_edit_insurance")->name("api_edit_insurance");
"api_edit_insurance"
);
Route::delete("/api/insurances/{iid}", "InsuranceController@api_del_insurance")->name( Route::delete("/api/insurances/{iid}", "InsuranceController@api_del_insurance")->name(
"api_del_insurance" "api_del_insurance"
); );
@ -521,14 +490,12 @@ Route::prefix("gps")->group(function () {
Route::get("/api/static_insurances", "StaticInsuranceController@api_list_static_insurances")->name( Route::get("/api/static_insurances", "StaticInsuranceController@api_list_static_insurances")->name(
"api_list_static_insurances" "api_list_static_insurances"
); );
Route::get( Route::get("/api/static_insurances/{id}", "StaticInsuranceController@api_show_static_insurance")->name(
"/api/static_insurances/{id}", "api_show_static_insurance"
"StaticInsuranceController@api_show_static_insurance" );
)->name("api_show_static_insurance"); Route::put("/api/static_insurances/{id}", "StaticInsuranceController@api_edit_static_insurance")->name(
Route::put( "api_edit_static_insurance"
"/api/static_insurances/{id}", );
"StaticInsuranceController@api_edit_static_insurance"
)->name("api_edit_static_insurance");
Route::get("/api/conf/truck_types", "ConfTruckTypeController@api_list_truck_types")->name( Route::get("/api/conf/truck_types", "ConfTruckTypeController@api_list_truck_types")->name(
"api_conf_list_truck_types" "api_conf_list_truck_types"
@ -622,9 +589,7 @@ Route::prefix("gps")->group(function () {
Route::get("/api/dtypes/{dtypes_id}", "DataTypesController@api_show_dtypes")->name("api_show_dtypes"); Route::get("/api/dtypes/{dtypes_id}", "DataTypesController@api_show_dtypes")->name("api_show_dtypes");
Route::post("/api/dtypes", "DataTypesController@api_add_dtypes")->name("api_add_dtypes"); Route::post("/api/dtypes", "DataTypesController@api_add_dtypes")->name("api_add_dtypes");
Route::put("/api/dtypes/{dtypes_id}", "DataTypesController@api_edit_dtypes")->name("api_edit_dtypes"); Route::put("/api/dtypes/{dtypes_id}", "DataTypesController@api_edit_dtypes")->name("api_edit_dtypes");
Route::delete("/api/dtypes/{dtypes_id}", "DataTypesController@api_del_dtypes")->name( Route::delete("/api/dtypes/{dtypes_id}", "DataTypesController@api_del_dtypes")->name("api_del_dtypes");
"api_del_dtypes"
);
Route::put("/api/dana/{dana_id}", "DanaController@api_edit_dana")->name("api_edit_dana"); Route::put("/api/dana/{dana_id}", "DanaController@api_edit_dana")->name("api_edit_dana");
@ -635,14 +600,14 @@ Route::prefix("gps")->group(function () {
/** /**
* END API * END API
*/ */
}); });
/** /**
* VIEW WITH NO AUTH * VIEW WITH NO AUTH
*/ */
Route::get( Route::get(
"/user/vendor/transactions/bidOrder", "/user/vendor/transactions/bidOrder",
"TransactionController@view_user_vendor_transaction_bid_order" "TransactionController@view_user_vendor_transaction_bid_order"
)->name("view_user_vendor_transaction_bid_order"); )->name("view_user_vendor_transaction_bid_order");
}); // });