From 153b8a84c3021d53893f8c0dbe2682c52484efae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cwanyongkang=E2=80=9D?= <“937888580@qq.com”> Date: Wed, 2 Apr 2025 16:12:33 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B0=B4=E6=BB=B4-=E4=BB=A3=E7=90=86=E8=BF=94?= =?UTF-8?q?=E6=AC=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/common/controller/Alipay.php | 52 ++++++++++++++++++++++++++++++ app/jinyou/controller/Jinyoujt.php | 1 + 2 files changed, 53 insertions(+) diff --git a/app/common/controller/Alipay.php b/app/common/controller/Alipay.php index c933a10..f61f848 100644 --- a/app/common/controller/Alipay.php +++ b/app/common/controller/Alipay.php @@ -11,6 +11,9 @@ use app\jinyou\model\Account as AccountModel; use app\jinyou\model\Package as PackageModel; use app\jinqiao\model\Order as JqOrderModel; use app\jinqiao\model\Key as KeyModel; +use app\agent\model\AgentUser as AgentModel; +use app\agent\model\ProductPriceScheme; +use app\agent\model\AgentScore as AgentScoreModel; class Alipay { @@ -161,6 +164,55 @@ class Alipay { $package_info['ProductName'] = $order_info['ProductName']; $account_model->open_account($account_info,$user_info,$package_info); } + + + //代理计算 + if($order_info['agent_id'] != 0 && $order_info['PaymentAmount'] != 0.1){ + + $agent_model = new AgentModel(); + + $agent_info = $agent_model->getOne(['id' => $order_info['agent_id']]); + + //根据折扣设置价格 + $score_money = 0.00; + + if($agent_info['discount_id'] != 0){ + + $scheme_model = new ProductPriceScheme(); + //获取代理折扣 + $discount = $scheme_model->getOne(['discount_id' => $agent_info['discount_id']]); + + $price = $package_info['LinePrice'] * $discount['discount'] / 100; + $score_money = $order_info['PaymentAmount'] - $order_info['ConnectCount'] * $order_info['AccountCount'] * $price; + } + + $score_model = new AgentScoreModel(); + + $score_data = [ + 'agent_id' => $order_info['agent_id'], + 'order_id' => $order_info['Id'], + 'score_type' => 1, + 'score_value' => $score_money, + 'remark' => "客户购买产品".$order_info['Accounts'], + 'agent_name' => $agent_info['username'], + 'op_user' => $order_info['UserName'], + 'rest_amount1' => $agent_info['account'], + 'rest_amount2' => $agent_info['account'] + $score_money + ]; + + $agent_data = ['account' => ($agent_info['account'] + $score_money)]; + + $score_model->add($score_data); + + $agent_model->updateOne(['id' => $order_info['agent_id']],$agent_data); + + } + + + + + + } } diff --git a/app/jinyou/controller/Jinyoujt.php b/app/jinyou/controller/Jinyoujt.php index 127b406..23d7a6f 100644 --- a/app/jinyou/controller/Jinyoujt.php +++ b/app/jinyou/controller/Jinyoujt.php @@ -197,6 +197,7 @@ class Jinyoujt extends Controller 'EndTime' => $endtime, 'IsAutoRefund' => $product_info['AutoRefund'], 'BackAmount' => 0, + 'agent_id' => $user_info['agent_id'], 'remark2' => json_encode($request_data) ];