Ver Fonte

自动合格bugfix

theo há 3 anos atrás
pai
commit
f12e6e7e6d

+ 5 - 3
common/helpers/bonus/BonusSend.php

@@ -130,6 +130,8 @@ class BonusSend extends BaseObject {
      */
     public function putFakeOrder() {
         echo('开始处理-假订单' . PHP_EOL);
+        $sysConfig = Cache::getSystemConfig();
+        $mesureUpCondition =  $sysConfig['monthPcsPvFxCondition']['VALUE']; // 月达标条件 NC默认300
         $fakeOrder= Order::find()->where(['PERIOD_NUM'=>$this->_periodNum, 'IS_AUTO'=>'1'])->asArray()->all();
 //        print_r($fakeOrder);exit;
         foreach($fakeOrder as $fOrder){
@@ -139,8 +141,8 @@ class BonusSend extends BaseObject {
                 $flowRemainPvModel = new FlowRemainPv();
                 $flowRemainPvModel->ID = $this->_generateSn();
                 $flowRemainPvModel->USER_ID = $fOrder['USER_ID'];
-                $flowRemainPvModel->REMAIN_PV_FLOW = -30;
-                $flowRemainPvModel->REMAIN_PV_TOTAL = $oRemainPv->REMAIN_PV - 30;
+                $flowRemainPvModel->REMAIN_PV_FLOW = 0 - $mesureUpCondition;
+                $flowRemainPvModel->REMAIN_PV_TOTAL = $oRemainPv->REMAIN_PV - $mesureUpCondition;
                 $flowRemainPvModel->PERIOD_NUM = $this->_periodNum;
                 $flowRemainPvModel->UPDATED_AT = Date::nowTime();
                 $flowRemainPvModel->ORDER_SN = $fOrder['SN'];
@@ -148,7 +150,7 @@ class BonusSend extends BaseObject {
                     $this->addErrors($flowRemainPvModel->getErrors());
                     return false;
                 }
-                $oRemainPv->updateCounters(['REMAIN_PV'=>-30]);
+                $oRemainPv->updateCounters(['REMAIN_PV'=> 0 - $mesureUpCondition]);
                 $transactionRemain->commit();
             } catch (Exception $e) {
                 $transactionRemain->rollBack();

+ 3 - 1
common/helpers/bonus/PerfCalc.php

@@ -192,6 +192,8 @@ class PerfCalc {
         echo('假假假'.$periodNum. PHP_EOL);
         $userHaveRemain = RemainPv::findAllAsArray('REMAIN_PV >0');
         $currentPeriod = Period::getInfoByPeriodNum($periodNum);
+        $sysConfig = Cache::getSystemConfig();
+        $mesureUpCondition =  $sysConfig['monthPcsPvFxCondition']['VALUE']; // 月达标条件 NC默认300
         if($currentPeriod['IS_MONTH']){
             print_r('是月结点'.PHP_EOL);
             $periods = Period::getCurrentMonthPeriodByPeriodNum($periodNum);
@@ -201,7 +203,7 @@ class PerfCalc {
             echo('检查有结余PV的用户,如果他当月PV不足30,则为其创建假订单'. PHP_EOL);
             foreach($userHaveRemain as $uR){
                 $myPv = Order::find()->where(['PERIOD_NUM'=>$periods, 'USER_ID'=>$uR['USER_ID']])->SUM('PV');
-                if($myPv<300){
+                if($myPv < $mesureUpCondition){
                     //制造虚拟订单
                     echo('不足300了,生成假订单' . PHP_EOL);
                     $newOrderForm = new OrderForm();

+ 1 - 1
common/models/Order.php

@@ -131,7 +131,7 @@ class Order extends \common\components\ActiveRecord
      * 查询当月订单
      */
     public static function fetchOrderCurrentMonth($periodNum, $userId){
-        $currentPeriod = Period::findOneAsArray("PERIOD_NUM = :PERIOD_NUM AND IS_DELETE = 0", [':PERIOD_NUM' => $periodNum]);
+        $currentPeriod = Period::findOneAsArray("PERIOD_NUM = :PERIOD_NUM", [':PERIOD_NUM' => $periodNum]);
 
         switch ($currentPeriod['WEEK_NUMBER']){
             case 1:

+ 8 - 5
frontendApi/modules/v1/controllers/DashboardController.php

@@ -78,15 +78,18 @@ class DashboardController extends BaseController
         $myRemainPv = RemainPv::findOne(['USER_ID'=>$baseInfo['ID']])->REMAIN_PV ?? 0;
         // 找到当月的所有订单,计算总PV及总REMAIN_PV
         $myOrders = Order::fetchOrderCurrentMonth($periodNum, $baseInfo['ID']);
-//        print_r($myOrders);
+
         $currentPv = $myOrders->SUM('PV');
         $currentRemainPv = $myOrders->SUM('REMAIN_PV');
 
         $totalRemainPv = $myRemainPv + $currentRemainPv;
-//        print_r($totalRemainPv);
-        $remainMonth = round($totalRemainPv / 300);
-//        print_r($remainMonth);
-        if($currentPv >= 300){ // 如果当月合格,则活跃资格延后一个月
+
+        $sysConfig = Cache::getSystemConfig();
+        $mesureUpCondition =  $sysConfig['monthPcsPvFxCondition']['VALUE']; // 月达标条件 NC默认300
+
+        $remainMonth = round($totalRemainPv / $mesureUpCondition);
+
+        if($currentPv >= $mesureUpCondition){ // 如果当月合格,则活跃资格延后一个月
             $activeEndStr = date("Y-m", strtotime('next month'));
         }else{
             $activeEndStr = date("Y-m");