Fix mikro expertise auto-open and early warning target logic
This commit is contained in:
@@ -691,7 +691,7 @@ class FrontpageController extends Controller
|
||||
if (!Session::has('previlage')) {
|
||||
return redirect('/login');
|
||||
}
|
||||
$periksa = Periksa::select('id', 'poli_id', 'daftar')->find($periksaId);
|
||||
$periksa = Periksa::select('id', 'poli_id', 'daftar', 'nofoto')->find($periksaId);
|
||||
if (!$periksa) {
|
||||
abort(404);
|
||||
}
|
||||
@@ -706,9 +706,11 @@ class FrontpageController extends Controller
|
||||
|
||||
return view($this->mikroExpertiseViewName(), $this->buildMikroViewData($master, [
|
||||
'focusPeriksaId' => (string) $periksaId,
|
||||
'focusNoFoto' => (string) ($periksa->nofoto ?? ''),
|
||||
'expertiseReturnUrl' => $returnUrl,
|
||||
'openExpertiseOnLoad' => true,
|
||||
'initialListMode' => 'searchbydate',
|
||||
'initialListMode' => 'nofoto',
|
||||
'initialSearchValue' => (string) ($periksa->nofoto ?? ''),
|
||||
'initialStartDate' => $periksaDate,
|
||||
'initialEndDate' => $periksaDate,
|
||||
]));
|
||||
|
||||
@@ -6,7 +6,6 @@ use App\Services\SimbhpStockService;
|
||||
use App\SIMBHPJenis;
|
||||
use App\SIMBHPReport;
|
||||
use App\User;
|
||||
use App\Ruangan;
|
||||
use Carbon\Carbon;
|
||||
use Livewire\Component;
|
||||
use Livewire\Attributes\On;
|
||||
@@ -18,7 +17,9 @@ class GudangPos extends Component
|
||||
use WithPagination;
|
||||
|
||||
public string $tanggal = '';
|
||||
public ?string $penerimaId = null;
|
||||
public string $namaRuangan = '';
|
||||
public string $penerimaId = '';
|
||||
public string $penerimaManual = '';
|
||||
|
||||
public string $scan = '';
|
||||
public string $selectedKode = '';
|
||||
@@ -36,7 +37,8 @@ class GudangPos extends Component
|
||||
public function mount(): void
|
||||
{
|
||||
$this->tanggal = date('Y-m-d');
|
||||
$this->penerimaId = User::orderBy('nama', 'ASC')->value('nama');
|
||||
$firstUserId = User::orderBy('nama', 'ASC')->value('id');
|
||||
$this->penerimaId = $firstUserId ? (string) $firstUserId : '';
|
||||
}
|
||||
|
||||
public function updatingSearch(): void
|
||||
@@ -183,7 +185,7 @@ class GudangPos extends Component
|
||||
return;
|
||||
}
|
||||
|
||||
if (!$this->penerimaId) {
|
||||
if ($this->penerimaId === '') {
|
||||
$this->toast('error', 'Penerima wajib dipilih.');
|
||||
return;
|
||||
}
|
||||
@@ -201,7 +203,26 @@ class GudangPos extends Component
|
||||
return;
|
||||
}
|
||||
|
||||
$penerima = $this->penerimaId;
|
||||
$namaRuangan = trim((string) $this->namaRuangan);
|
||||
if ($namaRuangan === '') {
|
||||
$this->toast('error', 'Nama ruang wajib diisi.');
|
||||
return;
|
||||
}
|
||||
|
||||
if ($this->penerimaId === '__manual__') {
|
||||
$penerima = trim((string) $this->penerimaManual);
|
||||
if ($penerima === '') {
|
||||
$this->toast('error', 'Nama penerima manual wajib diisi.');
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
$user = User::select('id', 'nama')->find((int) $this->penerimaId);
|
||||
if (!$user) {
|
||||
$this->toast('error', 'Penerima tidak ditemukan.');
|
||||
return;
|
||||
}
|
||||
$penerima = trim((string) ($user->nama ?? ''));
|
||||
}
|
||||
|
||||
$service = app(SimbhpStockService::class);
|
||||
|
||||
@@ -253,7 +274,7 @@ class GudangPos extends Component
|
||||
];
|
||||
}
|
||||
|
||||
DB::transaction(function () use ($prepared, $date, $penerima) {
|
||||
DB::transaction(function () use ($prepared, $date, $penerima, $namaRuangan) {
|
||||
foreach ($prepared as $row) {
|
||||
/** @var SIMBHPJenis $jenis */
|
||||
$jenis = $row['jenis'];
|
||||
@@ -261,7 +282,7 @@ class GudangPos extends Component
|
||||
'tanggal' => (int) $date->format('d'),
|
||||
'bulan' => (int) $date->format('m'),
|
||||
'tahun' => (int) $date->format('Y'),
|
||||
'deskripsi' => 'Diterima oleh ' . ($penerima ?? $penerimaId),
|
||||
'deskripsi' => 'Ruangan: ' . $namaRuangan . ' | Diterima oleh ' . ($penerima !== '' ? $penerima : 'Unknown'),
|
||||
'pemasukan' => null,
|
||||
'pengeluaran' => (int) $row['qty'],
|
||||
'qty_base' => (int) $row['qty_base'],
|
||||
@@ -277,6 +298,7 @@ class GudangPos extends Component
|
||||
$this->cart = [];
|
||||
$this->qty = 1;
|
||||
$this->keterangan = '';
|
||||
$this->penerimaManual = '';
|
||||
$this->toast('success', 'Barang keluar berhasil diproses.');
|
||||
$this->dispatch('gudang-refresh');
|
||||
$this->dispatch('gudangpos-close-modal');
|
||||
@@ -322,7 +344,6 @@ class GudangPos extends Component
|
||||
$service = app(SimbhpStockService::class);
|
||||
|
||||
$users = User::select('id', 'nama', 'previlage')->orderBy('nama', 'ASC')->get();
|
||||
$ruangans = Ruangan::select('id', 'ruangan')->orderBy('ruangan', 'ASC')->get();
|
||||
|
||||
$query = SIMBHPJenis::query()->orderBy('jenis', 'ASC');
|
||||
$search = trim((string) $this->search);
|
||||
@@ -395,7 +416,6 @@ class GudangPos extends Component
|
||||
|
||||
return view('livewire.gudang-pos', [
|
||||
'users' => $users,
|
||||
'ruangans' => $ruangans,
|
||||
'products' => $products,
|
||||
'stockMap' => $stockMap,
|
||||
'latestExpiredMap' => $latestExpiredMap,
|
||||
|
||||
Reference in New Issue
Block a user