82 lines
1.9 KiB
PHP
82 lines
1.9 KiB
PHP
<?php
|
|
|
|
namespace Modules\PMS\Http\Controllers;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use Illuminate\Http\RedirectResponse;
|
|
use Illuminate\Http\Request;
|
|
use Modules\PMS\Repositories\TaskInterface;
|
|
use Modules\PMS\Repositories\TaskTimeInterface;
|
|
|
|
class TaskTimeController extends Controller
|
|
{
|
|
private $task;
|
|
private $tasktime;
|
|
|
|
public function __construct(
|
|
TaskInterface $task,
|
|
TaskTimeInterface $tasktime
|
|
) {
|
|
$this->task = $task;
|
|
$this->tasktime = $tasktime;
|
|
}
|
|
|
|
/**
|
|
* Store a newly created resource in storage.
|
|
*/
|
|
public function store(Request $request)
|
|
{
|
|
try {
|
|
// $request->validate([
|
|
// 'start_time' => 'required',
|
|
// ]);
|
|
$taskModel = $this->task->getTaskById($request->task_id);
|
|
$taskTimeModel = $this->tasktime->getLatestTimeByTaskId($request->task_id);
|
|
$start_time = is_null($taskTimeModel) ? '00:00:00' : $taskTimeModel->end_time;
|
|
$taskModel->taskTime()->create(['start_time' => $start_time, 'end_time' => $request->time]);
|
|
return response()->json([
|
|
'status' => true,
|
|
'msg' => 'Time Store',
|
|
], 200);
|
|
|
|
} catch (\Throwable $th) {
|
|
return response()->json([
|
|
'status' => false,
|
|
'msg' => $th->getMessage(),
|
|
], 400);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Show the specified resource.
|
|
*/
|
|
public function show($id)
|
|
{
|
|
return view('pms::show');
|
|
}
|
|
|
|
/**
|
|
* Show the form for editing the specified resource.
|
|
*/
|
|
public function edit($id)
|
|
{
|
|
return view('pms::edit');
|
|
}
|
|
|
|
/**
|
|
* Update the specified resource in storage.
|
|
*/
|
|
public function update(Request $request, $id): RedirectResponse
|
|
{
|
|
//
|
|
}
|
|
|
|
/**
|
|
* Remove the specified resource from storage.
|
|
*/
|
|
public function destroy($id)
|
|
{
|
|
//
|
|
}
|
|
}
|