Просмотр исходного кода

feat: EK-2806: 会员端Promo和banner图增加分国家设置.

kevin 3 месяцев назад
Родитель
Сommit
842d23c8d8
1 измененных файлов с 12 добавлено и 0 удалено
  1. 12 0
      backendApi/modules/v1/controllers/AdController.php

+ 12 - 0
backendApi/modules/v1/controllers/AdController.php

@@ -83,6 +83,18 @@ class AdController extends BaseController
 
         $condition .= ' AND AD.LID=:LID';
         $params[':LID']=$lid;
+
+        $countryIds = array_column($countries, 'ID');
+        if (!empty($countryIds)) {
+            $placeholders = [];
+            foreach ($countryIds as $key => $id) {
+                $paramName = ':countryId_' . $key;
+                $placeholders[] = $paramName;
+                $params[$paramName] = $id;
+            }
+            $condition .= ' AND AD.COUNTRY_ID IN (' . implode(',', $placeholders) . ')';
+        }
+
         $data = Ad::lists($condition, $params, [
             'select' => 'AD.*,ADC.NAME AS COUNTRY_NAME, ADC.CODE AS COUNTRY_CODE',
             'from' => Ad::tableName().' AS AD',