update trips label done
This commit is contained in:
241
app/Http/Controllers/TripsLabelingController.php
Normal file
241
app/Http/Controllers/TripsLabelingController.php
Normal file
@ -0,0 +1,241 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\UserLogs;
|
||||
use Auth;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use App\Responses;
|
||||
use Validator;
|
||||
|
||||
class TripsLabelingController extends Controller
|
||||
{
|
||||
public function api_show_trips_label(Request $req, $id)
|
||||
{
|
||||
try {
|
||||
$data = DB::table('t_sites_label')
|
||||
->where('id', $id)
|
||||
->first();
|
||||
|
||||
if (!$data) {
|
||||
$apiResp = Responses::error("Sites labeling not found");
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
}
|
||||
|
||||
$apiResp = [
|
||||
"meta" => [
|
||||
"code" => 200,
|
||||
"type" => "success",
|
||||
"message" => "success",
|
||||
],
|
||||
"data" => $data,
|
||||
];
|
||||
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
|
||||
} catch (\Exception $e) {
|
||||
$apiResp = Responses::error($e->getMessage());
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* View
|
||||
*/
|
||||
|
||||
public function view_trips_label(Request $req)
|
||||
{
|
||||
$data = [];
|
||||
|
||||
$log = [
|
||||
"module" => "Trips Label",
|
||||
"action" => "View",
|
||||
"desc" => "Open Trips Label",
|
||||
];
|
||||
UserLogs::insert(Auth::user()->id, $log);
|
||||
return view("menu_v1.trips_label", $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* API
|
||||
*/
|
||||
public function api_list_trips_label(Request $req)
|
||||
{
|
||||
try {
|
||||
$datas = DB::table('t_sites_label')
|
||||
->where('isdeleted', 0)
|
||||
->get();
|
||||
|
||||
foreach ($datas as $key => $row) {
|
||||
$datas[$key]->DT_RowIndex = $key + 1;
|
||||
$datas[$key]->action = "-";
|
||||
}
|
||||
|
||||
$apiResp = Responses::success("success list sites labeling");
|
||||
$apiResp["count"] = count($datas);
|
||||
$apiResp["data"] = $datas;
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
} catch (\Exception $e) {
|
||||
$apiResp = Responses::error($e->getMessage());
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for creating a new resource.
|
||||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function api_add_trips_label(Request $req)
|
||||
{
|
||||
try {
|
||||
$now = time();
|
||||
|
||||
$input = [
|
||||
"address" => $req->address,
|
||||
"lat" => $req->lat,
|
||||
"lng" => $req->lng,
|
||||
"radius" => $req->radius
|
||||
];
|
||||
$rulesInput = [
|
||||
"address" => "required|string",
|
||||
"lat" => "required|numeric|between:-90,90",
|
||||
"lng" => "required|numeric|between:-180,180",
|
||||
"radius" => "required|integer|min:0",
|
||||
];
|
||||
|
||||
// validasi input
|
||||
$isValidInput = Validator::make($input, $rulesInput);
|
||||
if (!$isValidInput->passes()) {
|
||||
$apiResp = Responses::bad_input($isValidInput->messages()->first());
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
}
|
||||
|
||||
DB::beginTransaction();
|
||||
|
||||
$insert = [
|
||||
"address" => $req->address,
|
||||
"lat" => $req->lat,
|
||||
"lng" => $req->lng,
|
||||
"radius" => $req->radius,
|
||||
// "created_at" => date("Y-m-d H:i:s", $now),
|
||||
// "udt" => date("Y-m-d H:i:s", $now),
|
||||
// "created_by" => Auth::user()->id,
|
||||
// "uby" => Auth::user()->id
|
||||
];
|
||||
DB::table('t_sites_label')->insert($insert);
|
||||
$apiResp = Responses::created("success add new trips label");
|
||||
|
||||
DB::commit();
|
||||
|
||||
|
||||
$log = [
|
||||
"module" => "Trips Label",
|
||||
"action" => "Create",
|
||||
"desc" => "Add new trips label: " . $req->address,
|
||||
];
|
||||
UserLogs::insert(Auth::user()->id, $log);
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
} catch (\Exception $e) {
|
||||
DB::rollBack();
|
||||
$apiResp = Responses::error($e->getMessage());
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @param Request $req
|
||||
* @param int $id
|
||||
* @return Response
|
||||
*/
|
||||
public function api_edit_trips_label(Request $req, $id)
|
||||
{
|
||||
try {
|
||||
$now = time();
|
||||
|
||||
$input = [
|
||||
"address" => $req->address,
|
||||
"lat" => $req->lat,
|
||||
"lng" => $req->lng,
|
||||
"radius" => $req->radius
|
||||
];
|
||||
$rulesInput = [
|
||||
"address" => "required|string",
|
||||
"lat" => "required|numeric|between:-90,90",
|
||||
"lng" => "required|numeric|between:-180,180",
|
||||
"radius" => "required|integer|min:0",
|
||||
];
|
||||
|
||||
// validasi input
|
||||
$isValidInput = Validator::make($input, $rulesInput);
|
||||
if (!$isValidInput->passes()) {
|
||||
$apiResp = Responses::bad_input($isValidInput->messages()->first());
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
}
|
||||
|
||||
DB::beginTransaction();
|
||||
|
||||
$update = [
|
||||
"address" => $req->address,
|
||||
"lat" => $req->lat,
|
||||
"lng" => $req->lng,
|
||||
"radius" => $req->radius,
|
||||
];
|
||||
DB::table('t_sites_label')->where('id', $id)->update($update);
|
||||
|
||||
$apiResp = Responses::created("success update trips label");
|
||||
|
||||
DB::commit();
|
||||
|
||||
$log = [
|
||||
"module" => "Trips Label",
|
||||
"action" => "Update",
|
||||
"desc" => "Update trips label: " . $req->address,
|
||||
];
|
||||
UserLogs::insert(Auth::user()->id, $log);
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
} catch (\Exception $e) {
|
||||
DB::rollBack();
|
||||
$apiResp = Responses::error($e->getMessage());
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @param int $id
|
||||
* @return Response
|
||||
*/
|
||||
public function api_del_trips_label($id)
|
||||
{
|
||||
try {
|
||||
DB::beginTransaction();
|
||||
|
||||
DB::table('t_sites_label')->where('id', $id)->update([
|
||||
'isdeleted' => 1,
|
||||
// 'ddt' => date("Y-m-d H:i:s", time()),
|
||||
// 'dby' => Auth::user()->id
|
||||
]);
|
||||
|
||||
DB::commit();
|
||||
|
||||
$apiResp = Responses::success("success delete trips label");
|
||||
|
||||
$log = [
|
||||
"module" => "Trips Label",
|
||||
"action" => "Delete",
|
||||
"desc" => "Delete trips label: " . $id,
|
||||
];
|
||||
UserLogs::insert(Auth::user()->id, $log);
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
} catch (\Exception $e) {
|
||||
DB::rollBack();
|
||||
$apiResp = Responses::error($e->getMessage());
|
||||
return new Response($apiResp, $apiResp["meta"]["code"]);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user