Browse Source

优惠券管理迁移到新框架

master
liangyuyan 6 years ago
parent
commit
fb35b93268
  1. 134
      app/Admin/Controllers/CouponController.php
  2. 18
      app/Admin/Repositories/Coupon.php
  3. 2
      app/Admin/routes.php
  4. 97
      app/Models/Coupon.php
  5. 55
      config/coupon.php
  6. 64
      dcat_admin_ide_helper.php
  7. 42
      resources/lang/zh-CN/coupon.php

134
app/Admin/Controllers/CouponController.php

@ -0,0 +1,134 @@
<?php
namespace App\Admin\Controllers;
use App\Admin\Repositories\Coupon;
use Dcat\Admin\Form;
use Dcat\Admin\Grid;
use Dcat\Admin\Show;
use Dcat\Admin\Controllers\AdminController;
use App\Models\Coupon as couponModel;
class CouponController extends AdminController
{
/**
* Make a grid builder.
*
* @return Grid
*/
protected function grid()
{
return Grid::make($c = new Coupon(), function (Grid $grid) {
$grid->id->sortable();
$grid->title;
$grid->start_time->display(function($time){
return date('Y-m-d H:i:s',$time);
});
$grid->end_time->display(function($time){
return date('Y-m-d H:i:s',$time);
});
$grid->full_amount;
$grid->discounts;
$grid->discount_type;
$grid->inventory;
$grid->inventory_use;
$grid->type;
$grid->active_type;
$grid->status
->using(
config('coupon.status')
)
->label(
config('coupon.status_label')
);
// $grid->usable_start_time->display(function($time){
// return date('Y-m-d H:i:s',$time);
// });
// $grid->usable_end_time->display(function($time){
// return date('Y-m-d H:i:s',$time);
// });
$grid->filter(function (Grid\Filter $filter) {
$filter->like('name');
});
});
}
/**
* Make a show builder.
*
* @param mixed $id
*
* @return Show
*/
protected function detail($id)
{
return Show::make($id, new Coupon(), function (Show $show) {
$show->id;
$show->title;
$show->introduce;
$show->start_time;
$show->end_time;
$show->full_amount;
$show->discounts;
$show->is_new_user;
$show->inventory;
$show->inventory_use;
$show->type;
$show->market_id;
$show->storetype_id;
$show->category;
$show->active_type;
$show->status;
$show->remark;
$show->weigh;
$show->usable_number;
$show->usable_start_time;
$show->usable_end_time;
$show->discount_type;
$show->created_at;
$show->updated_at;
});
}
/**
* Make a form builder.
*
* @return Form
*/
protected function form()
{
return Form::make(new Coupon(), function (Form $form) {
$form->display('id');
$form->text('title');
$form->text('introduce');
$form->text('start_time');
$form->text('end_time');
$form->text('full_amount');
$form->text('discounts');
$form->text('is_new_user');
$form->text('inventory');
$form->text('inventory_use');
$form->text('type');
$form->text('market_id');
$form->text('storetype_id');
$form->text('category');
$form->text('active_type');
$form->text('status');
$form->text('remark');
$form->text('weigh');
$form->text('usable_number');
$form->text('usable_start_time');
$form->text('usable_end_time');
$form->text('discount_type');
$form->display('created_at');
$form->display('updated_at');
});
}
}

18
app/Admin/Repositories/Coupon.php

@ -0,0 +1,18 @@
<?php
namespace App\Admin\Repositories;
use App\Models\Coupon as Model;
use Dcat\Admin\Grid\Model as GridModel;
use Dcat\Admin\Repositories\EloquentRepository;
class Coupon extends EloquentRepository
{
/**
* Model.
*
* @var string
*/
protected $eloquentClass = Model::class;
}

2
app/Admin/routes.php

@ -30,7 +30,7 @@ Route::group([
$router->get('/coupon/TieForm', 'CouponTieController@CouponTieForm');
$router->get('/couponTie', 'CouponTieController@CouponTieList');
$router->resource('/couponSetting', 'couponSettingController');
$router->resource('/coupon', 'couponController');
//获取所有市场
$router->any('/api/getAllMarket', 'LanzuServiceSpeakerController@getAllMarkets');

97
app/Models/Coupon.php

@ -0,0 +1,97 @@
<?php
namespace App\Models;
use Dcat\Admin\Traits\HasDateTimeFormatter;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Eloquent\Model;
class Coupon extends Model
{
use HasDateTimeFormatter;
use SoftDeletes;
protected $table = 'ims_system_coupon_user';
public function getStatusTextAttribute($value)
{
return isset(config('coupon.status')[$value])?config('coupon.status')[$value]:'';
}
public function getTypeTextAttribute($value)
{
return isset(config('coupon.type')[$value])?config('coupon.type')[$value]:'';
}
public function getCategoryTextAttribute($value)
{
return isset(config('coupon.category')[$value])?config('coupon.category')[$value]:'';
}
public function getIsNewUserTextAttribute($value)
{
return isset(config('coupon.is_new_user')[$value])?config('coupon.is_new_user')[$value]:'';
}
public function getDiscountTypeTextAttribute($value)
{
return isset(config('coupon.discount_type')[$value])?config('coupon.discount_type')[$value]:'';
}
public function getActiveTypeTextAttribute($value)
{
return isset(config('coupon.active_type')[$value])?config('coupon.active_type')[$value]:'';
}
public function getStartTimeTextAttribute($value)
{
$value = $value ? $value : '';
return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
}
public function getEndTimeTextAttribute($value)
{
$value = $value ? $value : '';
return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
}
// 转换
public function getTypeAttribute($value)
{
return isset(config('coupon.type')[$value])?config('coupon.type')[$value]:'';
}
public function getDiscountTypeAttribute($value)
{
return isset(config('coupon.discount_type')[$value])?config('coupon.discount_type')[$value]:'';
}
public function getActiveTypeAttribute($value)
{
return isset(config('coupon.active_type')[$value])?config('coupon.active_type')[$value]:'';
}
// public function getStartTimeAttribute($value)
// {
// $value = $value ? $value : '';
// return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
// }
// 设置
protected function setStartTimeAttribute($value)
{
return $value === '' ? null : strtotime($value);
}
protected function setEndTimeAttribute($value)
{
return $value === '' ? null : strtotime($value);
}
protected function setUsableStarttimeAttribute($value)
{
return $value === '' ? null : strtotime($value);
}
protected function setUsableEndTimeAttribute($value)
{
return $value === '' ? null : strtotime($value);
}
protected function setAddtimeAttribute($value)
{
return $value === '' ? null : strtotime($value);
}
}

55
config/coupon.php

@ -0,0 +1,55 @@
<?php
return [
//优惠卷(用户)状态
'status'=>[
-1=> '已删除',
0=>'草稿',
1=>'正常',
2=>'已用完',
3=>'禁用',
],
'status_label'=>[
'default' => 'primary',
0 => 'info',
1 => 'success',
2 => 'warning',
3 => 'danger',
-1=> 'danger'
],
//优惠卷 - 类型 type
'type'=>[
1=>'全平台',
2=>'线上',
3=>'线下',
],
//优惠卷 - 分类 category
'category'=>[
1=>'订单'
],
//优惠卷 - 是否新用户
'is_new_user'=>[
1=>'是',
2=>'否',
],
//优惠卷 - 发布优惠卷时,间隔最少时间
'interval_time_min'=>3600,
//优惠卷 - 设置
'setting_category'=>[
1=>[
'name' => '领取类型',
'active' => true
],
],
//优惠卷 - 折扣类型
'discount_type'=>[
1=>'金额',
2=>'打折(%)',
],
//优惠卷 - 活动类型 active_type
'active_type'=>[
1=>'领取活动',
2=>'转发活动',
3=>'返券专用'
]
];

64
dcat_admin_ide_helper.php

@ -70,6 +70,13 @@ namespace Dcat\Admin {
* @property Grid\Column|Collection activity
* @property Grid\Column|Collection forward
* @property Grid\Column|Collection repay
* @property Grid\Column|Collection category
* @property Grid\Column|Collection value
* @property Grid\Column|Collection desc
* @property Grid\Column|Collection store_id
* @property Grid\Column|Collection store_name
* @property Grid\Column|Collection new_user_total
* @property Grid\Column|Collection mm_user_id
* @property Grid\Column|Collection parent_id
* @property Grid\Column|Collection order
* @property Grid\Column|Collection icon
@ -133,7 +140,6 @@ namespace Dcat\Admin {
* @property Grid\Column|Collection executetime
* @property Grid\Column|Collection group
* @property Grid\Column|Collection tip
* @property Grid\Column|Collection value
* @property Grid\Column|Collection rule
* @property Grid\Column|Collection extend
* @property Grid\Column|Collection event
@ -254,7 +260,6 @@ namespace Dcat\Admin {
* @property Grid\Column|Collection item
* @property Grid\Column|Collection area_name
* @property Grid\Column|Collection num
* @property Grid\Column|Collection store_id
* @property Grid\Column|Collection stars
* @property Grid\Column|Collection time
* @property Grid\Column|Collection order_id
@ -560,9 +565,7 @@ namespace Dcat\Admin {
* @property Grid\Column|Collection store_mchid
* @property Grid\Column|Collection cash_code
* @property Grid\Column|Collection store_wallet
* @property Grid\Column|Collection mm_user_id
* @property Grid\Column|Collection add_time
* @property Grid\Column|Collection category
* @property Grid\Column|Collection xyh_open
* @property Grid\Column|Collection is_jd
* @property Grid\Column|Collection is_jfpay
@ -695,7 +698,6 @@ namespace Dcat\Admin {
* @property Grid\Column|Collection is_open_dada_fee
* @property Grid\Column|Collection menu_name
* @property Grid\Column|Collection info
* @property Grid\Column|Collection desc
* @property Grid\Column|Collection tag
* @property Grid\Column|Collection fw_cost
* @property Grid\Column|Collection zd_cost
@ -1152,11 +1154,13 @@ namespace Dcat\Admin {
* @property Grid\Column|Collection logo_url
* @property Grid\Column|Collection success
* @property Grid\Column|Collection error
* @property Grid\Column|Collection qrcode_path
* @property Grid\Column|Collection admin_user_id
* @property Grid\Column|Collection cs_id
* @property Grid\Column|Collection user_type
* @property Grid\Column|Collection money_type
* @property Grid\Column|Collection source_type
* @property Grid\Column|Collection comment
* @property Grid\Column|Collection admin_user_id
* @property Grid\Column|Collection is_del
* @property Grid\Column|Collection balance
* @property Grid\Column|Collection is_operated
@ -1233,6 +1237,13 @@ namespace Dcat\Admin {
* @method Grid\Column|Collection activity(string $label = null)
* @method Grid\Column|Collection forward(string $label = null)
* @method Grid\Column|Collection repay(string $label = null)
* @method Grid\Column|Collection category(string $label = null)
* @method Grid\Column|Collection value(string $label = null)
* @method Grid\Column|Collection desc(string $label = null)
* @method Grid\Column|Collection store_id(string $label = null)
* @method Grid\Column|Collection store_name(string $label = null)
* @method Grid\Column|Collection new_user_total(string $label = null)
* @method Grid\Column|Collection mm_user_id(string $label = null)
* @method Grid\Column|Collection parent_id(string $label = null)
* @method Grid\Column|Collection order(string $label = null)
* @method Grid\Column|Collection icon(string $label = null)
@ -1296,7 +1307,6 @@ namespace Dcat\Admin {
* @method Grid\Column|Collection executetime(string $label = null)
* @method Grid\Column|Collection group(string $label = null)
* @method Grid\Column|Collection tip(string $label = null)
* @method Grid\Column|Collection value(string $label = null)
* @method Grid\Column|Collection rule(string $label = null)
* @method Grid\Column|Collection extend(string $label = null)
* @method Grid\Column|Collection event(string $label = null)
@ -1417,7 +1427,6 @@ namespace Dcat\Admin {
* @method Grid\Column|Collection item(string $label = null)
* @method Grid\Column|Collection area_name(string $label = null)
* @method Grid\Column|Collection num(string $label = null)
* @method Grid\Column|Collection store_id(string $label = null)
* @method Grid\Column|Collection stars(string $label = null)
* @method Grid\Column|Collection time(string $label = null)
* @method Grid\Column|Collection order_id(string $label = null)
@ -1723,9 +1732,7 @@ namespace Dcat\Admin {
* @method Grid\Column|Collection store_mchid(string $label = null)
* @method Grid\Column|Collection cash_code(string $label = null)
* @method Grid\Column|Collection store_wallet(string $label = null)
* @method Grid\Column|Collection mm_user_id(string $label = null)
* @method Grid\Column|Collection add_time(string $label = null)
* @method Grid\Column|Collection category(string $label = null)
* @method Grid\Column|Collection xyh_open(string $label = null)
* @method Grid\Column|Collection is_jd(string $label = null)
* @method Grid\Column|Collection is_jfpay(string $label = null)
@ -1858,7 +1865,6 @@ namespace Dcat\Admin {
* @method Grid\Column|Collection is_open_dada_fee(string $label = null)
* @method Grid\Column|Collection menu_name(string $label = null)
* @method Grid\Column|Collection info(string $label = null)
* @method Grid\Column|Collection desc(string $label = null)
* @method Grid\Column|Collection tag(string $label = null)
* @method Grid\Column|Collection fw_cost(string $label = null)
* @method Grid\Column|Collection zd_cost(string $label = null)
@ -2315,11 +2321,13 @@ namespace Dcat\Admin {
* @method Grid\Column|Collection logo_url(string $label = null)
* @method Grid\Column|Collection success(string $label = null)
* @method Grid\Column|Collection error(string $label = null)
* @method Grid\Column|Collection qrcode_path(string $label = null)
* @method Grid\Column|Collection admin_user_id(string $label = null)
* @method Grid\Column|Collection cs_id(string $label = null)
* @method Grid\Column|Collection user_type(string $label = null)
* @method Grid\Column|Collection money_type(string $label = null)
* @method Grid\Column|Collection source_type(string $label = null)
* @method Grid\Column|Collection comment(string $label = null)
* @method Grid\Column|Collection admin_user_id(string $label = null)
* @method Grid\Column|Collection is_del(string $label = null)
* @method Grid\Column|Collection balance(string $label = null)
* @method Grid\Column|Collection is_operated(string $label = null)
@ -2401,6 +2409,13 @@ namespace Dcat\Admin {
* @property Show\Field|Collection activity
* @property Show\Field|Collection forward
* @property Show\Field|Collection repay
* @property Show\Field|Collection category
* @property Show\Field|Collection value
* @property Show\Field|Collection desc
* @property Show\Field|Collection store_id
* @property Show\Field|Collection store_name
* @property Show\Field|Collection new_user_total
* @property Show\Field|Collection mm_user_id
* @property Show\Field|Collection parent_id
* @property Show\Field|Collection order
* @property Show\Field|Collection icon
@ -2464,7 +2479,6 @@ namespace Dcat\Admin {
* @property Show\Field|Collection executetime
* @property Show\Field|Collection group
* @property Show\Field|Collection tip
* @property Show\Field|Collection value
* @property Show\Field|Collection rule
* @property Show\Field|Collection extend
* @property Show\Field|Collection event
@ -2585,7 +2599,6 @@ namespace Dcat\Admin {
* @property Show\Field|Collection item
* @property Show\Field|Collection area_name
* @property Show\Field|Collection num
* @property Show\Field|Collection store_id
* @property Show\Field|Collection stars
* @property Show\Field|Collection time
* @property Show\Field|Collection order_id
@ -2891,9 +2904,7 @@ namespace Dcat\Admin {
* @property Show\Field|Collection store_mchid
* @property Show\Field|Collection cash_code
* @property Show\Field|Collection store_wallet
* @property Show\Field|Collection mm_user_id
* @property Show\Field|Collection add_time
* @property Show\Field|Collection category
* @property Show\Field|Collection xyh_open
* @property Show\Field|Collection is_jd
* @property Show\Field|Collection is_jfpay
@ -3026,7 +3037,6 @@ namespace Dcat\Admin {
* @property Show\Field|Collection is_open_dada_fee
* @property Show\Field|Collection menu_name
* @property Show\Field|Collection info
* @property Show\Field|Collection desc
* @property Show\Field|Collection tag
* @property Show\Field|Collection fw_cost
* @property Show\Field|Collection zd_cost
@ -3483,11 +3493,13 @@ namespace Dcat\Admin {
* @property Show\Field|Collection logo_url
* @property Show\Field|Collection success
* @property Show\Field|Collection error
* @property Show\Field|Collection qrcode_path
* @property Show\Field|Collection admin_user_id
* @property Show\Field|Collection cs_id
* @property Show\Field|Collection user_type
* @property Show\Field|Collection money_type
* @property Show\Field|Collection source_type
* @property Show\Field|Collection comment
* @property Show\Field|Collection admin_user_id
* @property Show\Field|Collection is_del
* @property Show\Field|Collection balance
* @property Show\Field|Collection is_operated
@ -3564,6 +3576,13 @@ namespace Dcat\Admin {
* @method Show\Field|Collection activity(string $label = null)
* @method Show\Field|Collection forward(string $label = null)
* @method Show\Field|Collection repay(string $label = null)
* @method Show\Field|Collection category(string $label = null)
* @method Show\Field|Collection value(string $label = null)
* @method Show\Field|Collection desc(string $label = null)
* @method Show\Field|Collection store_id(string $label = null)
* @method Show\Field|Collection store_name(string $label = null)
* @method Show\Field|Collection new_user_total(string $label = null)
* @method Show\Field|Collection mm_user_id(string $label = null)
* @method Show\Field|Collection parent_id(string $label = null)
* @method Show\Field|Collection order(string $label = null)
* @method Show\Field|Collection icon(string $label = null)
@ -3627,7 +3646,6 @@ namespace Dcat\Admin {
* @method Show\Field|Collection executetime(string $label = null)
* @method Show\Field|Collection group(string $label = null)
* @method Show\Field|Collection tip(string $label = null)
* @method Show\Field|Collection value(string $label = null)
* @method Show\Field|Collection rule(string $label = null)
* @method Show\Field|Collection extend(string $label = null)
* @method Show\Field|Collection event(string $label = null)
@ -3748,7 +3766,6 @@ namespace Dcat\Admin {
* @method Show\Field|Collection item(string $label = null)
* @method Show\Field|Collection area_name(string $label = null)
* @method Show\Field|Collection num(string $label = null)
* @method Show\Field|Collection store_id(string $label = null)
* @method Show\Field|Collection stars(string $label = null)
* @method Show\Field|Collection time(string $label = null)
* @method Show\Field|Collection order_id(string $label = null)
@ -4054,9 +4071,7 @@ namespace Dcat\Admin {
* @method Show\Field|Collection store_mchid(string $label = null)
* @method Show\Field|Collection cash_code(string $label = null)
* @method Show\Field|Collection store_wallet(string $label = null)
* @method Show\Field|Collection mm_user_id(string $label = null)
* @method Show\Field|Collection add_time(string $label = null)
* @method Show\Field|Collection category(string $label = null)
* @method Show\Field|Collection xyh_open(string $label = null)
* @method Show\Field|Collection is_jd(string $label = null)
* @method Show\Field|Collection is_jfpay(string $label = null)
@ -4189,7 +4204,6 @@ namespace Dcat\Admin {
* @method Show\Field|Collection is_open_dada_fee(string $label = null)
* @method Show\Field|Collection menu_name(string $label = null)
* @method Show\Field|Collection info(string $label = null)
* @method Show\Field|Collection desc(string $label = null)
* @method Show\Field|Collection tag(string $label = null)
* @method Show\Field|Collection fw_cost(string $label = null)
* @method Show\Field|Collection zd_cost(string $label = null)
@ -4646,11 +4660,13 @@ namespace Dcat\Admin {
* @method Show\Field|Collection logo_url(string $label = null)
* @method Show\Field|Collection success(string $label = null)
* @method Show\Field|Collection error(string $label = null)
* @method Show\Field|Collection qrcode_path(string $label = null)
* @method Show\Field|Collection admin_user_id(string $label = null)
* @method Show\Field|Collection cs_id(string $label = null)
* @method Show\Field|Collection user_type(string $label = null)
* @method Show\Field|Collection money_type(string $label = null)
* @method Show\Field|Collection source_type(string $label = null)
* @method Show\Field|Collection comment(string $label = null)
* @method Show\Field|Collection admin_user_id(string $label = null)
* @method Show\Field|Collection is_del(string $label = null)
* @method Show\Field|Collection balance(string $label = null)
* @method Show\Field|Collection is_operated(string $label = null)

42
resources/lang/zh-CN/coupon.php

@ -0,0 +1,42 @@
<?php
return [
'labels' => [
'Coupon' => '优惠券管理',
'coupon' => '优惠券管理',
],
'fields' => [
'title' => '标题',
'introduce' => '介绍',
'start_time' => '活动开始时间',
'end_time' => '活动结束时间',
'start_time_text' => '活动开始时间',
'end_time_text' => '活动结束时间',
'full_amount' => '满金额',
'discounts' => '优惠金额',
'is_new_user' => '是否新用户',
'is_new_user_text' => '是否新用户',
'inventory' => '发放数量',
'inventory_use' => '已领取数量',
'type' => '类型',
'type_text' => '类型',
'market_id' => '市场',
'storetype_id' => '店铺类型',
'category' => '分类',
'category_text' => '分类',
'active_type' => '优惠券活动类型',
'active_type_text' => '优惠券活动类型',
'status' => '状态',
'status_text' => '状态',
'remark' => '备注',
'weigh' => '排序',
'usable_number' => '用户一次可使用数量',
'usable_start_time' => '可用开始时间',
'usable_end_time' => '可用结束时间',
'discount_type' => '优惠类型',
'usable_start_time_text' => '可用开始时间',
'usable_end_time_text' => '可用结束时间',
'discount_type_text' => '优惠类型',
],
'options' => [
],
];
Loading…
Cancel
Save