zz пре 5 година
родитељ
комит
f6ba1ce5d9

+ 14 - 9
app/Console/Commands/BookTest.php

@@ -674,17 +674,22 @@ class BookTest extends Command
             if($info->isEmpty()) break;
             foreach ($info as $item){
                 if($item->status != 'PAID') continue;
-                $old = UserDivisionCpcPropertyService::getUserPropertyV2($item->uid);
-                if($old) continue;
+                //$old = UserDivisionCpcPropertyService::getUserPropertyV2($item->uid);
+                //if($old) continue;
                 $property = UserDivisionCpcPropertyService::calculateUserPropertyV2($item->uid);
                 if($property){
-                    DB::table('user_division_cpc_property_v2')->insert([
-                        'openid'=>$property['openid'],
-                        'property'=>$property['property'],
-                        'is_enable'=>1,
-                        'created_at'=>date('Y-m-d H:i:s'),
-                        'updated_at'=>date('Y-m-d H:i:s')
-                    ]);
+                    $info = UserDivisionCpcPropertyService::getUserPropertyV2($item->uid);
+                    if($info == 'none'){
+                        DB::table('user_division_cpc_property_v2')->insert([
+                            'openid'=>$property['openid'],
+                            'property'=>$property['property'],
+                            'is_enable'=>1,
+                            'created_at'=>date('Y-m-d H:i:s'),
+                            'updated_at'=>date('Y-m-d H:i:s')
+                        ]);
+                    }
+                    if($info == 'high') continue;
+                    UserDivisionCpcPropertyService::updateV2($property);
                 }
             }
             $tmp = $item->id;

+ 19 - 1
app/Http/Controllers/Wap/Pay/MonthOrderController.php

@@ -15,6 +15,7 @@ use App\Modules\Subscribe\Models\Order;
 use App\Modules\Subscribe\Services\OrderService;
 use App\Modules\Subscribe\Services\YearOrderService;
 use App\Modules\User\Services\ReadRecordService;
+use App\Modules\User\Services\UserDivisionCpcPropertyService;
 use App\Modules\User\Services\UserMonthService;
 use App\Modules\User\Services\UserService;
 use GuzzleHttp\Client;
@@ -150,7 +151,9 @@ class MonthOrderController extends Controller
         $total_fee = $request->post('total_fee');
         $trade_no = $request->post('trade_no');
         $out_trade_no = $request->post('out_trade_no');
+        $result_code = $request->post('result_code',0);
         $this->recordOrderCallBack($request);
+        if(!$result_code) return response('success');
         if ($check = checkParam($request->except('_url'), ['app_id', 'user_id', 'total_fee', 'trade_no', 'out_trade_no'])) {
             return response()->error('PARAM_EMPTY', ['msg' => $check]);
         }
@@ -161,6 +164,7 @@ class MonthOrderController extends Controller
             UserMonthService::createLOrder($user_id, $plan_id, $total_fee, $trade_no, $out_trade_no);
             $this->addOrderAndVip($user_id, $out_trade_no, $trade_no, $total_fee);
             $this->successPayPushMsg($user_id);
+            $this->userProperty($user_id);
         }
         //}
 
@@ -289,7 +293,7 @@ class MonthOrderController extends Controller
                 )
             ]);
         }catch (\Exception $e){
-            Log::error();
+            Log::error('recordOrderCallBack error');
         }
 
 
@@ -331,4 +335,18 @@ class MonthOrderController extends Controller
         }
         return;
     }
+
+    private function userProperty($uid){
+        try{
+            $userproperty = UserDivisionCpcPropertyService::calculateUserPropertyV2($uid);
+            if(!$userproperty) {
+                return ;
+            }
+            UserDivisionCpcPropertyService::createorUpdateV2($userproperty);
+        }catch (\Exception $e){
+            Log::error('month userProperty error');
+            Log::error($e);
+        }
+
+    }
 }

+ 18 - 2
app/Http/Controllers/Wap/Pay/OrdersController.php

@@ -1896,7 +1896,7 @@ class OrdersController extends Controller
     }
 
     private function userProperty($uid,$price,$charge_type,$activity_id){
-        try{
+        /*try{
             $old_property = UserDivisionCpcPropertyService::getUserProperty($uid);
             if(!$activity_id){
                 $this->chargeGiveGift($uid,$old_property,$price,$charge_type);
@@ -1906,7 +1906,23 @@ class OrdersController extends Controller
                 return ;
             }
             UserDivisionCpcPropertyService::createorUpdate($userproperty);
-        }catch (\Exception $e){}
+        }catch (\Exception $e){}*/
+
+
+        try{
+            $old_property = UserDivisionCpcPropertyService::getUserPropertyV2($uid);
+            if(!$activity_id){
+                $this->chargeGiveGift($uid,$old_property,$price,$charge_type);
+            }
+            $userproperty = UserDivisionCpcPropertyService::calculateUserPropertyV2($uid);
+            if(!$userproperty) {
+                return ;
+            }
+            UserDivisionCpcPropertyService::createorUpdateV2($userproperty);
+        }catch (\Exception $e){
+            Log::error('pay userProperty error');
+            Log::error($e);
+        }
 
     }
 

+ 24 - 7
app/Http/Controllers/Wap/Web/WelcomeController.php

@@ -42,6 +42,8 @@ class WelcomeController extends BaseController
     private $force_subscribe_info = null;
 
     private $property = '';
+
+    private $user = null;
     /**
      * 首页
      */
@@ -64,6 +66,7 @@ class WelcomeController extends BaseController
         $bottom_show_type = $activity_options['bottom_show_type'];
         $activity_img = $activity_options['activity_img'];
         $user = $activity_options['user'];
+        $this->user = $user;
         $hidden_reader_menus = false;
         $send_order_id = $this->send_order_id;
         //隐藏阅读页面菜单
@@ -103,6 +106,7 @@ class WelcomeController extends BaseController
         }
         //设置用户是否充值
         $this->setIsPaid();
+        $this->setProperty($user->openid);
         $channel_activities_flag = $this->judgeChannelActivity($user);
         //最近阅读页面 推荐
         if(isset($user->sex)){
@@ -330,9 +334,9 @@ class WelcomeController extends BaseController
         //if( in_array($this->distribution_channel_id,explode(',',env('OUTSTANDING_YEAR_ORDER_SITE'))) ){
             //if($this->uid%2 == 0){
                 //$userDivisionProperty = UserDivisionPropertyService::getUserProperty($this->uid);
-                $userDivisionProperty = UserDivisionCpcPropertyService::getUserProperty($this->uid);
+                //$userDivisionProperty = UserDivisionCpcPropertyService::getUserProperty($this->uid);
 
-                $userDivisionProperty && $userDivisionProperty == 'high' && $outstanding_year_order = true;
+                $this->property == 'high' && $outstanding_year_order = true;
             //}
         //}
         return $outstanding_year_order;
@@ -599,12 +603,12 @@ class WelcomeController extends BaseController
         if(is_null($cpc_status) || $cpc_status == 1){
             $cookie_ad_status = Cookie::get('cpc_ad_status');
             if($cookie_ad_status) return $cookie_ad_status == 'show';
-            $property = UserDivisionCpcPropertyService::userLevel($openid);
+            //$property = UserDivisionCpcPropertyService::userLevel($openid);
             /*if(UserService::isCpcUser($this->uid)){
                 Cookie::queue('cpc_ad_status', 'show');
                 return true;
             }*/
-            if($property  &&  $property->property == 'none'){
+            if($this->property == 'none'){
                 Cookie::queue('cpc_ad_status', 'show');
                 return true;
             }
@@ -2108,8 +2112,16 @@ class WelcomeController extends BaseController
     }
 
 
-    private function userPproperty($openid){
-        $old = UserDivisionCpcPropertyService::userLevel($openid);
+    private function userPproperty(){
+        if($this->property == 'undefined'){
+            if($this->user && time()-strtotime($this->user->created_at) >= 3*66400){
+                $info = UserDivisionCpcPropertyService::calculateUserPropertyV2($this->uid);
+                if($info && $info['property'] != 'undefined'){
+                    UserDivisionCpcPropertyService::updateV2($info['openid'],$info['property']);
+                }
+            }
+        }
+        /*$old = UserDivisionCpcPropertyService::userLevel($openid);
         if(!$old) return ;
         $this->property = $old->property;
         if($old->type != 'NEW') return ;
@@ -2124,7 +2136,7 @@ class WelcomeController extends BaseController
             dispatch($job);
         } catch (\Exception $e) {
             \Log::info($e);
-        }
+        }*/
     }
 
     private function guidePersonalAccount($openid){
@@ -2214,6 +2226,11 @@ class WelcomeController extends BaseController
         }
     }
 
+    private function setProperty($openid){
+        $property = UserDivisionCpcPropertyService::userLevelV2($openid);
+        $this->property = $property;
+    }
+
     //统计ua
     private function recordUA($ua)
     {

+ 2 - 2
app/Http/Middleware/ReadOauth.php

@@ -337,7 +337,7 @@ class ReadOauth
             'last_interactive_time' => date('Y-m-d H:i:s')
         ]);
 
-        try {
+        /*try {
             $send_data = array(
                 'type' => 'subscribe',
                 'data' => ['openid'=>'','uid'=>$uid]
@@ -347,7 +347,7 @@ class ReadOauth
             dispatch($job);
         } catch (\Exception $e) {
             Log::info($e);
-        }
+        }*/
         return true;
     }
 

+ 15 - 1
app/Modules/User/Services/UserDivisionCpcPropertyService.php

@@ -277,7 +277,7 @@ WHERE openid in (SELECT openid FROM users WHERE id = $uid)";
             ->select('user_division_cpc_property_v2.property')->first();
         if($result)
             return $result->property;
-        return '';
+        return 'none';
     }
 
     public static function updateV2($openid,$property=''){
@@ -287,4 +287,18 @@ WHERE openid in (SELECT openid FROM users WHERE id = $uid)";
 
         UserDivisionCpcPropertyV2::where('openid',$openid)->where('is_enable',1)->update($update_info);
     }
+
+    public static function createorUpdateV2($data){
+        $old = UserDivisionCpcPropertyV2::where('openid',$data['openid'])->where('is_enable',1)->first();
+        if(!$old){
+            UserDivisionCpcPropertyV2::create([
+                'openid'=>$data['openid'] ,
+                'property'=>$data['property'] ,
+                'is_enable'=>1
+            ]);
+        }else{
+            $old->property = $data['property'];
+            $old->save();
+        }
+    }
 }