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

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