Added panel box alert mail logic in panel check list
Some checks failed
Scan for leaked secrets using Kingfisher / kingfisher-secrets-scan (push) Successful in 12s
Scan for leaked secrets using Kingfisher / kingfisher-secrets-scan (pull_request) Successful in 13s
Gemini PR Review / Gemini PR Review (pull_request) Failing after 18s
Laravel Pint / pint (pull_request) Successful in 4m28s
Laravel Larastan / larastan (pull_request) Failing after 6m9s
Some checks failed
Scan for leaked secrets using Kingfisher / kingfisher-secrets-scan (push) Successful in 12s
Scan for leaked secrets using Kingfisher / kingfisher-secrets-scan (pull_request) Successful in 13s
Gemini PR Review / Gemini PR Review (pull_request) Failing after 18s
Laravel Pint / pint (pull_request) Successful in 4m28s
Laravel Larastan / larastan (pull_request) Failing after 6m9s
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
namespace App\Livewire;
|
namespace App\Livewire;
|
||||||
|
|
||||||
|
use App\Mail\PanelBoxNotOkAlert;
|
||||||
use App\Models\AlertMailRule;
|
use App\Models\AlertMailRule;
|
||||||
use App\Models\Item;
|
use App\Models\Item;
|
||||||
use App\Models\Line;
|
use App\Models\Line;
|
||||||
@@ -9,6 +10,7 @@ use App\Models\PanelBoxValidation;
|
|||||||
use App\Models\Plant;
|
use App\Models\Plant;
|
||||||
use App\Models\ProductCharacteristicsMaster;
|
use App\Models\ProductCharacteristicsMaster;
|
||||||
use App\Models\ProductionCharacteristic;
|
use App\Models\ProductionCharacteristic;
|
||||||
|
use App\Models\StickerMaster;
|
||||||
use Filament\Facades\Filament;
|
use Filament\Facades\Filament;
|
||||||
use Livewire\Component;
|
use Livewire\Component;
|
||||||
use Filament\Notifications\Notification;
|
use Filament\Notifications\Notification;
|
||||||
@@ -322,6 +324,8 @@ public $records = [];
|
|||||||
|
|
||||||
if($this->selectForNotOk){
|
if($this->selectForNotOk){
|
||||||
|
|
||||||
|
$notOkCharacteristics = [];
|
||||||
|
|
||||||
foreach ($this->records as $record) {
|
foreach ($this->records as $record) {
|
||||||
|
|
||||||
$characteristicId = $record['id'];
|
$characteristicId = $record['id'];
|
||||||
@@ -336,6 +340,13 @@ public $records = [];
|
|||||||
->where('item_id', $itemId)
|
->where('item_id', $itemId)
|
||||||
->first();
|
->first();
|
||||||
|
|
||||||
|
$specVal = ProductCharacteristicsMaster::where('plant_id', $this->data['plant_id'])
|
||||||
|
->where('item_id', $itemId)
|
||||||
|
->where('line_id', $this->data['line_id'])
|
||||||
|
->where('machine_id', $characteristic?->machine_id)
|
||||||
|
->where('name', $characteristic?->name)
|
||||||
|
->first();
|
||||||
|
|
||||||
if (($itemCharacteristic?->inspection_type ?? null) === 'Value') {
|
if (($itemCharacteristic?->inspection_type ?? null) === 'Value') {
|
||||||
if ($value == null || $value == '') {
|
if ($value == null || $value == '') {
|
||||||
$status = null;
|
$status = null;
|
||||||
@@ -366,6 +377,46 @@ public $records = [];
|
|||||||
'created_by' => $this->data['created_by'] ?? null,
|
'created_by' => $this->data['created_by'] ?? null,
|
||||||
'updated_by' => $this->data['updated_by'] ?? null,
|
'updated_by' => $this->data['updated_by'] ?? null,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
$notOkCharacteristics[] = [
|
||||||
|
'characteristic_name' => $characteristic?->name ?? null,
|
||||||
|
'observed_value' => $value ?? null,
|
||||||
|
'lower' => $specVal?->lower,
|
||||||
|
'upper' => $specVal?->upper,
|
||||||
|
'status' => $status,
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
$plant = Plant::find($this->data['plant_id']);
|
||||||
|
|
||||||
|
$plantName = $plant?->name;
|
||||||
|
|
||||||
|
$code = $itemAgaPlant->code;
|
||||||
|
|
||||||
|
$mailRule = AlertMailRule::where('plant', $plant->id)->where('module', 'PanelBoxAlert')
|
||||||
|
->where('rule_name', 'PanelBoxAlertMail')
|
||||||
|
->where(fn ($q) => $q->whereNull('schedule_type')->orWhere('schedule_type', ''))
|
||||||
|
->first();
|
||||||
|
|
||||||
|
if ($mailRule && !empty($mailRule->email)) {
|
||||||
|
|
||||||
|
$mail = Mail::to($mailRule->email);
|
||||||
|
|
||||||
|
if (!empty($mailRule->cc_emails)) {
|
||||||
|
$ccEmails = array_filter(
|
||||||
|
array_map('trim', explode(',', $mailRule->cc_emails))
|
||||||
|
);
|
||||||
|
|
||||||
|
$mail->cc($ccEmails);
|
||||||
|
}
|
||||||
|
|
||||||
|
$mail->send(new PanelBoxNotOkAlert(
|
||||||
|
$plantName,
|
||||||
|
$code ?? null,
|
||||||
|
$this->data['serial_number'] ?? null,
|
||||||
|
$this->data['panel_box_supplier'] ?? null,
|
||||||
|
$notOkCharacteristics
|
||||||
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@@ -373,7 +424,6 @@ public $records = [];
|
|||||||
//All validations Passed
|
//All validations Passed
|
||||||
foreach ($this->checklist as $characteristicId => $value) {
|
foreach ($this->checklist as $characteristicId => $value) {
|
||||||
|
|
||||||
|
|
||||||
$characteristic = ProductCharacteristicsMaster::find($characteristicId);
|
$characteristic = ProductCharacteristicsMaster::find($characteristicId);
|
||||||
|
|
||||||
$itemCharacteristic = ProductCharacteristicsMaster::where('plant_id', $this->data['plant_id'])
|
$itemCharacteristic = ProductCharacteristicsMaster::where('plant_id', $this->data['plant_id'])
|
||||||
|
|||||||
Reference in New Issue
Block a user