Initial commit

This commit is contained in:
omair saleh
2020-05-11 14:43:49 +08:00
commit 4b1930b9ee
776 changed files with 266655 additions and 0 deletions
@@ -0,0 +1,21 @@
<?php
namespace App\Http\Controllers\Account\Authentication;
use App\Classes\Modules\Accounts\ControllerLogic\AuthenticateUserLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UserAuthenticationController
{
/**
* @param Request $request
* @param AuthenticateUserLogic $logic
* @return JsonResponse
*/
public function authenticate(Request $request, AuthenticateUserLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,22 @@
<?php
namespace App\Http\Controllers\Account\Password;
use App\Classes\Modules\Accounts\ControllerLogic\GeneratePasswordResetLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class GeneratePasswordResetController
{
/**
* @param Request $request
* @param GeneratePasswordResetLogic $logic
* @return JsonResponse
*/
public function generate(Request $request, GeneratePasswordResetLogic $logic): jsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,22 @@
<?php
namespace App\Http\Controllers\Account\Password;
use App\Classes\Modules\Accounts\ControllerLogic\ResetPasswordLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ResetPasswordController
{
/**
* @param Request $request
* @param ResetPasswordLogic $logic
* @return JsonResponse
*/
public function reset(Request $request, ResetPasswordLogic $logic): jsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Account\User;
use App\Classes\Modules\Accounts\ControllerLogic\ListUsersControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListUsersController
{
/**
* @param Request $request
* @param ListUsersControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, ListUsersControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Clients;
use App\Classes\Modules\Clients\ControllerLogic\CreateClientControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateClientController
{
/**
* @param Request $request
* @param CreateClientControllerLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreateClientControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Clients;
use App\Classes\Modules\Clients\ControllerLogic\DeleteClientControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteClientController
{
/**
* @param Request $request
* @param DeleteClientControllerLogic $logic
* @return JsonResponse
*/
public function destroy(Request $request, DeleteClientControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Clients;
use App\Classes\Modules\Clients\ControllerLogic\FetchClientControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class FetchClientController
{
/**
* @param Request $request
* @param FetchClientControllerLogic $logic
* @return JsonResponse
*/
public function fetch(Request $request, FetchClientControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Clients;
use App\Classes\Modules\Clients\ControllerLogic\ListClientsControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListClientsController
{
/**
* @param Request $request
* @param listClientsControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, listClientsControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Clients;
use App\Classes\Modules\Clients\ControllerLogic\UpdateClientControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateClientController
{
/**
* @param Request $request
* @param UpdateClientControllerLogic $logic
* @return JsonResponse
*/
public function update(Request $request, UpdateClientControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Comments;
use App\Classes\Modules\Comments\ControllersLogic\CreateCommentControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateCommentController
{
/**
* @param Request $request
* @param CreateCommentControllerLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreateCommentControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Comments;
use App\Classes\Modules\Comments\ControllersLogic\DeleteCommentControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteCommentController
{
/**
* @param Request $request
* @param DeleteCommentControllerLogic $logic
* @return JsonResponse
*/
public function destroy(Request $request, DeleteCommentControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Comments;
use App\Classes\Modules\Comments\ControllersLogic\FetchCommentControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class FetchCommentController
{
/**
* @param Request $request
* @param FetchCommentControllerLogic $logic
* @return JsonResponse
*/
public function fetch(Request $request, FetchCommentControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Comments;
use App\Classes\Modules\Comments\ControllersLogic\ListCommentsControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListCommentsController
{
/**
* @param Request $request
* @param listCommentsControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, listCommentsControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Comments;
use App\Classes\Modules\Comments\ControllersLogic\UpdateCommentControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateCommentController
{
/**
* @param Request $request
* @param UpdateCommentControllerLogic $logic
* @return JsonResponse
*/
public function update(Request $request, UpdateCommentControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
+13
View File
@@ -0,0 +1,13 @@
<?php
namespace App\Http\Controllers;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Routing\Controller as BaseController;
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Departments;
use App\Classes\Modules\Departments\ControllerLogic\CreateDepartmentControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateDepartmentController
{
/**
* @param Request $request
* @param CreateDepartmentControllerLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreateDepartmentControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Departments;
use App\Classes\Modules\Departments\ControllerLogic\DeleteDepartmentControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteDepartmentController
{
/**
* @param Request $request
* @param DeleteDepartmentControllerLogic $logic
* @return JsonResponse
*/
public function destroy(Request $request, DeleteDepartmentControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Departments;
use App\Classes\Modules\Departments\ControllerLogic\FetchDepartmentControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class FetchDepartmentController
{
/**
* @param Request $request
* @param FetchDepartmentControllerLogic $logic
* @return JsonResponse
*/
public function fetch(Request $request, FetchDepartmentControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Departments;
use App\Classes\Modules\Departments\ControllerLogic\ListDepartmentsControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListDepartmentsController
{
/**
* @param Request $request
* @param listDepartmentsControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, listDepartmentsControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Departments;
use App\Classes\Modules\Departments\ControllerLogic\UpdateDepartmentControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateDepartmentController
{
/**
* @param Request $request
* @param UpdateDepartmentControllerLogic $logic
* @return JsonResponse
*/
public function update(Request $request, UpdateDepartmentControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\MilestoneTaskAssignees;
use App\Classes\Modules\MilestoneTaskAssignees\ControllersLogic\CreateMilestoneTaskAssigneeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateMilestoneTaskAssigneeController
{
/**
* @param Request $request
* @param CreateMilestoneTaskAssigneeControllerLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreateMilestoneTaskAssigneeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\MilestoneTaskAssignees;
use App\Classes\Modules\MilestoneTaskAssignees\ControllersLogic\DeleteMilestoneTaskAssigneeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteMilestoneTaskAssigneeController
{
/**
* @param Request $request
* @param DeleteMilestoneTaskAssigneeControllerLogic $logic
* @return JsonResponse
*/
public function destroy(Request $request, DeleteMilestoneTaskAssigneeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\MilestoneTaskAssignees;
use App\Classes\Modules\MilestoneTaskAssignees\ControllersLogic\FetchMilestoneTaskAssigneeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class FetchMilestoneTaskAssigneeController
{
/**
* @param Request $request
* @param FetchMilestoneTaskAssigneeControllerLogic $logic
* @return JsonResponse
*/
public function fetch(Request $request, FetchMilestoneTaskAssigneeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\MilestoneTaskAssignees;
use App\Classes\Modules\MilestoneTaskAssignees\ControllersLogic\ListMilestoneTaskAssigneesControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListMilestoneTaskAssigneesController
{
/**
* @param Request $request
* @param listMilestoneTaskAssigneesControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, listMilestoneTaskAssigneesControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\MilestoneTaskAssignees;
use App\Classes\Modules\MilestoneTaskAssignees\ControllersLogic\UpdateMilestoneTaskAssigneeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateMilestoneTaskAssigneeController
{
/**
* @param Request $request
* @param UpdateMilestoneTaskAssigneeControllerLogic $logic
* @return JsonResponse
*/
public function update(Request $request, UpdateMilestoneTaskAssigneeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\MilestoneTasks;
use App\Classes\Modules\MilestoneTasks\ControllerLogic\CreateMilestoneTaskControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateMilestoneTaskController
{
/**
* @param Request $request
* @param CreateMilestoneTaskControllerLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreateMilestoneTaskControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\MilestoneTasks;
use App\Classes\Modules\MilestoneTasks\ControllerLogic\DeleteMilestoneTaskControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteMilestoneTaskController
{
/**
* @param Request $request
* @param DeleteMilestoneTaskControllerLogic $logic
* @return JsonResponse
*/
public function destroy(Request $request, DeleteMilestoneTaskControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\MilestoneTasks;
use App\Classes\Modules\MilestoneTasks\ControllerLogic\FetchMilestoneTaskControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class FetchMilestoneTaskController
{
/**
* @param Request $request
* @param FetchMilestoneTaskControllerLogic $logic
* @return JsonResponse
*/
public function fetch(Request $request, FetchMilestoneTaskControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\MilestoneTasks;
use App\Classes\Modules\MilestoneTasks\ControllerLogic\ListMilestoneTasksControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListMilestoneTasksController
{
/**
* @param Request $request
* @param listMilestoneTasksControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, listMilestoneTasksControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\MilestoneTasks;
use App\Classes\Modules\MilestoneTasks\ControllerLogic\UpdateMilestoneTaskControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateMilestoneTaskController
{
/**
* @param Request $request
* @param UpdateMilestoneTaskControllerLogic $logic
* @return JsonResponse
*/
public function update(Request $request, UpdateMilestoneTaskControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Milestones;
use App\Classes\Modules\Milestones\ControllerLogic\CreateMilestoneControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateMilestoneController
{
/**
* @param Request $request
* @param CreateMilestoneControllerLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreateMilestoneControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Milestones;
use App\Classes\Modules\Milestones\ControllerLogic\DeleteMilestoneControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteMilestoneController
{
/**
* @param Request $request
* @param DeleteMilestoneControllerLogic $logic
* @return JsonResponse
*/
public function destroy(Request $request, DeleteMilestoneControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Milestones;
use App\Classes\Modules\Milestones\ControllerLogic\FetchMilestoneControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class FetchMilestoneController
{
/**
* @param Request $request
* @param FetchMilestoneControllerLogic $logic
* @return JsonResponse
*/
public function fetch(Request $request, FetchMilestoneControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Milestones;
use App\Classes\Modules\Milestones\ControllerLogic\ListMilestonesControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListMilestonesController
{
/**
* @param Request $request
* @param listMilestonesControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, listMilestonesControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Milestones;
use App\Classes\Modules\Milestones\ControllerLogic\UpdateMilestoneControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateMilestoneController
{
/**
* @param Request $request
* @param UpdateMilestoneControllerLogic $logic
* @return JsonResponse
*/
public function update(Request $request, UpdateMilestoneControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\ModularTypes;
use App\Classes\Modules\ModularTypes\ControllerLogic\CreateModularTypeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateModularTypeController
{
/**
* @param Request $request
* @param CreateModularTypeControllerLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreateModularTypeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\ModularTypes;
use App\Classes\Modules\ModularTypes\ControllerLogic\DeleteModularTypeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteModularTypeController
{
/**
* @param Request $request
* @param DeleteModularTypeControllerLogic $logic
* @return JsonResponse
*/
public function destroy(Request $request, DeleteModularTypeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\ModularTypes;
use App\Classes\Modules\ModularTypes\ControllerLogic\FetchModularTypeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class FetchModularTypeController
{
/**
* @param Request $request
* @param FetchModularTypeControllerLogic $logic
* @return JsonResponse
*/
public function fetch(Request $request, FetchModularTypeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\ModularTypes;
use App\Classes\Modules\ModularTypes\ControllerLogic\ListModularTypesControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListModularTypesController
{
/**
* @param Request $request
* @param listModularTypesControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, listModularTypesControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\ModularTypes;
use App\Classes\Modules\ModularTypes\ControllerLogic\UpdateModularTypeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateModularTypeController
{
/**
* @param Request $request
* @param UpdateModularTypeControllerLogic $logic
* @return JsonResponse
*/
public function update(Request $request, UpdateModularTypeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\ProjectMilestones;
use App\Classes\Modules\ProjectMilestones\ControllerLogic\CreateProjectMilestoneControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateProjectMilestoneController
{
/**
* @param Request $request
* @param CreateProjectMilestoneControllerLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreateProjectMilestoneControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\ProjectMilestones;
use App\Classes\Modules\ProjectMilestones\ControllerLogic\DeleteProjectMilestoneControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteProjectMilestoneController
{
/**
* @param Request $request
* @param DeleteProjectMilestoneControllerLogic $logic
* @return JsonResponse
*/
public function destroy(Request $request, DeleteProjectMilestoneControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\ProjectMilestones;
use App\Classes\Modules\ProjectMilestones\ControllerLogic\FetchProjectMilestoneControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class FetchProjectMilestoneController
{
/**
* @param Request $request
* @param FetchProjectMilestoneControllerLogic $logic
* @return JsonResponse
*/
public function fetch(Request $request, FetchProjectMilestoneControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\ProjectMilestones;
use App\Classes\Modules\ProjectMilestones\ControllerLogic\ListProjectMilestonesControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListProjectMilestonesController
{
/**
* @param Request $request
* @param listProjectMilestonesControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, listProjectMilestonesControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\ProjectMilestones;
use App\Classes\Modules\ProjectMilestones\ControllerLogic\UpdateProjectMilestoneControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateProjectMilestoneController
{
/**
* @param Request $request
* @param UpdateProjectMilestoneControllerLogic $logic
* @return JsonResponse
*/
public function update(Request $request, UpdateProjectMilestoneControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Projects;
use App\Classes\Modules\Projects\ControllerLogic\CreateProjectControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateProjectController
{
/**
* @param Request $request
* @param CreateProjectControllerLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreateProjectControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Projects;
use App\Classes\Modules\Projects\ControllerLogic\DeleteProjectControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteProjectController
{
/**
* @param Request $request
* @param DeleteProjectControllerLogic $logic
* @return JsonResponse
*/
public function destroy(Request $request, DeleteProjectControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Projects;
use App\Classes\Modules\Projects\ControllerLogic\FetchProjectControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class FetchProjectController
{
/**
* @param Request $request
* @param FetchProjectControllerLogic $logic
* @return JsonResponse
*/
public function fetch(Request $request, FetchProjectControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Projects;
use App\Classes\Modules\Projects\ControllerLogic\ListProjectsControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListProjectsController
{
/**
* @param Request $request
* @param listProjectsControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, listProjectsControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Projects;
use App\Classes\Modules\Projects\ControllerLogic\UpdateProjectControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateProjectController
{
/**
* @param Request $request
* @param UpdateProjectControllerLogic $logic
* @return JsonResponse
*/
public function update(Request $request, UpdateProjectControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\TaskAssignees;
use App\Classes\Modules\TaskAssignees\ControllersLogic\CreateTaskAssigneeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateTaskAssigneeController
{
/**
* @param Request $request
* @param CreateTaskAssigneeControllerLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreateTaskAssigneeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\TaskAssignees;
use App\Classes\Modules\TaskAssignees\ControllersLogic\DeleteTaskAssigneeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteTaskAssigneeController
{
/**
* @param Request $request
* @param DeleteTaskAssigneeControllerLogic $logic
* @return JsonResponse
*/
public function destroy(Request $request, DeleteTaskAssigneeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\TaskAssignees;
use App\Classes\Modules\TaskAssignees\ControllersLogic\FetchTaskAssigneeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class FetchTaskAssigneeController
{
/**
* @param Request $request
* @param FetchTaskAssigneeControllerLogic $logic
* @return JsonResponse
*/
public function fetch(Request $request, FetchTaskAssigneeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\TaskAssignees;
use App\Classes\Modules\TaskAssignees\ControllersLogic\ListTaskAssigneesControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListTaskAssigneesController
{
/**
* @param Request $request
* @param listTaskAssigneesControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, listTaskAssigneesControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\TaskAssignees;
use App\Classes\Modules\TaskAssignees\ControllersLogic\UpdateTaskAssigneeControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateTaskAssigneeController
{
/**
* @param Request $request
* @param UpdateTaskAssigneeControllerLogic $logic
* @return JsonResponse
*/
public function update(Request $request, UpdateTaskAssigneeControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Tasks;
use App\Classes\Modules\Tasks\ControllerLogic\CreateTaskControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateTaskController
{
/**
* @param Request $request
* @param CreateTaskControllerLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreateTaskControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Tasks;
use App\Classes\Modules\Tasks\ControllerLogic\DeleteTaskControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteTaskController
{
/**
* @param Request $request
* @param DeleteTaskControllerLogic $logic
* @return JsonResponse
*/
public function destroy(Request $request, DeleteTaskControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Tasks;
use App\Classes\Modules\Tasks\ControllerLogic\FetchTaskControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class FetchTaskController
{
/**
* @param Request $request
* @param FetchTaskControllerLogic $logic
* @return JsonResponse
*/
public function fetch(Request $request, FetchTaskControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Tasks;
use App\Classes\Modules\Tasks\ControllerLogic\ListTasksControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListTasksController
{
/**
* @param Request $request
* @param listTasksControllerLogic $logic
* @return JsonResponse
*/
public function list(Request $request, listTasksControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}
@@ -0,0 +1,77 @@
<?php
namespace App\Http\Controllers\Tasks;
use App\Classes\ValueObjects\Constants\HttpStatus;
use App\Classes\ValueObjects\Response\ApiResponseObject;
use App\Models\ProjectMilestone;
use App\Models\Task;
use App\Models\TimeTracker;
use Carbon\Carbon;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
class TimeTrackerController
{
public function start(int $taskId){
$task = Task::find($taskId);
$task->trackers()->attach(Auth::user()->getAuthIdentifier(), ['time_start' => Carbon::now()]);
return (new ApiResponseObject('Timer Started Successfully',
'You have successfully started the task timer',
HttpStatus::OK_WITH_MESSAGE, []))->handler();
}
public function stop(int $taskId){
$tracker = timeTracker::where('trackable_type', Task::class)->where('trackable_id', $taskId)
->where('user_id', Auth::user()->getAuthIdentifier())->where('time_end', null)->first();
$tracker->time_end = Carbon::now();
$tracker->save();
return (new ApiResponseObject('Timer Stopped Successfully',
'You have successfully stopped the task timer',
HttpStatus::OK_WITH_MESSAGE, []))->handler();
}
public function completeTask(int $taskId){
$tracker = timeTracker::where('trackable_type', Task::class)->where('trackable_id', $taskId)
->where('user_id', Auth::user()->getAuthIdentifier())->where('time_end', null)->first();
$tracker->time_end = Carbon::now();
$tracker->save();
$task = Task::find($taskId);
// changes status to complete
$task->status = 12;
$task->save();
$milestone = ProjectMilestone::find($task->milestone_id);
$milestonPendingTasks = Task::where('milestone_id', $task->milestone_id)->where('status', '!=', 12);
if(!$milestonPendingTasks->exists()){
$milestone->complete = true;
$milestone->save();
}
$project = $milestone->project->first();
$projectPendingTasks = $project->tasks->where('status', '!=', 12);
if(!$projectPendingTasks->count()){
$project->status = 12;
$project->save();
} else {
$nextTask = $projectPendingTasks->first();
$nextTask->status = 7;
$nextTask->active = true;
$nextTask->save();
}
return (new ApiResponseObject('Task Completed Successfully',
'You have successfully completed the task',
HttpStatus::OK_WITH_MESSAGE, []))->handler();
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Http\Controllers\Tasks;
use App\Classes\Modules\Tasks\ControllerLogic\UpdateTaskControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateTaskController
{
/**
* @param Request $request
* @param UpdateTaskControllerLogic $logic
* @return JsonResponse
*/
public function update(Request $request, UpdateTaskControllerLogic $logic): JsonResponse {
return $logic->execute($request);
}
}