This commit is contained in:
root
2019-12-13 17:07:46 +08:00
parent 025f96cae5
commit ccdf9462cf
4 changed files with 65 additions and 7 deletions

View File

@ -7,7 +7,7 @@ use App\Http\Controllers\Controller;
use App\Models\User;
use App\Models\Ticket;
use App\Models\TicketMessage;
use Illuminate\Support\Facades\Redis;
use Illuminate\Support\Facades\DB;
class TicketController extends Controller
{
@ -29,7 +29,6 @@ class TicketController extends Controller
$ticket['user'] = User::select([
'email'
])->find($ticket->user_id);
$ticket['avatar_url'] = 'https://cdn.v2ex.com/gravatar/' . md5($ticket['user']->email) . '?s=64&d=identicon';
return response([
'data' => $ticket
]);
@ -52,14 +51,18 @@ class TicketController extends Controller
if (!$ticket) {
abort(500, '工单不存在');
}
DB::beginTransaction();
$ticketMessage = TicketMessage::create([
'user_id' => $request->session()->get('id'),
'ticket_id' => $ticket->id,
'message' => $request->input('message')
]);
if (!$ticketMessage) {
$ticket->last_reply_user_id = $request->session()->get('id');
if (!$ticketMessage || !$ticket->save()) {
DB::rollback();
abort(500, '工单回复失败');
}
DB::commit();
return response([
'data' => true
]);

View File

@ -45,7 +45,8 @@ class TicketController extends Controller
'subject',
'level'
]), [
'user_id' => $request->session()->get('id')
'user_id' => $request->session()->get('id'),
'last_reply_user_id' => $request->session()->get('id')
]));
if (!$ticket) {
DB::rollback();
@ -82,14 +83,18 @@ class TicketController extends Controller
if ($request->session()->get('id') == $this->getLastMessage($ticket->id)->user_id) {
abort(500, '请等待技术支持回复');
}
DB::beginTransaction();
$ticketMessage = TicketMessage::create([
'user_id' => $request->session()->get('id'),
'ticket_id' => $ticket->id,
'message' => $request->input('message')
]);
if (!$ticketMessage) {
$ticket->last_reply_user_id = $request->session()->get('id');
if (!$ticketMessage || !$ticket->save()) {
DB::rollback();
abort(500, '工单回复失败');
}
DB::commit();
return response([
'data' => true
]);