Browse Source

Merge branch 'new-version' of http://16.162.42.175:8014/guanli/aklast into feature/theo-1061-auto-mesure-up

theojeng 3 năm trước cách đây
mục cha
commit
df0165bf7d

+ 15 - 0
backendEle/src/App.vue

@@ -18,4 +18,19 @@ export default {
     padding: 0;
     background: #f4f6f8;
   }
+
+  .el-table__body-wrapper::-webkit-scrollbar {
+    width: 12px; /*滚动条宽度*/
+    height: 10px; /*滚动条高度*/
+  }
+  .el-table__body-wrapper::-webkit-scrollbar-track {
+    border-radius: 10px; /*滚动条的背景区域的圆角*/
+    -webkit-box-shadow: inset 0 0 15px rgba(238,238,238, 0.3);
+    background-color: #eeeeee; /*滚动条的背景颜色*/
+  }
+  .el-table__body-wrapper::-webkit-scrollbar-thumb {
+    border-radius: 10px; /*滚动条的圆角*/
+    -webkit-box-shadow: inset 0 0 15px rgba(145, 143, 0143, 0.3);
+    background-color: rgb(145, 143, 143); /*滚动条的背景颜色*/
+  }
 </style>

+ 2 - 0
common/helpers/bonus/BonusCalc.php

@@ -47,6 +47,7 @@ use common\models\EmployLevel;
 use common\models\FlowBonus;
 use common\models\PerfActiveUser;
 use common\models\ScoreMonth;
+use common\models\StorePerfLog;
 use common\models\User;
 use common\models\UserInfo;
 use common\models\UserPerf;
@@ -1076,6 +1077,7 @@ class BonusCalc extends BaseObject {
         if( $perfPv <= 0 ) {
             return false;
         }
+        StorePerfLog::stGroupPv($this->_periodNum,$this->_calcYearMonth, $userId, $perfPv);
         // 业绩乘以比例为奖金
         $storeBonus = Tool::formatPrice($perfPv * $this->_sysConfig['storePercent']['VALUE'] / 100);
         if ($storeBonus <= 0) {

+ 10 - 8
common/helpers/bonus/PerfCalc.php

@@ -1313,7 +1313,6 @@ class PerfCalc {
                 $userId = $everyData['USER_ID'];
                 $pv = $everyData['MONTH_PV'];
                 $userBaseInfo = CalcCache::getUserInfo($userId, $this->_periodNum);
-                $userRelation = CalcCache::getUserRelationInfo($userId, $this->_periodNum);
                 // 记录有业绩单的用户
                 StorePerfLog::addOrUpdate(
                     $this->_periodNum, 
@@ -1325,8 +1324,7 @@ class PerfCalc {
                         'MONTH_PV' => $pv,
                         'PERIOD_NUM' => $this->_periodNum,
                         'CALC_MONTH' => $this->_calcYearMonth,
-                        'CREATE_AT' => time(),
-                        'PARENT_UID' => $userRelation['PARENT_UID']
+                        'CREATE_AT' => time()
                     ],
                     $pv
                 );
@@ -1336,11 +1334,13 @@ class PerfCalc {
                     CalcCache::nowPeriodPerf($userId, $this->_periodNum, [
                         'STORE_PV_GRAND' => $pv,
                     ]);
+                    StorePerfLog::stParendStudio($this->_periodNum,$this->_calcYearMonth, [$userId], $userId);
                 } else {
+                    $allUser = [];
+                    $studioUid = '';
                     // 如果此用户不是店铺,继续上找到店铺并累加上去PV
-                    $this->loopRelationParentDo($userId, function ($parent) use (&$everyData) {
+                    $this->loopRelationParentDo($userId, function ($parent) use (&$everyData,&$allUser,&$studioUid) {
                         $parentUser = CalcCache::getUserInfo($parent['PARENT_UID'], $this->_periodNum);
-                        $userRelation = CalcCache::getUserRelationInfo($parent['PARENT_UID'], $this->_periodNum);
                         StorePerfLog::addOrUpdate(
                             $this->_periodNum, 
                             $this->_calcYearMonth, 
@@ -1351,22 +1351,24 @@ class PerfCalc {
                                 'MONTH_PV' => 0,
                                 'PERIOD_NUM' => $this->_periodNum,
                                 'CALC_MONTH' => $this->_calcYearMonth,
-                                'CREATE_AT' => time(),
-                                'PARENT_UID' => $userRelation['PARENT_UID']
+                                'CREATE_AT' => time()
                             ],
                             $everyData['MONTH_PV']
                         );
+                        array_push($allUser, $parent['PARENT_UID']);
                         if ($parentUser['IS_STUDIO']) {
                             CalcCache::nowPeriodPerf($parent['PARENT_UID'], $this->_periodNum, [
                                 'STORE_PV_GRAND' => $everyData['MONTH_PV']
                             ]);
                             CalcCache::addHasPerfUsers($parent['PARENT_UID'], $this->_periodNum);
-                            
+                            $studioUid = $parent['PARENT_UID'];
                             return self::LOOP_FINISH;
                         }
                         
                         unset($parent);
                     });
+                    array_push($allUser, $userId);
+                    StorePerfLog::stParendStudio($this->_periodNum,$this->_calcYearMonth, $allUser, $studioUid);
                 }
             }
             unset($allData);

+ 32 - 0
common/models/StorePerfLog.php

@@ -79,4 +79,36 @@ class StorePerfLog extends \common\components\ActiveRecord
 
         return true;
     }
+
+    // 更新stpefrlog表,用户小组分组工作室ID
+    public static function stParendStudio($periodNum, $calcMonth, $allUidIn, $studioId) {
+        if (!is_array($allUidIn) || empty($allUidIn) || empty($studioId)) {
+            return false;
+        }
+        $allUidIn = implode("','", $allUidIn);
+        StorePerfLog::updateAll(
+            ['PARENT_UID' => $studioId], 
+            "PERIOD_NUM=:PERIOD_NUM AND CALC_MONTH=:CALC_MONTH AND USER_ID IN ('".$allUidIn."')", 
+            [
+                ':PERIOD_NUM' => $periodNum,
+                ':CALC_MONTH' => $calcMonth
+            ]
+        );
+
+        return true;
+    }
+
+    public static function stGroupPv($periodNum, $calcMonth, $uid, $groupPv) {
+        StorePerfLog::updateAll(
+            ['GROUP_PV' => $groupPv], 
+         
+            "PERIOD_NUM=:PERIOD_NUM AND CALC_MONTH=:CALC_MONTH AND USER_ID=:USER_ID", 
+            [
+                ':PERIOD_NUM' => $periodNum, 
+                ':CALC_MONTH' => $calcMonth, 
+                ':USER_ID' => $uid, 
+            ]
+        ); 
+        return true;  
+    }  
 }

+ 15 - 0
frontendEle/src/App.vue

@@ -18,4 +18,19 @@ export default {
     padding: 0;
     background: #f4f6f8;
   }
+
+  .el-table__body-wrapper::-webkit-scrollbar {
+    width: 12px; /*滚动条宽度*/
+    height: 10px; /*滚动条高度*/
+  }
+  .el-table__body-wrapper::-webkit-scrollbar-track {
+    border-radius: 10px; /*滚动条的背景区域的圆角*/
+    -webkit-box-shadow: inset 0 0 15px rgba(238,238,238, 0.3);
+    background-color: #eeeeee; /*滚动条的背景颜色*/
+  }
+  .el-table__body-wrapper::-webkit-scrollbar-thumb {
+    border-radius: 10px; /*滚动条的圆角*/
+    -webkit-box-shadow: inset 0 0 15px rgba(145, 143, 0143, 0.3);
+    background-color: rgb(145, 143, 143); /*滚动条的背景颜色*/
+  }
 </style>