Преглед изворни кода

修改商户到期时间和次数可后台操作

Your Name пре 6 дана
родитељ
комит
c7fbabd2c2

+ 1
- 2
app/admin/controller/shop/Store.php Прегледај датотеку

@@ -100,6 +100,7 @@ class Store extends AdminBase
100 100
      */
101 101
     public function set()
102 102
     {
103
+
103 104
         if ($this->request->isAjax()) {
104 105
             (new StoreLValidate())->goCheck('set');
105 106
             $post = $this->request->post();
@@ -112,8 +113,6 @@ class Store extends AdminBase
112 113
             return JsonServer::success('设置成功');
113 114
         }
114 115
 
115
-
116
-
117 116
         $id = $this->request->get('id');
118 117
 
119 118
         //调用服务套餐

+ 128
- 7
app/admin/logic/shop/StoreLogic.php Прегледај датотеку

@@ -302,17 +302,138 @@ class StoreLogic extends Logic
302 302
      */
303 303
     public static function set($post)
304 304
     {
305
+        //判断参数
306
+        if((int)$post['number'] < 0){
307
+            static::$error = "操作数量不能等于0!";
308
+            return false;
309
+        }
310
+
311
+        Db::startTrans();
305 312
         try {
306
-            Shop::update([
307
-                'is_distribution' => $post['is_distribution'] ?? 0,
308
-                'is_recommend' => $post['is_recommend'] ?? 0,
309
-                'is_pay' => $post['is_pay'] ?? 1, //是否开启支付功能,默认开启
310
-                'weight'       => $post['weight'],
311
-                'tid'       => $post['tid']
312
-            ], ['id'=>$post['id']]);
313
+            //操作数大于0
314
+            if((int)$post['number'] > 0) {
315
+                $number = (int)$post['number'];
316
+                //计算
317
+                $item = Shop::where(['id' => $post['id']])->find();
318
+                if ((int)$item['hksy_type'] === 0) {
319
+                    //包月
320
+                    $expire_time = strtotime($item['expire_time']);
321
+                    if ((int)$post['type'] === 0) {
322
+                        //增加
323
+                        $b = $number;
324
+                        $b_str = '增加';
325
+                        if ((int)$post['mouth'] === 0) {
326
+                            //月份
327
+                            $after_time = strtotime("+" . $number . " months", $expire_time);
328
+                            $b_str .= $number . '个月';
329
+                            $b_t = 0;
330
+                        } else {
331
+                            //天数
332
+                            $after_time = strtotime("+" . $number . " day", $expire_time);
333
+                            $b_str .= $number . '天';
334
+                            $b_t = 1;
335
+                        }
336
+                    } else {
337
+                        //减少
338
+                        $b = -$number;
339
+                        $b_str = '减少';
340
+                        if ((int)$post['mouth'] === 0) {
341
+                            //月份
342
+                            $after_time = strtotime("-" . $number . " months", $expire_time);
343
+                            $b_str .= $number . '个月';
344
+                            $b_t = 0;
345
+                        } else {
346
+                            //天数
347
+                            $after_time = strtotime("-" . $number . " day", $expire_time);
348
+                            $b_str .= $number . '天';
349
+                            $b_t = 1;
350
+                        }
351
+                    }
352
+                    //操作结果测试
353
+                    //echo $item['expire_time'].'<br/>';
354
+                    //echo  date("Y-m-d H:i:s",$after_time);die;
355
+                } else {
356
+                    //按量付费
357
+                    $hksy_count = (int)$item['hksy_count'];
358
+                    if ((int)$post['type'] === 0) {
359
+                        //增加
360
+                        $after_hksy_count = $hksy_count + (int)$number;
361
+                        $c = $number;
362
+                        $c_str = '增加次数:' . $number;
363
+                    } else {
364
+                        //减少
365
+                        if ($number > $hksy_count) {
366
+                            //static::$error = "剩余数量不足于减少!";
367
+                            //return false;
368
+                            throw new \think\Exception('剩余数量不足于减少!');
369
+                        }
370
+                        $c = -$number;
371
+                        $c_str = '减少次数:' . $number;
372
+                        $after_hksy_count = $hksy_count - (int)$number;
373
+                    }
374
+                    //测试操作结果
375
+                    //echo $hksy_count.'<br/>';
376
+                    //echo $after_hksy_count;die;
377
+                }
378
+
379
+
380
+                //增加日志
381
+                // 添加用户套餐时间或者数量
382
+                $hk = new ShopHkLog();
383
+                $hk->shop_id = $item['id'];
384
+                $hk->source_id = 0;
385
+                if ((int)$item['hksy_type'] === 0) {
386
+                    //包月
387
+                    $hk->source_type = 200;
388
+                    $hk->change_count = $b;
389
+                    $hk->before_date = date('Y-m-d H:i:s', $expire_time);
390
+                    $hk->after_date = date('Y-m-d H:i:s', $after_time);
391
+                    $hk->remark = '[后台操作],' . $b_str;
392
+                    $hk->dw_type = $b_t; //单位类型
393
+                } else {
394
+                    //按量付费
395
+                    $hk->source_type = 100;
396
+                    $hk->change_count = $c;
397
+                    $hk->left_count = $after_hksy_count;
398
+                    $hk->remark = '[后台操作],' . $c_str;
399
+                    $hk->dw_type = 2;
400
+                }
401
+                $hk->save();
313 402
 
403
+                if ((int)$item['hksy_type'] === 0) {
404
+                    Shop::update([
405
+                        'expire_time' => $after_time,
406
+                        'is_distribution' => $post['is_distribution'] ?? 0,
407
+                        'is_recommend' => $post['is_recommend'] ?? 0,
408
+                        'is_pay' => $post['is_pay'] ?? 1, //是否开启支付功能,默认开启
409
+                        'weight' => $post['weight'],
410
+                        'tid' => $post['tid']
411
+                    ], ['id' => $post['id']]);
412
+                }else{
413
+                    Shop::update([
414
+                        'hksy_count' => $after_hksy_count,
415
+                        'is_distribution' => $post['is_distribution'] ?? 0,
416
+                        'is_recommend' => $post['is_recommend'] ?? 0,
417
+                        'is_pay' => $post['is_pay'] ?? 1, //是否开启支付功能,默认开启
418
+                        'weight' => $post['weight'],
419
+                        'tid' => $post['tid']
420
+                    ], ['id' => $post['id']]);
421
+                }
422
+            }else{
423
+                Shop::update([
424
+                    'is_distribution' => $post['is_distribution'] ?? 0,
425
+                    'is_recommend' => $post['is_recommend'] ?? 0,
426
+                    'is_pay' => $post['is_pay'] ?? 1, //是否开启支付功能,默认开启
427
+                    'weight' => $post['weight'],
428
+                    'tid' => $post['tid']
429
+                ], ['id' => $post['id']]);
430
+            }
431
+
432
+            Db::commit();
314 433
             return true;
434
+
315 435
         } catch (Exception $e) {
436
+            Db::rollback();
316 437
             static::$error = $e->getMessage();
317 438
             return false;
318 439
         }

+ 35
- 0
app/admin/view/shop/store/set.html Прегледај датотеку

@@ -45,6 +45,41 @@
45 45
         </div>
46 46
 
47 47
 
48
+        <!--detail-->
49
+        <div class="layui-form-item">
50
+            <label for="expire_time" class="layui-form-label"><span style="color:red;">*</span>使用场景:</label>
51
+            <div class="layui-input-inline">
52
+                <input type="radio" name="type" value="0" title="增加" checked>
53
+                <input type="radio" name="type" value="1" title="减少">
54
+            </div>
55
+        </div>
56
+        {if $detail.hksy_type == 0}
57
+            <!--包月-->
58
+            <div class="layui-form-item">
59
+                <label for="expire_time" class="layui-form-label"><span style="color:red;">*</span>操作类型:</label>
60
+                <div class="layui-input-inline">
61
+                    <input type="radio" name="mouth" value="0" title="月份" checked>
62
+                    <input type="radio" name="mouth" value="1" title="天数">
63
+                </div>
64
+            </div>
65
+            <div class="layui-form-item hksy_type_item2">
66
+                <label for="months" class="layui-form-label"><span style="color:red;">*</span>赠送数量:</label>
67
+                <div class="layui-input-inline">
68
+                    <input type="number" name="number" id="months" value="0" lay-verType="tips"
69
+                           lay-verify="months" switch-tab="1" autocomplete="off" class="layui-input">
70
+                </div>
71
+            </div>
72
+        {else/}
73
+            <!--按量付费-->
74
+            <div class="layui-form-item hksy_type_item">
75
+                <label for="hksy_count" class="layui-form-label"><span style="color:red;">*</span>赠送评论数:</label>
76
+                <div class="layui-input-inline">
77
+                    <input type="number" name="number" id="hksy_count" value="1000" lay-verType="tips"
78
+                           lay-verify="hksy_count" switch-tab="1" autocomplete="off" class="layui-input">
79
+                </div>
80
+            </div>
81
+        {/if}
82
+
48 83
         <div class="layui-form-item">
49 84
             <label for="weight" class="layui-form-label"><span style="color:red;">*</span>排序权重:</label>
50 85
             <div class="layui-input-inline">

+ 1
- 1
app/shop/view/content/closure/edit/04.html Прегледај датотеку

@@ -67,7 +67,7 @@
67 67
     <label class="layui-form-label"></label>
68 68
     <div class="layui-input-block tips">
69 69
         评论数,用"-"号连接多个数字,例:
70
-        <b style="color:red;">10-20 表示 10秒到20秒</b>
70
+        <b style="color:red;">10-20 表示 评论10条到20条</b>
71 71
     </div>
72 72
 </div>
73 73
 

+ 1
- 1
app/shop/view/content/closure/setting/04.html Прегледај датотеку

@@ -45,7 +45,7 @@
45 45
     <label class="layui-form-label"></label>
46 46
     <div class="layui-input-block tips">
47 47
         评论数,用"-"号连接多个数字,例:
48
-        <b style="color:red;">10-20 表示 10秒到20秒</b>
48
+        <b style="color:red;">10-20 表示 评论10条到20条</b>
49 49
     </div>
50 50
 </div>
51 51
 

+ 7
- 2
app/shop/view/order/order_renew/renew_log.html Прегледај датотеку

@@ -54,13 +54,18 @@
54 54
         </script>
55 55
 
56 56
         <script type="text/html" id="table-type">
57
-            {{# if(d.source_type == 101){ }}
57
+            {{# if(d.source_type == 101 && d.dw_type != 2){ }}
58 58
             <span style="color: red;">使用扣减次数</span>
59 59
             {{#  } }}
60 60
 
61
-            {{# if(d.source_type == 100){ }}
61
+            {{# if(d.source_type == 100 && d.dw_type != 2){ }}
62 62
             <span style="color: blue;">充值次数</span>
63 63
             {{#  } }}
64
+
65
+            {{# if(d.dw_type == 2){ }}
66
+            <span style="color: green;">后台操作</span>
67
+            {{#  } }}
68
+
64 69
         </script>
65 70
 
66 71
         <script type="text/html" id="table-num">

+ 7
- 1
app/shop/view/order/order_renew/renew_month_log.html Прегледај датотеку

@@ -52,6 +52,12 @@
52 52
                 <span style="color: red;">+{{ d.change_count }}</span>
53 53
             {{#  } }}
54 54
 
55
+            {{# if(d.dw_type == 1 || d.dw_type == '1'){ }}
56
+                天
57
+            {{#  } }}
58
+            {{# if(d.dw_type == 0 || d.dw_type == 100){ }}
59
+                月
60
+            {{#  } }}
55 61
 
56 62
 
57 63
         </script>
@@ -67,7 +73,7 @@
67 73
 
68 74
         like.tableLists("#like-table-lists", "{:url()}", [
69 75
             { field: "id", width: 80, title: "ID" }
70
-            , { field: "change_count", width: 100, align: "center", title: "续费月数",templet:"#table-count"}
76
+            , { field: "change_count", width: 100, align: "center", title: "变化数量",templet:"#table-count"}
71 77
             , { field: "before_date", width: 200, align: "center", title: "续费前到期时间" }
72 78
             , { field: "after_date", width: 200, align: "center", title: "续费后到期时间" }
73 79
             , { field: "remark",align: "center", title: "备注" }

Loading…
Откажи
Сачувај