xieruidong 2 years ago
parent
commit
d71d47a8d4

+ 9 - 1
application/admin/controller/Coupon.php

@@ -77,12 +77,17 @@ class Coupon extends Backend
         }else{
             $data=input('row/a');
             $this->validate($data,[
+                'type|类型'=>['require'],
                 'amount|金额'=>['require'],
-                'amount_full|满减金额'=>['require','requireIf:type,1','egt:'.input('row.amount')],
                 'num|数量'=>['require','gt:0'],
                 'time_start|开始时间'=>['require','gt:0'],
                 'time_end|结束时间'=>['require','gt:0'],
             ]);
+            if($data['type']==1){
+                $this->validate($data,[
+                    'amount_full|满减金额'=>['require','egt:'.input('row.amount')],
+                ]);
+            }
             Db::startTrans();
             $coupon=new \app\admin\model\Coupon();
             $coupon->allowField(true)->data($data)->save();
@@ -101,4 +106,7 @@ class Coupon extends Backend
     {
         $this->error('');
     }
+    public function send($ids){
+
+    }
 }

+ 1 - 1
application/admin/view/coupon/add.html

@@ -15,7 +15,7 @@
     <div class="form-group amountFull">
         <label class="control-label col-xs-12 col-sm-2">{:__('满多少可用')}:</label>
         <div class="col-xs-12 col-sm-8">
-            <input id="c-amount_full" min="0" class="form-control" step="0.01" name="row[amount_full]" type="number" value="" data-rule="required">
+            <input id="c-amount_full" min="0" class="form-control" step="0.01" name="row[amount_full]" type="number" value="">
         </div>
     </div>
     <div class="form-group">

+ 1 - 0
application/admin/view/coupon/index.html

@@ -8,6 +8,7 @@
                     <div id="toolbar" class="toolbar">
                         <a href="javascript:;" class="btn btn-primary btn-refresh" title="{:__('Refresh')}" ><i class="fa fa-refresh"></i> </a>
                         <a href="javascript:;" class="btn btn-success btn-add {:$auth->check('coupon/add')?'':'hide'}" title="{:__('Add')}" ><i class="fa fa-plus"></i> {:__('生成')}</a>
+                        <a href="javascript:;" class="btn btn-success btn-send btn-disabled disabled {:$auth->check('coupon/edit')?'':'hide'}" title="{:__('发放优惠券')}" >{:__('发放优惠券')}</a>
 <!--                        <a href="javascript:;" class="btn btn-success btn-edit btn-disabled disabled {:$auth->check('coupon/edit')?'':'hide'}" title="{:__('Edit')}" ><i class="fa fa-pencil"></i> {:__('Edit')}</a>
                         <a href="javascript:;" class="btn btn-danger btn-del btn-disabled disabled {:$auth->check('coupon/del')?'':'hide'}" title="{:__('Delete')}" ><i class="fa fa-trash"></i> {:__('Delete')}</a>
                         <a href="javascript:;" class="btn btn-danger btn-import {:$auth->check('coupon/import')?'':'hide'}" title="{:__('Import')}" id="btn-import-file" data-url="ajax/upload" data-mimetype="csv,xls,xlsx" data-multiple="false"><i class="fa fa-upload"></i> {:__('Import')}</a>

+ 9 - 0
application/common/model/Coupon.php

@@ -24,4 +24,13 @@ class Coupon extends Model
     public function bindGoods(){
         return $this->hasMany(CouponGoods::class);
     }
+
+    protected static function init()
+    {
+        self::beforeWrite(function (self $coupon){
+            if($coupon['type']==2){
+                unset($coupon['amount_full']);
+            }
+        });
+    }
 }

+ 11 - 1
public/assets/js/backend/coupon.js

@@ -11,11 +11,13 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                     del_url: 'coupon/del',
                     multi_url: 'coupon/multi',
                     import_url: 'coupon/import',
+                    send_url: 'coupon/send',
                     table: 'coupon',
                 }
             });
 
             var table = $("#table");
+            var extend = $.fn.bootstrapTable.defaults.extend;
 
             // 初始化表格
             table.bootstrapTable({
@@ -26,7 +28,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                     [
                         {checkbox: true},
                         {field: 'id', title: __('Id')},
-                        {field: 'type', title: __('Type'),searchList:types,formatter: Table.api.formatter.label},
+                        {field: 'type', title: __('类型'),searchList:types,formatter: Table.api.formatter.label},
                         {field: 'amount', title: __('金额'), operate:'BETWEEN'},
                         {field: 'amount_full', title: __('满减金额'), operate:'BETWEEN'},
                         {field: 'num', title: __('Num')},
@@ -42,6 +44,14 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
             // 为表格绑定事件
             Table.api.bindevent(table);
             $('.btn-add').data('area',["100%","100%"])
+
+            $('.btn-send').click(function (){
+                let id=[]
+                table.bootstrapTable('getSelections').forEach(item=>{
+                    id.push(item.id)
+                })
+                Fast.api.open(extend.send_url+`/ids/${id.join(',')}`,$(this).text())
+            })
         },
         add: function () {
             Controller.api.bindevent();