55 lines
1.8 KiB
PHP
55 lines
1.8 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace App\Http\Controllers\Bo;
|
||
|
|
|
||
|
|
use App\Http\Controllers\Controller;
|
||
|
|
use App\Http\Requests\Bo\ClaimMessages\StoreMessageRequest;
|
||
|
|
use App\Http\Requests\Bo\ClaimMessages\UpdateMessageRequest;
|
||
|
|
use App\Models\ClaimMessage;
|
||
|
|
use App\Traits\Controllers\UpdateModelPublished;
|
||
|
|
use Illuminate\Support\Facades\DB;
|
||
|
|
|
||
|
|
class ClaimMessageController extends Controller
|
||
|
|
{
|
||
|
|
use UpdateModelPublished;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Store a new specific resource.
|
||
|
|
*
|
||
|
|
* @param \App\Http\Requests\Bo\ClaimMessages\StoreMessageRequest $request
|
||
|
|
* @return \Illuminate\Http\JsonResponse
|
||
|
|
*/
|
||
|
|
public function store(StoreMessageRequest $request): \Illuminate\Http\JsonResponse
|
||
|
|
{
|
||
|
|
$this->authorize('store', ClaimMessage::class);
|
||
|
|
|
||
|
|
return DB::transaction(function () use ($request) {
|
||
|
|
$claimMessage = new ClaimMessage();
|
||
|
|
$claimMessage->fill($request->validated());
|
||
|
|
if ($claimMessage->saveOrFail()) {
|
||
|
|
$claimMessageModels = ClaimMessage::getAllClaimMessages($claimMessage->claim->getKey());
|
||
|
|
return response()->json($claimMessageModels);
|
||
|
|
}
|
||
|
|
return response()->json([], 500);
|
||
|
|
});
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Update a specified resource.
|
||
|
|
*
|
||
|
|
* @param \App\Http\Requests\Bo\ClaimMessages\UpdateMessageRequest $request
|
||
|
|
* @param \App\Models\ClaimMessage $claim_message
|
||
|
|
* @return \Illuminate\Http\JsonResponse
|
||
|
|
*/
|
||
|
|
public function update(UpdateMessageRequest $request, ClaimMessage $claim_message): \Illuminate\Http\JsonResponse
|
||
|
|
{
|
||
|
|
$this->authorize('update', ClaimMessage::class);
|
||
|
|
|
||
|
|
$model = ClaimMessage::findOrFail($claim_message->getKey());
|
||
|
|
$model->content = $request->validated()['content'];
|
||
|
|
$model->saveOrFail();
|
||
|
|
|
||
|
|
return response()->json();
|
||
|
|
}
|
||
|
|
}
|