Merge branch 'Cleaned-BackEnd-Companies' into 'master'

Cleaned-BackEnd-Companies-AddressBook

See merge request CIEFWorldwideSdnBhd/izyim!23
This commit is contained in:
omair saleh
2019-05-21 08:51:10 +00:00
41 changed files with 924 additions and 340 deletions
@@ -0,0 +1,22 @@
<?php
/**
* Created by PhpStorm.
* User: user
* Date: 07/05/2019
* Time: 11:17 AM
*/
namespace App\Http\Controllers\Companies\AddressBook;
use App\Classes\Modules\ControllersLogic\Companies\AddressBook\CreateAddressBookLogic;
use Illuminate\Http\Request;
class CreateAddressBookController
{
public function store(String $companyId, Request $request, CreateAddressBookLogic $logic){
return $logic->execute($companyId,$request);
}
}
@@ -0,0 +1,21 @@
<?php
/**
* Created by PhpStorm.
* User: user
* Date: 02/05/2019
* Time: 10:23 AM
*/
namespace App\Http\Controllers\Companies\AddressBook;
use App\Classes\Modules\ControllersLogic\Companies\AddressBook\DefaultAddressBookLogic;
class DefaultAddressBookController
{
public function default(String $companyId, String $id, DefaultAddressBookLogic $logic){
return $logic->execute($companyId,$id);
}
}
@@ -0,0 +1,20 @@
<?php
/**
* Created by PhpStorm.
* User: user
* Date: 03/05/2019
* Time: 10:19 AM
*/
namespace App\Http\Controllers\Companies\AddressBook;
use App\Classes\Modules\ControllersLogic\Companies\AddressBook\DeleteAddressBookLogic;
class DeleteAddressBookController
{
public function destroy(String $companyId, String $id, DeleteAddressBookLogic $logic){
return $logic->execute($id,$companyId);
}
}
@@ -0,0 +1,22 @@
<?php
/**
* Created by PhpStorm.
* User: user
* Date: 30/04/2019
* Time: 5:15 PM
*/
namespace App\Http\Controllers\Companies\AddressBook;
use App\Classes\Modules\ControllersLogic\Companies\AddressBook\ListAddressBookLogic;
class ListAddressBookController
{
public function list(String $companyId, ListAddressBookLogic $logic){
return $logic->execute($companyId);
}
}
@@ -0,0 +1,21 @@
<?php
/**
* Created by PhpStorm.
* User: user
* Date: 03/05/2019
* Time: 10:18 AM
*/
namespace App\Http\Controllers\Companies\AddressBook;
use App\Classes\Modules\ControllersLogic\Companies\AddressBook\UpdateAddressBookLogic;
use Illuminate\Http\Request;
class UpdateAddressBookController
{
public function update(String $companyId, Request $request, UpdateAddressBookLogic $logic){
return $logic->execute($companyId,$request);
}
}
@@ -1,76 +0,0 @@
<?php
namespace App\Http\Controllers\Companies;
use App\Classes\Objects\AddressObject;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Http\Resources\AddressBook as AddressBookResource;
use App\Classes\ControllersLogic\Companies\AddressBook\ListAddresses;
use App\Classes\ControllersLogic\Companies\AddressBook\DeleteAddress;
use App\Classes\ControllersLogic\Companies\AddressBook\UpdateAddress;
use App\Classes\ControllersLogic\Companies\AddressBook\DefaultAddress;
class AddressBookController extends Controller
{
/**
* Display a listing of the resource.
* @param string $companyId
* @return \Illuminate\Http\Resources\Json\AnonymousResourceCollection
*/
public function index(string $companyId) {
return (new ListAddresses())->execute($companyId);
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param string $companyId
* @return AddressBookResource
*/
public function store(Request $request, string $companyId)
{
return (new UpdateAddress())->execute(new AddressObject(
$companyId,
$request->input('street_one'),
$request->input('street_two'),
$request->input('city'),
$request->input('state'),
$request->input('post_code'),
$request->input('country'),
$request->input('id'),
$request->input('reference'),
$request->input('contact')
));
}
/**
* Set default address
*
* @param string $id
* @param string $companyId
* @return AddressBookResource
*/
public function default(string $companyId, string $id)
{
return (new DefaultAddress())->execute($companyId, $id);
}
/**
* Remove the specified resource from storage.
*
* @param string $companyId
* @param string $id
*
* @return AddressBookResource
*/
public function destroy(string $companyId, string $id): AddressBookResource {
return (new DeleteAddress())->execute($companyId, $id);
}
}
@@ -1,67 +0,0 @@
<?php
namespace App\Http\Controllers\Companies;
use App\Models\Company;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Http\Resources\Company as CompanyResource;
use App\Classes\ControllersLogic\Companies\ListCompanies;
use App\Classes\ControllersLogic\Companies\UpdateCompany;
use App\Classes\ControllersLogic\Companies\CompanyProfile;
use App\Classes\ControllersLogic\Companies\DeleteCompany;
class CompanyController extends Controller
{
/**
* Display a listing of the resource.
*
*/
public function index() {
return (new ListCompanies())->execute();
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
*
* @param UpdateCompany $logic
* @return CompanyResource
*/
public function store(Request $request, UpdateCompany $logic): CompanyResource {
return $logic->execute($request);
}
/**
* Display the specified resource.
*
* @param int $id
*
* @return CompanyResource
*/
public function show($id): CompanyResource {
return (new CompanyProfile())->execute($id);
}
/**
* Remove the specified resource from storage.
*
* @param int $id
*
* @return CompanyResource
*/
public function destroy($id): CompanyResource {
return (new DeleteCompany())->execute($id);
}
public function search(Request $request){
// Get company
$companies = Company::where('name', 'LIKE', "%".$request->input('query')."%")
->orWhere('marking', 'LIKE', "%".$request->input('query')."%")->paginate(10);
// Return collection of companies as a resource
return CompanyResource::collection($companies);
}
}
@@ -0,0 +1,21 @@
<?php
/**
* Created by PhpStorm.
* User: user
* Date: 30/04/2019
* Time: 2:29 PM
*/
namespace App\Http\Controllers\Companies;
use App\Classes\Modules\ControllersLogic\Companies\DeleteCompanyLogic;
class DeleteCompanyController
{
public function destroy(String $id, DeleteCompanyLogic $logic){
return $logic->execute($id);
}
}
@@ -0,0 +1,20 @@
<?php
/**
* Created by PhpStorm.
* User: user
* Date: 29/04/2019
* Time: 11:43 AM
*/
namespace App\Http\Controllers\Companies;
use App\Classes\Modules\ControllersLogic\Companies\ListCompanyLogic;
class ListCompanyController
{
public function list(ListCompanyLogic $logic){
return $logic->execute();
}
}
@@ -0,0 +1,22 @@
<?php
/**
* Created by PhpStorm.
* User: user
* Date: 30/04/2019
* Time: 9:47 AM
*/
namespace App\Http\Controllers\Companies;
use App\Classes\Modules\ControllersLogic\Companies\ProfileCompanyLogic;
class ProfileCompanyController
{
public function show(string $id, ProfileCompanyLogic $logic){
return $logic->execute($id);
}
}
@@ -0,0 +1,22 @@
<?php
/**
* Created by PhpStorm.
* User: user
* Date: 29/04/2019
* Time: 2:10 PM
*/
namespace App\Http\Controllers\Companies;
use App\Classes\Modules\ControllersLogic\Companies\SearchCompanyLogic;
use Illuminate\Http\Request;
class SearchCompanyController
{
public function search(Request $request , SearchCompanyLogic $logic){
return $logic->execute($request);
}
}
@@ -0,0 +1,21 @@
<?php
/**
* Created by PhpStorm.
* User: user
* Date: 30/04/2019
* Time: 11:42 AM
*/
namespace App\Http\Controllers\Companies;
use App\Classes\Modules\ControllersLogic\Companies\UpdateCompanyLogic;
use Illuminate\Http\Request;
class UpdateCompanyController
{
public function update(Request $request, UpdateCompanyLogic $logic){
return $logic->execute($request);
}
}