listResponse($tax_rates); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response * * * * @OA\Get( * path="/api/v1/tax_rates/create", * operationId="getTaxRateCreate", * tags={"tax_rates"}, * summary="Gets a new blank Tax Rate object", * description="Returns a blank object with default values", * @OA\Parameter(ref="#/components/parameters/X-Api-Secret"), * @OA\Parameter(ref="#/components/parameters/X-Api-Token"), * @OA\Parameter(ref="#/components/parameters/X-Requested-With"), * @OA\Response( * response=200, * description="A blank Tax Rate object", * @OA\Header(header="X-API-Version", ref="#/components/headers/X-API-Version"), * @OA\Header(header="X-RateLimit-Remaining", ref="#/components/headers/X-RateLimit-Remaining"), * @OA\Header(header="X-RateLimit-Limit", ref="#/components/headers/X-RateLimit-Limit"), * @OA\JsonContent(ref="#/components/schemas/TaxRate"), * ), * @OA\Response( * response=422, * description="Validation error", * @OA\JsonContent(ref="#/components/schemas/ValidationError"), * * ), * @OA\Response( * response="default", * description="Unexpected Error", * @OA\JsonContent(ref="#/components/schemas/Error"), * ), * ) * */ public function create(CreateTaxRateRequest $request) { $tax_rate = TaxRateFactory::create(auth()->user()->company()->id, auth()->user()->id); return $this->itemResponse($tax_rate); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(StoreTaxRateRequest $request) { $tax_rate = TaxRateFactory::create(auth()->user()->company()->id, auth()->user()->id); $tax_rate->fill($request->all()); $tax_rate->save(); return $this->itemResponse($tax_rate); } /** * Display the specified resource. * * @param int $id * @return \Illuminate\Http\Response * * * @OA\Get( * path="/api/v1/tax_rates/{id}", * operationId="showTaxRate", * tags={"tax_rates"}, * summary="Shows a Tax Rate", * description="Displays an TaxRate by id", * @OA\Parameter(ref="#/components/parameters/X-Api-Secret"), * @OA\Parameter(ref="#/components/parameters/X-Api-Token"), * @OA\Parameter(ref="#/components/parameters/X-Requested-With"), * @OA\Parameter( * name="id", * in="path", * description="The TaxRate Hashed ID", * example="D2J234DFA", * required=true, * @OA\Schema( * type="string", * format="string", * ), * ), * @OA\Response( * response=200, * description="Returns the Tax Rate object", * @OA\Header(header="X-API-Version", ref="#/components/headers/X-API-Version"), * @OA\Header(header="X-RateLimit-Remaining", ref="#/components/headers/X-RateLimit-Remaining"), * @OA\Header(header="X-RateLimit-Limit", ref="#/components/headers/X-RateLimit-Limit"), * @OA\JsonContent(ref="#/components/schemas/TaxRate"), * ), * @OA\Response( * response=422, * description="Validation error", * @OA\JsonContent(ref="#/components/schemas/ValidationError"), * * ), * @OA\Response( * response="default", * description="Unexpected Error", * @OA\JsonContent(ref="#/components/schemas/Error"), * ), * ) * */ public function show(ShowTaxRateRequest $request, TaxRate $tax_rate) { return $this->itemResponse($tax_rate); } /** * Show the form for editing the specified resource. * * @param int $id * @return \Illuminate\Http\Response * * * @OA\Get( * path="/api/v1/tax_rates/{id}/edit", * operationId="editTaxRate", * tags={"tax_rates"}, * summary="Shows a Tax Rate for editting", * description="Displays a Tax Rate by id", * @OA\Parameter(ref="#/components/parameters/X-Api-Secret"), * @OA\Parameter(ref="#/components/parameters/X-Api-Token"), * @OA\Parameter(ref="#/components/parameters/X-Requested-With"), * @OA\Parameter( * name="id", * in="path", * description="The TaxRate Hashed ID", * example="D2J234DFA", * required=true, * @OA\Schema( * type="string", * format="string", * ), * ), * @OA\Response( * response=200, * description="Returns the Tax Rate object", * @OA\Header(header="X-API-Version", ref="#/components/headers/X-API-Version"), * @OA\Header(header="X-RateLimit-Remaining", ref="#/components/headers/X-RateLimit-Remaining"), * @OA\Header(header="X-RateLimit-Limit", ref="#/components/headers/X-RateLimit-Limit"), * @OA\JsonContent(ref="#/components/schemas/TaxRate"), * ), * @OA\Response( * response=422, * description="Validation error", * @OA\JsonContent(ref="#/components/schemas/ValidationError"), * * ), * @OA\Response( * response="default", * description="Unexpected Error", * @OA\JsonContent(ref="#/components/schemas/Error"), * ), * ) * */ public function edit(EditTaxRateRequest $request, TaxRate $tax_rate) { return $this->itemResponse($tax_rate); } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param App\Models\Client $client * @return \Illuminate\Http\Response * * * * @OA\Put( * path="/api/v1/tax_rates/{id}", * operationId="updateTaxRate", * tags={"tax_rates"}, * summary="Updates a tax rate", * description="Handles the updating of a tax rate by id", * @OA\Parameter(ref="#/components/parameters/X-Api-Secret"), * @OA\Parameter(ref="#/components/parameters/X-Api-Token"), * @OA\Parameter(ref="#/components/parameters/X-Requested-With"), * @OA\Parameter( * name="id", * in="path", * description="The TaxRate Hashed ID", * example="D2J234DFA", * required=true, * @OA\Schema( * type="string", * format="string", * ), * ), * @OA\Response( * response=200, * description="Returns the TaxRate object", * @OA\Header(header="X-API-Version", ref="#/components/headers/X-API-Version"), * @OA\Header(header="X-RateLimit-Remaining", ref="#/components/headers/X-RateLimit-Remaining"), * @OA\Header(header="X-RateLimit-Limit", ref="#/components/headers/X-RateLimit-Limit"), * @OA\JsonContent(ref="#/components/schemas/TaxRate"), * ), * @OA\Response( * response=422, * description="Validation error", * @OA\JsonContent(ref="#/components/schemas/ValidationError"), * * ), * @OA\Response( * response="default", * description="Unexpected Error", * @OA\JsonContent(ref="#/components/schemas/Error"), * ), * ) * */ public function update(UpdateTaxRateRequest $request, TaxRate $tax_rate) { $tax_rate->fill($request->all()); $tax_rate->save(); return $this->itemResponse($tax_rate); } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response * * * @OA\Delete( * path="/api/v1/tax_rates/{id}", * operationId="deleteTaxRate", * tags={"tax_rates"}, * summary="Deletes a TaxRate", * description="Handles the deletion of an TaxRate by id", * @OA\Parameter(ref="#/components/parameters/X-Api-Secret"), * @OA\Parameter(ref="#/components/parameters/X-Api-Token"), * @OA\Parameter(ref="#/components/parameters/X-Requested-With"), * @OA\Parameter( * name="id", * in="path", * description="The TaxRate Hashed ID", * example="D2J234DFA", * required=true, * @OA\Schema( * type="string", * format="string", * ), * ), * @OA\Response( * response=200, * description="Returns a HTTP status", * @OA\Header(header="X-API-Version", ref="#/components/headers/X-API-Version"), * @OA\Header(header="X-RateLimit-Remaining", ref="#/components/headers/X-RateLimit-Remaining"), * @OA\Header(header="X-RateLimit-Limit", ref="#/components/headers/X-RateLimit-Limit"), * ), * @OA\Response( * response=422, * description="Validation error", * @OA\JsonContent(ref="#/components/schemas/ValidationError"), * * ), * @OA\Response( * response="default", * description="Unexpected Error", * @OA\JsonContent(ref="#/components/schemas/Error"), * ), * ) * */ public function destroy(DestroyTaxRateRequest $request, TaxRate $tax_rate) { $tax_rate->delete(); return response()->json([], 200); } }