hrjy 3 years ago
parent
commit
689026d73c

+ 1 - 0
app/admin/controller/auction/AuctionProduct.php

@@ -236,4 +236,5 @@ class AuctionProduct extends AuthController
 
 
 
 
 
 
+
 }
 }

+ 7 - 0
app/admin/controller/finance/UserExtract.php

@@ -9,6 +9,8 @@
 namespace app\admin\controller\finance;
 namespace app\admin\controller\finance;
 
 
 use app\admin\controller\AuthController;
 use app\admin\controller\AuthController;
+use app\models\user\User;
+use app\models\user\UserBill;
 use think\facade\Route as Url;
 use think\facade\Route as Url;
 use crmeb\services\JsonService;
 use crmeb\services\JsonService;
 use app\admin\model\user\UserExtract as UserExtractModel;
 use app\admin\model\user\UserExtract as UserExtractModel;
@@ -139,11 +141,16 @@ class UserExtract extends AuthController
             return JsonService::fail('操作记录不存在或状态错误!');
             return JsonService::fail('操作记录不存在或状态错误!');
         UserExtractModel::beginTrans();
         UserExtractModel::beginTrans();
         $extract = UserExtractModel::get($id);
         $extract = UserExtractModel::get($id);
+        $user = User::where('uid', $extract['uid'])->find();
+        $charge = $extract['extract_price'] * 0.005;
+        if ($charge > $user['now_money']) return JsonService::fail('用户手续费不够!');
         if (!$extract) return JsonService::fail('操作记录不存!');
         if (!$extract) return JsonService::fail('操作记录不存!');
         if ($extract->status == 1) return JsonService::fail('您已提现,请勿重复提现!');
         if ($extract->status == 1) return JsonService::fail('您已提现,请勿重复提现!');
         if ($extract->status == -1) return JsonService::fail('您的提现申请已被拒绝!');
         if ($extract->status == -1) return JsonService::fail('您的提现申请已被拒绝!');
         $res = UserExtractModel::changeSuccess($id);
         $res = UserExtractModel::changeSuccess($id);
         if ($res) {
         if ($res) {
+            $user['now_money'] -= $charge;
+            UserBill::income('收取提现手续费', $user['uid'], 'now_money', 'sub_now_money', $charge, $user['spread_uid'], $user['now_money'], '收取提现'.$charge.'手续费');
             UserExtractModel::commitTrans();
             UserExtractModel::commitTrans();
             return JsonService::successful('操作成功!');
             return JsonService::successful('操作成功!');
         } else {
         } else {

+ 3 - 0
app/admin/view/auction/auction_products/index.php

@@ -110,6 +110,9 @@
                         {{#  } }}
                         {{#  } }}
                     </script>
                     </script>
                     <script type="text/html" id="act">
                     <script type="text/html" id="act">
+<!--                        <button type="button" class="layui-btn layui-btn-xs layui-btn-normal"  onclick="$eb.createModalFrame('商品','{:Url('admin/auction.auction_product/appoint')}?id={{d.id}}',{h:500,w:500})">-->
+<!--                            指定-->
+<!--                        </button>-->
                         <button type="button" class="layui-btn layui-btn-xs layui-btn-normal" lay-event='edit'>
                         <button type="button" class="layui-btn layui-btn-xs layui-btn-normal" lay-event='edit'>
                             编辑
                             编辑
                         </button>
                         </button>

+ 9 - 0
app/admin/view/user/user/index.php

@@ -223,6 +223,14 @@
                         <p>首次:{{d.add_time}}</p>
                         <p>首次:{{d.add_time}}</p>
                         <p>最近:{{d.last_time}}</p>
                         <p>最近:{{d.last_time}}</p>
                     </script>
                     </script>
+                    <script type="text/html" id="is_real">
+                        {{# if(d.is_real == 1){ }}
+                        <p style="color:#dab176">是</p>
+                        {{# } }}
+                        {{# if(d.is_real == 0){ }}
+                        <p style="color:#dab176">否</p>
+                        {{# } }}
+                    </script>
                     <script type="text/html" id="checkboxstatus">
                     <script type="text/html" id="checkboxstatus">
                         <input type='checkbox' name='status' lay-skin='switch' value="{{d.uid}}" lay-filter='status' lay-text='正常|禁止'  {{ d.status == 1 ? 'checked' : '' }}>
                         <input type='checkbox' name='status' lay-skin='switch' value="{{d.uid}}" lay-filter='status' lay-text='正常|禁止'  {{ d.status == 1 ? 'checked' : '' }}>
                     </script>
                     </script>
@@ -314,6 +322,7 @@
             {field: 'extract_count_price', title: '累计提现',align:'center',width:'6%'},
             {field: 'extract_count_price', title: '累计提现',align:'center',width:'6%'},
             {field: 'sp_final', title: '购物积分',width:'6%',sort:true,event:'integral',align:'center'},
             {field: 'sp_final', title: '购物积分',width:'6%',sort:true,event:'integral',align:'center'},
             {field: 'spread_uid_nickname', title: '推荐人',align:'center'},
             {field: 'spread_uid_nickname', title: '推荐人',align:'center'},
+            {field: 'is_real', title: '团长',align:'center',templet:'#is_real'},
             {field: 'sex', title: '性别',width:'4%',align:'center'},
             {field: 'sex', title: '性别',width:'4%',align:'center'},
             {field: 'data_time', title: '访问日期',align:'center',width:'12%',templet:'#data_time'},
             {field: 'data_time', title: '访问日期',align:'center',width:'12%',templet:'#data_time'},
             // {field: 'status', title: '状态',templet:"#checkboxstatus",width:'6%',align:'center'},
             // {field: 'status', title: '状态',templet:"#checkboxstatus",width:'6%',align:'center'},

+ 8 - 8
app/api/controller/auction/AuctionProductController.php

@@ -41,12 +41,12 @@ class AuctionProductController
 
 
 
 
         if (AuctionOrder::where([['auction_id', '=', $data['id']], ['frequency', '=', $auction['frequency']], ['uid', '=', $request->uid()]])->count() >= 1) return app('json')->fail('当前场次已购买商品');
         if (AuctionOrder::where([['auction_id', '=', $data['id']], ['frequency', '=', $auction['frequency']], ['uid', '=', $request->uid()]])->count() >= 1) return app('json')->fail('当前场次已购买商品');
-
-        $orderCount = AuctionOrder::where([['auction_id', '=', $data['id']], ['frequency', '=', $auction['frequency']]])->count(); // 查找出当前场次已派单多少
-        $pd = AuctionBooking::where([['auction_id', '=', $data['id']], ['frequency', '=', $auction['frequency']]])->count(); // 当前预约人数
-        $pds = ceil($pd * ($auction['dispatch']/100));
-        if ($orderCount >= $pds) return app('json')->fail('商品已买完');
-
+        if ($request->user()['is_real'] < 1){
+            $orderCount = AuctionOrder::where([['auction_id', '=', $data['id']], ['frequency', '=', $auction['frequency']]])->count(); // 查找出当前场次已派单多少
+            $pd = AuctionBooking::where([['auction_id', '=', $data['id']], ['frequency', '=', $auction['frequency']]])->count(); // 当前预约人数
+            $pds = ceil($pd * ($auction['dispatch']/100));
+            if ($orderCount >= $pds) return app('json')->fail('商品已买完');
+        }
 
 
         $show = AuctionProduct::random($data['id'], $request->uid(),$section);
         $show = AuctionProduct::random($data['id'], $request->uid(),$section);
         if ($show == 'false')  return app('json')->fail('购买失败');
         if ($show == 'false')  return app('json')->fail('购买失败');
@@ -166,7 +166,7 @@ class AuctionProductController
         $product = AuctionProduct::where('id', $data['id'])->find();
         $product = AuctionProduct::where('id', $data['id'])->find();
 
 
         $data['aid_val'] = round($product['hanging_price'] * 0.0485, 2); // 需要的广告值
         $data['aid_val'] = round($product['hanging_price'] * 0.0485, 2); // 需要的广告值
-        $data['hanging_price'] = round((int)$product['hanging_price'] + $product['hanging_price'] * 0.06, 2); // 第二天溢价
+        $data['hanging_price'] = round($product['hanging_price'] + $product['hanging_price'] * 0.06, 2); // 第二天溢价
 
 
         return app('json')->successful($data);
         return app('json')->successful($data);
     }
     }
@@ -190,7 +190,7 @@ class AuctionProductController
         if (!$product) return app('json')->fail('商品不存在');
         if (!$product) return app('json')->fail('商品不存在');
 
 
         $aid_val = round($product['hanging_price'] * 0.0485,2); // 需要的广告值
         $aid_val = round($product['hanging_price'] * 0.0485,2); // 需要的广告值
-        $hanging_price = round((int)$product['hanging_price'] + $product['hanging_price'] * 0.06, 2); // 第二天溢价
+        $hanging_price = round($product['hanging_price'] + $product['hanging_price'] * 0.06, 2); // 第二天溢价
         if ($user['aid_val'] < $aid_val) return app('json')->fail('挂售需要广告值不足');
         if ($user['aid_val'] < $aid_val) return app('json')->fail('挂售需要广告值不足');
 
 
         $order = AuctionOrder::where([['uid', '=', $request->uid()], ['product_id', '=', $product['id']]])->find();
         $order = AuctionOrder::where([['uid', '=', $request->uid()], ['product_id', '=', $product['id']]])->find();

+ 5 - 0
app/api/controller/user/UserController.php

@@ -65,6 +65,11 @@ class UserController
         if ($info['kpi'] < 0){
         if ($info['kpi'] < 0){
             $info['kpi'] = 0;
             $info['kpi'] = 0;
         }
         }
+        $info['user_dow'] = User::where('spread_uid', $request->uid())->count();
+        $user = User::select();
+
+        $team = get_downline($user, $request->uid());
+        $info['team'] = count($team) < 1 ? 0 : count($team);
         return app('json')->success($info);
         return app('json')->success($info);
     }
     }
 
 

+ 7 - 3
app/common.php

@@ -648,8 +648,10 @@ if (!function_exists('getParent')){
     }
     }
 }
 }
 
 
-function get_downline($members,$id){
-    $arr=array();
+if (!function_exists('get_downline')){
+    //所有下级
+    function get_downline($members,$id){
+        $arr=array();
         foreach ($members as $key => $v) {
         foreach ($members as $key => $v) {
 
 
             if($v['spread_uid']==$id){  //pid为0的是顶级分类
             if($v['spread_uid']==$id){  //pid为0的是顶级分类
@@ -658,7 +660,9 @@ function get_downline($members,$id){
                 $arr = array_merge($arr,get_downline($members,$v['uid']));
                 $arr = array_merge($arr,get_downline($members,$v['uid']));
             }
             }
         }
         }
-     return $arr;
+        return $arr;
 
 
+    }
 }
 }
 
 
+

+ 3 - 5
app/models/auction/Auction.php

@@ -36,10 +36,7 @@ class Auction extends BaseModel
         $model->page($data['page'], $data['limit']);
         $model->page($data['page'], $data['limit']);
         $model->order('id DESC, sort DESC');
         $model->order('id DESC, sort DESC');
         $id = [];
         $id = [];
-        $booking = AuctionBooking::where([['uid', '=', $uid], ['create_time', '>', strtotime(date('Y-m-d'), time())]])->field('auction_id')->select();
-        foreach ($booking as $v) {
-            $id[] = $v['auction_id'];
-        }
+
         if ($data['advance']){
         if ($data['advance']){
             $model->where('id', 'in', $id);
             $model->where('id', 'in', $id);
         }
         }
@@ -48,10 +45,11 @@ class Auction extends BaseModel
         if ($list){
         if ($list){
             foreach ($list as  $k =>$v)
             foreach ($list as  $k =>$v)
             {
             {
+                $booking = AuctionBooking::where([['uid', '=', $uid], ['frequency', '=', $v['frequency']], ['auction_id', '=', $v['id']]])->field('auction_id')->find();
                 $list[$k]['time'] = strtotime($v['radd_time']) - 1800;
                 $list[$k]['time'] = strtotime($v['radd_time']) - 1800;
                 $list[$k]['e_time'] = strtotime($v['rend_time']);
                 $list[$k]['e_time'] = strtotime($v['rend_time']);
                 $list[$k]['day'] = date('Y-m-d H:i:s', strtotime($v['radd_time']) - 1800);
                 $list[$k]['day'] = date('Y-m-d H:i:s', strtotime($v['radd_time']) - 1800);
-                if (in_array($v['id'], $id)){
+                if ($booking){
                     $list[$k]['sta'] = 2; // 进入
                     $list[$k]['sta'] = 2; // 进入
                     $list[$k]['str'] = '进入';
                     $list[$k]['str'] = '进入';
                 }else{
                 }else{

+ 0 - 9
app/models/auction/AuctionOrder.php

@@ -202,15 +202,6 @@ class AuctionOrder extends BaseModel
         if ($order['collection_id'] > 0){
         if ($order['collection_id'] > 0){
             self::m_user($order['collection_id'], $order['actual_price']);
             self::m_user($order['collection_id'], $order['actual_price']);
         }
         }
-        if ($order['collection_id'] > 0){
-            // 如果是用户挂售商品
-            $collection = \app\models\user\User::where('uid', $order['uid'])->find();
-            $collection['now_money'] += $order['actual_price'];// 增加买家余额
-            $collection->save();
-            UserBill::income('挂售商品卖出', $collection['uid'], 'now_money', 'add_now_money', $order['actual_price'], $collection['spread_uid'], $collection['now_money']);
-        }
-
-
         AuctionOrder::where('id', $order['id'])->update(['status' => 2]); // 修改订单状态
         AuctionOrder::where('id', $order['id'])->update(['status' => 2]); // 修改订单状态
         UserBill::expend('购买商品支付', $uid, 'now_money', 'sub_money', $order['actual_price'], $user['spread_uid'], $user['now_money'], '购买商品支付订单');
         UserBill::expend('购买商品支付', $uid, 'now_money', 'sub_money', $order['actual_price'], $user['spread_uid'], $user['now_money'], '购买商品支付订单');
     }
     }

+ 3 - 1
app/models/auction/AuctionProduct.php

@@ -54,7 +54,9 @@ class AuctionProduct extends BaseModel
         $product = self::where('auction_id', $auction['id'])
         $product = self::where('auction_id', $auction['id'])
             ->where('hanging_price', '>=', $section['low'])
             ->where('hanging_price', '>=', $section['low'])
             ->where('hanging_price','<=',$section['high'])
             ->where('hanging_price','<=',$section['high'])
-            ->where('id', 'notIn', $order)->orderRaw('rand()')
+            ->where('id', 'notIn', $order)
+            ->where('uid', '<>', $uid)
+            ->orderRaw('rand()')
             ->limit(1)->find(); // 随机出来一个商品
             ->limit(1)->find(); // 随机出来一个商品
 
 
         if (empty($product)){
         if (empty($product)){