mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal.git
synced 2026-08-19 04:24:12 +00:00
Completes Order Steps on Unity
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Classes\Modules\Orders\ControllersLogic;
|
namespace App\Classes\Modules\OrderSteps\ControllersLogic;
|
||||||
|
|
||||||
use App\Classes\General\Abstracts\AbstractControllerLogic;
|
use App\Classes\General\Abstracts\AbstractControllerLogic;
|
||||||
use App\Classes\Modules\Orders\DataTransferObjects\OrderObject;
|
use App\Classes\Modules\Orders\DataTransferObjects\OrderObject;
|
||||||
@@ -9,37 +9,36 @@ use App\Classes\Modules\Orders\Standards\Rules\CanCreateOrder;
|
|||||||
use App\Classes\ValueObjects\Constants\OrderStatus;
|
use App\Classes\ValueObjects\Constants\OrderStatus;
|
||||||
use App\Classes\ValueObjects\Constants\OrderSteps;
|
use App\Classes\ValueObjects\Constants\OrderSteps;
|
||||||
use App\Classes\ValueObjects\Constants\OrderType;
|
use App\Classes\ValueObjects\Constants\OrderType;
|
||||||
use App\Http\Resources\OrderResource;
|
use App\Http\Resources\OrderStepResource;
|
||||||
|
use App\Classes\Modules\OrderSteps\DataTransferObjects\OrderStepsObject;
|
||||||
|
use App\Classes\Modules\OrderSteps\Services\FetchesOrderSteps;
|
||||||
|
use App\Classes\Modules\OrderSteps\Processors\CompletesOrderStepProcessor;
|
||||||
|
|
||||||
|
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Http\JsonResponse;
|
use Illuminate\Http\JsonResponse;
|
||||||
|
|
||||||
class CompletesOrderStepLogic extends AbstractControllerLogic
|
class CompletesOrderStepLogic extends AbstractControllerLogic
|
||||||
{
|
{
|
||||||
|
|
||||||
private $canCreateOrder;
|
private $completeOrderStepProcessor;
|
||||||
|
|
||||||
private $createsOrder;
|
public function __construct(CompletesOrderStepProcessor $completeOrderStepProcessor)
|
||||||
|
|
||||||
public function __construct(CanCreateOrder $canCreateOrder, CreatesOrder $createsOrder)
|
|
||||||
{
|
{
|
||||||
$this->canCreateOrder = $canCreateOrder;
|
$this->completeOrderStepProcessor = $completeOrderStepProcessor;
|
||||||
$this->createsOrder = $createsOrder;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function notification():array {
|
protected function notification():array {
|
||||||
return [
|
return [
|
||||||
'title' => 'Created Order',
|
'title' => 'Completed Order Step',
|
||||||
'message' => 'You have successfully created a new Order'
|
'message' => 'You have successfully completed a order step'
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function logic(Request $request) : JsonResponse {
|
public function logic(Request $request) : JsonResponse {
|
||||||
$order_object = new OrderObject($request->get('company_module_id'), '', '', OrderType::SHARED_CONTAINER, OrderStatus::PROCESSING, OrderSteps::PROCESSING);
|
|
||||||
|
|
||||||
$this->canCreateOrder->passes($order_object);
|
$completedOrderStep = $this->completeOrderStepProcessor->execute($request);
|
||||||
|
|
||||||
$order = $this->createsOrder->execute($order_object);
|
return $this->resourceResponse(new OrderStepResource($completedOrderStep));
|
||||||
|
|
||||||
return $this->resourceResponse(new OrderResource($order));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,78 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Classes\Modules\OrderSteps\Processors;
|
||||||
|
|
||||||
|
use App\Classes\General\Abstracts\AbstractControllerLogic;
|
||||||
|
use App\Classes\Modules\Orders\DataTransferObjects\OrderObject;
|
||||||
|
use App\Classes\Modules\OrderSteps\Services\UpdatesOrderSteps;
|
||||||
|
use App\Classes\Modules\OrderSteps\Standards\Rules\CanUpdateOrderStep;
|
||||||
|
use App\Classes\ValueObjects\Constants\OrderStatus;
|
||||||
|
use App\Classes\ValueObjects\Constants\OrderSteps;
|
||||||
|
use App\Classes\ValueObjects\Constants\OrderType;
|
||||||
|
use App\Http\Resources\OrderStepResource;
|
||||||
|
use App\Classes\Modules\OrderSteps\DataTransferObjects\OrderStepsObject;
|
||||||
|
use App\Classes\Modules\OrderSteps\Services\FetchesOrderSteps;
|
||||||
|
use App\Classes\Modules\Unity\Processors\UpdateObligationsProcessor;
|
||||||
|
use App\Classes\Modules\Orders\Processors\UpdatesOrderCurrentStepProcessor;
|
||||||
|
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Illuminate\Http\JsonResponse;
|
||||||
|
|
||||||
|
class CompletesOrderStepProcessor
|
||||||
|
{
|
||||||
|
|
||||||
|
private $fetchesOrderStep;
|
||||||
|
|
||||||
|
private $unityUpdateObligation;
|
||||||
|
|
||||||
|
private $updateOrderStepProcessors;
|
||||||
|
|
||||||
|
private $updatesOrderCurrentStep;
|
||||||
|
|
||||||
|
public function __construct(FetchesOrderSteps $fetchesOrderStep, UpdateObligationsProcessor $unityUpdateObligation, CanUpdateOrderStep $canUpdateOrderStep, UpdatesOrderSteps $updatesOrderStep, UpdatesOrderCurrentStepProcessor $updatesOrderCurrentStep)
|
||||||
|
{
|
||||||
|
$this->fetchesOrderStep = $fetchesOrderStep;
|
||||||
|
$this->unityUpdateObligation = $unityUpdateObligation;
|
||||||
|
$this->canUpdateOrderStep = $canUpdateOrderStep;
|
||||||
|
$this->updatesOrderStep = $updatesOrderStep;
|
||||||
|
$this->updatesOrderCurrentStep = $updatesOrderCurrentStep;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function execute(Request $request) {
|
||||||
|
|
||||||
|
$orderStep = $this->fetchesOrderStep->getRepository()->where('id', $request->get('id'))->first();
|
||||||
|
|
||||||
|
$contractEntity = $orderStep->orderRole()->where('order_id',$orderStep->order_id)->first();
|
||||||
|
|
||||||
|
$obligation_hash_id = $orderStep->unity_hash_id;
|
||||||
|
$contract_entity_signature = $contractEntity->role_signature;
|
||||||
|
|
||||||
|
$completed = $this->unityUpdateObligation->execute($contract_entity_signature, $obligation_hash_id);
|
||||||
|
|
||||||
|
//Unity Contract Obligation Completed Status = 3
|
||||||
|
if(isset($completed->status) && $completed->status == OrderStatus::COMPLETE){
|
||||||
|
$orderStepObject = new OrderStepsObject(
|
||||||
|
$orderStep->order->id,
|
||||||
|
$contractEntity->company_module_id,
|
||||||
|
$orderStep->reference,
|
||||||
|
true,
|
||||||
|
$orderStep->sequence,
|
||||||
|
OrderStatus::COMPLETE,
|
||||||
|
OrderStatus::COMPLETE,
|
||||||
|
$completed->completed_at??date('Y-m-d H:i:s'),
|
||||||
|
$orderStep->id,
|
||||||
|
$orderStep->hash_id
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->canUpdateOrderStep->passes($orderStepObject);
|
||||||
|
|
||||||
|
$updatedOrderStep = $this->updatesOrderStep->execute($orderStep, $orderStepObject);
|
||||||
|
|
||||||
|
$this->updatesOrderCurrentStep->execute( $orderStep->order->id, $orderStep->reference);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $orderStep;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -87,4 +87,10 @@ class OrderObject implements DataTransferObject
|
|||||||
{
|
{
|
||||||
$this->current_step = $step;
|
$this->current_step = $step;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function setStatus(int $status)
|
||||||
|
{
|
||||||
|
$this->status = $status;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,6 +11,8 @@ use App\Classes\Modules\OrderSteps\Processors\GenerateOrderStepsProcessor;
|
|||||||
use App\Classes\ValueObjects\Constants\OrderStatus;
|
use App\Classes\ValueObjects\Constants\OrderStatus;
|
||||||
use App\Classes\ValueObjects\Constants\OrderSteps;
|
use App\Classes\ValueObjects\Constants\OrderSteps;
|
||||||
use App\Classes\ValueObjects\Constants\OrderType;
|
use App\Classes\ValueObjects\Constants\OrderType;
|
||||||
|
use App\Classes\Modules\OrderSteps\DataTransferObjects\OrderStepsObject;
|
||||||
|
use App\Classes\Modules\OrderSteps\Services\UpdatesOrderSteps;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
class ConfirmOrderProcessor
|
class ConfirmOrderProcessor
|
||||||
@@ -19,11 +21,14 @@ class ConfirmOrderProcessor
|
|||||||
|
|
||||||
private $generateOrderStepsProcessor;
|
private $generateOrderStepsProcessor;
|
||||||
|
|
||||||
public function __construct(CanConfirmOrder $canConfirmOrder, GenerateOrderStepsProcessor $generateOrderStepsProcessor, FetchesOrder $fetchesOrder)
|
private $updatesOrderCurrentStep;
|
||||||
|
|
||||||
|
public function __construct(CanConfirmOrder $canConfirmOrder, GenerateOrderStepsProcessor $generateOrderStepsProcessor, FetchesOrder $fetchesOrder, UpdatesOrderSteps $updatesOrderStep)
|
||||||
{
|
{
|
||||||
$this->canConfirmOrder = $canConfirmOrder;
|
$this->canConfirmOrder = $canConfirmOrder;
|
||||||
$this->generateOrderStepsProcessor = $generateOrderStepsProcessor;
|
$this->generateOrderStepsProcessor = $generateOrderStepsProcessor;
|
||||||
$this->fetchesOrder = $fetchesOrder;
|
$this->fetchesOrder = $fetchesOrder;
|
||||||
|
$this->updatesOrderStep = $updatesOrderStep;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function execute(int $orderId, array $contract_obligation_list = [], array $orderRoles=[] ){
|
public function execute(int $orderId, array $contract_obligation_list = [], array $orderRoles=[] ){
|
||||||
@@ -34,6 +39,26 @@ class ConfirmOrderProcessor
|
|||||||
|
|
||||||
$order = $this->fetchesOrder->execute(['id'=>$order_object->getId()]);
|
$order = $this->fetchesOrder->execute(['id'=>$order_object->getId()]);
|
||||||
|
|
||||||
|
//Only Processing Step is created at this point
|
||||||
|
$orderStep = $order->orderSteps[0];
|
||||||
|
|
||||||
|
$orderStepObject = new OrderStepsObject(
|
||||||
|
$order->id,
|
||||||
|
0,
|
||||||
|
$orderStep->reference,
|
||||||
|
true,
|
||||||
|
$orderStep->sequence,
|
||||||
|
OrderStatus::COMPLETE,
|
||||||
|
0,
|
||||||
|
date('Y-m-d H:i:s'),
|
||||||
|
$orderStep->id,
|
||||||
|
$orderStep->hash_id
|
||||||
|
);
|
||||||
|
|
||||||
|
//Update PROCESSING to completed
|
||||||
|
$updatedOrderStep = $this->updatesOrderStep->execute($orderStep, $orderStepObject);
|
||||||
|
|
||||||
|
//Generate Order Steps base on Contract from Unity
|
||||||
$this->generateOrderStepsProcessor->execute($order, $contract_obligation_list, $orderRoles);
|
$this->generateOrderStepsProcessor->execute($order, $contract_obligation_list, $orderRoles);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -38,7 +38,15 @@ class UpdatesOrderCurrentStepProcessor
|
|||||||
|
|
||||||
$order = $this->fetchesOrder->execute(['id'=>$order_object->getId()]);
|
$order = $this->fetchesOrder->execute(['id'=>$order_object->getId()]);
|
||||||
|
|
||||||
$order_steps = $this->fetchesOrderSteps->execute(['order_id'=>$order_object->getId(), 'status'=> OrderStatus::PROCESSING, 'order_by' => 'sequence', 'per_page' => 1]);
|
//Count steps / obligations that pending
|
||||||
|
$order_steps_processing = $this->fetchesOrderSteps->getRepository()->where(['order_id'=>$order_object->getId(), 'status'=> OrderStatus::PROCESSING])->count();
|
||||||
|
|
||||||
|
//If no more steps / obligations, then update Order status to complete (Contract fullfilled)
|
||||||
|
if($order_steps_processing==0){
|
||||||
|
$order_object->setStatus(OrderStatus::COMPLETE);
|
||||||
|
}else{
|
||||||
|
$order_object->setStatus($order->status);
|
||||||
|
}
|
||||||
|
|
||||||
$order_object->setCurrentStep($currentStep);
|
$order_object->setCurrentStep($currentStep);
|
||||||
|
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ class UpdatesCurrentStep extends AbstractUpdateRecord
|
|||||||
|
|
||||||
public function execute(Order $model, OrderObject $object) {
|
public function execute(Order $model, OrderObject $object) {
|
||||||
|
|
||||||
|
$model->status = $object->getStatus();
|
||||||
$model->current_step = $object->getCurrentStep();
|
$model->current_step = $object->getCurrentStep();
|
||||||
|
|
||||||
return $this->handler($model);
|
return $this->handler($model);
|
||||||
|
|||||||
@@ -1,21 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Classes\Modules\Unity\Processors;
|
|
||||||
|
|
||||||
use Config;
|
|
||||||
use Illuminate\Support\Facades\Http;
|
|
||||||
use App\Classes\Modules\Unity\Services\GetContractObligations;
|
|
||||||
|
|
||||||
class UpdateObligationsProcessor
|
|
||||||
{
|
|
||||||
private $getContractObligations;
|
|
||||||
|
|
||||||
public function __construct(GetContractObligations $getContractObligations)
|
|
||||||
{
|
|
||||||
$this->getContractObligations = $getContractObligations;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function execute(){
|
|
||||||
return $this->getContractObligations->execute();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Classes\Modules\Unity\Processors;
|
||||||
|
|
||||||
|
use Config;
|
||||||
|
use Illuminate\Support\Facades\Http;
|
||||||
|
use App\Classes\Modules\Unity\Services\UpdatesContractObligation;
|
||||||
|
|
||||||
|
class UpdateObligationsProcessor
|
||||||
|
{
|
||||||
|
private $updatesContractObligations;
|
||||||
|
|
||||||
|
public function __construct(UpdatesContractObligation $updatesContractObligations)
|
||||||
|
{
|
||||||
|
$this->updatesContractObligations = $updatesContractObligations;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function execute($contract_entity_signature, $obligation_hash_id){
|
||||||
|
return $this->updatesContractObligations->execute($contract_entity_signature, $obligation_hash_id);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -30,12 +30,12 @@ class GetAccessToken
|
|||||||
$this->apiKey = Config::get('unity.auth.api_key.key');
|
$this->apiKey = Config::get('unity.auth.api_key.key');
|
||||||
$this->cacheName = 'unity_access_token';
|
$this->cacheName = 'unity_access_token';
|
||||||
$this->cacheTime = Config::get('unity.access_token_cache');
|
$this->cacheTime = Config::get('unity.access_token_cache');
|
||||||
$this->accessToken = $this->getAccessToken();
|
$this->accessToken = "";
|
||||||
}
|
}
|
||||||
|
|
||||||
public function execute(){
|
public function execute(){
|
||||||
|
|
||||||
//if(!empty($this->getAccessToken())) return $this->getAccessToken();
|
if(!empty($this->getCachedAccessToken())) return $this->getCachedAccessToken();
|
||||||
|
|
||||||
if(empty($this->apiKey)){
|
if(empty($this->apiKey)){
|
||||||
$response = Http::post($this->getAccessTokenEndpoint, [
|
$response = Http::post($this->getAccessTokenEndpoint, [
|
||||||
@@ -43,20 +43,22 @@ class GetAccessToken
|
|||||||
'password' => $this->password ,
|
'password' => $this->password ,
|
||||||
])->object();
|
])->object();
|
||||||
$this->accessToken = $response->access_token;
|
$this->accessToken = $response->access_token;
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
$this->accessToken = $this->apiKey;
|
$this->accessToken = $this->apiKey;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$this->cacheAccessToken();
|
||||||
|
|
||||||
//TODO: Throw error if access token not available
|
//TODO: Throw error if access token not available
|
||||||
|
|
||||||
return $this->accessToken;
|
return $this->accessToken;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function getAccessToken(){
|
private function getCachedAccessToken(){
|
||||||
$accessToken = $this->accessToken;
|
return Cache::store('file')->get($this->cacheName);
|
||||||
return Cache::remember($this->cacheName, $this->cacheTime, function () use ( $accessToken ) {
|
}
|
||||||
return $accessToken??'';
|
|
||||||
});
|
private function cacheAccessToken(){
|
||||||
|
Cache::store('file')->put($this->cacheName, $this->accessToken, $this->cacheTime);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,19 +10,21 @@ class UpdatesContractObligation
|
|||||||
{
|
{
|
||||||
private $getAccessToken;
|
private $getAccessToken;
|
||||||
|
|
||||||
private $createEntityEndpoint;
|
private $updateContractStatusEndpoint;
|
||||||
|
|
||||||
public function __construct(GetAccessToken $getAccessToken)
|
public function __construct(GetAccessToken $getAccessToken)
|
||||||
{
|
{
|
||||||
$this->createEntityEndpoint = Config::get('unity.url').Config::get('unity.create_entity_endpoint');
|
$this->updateContractStatusEndpoint = Config::get('unity.url').Config::get('unity.endpoint.update_obligation_status');
|
||||||
$this->getAccessToken = $getAccessToken;
|
$this->getAccessToken = $getAccessToken;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function execute($entity_name){
|
public function execute($contract_entity_signature, $obligation_hash_id){
|
||||||
|
|
||||||
$accesToken=$this->getAccessToken->execute();
|
$accessToken=$this->getAccessToken->execute();
|
||||||
|
|
||||||
$response = Http::withToken($accesToken)->post($this->createEntityEndpoint,['name'=>$entity_name])->object();
|
$this->updateContractStatusEndpoint = str_replace('{hash}',$obligation_hash_id,$this->updateContractStatusEndpoint);
|
||||||
|
|
||||||
|
$response = Http::withToken($accessToken)->put($this->updateContractStatusEndpoint,['entity_signature_id'=>$contract_entity_signature])->object();
|
||||||
|
|
||||||
return (isset($response->data)) ? $response->data : null;
|
return (isset($response->data)) ? $response->data : null;
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Http\Controllers\Orders;
|
namespace App\Http\Controllers\OrderSteps;
|
||||||
|
|
||||||
use App\Classes\Modules\Orders\ControllersLogic\CompletesOrderStepLogic;
|
use App\Classes\Modules\OrderSteps\ControllersLogic\CompletesOrderStepLogic;
|
||||||
use Illuminate\Http\JsonResponse;
|
use Illuminate\Http\JsonResponse;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
@@ -13,8 +13,9 @@ class CompletesOrderStepsController
|
|||||||
* @param CreateOrderLogic $logic
|
* @param CreateOrderLogic $logic
|
||||||
* @return JsonResponse
|
* @return JsonResponse
|
||||||
*/
|
*/
|
||||||
public function complete(Request $request, CompletesOrderStepLogic $logic): JsonResponse
|
public function complete(Request $request, int $id, CompletesOrderStepLogic $logic): JsonResponse
|
||||||
{
|
{
|
||||||
|
$request->request->add(['id'=>$id]);
|
||||||
return $logic->execute($request);
|
return $logic->execute($request);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ class OrderResource extends JsonResource
|
|||||||
'current_step' => $this->current_step,
|
'current_step' => $this->current_step,
|
||||||
'company' => new CompanyResource(Company::where('id',$this->companyModule()->first()->company_id)->first()),
|
'company' => new CompanyResource(Company::where('id',$this->companyModule()->first()->company_id)->first()),
|
||||||
'address' => new AddressResource($this->when($this->has('addresses'), $this->addresses->where('owner_id', $this->id)->first())),
|
'address' => new AddressResource($this->when($this->has('addresses'), $this->addresses->where('owner_id', $this->id)->first())),
|
||||||
'order_steps' => OrderStepsResource::collection($this->orderSteps()->get()),
|
'order_steps' => OrderStepResource::collection($this->orderSteps()->get()),
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -11,7 +11,7 @@ use App\Models\Currency;
|
|||||||
use App\Models\SegmentConstant;
|
use App\Models\SegmentConstant;
|
||||||
use Illuminate\Http\Resources\Json\JsonResource;
|
use Illuminate\Http\Resources\Json\JsonResource;
|
||||||
|
|
||||||
class OrderStepsResource extends JsonResource
|
class OrderStepResource extends JsonResource
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Transform the resource into an array.
|
* Transform the resource into an array.
|
||||||
@@ -3,6 +3,7 @@
|
|||||||
namespace App\Models;
|
namespace App\Models;
|
||||||
|
|
||||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||||
|
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||||
|
|
||||||
class OrderStep extends AbstractModel
|
class OrderStep extends AbstractModel
|
||||||
{
|
{
|
||||||
@@ -13,4 +14,21 @@ class OrderStep extends AbstractModel
|
|||||||
protected $dates = ['deleted_at'];
|
protected $dates = ['deleted_at'];
|
||||||
|
|
||||||
protected $fillable = ['order_id','appointee_id','reference','primary','sequence','status','contract_status','complete_date','unity_hash_id'];
|
protected $fillable = ['order_id','appointee_id','reference','primary','sequence','status','contract_status','complete_date','unity_hash_id'];
|
||||||
|
|
||||||
|
public function companyModule(): belongsTo
|
||||||
|
{
|
||||||
|
return $this->belongsTo(CompanyModule::class, 'appointee_id', 'id');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function orderRole(): belongsTo
|
||||||
|
{
|
||||||
|
return $this->belongsTo(OrderRole::class, 'appointee_id', 'company_module_id');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function order(): belongsTo
|
||||||
|
{
|
||||||
|
return $this->belongsTo(Order::class, 'order_id', 'id');
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-3
@@ -16,7 +16,7 @@ return [
|
|||||||
'create_contract' => env('UNITY_OB_LIST_ENDPOINT','contract/generate'),
|
'create_contract' => env('UNITY_OB_LIST_ENDPOINT','contract/generate'),
|
||||||
'activate_contract' => 'contract/active/{hash}',
|
'activate_contract' => 'contract/active/{hash}',
|
||||||
'assign_entity' => env('UNITY_OB_LIST_ENDPOINT','contract-obligation/assign-contract-entity/{hash}'),
|
'assign_entity' => env('UNITY_OB_LIST_ENDPOINT','contract-obligation/assign-contract-entity/{hash}'),
|
||||||
'update_obligation_status' => env('UNITY_OB_LIST_ENDPOINT','contract-template-obligation/list'),
|
'update_obligation_status' => env('UNITY_OB_LIST_ENDPOINT','contract-obligation/update-complete/{hash}'),
|
||||||
],
|
],
|
||||||
|
|
||||||
'access_token_cache' => env('UNITY_TOKEN_CACHE', 86400),
|
'access_token_cache' => env('UNITY_TOKEN_CACHE', 86400),
|
||||||
@@ -41,9 +41,9 @@ return [
|
|||||||
|
|
||||||
'on_error_email' => env('UNITY_ON_ERROR_EMAIL','dev@shipping.com,dev@unity.com'),
|
'on_error_email' => env('UNITY_ON_ERROR_EMAIL','dev@shipping.com,dev@unity.com'),
|
||||||
|
|
||||||
'contract_template_id' => env('UNITY_CONTRACT_TEMPLATE_ID', 102),
|
'contract_template_id' => env('UNITY_CONTRACT_TEMPLATE_ID', 105),
|
||||||
|
|
||||||
'contract_template_hash_id' => env('UNITY_CONTRACT_TEMPLATE_HASH_ID', 'Kp3qzMV82mqA2PZg6eX0'),
|
'contract_template_hash_id' => env('UNITY_CONTRACT_TEMPLATE_HASH_ID', 'zDMkNBK3dpej1Zpg7yv9'),
|
||||||
|
|
||||||
'contract_template_cache' => env('UNITY_CONTRACT_TEMPLATE_CACHE','60'),
|
'contract_template_cache' => env('UNITY_CONTRACT_TEMPLATE_CACHE','60'),
|
||||||
|
|
||||||
|
|||||||
@@ -2385,8 +2385,8 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"/order/{id}/step/completes": {
|
"/order/step/{id}/complete": {
|
||||||
"post": {
|
"put": {
|
||||||
"tags": [
|
"tags": [
|
||||||
"Order"
|
"Order"
|
||||||
],
|
],
|
||||||
@@ -2400,16 +2400,9 @@
|
|||||||
{
|
{
|
||||||
"name": "id",
|
"name": "id",
|
||||||
"in": "path",
|
"in": "path",
|
||||||
"description": "Order Id",
|
"description": "Order step Id",
|
||||||
"required": true,
|
"required": true,
|
||||||
"type": "integer"
|
"type": "integer"
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "reference",
|
|
||||||
"in": "query",
|
|
||||||
"description": "Order step reference",
|
|
||||||
"required": true,
|
|
||||||
"type": "string"
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"responses": {
|
"responses": {
|
||||||
|
|||||||
+4
-7
@@ -10,12 +10,9 @@ Route::group(['prefix' => 'order', 'as' => 'order.', 'namespace' => 'Orders'], f
|
|||||||
#Route::put('/update/{id}', 'UpdateOrderController@update')->name('update');
|
#Route::put('/update/{id}', 'UpdateOrderController@update')->name('update');
|
||||||
#Route::delete('/delete/{id}', 'DeleteOrderController@destroy')->name('delete');
|
#Route::delete('/delete/{id}', 'DeleteOrderController@destroy')->name('delete');
|
||||||
|
|
||||||
|
|
||||||
Route::group(['prefix' => '{id}/step', 'as' => 'step.'], function () {
|
|
||||||
|
|
||||||
Route::post('/complete', 'CompletesOrderStepsController@complete')->name('create');
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
Route::group(['prefix' => '{id}/role', 'as' => 'role.'], function () {});
|
Route::group(['prefix' => '{id}/role', 'as' => 'role.'], function () {});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Route::group(['prefix' => 'order/step/{id}', 'as' => 'order.step.', 'namespace' => 'OrderSteps'], function () {
|
||||||
|
Route::put('complete', 'CompletesOrderStepsController@complete')->name('complete');
|
||||||
|
});
|
||||||
|
|||||||
Regular → Executable
Regular → Executable
Regular → Executable
Regular → Executable
Regular → Executable
Regular → Executable
Regular → Executable
Regular → Executable
Regular → Executable
Reference in New Issue
Block a user