Преглед изворни кода

feat: EK-879: 【AE】管理员增加“Country”属性,根据所选国家限制登录后所显示的奖金、余额等数据(二期).

kevinElken пре 10 месеци
родитељ
комит
51ef912fdf

+ 28 - 1
backendApi/modules/v1/controllers/FinanceController.php

@@ -1140,6 +1140,18 @@ class FinanceController extends BaseController {
         ]);
         $condition = $filter['condition'];
         $params = $filter['params'];
+
+        $isSuper = AdminRole::isSuperAdmin(\Yii::$app->getUser()->getUserInfo()['roleId']);
+        if (!$isSuper) {
+            $adminId = Yii::$app->getUser()->getUserInfo()['id'];
+            $adminCountry = AdminCountry::getCountry($adminId);
+            $quotedAdminCountry = array_map(function($item) {
+                return "'" . addslashes($item) . "'";
+            }, $adminCountry);
+
+            $condition .= " AND U.COUNTRY_ID IN (" . implode(',', $quotedAdminCountry) . ")";
+        }
+
         $listObj = new RechargeList();
         $data = $listObj->getList(['condition' => $condition, 'params' => $params]);
         return static::notice($data);
@@ -1160,8 +1172,23 @@ class FinanceController extends BaseController {
             'BANK_NO' => 'R.BANK_NO',
             'CREATED_AT' => 'R.CREATED_AT',
         ]);
+
+        $condition = $filter['condition'];
+        $params = $filter['params'];
+
+        $isSuper = AdminRole::isSuperAdmin(\Yii::$app->getUser()->getUserInfo()['roleId']);
+        if (!$isSuper) {
+            $adminId = Yii::$app->getUser()->getUserInfo()['id'];
+            $adminCountry = AdminCountry::getCountry($adminId);
+            $quotedAdminCountry = array_map(function($item) {
+                return "'" . addslashes($item) . "'";
+            }, $adminCountry);
+
+            $condition .= " AND U.COUNTRY_ID IN (" . implode(',', $quotedAdminCountry) . ")";
+        }
+
         $form = new FinanceExportForm();
-        $result = $form->run($filter, 'Recharge'); // 充值申请
+        $result = $form->run(['condition' => $condition, 'params' => $params], 'Recharge'); // 充值申请
         if (!$result) {
             return static::notice(Form::formatErrorsForApi($form->getErrors()), 400);
         }

+ 1 - 1
backendApi/modules/v1/models/lists/finance/RechargeList.php

@@ -32,7 +32,7 @@ class RechargeList extends \common\libs\dataList\DataList implements DataListInt
             'from' => Recharge::tableName() . ' AS R',
             'join' => [
                 ['LEFT JOIN', UserInfo::tableName() . ' AS UI', 'UI.USER_ID=R.USER_ID'],
-                ['LEFT JOIN', USER::tableName() . ' AS U', 'U.ID=R.USER_ID'],
+                ['INNER JOIN', USER::tableName() . ' AS U', 'U.ID=R.USER_ID'],
                 ['LEFT JOIN', OpenBank::tableName() . ' AS OB', 'OB.BANK_CODE=R.OPEN_BANK'],
                 ['LEFT JOIN', Admin::tableName() . ' AS ADMA', 'ADMA.ID=R.AUDIT_ADMIN'],
                 ['LEFT JOIN', Countries::tableName() . ' AS CN', 'U.COUNTRY_ID=CN.ID'],