db->table('daily_result'); $builder->select('*'); $builder->where('control_ref_id', $controlId); $builder->where('test_ref_id', $testId); $builder->where('resdate >=', $startDate); $builder->where('resdate <=', $endDate); $builder->orderBy('resdate', 'ASC'); return $builder->get()->getResultArray(); } public function getByControlMonth($controlId, $yearMonth) { $startDate = $yearMonth . '-01'; $endDate = $yearMonth . '-31'; $builder = $this->db->table('daily_result'); $builder->select('*'); $builder->where('control_ref_id', $controlId); $builder->where('resdate >=', $startDate); $builder->where('resdate <=', $endDate); return $builder->get()->getResultArray(); } public function saveResult($data) { $builder = $this->db->table('daily_result'); $existing = $builder->select('*') ->where('control_ref_id', $data['control_ref_id']) ->where('test_ref_id', $data['test_ref_id']) ->where('resdate', $data['resdate']) ->get() ->getRowArray(); if ($existing) { return $builder->where('daily_result_id', $existing['daily_result_id'])->update($data); } else { return $builder->insert($data); } } }