From a3704c69e390410321c30020c28f2903d9c3c0ed Mon Sep 17 00:00:00 2001 From: chenbo <709206448@qq.com> Date: Wed, 31 Jan 2024 15:21:56 +0800 Subject: [PATCH] update --- app/api/lists/AnimalInfoLists.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/app/api/lists/AnimalInfoLists.php b/app/api/lists/AnimalInfoLists.php index 5a55541..10fc0fb 100644 --- a/app/api/lists/AnimalInfoLists.php +++ b/app/api/lists/AnimalInfoLists.php @@ -18,6 +18,8 @@ namespace app\api\lists; use app\adminapi\lists\BaseAdminDataLists; use app\common\model\animal_info\AnimalInfo; use app\common\lists\ListsSearchInterface; +use app\common\model\farm\Farm; +use app\common\model\fence_house\FenceHouse; /** @@ -55,7 +57,14 @@ class AnimalInfoLists extends BaseApiDataLists implements ListsSearchInterface */ public function lists(): array { - return AnimalInfo::where($this->searchWhere) + $fenceHouseId = $this->request->get('fence_house_id', ''); + $where = []; + if (empty($fenceHouseId)) { + $farmIds = Farm::where('user_id', $this->userId)->column('id'); + $fenceHouseIds = FenceHouse::whereIn('farm_id', $farmIds)->column('id'); + $where[] = ['fence_house_id', 'in', $fenceHouseIds]; + } + return AnimalInfo::where($this->searchWhere)->where($where) ->with(['fenceHouseAttr']) ->limit($this->limitOffset, $this->limitLength) ->order(['id' => 'desc'])