gorden 5 hónapja
szülő
commit
6c364f3a49

+ 16 - 0
app/admin/controller/order/PayDetailController.php

@@ -114,6 +114,20 @@ class PayDetailController extends Curd
             }
         }
 
+        if (!empty($params['order_type'])){
+            if ($params['order_type'] == 'COMBINE'){
+                $model = $model->where('join_pay_order_id','COMBINE');
+            }elseif ($params['order_type'] == 'PARTNER'){
+                $model = $model->where('join_pay_order_id','PARTNER');
+            }elseif ($params['order_type'] == 'VIP'){
+                $model = $model->where('pay_category','VIP');
+            }elseif ($params['order_type'] == 'RECHARGE'){
+                $model = $model->where('join_pay_order_id','<>','PARTNER')
+                    ->where('join_pay_order_id','<>','COMBINE')
+                    ->where('pay_category','<>','VIP');
+            }
+        }
+
 
         if ($field) {
             $model = $model->orderBy($field, $order);
@@ -186,6 +200,7 @@ class PayDetailController extends Curd
     {
         foreach ($items as &$item) {
             $prepayId = explode('-', $item->pay_prepayid);
+            $item->order_classify = $item->pay_category;
             if (count($prepayId) > 1) {
                 $item->pay_prepayid = $prepayId[1];
             }
@@ -214,6 +229,7 @@ class PayDetailController extends Curd
             }
             $item->to_account_amount = $item->pay_amount;
             if (in_array($item['join_pay_order_id'], ['COMBINE', 'PARTNER']) && !empty($item->join_pay_object_json)) {
+                $item->order_classify = $item['join_pay_order_id'];
                 $payObjectJson = json_decode($item->join_pay_object_json, true);
                 if (isset($payObjectJson['recharge_order_id'])) {
                     $payDetails = PayDetail::whereJsonContains('join_pay_object_json->order_id', $payObjectJson['recharge_order_id'])

+ 69 - 0
app/command/PartnerCommand.php

@@ -0,0 +1,69 @@
+<?php
+
+namespace app\command;
+
+use app\model\Member;
+use app\model\MemberAccount;
+use app\model\Order;
+use app\model\PayDetail;
+use support\Db;
+use Symfony\Component\Console\Command\Command;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class PartnerCommand extends Command
+{
+
+    protected static $defaultName = 'PartnerCommand';
+    protected static $defaultDescription = 'PartnerCommand';
+
+    /**
+     * @return void
+     */
+    protected function configure()
+    {
+        // $this->addArgument('name', InputArgument::OPTIONAL, '余额账户转福利账户');
+        $this->addArgument('name', InputArgument::OPTIONAL, '会员合伙人回填订单号');
+    }
+
+    protected function execute(InputInterface $input, OutputInterface $output): int
+    {
+        $payDetails = PayDetail::where('pay_category', 'PARTNER')->get()->toArray();
+        try {
+
+            foreach ($payDetails as $payDetail) {
+                if (!empty($payDetail['join_pay_object_json'])) {
+                    $payObjectJson = json_decode($payDetail['join_pay_object_json'], true);
+                }
+                // 查订单号
+                $payDetailOrder = PayDetail::where('join_pay_order_id', 'PARTNER')
+                    ->where('join_pay_member_id', $payDetail['join_pay_member_id'])
+                    ->first();
+                if (!empty($payDetailOrder->join_pay_object_json)) {
+                    $payObjectJson2 = json_decode($payDetailOrder->join_pay_object_json, true);
+                    if (isset($payObjectJson2['recharge_order_id'])) {
+                        continue;
+                    }
+                    if (isset($payObjectJson['order_id'])) {
+                        $payObjectJson2['recharge_order_id'] = $payObjectJson['order_id'];
+                        PayDetail::where('pay_id', $payDetailOrder->pay_id)->update([
+                            'join_pay_object_json' => json_encode($payObjectJson2)
+                        ]);
+                    }
+                }
+
+                echo "支付记录【" . $payDetail['pay_id'] . "】已处理完成\n";
+            }
+            Db::commit();
+
+            return self::SUCCESS;
+        } catch (\Exception $e) {
+            dump($e->getMessage());
+
+            Db::rollBack();
+            return self::SUCCESS;
+        }
+
+    }
+}