Explorar o código

三方订单-如果消费者是共富体系会员则将PV值和推荐人更换为共富体系对应信息

sunxbiao hai 5 meses
pai
achega
f03b3920b5

+ 9 - 1
app/common/repositories/store/order/StoreOrderRepository.php

@@ -3992,7 +3992,15 @@ class StoreOrderRepository extends BaseRepository
3992 3992
         //推荐养老金添加
3993 3993
         $pvfee = bcmul($order['total_price'], $sanfangfenpei['pv'], 2);
3994 3994
         $zijiUser = Db::name("user")->where('uid', $order["uid"])->find();
3995
-        $sprerdUser = Db::name("user")->where('uid', $zijiUser['spread_uid'])->find();
3995
+        $spreadUid = $zijiUser['spread_uid'];
3996
+        /** @var SharedProsperityUserRepository $sharedProsperityUserRepository */
3997
+        $sharedProsperityUserRepository = app()->make(SharedProsperityUserRepository::class);
3998
+        $sharedProsperityUserEntity = $sharedProsperityUserRepository->getSharedProsperityUserEntityByUserId($order["uid"]);
3999
+        // 判断推广者 如果推广者 是共富体系会员
4000
+        if (!empty($sharedProsperityUserEntity->getId())) {
4001
+            $spreadUid = $sharedProsperityUserEntity->getParentId();
4002
+        }
4003
+        $sprerdUser = Db::name("user")->where('uid', $spreadUid)->find();
3996 4004
         //不为空的时候进行添加推荐奖励
3997 4005
         if ($sprerdUser) {
3998 4006
             //奖励推荐用户养老金

+ 32 - 11
app/common/repositories/user/UserThirdRepository.php

@@ -11,9 +11,12 @@
11 11
 namespace app\common\repositories\user;
12 12
 
13 13
 use app\common\dao\user\UserThirdDao;
14
+use app\common\enum\shared\SharedProsperityRewardRecordEnum;
14 15
 use app\common\model\user\User;
15 16
 use app\common\repositories\BaseRepository;
16 17
 
18
+use app\common\repositories\shared\SharedProsperityRewardRecordRepository;
19
+use app\common\repositories\shared\SharedProsperityUserRepository;
17 20
 use app\common\repositories\store\order\StoreOrderRepository;
18 21
 use app\common\repositories\store\product\ProductRepository;
19 22
 use app\model\common\TbOrderModel;
@@ -833,17 +836,35 @@ class UserThirdRepository extends BaseRepository
833 836
             Db::name("user_sign_gongxian")->insert($gongxian_data);//添加贡献记录
834 837
             log::info("===添加完积分和贡献值");
835 838
 
836
-            // 添加pv记录
837
-            $pv_data = [
838
-                "uid"           =>$user_id,
839
-                "pv"            =>$gongxian,
840
-                "addtime"       =>time(),
841
-                "status"        =>-1,
842
-                "order_type"    =>$type_shop,
843
-                "order_id"      =>$order_id,
844
-                "mark"          =>"购买{$make}商品获得的PV",
845
-            ];
846
-            Db::name("user_pv_log")->insert($pv_data);//添加pv记录
839
+            /** @var SharedProsperityUserRepository $sharedProsperityUserRepository */
840
+            $sharedProsperityUserRepository = app()->make(SharedProsperityUserRepository::class);
841
+            $sharedProsperityUserEntity = $sharedProsperityUserRepository->getSharedProsperityUserEntityByUserId($user_id);
842
+            // 判断推广者 如果推广者 是共富体系会员
843
+            if (empty($sharedProsperityUserEntity->getId())) {
844
+                // 添加pv记录
845
+                $pv_data = [
846
+                    "uid"           =>$user_id,
847
+                    "pv"            =>$gongxian,
848
+                    "addtime"       =>time(),
849
+                    "status"        =>-1,
850
+                    "order_type"    =>$type_shop,
851
+                    "order_id"      =>$order_id,
852
+                    "mark"          =>"购买{$make}商品获得的PV",
853
+                ];
854
+                Db::name("user_pv_log")->insert($pv_data);//添加pv记录
855
+            } else {
856
+                /** @var SharedProsperityRewardRecordRepository $sharedProsperityRewardRecordRepository */
857
+                $sharedProsperityRewardRecordRepository = app()->make(SharedProsperityRewardRecordRepository::class);
858
+                $sharedProsperityRewardRecordRepository->addSharedProsperityRewardRecord(
859
+                    $sharedProsperityUserEntity->getUserId(),
860
+                    SharedProsperityRewardRecordEnum::TYPE['PV']['code'],
861
+                    SharedProsperityRewardRecordEnum::PM['INCOME']['code'],
862
+                    $gongxian,
863
+                    $type_shop,
864
+                    $order_sn,
865
+                    "购买{$make}商品获得的PV"
866
+                );
867
+            }
847 868
 
848 869
             //判断是否是老用户  is_old=1是1.0的用户,1.0的用户要总pv*45%的红包
849 870
             if($user["is_old"]==1){