field($field) ->order($order) ->paginate(['list_rows' => $pageSize, 'query' => request()->param()]); $page = $list->render(); $data['list'] = $list->toArray()['data']; $data['count'] = $list->total(); $data['last_page'] = $list->toArray()['last_page']; $data['page'] = $page; return $data; } /** * 获取所有配置关联的奖励ID * @param int $configId 配置ID * @return array 奖励ID数组 */ public static function getRewardIds($configId) { return self::where('sign_config_id', $configId) ->column('reward_id'); } /** * 批量添加配置奖励关联 * @param int $configId 配置ID * @param array $rewardIds 奖励ID数组 * @return bool 是否成功 */ public static function addBatch($configId, $rewardIds) { // 先删除原有关联 self::where('sign_config_id', $configId)->delete(); // 批量添加新关联 $data = []; foreach ($rewardIds as $rewardId) { $data[] = [ 'sign_config_id' => $configId, 'reward_id' => $rewardId, 'create_time' => time() ]; } return self::insertAll($data); } }