All checks were successful
star-cloud-deploy-demo / deploy-demo (push) Successful in 1m18s
1. 重構機台在線狀態判定機制:移除資料庫 status 欄位,改由 Model 根據心跳時間動態計算。 2. 修正儀表板 (Dashboard) 與機台管理頁面的多語系顯示問題,解決換行導致翻譯失效的 Bug。 3. 修正個人檔案頁面的麵包屑 (Breadcrumbs) 導航,補齊「個人設定」層級。 4. 更新 IoT API (B010, B600) 的認證機制與日誌處理邏輯。 5. 同步更新繁中、英文、日文語言檔,確保 UI 標籤一致性。
67 lines
1.7 KiB
PHP
67 lines
1.7 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Api\V1\App;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use Illuminate\Http\Request;
|
|
use App\Jobs\Transaction\ProcessTransaction;
|
|
use App\Jobs\Transaction\ProcessInvoice;
|
|
use App\Jobs\Transaction\ProcessDispenseRecord;
|
|
|
|
class TransactionController extends Controller
|
|
{
|
|
/**
|
|
* B600: Record Transaction (Asynchronous)
|
|
*/
|
|
public function store(Request $request)
|
|
{
|
|
$machine = $request->get('machine');
|
|
$data = $request->except(['machine', 'key']); // 排除 Middleware 注入物件
|
|
$data['serial_no'] = $machine->serial_no;
|
|
|
|
ProcessTransaction::dispatch($data);
|
|
|
|
return response()->json([
|
|
'success' => true,
|
|
'code' => 200,
|
|
'message' => 'Accepted'
|
|
], 202);
|
|
}
|
|
|
|
/**
|
|
* B601: Record Invoice (Asynchronous)
|
|
*/
|
|
public function recordInvoice(Request $request)
|
|
{
|
|
$machine = $request->get('machine');
|
|
$data = $request->except(['machine', 'key']); // 排除 Middleware 注入物件
|
|
$data['serial_no'] = $machine->serial_no;
|
|
|
|
ProcessInvoice::dispatch($data);
|
|
|
|
return response()->json([
|
|
'success' => true,
|
|
'code' => 200,
|
|
'message' => 'Accepted'
|
|
], 202);
|
|
}
|
|
|
|
/**
|
|
* B602: Record Dispense Result (Asynchronous)
|
|
*/
|
|
public function recordDispense(Request $request)
|
|
{
|
|
$machine = $request->get('machine');
|
|
$data = $request->all();
|
|
$data['serial_no'] = $machine->serial_no;
|
|
|
|
ProcessDispenseRecord::dispatch($data);
|
|
|
|
return response()->json([
|
|
'success' => true,
|
|
'code' => 200,
|
|
'message' => 'Accepted'
|
|
], 202);
|
|
}
|
|
}
|