['is_cooperate','sale_type','sale_id','property_name', 'village_name', 'address', 'head_name', 'head_mobile', 'ratio', 'head_bank_card', 'remark', 'user_id', 'all_profit_amount', 'surplus_profit_amount', 'extract_profit_amount'], ]; } /** * 获取数据权限 * $this->adminInfo['data_rules'] * province city admin_id sale_group_id sale_id property_head_id */ public function queryDataWhere(){ $where = []; $data_rules = $this->adminInfo['data_rules']; if (isset($data_rules['province']) && !empty($data_rules['province'])) { $where[] = ['province','in' ,$data_rules['province']]; } if (isset($data_rules['city']) && !empty($data_rules['city'])) { $where[] = ['city','in' ,$data_rules['city']]; } if (isset($data_rules['sale_group_id']) && !empty($data_rules['sale_group_id'])) { $sale_ids = Sale::where('sale_group_id','in',$data_rules['sale_group_id'])->column('id')??[]; $where[] = ['sale_id','in' ,$sale_ids]; } if (isset($data_rules['sale_id']) && !empty($data_rules['sale_id'])) { $where[] = ['sale_id','in' ,$data_rules['sale_id']]; } if (isset($data_rules['property_head_id']) && !empty($data_rules['property_head_id'])) { $where[] = ['id','in' ,$data_rules['property_head_id']]; } return $where; } /** * @notes 获取列表 * @return array * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException * @author likeadmin * @date 2024/09/19 10:48 */ public function lists(): array { return PropertyHead::where($this->searchWhere)->where($this->queryDataWhere()) ->field(['province','city','area_name','head_corporate_bank','id', 'property_name', 'village_name', 'address', 'head_name', 'head_mobile', 'ratio', 'head_bank_card', 'remark', 'user_id', 'all_profit_amount', 'surplus_profit_amount', 'extract_profit_amount','lon', 'lat','bind_date','sale_type','sale_id','is_cooperate']) ->limit($this->limitOffset, $this->limitLength) ->order(['id' => 'desc']) ->select() ->toArray(); } /** * @notes 获取数量 * @return int * @author likeadmin * @date 2024/09/19 10:48 */ public function count(): int { return PropertyHead::where($this->searchWhere)->where($this->queryDataWhere())->count(); } }