diff --git a/app/Http/Controllers/Admin/BasicSettings/DiscordNotificationController.php b/app/Http/Controllers/Admin/BasicSettings/DiscordNotificationController.php
index 36a1805..7441543 100644
--- a/app/Http/Controllers/Admin/BasicSettings/DiscordNotificationController.php
+++ b/app/Http/Controllers/Admin/BasicSettings/DiscordNotificationController.php
@@ -37,7 +37,7 @@ class DiscordNotificationController extends AdminController
// ── Tab 2: 機台個別設定 ──
$machineQuery = \App\Models\Machine\Machine::query()->with(['company', 'machineModel']);
if ($user->isSystemAdmin()) {
- if ($filterCompanyId = $request->input('filter_company_id')) {
+ if ($filterCompanyId = trim($request->input('filter_company_id', ''))) {
$machineQuery->where('company_id', $filterCompanyId);
}
if ($searchMachine = $request->input('search_machine')) {
diff --git a/app/Http/Controllers/Admin/BasicSettings/MachineModelController.php b/app/Http/Controllers/Admin/BasicSettings/MachineModelController.php
index 712127e..2b46771 100644
--- a/app/Http/Controllers/Admin/BasicSettings/MachineModelController.php
+++ b/app/Http/Controllers/Admin/BasicSettings/MachineModelController.php
@@ -22,13 +22,13 @@ class MachineModelController extends AdminController
{
$validated = $request->validate([
'name' => 'required|string|max:255',
- 'temp_upper_limit' => 'nullable|numeric|min:-50|max:100',
- 'temp_lower_limit' => 'nullable|numeric|min:-50|max:100',
+ 'temp_upper_limit' => 'nullable|integer|min:-50|max:100',
+ 'temp_lower_limit' => 'nullable|integer|min:-50|max:100',
]);
$settings = [
- 'temp_upper_limit' => $request->filled('temp_upper_limit') ? (float)$request->temp_upper_limit : null,
- 'temp_lower_limit' => $request->filled('temp_lower_limit') ? (float)$request->temp_lower_limit : null,
+ 'temp_upper_limit' => $request->filled('temp_upper_limit') ? (int)$request->temp_upper_limit : null,
+ 'temp_lower_limit' => $request->filled('temp_lower_limit') ? (int)$request->temp_lower_limit : null,
];
MachineModel::create([
@@ -56,13 +56,13 @@ class MachineModelController extends AdminController
{
$validated = $request->validate([
'name' => 'required|string|max:255',
- 'temp_upper_limit' => 'nullable|numeric|min:-50|max:100',
- 'temp_lower_limit' => 'nullable|numeric|min:-50|max:100',
+ 'temp_upper_limit' => 'nullable|integer|min:-50|max:100',
+ 'temp_lower_limit' => 'nullable|integer|min:-50|max:100',
]);
$settings = [
- 'temp_upper_limit' => $request->filled('temp_upper_limit') ? (float)$request->temp_upper_limit : null,
- 'temp_lower_limit' => $request->filled('temp_lower_limit') ? (float)$request->temp_lower_limit : null,
+ 'temp_upper_limit' => $request->filled('temp_upper_limit') ? (int)$request->temp_upper_limit : null,
+ 'temp_lower_limit' => $request->filled('temp_lower_limit') ? (int)$request->temp_lower_limit : null,
];
$machine_model->update([
diff --git a/lang/en.json b/lang/en.json
index 17e055e..7b3c227 100644
--- a/lang/en.json
+++ b/lang/en.json
@@ -2128,5 +2128,8 @@
"Default Temp Upper Limit (°C)": "Default Temp Upper Limit (°C)",
"Default Temp Lower Limit (°C)": "Default Temp Lower Limit (°C)",
"Default Temp Limits": "Default Temp Limits",
+ "Default Temp Alert Upper Limit (°C)": "Default Temp Alert Upper Limit (°C)",
+ "Default Temp Alert Lower Limit (°C)": "Default Temp Alert Lower Limit (°C)",
+ "Default Temp Alert Limits": "Default Temp Alert Limits",
"Machine model saved successfully.": "Machine model saved successfully."
}
\ No newline at end of file
diff --git a/lang/ja.json b/lang/ja.json
index d943433..b8f87c1 100644
--- a/lang/ja.json
+++ b/lang/ja.json
@@ -2131,5 +2131,8 @@
"Default Temp Upper Limit (°C)": "デフォルト温度上限 (°C)",
"Default Temp Lower Limit (°C)": "デフォルト温度下限 (°C)",
"Default Temp Limits": "デフォルト温度制御範囲",
+ "Default Temp Alert Upper Limit (°C)": "デフォルト温度アラート上限 (°C)",
+ "Default Temp Alert Lower Limit (°C)": "デフォルト温度アラート下限 (°C)",
+ "Default Temp Alert Limits": "デフォルト温度アラート範囲",
"Machine model saved successfully.": "機器モデルが正常に追加されました。"
}
\ No newline at end of file
diff --git a/lang/zh_TW.json b/lang/zh_TW.json
index 363b43e..5d9639b 100644
--- a/lang/zh_TW.json
+++ b/lang/zh_TW.json
@@ -2187,5 +2187,8 @@
"Default Temp Upper Limit (°C)": "預設溫度上限 (°C)",
"Default Temp Lower Limit (°C)": "預設溫度下限 (°C)",
"Default Temp Limits": "預設溫控範圍",
+ "Default Temp Alert Upper Limit (°C)": "預設溫度告警上限 (°C)",
+ "Default Temp Alert Lower Limit (°C)": "預設溫度告警下限 (°C)",
+ "Default Temp Alert Limits": "預設溫度告警範圍",
"Machine model saved successfully.": "機台型號已成功新增。"
}
\ No newline at end of file
diff --git a/resources/views/admin/basic-settings/discord-notifications/index.blade.php b/resources/views/admin/basic-settings/discord-notifications/index.blade.php
index 1e07a93..2c02d00 100644
--- a/resources/views/admin/basic-settings/discord-notifications/index.blade.php
+++ b/resources/views/admin/basic-settings/discord-notifications/index.blade.php
@@ -1,126 +1,7 @@
@extends('layouts.admin')
@section('content')
-
+
-
-
-
-
-
-
+
+
+
+
-
+
$type
};
@endphp
-
+
{{ $label }}
@endforeach
@@ -298,7 +177,7 @@
default => $type
};
@endphp
-
+
{{ $label }}
@endforeach
@@ -352,12 +231,11 @@
@if(auth()->user()->isSystemAdmin())
-
+
@endif
@@ -466,17 +344,17 @@
@elseif($mTempAlert === 'disabled')
@else
-
+
{{ __('Inherit') }}
@endif
@if($mTempAlert !== 'disabled')
-
- {{ number_format($finalLower, 1) }}°C ~ {{ number_format($finalUpper, 1) }}°C
+
+ {{ number_format($finalLower, 0) }}°C ~ {{ number_format($finalUpper, 0) }}°C
-
+
({{ $tempSource }})
@@ -549,7 +427,7 @@
@elseif($mTempAlert === 'disabled')
@else
-
+
{{ __('Inherit') }}
@endif
@@ -582,10 +460,10 @@
{{ __('Temp Alert Range') }}
-
- {{ number_format($finalLower, 1) }}°C ~ {{ number_format($finalUpper, 1) }}°C
+
+ {{ number_format($finalLower, 0) }}°C ~ {{ number_format($finalUpper, 0) }}°C
-
+
({{ $tempSource }})
@@ -696,13 +574,13 @@
-
+
-
-
+
+
+
+
+
+
@@ -835,38 +713,21 @@
@csrf
@method('PUT')
-
+
-
-
+
-
@@ -894,8 +755,8 @@
-
{{ __('Machine-Specific Webhook') }}
-
{{ __('Leave empty to inherit company settings') }}
+
+
{{ __('Leave empty to inherit company settings') }}
@@ -903,10 +764,10 @@
-
{{ __('Temperature Alert Settings') }}
-
{{ __('Define custom temperature limits or inherit from model') }}
+
+
{{ __('Define custom temperature limits or inherit from model') }}
- {{ __('Alert Switch') }}
-
+ {{ __('Alert Switch') }}
+
+
+
+
+
@@ -960,16 +821,40 @@
x-transition.duration.300ms
class="grid grid-cols-2 gap-4 animate-luxury-in">
-
{{ __('Custom Upper Limit (°C)') }}
-
+
{{ __('Custom Upper Limit (°C)') }}
+
-
{{ __('Custom Lower Limit (°C)') }}
-
+
{{ __('Custom Lower Limit (°C)') }}
+
@@ -991,3 +876,261 @@
@endsection
+
+@section('scripts')
+
+@endsection
diff --git a/resources/views/admin/basic-settings/machines/index.blade.php b/resources/views/admin/basic-settings/machines/index.blade.php
index b139932..b3f3514 100644
--- a/resources/views/admin/basic-settings/machines/index.blade.php
+++ b/resources/views/admin/basic-settings/machines/index.blade.php
@@ -69,8 +69,22 @@
currentMachine: null,
showCreateModelModal: false,
showEditModelModal: false,
+ newModel: { name: '', temp_upper_limit: '', temp_lower_limit: '' },
currentModel: { name: '', temp_upper_limit: '', temp_lower_limit: '' },
modelActionUrl: '',
+ adjustModelTemp(modelObj, field, delta, fallbackVal) {
+ let current = modelObj[field];
+ if (current === undefined || current === null || current === '') {
+ current = parseInt(fallbackVal);
+ } else {
+ current = parseInt(current);
+ }
+ if (isNaN(current)) current = 0;
+ let newValue = current + delta;
+ if (newValue < -50) newValue = -50;
+ if (newValue > 100) newValue = 100;
+ modelObj[field] = newValue.toString();
+ },
selectedFileCount: 0,
selectedFiles: [null, null, null],
deletedPhotos: [false, false, false],
@@ -654,7 +668,7 @@
{{ __('Add Machine') }}
-
-
diff --git a/resources/views/admin/basic-settings/machines/partials/tab-models.blade.php b/resources/views/admin/basic-settings/machines/partials/tab-models.blade.php
index 8a92f8b..375be03 100644
--- a/resources/views/admin/basic-settings/machines/partials/tab-models.blade.php
+++ b/resources/views/admin/basic-settings/machines/partials/tab-models.blade.php
@@ -50,7 +50,7 @@
{{ __('Model Name') }} |
- {{ __('Default Temp Limits') }} |
+ {{ __('Default Temp Alert Limits') }}
{{ __('Machine Count') }} |
@@ -77,11 +77,11 @@
@if(isset($model->settings['temp_upper_limit']) || isset($model->settings['temp_lower_limit']))
- {{ $model->settings['temp_lower_limit'] ?? '-' }}°C
+ {{ isset($model->settings['temp_lower_limit']) ? (int)round($model->settings['temp_lower_limit']) : '-' }}°C
~
- {{ $model->settings['temp_upper_limit'] ?? '-' }}°C
+ {{ isset($model->settings['temp_upper_limit']) ? (int)round($model->settings['temp_upper_limit']) : '-' }}°C
@else
@@ -100,7 +100,7 @@
|
-
@@ -166,7 +166,7 @@
{{-- Action Buttons --}}
- name), temp_upper_limit: @js($model->settings['temp_upper_limit'] ?? ''), temp_lower_limit: @js($model->settings['temp_lower_limit'] ?? '') }; modelActionUrl = '{{ route('admin.basic-settings.machine-models.update', $model) }}'; showEditModelModal = true"
+ name), temp_upper_limit: @js(isset($model->settings['temp_upper_limit']) ? (string)(int)round($model->settings['temp_upper_limit']) : ''), temp_lower_limit: @js(isset($model->settings['temp_lower_limit']) ? (string)(int)round($model->settings['temp_lower_limit']) : '') }; modelActionUrl = '{{ route('admin.basic-settings.machine-models.update', $model) }}'; showEditModelModal = true"
class="flex-1 flex items-center justify-center gap-2 py-3 rounded-xl bg-slate-50 dark:bg-slate-800 text-slate-500 dark:text-slate-400 font-bold text-xs hover:bg-cyan-500 hover:text-white transition-all duration-300 border border-slate-200/50 dark:border-slate-700/50">
|