one_after 3 місяців тому
батько
коміт
9cf60da9d7

+ 43 - 43
app/business/GoodsBusiness.php

@@ -21,53 +21,53 @@ class GoodsBusiness
 
             $payorder = Db::table('wa_payorder')->where('id', $payorderId)->first();
 
-          if ($payorder->pay_type == 2) {
-                $data = PayTwoBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
-                Log::channel('payment')->info('桥头', $data);
-                if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
-                    throw new \Exception('通道未开通!');
-                }
-                $arr = [
-                    'type'       => 2,
-                    'url'        => Arr::get($data, 'data.payParams.payUrl'),
-                    'payOrderId' => ''
-                ];
-            }elseif ($payorder->pay_type == 3) {
-                $data = PayThreeBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
-                Log::channel('payment')->info('林北', $data);
-                if (Arr::get($data, 'data.code') != 1000) {
-                    throw new \Exception('通道未开通!');
-                }
-                $arr = [
-                    'type'       => 2,
-                    'url'        => Arr::get($data, 'data.data.message.url'),
-                    'payOrderId' => ''
-                ];
-            }elseif ($payorder->pay_type == 5) {
-                $data = PayFiveBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
-                Log::channel('payment')->info('鸿运', $data);
-                if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
-                    throw new \Exception('通道未开通!');
-                }
-                $arr = [
-                    'type'       => 2,
-                    'url'        => Arr::get($data, 'data.payParams.payUrl'),
-                    'payOrderId' => ''
-                ];
-            } else {
-                $arr = [
-                    'type'       => 1,
-                    'url'        => '',
-                    'payOrderId' => ''
-                ];
-            }
-
+//          if ($payorder->pay_type == 2) {
+//                $data = PayTwoBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
+//                Log::channel('payment')->info('桥头', $data);
+//                if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
+//                    throw new \Exception('通道未开通!');
+//                }
+//                $arr = [
+//                    'type'       => 2,
+//                    'url'        => Arr::get($data, 'data.payParams.payUrl'),
+//                    'payOrderId' => ''
+//                ];
+//            }elseif ($payorder->pay_type == 3) {
+//                $data = PayThreeBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
+//                Log::channel('payment')->info('林北', $data);
+//                if (Arr::get($data, 'data.code') != 1000) {
+//                    throw new \Exception('通道未开通!');
+//                }
+//                $arr = [
+//                    'type'       => 2,
+//                    'url'        => Arr::get($data, 'data.data.message.url'),
+//                    'payOrderId' => ''
+//                ];
+//            }elseif ($payorder->pay_type == 5) {
+//                $data = PayFiveBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
+//                Log::channel('payment')->info('鸿运', $data);
+//                if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
+//                    throw new \Exception('通道未开通!');
+//                }
 //                $arr = [
 //                    'type'       => 2,
-//                    'url'        => Arr::get($param, 'url', ''),
+//                    'url'        => Arr::get($data, 'data.payParams.payUrl'),
 //                    'payOrderId' => ''
 //                ];
-//                PayorderBusiness::payorderSave(collect($payorder)->toArray());
+//            } else {
+//                $arr = [
+//                    'type'       => 1,
+//                    'url'        => '',
+//                    'payOrderId' => ''
+//                ];
+//            }
+
+                $arr = [
+                    'type'       => 2,
+                    'url'        => Arr::get($param, 'url', ''),
+                    'payOrderId' => ''
+                ];
+                PayorderBusiness::payorderSave(collect($payorder)->toArray());
 
         } catch (\Throwable $exception) {
             throw new \Exception($exception->getMessage());

+ 44 - 2
app/business/PayorderBusiness.php

@@ -345,6 +345,8 @@ class PayorderBusiness
                 'type'          => $goodsData->type,
                 'pay_id'        => $data['id'],
                 'bonus'         => $goodsData->bonus,
+                'balance'       => $goodsData->balance,
+                'usd_quota'     => $goodsData->usd_quota,
                 'refund_amount' => $data['money'],
                 'name'          => Arr::get($data, 'name', null),
                 'mobile'        => Arr::get($data, 'mobile', null),
@@ -455,8 +457,48 @@ class PayorderBusiness
                 if (!empty($userlist->toppid) && !empty($system->rebate_two)) {
                     StreamBusiness::addStream($userlist->toppid, bcmul($goodsData->pay_price, bcdiv($system->rebate_two, 100, 2), 2), streamType10, moldType8, moldTypefild8, $data['id']);
                 }
-            }elseif ($goodsData->type == 3) {
-                Db::table('wa_user_social_cark')->where('user_id', $data['user_id'])->update(['is_buy'=>2,'buy_time'=>date('Y-m-d H:i:s')]);
+            } elseif ($goodsData->type == 3) {
+                Db::table('wa_user_social_cark')->where('user_id', $data['user_id'])->update(['is_buy' => 2, 'buy_time' => date('Y-m-d H:i:s')]);
+            } elseif ($goodsData->type == 4) {
+
+                if (!empty($goodsData->bonus)) {
+                    Db::table('wa_cron_task_four')->insert([
+                        'user_id'           => $data['user_id'],
+                        'goods_id'          => $goodsData->id,
+                        'order_id'          => $data['id'],
+                        'money'             => $data['money'],
+                        'bonus'             => $goodsData->bonus,
+                        'goods_type'        => $goodsData->type,
+                        'day_dividend_time' => strtotime(date('Y-m-d', strtotime('+1 days')) . ' 00:00:00'),
+                        'dividend_time'     => strtotime($futureDay),
+                        'created_at'        => $thisDay,
+                        'updated_at'        => $thisDay,
+                        'my_good_id'        => $myGoodsId,
+                        'event_time'        => 0,
+                        'is_activity'       => 0,
+                    ]);
+                    StreamBusiness::addStream($data['user_id'], $goodsData->bonus, streamType37, moldType12, moldTypefild12, $data['id']);
+                }
+                if (!empty($goodsData->balance)) {
+                    StreamBusiness::addStream($data['user_id'], $goodsData->balance, streamType36, moldType13, moldTypefild13, $data['id']);
+                    Db::table('wa_users')->where('id', $data['user_id'])->increment('accumulate_thirteen',$goodsData->balance);
+                }
+                if (!empty($goodsData->usd_quota)) {
+                    StreamBusiness::addStream($data['user_id'], $goodsData->usd_quota, streamType36, moldType14, moldTypefild14, $data['id']);
+                    Db::table('wa_users')->where('id', $data['user_id'])->increment('accumulate_fourteen',$goodsData->usd_quota);
+                }
+
+                /** 分佣 */
+                $system = Db::table('wa_system')->first();
+                if (!empty($userlist->pid) && !empty($system->rebate)) {
+                    StreamBusiness::addStream($userlist->pid, bcmul($goodsData->pay_price, bcdiv($system->rebate, 100, 2), 2), streamType10, moldType8, moldTypefild8, $data['id']);
+                }
+                if (!empty($userlist->ppid) && !empty($system->rebate_one)) {
+                    StreamBusiness::addStream($userlist->ppid, bcmul($goodsData->pay_price, bcdiv($system->rebate_one, 100, 2), 2), streamType10, moldType8, moldTypefild8, $data['id']);
+                }
+                if (!empty($userlist->toppid) && !empty($system->rebate_two)) {
+                    StreamBusiness::addStream($userlist->toppid, bcmul($goodsData->pay_price, bcdiv($system->rebate_two, 100, 2), 2), streamType10, moldType8, moldTypefild8, $data['id']);
+                }
             }
 
             /** 新增消费数据 */

+ 36 - 40
app/business/TaskBusiness.php

@@ -41,10 +41,10 @@ class TaskBusiness
 
                 if (empty($has) && !empty($usersData)) {
 
-                    $goodslist = Db::table('wa_goods')->where('id',$cronTask->goods_id)->first();
-                    if(!empty($goodslist->original_bonus)){
+                    $goodslist = Db::table('wa_goods')->where('id', $cronTask->goods_id)->first();
+                    if (!empty($goodslist->original_bonus)) {
                         StreamBusiness::addStream($usersData->id, $goodslist->original_bonus, streamType9, moldType7, moldTypefild7, $taskId);
-                    }else{
+                    } else {
                         StreamBusiness::addStream($usersData->id, $goodslist->bonus, streamType9, moldType7, moldTypefild7, $taskId);
                     }
                     if (!empty($usersData->pid) && !empty($cronTask->rebate)) {
@@ -128,49 +128,45 @@ class TaskBusiness
     {
         Db::beginTransaction();
         try {
-            $cronTask = Db::table('wa_cron_task_sign_two')->where('id', $taskId)->lockForUpdate()->first();
+            $cronTask = Db::table('wa_cron_task_four')->where('id', $taskId)->lockForUpdate()->first();
             if (empty($cronTask)) {
                 throw new \Exception('没有查询当任务!');
             }
-
-            if ($cronTask->dividend_time >= time()) {
-                /** @var  $has 查询今天是否已经发奖 */
-                $has = Db::table('wa_stream')
-                    ->where('user_id', $cronTask->user_id)
-                    ->where('type', streamType19)
-                    ->where('mold', moldType1)
-                    ->whereBetween('add_time', [strtotime(date('Y-m-d') . ' 00:00:00'), strtotime(date('Y-m-d') . ' 23:59:59')])
-                    ->where('source_id', $taskId)
-                    ->exists();
-                /** @var  $usersData 查询会员信息 */
-                $usersData = Db::table('wa_users')->where('id', $cronTask->user_id)->first();
-
-                if (empty($has) && !empty($usersData)) {
-                    StreamBusiness::addStream($usersData->id, $cronTask->highest_pay_price, streamType19, moldType5, moldTypefild5, $taskId);
-                    StreamBusiness::addStream($usersData->id, $cronTask->day, streamType19, moldType1, moldTypefild1, $taskId);
-                    Db::table('wa_users')->where('id', $usersData->id)->increment('raffle_num', $cronTask->bl);
-                    Db::table('wa_users')->where('id', $usersData->id)->increment('accumulate_raffle_num', $cronTask->bl);
-                }
-
-//                $hasone = Db::table('wa_stream')
-//                    ->where('user_id', $cronTask->user_id)
-//                    ->where('type', streamType20)
-//                    ->where('mold', moldType6)
-//                    ->whereBetween('add_time', [strtotime(date('Y-m-d') . ' 00:00:00'), strtotime(date('Y-m-d') . ' 23:59:59')])
-//                    ->exists();
-//                if(empty($hasone)){
-//                    StreamBusiness::addStream($usersData->id, 1, streamType20, moldType6, moldTypefild6);
-//                }
-
-                Db::table('wa_cron_task_sign_two')->where('id', $taskId)->update([
-                    'day_dividend_time' => strtotime(date('Y-m-d', strtotime('+1 days')) . ' 01:00:00'),
-                    'is_day'            => 2
-                ]);
-            } else {
-                Db::table('wa_cron_task_sign_two')->where('id', $taskId)->update([
+            $proder = Db::table('wa_payorder')->where('id', $cronTask->order_id)->first();
+            if (empty($proder)) {
+                Db::table('wa_cron_task')->where('id', $taskId)->update([
                     'is_finish' => 2
                 ]);
             }
+
+            /** @var  $has 查询今天是否已经发奖 */
+            $has = Db::table('wa_stream')
+                ->where('user_id', $cronTask->user_id)
+                ->where('type', streamType37)
+                ->where('mold', moldType12)
+                ->whereBetween('add_time', [strtotime(date('Y-m-d') . ' 00:00:00'), strtotime(date('Y-m-d') . ' 23:59:59')])
+                ->where('source_id', $taskId)
+                ->exists();
+            /** @var  $usersData 查询会员信息 */
+            $usersData = Db::table('wa_users')->where('id', $cronTask->user_id)->first();
+
+            if (empty($has) && !empty($usersData)) {
+                $goodslist = Db::table('wa_goods')->where('id', $cronTask->goods_id)->first();
+                if(!empty($goodslist->bonus)){
+                    StreamBusiness::addStream($usersData->id, $goodslist->bonus, streamType37, moldType12, moldTypefild12, $taskId);
+                }
+                if($usersData->money_thirteen<$usersData->accumulate_thirteen){
+                    Db::table('wa_users')->where('id', $usersData->id)->update(['money_thirteen'=>$usersData->accumulate_thirteen]);
+                }
+                if($usersData->money_fourteen<$usersData->accumulate_fourteen){
+                    Db::table('wa_users')->where('id', $usersData->id)->update(['money_fourteen'=>$usersData->accumulate_fourteen]);
+                }
+            }
+            Db::table('wa_cron_task_sign_two')->where('id', $taskId)->update([
+                'day_dividend_time' => strtotime(date('Y-m-d', strtotime('+1 days')) . ' 00:00:00'),
+                'is_day'            => 2
+            ]);
+
             Db::commit();
         } catch (\Throwable $exception) {
             Db::rollBack();

+ 29 - 0
app/business/WithdrawBusiness.php

@@ -71,6 +71,8 @@ class WithdrawBusiness
                 if (10 > $param['money']) {
                     throw new \Exception('最小提现金额:10元');
                 }
+            }elseif ($param['mold'] == 55) {
+
             } else {
                 throw new \Exception('提现功能暂未开放!');
             }
@@ -96,6 +98,25 @@ class WithdrawBusiness
                 $affiliated_bank = '';
                 $account_holder  = '';
                 $card_number     = '';
+            }elseif ($param['mold'] == 1){
+                $status          = 3;
+                $affiliated_bank = '';
+                $account_holder  = '';
+                $card_number     = '';
+                $userdata = Db::table('wa_users')->where('id',$param['user_data']['id'])->first();
+                if($userdata->money_four<$param['money']){
+                    throw new \Exception('银行卡基础额度不足!');
+                }
+            }elseif ($param['mold'] == 55){
+                $status          = 3;
+                $affiliated_bank = '';
+                $account_holder  = '';
+                $card_number     = '';
+                $userdata = Db::table('wa_users')->where('id',$param['user_data']['id'])->first();
+                $money_five_value = bcmul($param['money'],$system->coin_value,2);
+                if($userdata->money_four<$money_five_value){
+                    throw new \Exception('银行卡基础额度不足!');
+                }
             } else {
                 /** @var  $bankCard  银行卡 */
                 $bankCard = Db::table('wa_bank_card')->where('uid', $param['user_data']['id'])->first();
@@ -146,6 +167,14 @@ class WithdrawBusiness
             }elseif ($param['mold'] == 10){
                 StreamBusiness::delStream($param['user_data']['id'], $param['money'], streamType23, $param['mold'], moldTypefild($param['mold']), $withdrawId);
                 Db::table('wa_system')->where('id',1)->increment('completion_progress',10);
+            } if ($param['mold'] == 1) {
+                StreamBusiness::delStream($param['user_data']['id'], $param['money'], streamType4, $param['mold'], moldTypefild($param['mold']), $withdrawId);
+                StreamBusiness::addStream($param['user_data']['id'], $param['money'], streamType4, moldType10, moldTypefild10, $withdrawId);
+                StreamBusiness::delStream($param['user_data']['id'], $param['money'], streamType4, moldType4, moldTypefild4, $withdrawId);
+            } if ($param['mold'] == 55) {
+                StreamBusiness::delStream($param['user_data']['id'], $param['money'], streamType4, moldType5,moldTypefild5, $withdrawId);
+                StreamBusiness::addStream($param['user_data']['id'], bcmul($param['money'],$system->coin_value,2), streamType4, moldType10, moldTypefild10, $withdrawId);
+                StreamBusiness::delStream($param['user_data']['id'], bcmul($param['money'],$system->coin_value,2), streamType4, moldType4, moldTypefild4, $withdrawId);
             } else {
                 StreamBusiness::delStream($param['user_data']['id'], $param['money'], streamType4, $param['mold'], moldTypefild($param['mold']), $withdrawId);
             }

+ 5 - 1
app/controller/WithdrawController.php

@@ -69,7 +69,7 @@
                     $carkdatalist = Db::table('wa_user_social_cark')
                         ->where('user_id', $request->user_data['id'])->where('type', 1)->first();
                     if(empty($carkdatalist)){
-                        throw new \Exception('先领取WB.U卡在提现!');
+                        throw new \Exception('先领取WB.U卡在兑换!');
                     }
                     $msg = '兑换成功';
                 }elseif ($param['mold']==6){
@@ -81,6 +81,10 @@
                     $msg = '提现成功';
                 }elseif ($param['mold']==10){
                     $msg = '解冻成功';
+                }elseif ($param['mold']==1){
+                    $msg = '提现成功';
+                }elseif ($param['mold']==55){
+                    $msg = '提现成功';
                 } else{
                     $account_holder = Db::table('wa_bank_card')->where('uid', $request->user_data['id'])->value('account_holder');
                     if (empty($account_holder)) {

+ 48 - 0
app/functions.php

@@ -115,6 +115,18 @@
             ], [
                 'value' => 11,
                 'name'  => '大使收益钱包',
+            ], [
+                'value' => 12,
+                'name'  => '减贫财富钱包',
+            ], [
+                'value' => 13,
+                'name'  => '每日交易世界币额度',
+            ], [
+                'value' => 14,
+                'name'  => '每日交易USD额度',
+            ], [
+                'value' => 55,
+                'name'  => 'wroldcion币',
             ]
         ];
         if ($value) {
@@ -176,6 +188,18 @@
     //大使收益钱包
     define('moldType11', 11);
     define('moldTypefild11', 'money_eleven');
+    //减贫财富钱包
+    define('moldType12', 12);
+    define('moldTypefild12', 'money_twelve');
+    //每日交易世界币额度
+    define('moldType13', 13);
+    define('moldTypefild13', 'money_thirteen');
+    //每日交易USD额度
+    define('moldType14', 14);
+    define('moldTypefild14', 'money_fourteen');
+    //每日交易USD额度
+    define('moldType55', 55);
+    define('moldTypefild55', 'money_five');
     function moldTypefild($value = '')
     {
         $arr = [
@@ -212,6 +236,18 @@
             ], [
                 'value' => 11,
                 'name'  => 'money_eleven',
+            ], [
+                'value' => 12,
+                'name'  => 'money_twelve',
+            ], [
+                'value' => 13,
+                'name'  => 'money_thirteen',
+            ], [
+                'value' => 14,
+                'name'  => 'money_fourteen',
+            ], [
+                'value' => 55,
+                'name'  => 'money_five',
             ]
         ];
         if ($value) {
@@ -294,6 +330,10 @@
     define('streamType34', 34);
     /** 平台赠送 */
     define('streamType35', 35);
+    /** 减贫财富 */
+    define('streamType36', 36);
+    /** 减贫财富每日分红 */
+    define('streamType37', 37);
     function streamType($value = '')
     {
         $arr = [
@@ -436,6 +476,14 @@
             [
                 'value' => 35,
                 'name'  => '平台赠送',
+            ],
+            [
+                'value' => 36,
+                'name'  => '减贫财富',
+            ],
+            [
+                'value' => 37,
+                'name'  => '减贫财富每日分红',
             ]
         ];
         if ($value) {

+ 1 - 1
config/process.php

@@ -51,7 +51,7 @@ return [
 //    'taskFj'  => [
 //        'handler'  => process\TaskFj::class
 //    ],
-    /**矿机产生*/
+    /**减贫财富*/
     'taskRestart'  => [
         'handler'  => process\TaskRestart::class
     ],

+ 3 - 0
plugin/admin/app/view/good/index.html

@@ -151,6 +151,9 @@
 					},{
 						title: "解冻usd",align: "center",
 						field: "balance",
+					},{
+						title: "每日交易USD",align: "center",
+						field: "usd_quota",
 					}
                     ,{
                         title: "总数",align: "center",

+ 21 - 8
plugin/admin/app/view/good/update.html

@@ -34,12 +34,6 @@
                             </button>
                         </div>
                     </div>
-                    <div class="layui-form-item">
-                        <label class="layui-form-label">原价</label>
-                        <div class="layui-input-block">
-                            <input type="number" name="original_price" value="" class="layui-input">
-                        </div>
-                    </div>
                     <div class="layui-form-item">
                         <label class="layui-form-label">抵扣金额</label>
                         <div class="layui-input-block">
@@ -59,6 +53,13 @@
                             <input type="number" name="pay_price" value="" class="layui-input">
                         </div>
                     </div>
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">原价-支付金额</label>
+                        <div class="layui-input-block">
+                            <input type="number" name="original_price" value="" class="layui-input">
+                        </div>
+                    </div>
+
                     <div class="layui-form-item">
                         <label class="layui-form-label">每日利息</label>
                         <div class="layui-input-block">
@@ -72,17 +73,29 @@
                         </div>
                     </div>
                     <div class="layui-form-item">
-                        <label class="layui-form-label">解冻usd</label>
+                        <label class="layui-form-label">解冻usd(每日交易世界币)</label>
                         <div class="layui-input-block">
                             <input type="number" name="balance" value="" class="layui-input">
                         </div>
                     </div>
                     <div class="layui-form-item">
-                        <label class="layui-form-label">原--解冻usd</label>
+                        <label class="layui-form-label">原--解冻usd(每日交易世界币)</label>
                         <div class="layui-input-block">
                             <input type="number" name="original_balance" value="" class="layui-input">
                         </div>
                     </div>
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">每日交易USD</label>
+                        <div class="layui-input-block">
+                            <input type="number" name="usd_quota" value="" class="layui-input">
+                        </div>
+                    </div>
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">原--每日交易USD</label>
+                        <div class="layui-input-block">
+                            <input type="number" name="original_usd_quota" value="" class="layui-input">
+                        </div>
+                    </div>
                     <div class="layui-form-item">
                         <label class="layui-form-label">剩余数量</label>
                         <div class="layui-input-block">

+ 2 - 2
process/TaskRestart.php

@@ -20,10 +20,10 @@ class TaskRestart
     public function task()
     {
         try {
-            $taskData=Db::table('wa_cron_task_sign_two')
+            $taskData=Db::table('wa_cron_task_four')
                 ->where('day_dividend_time','<=',time())
                 ->where('is_finish',1)
-                ->limit(900)
+                ->limit(600)
                 ->pluck('id')
                 ->toArray();
             foreach ($taskData as $k=>$v){