This commit is contained in:
meusinfirmary
2025-05-30 06:23:18 +07:00
parent 29e98e25ff
commit 0e68f6c932
2 changed files with 260 additions and 261 deletions

View File

@ -26,10 +26,9 @@ class ConfTruckTypeController extends Controller
{ {
$data = []; $data = [];
return view('menu_v1.configs.truck_types', $data); return view("menu_v1.configs.truck_types", $data);
} }
/** /**
* API * API
*/ */
@ -51,16 +50,16 @@ class ConfTruckTypeController extends Controller
$list = ConfTruckTypes::listTruckTypes(); $list = ConfTruckTypes::listTruckTypes();
foreach ($list as $key => $row) { foreach ($list as $key => $row) {
$list[$key]->DT_RowIndex = $key + 1; $list[$key]->DT_RowIndex = $key + 1;
$list[$key]->action = '-'; $list[$key]->action = "-";
} }
$apiResp = Responses::success('success list truck types'); $apiResp = Responses::success("success list vehilce types");
$apiResp['count'] = count($list); $apiResp["count"] = count($list);
$apiResp['data'] = $list; $apiResp["data"] = $list;
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} catch (\Exception $e) { } catch (\Exception $e) {
$apiResp = Responses::error($e->getMessage()); $apiResp = Responses::error($e->getMessage());
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
} }
@ -70,31 +69,31 @@ class ConfTruckTypeController extends Controller
$now = time(); $now = time();
$input = [ $input = [
'ttid' => $ttid, "ttid" => $ttid,
]; ];
$rulesInput = [ $rulesInput = [
'ttid' => 'required|integer|not_in:0', "ttid" => "required|integer|not_in:0",
]; ];
// 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"]);
} }
$truckType = ConfTruckTypes::showTruckTypeById($ttid); $truckType = ConfTruckTypes::showTruckTypeById($ttid);
if (count($truckType) < 1) { if (count($truckType) < 1) {
$apiResp = Responses::not_found('truck type not found'); $apiResp = Responses::not_found("truck type not found");
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
$apiResp = Responses::success('success get detail truck type'); $apiResp = Responses::success("success get detail vehicle type");
$apiResp['data'] = $truckType[0]; $apiResp["data"] = $truckType[0];
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} catch (\Exception $e) { } catch (\Exception $e) {
$apiResp = Responses::error($e->getMessage()); $apiResp = Responses::error($e->getMessage());
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
} }
@ -104,71 +103,71 @@ class ConfTruckTypeController extends Controller
$now = time(); $now = time();
$input = [ $input = [
'type_name' => $req->type_name, "type_name" => $req->type_name,
'max_kg' => $req->max_kg, "max_kg" => $req->max_kg,
'max_cbm' => $req->max_cbm, "max_cbm" => $req->max_cbm,
'max_koli' => $req->max_koli, "max_koli" => $req->max_koli,
'status' => $req->status, "status" => $req->status,
'publish' => $req->publish, "publish" => $req->publish,
]; ];
$rulesInput = [ $rulesInput = [
'type_name' => 'required|string', "type_name" => "required|string",
'max_kg' => 'nullable|numeric|min:0', "max_kg" => "nullable|numeric|min:0",
'max_cbm' => 'nullable|numeric|min:0', "max_cbm" => "nullable|numeric|min:0",
'max_koli' => 'nullable|numeric|min:0', "max_koli" => "nullable|numeric|min:0",
'status' => 'required|numeric|min:0', "status" => "required|numeric|min:0",
'publish' => 'required|numeric|min:0', "publish" => "required|numeric|min:0",
]; ];
// 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"]);
} }
$uniqName = ConfTruckTypes::getTruckTypeByName($req->type_name); $uniqName = ConfTruckTypes::getTruckTypeByName($req->type_name);
if (count($uniqName) > 0) { if (count($uniqName) > 0) {
$apiResp = Responses::bad_request('type name has been used'); $apiResp = Responses::bad_request("type name has been used");
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
DB::beginTransaction(); DB::beginTransaction();
$type_id = ConfTruckTypes::addTypes([ $type_id = ConfTruckTypes::addTypes([
'cat_id' => Vehicles::DEFAULT_CAT_ID, "cat_id" => Vehicles::DEFAULT_CAT_ID,
'name' => $req->type_name, "name" => $req->type_name,
'desc' => $req->type_name, "desc" => $req->type_name,
'is_active' => $req->status, "is_active" => $req->status,
'is_publish' => $req->publish, "is_publish" => $req->publish,
'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,
]); ]);
$insTruckType = [ $insTruckType = [
'type_id' => $type_id, "type_id" => $type_id,
'max_kg' => $req->max_kg ?? 0, "max_kg" => $req->max_kg ?? 0,
'max_cbm' => $req->max_cbm ?? 0, "max_cbm" => $req->max_cbm ?? 0,
'max_koli' => $req->max_koli ?? 0, "max_koli" => $req->max_koli ?? 0,
'is_active' => $req->status, "is_active" => $req->status,
'is_publish' => $req->publish, "is_publish" => $req->publish,
'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,
]; ];
$ttid = ConfTruckTypes::addTruckType($insTruckType); $ttid = ConfTruckTypes::addTruckType($insTruckType);
$apiResp = Responses::created('success add new truck type'); $apiResp = Responses::created("success add new vehicle type");
DB::commit(); DB::commit();
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} catch (\Exception $e) { } catch (\Exception $e) {
DB::rollBack(); DB::rollBack();
$apiResp = Responses::error($e->getMessage()); $apiResp = Responses::error($e->getMessage());
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
} }
@ -178,35 +177,35 @@ class ConfTruckTypeController extends Controller
$now = time(); $now = time();
$input = [ $input = [
'ttid' => $ttid, "ttid" => $ttid,
'type_name' => $req->type_name, "type_name" => $req->type_name,
'max_kg' => $req->max_kg, "max_kg" => $req->max_kg,
'max_cbm' => $req->max_cbm, "max_cbm" => $req->max_cbm,
'max_koli' => $req->max_koli, "max_koli" => $req->max_koli,
'status' => $req->status, "status" => $req->status,
'publish' => $req->publish, "publish" => $req->publish,
]; ];
$rulesInput = [ $rulesInput = [
'ttid' => 'required|integer|not_in:0', "ttid" => "required|integer|not_in:0",
'type_name' => 'required|string', "type_name" => "required|string",
'max_kg' => 'nullable|numeric|min:0', "max_kg" => "nullable|numeric|min:0",
'max_cbm' => 'nullable|numeric|min:0', "max_cbm" => "nullable|numeric|min:0",
'max_koli' => 'nullable|numeric|min:0', "max_koli" => "nullable|numeric|min:0",
'status' => 'required|numeric|min:0', "status" => "required|numeric|min:0",
'publish' => 'required|numeric|min:0', "publish" => "required|numeric|min:0",
]; ];
// 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"]);
} }
$truckType = ConfTruckTypes::showTruckTypeById($ttid); $truckType = ConfTruckTypes::showTruckTypeById($ttid);
if (count($truckType) < 1) { if (count($truckType) < 1) {
$apiResp = Responses::not_found('truck type not found'); $apiResp = Responses::not_found("truck type not found");
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
$uniqName = ConfTruckTypes::getTruckTypeByName($req->type_name); $uniqName = ConfTruckTypes::getTruckTypeByName($req->type_name);
@ -218,50 +217,50 @@ class ConfTruckTypeController extends Controller
} }
} }
if ($notSameUser) { if ($notSameUser) {
$apiResp = Responses::bad_request('type name has been used'); $apiResp = Responses::bad_request("type name has been used");
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
} }
if ($req->status == ConfTruckTypes::IS_INACTIVE) { if ($req->status == ConfTruckTypes::IS_INACTIVE) {
$checkVhcType = ConfRates::checkVhcType($truckType[0]->type_id); $checkVhcType = ConfRates::checkVhcType($truckType[0]->type_id);
if (count($checkVhcType) > 0) { if (count($checkVhcType) > 0) {
$apiResp = Responses::bad_request('cannot change to inactive, still connected on rates'); $apiResp = Responses::bad_request("cannot change to inactive, still connected on rates");
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
} }
DB::beginTransaction(); DB::beginTransaction();
ConfTruckTypes::updtTypes($truckType[0]->type_id, [ ConfTruckTypes::updtTypes($truckType[0]->type_id, [
'name' => $req->type_name, "name" => $req->type_name,
'desc' => $req->type_name, "desc" => $req->type_name,
'is_active' => $req->status, "is_active" => $req->status,
'is_publish' => $req->publish, "is_publish" => $req->publish,
'updt' => $now, "updt" => $now,
'updt_by' => $req->auth->uid, "updt_by" => $req->auth->uid,
]); ]);
$insTruckType = [ $insTruckType = [
'type_id' => $truckType[0]->type_id, "type_id" => $truckType[0]->type_id,
'max_kg' => $req->max_kg ?? 0, "max_kg" => $req->max_kg ?? 0,
'max_cbm' => $req->max_cbm ?? 0, "max_cbm" => $req->max_cbm ?? 0,
'max_koli' => $req->max_koli ?? 0, "max_koli" => $req->max_koli ?? 0,
'is_active' => $req->status, "is_active" => $req->status,
'is_publish' => $req->publish, "is_publish" => $req->publish,
'updt' => $now, "updt" => $now,
'updt_by' => $req->auth->uid, "updt_by" => $req->auth->uid,
]; ];
$ttid = ConfTruckTypes::updateTruckType($ttid, $insTruckType); $ttid = ConfTruckTypes::updateTruckType($ttid, $insTruckType);
$apiResp = Responses::created('success update truck type'); $apiResp = Responses::created("success update vehicle type");
DB::commit(); DB::commit();
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} catch (\Exception $e) { } catch (\Exception $e) {
DB::rollBack(); DB::rollBack();
$apiResp = Responses::error($e->getMessage()); $apiResp = Responses::error($e->getMessage());
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
} }
@ -271,51 +270,51 @@ class ConfTruckTypeController extends Controller
$now = time(); $now = time();
$input = [ $input = [
'ttid' => $ttid, "ttid" => $ttid,
]; ];
$rulesInput = [ $rulesInput = [
'ttid' => 'required|integer|not_in:0', "ttid" => "required|integer|not_in:0",
]; ];
// 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"]);
} }
$truckType = ConfTruckTypes::showTruckTypeById($ttid); $truckType = ConfTruckTypes::showTruckTypeById($ttid);
if (count($truckType) < 1) { if (count($truckType) < 1) {
$apiResp = Responses::not_found('truck type not found'); $apiResp = Responses::not_found("vehicle type not found");
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
$checkVhcType = ConfRates::checkVhcType($truckType[0]->type_id); $checkVhcType = ConfRates::checkVhcType($truckType[0]->type_id);
if (count($checkVhcType) > 0) { if (count($checkVhcType) > 0) {
$apiResp = Responses::bad_request('cannot delete, still connected on rates'); $apiResp = Responses::bad_request("cannot delete, still connected on rates");
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
DB::beginTransaction(); DB::beginTransaction();
ConfTruckTypes::updtTypes($truckType[0]->type_id, [ ConfTruckTypes::updtTypes($truckType[0]->type_id, [
'dlt' => $now, "dlt" => $now,
'dlt_by' => $req->auth->uid, "dlt_by" => $req->auth->uid,
]); ]);
ConfTruckTypes::updateTruckType($ttid, [ ConfTruckTypes::updateTruckType($ttid, [
'dlt' => $now, "dlt" => $now,
'dlt_by' => $req->auth->uid, "dlt_by" => $req->auth->uid,
]); ]);
DB::commit(); DB::commit();
$apiResp = Responses::success('success delete truck type'); $apiResp = Responses::success("success delete vehicle type");
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} catch (\Exception $e) { } catch (\Exception $e) {
DB::rollBack(); DB::rollBack();
$apiResp = Responses::error($e->getMessage()); $apiResp = Responses::error($e->getMessage());
return (new Response($apiResp, $apiResp['meta']['code'])); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
} }
} }

View File

@ -441,7 +441,7 @@
Helper.toast('Warning', 'just now', data.meta.message); Helper.toast('Warning', 'just now', data.meta.message);
return false; return false;
} }
Helper.toast('Success', 'just now', 'success add new truck type'); Helper.toast('Success', 'just now', 'success add new vehicle type');
$('#mdlNewTruckType').modal('hide'); $('#mdlNewTruckType').modal('hide');
DTable.reload(); DTable.reload();
resolve({ resolve({
@ -477,7 +477,7 @@
ttid ttid
}); });
if (resp.type != 'success') { if (resp.type != 'success') {
Helper.toast('Truck Type Not Found', 'just now', 'please try again'); Helper.toast('Vehicle Type Not Found', 'just now', 'please try again');
return false; return false;
} }
RUpdt.passDataToView(resp.data); RUpdt.passDataToView(resp.data);