瀏覽代碼

默认的

Kirin 4 年之前
父節點
當前提交
2cff2331a3
共有 3 個文件被更改,包括 36 次插入3 次删除
  1. 8 0
      app/admin/model/system/SystemUserTask.php
  2. 4 3
      app/models/store/StoreOrder.php
  3. 24 0
      app/models/system/SystemUserTask.php

+ 8 - 0
app/admin/model/system/SystemUserTask.php

@@ -89,6 +89,14 @@ class SystemUserTask extends BaseModel
             'min_number' => 1,
             'unit' => '人'
         ],
+        [
+            'type' => 'BuySomeProduct',
+            'name' => '购买ID为{$num}的商品',
+            'real_name' => '购买商品',
+            'max_number' => 0,
+            'min_number' => 0,
+            'unit' => '号'
+        ],
     ];
 
     public function profile()

+ 4 - 3
app/models/store/StoreOrder.php

@@ -18,7 +18,7 @@ use crmeb\traits\ModelTrait;
 use think\facade\Log;
 use app\models\system\SystemStore;
 use app\models\routine\RoutineTemplate;
-use app\models\user\{User, UserAddress, UserBill, UserSpread, WechatUser};
+use app\models\user\{User, UserAddress, UserBill, UserLevel, UserSpread, WechatUser};
 use crmeb\services\{
     SystemConfigService, WechatTemplateService, workerman\ChannelService
 };
@@ -756,11 +756,12 @@ class StoreOrder extends BaseModel
         if ($order->combination_id && $res1 && !$order->refund_status) $resPink = StorePink::createPink($order);//创建拼团
         $oid = self::where('order_id', $orderId)->value('id');
         StoreOrderStatus::status($oid, 'pay_success', '用户付款成功');
-        $now_money = User::where('uid',$order['uid'])->value('now_money');
+        $now_money = User::where('uid', $order['uid'])->value('now_money');
         UserBill::expend('购买商品', $order['uid'], 'now_money', 'pay_money', $order['pay_price'], $order['id'], $now_money, '支付' . floatval($order['pay_price']) . '元购买商品');
         //支付成功后
         event('OrderPaySuccess', [$order, $formId]);
         $res = $res1 && $resPink && UserSpread::setSpreadSure($order['uid']) && User::backOrderBrokerage($order);
+        UserLevel::setLevelComplete($order['uid']);
         return false !== $res;
     }
 
@@ -1585,7 +1586,7 @@ class StoreOrder extends BaseModel
             $res = $res && StoreOrderStatus::status($item, 'take_delivery', '已收货[自动收货]');
         }
 
-        if(!$res){
+        if (!$res) {
             throw new \Exception('');
         }
 

+ 24 - 0
app/models/system/SystemUserTask.php

@@ -2,6 +2,7 @@
 
 namespace app\models\system;
 
+use app\models\store\StoreCart;
 use app\models\store\StoreOrder;
 use app\models\user\User;
 use app\models\user\UserBill;
@@ -99,6 +100,14 @@ class SystemUserTask extends BaseModel
             'min_number' => 1,
             'unit' => '人'
         ],
+        [
+            'type' => 'BuySomeProduct',
+            'name' => '购买ID为{$num}的商品',
+            'real_name' => '购买商品',
+            'max_number' => 0,
+            'min_number' => 0,
+            'unit' => '号'
+        ],
     ];
 
     public function profile()
@@ -199,6 +208,21 @@ class SystemUserTask extends BaseModel
         return ['还需邀请{$num}人成为下线', $spreadCount, $isComplete];
     }
 
+    public static function BuySomeProduct($task_id, $uid = 0, $start_time = 0, $number = 0)
+    {
+        $isComplete = false;
+        $SumPayPrice = StoreOrder::where('paid', 1)
+            ->where('refund_status', 0)
+            ->where('is_del', 0)
+            ->where('uid', $uid)
+            ->where('add_time', '>', $start_time)
+            ->order('add_time', 'desc')
+            ->find();
+        $product_id = StoreCart::where('id', 'in', $SumPayPrice['cart_id'])->column('product_id');
+        if (in_array($number, $product_id)) $isComplete = UserTaskFinish::setFinish($uid, $task_id) ? true : false;
+        return ['还需购买ID为{$num}的商品一件', 0, $isComplete];
+    }
+
     /**
      * 满足积分
      * @param int $task_id 任务id