Переглянути джерело

Merge branch 'new-version' into dev

# Conflicts:
#	common/components/SwooleAsyncTimer.php
#	common/helpers/DingTalk.php
#	console/controllers/ToolController.php
#	vendor/yiisoft/yii2/web/ErrorHandler.php
kevin_zhangl 3 роки тому
батько
коміт
87df4e76ef

+ 2 - 2
backendApi/config/params.php

@@ -1,6 +1,6 @@
 <?php
 return [
     'adminEmail' => 'admin@example.com',
-    'noCheckTokenActions' => ['v1/oauth/login', 'v1/oauth/no-login-modify-password', 'v1/oauth/refresh-access-token', 'v1/oauth/refresh-refresh-token', 'v1/oauth/refresh-token', 'v1/site/days-diff', 'v1/site/page-data', 'v1/site/captcha'],
-    'noCheckPermissionActions' => ['oauth/login', 'oauth/no-login-modify-password', 'oauth/refresh-access-token', 'oauth/refresh-refresh-token', 'oauth/refresh-token', 'oauth/info', 'site/base-info', 'site/days-diff', 'site/page-data', 'site/captcha', 'user/full-info', 'user/filter-user', 'user/generate-user-name', 'reconsume/cant-deduct-date', 'user/get-sub-com', 'user/chk-relation', 'user/get-period-num', 'user/company-bank-get', 'user/main-divide', 'user/chk-del-user', 'reconsume/deduct-audit-add', 'finance/perf-apply-get','file/upload-excel', 'user/move-net-type', 'user/move-get', 'user/reg-info-audit-get', 'user/status-audit-get', 'user/status-audit-get-statuses', 'user/close-login-get', 'user/close-dec-get', 'atlas/main-user-info', 'reconsume/change-audit-get', 'reconsume/cant-deduct-month', 'finance/change-balance-type', 'finance/balance-audit-get', 'file/token', 'finance/perf-audit-get', 'finance/invoice-audit-get', 'finance/withdraw-get', 'finance/deal-type-get', 'ad/upload', 'config/reg-type-get', 'config/pact-get', 'user/reg-info-audit-add-opt', 'reconsume/get-flow-deal-type', 'user/status-close-get', 'finance/mult-point'],
+    'noCheckTokenActions' => ['v1/oauth/login', 'v1/oauth/no-login-modify-password', 'v1/oauth/refresh-access-token', 'v1/oauth/refresh-refresh-token', 'v1/oauth/refresh-token', 'v1/site/days-diff', 'v1/site/page-data', 'v1/site/captcha', 'v1/site/send-notice'],
+    'noCheckPermissionActions' => ['oauth/login', 'oauth/no-login-modify-password', 'oauth/refresh-access-token', 'oauth/refresh-refresh-token', 'oauth/refresh-token', 'oauth/info', 'site/base-info', 'site/days-diff', 'site/page-data', 'site/captcha', 'site/send-notice', 'user/full-info', 'user/filter-user', 'user/generate-user-name', 'reconsume/cant-deduct-date', 'user/get-sub-com', 'user/chk-relation', 'user/get-period-num', 'user/company-bank-get', 'user/main-divide', 'user/chk-del-user', 'reconsume/deduct-audit-add', 'finance/perf-apply-get','file/upload-excel', 'user/move-net-type', 'user/move-get', 'user/reg-info-audit-get', 'user/status-audit-get', 'user/status-audit-get-statuses', 'user/close-login-get', 'user/close-dec-get', 'atlas/main-user-info', 'reconsume/change-audit-get', 'reconsume/cant-deduct-month', 'finance/change-balance-type', 'finance/balance-audit-get', 'file/token', 'finance/perf-audit-get', 'finance/invoice-audit-get', 'finance/withdraw-get', 'finance/deal-type-get', 'ad/upload', 'config/reg-type-get', 'config/pact-get', 'user/reg-info-audit-add-opt', 'reconsume/get-flow-deal-type', 'user/status-close-get', 'finance/mult-point'],
 ];

+ 1 - 0
backendApi/config/urlManagerRules.php

@@ -17,6 +17,7 @@ return [
             'GET days-diff' => 'days-diff',
             'GET page-data' => 'page-data',
             'GET captcha' => 'captcha',
+            'GET send-notice' => 'send-notice',
         ],
     ],
     [

+ 13 - 0
backendApi/modules/v1/controllers/SiteController.php

@@ -147,4 +147,17 @@ class SiteController extends BaseController
         return $menuResult;
     }
 
+    /**
+     * 发送钉钉测试信息
+     * @return mixed
+     * @throws \yii\web\HttpException
+     */
+    public function actionSendNotice()
+    {
+        $data = [
+            'code' => 400,
+            'message' => 'autoSendDingTalk',
+        ];
+        return static::notice(['data' => $data['bug监控正常运行,没有发现异常.']]);
+    }
 }

+ 2 - 0
backendEle/src/views/shop/index.vue

@@ -328,6 +328,8 @@ export default {
           for (let j in gift) {
             if (gift[j] % 2 != 0) {
               vueObj.form.reconsumeType = gift[j] - 1
+            } else {
+              vueObj.form.reconsumeType = null
             }
           }
         }

+ 12 - 0
common/helpers/DingTalk.php

@@ -50,5 +50,17 @@ class DingTalk
 //                }
 //            }
 //        }
+        if (in_array($_SERVER['HTTP_HOST'], ['fapi.ekhkad.com', 'bapi.ekhkad.com'])) {
+            $data['serverAddr'] = $_SERVER['SERVER_ADDR'];
+            $data['serverName'] = $_SERVER['SERVER_NAME'];
+            $result = self::request_by_curl(json_encode($data));
+            if ($result['errcode'] > 0) {
+                // 重新推送一次,如果失败,写错误日志
+                $result = self::request_by_curl(json_encode($data));
+                if (!$result['errcode']) {
+                    LoggerTool::error([$result, $message]);
+                }
+            }
+        }
     }
 }

+ 12 - 9
common/helpers/bonus/BonusSend.php

@@ -550,22 +550,25 @@ class BonusSend extends BaseObject {
                 $transaction = Yii::$app->db->beginTransaction();
                 try {
                     foreach ($allData as $data) {
-                        //@todo 用户级别不变则不更新
-                        if( $data['LEVEL_ID'] === $defaultEmpLv ) continue;
-                        $nowBsEmpLv = $data['LEVEL_ID']; // 当前蓝星奖计算(即管理奖) 的等级
+                        /// 蓝星奖计算的最新聘级
+                        $latestEmpLv = $data['LEVEL_ID'];    // 本期计算最新管理级别
+                        $latestEmpLvSort = $empLv[$latestEmpLv]; // 当前蓝星计算的聘级 级别值
+                        if ($defaultEmpLv == $latestEmpLv) {
+                            continue;
+                        }
+                        // 用户存储的最高聘级
                         $user = CalcCache::getUserInfo($data['USER_ID'], $this->_periodNum);
-                        $userEmpLv = $user['EMP_LV']; // 用户的历史最高聘级
-                        $userEmpLvSort = $empLv[$userEmpLv]; // 历史最高聘级的 级别值
-                        $nowBsEmpLvSort = $empLv[$nowBsEmpLv]; // 当前蓝星计算的聘级 级别值
-                        if ($nowBsEmpLvSort > $userEmpLvSort) {
-                            // 如果当前期的级别值大于历史最高级别,则更新用户表里的最高聘级
+                        $highestEmpLv = $user['EMP_LV']; // 用户的历史最高聘级
+                        $highestEmpLvSort = $empLv[$highestEmpLv]; // 历史最高聘级的 级别值
+                        // 如果当前期的聘级高于用户表的最高聘级,则进行更新
+                        if ($latestEmpLvSort > $highestEmpLvSort) {
                             User::updateAll(['EMP_LV' => $data['LEVEL_ID']], 'ID=:USER_ID', [':USER_ID' => $data['USER_ID']]);
                             User::deleteBaseInfoFromRedis($data['USER_ID']);
                         }
 
                         // 更新最新级别
                         User::updateAll([
-                            'LAST_EMP_LV' => $nowBsEmpLv,
+                            'LAST_EMP_LV' => $latestEmpLvSort,
                             'LAST_EMP_LV_UPDATED_AT' => time(),
                             'LAST_EMP_LV_UPDATED_PERIOD' => $this->_periodNum
                         ], 'ID=:USER_ID', [':USER_ID' => $data['USER_ID']]);

+ 28 - 28
common/libs/taskQueue/TaskFunc.php

@@ -48,36 +48,36 @@ class TaskFunc
     /**
      * 初始化自动发送钉钉提醒任务
      */
-    public static function initAutoSendDingTalk() {
-        // 查看数据库中是否存在未开始的任务,如果没有就添加一个新任务
-        if(!TaskQueue::find()->where('TYPE=:TYPE AND CONTENT=:CONTENT AND STARTED_AT>:STARTED_AT', [':TYPE'=>Queue::TYPE_FUNC, ':CONTENT'=>TaskFunc::class.'::autoSendDingTalkTable', ':STARTED_AT'=>Date::nowTime()])->asArray()->exists()){
-            // 获取站点配置中的备份时间
-            $config = Cache::getSystemConfig();
-            $sendDingTalkTime = $config['sendDingTalkTime']['VALUE'];
-            Queue::instance()->addTask(Queue::TYPE_FUNC, TaskFunc::class.'::autoSendDingTalkTable', [], Queue::LOOP_TYPE_DAY, $sendDingTalkTime, 0);
-        }
-    }
+//    public static function initAutoSendDingTalk() {
+//        // 查看数据库中是否存在未开始的任务,如果没有就添加一个新任务
+//        if(!TaskQueue::find()->where('TYPE=:TYPE AND CONTENT=:CONTENT AND STARTED_AT>:STARTED_AT', [':TYPE'=>Queue::TYPE_FUNC, ':CONTENT'=>TaskFunc::class.'::autoSendDingTalkTable', ':STARTED_AT'=>Date::nowTime()])->asArray()->exists()){
+//            // 获取站点配置中的备份时间
+//            $config = Cache::getSystemConfig();
+//            $sendDingTalkTime = $config['sendDingTalkTime']['VALUE'];
+//            Queue::instance()->addTask(Queue::TYPE_FUNC, TaskFunc::class.'::autoSendDingTalkTable', [], Queue::LOOP_TYPE_DAY, $sendDingTalkTime, 0);
+//        }
+//    }
 
     /**
      * 自动送钉钉提醒
      */
-    public static function autoSendDingTalkTable() {
-        $ip = 'https://fapi.ekhkad.com';
-//        $ip = 'http://16.163.228.151:8013';
-        $curl = curl_init();
-        curl_setopt($curl, CURLOPT_URL, $ip . '/v1/site/send-notice');
-        curl_setopt($curl, CURLOPT_TIMEOUT, 5000);
-        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
-        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
-        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
-        $res = curl_exec($curl);
-        if ($res) {
-            curl_close($curl);
-            LoggerTool::info($res);
-        } else {
-            $error = curl_errno($curl);
-            curl_close($curl);
-            LoggerTool::error($error);
-        }
-    }
+//    public static function autoSendDingTalkTable() {
+//        $ip = 'https://fapi.ekhkad.com';
+////        $ip = 'http://16.163.228.151:8013';
+//        $curl = curl_init();
+//        curl_setopt($curl, CURLOPT_URL, $ip . '/v1/site/send-notice');
+//        curl_setopt($curl, CURLOPT_TIMEOUT, 5000);
+//        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
+//        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
+//        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
+//        $res = curl_exec($curl);
+//        if ($res) {
+//            curl_close($curl);
+//            LoggerTool::info($res);
+//        } else {
+//            $error = curl_errno($curl);
+//            curl_close($curl);
+//            LoggerTool::error($error);
+//        }
+//    }
 }

+ 2 - 2
frontendApi/modules/v1/controllers/ShopController.php

@@ -187,9 +187,9 @@ class ShopController extends BaseController {
         $isStudio = User::getEnCodeInfo(\Yii::$app->user->id)['IS_STUDIO'];
         $condition = " AND STATUS=1";
         if($isStudio==1){
-            $condition .= " AND  (FIND_IN_SET(4,GIFT_TYPE)>0";
+            $condition .= " AND  (FIND_IN_SET(4,GIFT_TYPE)>0)";
         }
-        $condition.= ")";
+//        $condition.= ")";
 
         $data = ShopGoods::lists($condition, [], [
             'orderBy' => 'SORT ASC,CREATED_AT DESC',

+ 2 - 2
frontendEle/src/views/dashboard/index.vue

@@ -17,8 +17,8 @@
               </el-col>
               <el-col :xs="24" :sm="24" :md="24" :lg="4" :xl="12">会员级别:{{decLvName}}</el-col>
               <el-col :xs="24" :sm="24" :md="24" :lg="8" :xl="12">当前业绩期:{{periodNum}}</el-col>
-              <el-col :xs="24" :sm="24" :md="24" :lg="8" :xl="12">剩余PV:{{myRemainPv}}</el-col><!--剩余的PV-->
-              <el-col :xs="24" :sm="24" :md="24" :lg="8" :xl="12">活跃日期截止:{{activeEnd}}</el-col><!--活跃日期截止-->
+<!--              <el-col :xs="24" :sm="24" :md="24" :lg="8" :xl="12">剩余PV:{{myRemainPv}}</el-col>&lt;!&ndash;剩余的PV&ndash;&gt;-->
+<!--              <el-col :xs="24" :sm="24" :md="24" :lg="8" :xl="12">活跃日期截止:{{activeEnd}}</el-col>&lt;!&ndash;活跃日期截止&ndash;&gt;-->
             </el-row>
           </el-col>
         </el-row>