WIN-2308041133\Administrator 4 月之前
父節點
當前提交
2755d26e83

+ 5 - 1
app/admin/controller/store/StoreProduct.php

@@ -274,7 +274,8 @@ class StoreProduct extends AuthController
             ['items', []],
             ['attrs', []],
             ['activity', []],
-            ['store_type', 1]
+            ['store_type', 1],
+            ['is_explosive', 0],
         ], $this->request, false, true);
         foreach ($data['activity'] as $k => $v) {
             if ($v == '秒杀') {
@@ -435,6 +436,8 @@ class StoreProduct extends AuthController
             Form::radio('is_new', '首发新品', $product->getData('is_new'))->options([['label' => '是', 'value' => 1], ['label' => '否', 'value' => 0]])->col(8),
             Form::radio('is_postage', '是否包邮', $product->getData('is_postage'))->options([['label' => '是', 'value' => 1], ['label' => '否', 'value' => 0]])->col(8),
             Form::radio('is_good', '是否优品推荐', $product->getData('is_good'))->options([['label' => '是', 'value' => 1], ['label' => '否', 'value' => 0]])->col(8),
+            Form::radio('is_explosive', '报单商品', $product->getData('is_explosive'))->options([['label' => '是', 'value' => 1], ['label' => '否', 'value' => 0]])->col(8),
+
         ];
         $form = Form::make_post_form('编辑产品', $field, Url::buildUrl('update', array('id' => $id)), 2);
         $this->assign(compact('form'));
@@ -475,6 +478,7 @@ class StoreProduct extends AuthController
             ['mer_use', 0],
             ['is_postage', 0],
             ['is_good', 0],
+            ['is_explosive', 0],
         ]);
         if (count($data['cate_id']) < 1) return Json::fail('请选择产品分类');
         $cate_id = $data['cate_id'];

+ 17 - 1
app/admin/view/store/store_product/create.php

@@ -916,6 +916,21 @@
                                             </div>
                                         </div>
                                     </div>
+                                    <div class="layui-col-xs12 layui-col-sm4 layui-col-md4">
+                                        <div class="grid-demo grid-demo-bg1">
+                                            <div class="layui-form-item">
+                                                <label class="layui-form-label">报单商品</label>
+                                                <div class="layui-input-block">
+                                                    <input type="radio" name="is_explosive" lay-filter="is_explosive" value="1"
+                                                           title="开启"
+                                                           :checked="formData.is_explosive == 1 ? true : false">
+                                                    <input type="radio" name="is_explosive" lay-filter="is_explosive" value="0"
+                                                           title="关闭"
+                                                           :checked="formData.is_explosive == 0 ? true : false">
+                                                </div>
+                                            </div>
+                                        </div>
+                                    </div>
 <!--                                    <div class="layui-row layui-col-space15">-->
 <!--                                        <div class="layui-col-xs12 layui-col-sm12 layui-col-md12">-->
 <!--                                            <div class="grid-demo grid-demo-bg1">-->
@@ -1028,6 +1043,7 @@
                 is_best: 0,
                 is_new: 0,
                 is_good: 0,
+                is_explosive: 0,
                 store_type: 1,
                 is_sub: 0,
                 items: [
@@ -1067,7 +1083,7 @@
             activity: {'秒杀': '#1E9FFF', '砍价': '#189688', '拼团': '#FEB900'},
             attr: [],//临时属性
             newRule: false,//是否添加新规则
-            radioRule: ['store_type', 'is_sub', 'is_show', 'is_hot', 'is_benefit', 'is_new', 'is_good', 'is_best', 'spec_type'],//radio 当选规则
+            radioRule: ['store_type', 'is_sub', 'is_show', 'is_hot', 'is_benefit', 'is_new', 'is_good', 'is_best','is_explosive', 'spec_type'],//radio 当选规则
             rule: { //多图选择规则
                 slider_image: {
                     maxLength: 5

+ 5 - 3
app/api/controller/order/StoreOrderController.php

@@ -161,9 +161,9 @@ class StoreOrderController
         $uid = $request->uid();
         if (StoreOrder::be(['order_id|unique' => $key, 'uid' => $uid, 'is_del' => 0]))
             return app('json')->status('extend_order', '订单已生成', ['orderId' => $key, 'key' => $key]);
-        list($addressId, $couponId, $payType, $useIntegral, $mark, $combinationId, $pinkId, $seckill_id, $formId, $bargainId, $from, $shipping_type, $real_name, $phone, $storeId) = UtilService::postMore([
+        list($addressId, $couponId, $payType, $useIntegral, $mark, $combinationId, $pinkId, $seckill_id, $formId, $bargainId, $from, $shipping_type, $real_name, $phone, $storeId,$sale_uid) = UtilService::postMore([
             'addressId', 'couponId', 'payType', ['useIntegral', 0], 'mark', ['combinationId', 0], ['pinkId', 0], ['seckill_id', 0], ['formId', ''], ['bargainId', ''], ['from', 'weixin'],
-            ['shipping_type', 1], ['real_name', ''], ['phone', ''], ['store_id', 0]
+            ['shipping_type', 1], ['real_name', ''], ['phone', ''], ['store_id', 0],['sale_uid',0]
         ], $request, true);
         $payType = strtolower($payType);
         if ($bargainId) {
@@ -186,7 +186,9 @@ class StoreOrderController
             $isChannel = 0;
         elseif ($from == 'weixinh5')
             $isChannel = 2;
-        $order = StoreOrder::cacheKeyCreateOrder($request->uid(), $key, $addressId, $payType, (int)$useIntegral, $couponId, $mark, $combinationId, $pinkId, $seckill_id, $bargainId, false, $isChannel, $shipping_type, $real_name, $phone, $storeId);
+
+
+        $order = StoreOrder::cacheKeyCreateOrder($request->uid(), $key, $addressId, $payType, (int)$useIntegral, $couponId, $mark, $combinationId, $pinkId, $seckill_id, $bargainId, false, $isChannel, $shipping_type, $real_name, $phone, $storeId,$sale_uid);
         if ($order === false) return app('json')->fail(StoreOrder::getErrorInfo('订单生成失败'));
         $orderId = $order['order_id'];
         $info = compact('orderId', 'key');

+ 1 - 1
app/models/store/StoreCart.php

@@ -157,7 +157,7 @@ class StoreCart extends BaseModel
 
     public static function getUserProductCartList($uid, $cartIds = '', $status = 0)
     {
-        $productInfoField = 'id,image,price,ot_price,vip_price,postage,give_integral,sales,stock,store_name,unit_name,is_show,is_del,is_postage,cost,is_sub,temp_id,store_type';
+        $productInfoField = 'id,image,price,ot_price,vip_price,postage,give_integral,sales,stock,store_name,unit_name,is_show,is_del,is_postage,cost,is_sub,temp_id,store_type,is_explosive';
         $seckillInfoField = 'id,image,price,ot_price,postage,give_integral,sales,stock,title as store_name,unit_name,is_show,is_del,is_postage,cost,temp_id,weight,volume,start_time,stop_time,time_id';
         $bargainInfoField = 'id,image,min_price as price,price as ot_price,postage,give_integral,sales,stock,title as store_name,unit_name,status as is_show,is_del,is_postage,cost,temp_id,weight,volume';
         $combinationInfoField = 'id,image,price,postage,sales,stock,title as store_name,is_show,is_del,is_postage,cost,temp_id,weight,volume';

+ 7 - 1
app/models/store/StoreOrder.php

@@ -275,7 +275,7 @@ class StoreOrder extends BaseModel
      * @throws \think\exception\DbException
      */
 
-    public static function cacheKeyCreateOrder($uid, $key, $addressId, $payType, $useIntegral = false, $couponId = 0, $mark = '', $combinationId = 0, $pinkId = 0, $seckill_id = 0, $bargain_id = 0, $test = false, $isChannel = 0, $shipping_type = 1, $real_name = '', $phone = '', $storeId = 0)
+    public static function cacheKeyCreateOrder($uid, $key, $addressId, $payType, $useIntegral = false, $couponId = 0, $mark = '', $combinationId = 0, $pinkId = 0, $seckill_id = 0, $bargain_id = 0, $test = false, $isChannel = 0, $shipping_type = 1, $real_name = '', $phone = '', $storeId = 0,$sale_uid = 0)
     {
         self::beginTrans();
         try {
@@ -450,6 +450,7 @@ class StoreOrder extends BaseModel
                 'add_time' => time(),
                 'unique' => $key,
                 'shipping_type' => $shipping_type,
+                'sale_uid' => $sale_uid
             ];
             if ($shipping_type === 2) {
                 $orderInfo['verify_code'] = self::getStoreCode();
@@ -782,6 +783,11 @@ class StoreOrder extends BaseModel
         UserBill::expend('购买商品', $order['uid'], 'now_money', 'pay_money', $order['pay_price'], $order['id'], $now_money, '支付' . floatval($order['pay_price']) . '元购买商品');
         //支付成功后
         event('OrderPaySuccess', [$order, $formId]);
+        $sale_uid = User::where('uid', $order['uid'])->value('spread_uid');
+//       如果在分享下支付完成且没有推荐人就自动绑定
+        if ($order['sale_uid']>0&&$sale_uid==0){
+            User::where('uid', $order['uid'])->update(['spread_uid' => $order['sale_uid'],'spread_time'=>time()]);
+        }
         $res = $res1 && $resPink && UserSpread::setSpreadSure($order['uid']) && User::backOrderBrokerage($order);
         return false !== $res;
     }