xialei 1 год назад
Родитель
Сommit
a0ed089d0e

+ 92 - 92
app/command/PensionTasks.php

@@ -163,103 +163,103 @@ class PensionTasks extends Command
163
 
163
 
164
 
164
 
165
                 // 结算红包
165
                 // 结算红包
166
-                $user_sign_hongbao_list = Db::name('user_sign_hongbao')
167
-                    ->where('status', -1)
168
-                    ->where('order_id', $offline['id'])
169
-                    ->whereIn('type', [1, 2])
170
-                    ->select()
171
-                    ->toArray();
172
-                foreach ($user_sign_hongbao_list as $user_sign_hongbao) {
173
-                    if($user_sign_hongbao['uid']){
174
-                        // 修改红包
175
-                        Db::name('user')
176
-                            ->where('uid', $user_sign_hongbao['uid'])
177
-                            ->inc('hongbao', (float)$user_sign_hongbao['number'])
178
-                            ->update();
179
-                        Db::name('user_sign_hongbao')
180
-                            ->where('status', -1)
181
-                            ->where('id', $user_sign_hongbao['id'])
182
-                            ->update([
183
-                                'status'          => 1,
184
-                                'settlement_time' => date('Y-m-d H:i:s')
185
-                            ]);
186
-                    }
187
-                }
166
+                // $user_sign_hongbao_list = Db::name('user_sign_hongbao')
167
+                //     ->where('status', -1)
168
+                //     ->where('order_id', $offline['id'])
169
+                //     ->whereIn('type', [1, 2])
170
+                //     ->select()
171
+                //     ->toArray();
172
+                // foreach ($user_sign_hongbao_list as $user_sign_hongbao) {
173
+                //     if($user_sign_hongbao['uid']){
174
+                //         // 修改红包
175
+                //         Db::name('user')
176
+                //             ->where('uid', $user_sign_hongbao['uid'])
177
+                //             ->inc('hongbao', (float)$user_sign_hongbao['number'])
178
+                //             ->update();
179
+                //         Db::name('user_sign_hongbao')
180
+                //             ->where('status', -1)
181
+                //             ->where('id', $user_sign_hongbao['id'])
182
+                //             ->update([
183
+                //                 'status'          => 1,
184
+                //                 'settlement_time' => date('Y-m-d H:i:s')
185
+                //             ]);
186
+                //     }
187
+                // }
188
 
188
 
189
 
189
 
190
-                // 结算积分
191
-                $user_sign_score_list = Db::name('user_sign_score')
192
-                    ->where('status', -1)
193
-                    ->where('order_id', $offline['id'])
194
-                    ->whereIn('type', [1, 2])
195
-                    ->select()
196
-                    ->toArray();
197
-                foreach ($user_sign_score_list as $user_sign_score) {
198
-                    if($user_sign_score['uid']){
199
-                        // 修改积分
200
-                        Db::name('user')
201
-                        ->where('uid', $user_sign_score['uid'])
202
-                        ->inc('score', (float)$user_sign_score['reward_socre'])
203
-                        ->update();
204
-                        Db::name('user_sign_score')
205
-                            ->where('status', -1)
206
-                            ->where('id', $user_sign_score['id'])
207
-                            ->update([
208
-                                'status'          => 1,
209
-                                'settlement_time' => date('Y-m-d H:i:s')
210
-                            ]);
211
-                    }
212
-                }
190
+                // // 结算积分
191
+                // $user_sign_score_list = Db::name('user_sign_score')
192
+                //     ->where('status', -1)
193
+                //     ->where('order_id', $offline['id'])
194
+                //     ->whereIn('type', [1, 2])
195
+                //     ->select()
196
+                //     ->toArray();
197
+                // foreach ($user_sign_score_list as $user_sign_score) {
198
+                //     if($user_sign_score['uid']){
199
+                //         // 修改积分
200
+                //         Db::name('user')
201
+                //         ->where('uid', $user_sign_score['uid'])
202
+                //         ->inc('score', (float)$user_sign_score['reward_socre'])
203
+                //         ->update();
204
+                //         Db::name('user_sign_score')
205
+                //             ->where('status', -1)
206
+                //             ->where('id', $user_sign_score['id'])
207
+                //             ->update([
208
+                //                 'status'          => 1,
209
+                //                 'settlement_time' => date('Y-m-d H:i:s')
210
+                //             ]);
211
+                //     }
212
+                // }
213
 
213
 
214
 
214
 
215
-                // 结算贡献值
216
-                $user_sign_gongxian_list = Db::name('user_sign_gongxian')
217
-                    ->where('status', -1)
218
-                    ->where('order_id', $offline['id'])
219
-                    ->whereIn('type', [1, 2])
220
-                    ->select()
221
-                    ->toArray();
222
-                foreach ($user_sign_gongxian_list as $user_sign_gongxian) {
223
-                    if($user_sign_gongxian['uid']){
224
-                        // 修改贡献值
225
-                        Db::name('user')
226
-                        ->where('uid', $user_sign_gongxian['uid'])
227
-                        ->inc('contribute', (float)$user_sign_gongxian['number'])
228
-                        ->update();
229
-                        Db::name('user_sign_gongxian')
230
-                        ->where('status', -1)
231
-                        ->where('id', $user_sign_gongxian['id'])
232
-                        ->update([
233
-                            'status'          => 1,
234
-                            'settlement_time' => date('Y-m-d H:i:s')
235
-                        ]);
236
-                    }
237
-                }
215
+                // // 结算贡献值
216
+                // $user_sign_gongxian_list = Db::name('user_sign_gongxian')
217
+                //     ->where('status', -1)
218
+                //     ->where('order_id', $offline['id'])
219
+                //     ->whereIn('type', [1, 2])
220
+                //     ->select()
221
+                //     ->toArray();
222
+                // foreach ($user_sign_gongxian_list as $user_sign_gongxian) {
223
+                //     if($user_sign_gongxian['uid']){
224
+                //         // 修改贡献值
225
+                //         Db::name('user')
226
+                //         ->where('uid', $user_sign_gongxian['uid'])
227
+                //         ->inc('contribute', (float)$user_sign_gongxian['number'])
228
+                //         ->update();
229
+                //         Db::name('user_sign_gongxian')
230
+                //         ->where('status', -1)
231
+                //         ->where('id', $user_sign_gongxian['id'])
232
+                //         ->update([
233
+                //             'status'          => 1,
234
+                //             'settlement_time' => date('Y-m-d H:i:s')
235
+                //         ]);
236
+                //     }
237
+                // }
238
 
238
 
239
-                // 结算佣金
240
-                $user_bill_list = Db::name('user_bill')
241
-                ->where('status', 0)
242
-                ->where('commission_type','<>', 5)
243
-                ->where([ 'link_id' => $offline['id'], 'order_sn' => $offline['order_sn']])
244
-                ->select()
245
-                ->toArray();
246
-                foreach ($user_bill_list as $user_bill) {
247
-                    if($user_bill['uid']){
248
-                        if ($user_bill['commission_type'] != 5) {
249
-                            if (in_array($user_bill['commission_type'], [7,12,19])) {
250
-                                Db::name("merchant")
251
-                                    ->where("mer_id", $user_bill['mer_id'])
252
-                                    ->inc('brokerage_price', (float)$user_bill['number'])
253
-                                    ->update();
254
-                            } else {
255
-                                Db::name('user')
256
-                                    ->where('uid', $user_bill['uid'])
257
-                                    ->inc('brokerage_price', (float)$user_bill['number'])
258
-                                    ->update();
259
-                            }
260
-                        }
261
-                    }
262
-                }
239
+                // // 结算佣金
240
+                // $user_bill_list = Db::name('user_bill')
241
+                // ->where('status', 0)
242
+                // ->where('commission_type','<>', 5)
243
+                // ->where([ 'link_id' => $offline['id'], 'order_sn' => $offline['order_sn']])
244
+                // ->select()
245
+                // ->toArray();
246
+                // foreach ($user_bill_list as $user_bill) {
247
+                //     if($user_bill['uid']){
248
+                //         if ($user_bill['commission_type'] != 5) {
249
+                //             if (in_array($user_bill['commission_type'], [7,12,19])) {
250
+                //                 Db::name("merchant")
251
+                //                     ->where("mer_id", $user_bill['mer_id'])
252
+                //                     ->inc('brokerage_price', (float)$user_bill['number'])
253
+                //                     ->update();
254
+                //             } else {
255
+                //                 Db::name('user')
256
+                //                     ->where('uid', $user_bill['uid'])
257
+                //                     ->inc('brokerage_price', (float)$user_bill['number'])
258
+                //                     ->update();
259
+                //             }
260
+                //         }
261
+                //     }
262
+                // }
263
 
263
 
264
 
264
 
265
             });
265
             });

+ 112 - 29
app/common/repositories/merchant/order/OrderMerchantRepository.php

@@ -628,7 +628,10 @@ class OrderMerchantRepository extends BaseRepository
628
 
628
 
629
                 $user = $userRepository->getOne($where);
629
                 $user = $userRepository->getOne($where);
630
                 $order = (object)$order;
630
                 $order = (object)$order;
631
-                $this->feidacang_fenyong($user, $order_data, 0);
631
+                if($user){
632
+                    $this->feidacang_fenyong($user, $order_data, 0);
633
+                }
634
+                $this->feidacang_fenyong_mer($user, $order_data, 0);
632
                 $this->doBind($user, $order, $flag);//锁客
635
                 $this->doBind($user, $order, $flag);//锁客
633
                 Db::name("log")->insert(['data' => '绑定用户完成']);//日志记录
636
                 Db::name("log")->insert(['data' => '绑定用户完成']);//日志记录
634
                 // $this->doBroadcast($actuallyPaid, $mer_id);
637
                 // $this->doBroadcast($actuallyPaid, $mer_id);
@@ -979,7 +982,6 @@ class OrderMerchantRepository extends BaseRepository
979
                 break;
982
                 break;
980
             default:
983
             default:
981
                 return true;
984
                 return true;
982
-
983
         }
985
         }
984
         $userOfflineRechargeRepository = app()->make(UserOfflineRechargeRepository::class);
986
         $userOfflineRechargeRepository = app()->make(UserOfflineRechargeRepository::class);
985
         if (!$user['mer_id']) {
987
         if (!$user['mer_id']) {
@@ -1306,18 +1308,14 @@ class OrderMerchantRepository extends BaseRepository
1306
         $yonghu_bili_tuijian = '0.05';
1308
         $yonghu_bili_tuijian = '0.05';
1307
         //用户推荐人,消费者的推荐人佣金
1309
         //用户推荐人,消费者的推荐人佣金
1308
         $yonghu_tuijian = $this->getUserGroupRate($user['user_group']);
1310
         $yonghu_tuijian = $this->getUserGroupRate($user['user_group']);
1309
-
1310
-        $getMerchantContribution = $this->getMerchantContribution($mer_fanyongbili);
1311
-        //商家贡献值比例
1312
-        $mer_gonxian = $getMerchantContribution['gonxian'];
1313
-        //  商家京豆比例
1314
-        $mer_jd = $getMerchantContribution['jd'];
1315
-        //跨店分佣
1316
-        $kd = 0.1;
1311
+        //用户推荐人,消费者的推荐人复购金
1312
+        $yonghu_fugou = '0.1';
1317
         /**
1313
         /**
1318
          * 各自的比例结束
1314
          * 各自的比例结束
1319
          */
1315
          */
1320
 
1316
 
1317
+        // 用户---------------------------------------------------------------------------------------------------------------
1318
+
1321
         //用户可拿的养老金
1319
         //用户可拿的养老金
1322
         $user_yanglaojin = bcmul($divisible_commission, $yonghu_bili, 2);
1320
         $user_yanglaojin = bcmul($divisible_commission, $yonghu_bili, 2);
1323
         if ($user_yanglaojin >= 0.01) {
1321
         if ($user_yanglaojin >= 0.01) {
@@ -1331,23 +1329,25 @@ class OrderMerchantRepository extends BaseRepository
1331
         }
1329
         }
1332
 
1330
 
1333
         // 用户可以拿到的红包 红包:如果是1.0的老用户 pv的45%放到红包里面。14*45%=6.3元。直至金额满足1.0平台当前用户身份为止就不在反红包了
1331
         // 用户可以拿到的红包 红包:如果是1.0的老用户 pv的45%放到红包里面。14*45%=6.3元。直至金额满足1.0平台当前用户身份为止就不在反红包了
1334
-        $old_vip_limit = Db::name('user_sign_hongbao')->where('uid',$order["uid"])->sum('number');
1335
-        if($user["is_old"]==1 && $user["old_vip_limit"] < $old_vip_limit){
1332
+        $old_vip_limit = Db::name('user_sign_hongbao')->where('uid',$order["uid"])->sum('number') ?? 0;
1333
+        if($user["is_old"]==1){
1336
             //添加红包
1334
             //添加红包
1337
             $hongbao=bcmul($pv, $yonghu_hongbao, 2);
1335
             $hongbao=bcmul($pv, $yonghu_hongbao, 2);
1338
             $hongbao_data = [
1336
             $hongbao_data = [
1339
                 "uid"           =>$order["uid"],
1337
                 "uid"           =>$order["uid"],
1340
                 "number"  =>    $hongbao,
1338
                 "number"  =>    $hongbao,
1341
                 "addtime"       =>time(),
1339
                 "addtime"       =>time(),
1342
-                "status"        =>-1,
1340
+                "status"        =>1,
1343
                 "order_type"    =>1,
1341
                 "order_type"    =>1,
1344
                 "order_id"      =>$order_id,
1342
                 "order_id"      =>$order_id,
1345
-                "mark"          =>"消费获得赠送红包",
1343
+                "mark"          =>"扫码消费获得赠送红包",
1346
                 "desc"          =>'',
1344
                 "desc"          =>'',
1347
                 "surplus"       =>$hongbao,
1345
                 "surplus"       =>$hongbao,
1348
-                "type"          =>1
1346
+                "type"          =>1,
1347
+                'settlement_time' => date('Y-m-d H:i:s')
1349
             ];
1348
             ];
1350
             Db::name("user_sign_hongbao")->insert($hongbao_data);//添加记录
1349
             Db::name("user_sign_hongbao")->insert($hongbao_data);//添加记录
1350
+            Db::name('user')->where('uid', $order["uid"])->inc('hongbao', (float)$hongbao)->update();
1351
         }
1351
         }
1352
 
1352
 
1353
         ///用户可以拿到PV等值的积分和贡献值
1353
         ///用户可以拿到PV等值的积分和贡献值
@@ -1358,36 +1358,42 @@ class OrderMerchantRepository extends BaseRepository
1358
             $ins_data['reward_socre'] = $pv;
1358
             $ins_data['reward_socre'] = $pv;
1359
             $ins_data['signin_time'] = 0;
1359
             $ins_data['signin_time'] = 0;
1360
             $ins_data['addtime'] = time();
1360
             $ins_data['addtime'] = time();
1361
-            $ins_data['status'] = -1;
1362
-            $ins_data['mark'] = "消费获得赠送积分";
1361
+            $ins_data['status'] = 1;
1362
+            $ins_data['mark'] = "扫码消费获得赠送积分";
1363
             $ins_data['source_type'] = 3;
1363
             $ins_data['source_type'] = 3;
1364
             $ins_data['settlement_time'] = 0;// 结算时间 真正到了结算时间会结算
1364
             $ins_data['settlement_time'] = 0;// 结算时间 真正到了结算时间会结算
1365
             $ins_data['order_id'] = $order_id;
1365
             $ins_data['order_id'] = $order_id;
1366
             $ins_data['pm'] = 1;
1366
             $ins_data['pm'] = 1;
1367
             $ins_data['order_type'] = $order_id;
1367
             $ins_data['order_type'] = $order_id;
1368
+            $ins_data['settlement_time'] = date('Y-m-d H:i:s');
1368
             Db::name('user_sign_score')->insertGetId($ins_data);
1369
             Db::name('user_sign_score')->insertGetId($ins_data);
1370
+            Db::name('user')->where('uid', $order["uid"])->inc('score', (float)$pv)->update();
1369
             //贡献值
1371
             //贡献值
1370
             $gongxian_data = [
1372
             $gongxian_data = [
1371
                 "uid"           =>$order["uid"],
1373
                 "uid"           =>$order["uid"],
1372
                 "number"  =>    $pv,
1374
                 "number"  =>    $pv,
1373
                 "addtime"       =>time(),
1375
                 "addtime"       =>time(),
1374
-                "status"        =>-1,
1376
+                "status"        =>1,
1375
                 "order_type"    =>1,
1377
                 "order_type"    =>1,
1376
                 "order_id"      =>$order_id,
1378
                 "order_id"      =>$order_id,
1377
-                "mark"          =>"消费获得赠送贡献值",
1379
+                "mark"          =>"扫码消费获得赠送贡献值",
1378
                 "desc"          =>'',
1380
                 "desc"          =>'',
1379
                 "surplus"       =>$pv,
1381
                 "surplus"       =>$pv,
1380
-                "type"          =>1
1382
+                "type"          =>1,
1383
+                'settlement_time' => date('Y-m-d H:i:s')
1381
             ];
1384
             ];
1382
             Db::name("user_sign_gongxian")->insert($gongxian_data);//添加记录
1385
             Db::name("user_sign_gongxian")->insert($gongxian_data);//添加记录
1386
+            Db::name('user')->where('uid', $order["uid"])->inc('contribute', (float)$pv)->update();
1383
         } else {
1387
         } else {
1384
             Db::name('log')->insert(['data' => '订单号:' . $order['order_sn'] . '付款额度较低或 商家、平台设置的返佣比例较低,积分和贡献值低于0.01无法入库 特此记录!']);
1388
             Db::name('log')->insert(['data' => '订单号:' . $order['order_sn'] . '付款额度较低或 商家、平台设置的返佣比例较低,积分和贡献值低于0.01无法入库 特此记录!']);
1385
         }
1389
         }
1386
 
1390
 
1391
+        // 用户推荐人---------------------------------------------------------------------------------------------------------------
1392
+
1387
         //用户推荐人可拿的养老金
1393
         //用户推荐人可拿的养老金
1388
         $user_yanglaojin = bcmul($pv, $yonghu_bili_tuijian, 2);
1394
         $user_yanglaojin = bcmul($pv, $yonghu_bili_tuijian, 2);
1389
         if ($user_yanglaojin >= 0.01) {
1395
         if ($user_yanglaojin >= 0.01) {
1390
-            $mark = "推荐线下消费获得养老金" . $user_yanglaojin;
1396
+            $mark = "推荐人扫码消费获得养老金" . $user_yanglaojin;
1391
             $title = "养老金";
1397
             $title = "养老金";
1392
             $source = 1;
1398
             $source = 1;
1393
             $commission_type = 5;
1399
             $commission_type = 5;
@@ -1398,16 +1404,83 @@ class OrderMerchantRepository extends BaseRepository
1398
 
1404
 
1399
         //用户推荐人佣金
1405
         //用户推荐人佣金
1400
         $tuijian_yongjin = bcmul($pv, $yonghu_tuijian, 2);
1406
         $tuijian_yongjin = bcmul($pv, $yonghu_tuijian, 2);
1401
-        if ($tuijian_yongjin >= 0.01) {
1402
-            $mark = "推荐线下消费获得" . $tuijian_yongjin . '佣金';
1407
+        $tuijian_yongjin_90 = bcmul($tuijian_yongjin, '0.9', 2);
1408
+        if ($tuijian_yongjin_90 >= 0.01) {
1409
+            $mark = "推荐人扫码消费获得" . $tuijian_yongjin_90 . '佣金';
1403
             $title = "佣金";
1410
             $title = "佣金";
1404
             $source = 1;
1411
             $source = 1;
1405
             $commission_type = 3;
1412
             $commission_type = 3;
1406
-            $this->add_bill($title, $tuijian_yongjin, $top_data["spread_uid"], $mark, $commission_type, $order_sn, $order_id, $order["mer_id"], $source, 1);
1413
+            $this->add_bill($title, $tuijian_yongjin_90, $top_data["spread_uid"], $mark, $commission_type, $order_sn, $order_id, $order["mer_id"], $source, 1);
1407
         } else {
1414
         } else {
1408
             Db::name('log')->insert(['data' => '订单号:' . $order['order_sn'] . '付款额度较低或 商家、平台设置的返佣比例较低,佣金低于0.01无法入库 特此记录!']);
1415
             Db::name('log')->insert(['data' => '订单号:' . $order['order_sn'] . '付款额度较低或 商家、平台设置的返佣比例较低,佣金低于0.01无法入库 特此记录!']);
1409
         }
1416
         }
1410
 
1417
 
1418
+        //用户推荐人获得复购金佣金百分之10
1419
+        $tuijian_fugou = bcmul($tuijian_yongjin, $yonghu_fugou, 2);
1420
+        if ($tuijian_fugou >= 0.01) {
1421
+            $bill = [
1422
+                'uid'=>$top_data["spread_uid"],
1423
+                'number'=>$tuijian_fugou,//数量
1424
+                'status'=>-1,//复购金状态1-有效 0-失效 -1待确认
1425
+                'mark'=>"推荐人扫码消费赠送" . $tuijian_fugou . '复购金',//备注
1426
+                'order_id'=>$order_id,//订单id
1427
+                'surplus'=>0,//剩余
1428
+                'order_type'=>0,//关联订单ID
1429
+                'type'=>1,//复购金类型 :1赠送,2消耗
1430
+                'settlement_time'=>date('Y-m-d H:i:s'),//添加时间,
1431
+                'addtime'=>time(),
1432
+            ];
1433
+            Db::name('user_sign_fugou')->insert($bill);
1434
+        } else {
1435
+            Db::name('log')->insert(['data' => '订单号:' . $order['order_sn'] . '付款额度较低或 商家、平台设置的复购金比例较低,复购金低于0.01无法入库 特此记录!']);
1436
+        }
1437
+    }
1438
+
1439
+
1440
+
1441
+
1442
+
1443
+
1444
+
1445
+    //商户二维码收款商家返佣
1446
+    public function feidacang_fenyong_mer($user, $order, $pay_status)
1447
+    {
1448
+        $userRepository = app()->make(UserRepository::class);
1449
+        if ($pay_status == 1) {
1450
+            return '';
1451
+        }
1452
+        $top_data = Db::name('user')->where('uid', $order['uid'])->field('spread_uid,mer_id')->find();
1453
+        $mer_fanyongbili = merchantConfig($order['mer_id'], 'base_commission');
1454
+        //如果商户返佣比例设置的是0怎查系统设设置的分佣比例
1455
+        if ($mer_fanyongbili == 0) {
1456
+            $mer_fanyongbili = merchantConfig(0, 'extension_one_rate');
1457
+        }
1458
+        //如果系统设置的是0就不执行!
1459
+        if ($mer_fanyongbili == 0) {
1460
+            Db::name('log')->insert(['data' => '订单号:' . $order['order_sn'] . ' 订单因商家、平台没有设置返佣比例无任何奖励特此记录!']);
1461
+            return '';
1462
+        }
1463
+        $order_sn = $order['order_sn'] ?? '';
1464
+        $order_id = $order['order_id'] ?? '';
1465
+        //可分总佣金
1466
+        $divisible_commission = bcmul($order['pay_price'], bcdiv($mer_fanyongbili, '100', 2), 2);//让利部分
1467
+        $pv = bcmul($divisible_commission, '0.7', 2);//商家让利部分30%给消费者做养老金,70%做业绩PV
1468
+
1469
+        /**
1470
+         * 各自的比例开始
1471
+         */
1472
+        $getMerchantContribution = $this->getMerchantContribution($mer_fanyongbili);
1473
+        //商家贡献值比例
1474
+        $mer_gonxian = $getMerchantContribution['gonxian'];
1475
+        //  商家京豆比例
1476
+        $mer_jd = $getMerchantContribution['jd'];
1477
+        //跨店分佣
1478
+        $kd = 0.1;
1479
+        /**
1480
+         * 各自的比例结束
1481
+         */
1482
+
1483
+        // 商户---------------------------------------------------------------------------------------------------------------
1411
 
1484
 
1412
         $mer_data = Db::name('merchant')->where('mer_id', $order['mer_id'])->field('uid,mer_id')->find();
1485
         $mer_data = Db::name('merchant')->where('mer_id', $order['mer_id'])->field('uid,mer_id')->find();
1413
         $userRepository = app()->make(UserRepository::class);
1486
         $userRepository = app()->make(UserRepository::class);
@@ -1431,7 +1504,7 @@ class OrderMerchantRepository extends BaseRepository
1431
                 "type"          =>1
1504
                 "type"          =>1
1432
             ];
1505
             ];
1433
             Db::name("user_sign_gongxian")->insert($gongxian_data);//添加记录
1506
             Db::name("user_sign_gongxian")->insert($gongxian_data);//添加记录
1434
-            $merchant_user->contribute += $pv;
1507
+            $merchant_user->contribute = $merchant_user->contribute + $pv;
1435
             $merchant_user->save();
1508
             $merchant_user->save();
1436
         } else {
1509
         } else {
1437
             Db::name('log')->insert(['data' => '订单号:' . $order['order_sn'] . '付款额度较低或 商家、平台设置的返佣比例较低,贡献值低于0.01无法入库 特此记录!']);
1510
             Db::name('log')->insert(['data' => '订单号:' . $order['order_sn'] . '付款额度较低或 商家、平台设置的返佣比例较低,贡献值低于0.01无法入库 特此记录!']);
@@ -1453,14 +1526,14 @@ class OrderMerchantRepository extends BaseRepository
1453
                 "surplus"       =>$jd,
1526
                 "surplus"       =>$jd,
1454
                 "type"          =>1
1527
                 "type"          =>1
1455
             ];
1528
             ];
1456
-            $merchant_user->jingdou += $pv;
1529
+            $merchant_user->jingdou = $merchant_user->jingdou + $pv;
1457
             $merchant_user->save();
1530
             $merchant_user->save();
1458
             Db::name("user_sign_jingdou")->insert($jd_data);//添加记录
1531
             Db::name("user_sign_jingdou")->insert($jd_data);//添加记录
1459
         } else {
1532
         } else {
1460
             Db::name('log')->insert(['data' => '订单号:' . $order['order_sn'] . '付款额度较低或 商家、平台设置的返佣比例较低,贡献值低于0.01无法入库 特此记录!']);
1533
             Db::name('log')->insert(['data' => '订单号:' . $order['order_sn'] . '付款额度较低或 商家、平台设置的返佣比例较低,贡献值低于0.01无法入库 特此记录!']);
1461
         }
1534
         }
1462
 
1535
 
1463
-        Db::name('log')->insert(['data' => 'PV:' . $pv .' mer_jd:'. $mer_jd.' mer_gonxian:'.$mer_gonxian]);
1536
+        Db::name('log')->insert(['data' => 'PV:' . $pv .' mer_jd:'. $mer_jd.' mer_gonxian:'.$mer_gonxian.' jingdou:'.$merchant_user->jingdou.' contribute:'.$merchant_user->contribute]);
1464
 
1537
 
1465
         //跨店
1538
         //跨店
1466
         $kd_yongjin = bcmul($divisible_commission, $kd, 2);
1539
         $kd_yongjin = bcmul($divisible_commission, $kd, 2);
@@ -1479,6 +1552,16 @@ class OrderMerchantRepository extends BaseRepository
1479
     }
1552
     }
1480
 
1553
 
1481
 
1554
 
1555
+
1556
+
1557
+
1558
+
1559
+
1560
+
1561
+
1562
+
1563
+
1564
+
1482
     /**
1565
     /**
1483
      * 佣金加入账单
1566
      * 佣金加入账单
1484
      * @param $title
1567
      * @param $title
@@ -1498,9 +1581,9 @@ class OrderMerchantRepository extends BaseRepository
1498
         if ($commission_type != 5) {
1581
         if ($commission_type != 5) {
1499
             $promoter_rate_technology = systemConfig('promoter_rate_technology');
1582
             $promoter_rate_technology = systemConfig('promoter_rate_technology');
1500
             if (floatval($promoter_rate_technology)) {
1583
             if (floatval($promoter_rate_technology)) {
1501
-                $number = $number - ($number * $promoter_rate_technology / 100);
1584
+                // $number = $number - ($number * $promoter_rate_technology / 100);
1502
                 // var_dump(=$number-$number*$promoter_rate_technology)
1585
                 // var_dump(=$number-$number*$promoter_rate_technology)
1503
-                $mark .= ",扣除技术服务费" . $promoter_rate_technology . "%";
1586
+                // $mark .= ",扣除技术服务费" . $promoter_rate_technology . "%";
1504
             }
1587
             }
1505
         }
1588
         }
1506
 
1589
 

+ 25 - 7
app/common/repositories/user/UserOfflineRechargeRepository.php

@@ -16,6 +16,7 @@ use app\common\model\merchant\order\OrderMerchant;
16
 use app\common\repositories\BaseRepository;
16
 use app\common\repositories\BaseRepository;
17
 use think\facade\Db;
17
 use think\facade\Db;
18
 use think\facade\Log;
18
 use think\facade\Log;
19
+use app\common\repositories\merchant\order\OrderMerchantRepository;
19
 
20
 
20
 /**
21
 /**
21
  * 用户线下充值
22
  * 用户线下充值
@@ -156,16 +157,33 @@ class UserOfflineRechargeRepository extends BaseRepository
156
 
157
 
157
                     //同步用户部分------------------------------------
158
                     //同步用户部分------------------------------------
158
                     //同步红包
159
                     //同步红包
159
-                    Db::name("user_sign_hongbao")->where('order_id', $order->id)->update(['uid' => $unionUser->uid]);
160
+                    // Db::name("user_sign_hongbao")->where('order_id', $order->id)->update(['uid' => $unionUser->uid]);
160
 
161
 
161
-                    //同步佣金
162
-                    Db::name("user_sign_hongbao")->where('order_id', $order->id)->update(['uid' => $unionUser->uid]);
162
+                    // //同步佣金
163
+                    // Db::name("user_sign_hongbao")->where('order_id', $order->id)->update(['uid' => $unionUser->uid]);
163
 
164
 
164
-                    //同步积分
165
-                    Db::name("user_sign_score")->where('order_id', $order->id)->update(['uid' => $unionUser->uid]);
165
+                    // //同步积分
166
+                    // Db::name("user_sign_score")->where('order_id', $order->id)->update(['uid' => $unionUser->uid]);
167
+
168
+                    // //同步复购金
169
+                    // Db::name("user_sign_fugou")->where('order_id', $order->id)->update(['uid' => $unionUser->uid]);
166
                     
170
                     
167
-                    //同步贡献值
168
-                    Db::name("user_sign_gongxian")->where('order_id', $order->id)->update(['uid' => $unionUser->uid]);
171
+                    // //同步贡献值
172
+                    // Db::name("user_sign_gongxian")->where('order_id', $order->id)->update(['uid' => $unionUser->uid]);
173
+
174
+
175
+
176
+                    //同步后返佣
177
+                    $userRepository = app()->make(OrderMerchantRepository::class);
178
+                    $order_data = [
179
+                        'order_sn' => $order->out_trade_no,
180
+                        'order_id' => $order->id,
181
+                        'pay_price' => $order->money,
182
+                        'uid' => $unionUser->uid,
183
+                        'mer_id' => $order->mer_id
184
+                    ];
185
+                    $user = Db::name('user')->where('uid', $unionUser->uid)->find();
186
+                    $userRepository->feidacang_fenyong($user, $order_data, 0);
169
 
187
 
170
                     OrderMerchant::getDB()->where('pay_user_id', $unionUser->unionid)->update(['uid' => $unionUser->uid, 'binds' => 1]);
188
                     OrderMerchant::getDB()->where('pay_user_id', $unionUser->unionid)->update(['uid' => $unionUser->uid, 'binds' => 1]);
171
                 }
189
                 }

+ 4 - 6
app/controller/api/user/User.php

@@ -284,7 +284,7 @@ class User extends BaseController
284
         if($user->uid>0){
284
         if($user->uid>0){
285
             //已经入账京豆
285
             //已经入账京豆
286
             //$data['total_source']=$user->vr;//原件
286
             //$data['total_source']=$user->vr;//原件
287
-            $data['total_source'] = 0;//临时使用
287
+            $data['total_source'] = $user->jingdou;//临时使用
288
             //为生效京豆
288
             //为生效京豆
289
             $data['no_total_source']=Db::name('user_sign_jingdou')->where('status', -1)->where('uid', $user->uid)->sum('number');;
289
             $data['no_total_source']=Db::name('user_sign_jingdou')->where('status', -1)->where('uid', $user->uid)->sum('number');;
290
             log::info("====spread_info_yhc=={$data['total_source']}======={$data['no_total_source']}");
290
             log::info("====spread_info_yhc=={$data['total_source']}======={$data['no_total_source']}");
@@ -295,7 +295,6 @@ class User extends BaseController
295
 
295
 
296
     }
296
     }
297
     public function  jingdou_list(){
297
     public function  jingdou_list(){
298
-        return;
299
         $pm = $this->request->param('pm');
298
         $pm = $this->request->param('pm');
300
 
299
 
301
         [$page, $limit] = $this->getPage();
300
         [$page, $limit] = $this->getPage();
@@ -311,10 +310,9 @@ class User extends BaseController
311
             $data = DB::name('user_sign_jingdou')->where($where)->where('type', 2)->field('id,mark,number,type,addtime,order_id')->page($page, $limit)->order("id desc")->select();
310
             $data = DB::name('user_sign_jingdou')->where($where)->where('type', 2)->field('id,mark,number,type,addtime,order_id')->page($page, $limit)->order("id desc")->select();
312
 
311
 
313
         }
312
         }
314
-        // if($pm==2){
315
-        //     $data = DB::name('user_sign_jingdou')->where($where)->where('status', -1)->field('id,mark,number,type,addtime,order_id')->page($page, $limit)->order("id desc")->select();
316
-
317
-        // }
313
+        if($pm==2){
314
+            $data = DB::name('user_sign_jingdou')->where($where)->where('status', -1)->field('id,mark,number,type,addtime,order_id')->page($page, $limit)->order("id desc")->select();
315
+        }
318
         // $data['total'] =111;
316
         // $data['total'] =111;
319
 
317
 
320
         log::info("=======date==={$data}");
318
         log::info("=======date==={$data}");