diff --git a/app/Models/PatVisit/PatVisitModel.php b/app/Models/PatVisit/PatVisitModel.php index 90d0ec8..714f282 100644 --- a/app/Models/PatVisit/PatVisitModel.php +++ b/app/Models/PatVisit/PatVisitModel.php @@ -30,7 +30,16 @@ class PatVisitModel extends BaseModel { public function showByPatient($InternalPID) { $rows = $this->select("*, patvisit.CreateDate as PVCreateDate, patdiag.CreateDate as PDCreateDate, patvisitadt.CreateDate as PVACreateDate") ->join('patdiag', 'patdiag.InternalPVID=patvisit.InternalPVID and patdiag.DelDate is null', 'left') - ->join('patvisitadt', 'patvisitadt.InternalPVID=patvisit.InternalPVID', 'left') + ->join('(SELECT a1.* + FROM patvisitadt a1 + INNER JOIN ( + SELECT InternalPVID, MAX(PVADTID) AS MaxID + FROM patvisitadt + GROUP BY InternalPVID + ) a2 ON a1.InternalPVID = a2.InternalPVID AND a1.PVADTID = a2.MaxID + ) AS patvisitadt', + 'patvisitadt.InternalPVID = patvisit.InternalPVID', + 'left') ->join('location', 'location.LocationID=patvisitadt.LocationID', 'left') ->where('patvisit.InternalPID',$InternalPID)->findAll(); return $rows;