hrjy 2 years ago
parent
commit
e6094959a4

+ 50 - 1
app/api/controller/user/UserController.php

@@ -773,7 +773,8 @@ class UserController
     {
         $param = UtilService::postMore([
             ['uid', ''],
-            ['price', '']
+            ['price', ''],
+            ['type', '']
         ]);
         Db::startTrans();
         if (empty($param['uid']))return app('json')->fail('账号不能为空');
@@ -795,6 +796,54 @@ class UserController
         }
     }
 
+    public function transfer_nowMoney(Request $request)
+    {
+        $param = UtilService::postMore([
+            ['uid', ''],
+            ['price', ''],
+        ]);
+        Db::startTrans();
+        if (empty($param['uid']))return app('json')->fail('账号不能为空');
+        $user = User::where('uid', $request->uid())->lock(true)->find();
+        $tr_user = User::where('uid', $param['uid'])->find();
+        if (!$tr_user) return app('json')->fail('转账用户不存在');
+        if ($user['uid'] == $param['uid']) return app('json')->fail('不能转给自己');
+        if ($user['now_money'] < $param['price']) return app('json')->fail('余额不足');
+        try {
+            UserBill::expend('转账余额', $request->uid(), 'now_money', 'zz_now_money', $param['price'], 0, $user['now_money']-$param['price'], '余额转账用户'.$tr_user['uid']);
+            UserBill::income('转账余额', $tr_user['uid'], 'now_money', 'js_now_money', $param['price'], 0 , $tr_user['now_money']+$param['price'], '接收用户'.$user['uid'].'转账余额');
+            User::where('uid', $request->uid())->dec('now_money', $param['price'])->update();
+            User::where('uid', $param['uid'])->inc('now_money', $param['price'])->update();
+            Db::commit();
+            return app('json')->success('转账成功');
+        } catch (\Exception $e) {
+            Db::rollback();
+            return app('json')->fail('转账失败');
+        }
+    }
+
+
+    public function transformation(Request $request)
+    {
+        $param = UtilService::postMore([
+            ['price', ''],
+        ]);
+        Db::startTrans();
+        $user = User::where('uid', $request->uid())->lock(true)->find();
+        if ($user['brokerage_price'] < $param['price']) return app('json')->fail('佣金不足');
+        try {
+            UserBill::expend('佣金', $request->uid(), 'now_money', 'extract', $param['price'], 0, $user['brokerage_price']-$param['price'], '佣金转换');
+            UserBill::income('余额', $request->uid(), 'now_money', 'zh', $param['price'], 0 , $user['now_money']+$param['price'], '转换余额');
+            User::where('uid', $request->uid())->dec('brokerage_price', $param['price'])->update();
+            User::where('uid', $request->uid())->inc('now_money', $param['price'])->update();
+            Db::commit();
+            return app('json')->success('转换成功');
+        } catch (\Exception $e) {
+            Db::rollback();
+            return app('json')->fail('转换失败');
+        }
+    }
+
 
     /**
      * 添加收款方式

+ 2 - 1
app/models/system/SystemUserTask.php

@@ -259,7 +259,8 @@ class SystemUserTask extends BaseModel
     {
         $isComplete = false;
         $uids = User::where('spread_uid', $uid)->column('uid');
-        $order_count = StoreOrder::where('uid', 'in', $uids)->where('paid', 1)->where('is_explosion_order', 1)->count();
+        $uids = array_merge($uids, [$uid]);
+        $order_count = StoreOrder::where('uid', 'in', $uids)->where('paid', 1)->where('is_explosion_order', 1)->sum('total_num');
         if ($order_count >= $number) $isComplete = UserTaskFinish::setFinish($uid, $task_id) ? true : false;
         return ['还需分享{$num}数', $order_count, $isComplete];
     }

+ 2 - 0
route/api/route.php

@@ -166,6 +166,8 @@ Route::group(function () {
     Route::get('order/nopay', 'order.StoreOrderController/get_noPay')->name('getNoPay');//获取未支付订单
 
     Route::post('user/transfer_account', 'user.UserController/transfer_account')->name('transfer_account');//转账佣金
+    Route::post('user/transfer_nowMoney', 'user.UserController/transfer_nowMoney')->name('transfer_nowMoney');//转账余额
+    Route::post('user/transformation', 'user.UserController/transformation')->name('transformation');//佣金转换
 
     Route::post('auction/pay', 'user.UserController/pay')->name('pay');// 添加收款方式
     Route::get('auction/pay_list', 'user.UserController/pay_list')->name('pay_list');// 用户收款方式