diff --git a/README.md b/README.md index e787d001..03edc356 100644 --- a/README.md +++ b/README.md @@ -2,18 +2,6 @@ Logo

-

- - Packagist - - - Total Downloads - - - Awesome Laravel - -

- # LaravelAdmin ## 项目简介 @@ -26,6 +14,7 @@ **QQ群: `391528810`** QQ群链接 + ![QQ群](https://www.laraveladmin.cn/api/home/docs/images/QQ群.jpg) ### 功能特色 diff --git a/README_self.md b/README_self.md index 49f8abbf..03524ff7 100644 --- a/README_self.md +++ b/README_self.md @@ -3,18 +3,6 @@ Logo

-

- - Packagist - - - Total Downloads - - - Awesome Laravel - -

- # LaravelAdmin #### 介绍 diff --git a/README_windows.md b/README_windows.md index 30837740..1f5d6255 100644 --- a/README_windows.md +++ b/README_windows.md @@ -1,17 +1,6 @@ -

- Logo -

- - Packagist - - - Total Downloads - - - Awesome Laravel - + Logo

# LaravelAdmin diff --git a/app/Console/Commands/BuildIndexHtml.php b/app/Console/Commands/BuildIndexHtml.php index b6efd8cb..9cc81173 100644 --- a/app/Console/Commands/BuildIndexHtml.php +++ b/app/Console/Commands/BuildIndexHtml.php @@ -2,8 +2,8 @@ namespace App\Console\Commands; -use App\Console\BaseCommand; use App\Http\Controllers\Open\IndexController; +use App\Console\BaseCommand; use Illuminate\Support\Str; class BuildIndexHtml extends BaseCommand diff --git a/app/Http/Controllers/Admin/BillController.php b/app/Http/Controllers/Admin/BillController.php new file mode 100644 index 00000000..f348bee5 --- /dev/null +++ b/app/Http/Controllers/Admin/BillController.php @@ -0,0 +1,68 @@ +'=', + 'donation_id'=>'=', + 'status'=>'=' + ]; + + public $showIndexFields=[ + 'member'=>['user'=>[]], + 'donation'=>[] + ]; + public $editFields=[ + 'donation'=>[ + 'member'=>[ + 'user'=>[] + ] + ], + 'member'=>['user'=>[]], + ]; + + public $mapsWhereFields=[ + 'donation_id'=>['id','amount'] + ]; + + + /** + * 资源模型 + * @var string + */ + protected $resourceModel = 'Bill'; + + /** + * 验证规则 + * @return array + */ + protected function getValidateRule(){ + $validate = []; + return $validate; + } + + /** + * 编辑页面数据返回处理 + * @param $id + * @param $data + * @return mixed + */ + protected function handleEditReturn($id,&$data){ + $data['maps']['member_id'] = mapOption($data['row'],'member_id'); + $data['maps']['donation_id'] = mapOption($data['row'],'donation_id'); + return $data; + } + + + +} diff --git a/app/Http/Controllers/Admin/DocController.php b/app/Http/Controllers/Admin/DocController.php new file mode 100644 index 00000000..36eeb7a1 --- /dev/null +++ b/app/Http/Controllers/Admin/DocController.php @@ -0,0 +1,46 @@ +'like' + ]; + + /** + * Index页面字段名称显示 + * @var array + */ + public $showIndexFields = [ + + ]; + + /** + * 资源模型 + * @var string + */ + protected $resourceModel = 'Doc'; + + /** + * 验证规则 + * @return array + */ + protected function getValidateRule(){ + return [ + 'name'=>'required', + 'description'=>'required' + ]; + } + + + +} diff --git a/app/Http/Controllers/Admin/DonationController.php b/app/Http/Controllers/Admin/DonationController.php new file mode 100644 index 00000000..efe1057c --- /dev/null +++ b/app/Http/Controllers/Admin/DonationController.php @@ -0,0 +1,132 @@ +'=', + 'sponsor.name'=>'like', + 'member.user.name'=>'like', + + ]; + + public $editFields=[ + 'member'=>[ + 'id','user_id', + 'user'=>[ + 'id', + 'name', + 'uname' + ] + ], + 'sponsor'=>[ + 'id','name' + ] + + ]; + + /** + * Index页面字段名称显示多条数据统计值 + * @var array + */ + public $showIndexFieldsCount=[ + 'bills' + ]; + + /** + * 其它筛选条件输出 + * @var array + */ + protected $otherSizerOutput = [ + '_key' => 'member.user.name' //默认使用的关键字 + ]; + + /** + * 关键字搜索组 + * @var array + */ + protected $keywordsMap=[ + 'sponsor.name'=>'捐赠会员', + 'member.user.name'=>'赞助商', + ]; + + /** + * Index页面字段名称显示 + * @var array + */ + public $showIndexFields=[ + 'member'=>['id','user_id','user'=>['id','name']], + 'sponsor'=>['id','name'] + ]; + + + /** + * 资源模型 + * @var string + */ + protected $resourceModel = 'Donation'; + + /** + * 验证规则 + * @return array + */ + protected function getValidateRule() + { + $validate = [ + 'member_id' => 'required|integer|exists:members,id', + 'sponsor_id' => 'required|integer|exists:sponsors,id', + 'amount' => 'sometimes|required|min:0.02' + ]; + return $validate; + } + + /** + * 编辑页面数据返回处理 + * @param $id + * @param $data + * @return mixed + */ + protected function handleEditReturn($id, &$data) + { + return $data; + } + + /** + * 执行修改前查询到数据结果后对数据进行处理 + * @param $data + * @param $item + * @return mixed + */ + protected function handlePostEditFindReturn(&$data,$item){ + $member = Member::query()->find($data['member_id']); + $amount = $data['amount']; + $data['name'] = Arr::get($member,'user.name','')."捐赠: {$amount} 元"; + return $data; + } + + /** + * 保存数据后对返回数据处理 + * @param $item + * @param $data + */ + protected function handlePostEdit($item, $data,$old_data=[]) + { + if(!$old_data){ //新增数据 + $item->createBills(); + } + } + + +} diff --git a/app/Http/Controllers/Admin/FeatureController.php b/app/Http/Controllers/Admin/FeatureController.php new file mode 100644 index 00000000..f7816654 --- /dev/null +++ b/app/Http/Controllers/Admin/FeatureController.php @@ -0,0 +1,48 @@ +'like' + ]; + + /** + * 资源模型 + * @var string + */ + protected $resourceModel = 'Feature'; + + /** + * 验证规则 + * @return array + */ + protected function getValidateRule(){ + return [ + 'name'=>'required|min:2|max:8', + 'color'=>'required', + 'description'=>'required|min:20|max:100', + 'icon'=>'nullable|alpha_dash' + ]; + } + + /** + * 编辑页面数据返回处理 + * @param $id + * @param $data + * @return mixed + */ + protected function handleEditReturn($id,&$data){ + return $data; + } + + +} diff --git a/app/Http/Controllers/Admin/MemberController.php b/app/Http/Controllers/Admin/MemberController.php new file mode 100644 index 00000000..c4ed5899 --- /dev/null +++ b/app/Http/Controllers/Admin/MemberController.php @@ -0,0 +1,116 @@ +'like' + ]; + + /** + * 默认排序 + * @var array + */ + protected $orderDefault = [ + 'left_margin'=>'asc' + ]; + + + /** + * Index页面字段名称显示 + * @var array + */ + public $showIndexFields=[ + 'user'=>['id','name','uname'], + 'parent'=>[ + 'id','user_id', + 'user'=>['id','name'] + ] + ]; + + public $editFields=[ + 'user'=>[], + 'parent'=>[ + 'user'=>[] + ] + ]; + + /** + * 导出字段名称 + * + * @var array + */ + public $exportFieldsName = [ + 'user.uname' => 'User name', + 'user.name' => 'Name', + 'parent.user.uname' => '推荐人用户名', + 'parent.user.name' => '推荐人', + 'user_id' => 'User ID', + 'parent_id' => '父级ID', + 'id' => 'ID' + ]; + + /** + * 资源模型 + * @var string + */ + protected $resourceModel = 'Member'; + + /** + * 验证规则 + * @return array + */ + protected function getValidateRule(){ + $id = Request::input('id',0); + $validate = [ + 'user_id'=>'integer|exists:users,id|unique:members,user_id,'.$id.',id,deleted_at,NULL', + 'parent_id'=>'sometimes|required|exists:members,id' + ]; + if(!Member::where('id',1)->value('id') || Request::input('id')==1){ + unset($validate['parent_id']); + } + return $validate; + } + + /** + * 编辑页面数据返回处理 + * @param $id + * @param $data + * @return mixed + */ + protected function handleEditReturn($id,&$data){ + $data['no_root'] = !Member::where('id',1)->value('id') || $id==1; + $data['maps']['user_id'] = mapOption($data['row'],'user_id'); + $data['maps']['parent_id'] = mapOption($data['row'],'parent_id'); + return $data; + } + + /** + * 列表页面数据获取前对数据处理 + * @param $obj + * @return mixed + */ + protected function handleList(&$obj) + { + if($optional_parent = Request::input('optional_parent')){ + $obj = $obj->optionalParent($optional_parent ? Member::find($optional_parent) : null); + } + return $obj; + } + + +} diff --git a/app/Http/Controllers/Admin/SponsorController.php b/app/Http/Controllers/Admin/SponsorController.php new file mode 100644 index 00000000..2d4aeb28 --- /dev/null +++ b/app/Http/Controllers/Admin/SponsorController.php @@ -0,0 +1,51 @@ +'like' + ]; + + /** + * 资源模型 + * @var string + */ + protected $resourceModel = 'Sponsor'; + + /** + * 验证规则 + * @return array + */ + protected function getValidateRule() + { + $validate = [ + 'name' => 'sometimes|required|alpha_dash|between:2,100', + 'url' => 'sometimes|required|active_url', + 'logo' => 'sometimes|required|active_url' + ]; + return $validate; + } + + /** + * 编辑页面数据返回处理 + * @param $id + * @param $data + * @return mixed + */ + protected function handleEditReturn($id, &$data) + { + return $data; + } + + +} diff --git a/app/Http/Controllers/Admin/TechnologyController.php b/app/Http/Controllers/Admin/TechnologyController.php new file mode 100644 index 00000000..9cfca118 --- /dev/null +++ b/app/Http/Controllers/Admin/TechnologyController.php @@ -0,0 +1,46 @@ +'like' + ]; + + /** + * 资源模型 + * @var string + */ + protected $resourceModel = 'Technology'; + + /** + * 验证规则 + * @return array + */ + protected function getValidateRule() + { + return ['name' => 'required|min:2|max:20', 'url' => 'nullable|url', 'logo' => 'required|url', 'description' => 'required|min:20|max:150']; + } + + /** + * 编辑页面数据返回处理 + * @param $id + * @param $data + * @return mixed + */ + protected function handleEditReturn($id, &$data) + { + return $data; + } + + +} diff --git a/app/Http/Controllers/Home/IndexController.php b/app/Http/Controllers/Home/IndexController.php index d9b6b51a..5330c47f 100644 --- a/app/Http/Controllers/Home/IndexController.php +++ b/app/Http/Controllers/Home/IndexController.php @@ -3,12 +3,23 @@ namespace App\Http\Controllers\Home; use App\Http\Controllers\Controller; +use App\Models\Doc; use Illuminate\Support\Facades\Response; class IndexController extends Controller { public function index(){ - return Response::returns([]); + $data = []; + return Response::returns($data); + } + + /** + * 文档 + */ + public function getDocs($any=''){ + $path = $any; + return Doc::where('name',$path)->value('description') ?: '没有更多内容了...'; + } } diff --git a/app/Http/Controllers/Open/IndexController.php b/app/Http/Controllers/Open/IndexController.php index fb4e84f5..4c8efa34 100644 --- a/app/Http/Controllers/Open/IndexController.php +++ b/app/Http/Controllers/Open/IndexController.php @@ -5,7 +5,11 @@ use App\Facades\ClientAuth; use App\Facades\Option; use App\Http\Controllers\Controller; +use App\Models\Doc; +use App\Models\Feature; use App\Models\Menu; +use App\Models\Technology; +use Illuminate\Mail\Markdown; use Illuminate\Support\Arr; use Illuminate\Support\Facades\Artisan; use Illuminate\Support\Facades\Auth; @@ -19,16 +23,39 @@ class IndexController extends Controller { + /** + * 首页数据 + */ + public function getIndex(){ + $data = [ + 'features'=>Feature::take(50)->get(), + 'technologys'=>Technology::take(100)->get() + ]; + return Response::returns($data); + } + + /** + * 联系我们 + * @return mixed + */ + public function contact(){ + $data = []; + return Response::returns($data); + } + /** * 生成index.html文件生成的数据 * @return array */ public function indexData(){ + $file = public_path(getRoutePrefix(config('laravel_admin.web_api_model')).'/home/docs/README.md'); + $markdown = file_exists($file)?file_get_contents($file):Doc::query()->where('name','README.md')->value('description'); $config_url = (config('laravel_admin.domain_auto')?'':config('app.url')).getRoutePrefix(config('laravel_admin.web_api_model')); $config_url = $this->checkUrl($config_url); return [ 'time_str'=>'&time='.time(), 'app_name'=>config('app.name'), + 'markdown'=>Markdown::parse($markdown?:''), 'config_url'=>$config_url ]; } @@ -180,10 +207,21 @@ public function user(){ $user = Auth::user(); $lifetime = config('session.lifetime'); if($user){ - $user->load('admin','admin.roles'); + $user->load('admin','admin.roles','member'); if(!$user->tokenCan('remember')){ $lifetime = config('laravel_admin.no_remember_lifetime'); }; + if($member = Arr::get($user,'member')){ + $bill_sum = collect($member->bills()->selectRaw( + 'SUM(amount) AS `sum_amount`, + SUM(CASE `status` WHEN 0 THEN `amount` ELSE 0 END) AS `sum_amount_0`, + SUM(CASE `status` WHEN 1 THEN `amount` ELSE 0 END) AS `sum_amount_1`' + )->first())->toArray(); + $user = collect($user)->toArray(); + $user['member']['bill_sum'] = $bill_sum; + } + + } return Response::returns([ 'user'=>$user, diff --git a/app/Http/Controllers/Open/SponsorController.php b/app/Http/Controllers/Open/SponsorController.php new file mode 100644 index 00000000..aa55d1cb --- /dev/null +++ b/app/Http/Controllers/Open/SponsorController.php @@ -0,0 +1,65 @@ +'like' + ]; + + /** + * 资源模型 + * @var string + */ + protected $resourceModel = 'Sponsor'; + + /** + * 验证规则 + * @return array + */ + protected function getValidateRule() + { + $validate = [ + ]; + return $validate; + } + /** + * 列表页面返回数据前对数据处理 + * @param $data + * @return mixed + */ + protected function handleIndexReturn(&$data) + { + $data['configUrl']['exportUrl']=''; + $data['configUrl']['importUrl']=''; + $data['configUrl']['showUrl']=''; + $data['configUrl']['createUrl']=''; + $data['configUrl']['updateUrl']=''; + $data['configUrl']['deleteUrl']=''; + return $data; + } + + +} diff --git a/app/Http/Middleware/ClientMiddleware.php b/app/Http/Middleware/ClientMiddleware.php index 6472b3f6..91618b4f 100644 --- a/app/Http/Middleware/ClientMiddleware.php +++ b/app/Http/Middleware/ClientMiddleware.php @@ -12,6 +12,8 @@ public function __construct() { $this->except = [ getRoutePrefix().'/open/config', + getRoutePrefix().'/home/docs/*', + getRoutePrefix().'/home/index', getRoutePrefix().'/open/client-id' ]; diff --git a/app/Models/Bill.php b/app/Models/Bill.php new file mode 100644 index 00000000..68e1b8d2 --- /dev/null +++ b/app/Models/Bill.php @@ -0,0 +1,70 @@ +[ + "0"=>'No cash withdrawal', + "1"=>'Withdrawn cash' + ] + ]; + //字段默认值 + protected $fieldsDefault = [ + 'member_id' => 0, + 'donation_id' => 0, + 'amount' => 0.00, + 'status' => 0 + ]; + //字段说明 + protected $fieldsName = [ + 'id' => 'ID', + 'member_id' => 'Member ID', + 'donation_id' => 'Donation ID', + 'amount' => 'Amount of money', + 'status' => 'State', + 'created_at' => 'Created At', + 'updated_at' => 'Updated At', + 'deleted_at' => 'Deleted At' + ]; + + + + /** + * @return \Illuminate\Database\Eloquent\Relations\BelongsTo + */ + public function member(){ + return $this->belongsTo('App\Models\Member'); + } + + /** + * @return \Illuminate\Database\Eloquent\Relations\BelongsTo + */ + public function donation(){ + return $this->belongsTo('App\Models\Donation'); + } + +} diff --git a/app/Models/Doc.php b/app/Models/Doc.php new file mode 100644 index 00000000..f4509c73 --- /dev/null +++ b/app/Models/Doc.php @@ -0,0 +1,45 @@ + '', + 'doc_group_id' => 0, + ]; + //字段说明 + protected $fieldsName = [ + 'id' => 'ID', + 'name' => 'Route', + 'description' => 'Content', + 'created_at' => 'Created At', + 'updated_at' => 'Updated At', + 'deleted_at' => 'Deleted At' + ]; + + + +} diff --git a/app/Models/Donation.php b/app/Models/Donation.php new file mode 100644 index 00000000..3d71804e --- /dev/null +++ b/app/Models/Donation.php @@ -0,0 +1,112 @@ +[ + "1"=>'WeChat', + "2"=>'Alipay', + "3"=>'Transfer accounts' + ] + ]; + //字段默认值 + protected $fieldsDefault = [ + 'member_id' => 0, + 'sponsor_id' => 0, + 'from' => 0, + 'amount' => 0.00, + ]; + //字段说明 + protected $fieldsName = [ + 'id' => 'ID', + 'member_id' => 'Member ID', + 'sponsor_id' => 'Sponsor ID', + 'from' => 'Source', + 'amount' => 'Donation amount', + 'created_at' => 'Created At', + 'updated_at' => 'Updated At', + 'deleted_at' => 'Deleted At' + ]; + + + + /** + * @return \Illuminate\Database\Eloquent\Relations\BelongsTo + */ + public function member(){ + return $this->belongsTo('App\Models\Member'); + } + + /** + * @return \Illuminate\Database\Eloquent\Relations\BelongsTo + */ + public function sponsor(){ + return $this->belongsTo('App\Models\Sponsor'); + } + + + public function bills(){ + return $this->hasMany('App\Models\Bill'); + } + + /** + * 生成佣金 + */ + public function createBills(){ + if($this->bills()->count()===0){ //没有佣金记录 + $amount = $this->amount; + if($amount){ //金额 + $member = $this->member; + $bills = []; + $now = Carbon::now()->toDateTimeString(); + //获取所有推荐人信息 + collect(Member::query() + ->parents($member) //向上所有推荐人 + ->orderBy('right_margin') //从下级向上计算 + ->get()) + ->each(function ($member)use(&$amount,&$bills,$now){ + $value = ceil($amount/2*100)/100; + $amount = $amount-$value; + if($value>0){ + $bills[] = [ + 'member_id'=>$member['id'], + 'donation_id'=>$this->id, + 'amount'=>$value, + 'status'=>0, + 'created_at'=> $now, + 'updated_at'=> $now + ]; + }else{ + return false; + } + }); + Bill::insertReplaceAll($bills); + } + } + } +} diff --git a/app/Models/Feature.php b/app/Models/Feature.php new file mode 100644 index 00000000..b9ac21b3 --- /dev/null +++ b/app/Models/Feature.php @@ -0,0 +1,51 @@ + '', + 'icon' => '', + 'color' => '', + 'description' => '' + ]; + //字段说明 + protected $fieldsName = [ + 'id' => 'ID', + 'name' => 'Name', + 'icon' => 'Icon', + 'color' => 'Colour', + 'description' => 'Describe', + 'created_at' => 'Created At', + 'updated_at' => 'Updated At', + 'deleted_at' => 'Deleted At' + ]; + + + +} diff --git a/app/Models/Member.php b/app/Models/Member.php new file mode 100644 index 00000000..9e52925c --- /dev/null +++ b/app/Models/Member.php @@ -0,0 +1,74 @@ + 0, + 'parent_id' => 0, + 'level' => 0, + 'left_margin' => 0, + 'right_margin' => 0 + ]; + //字段说明 + protected $fieldsName = [ + 'id' => 'ID', + 'user_id' => 'User ID', + 'parent_id' => 'Recommender ID', + 'level' => 'Hierarchy', + 'left_margin' => 'Left boundary', + 'right_margin' => 'Right boundary', + 'created_at' => 'Created At', + 'updated_at' => 'Updated At', + 'deleted_at' => 'Deleted At' + ]; + + + + /** + * @return \Illuminate\Database\Eloquent\Relations\BelongsTo + */ + public function user(){ + return $this->belongsTo('App\Models\User'); + } + + /** + * @return \Illuminate\Database\Eloquent\Relations\HasMany + */ + public function donations(){ + return $this->hasMany('App\Models\Donation'); + } + + /** + * @return \Illuminate\Database\Eloquent\Relations\HasMany + */ + public function bills(){ + return $this->hasMany('App\Models\Bill'); + } + +} diff --git a/app/Models/Menu.php b/app/Models/Menu.php index 74cb538c..71382dfc 100644 --- a/app/Models/Menu.php +++ b/app/Models/Menu.php @@ -361,6 +361,10 @@ public function scopeMain($query) $query->orWhere(function ($q){ $q->mainHome(); }); + }else{ + $query->orWhere(function ($q){ + $q->whereIn('id',[114,3,85]); + }); } //后台用户 diff --git a/app/Models/Sponsor.php b/app/Models/Sponsor.php new file mode 100644 index 00000000..3c824de7 --- /dev/null +++ b/app/Models/Sponsor.php @@ -0,0 +1,51 @@ + 'ID', + 'name' => 'Sponsor', + 'url' => 'Link', + 'logo' => 'Logo Icon', + 'created_at' => 'Created At', + 'updated_at' => 'Updated At', + 'deleted_at' => 'Deleted At' + ]; + + + + /** + * @return \Illuminate\Database\Eloquent\Relations\HasMany + */ + public function donations(){ + return $this->hasMany('App\Models\Donation'); + } + +} diff --git a/app/Models/Technology.php b/app/Models/Technology.php new file mode 100644 index 00000000..1aa931d0 --- /dev/null +++ b/app/Models/Technology.php @@ -0,0 +1,51 @@ + '', + 'url' => '', + 'logo' => '', + 'description' => '' + ]; + //字段说明 + protected $fieldsName = [ + 'id' => 'ID', + 'name' => 'Name', + 'url' => 'Link address', + 'logo' => 'Logo image', + 'description' => 'Describe', + 'created_at' => 'Created At', + 'updated_at' => 'Updated At', + 'deleted_at' => 'Deleted At' + ]; + + + +} diff --git a/app/Models/User.php b/app/Models/User.php index 512acee0..54c76b61 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -126,6 +126,14 @@ public function admin(){ return $this->hasOne('App\Models\Admin'); } + /** + * 用户-捐赠会员 + * @return \Illuminate\Database\Eloquent\Relations\HasOne + */ + public function member(){ + return $this->hasOne('App\Models\Member'); + } + /** * 用户操作日志 * @return \Illuminate\Database\Eloquent\Relations\HasMany @@ -153,4 +161,6 @@ public function scopeGetOperateId($q){ $main = Auth::user(); return Arr::get($main,'id',0); } + + } diff --git a/composer.json b/composer.json index 63c6daee..254c107a 100644 --- a/composer.json +++ b/composer.json @@ -13,6 +13,7 @@ "fruitcake/laravel-cors": "^2.0", "guzzlehttp/guzzle": "^7.0.1", "laravel/framework": "^8.0", + "laravel/horizon": "^5.7", "laravel/sanctum": "^2.7", "laravel/tinker": "^2.0", "laraveladmin/aliyun-sms": "^2.1", diff --git a/config/filesystems.php b/config/filesystems.php index b9c006ef..4649f841 100644 --- a/config/filesystems.php +++ b/config/filesystems.php @@ -127,5 +127,11 @@ resource_path('theme/_variables.scss') => resource_path('sass/_variables.scss'), //主题 resource_path('theme/echarts.theme.json') => resource_path('js/components/echarts.theme.json'), resource_path('theme/variables.less') => resource_path('less/variables.less'), + + public_path('bower_components/gitalk') => base_path('node_modules/gitalk/dist'), + public_path('bower_components/docsify') => base_path('node_modules/docsify/lib'), + public_path('bower_components/prismjs') => base_path('node_modules/prismjs'), + public_path('bower_components/docsify-copy-code') => base_path('node_modules/docsify-copy-code/dist'), + public_path('bower_components/docsify-pagination') => base_path('node_modules/docsify-pagination/dist'), ] ]; diff --git a/database/migrations/2020/2020_11_25_160147_create_features_table.php b/database/migrations/2020/2020_11_25_160147_create_features_table.php new file mode 100644 index 00000000..512b0d9f --- /dev/null +++ b/database/migrations/2020/2020_11_25_160147_create_features_table.php @@ -0,0 +1,39 @@ +increments('id')->comment('ID'); + $table->string('name', 50)->default('')->comment('名称@required|min:2|max:8'); + $table->string('icon', 30)->default('')->comment('图标$icon@nullable|alpha_dash'); + $table->string('color', 10)->default('')->comment('颜色$color@required'); + $table->string('description')->default('')->comment('描述$textarea@required|min:20|max:100'); + $table->timestamps(); + $table->softDeletes()->comment('删除时间'); + //设置表备注 + $table->charset = config('database.connections.'.config('database.default').'.charset'). + ' COMMENT="新功能$softDeletes,timestamps"'; + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('features'); + } +} diff --git a/database/migrations/2020/2020_11_27_230047_create_technologys_table.php b/database/migrations/2020/2020_11_27_230047_create_technologys_table.php new file mode 100644 index 00000000..974ba42c --- /dev/null +++ b/database/migrations/2020/2020_11_27_230047_create_technologys_table.php @@ -0,0 +1,39 @@ +increments('id')->comment('ID'); + $table->string('name', 60)->default('')->comment('名称@required|min:2|max:8'); + $table->string('url')->default('')->comment('链接地址$url@nullable|url'); + $table->string('logo')->default('')->comment('LOGO图片$upload@required|url'); + $table->string('description')->default('')->comment('描述$textarea@required|min:20|max:150'); + $table->timestamps(); + $table->softDeletes()->comment('删除时间'); + //设置表备注 + $table->charset = config('database.connections.'.config('database.default').'.charset'). + ' COMMENT="技术栈$softDeletes,timestamps"'; + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('technologys'); + } +} diff --git a/database/migrations/2020/2020_12_01_234324_create_docs_table.php b/database/migrations/2020/2020_12_01_234324_create_docs_table.php new file mode 100644 index 00000000..388eea69 --- /dev/null +++ b/database/migrations/2020/2020_12_01_234324_create_docs_table.php @@ -0,0 +1,37 @@ +increments('id')->comment('ID'); + $table->string('name')->index()->default('')->comment('名称@required'); + $table->text('description')->comment('内容$markdown'); + $table->timestamps(); + $table->softDeletes()->comment('删除时间'); + //设置表备注 + $table->charset = config('database.connections.'.config('database.default').'.charset'). + ' COMMENT="文档$softDeletes,timestamps"'; + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('docs'); + } +} diff --git a/database/migrations/2021/2021_06_30_223821_create_members_table.php b/database/migrations/2021/2021_06_30_223821_create_members_table.php new file mode 100644 index 00000000..8329c017 --- /dev/null +++ b/database/migrations/2021/2021_06_30_223821_create_members_table.php @@ -0,0 +1,37 @@ +increments('id')->comment('ID'); + $table->unsignedInteger('user_id')->default(0)->index()->comment('用户ID$select2@integer|exists:users,id|unique:members,user_id'); + $table->unsignedInteger('parent_id')->default(0)->index()->comment('推荐人ID$select2@sometimes|required|exists:members,id'); + $table->unsignedSmallInteger('level')->default(0)->comment('层级'); + $table->unsignedInteger('left_margin')->default(0)->comment('左边界'); + $table->unsignedInteger('right_margin')->default(0)->comment('右边界'); + $table->timestamps();//->comment('更新时间'); + $table->softDeletes()->comment('删除时间'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('members'); + } +} diff --git a/database/migrations/2021/2021_07_02_004522_create_sponsors_table.php b/database/migrations/2021/2021_07_02_004522_create_sponsors_table.php new file mode 100644 index 00000000..f9e2f288 --- /dev/null +++ b/database/migrations/2021/2021_07_02_004522_create_sponsors_table.php @@ -0,0 +1,35 @@ +increments('id')->comment('ID'); + $table->string('name', 100)->nullable()->comment('赞助商@sometimes|required|alpha_dash|between:2,100'); + $table->string('url')->nullable()->comment('链接$url@sometimes|required|active_url'); + $table->string('logo')->nullable()->comment('LOGO图标$upload@sometimes|required|active_url'); + $table->timestamps();//->comment('修改时间'); + $table->softDeletes()->comment('删除时间'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('sponsors'); + } +} diff --git a/database/migrations/2021/2021_07_02_010742_create_donations_table.php b/database/migrations/2021/2021_07_02_010742_create_donations_table.php new file mode 100644 index 00000000..4d01a51e --- /dev/null +++ b/database/migrations/2021/2021_07_02_010742_create_donations_table.php @@ -0,0 +1,36 @@ +increments('id')->comment('ID'); + $table->unsignedInteger('member_id')->default(0)->comment('会员ID$select2@required|integer|exists:members,id'); + $table->unsignedInteger('sponsor_id')->default(0)->comment('赞助商ID$select2@required|integer|exists:sponsors,id'); + $table->unsignedInteger('from')->default(0)->comment('来源:1-微信,2-支付宝,3-转账$radio'); + $table->decimal('amount', 10)->unsigned()->default(0.00)->comment('捐赠金额$num@sometimes|required|min:0.02'); + $table->timestamps();//->comment('修改时间'); + $table->softDeletes()->comment('删除时间'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('donations'); + } +} diff --git a/database/migrations/2021/2021_07_02_011145_create_bills_table.php b/database/migrations/2021/2021_07_02_011145_create_bills_table.php new file mode 100644 index 00000000..a2b646cb --- /dev/null +++ b/database/migrations/2021/2021_07_02_011145_create_bills_table.php @@ -0,0 +1,36 @@ +increments('id')->comment('ID'); + $table->unsignedInteger('member_id')->default(0)->comment('会员ID'); + $table->unsignedInteger('donation_id')->default(0)->comment('捐赠ID'); + $table->decimal('amount', 10)->unsigned()->default(0.00)->comment('金额'); + $table->unsignedTinyInteger('status')->default(0)->comment('状态:0-未提现,1-已提现'); + $table->timestamps();//->comment('修改时间'); + $table->softDeletes()->comment('删除时间'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('bills'); + } +} diff --git a/database/seeders/FeatureTableSeeder.php b/database/seeders/FeatureTableSeeder.php new file mode 100644 index 00000000..230a3dcf --- /dev/null +++ b/database/seeders/FeatureTableSeeder.php @@ -0,0 +1,22 @@ +bindModel; + $json_data=<<<'JSON' +[{"id":1,"name":"权限管理","icon":"fa-sitemap","color":"#00c0ef","description":"内置基于权限系统,已将路由、菜单进行绑定。","created_at":"2020-11-26 19:33:56","updated_at":"2020-11-26 23:46:29","deleted_at":null},{"id":2,"name":"统一API","icon":"fa-bolt","color":"#00a65a","description":"后台为web及移动端提供统一,通用,简洁的纯json数据接口,实现前后端分离","created_at":"2020-11-26 22:56:21","updated_at":"2020-11-26 23:44:14","deleted_at":null},{"id":3,"name":"用户管理","icon":"fa-users","color":"#f39c12","description":"后台用户,前端用户,注册登录忘记密码及相关权限管理","created_at":"2020-11-26 23:47:53","updated_at":"2020-11-26 23:47:53","deleted_at":null},{"id":4,"name":"操作日志","icon":"fa-mouse-pointer","color":"#dd4b39","description":"记录相关请求日志,方便操作记录跟踪.记录包括提交的参数及响应结果","created_at":"2020-11-26 23:50:54","updated_at":"2020-11-26 23:50:54","deleted_at":null}] +JSON; + $data = json_decode($json_data,true); + $class::insertReplaceAll($data); + } +} diff --git a/database/seeders/TechnologyTableSeeder.php b/database/seeders/TechnologyTableSeeder.php new file mode 100644 index 00000000..4281cbab --- /dev/null +++ b/database/seeders/TechnologyTableSeeder.php @@ -0,0 +1,22 @@ +bindModel; + $json_data=<<<'JSON' +[{"id":1,"name":"laravel","url":"https:\/\/laravel.com\/","logo":"https:\/\/www.laraveladmin.cn\/dist\/img\/index\/laravel.jpg","description":"Laravel 是 Taylor Otwell 开发的一款基于 PHP 语言的 Web 开源框架,采用了 MVC 的架构模式","created_at":"2020-11-27 23:41:42","updated_at":"2020-11-27 23:41:42","deleted_at":null},{"id":2,"name":"docker","url":"https:\/\/www.docker.com\/","logo":"https:\/\/www.laraveladmin.cn\/dist\/img\/index\/docker.jpg","description":"Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。","created_at":"2020-11-27 23:43:16","updated_at":"2020-11-27 23:43:16","deleted_at":null},{"id":3,"name":"Git","url":"https:\/\/git-scm.com\/","logo":"https:\/\/cdn.jsdelivr.net\/npm\/@bootcss\/www.bootcss.com@0.0.32\/dist\/img\/git-guide.png","description":"git是一个分布式代码版本控制软件。 。","created_at":"2020-11-27 23:47:06","updated_at":"2020-11-27 23:47:06","deleted_at":null},{"id":4,"name":"Vue.js","url":"https:\/\/cn.vuejs.org\/index.html","logo":"https:\/\/cdn.jsdelivr.net\/npm\/@bootcss\/www.bootcss.com@0.0.32\/dist\/img\/vuejs.png","description":"Vue是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用","created_at":"2020-11-27 23:47:52","updated_at":"2020-11-27 23:47:52","deleted_at":null},{"id":5,"name":"Bootstrap","url":"https:\/\/v4.bootcss.com\/","logo":"https:\/\/cdn.jsdelivr.net\/npm\/@bootcss\/www.bootcss.com@0.0.32\/dist\/img\/expo.png","description":"Bootstrap 是全球最受欢迎的前端开源工具库,它支持 Sass 变量和 mixin、响应式栅格系统、自带大量组件和众多强大的 JavaScript 插件。","created_at":"2020-11-27 23:49:57","updated_at":"2020-11-27 23:49:57","deleted_at":null},{"id":6,"name":"NPM","url":"https:\/\/www.npmjs.cn\/","logo":"https:\/\/cdn.jsdelivr.net\/npm\/@bootcss\/www.bootcss.com@0.0.32\/dist\/img\/npm.png","description":"NPM(node package manager)是 Node.js 世界的包管理器。NPM 可以让 JavaScript 开发者在共享代码、复用代码以及更新共享的代码上更加方便。","created_at":"2020-11-27 23:50:45","updated_at":"2020-11-27 23:50:45","deleted_at":null}] +JSON; + $data = json_decode($json_data,true); + $class::insertReplaceAll($data); + } +} diff --git a/database/seeders/VersionSeeder.php b/database/seeders/VersionSeeder.php index e51c00b7..575d6f7f 100644 --- a/database/seeders/VersionSeeder.php +++ b/database/seeders/VersionSeeder.php @@ -1,6 +1,7 @@ call(MenuTableSeeder::class); //菜单数据安装 - //$this->call(ParamTableSeeder::class); //接口文档参数说明 - //$this->call(ResponseTableSeeder::class); //接口文档响应说明 + $this->call(ParamTableSeeder::class); //接口文档参数说明 + $this->call(ResponseTableSeeder::class); //接口文档响应说明 + //系统版本号 + Config::query()->firstOrCreate([ + 'key' => 'system_version_no', + ],[ + 'key' => 'system_version_no', + 'name' => '系统版本号', + 'description' => '系统版本号', + 'value' => 'v1.0.0' + ]); + //百度统计代码 + Config::firstOrCreate([ + 'key' => 'baidu_statistics_url', + ],[ + 'key' => 'baidu_statistics_url', + 'name' => '百度统计地址', + 'description' => '百度统计地址', + 'value' => 'https://hm.baidu.com/hm.js?b5090a95aba5b1706b70f159f6deedfb' + ]); $this->addVersion(); } diff --git a/docker/docker-compose-prod.yml b/docker/docker-compose-prod.yml index 3253a59b..3f37a134 100644 --- a/docker/docker-compose-prod.yml +++ b/docker/docker-compose-prod.yml @@ -39,6 +39,7 @@ services: - mysql - redis volumes: + - ../demo:/var/www/laravel/demo #demo代码目录 - .:/var/www/laravel/laraveladmin #代码目录 - ./docker/php/cron:/var/spool/cron/crontabs/root # 定时任务计划 - ./docker/php/ini/php.ini:/usr/local/etc/php/php.ini #php配置文件 @@ -60,6 +61,7 @@ services: depends_on: - php volumes: + - ../demo:/var/www/laravel/demo #demo代码目录 - .:/var/www/laravel/laraveladmin # 主目录 - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf - ./docker/nginx/vhost:/etc/nginx/conf.d/vhost @@ -73,6 +75,7 @@ services: # build: ./docker/node image: laraveladmin/node #镜像源 volumes: + - ../demo:/var/www/laravel/demo #demo代码目录 - .:/var/www/laravel/laraveladmin #代码目录 # command: # npm run watch diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 0e74b728..28a76ad4 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -6,8 +6,8 @@ services: #服务 - ../docker/mysql/data:/var/lib/mysql #mysql数据库数据文件存放目录;宿主机目录:容器目录 - ../docker/mysql/shared:/var/lib/mysql_shared #与php共享目录 - ./docker/mysql/init.sql:/docker-entrypoint-initdb.d/init.sql #数据库初始化sql -# ports: #与宿主进的端口映射 -# - 3306:3306 #宿主机端口:容器端口 + ports: #与宿主进的端口映射 + - 3307:3306 #宿主机端口:容器端口 restart: always #异常退出后重启 command: --default-authentication-plugin=mysql_native_password #启动执行指令 environment: #容器中环境变量 @@ -57,8 +57,8 @@ services: #服务 - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf - ./docker/nginx/vhost_dev:/etc/nginx/conf.d/vhost ports: - - 80:80 - - 443:443 + - 81:80 + - 444:443 restart: always links: - php:phpfpm diff --git a/docker/nginx/vhost/demo.laraveladmin.cn.conf b/docker/nginx/vhost/demo.laraveladmin.cn.conf new file mode 100755 index 00000000..1c7837c5 --- /dev/null +++ b/docker/nginx/vhost/demo.laraveladmin.cn.conf @@ -0,0 +1,72 @@ +server { + listen 80; + root /var/www/laravel/demo/public; + server_name demo.laraveladmin.cn; + index index.shtml index.html index.htm; + + #access_log /data/logs/nginx80_access.log main; + #error_log /data/logs/nginx80_error.log; + client_max_body_size 100m; + location / { + rewrite ^(.*) https://demo.laraveladmin.cn$1 permanent; + } +} +map $http_upgrade $connection_upgrade { + default upgrade; + '' close; +} + +upstream demo_laraveladmin_cn { + # Connect IP:Port + server phpswoole:1216 weight=5 max_fails=3 fail_timeout=30s; + keepalive 16; +} +server { + listen 443 ssl; + ssl_certificate /var/www/laravel/demo/docker/nginx/vhost/demo_laraveladmin_cn.pem; + ssl_certificate_key /var/www/laravel/demo/docker/nginx/vhost/demo_laraveladmin_cn.key; + ssl_session_timeout 5m; + ssl_protocols TLSv1 TLSv1.1 TLSv1.2; + ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; + ssl_prefer_server_ciphers on; + client_max_body_size 100m; + + root /var/www/laravel/demo/public; + server_name demo.laraveladmin.cn; + index index.shtml index.html index.htm index.php; + #access_log /data/logs/nginx80_access.log main; + #error_log /data/logs/nginx80_error.log; + # Nginx 处理静态资源,LaravelS 处理动态资源 + location ~* \.php$ { + try_files $uri $uri/index.html @demo_laraveladmin_cn_https; + } + location = / { + try_files $uri $uri/index.html @demo_laraveladmin_cn_https; + } + location ^~ /web-api/ { + try_files $uri $uri/ @demo_laraveladmin_cn_https; + } + location ^~ /api/ { + try_files $uri $uri/ @demo_laraveladmin_cn_https; + } + location / { + try_files $uri $uri/ @demo_laraveladmin_cn_https; + } + location @demo_laraveladmin_cn_https { + proxy_http_version 1.1; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Real-PORT $remote_port; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header Host $http_host; + proxy_set_header Scheme $scheme; + proxy_set_header Server-Protocol $server_protocol; + proxy_set_header Server-Name $server_name; + proxy_set_header Server-Addr $server_addr; + proxy_set_header Server-Port $server_port; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection $connection_upgrade; + proxy_pass http://demo_laraveladmin_cn; + } + +} + diff --git a/docker/php/run.sh b/docker/php/run.sh index 9cf9e05d..4e4463a7 100755 --- a/docker/php/run.sh +++ b/docker/php/run.sh @@ -45,16 +45,15 @@ user=www-data numprocs=1 redirect_stderr=true stdout_logfile=${code_dir}/${project}/storage/logs/supervisor.log" > /etc/supervisor/conf.d/${project}.conf - #队列监控 - #echo "[program:${project}_horizon] -#process_name=%(program_name)s_%(process_num)02d -#command=php ${code_dir}/${project}/artisan horizon -#autostart=true -#autorestart=true -#user=www-data -#redirect_stderr=true -#stdout_logfile=${code_dir}/${project}/storage/logs/horizon.log" > /etc/supervisor/conf.d/"${project}"_horizon.conf + echo "[program:${project}_horizon] +process_name=%(program_name)s_%(process_num)02d +command=php ${code_dir}/${project}/artisan horizon +autostart=true +autorestart=true +user=www-data +redirect_stderr=true +stdout_logfile=${code_dir}/${project}/storage/logs/horizon.log" > /etc/supervisor/conf.d/"${project}"_horizon.conf #phpswoole服务 if [ "${is_local}" = 0 ] && ! [ "${http_host}" = "" ] then @@ -71,8 +70,8 @@ numprocs=1 redirect_stderr=true stdout_logfile=${code_dir}/${project}/storage/logs/supervisor_swoole.log" > /etc/supervisor/conf.d/"${project}"_swoole.conf fi - done - supervisord -c /etc/supervisor/supervisord.conf + done + supervisord -c /etc/supervisor/supervisord.conf fi #supervisorctl stop all php-fpm diff --git a/package.json b/package.json index 08917ed7..823d9747 100644 --- a/package.json +++ b/package.json @@ -38,14 +38,19 @@ "bootstrap-colorpicker": "^2.5.3", "bootstrap-sass": "3.4.1", "collect.js": "^4.25.0", + "docsify": "^4.12.2", + "docsify-copy-code": "^2.1.1", + "docsify-pagination": "^2.6.2", "echarts": "^5.2.2", "editor.md": "^1.5.0", "element-ui": "^2.15.7", "es6-promise": "^4.2.8", "font-awesome": "^4.7.0", + "gitalk": "^1.5.0", "icheck": "^1.0.2", "ionicons": "^3.0.0", "md5": "^2.2.1", + "prismjs": "^1.28.0", "qiniu-js": "^2.5.5", "qs": "^6.10.3", "select2": "4.0.10", diff --git a/public/baidu_verify_code-DJ6qzKQwAi.html b/public/baidu_verify_code-DJ6qzKQwAi.html new file mode 100644 index 00000000..2537f1e7 --- /dev/null +++ b/public/baidu_verify_code-DJ6qzKQwAi.html @@ -0,0 +1 @@ +5430782fa3837fe188d6c16246a97807 \ No newline at end of file diff --git a/public/dist/css/site.min.css b/public/dist/css/site.min.css new file mode 100755 index 00000000..d076e604 --- /dev/null +++ b/public/dist/css/site.min.css @@ -0,0 +1,2 @@ + +body{font-family:Helvetica Neue,Helvetica,Arial,Hiragino Sans GB,Hiragino Sans GB W3,WenQuanYi Micro Hei,sans-serif}.h1,.h2,.h3,.h4,.lead,h1,h2,h3,h4{font-family:Helvetica Neue,Helvetica,Arial,Hiragino Sans GB,Hiragino Sans GB W3,Microsoft YaHei UI,Microsoft YaHei,WenQuanYi Micro Hei,sans-serif}body{}@media (min-width:768px){.navbar{min-height:40px}.navbar-nav>li>a{}.navbar-brand{padding-top:0;padding-bottom:0;line-height:42px;height:42px}}.jumbotron{position:relative;padding:40px 0;color:#fff;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.4),0 0 30px rgba(0,0,0,.075);background:#020031;background:linear-gradient(45deg,#020031,#6d3353);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#020031",endColorstr="#6d3353",GradientType=1);box-shadow:inset 0 3px 7px rgba(0,0,0,.2),inset 0 -3px 7px rgba(0,0,0,.2)}.jumbotron a{color:#fff;color:hsla(0,0%,100%,.5);transition:all .2s ease-in-out}.jumbotron aa:hover{color:#fff;text-shadow:0 0 10px hsla(0,0%,100%,.25)}.jumbotron .container{position:relative;z-index:2}.jumbotron:after{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;background:url(../img/bs-docs-masthead-pattern.png) repeat 50%;opacity:.4}@media only screen and (-o-min-device-pixel-ratio:2),only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min--moz-device-pixel-ratio:2){.jumbotron:after{background-size:150px 150px}}.masthead{padding:60px 0 80px;margin-bottom:0;color:#fff}@media screen and (min-width:768px){.masthead{padding:90px 0 110px}}.masthead h1{font-size:60px;line-height:1;letter-spacing:-2px;font-weight:700}@media screen and (min-width:768px){.masthead h1{font-size:90px}}@media screen and (min-width:992px){.masthead h1{font-size:100px}}.masthead h2{font-size:18px;font-weight:200;line-height:1.25}@media screen and (min-width:768px){.masthead h2{font-size:24px}}@media screen and (min-width:992px){.masthead h2{font-size:30px}}.masthead p{font-size:40px;font-weight:200;line-height:1.25}.masthead .masthead-button-links{margin-top:30px}.masthead-links{margin:0;padding:0;list-style:none}.masthead-links li{display:inline;padding:0 10px;color:hsla(0,0%,100%,.25)}.masthead-links li a:hover{color:#fff}.subhead{text-align:center;border-bottom:1px solid #ddd}@media screen and (min-width:768px){.subhead{text-align:left}}.subhead h1{font-size:60px}.subhead p{margin-bottom:20px}@media screen and (min-width:768px){.subhead p{text-align:left}}.btn-primary.btn-shadow{box-shadow:inset 0 -4px 0 #23527c;border:0;color:#fff}.btn-lg.btn-shadow{padding:13px 35px 17px}.bc-social{padding:15px 0;text-align:center;background-color:#f5f5f5;border-top:1px solid #fff;border-bottom:1px solid #ddd}.bc-social-buttons{margin-left:0;margin-bottom:0;padding-left:0;list-style:none}.bc-social-buttons li{display:inline-block;line-height:1;color:#555}.bc-social-buttons li .fa{font-size:18px;margin-right:3px}.bc-social-buttons li .fa-weibo{font-size:20px}.bc-social-buttons li a{color:#555}.bc-social-buttons li.social-qq:hover{color:#337ab7}.bc-social-buttons li.social-weibo a:hover{color:#d9534f}.bc-social-buttons>li+li:before{padding:0 10px;color:#ccc;content:"|"}.projects .thumbnail{display:block;margin-right:auto;margin-left:auto;text-align:center;max-width:310px;margin-bottom:30px;border-radius:0}.projects .thumbnail .caption{height:200px;overflow-y:hidden;color:#555}.projects .thumbnail .caption a:focus,.projects .thumbnail .caption a:hover{text-decoration:none}.projects .thumbnail img{max-width:100%;height:auto}.projects-header{width:60%;text-align:center;font-weight:200;display:block;margin:60px auto 40px}.projects-header h2{font-size:30px;letter-spacing:-1px}@media screen and (min-width:768px){.projects-header h2{font-size:42px}}.nav-sub{padding-top:10px;padding-bottom:10px;margin-top:70px;border-top:1px solid #eee}.footer{padding:30px 0;border-top:1px solid #e5e5e5;margin-top:70px}.footer,.footer a{color:#777}.footer-top .about>div{height:110px;margin-bottom:10px}.footer-top .about>div h4{color:#563d7c;font-size:16px}.footer-bottom{font-size:13px}.footer-bottom ul>li{padding:0}.footer-bottom ul>li+li:before{padding:0 10px;color:#ccc;content:"|"}#scrollUp{background-color:#777;color:#eee;font-size:40px;line-height:1;text-align:center;text-decoration:none;bottom:20px;right:20px;overflow:hidden;width:46px;height:46px;border:none;opacity:.8}#scrollUp:hover{background-color:#333}@media screen and (min-width:992px){#scrollUp{bottom:100px}}.bc-sidebar{margin-top:30px}.bc-sidebar>ul>li>a{display:block;margin:0 0 -1px;padding:8px 14px;border:1px solid #e5e5e5}.excerpt-list{margin-top:60px}.excerpt{min-height:120px;border:1px solid #eee;position:relative;margin-bottom:10px;padding:20px 20px 20px 24px}.excerpt-title{font-size:24px;margin-top:0}.excerpt-title a{color:#555}.excerpt-title a:active,.excerpt-title a:hover{color:#286090}.excerpt-meta{position:absolute;bottom:12px}.excerpt-tags{color:#777}.excerpt-tags .glyphicon{position:relative;top:2px;color:#eee}.excerpt-tags a,.excerpt-tags span{color:#777;font-size:12px}.post{position:relative;margin-top:60px;max-width:680px;display:block;margin-right:auto;margin-left:auto}.post-header h1,.post-header h2{font-size:32px;margin:0 0 45px;position:relative;text-align:center}@media (min-width:768px){.post-header h1,.post-header h2{font-size:36px}}.post-header h1:after,.post-header h2:after{border-top:1px solid #e5e5e5;bottom:0;content:"";left:50%;margin:0 0 0 -30%;position:absolute;width:60%}.post-header h1 a,.post-header h2 a{color:#363636;display:block;padding:65px 0 20px;position:relative}.post-header h1 a:hover,.post-header h2 a:hover{color:#337ab7}.post-header h1 a:before,.post-header h2 a:before{border-top:1px solid #e5e5e5;bottom:-4px;content:"";left:50%;margin:0 0 0 -27%;position:absolute;width:60%}.post-header h1 a:after,.post-header h2 a:after{border-top:1px solid #e5e5e5;bottom:-3px;content:"";left:50%;margin:0 0 0 -28%;position:absolute;width:60%}@media (min-width:768px){.post-header h1 a,.post-header h2 a{padding-left:65px;padding-right:65px}}.post-content{font-size:16px;line-height:1.8;padding-top:20px;padding-bottom:20px}.post-content blockquote,.post-content dl,.post-content form,.post-content hr,.post-content ol,.post-content p,.post-content pre,.post-content table,.post-content ul{margin-bottom:1.8em}.post-content blockquote{font-size:16px}.post-content pre{margin-top:-20px}.post-content li>p{margin-bottom:5px}.post-content embed,.post-content iframe,.post-content img,.post-content video{max-width:100%}.post-content img{height:auto}article.page{margin-top:0;max-width:none}article.page .post-content{padding-top:0}article.page .post-content h2{font-size:36px;padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.reddot:after{content:"";position:absolute;top:10px;right:5px;padding:3px;z-index:9999999;background:#d9534f;border-radius:50%;font-size:0;line-height:0;border:1px solid #d43f3a} diff --git a/public/dist/img/alipay.jpg b/public/dist/img/alipay.jpg new file mode 100755 index 00000000..19f91de6 Binary files /dev/null and b/public/dist/img/alipay.jpg differ diff --git a/public/dist/img/bs-docs-masthead-pattern.png b/public/dist/img/bs-docs-masthead-pattern.png new file mode 100755 index 00000000..7fbb5d25 Binary files /dev/null and b/public/dist/img/bs-docs-masthead-pattern.png differ diff --git a/public/dist/img/index/docker.jpg b/public/dist/img/index/docker.jpg new file mode 100755 index 00000000..a0197942 Binary files /dev/null and b/public/dist/img/index/docker.jpg differ diff --git a/public/dist/img/index/laravel.jpg b/public/dist/img/index/laravel.jpg new file mode 100755 index 00000000..832d7424 Binary files /dev/null and b/public/dist/img/index/laravel.jpg differ diff --git a/public/dist/img/wxpay.jpg b/public/dist/img/wxpay.jpg new file mode 100755 index 00000000..117b616c Binary files /dev/null and b/public/dist/img/wxpay.jpg differ diff --git a/public/dist/js/doc.js b/public/dist/js/doc.js new file mode 100644 index 00000000..37db8014 --- /dev/null +++ b/public/dist/js/doc.js @@ -0,0 +1,128 @@ +let getCookie = function (cname) { + let name = cname + "="; + let ca = document.cookie.split(';'); + for (let i = 0; i < ca.length; i++) { + let c = ca[i].trim(); + if (c.indexOf(name) == 0) { + return c.substring(name.length, c.length); + } + } + return ""; +}; +let token = getCookie('Authorization'); +window.$docsify = { + el: '#app', + repo: 'https://gitee.com/laravel-admin/laraveladmin', + basePath: '/api/home/docs/', + auto2top: true, + requestHeaders: { + 'Authorization': decodeURIComponent(token) + }, + markdown: { + renderer: { + code: function (code, lang) { + lang = lang ? lang.replace(' script', '') : lang; + return this.origin.code.apply(this, arguments); + } + } + }, + copyCode: { + buttonText: '复制', + errorText: '错误', + successText: '复制成功' + }, + pagination: { + previousText: '上一页', + nextText: '下一页', + crossChapter: true, + crossChapterText: true, + }, + count: { + countable: true, + fontsize: '0.9em', + color: 'rgb(90,90,90)', + language: 'chinese' + }, + loadSidebar: true, + alias: { + '/.*/_sidebar.md': '/_sidebar.md' + }, + logo: '/dist/img/logo.png', + themeColor: '#3c8dbc', + //disqus: 'shortname' + plugins:[ + function(hook, vm) { + hook.init(function() { + // 初始化完成后调用,只调用一次,没有参数。 + }); + + hook.beforeEach(function(content) { + // 每次开始解析 Markdown 内容时调用 + return content; + }); + + hook.afterEach(function(html, next) { + // 解析成 html 后调用。 + // beforeEach 和 afterEach 支持处理异步逻辑 + // ... + // 异步处理完成后调用 next(html) 返回结果 + html = html+'
评论加载中...
'; + next(html); + }); + + hook.doneEach(function() { + // 每次路由切换时数据全部加载完成后调用,没有参数。 + /* const giteement = new Giteement({ + id: 'demo page', // optional + owner: 'laravel-admin', + repo: 'laraveladmin', + backcall_uri: 'https://www.laraveladmin.cn/home/index', + oauth_uri: 'https://cors-anywhere.herokuapp.com/https://www.laraveladmin.cn/home/index', + oauth: { + client_id: '7173c415bd9e1d9f6d5660c1646da0aad295fd4266c34bf5c4ca9353298426ff', + client_secret: 'c7bb795b6a6446f540f37126fc2eab14b960d8cef2cd9055362c38f1fa323fc9' + },https://github.com/laraveladmin-cn/laraveladmin.git + enable:true + }); + giteement.render('comments');*/ + try { + const gitalk = new Gitalk({ + clientID: 'cc773b758ba981ee03c5', + clientSecret: '1408f07f17667d34bd78947cdd597b2ae9cd62f5', + repo: 'laraveladmin', + owner: 'laraveladmin-cn', + admin: ['laraveladmin-cn'], + // facebook-like distraction free mode + distractionFreeMode: true, + id: location.hash.replace('#','') + }); + gitalk.render('comments'); + if(self == top){ + setTimeout(()=>{ + //window.location.href = '/home/index'; + },5000); + } + }catch (e) { + console.log(e); + } + + }); + + hook.mounted(function() { + // 初始化并第一次加载完成数据后调用,只触发一次,没有参数。 + }); + + hook.ready(function() { + // 初始化并第一次加载完成数据后调用,没有参数。 + }); + } + ] +}; +if(self == top){ +/* setTimeout(()=>{ + window.document.getElementById('box').style.display = 'none'; + let div=document.createElement("div"); + div.innerText = "跳转中,请稍等..."; + document.body.appendChild(div); + },100);*/ +} diff --git a/public/doc.html b/public/doc.html new file mode 100644 index 00000000..c1c2ab9f --- /dev/null +++ b/public/doc.html @@ -0,0 +1,41 @@ + + + + + + + + + + + +
+
+ 加载中... +
+
+ + + + + + + + + + + + + + + + + + diff --git a/public/google2b376615e134e3f9.html b/public/google2b376615e134e3f9.html new file mode 100644 index 00000000..9760ebe7 --- /dev/null +++ b/public/google2b376615e134e3f9.html @@ -0,0 +1 @@ +google-site-verification: google2b376615e134e3f9.html \ No newline at end of file diff --git a/resources/js/pages/admin/bills/edit.vue b/resources/js/pages/admin/bills/edit.vue new file mode 100644 index 00000000..2257a618 --- /dev/null +++ b/resources/js/pages/admin/bills/edit.vue @@ -0,0 +1,142 @@ + + + diff --git a/resources/js/pages/admin/bills/index.vue b/resources/js/pages/admin/bills/index.vue new file mode 100644 index 00000000..d1b17f50 --- /dev/null +++ b/resources/js/pages/admin/bills/index.vue @@ -0,0 +1,74 @@ + + + + diff --git a/resources/js/pages/admin/docs/edit.vue b/resources/js/pages/admin/docs/edit.vue new file mode 100644 index 00000000..ff074591 --- /dev/null +++ b/resources/js/pages/admin/docs/edit.vue @@ -0,0 +1,61 @@ + + + diff --git a/resources/js/pages/admin/docs/index.vue b/resources/js/pages/admin/docs/index.vue new file mode 100644 index 00000000..90ef8398 --- /dev/null +++ b/resources/js/pages/admin/docs/index.vue @@ -0,0 +1,56 @@ + + + + diff --git a/resources/js/pages/admin/donations/edit.vue b/resources/js/pages/admin/donations/edit.vue new file mode 100644 index 00000000..9279876d --- /dev/null +++ b/resources/js/pages/admin/donations/edit.vue @@ -0,0 +1,136 @@ + + + diff --git a/resources/js/pages/admin/donations/index.vue b/resources/js/pages/admin/donations/index.vue new file mode 100644 index 00000000..c4521c41 --- /dev/null +++ b/resources/js/pages/admin/donations/index.vue @@ -0,0 +1,91 @@ + + + + diff --git a/resources/js/pages/admin/features/edit.vue b/resources/js/pages/admin/features/edit.vue new file mode 100644 index 00000000..afb392dc --- /dev/null +++ b/resources/js/pages/admin/features/edit.vue @@ -0,0 +1,61 @@ + + + diff --git a/resources/js/pages/admin/features/index.vue b/resources/js/pages/admin/features/index.vue new file mode 100644 index 00000000..13dd6bb5 --- /dev/null +++ b/resources/js/pages/admin/features/index.vue @@ -0,0 +1,57 @@ + + + + diff --git a/resources/js/pages/admin/layout.vue b/resources/js/pages/admin/layout.vue index 6f0e5f1c..8b21c6bd 100644 --- a/resources/js/pages/admin/layout.vue +++ b/resources/js/pages/admin/layout.vue @@ -104,43 +104,7 @@ - +
  • @@ -149,7 +113,6 @@
  • - @@ -256,7 +219,11 @@
    - + +
    @@ -266,7 +233,7 @@ {{$t('System version:')}} {{version}} {{$t('Copyright')}} - Laravel Admin + {{name}}       {{$t('The record number:')}}{{icp}} @@ -425,12 +392,14 @@ import SidebarItems from 'common_components/sidebarItems.vue'; import Message from 'admin_components/message.vue'; import Modal from 'admin_components/modal.vue'; + import userMenu from 'pages_components/userMenu.vue'; import { mapState, mapActions, mapMutations, mapGetters } from 'vuex'; export default { components: { "sidebar-items": SidebarItems, "message":Message, "modal":Modal, + "user-menu":userMenu, "language":()=>import(/* webpackChunkName: "common_components/language/language.vue" */ 'common_components/language/language.vue'), }, props: {}, @@ -682,6 +651,7 @@ 'version', 'icp', 'alerts', + 'name', 'language', 'locales', 'theme' @@ -810,6 +780,15 @@ .progress-tool{ height: 20px; } + body{ + padding-top: 0px; + } + .fade-enter-active, .fade-leave-active { + transition: opacity .5s; + } + .fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ { + opacity: 0; + } .skin-item{ float:left; width: 33.33333%; @@ -839,6 +818,11 @@ top: 50px } } + .dropdown-menu .footer{ + padding: 0px; + border-top: none; + margin-top: 0px; + } .main-sidebar{ padding-top:0px; } diff --git a/resources/js/pages/admin/logs/index.vue b/resources/js/pages/admin/logs/index.vue index 9ecca406..a4d3d71e 100644 --- a/resources/js/pages/admin/logs/index.vue +++ b/resources/js/pages/admin/logs/index.vue @@ -135,6 +135,16 @@ }; - diff --git a/resources/js/pages/admin/members/edit.vue b/resources/js/pages/admin/members/edit.vue new file mode 100644 index 00000000..172ba51b --- /dev/null +++ b/resources/js/pages/admin/members/edit.vue @@ -0,0 +1,103 @@ + + + diff --git a/resources/js/pages/admin/members/index.vue b/resources/js/pages/admin/members/index.vue new file mode 100644 index 00000000..8915b9bd --- /dev/null +++ b/resources/js/pages/admin/members/index.vue @@ -0,0 +1,62 @@ + + + + diff --git a/resources/js/pages/admin/sponsors/edit.vue b/resources/js/pages/admin/sponsors/edit.vue new file mode 100644 index 00000000..1227b081 --- /dev/null +++ b/resources/js/pages/admin/sponsors/edit.vue @@ -0,0 +1,114 @@ + + + diff --git a/resources/js/pages/admin/sponsors/index.vue b/resources/js/pages/admin/sponsors/index.vue new file mode 100644 index 00000000..d49aa707 --- /dev/null +++ b/resources/js/pages/admin/sponsors/index.vue @@ -0,0 +1,81 @@ + + + + diff --git a/resources/js/pages/admin/technologys/edit.vue b/resources/js/pages/admin/technologys/edit.vue new file mode 100644 index 00000000..4472a9f3 --- /dev/null +++ b/resources/js/pages/admin/technologys/edit.vue @@ -0,0 +1,68 @@ + + + diff --git a/resources/js/pages/admin/technologys/index.vue b/resources/js/pages/admin/technologys/index.vue new file mode 100644 index 00000000..22dd5699 --- /dev/null +++ b/resources/js/pages/admin/technologys/index.vue @@ -0,0 +1,103 @@ + + + + diff --git a/resources/js/pages/components/userMenu.vue b/resources/js/pages/components/userMenu.vue new file mode 100644 index 00000000..bb04117a --- /dev/null +++ b/resources/js/pages/components/userMenu.vue @@ -0,0 +1,70 @@ + + + + + diff --git a/resources/js/pages/home/index.vue b/resources/js/pages/home/index.vue index 249236bc..525d8505 100644 --- a/resources/js/pages/home/index.vue +++ b/resources/js/pages/home/index.vue @@ -1,31 +1,102 @@ + diff --git a/resources/js/pages/home/layout.vue b/resources/js/pages/home/layout.vue index c701b892..a7c6c544 100644 --- a/resources/js/pages/home/layout.vue +++ b/resources/js/pages/home/layout.vue @@ -1,59 +1,259 @@ diff --git a/resources/js/pages/home/personage/index.vue b/resources/js/pages/home/personage/index.vue new file mode 100644 index 00000000..7a05c8b5 --- /dev/null +++ b/resources/js/pages/home/personage/index.vue @@ -0,0 +1,74 @@ + + + diff --git a/resources/js/pages/home/personage/password.vue b/resources/js/pages/home/personage/password.vue index 2b1aafd4..c3377805 100644 --- a/resources/js/pages/home/personage/password.vue +++ b/resources/js/pages/home/personage/password.vue @@ -45,7 +45,7 @@
    - + diff --git a/resources/js/pages/open/register.vue b/resources/js/pages/open/register.vue index f29bcb9f..4dab3ec0 100644 --- a/resources/js/pages/open/register.vue +++ b/resources/js/pages/open/register.vue @@ -7,7 +7,7 @@
    - + @@ -55,7 +55,7 @@ {{$tp('To log in')}}
    - + @@ -243,7 +243,7 @@ } }; - diff --git a/resources/lang/en.json b/resources/lang/en.json index 0dfa24bb..21a289cf 100644 --- a/resources/lang/en.json +++ b/resources/lang/en.json @@ -45,7 +45,7 @@ "Whoops!": "Whoops!", "Whoops, something went wrong on our servers.": "Whoops, something went wrong on our servers.", "This password reset link will expire in :count minutes.": "This password reset link will expire in :count minutes.", - "Unauthenticated": "Unauthenticated.", + "Unauthenticated.": "Unauthenticated.", "Data does not exist!": "Data does not exist!", "Delete the success!": "Delete the success!", "Delete failed!": "Delete failed!", @@ -90,7 +90,7 @@ "The user name already exists!": "The user name already exists!", "E-mail is already in use!": "E-mail is already in use!", "Please activate it through the user's registered email!": "Please activate it through the user's registered email!", - "Unable to generate the request signature, Route unavailable": "Unable to generate the request signature. Route unavailable.", + "Unable to generate the request signature, Route unavailable": "Unable to generate the request signature, Route unavailable", "Check whether the connection IP Settings or the database user has access to read the schema database!": "Check whether the connection IP Settings or the database user has access to read the schema database!", "Failed to create :attribute database!": "Failed to create :attribute database!", "Menu unchanged!": "Menu unchanged!", diff --git a/resources/lang/zh-CN.json b/resources/lang/zh-CN.json index c9381d71..844e286a 100644 --- a/resources/lang/zh-CN.json +++ b/resources/lang/zh-CN.json @@ -45,7 +45,7 @@ "Whoops!": "哎呦!", "Whoops, something went wrong on our servers.": "哎呀,我们的服务器出了问题。", "This password reset link will expire in :count minutes.": "此密码重置链接将会在:count分钟内失效。", - "Unauthenticated": "身份验证失败。", + "Unauthenticated.": "身份验证失败。", "Data does not exist!": "数据不存在!", "Delete the success!": "删除成功!", "Delete failed!": "删除失败!", diff --git a/resources/lang/zh-TW.json b/resources/lang/zh-TW.json index d6d04d86..663ded53 100644 --- a/resources/lang/zh-TW.json +++ b/resources/lang/zh-TW.json @@ -45,7 +45,7 @@ "Whoops!": "哎呦!", "Whoops, something went wrong on our servers.": "哎呀,我們的服務器出了問題。", "This password reset link will expire in :count minutes.": "這個重設密碼連結將於 :count 分鐘後過期。", - "Unauthenticated": "身份驗證失敗。", + "Unauthenticated.": "身份驗證失敗。", "Data does not exist!": "數據不存在!", "Delete the success!": "删除成功!", "Delete failed!": "删除失敗!", diff --git a/resources/shared_lang/en/front.json b/resources/shared_lang/en/front.json index 080ffdbd..1d6273f1 100644 --- a/resources/shared_lang/en/front.json +++ b/resources/shared_lang/en/front.json @@ -81,15 +81,43 @@ "Role": "Role", "Journal": "Journal", "Menu": "Menu", + "Using documents": "Using documents", + "Use documentation": "Use documentation", + "Document acquisition": "Document acquisition", + "Document get document content": "Document get document content", + "Sign in": "Sign in", + "Register": "Register", + "Forget password page": "Forget password page", + "Home page": "Home page", + "Official website homepage": "Official website homepage", + "Download": "Download", + "Project source code download": "Project source code download", + "Online demo": "Online demo", + "Demo Online": "Demo Online", + "Reward": "Reward", + "Contact us": "Contact us", + "New features": "New features", + "Using technology": "Using technology", + "Using related technology stack": "Using related technology stack", + "Document content": "Document content", + "Document grouping": "Document grouping", "Log file": "Log file", "System log file": "System log file", "Seven cattle cloud token": "Seven cattle cloud token", "Seven cattle cloud upload token to get": "Seven cattle cloud upload token to get", + "Donation management": "Donation management", + "Sponsor": "Sponsor", + "Sponsor Pagination": "Sponsor Pagination", + "Member user": "Member user", + "Donation record": "Donation record", + "Income details": "Income details", "500 page": "500 page", "403 page": "403 page", "404 page": "404 page", "Get single menu details": "Get single menu details", - "Menu details": "Menu details" + "Menu details": "Menu details", + "Interface document": "Interface document", + "Interface Document Page": "Interface Document Page" }, "tables": { "_file_logs": { @@ -328,6 +356,99 @@ "tables": { "fields": [], "maps": [] + }, + "docs": { + "fields": { + "Route": "Route", + "Content": "Content", + "Created At": "Created At", + "Updated At": "Updated At", + "Deleted At": "Deleted At" + }, + "maps": [] + }, + "features": { + "fields": { + "Name": "Name", + "Icon": "Icon", + "Colour": "Colour", + "Describe": "Describe", + "Created At": "Created At", + "Updated At": "Updated At", + "Deleted At": "Deleted At" + }, + "maps": [] + }, + "technologys": { + "fields": { + "Name": "Name", + "Link address": "Link address", + "Logo image": "Logo image", + "Describe": "Describe", + "Created At": "Created At", + "Updated At": "Updated At", + "Deleted At": "Deleted At" + }, + "maps": [] + }, + "bills": { + "fields": { + "Member ID": "Member ID", + "Donation ID": "Donation ID", + "Amount of money": "Amount of money", + "State": "State", + "Created At": "Created At", + "Updated At": "Updated At", + "Deleted At": "Deleted At" + }, + "maps": { + "status": { + "No cash withdrawal": "No cash withdrawal", + "Withdrawn cash": "Withdrawn cash" + } + } + }, + "donations": { + "fields": { + "Member ID": "Member ID", + "Sponsor ID": "Sponsor ID", + "Source": "Source", + "Donation amount": "Donation amount", + "Created At": "Created At", + "Updated At": "Updated At", + "Deleted At": "Deleted At" + }, + "maps": { + "from": { + "WeChat": "WeChat", + "Alipay": "Alipay", + "Transfer accounts": "Transfer accounts" + } + } + }, + "members": { + "fields": { + "User ID": "User ID", + "Recommender ID": "Recommender ID", + "Hierarchy": "Hierarchy", + "Left boundary": "Left boundary", + "Right boundary": "Right boundary", + "Created At": "Created At", + "Updated At": "Updated At", + "Deleted At": "Deleted At" + }, + "maps": [] + }, + "sponsors": { + "fields": { + "Sponsor": "Sponsor", + "Link": "Link", + "Logo Icon": "Logo Icon", + "Created At": "Created At", + "Updated At": "Updated At", + "Deleted At": "Deleted At" + }, + "maps": [] } }, "pages": { @@ -353,7 +474,8 @@ }, "roles": { "name": { - "Superadministrator": "Superadministrator" + "Superadministrator": "Superadministrator", + "Ordinary Member": "Ordinary Member" }, "description": { "Have all operation permissions": "Have all operation permissions" @@ -408,10 +530,34 @@ "index": { "Home page of official website": "Home page of official website", "Backstage home page": "Backstage home page", - "Front desk home page": "Front desk home page" + "Front desk home page": "Front desk home page", + "Simple, intuitive, powerful front-end and back-end development framework, so that the full stack development more quickly, simple": "Simple, intuitive, powerful front-end and back-end development framework, so that the full stack development more quickly, simple", + "LaravelAdmin documents": "LaravelAdmin documents", + "Please register at the WWW main site before viewing the documentation, Do not register users in the demo environment": "Please register at the WWW main site before viewing the documentation, Do not register users in the demo environment", + "Background template download": "Background template download", + "LaravelAdmin covers the basic features": "LaravelAdmin covers the basic features", + "These basic functions make it easy and fast to realize our business": "These basic functions make it easy and fast to realize our business", + "Related technology stack": "Related technology stack" + }, + "contact": { + "Demo environment": "Demo environment", + "User name": "User name", + "Password": "Password", + "Scan code for donation": "Scan code for donation", + "Official QQ Group": "Official QQ Group", + "Zip code": "Zip code", + "Telephone": "Telephone", + "Email address": "Email address", + "Address": "Address", + "Jiaozi No1, Jinjiang District, Chengdu City, Sichuan Province": "Jiaozi No1, Jinjiang District, Chengdu City, Sichuan Province", + "Contact us": "Contact us", + "Open source is not easy thanks for your support": "Open source is not easy thanks for your support", + "Mr Zhang": "Mr Zhang", + "WeChat Same number": "WeChat Same number" }, "Registered user": "Registered user", "Forget your password": "Forget your password", + "Email notification will be preferred if you fill in the mailbox": "Email notification will be preferred if you fill in the mailbox", "To log in": "To log in", "Other login methods": "Other login methods", "Remember to log in": "Remember to log in", @@ -888,10 +1034,15 @@ "Select time": "Select time", "Select Date": "Select Date", "Select month": "Select month", + "Menu switch": "Menu switch", + "Back to top": "Back to top", + "Special thanks": "Special thanks", + "Links": "Links", "Unbundling": "Unbundling", "Download": "Download", "Click Upload": "Click Upload", "Only picture files can be uploaded and no more than {size}": "Only picture files can be uploaded and no more than {size}", + "Please enter the link address": "Please enter the link address", "Confirm to add": "Confirm to add", "Your account has been logged in elsewhere": "Your account has been logged in elsewhere" } \ No newline at end of file diff --git a/resources/shared_lang/zh-CN/front.json b/resources/shared_lang/zh-CN/front.json index dd0008cd..c50511d1 100644 --- a/resources/shared_lang/zh-CN/front.json +++ b/resources/shared_lang/zh-CN/front.json @@ -81,15 +81,43 @@ "Role": "角色", "Journal": "日志", "Menu": "菜单", + "Using documents": "使用文档", + "Use documentation": "使用文档说明", + "Document acquisition": "文档获取", + "Document get document content": "文档获取文档内容", + "Sign in": "登录", + "Register": "注册", + "Forget password page": "忘记密码页面", + "Home page": "首页", + "Official website homepage": "官网主页", + "Download": "下载", + "Project source code download": "项目源码下载", + "Online demo": "在线演示", + "Demo Online": "在线演示demo", + "Reward": "打赏", + "Contact us": "联系我们", + "New features": "新增功能", + "Using technology": "使用技术", + "Using related technology stack": "使用相关技术栈", + "Document content": "文档内容", + "Document grouping": "文档分组", "Log file": "日志文件", "System log file": "系统日志文件", "Seven cattle cloud token": "七牛云TOKEN", "Seven cattle cloud upload token to get": "七牛云上传TOKEN获取", + "Donation management": "捐赠管理", + "Sponsor": "赞助商", + "Sponsor Pagination": "赞助商分页", + "Member user": "会员用户", + "Donation record": "捐赠记录", + "Income details": "收益明细", "500 page": "500页面", "403 page": "403页面", "404 page": "404页面", "Get single menu details": "获取单条菜单详细信息", - "Menu details": "菜单详情" + "Menu details": "菜单详情", + "Interface document": "接口文档", + "Interface Document Page": "接口文档页面" }, "tables": { "_file_logs": { @@ -328,6 +356,99 @@ "tables": { "fields": [], "maps": [] + }, + "docs": { + "fields": { + "Route": "路径", + "Content": "内容", + "Created At": "创建时间", + "Updated At": "修改时间", + "Deleted At": "删除时间" + }, + "maps": [] + }, + "features": { + "fields": { + "Name": "名称", + "Icon": "图标", + "Colour": "颜色", + "Describe": "描述", + "Created At": "创建时间", + "Updated At": "修改时间", + "Deleted At": "删除时间" + }, + "maps": [] + }, + "technologys": { + "fields": { + "Name": "名称", + "Link address": "链接地址", + "Logo image": "LOGO图片", + "Describe": "描述", + "Created At": "创建时间", + "Updated At": "修改时间", + "Deleted At": "删除时间" + }, + "maps": [] + }, + "bills": { + "fields": { + "Member ID": "会员ID", + "Donation ID": "捐赠ID", + "Amount of money": "金额", + "State": "状态", + "Created At": "创建时间", + "Updated At": "修改时间", + "Deleted At": "删除时间" + }, + "maps": { + "status": { + "No cash withdrawal": "未提现", + "Withdrawn cash": "已提现" + } + } + }, + "donations": { + "fields": { + "Member ID": "会员ID", + "Sponsor ID": "赞助商ID", + "Source": "来源", + "Donation amount": "捐赠金额", + "Created At": "创建时间", + "Updated At": "修改时间", + "Deleted At": "删除时间" + }, + "maps": { + "from": { + "WeChat": "微信", + "Alipay": "支付宝", + "Transfer accounts": "转账" + } + } + }, + "members": { + "fields": { + "User ID": "用户ID", + "Recommender ID": "推荐人ID", + "Hierarchy": "层级", + "Left boundary": "左边界", + "Right boundary": "右边界", + "Created At": "创建时间", + "Updated At": "修改时间", + "Deleted At": "删除时间" + }, + "maps": [] + }, + "sponsors": { + "fields": { + "Sponsor": "赞助商", + "Link": "链接", + "Logo Icon": "LOGO图标", + "Created At": "创建时间", + "Updated At": "修改时间", + "Deleted At": "删除时间" + }, + "maps": [] } }, "pages": { @@ -353,7 +474,8 @@ }, "roles": { "name": { - "Superadministrator": "超级管理员" + "Superadministrator": "超级管理员", + "Ordinary Member": "普通会员" }, "description": { "Have all operation permissions": "拥有所有操作权限。" @@ -408,10 +530,34 @@ "index": { "Home page of official website": "官网首页", "Backstage home page": "后台首页", - "Front desk home page": "前台首页" + "Front desk home page": "前台首页", + "Simple, intuitive, powerful front-end and back-end development framework, so that the full stack development more quickly, simple": "简洁、直观、强悍的前端后端开发框架,让全栈开发更迅速、简单。", + "LaravelAdmin documents": "LaravelAdmin文档", + "Please register at the WWW main site before viewing the documentation, Do not register users in the demo environment": "请在www主站注册后再查看文档,不要在演示环境注册用户", + "Background template download": "后台模板下载", + "LaravelAdmin covers the basic features": "LaravelAdmin涵盖基本功能", + "These basic functions make it easy and fast to realize our business": "这些基础功能可以方便快速让实现我们的业务", + "Related technology stack": "涉及相关技术栈" + }, + "contact": { + "Demo environment": "演示环境", + "User name": "用户名", + "Password": "密码", + "Scan code for donation": "扫码捐赠", + "Official QQ Group": "官方QQ群", + "Zip code": "邮编", + "Telephone": "电话", + "Email address": "电子邮箱", + "Address": "地址", + "Jiaozi No1, Jinjiang District, Chengdu City, Sichuan Province": "四川省成都市锦江区娇子一号", + "Contact us": "联系我们", + "Open source is not easy thanks for your support": "开源不易谢谢支持", + "Mr Zhang": "张先生", + "WeChat Same number": "微信同号" }, "Registered user": "注册用户", "Forget your password": "忘记密码", + "Email notification will be preferred if you fill in the mailbox": "填了邮箱将优先使用邮件通知", "To log in": "直接登录", "Other login methods": "其它登录方式", "Remember to log in": "记住登录", @@ -888,10 +1034,15 @@ "Select time": "选择时间", "Select Date": "选择日期", "Select month": "选择月份", + "Menu switch": "菜单切换", + "Back to top": "返回顶部", + "Special thanks": "特别鸣谢:", + "Links": "友情链接:", "Unbundling": "解绑", "Download": "下载", "Click Upload": "点击上传", "Only picture files can be uploaded and no more than {size}": "只能上传图片文件,且不超过{size}", + "Please enter the link address": "请输入链接地址", "Confirm to add": "确认添加", "Your account has been logged in elsewhere": "您的帐号已在其他地方登录!" } \ No newline at end of file diff --git a/resources/shared_lang/zh-TW/front.json b/resources/shared_lang/zh-TW/front.json index 6efde559..089ce70f 100644 --- a/resources/shared_lang/zh-TW/front.json +++ b/resources/shared_lang/zh-TW/front.json @@ -81,15 +81,43 @@ "Role": "角色", "Journal": "日誌", "Menu": "選單", + "Using documents": "使用檔案", + "Use documentation": "使用檔案說明", + "Document acquisition": "檔案獲取", + "Document get document content": "檔案獲取檔案內容", + "Sign in": "登入", + "Register": "注册", + "Forget password page": "忘記密碼頁面", + "Home page": "首頁", + "Official website homepage": "官網主頁", + "Download": "下載", + "Project source code download": "項目源碼下載", + "Online demo": "線上演示", + "Demo Online": "線上演示demo", + "Reward": "打賞", + "Contact us": "聯繫我們", + "New features": "新增功能", + "Using technology": "使用科技", + "Using related technology stack": "使用相關科技棧", + "Document content": "檔案內容", + "Document grouping": "檔案分組", "Log file": "日誌檔", "System log file": "系統日誌檔", "Seven cattle cloud token": "七牛雲TOKEN", "Seven cattle cloud upload token to get": "七牛雲上傳TOKEN獲取", + "Donation management": "捐贈管理", + "Sponsor": "贊助商", + "Sponsor Pagination": "贊助商分頁", + "Member user": "會員用戶", + "Donation record": "捐贈記錄", + "Income details": "收益明細", "500 page": "500頁面", "403 page": "403頁面", "404 page": "404頁面", "Get single menu details": "獲取單條選單詳細資訊", - "Menu details": "選單詳情" + "Menu details": "選單詳情", + "Interface document": "介面檔案", + "Interface Document Page": "介面檔案頁面" }, "tables": { "_file_logs": { @@ -328,6 +356,99 @@ "tables": { "fields": [], "maps": [] + }, + "docs": { + "fields": { + "Route": "路徑", + "Content": "內容", + "Created At": "創建時間", + "Updated At": "修改時間", + "Deleted At": "删除時間" + }, + "maps": [] + }, + "features": { + "fields": { + "Name": "名稱", + "Icon": "圖標", + "Colour": "顏色", + "Describe": "描述", + "Created At": "創建時間", + "Updated At": "修改時間", + "Deleted At": "删除時間" + }, + "maps": [] + }, + "technologys": { + "fields": { + "Name": "名稱", + "Link address": "連結位址", + "Logo image": "LOGO圖片", + "Describe": "描述", + "Created At": "創建時間", + "Updated At": "修改時間", + "Deleted At": "删除時間" + }, + "maps": [] + }, + "bills": { + "fields": { + "Member ID": "會員ID", + "Donation ID": "捐贈ID", + "Amount of money": "金額", + "State": "狀態", + "Created At": "創建時間", + "Updated At": "修改時間", + "Deleted At": "删除時間" + }, + "maps": { + "status": { + "No cash withdrawal": "未提現", + "Withdrawn cash": "已提現" + } + } + }, + "donations": { + "fields": { + "Member ID": "會員ID", + "Sponsor ID": "贊助商ID", + "Source": "來源", + "Donation amount": "捐贈金額", + "Created At": "創建時間", + "Updated At": "修改時間", + "Deleted At": "删除時間" + }, + "maps": { + "from": { + "WeChat": "微信", + "Alipay": "支付寶", + "Transfer accounts": "轉帳" + } + } + }, + "members": { + "fields": { + "User ID": "用戶ID", + "Recommender ID": "推薦人ID", + "Hierarchy": "層級", + "Left boundary": "左邊界", + "Right boundary": "右邊界", + "Created At": "創建時間", + "Updated At": "修改時間", + "Deleted At": "删除時間" + }, + "maps": [] + }, + "sponsors": { + "fields": { + "Sponsor": "贊助商", + "Link": "連結", + "Logo Icon": "LOGO圖標", + "Created At": "創建時間", + "Updated At": "修改時間", + "Deleted At": "删除時間" + }, + "maps": [] } }, "pages": { @@ -353,7 +474,8 @@ }, "roles": { "name": { - "Superadministrator": "超級管理員" + "Superadministrator": "超級管理員", + "Ordinary Member": "普通會員" }, "description": { "Have all operation permissions": "擁有所有操作許可權。" @@ -408,10 +530,34 @@ "index": { "Home page of official website": "官網首頁", "Backstage home page": "後臺首頁", - "Front desk home page": "前臺首頁" + "Front desk home page": "前臺首頁", + "Simple, intuitive, powerful front-end and back-end development framework, so that the full stack development more quickly, simple": "簡潔、直觀、強悍的前端後端開發框架,讓全棧開發更迅速、簡單。", + "LaravelAdmin documents": "LaravelAdmin檔案", + "Please register at the WWW main site before viewing the documentation, Do not register users in the demo environment": "請在www主站注册後再查看檔案,不要在演示環境註冊用戶", + "Background template download": "後臺範本下載", + "LaravelAdmin covers the basic features": "LaravelAdmin涵蓋基本功能", + "These basic functions make it easy and fast to realize our business": "這些基礎功能可以方便快速讓實現我們的業務", + "Related technology stack": "涉及相關科技棧" + }, + "contact": { + "Demo environment": "演示環境", + "User name": "用戶名", + "Password": "密碼", + "Scan code for donation": "掃碼捐贈", + "Official QQ Group": "官方QQ群", + "Zip code": "郵編", + "Telephone": "電話", + "Email address": "電子郵箱", + "Address": "地址", + "Jiaozi No1, Jinjiang District, Chengdu City, Sichuan Province": "四川省成都市錦江區嬌子一號", + "Contact us": "聯繫我們", + "Open source is not easy thanks for your support": "開源不易謝謝支持", + "Mr Zhang": "張先生", + "WeChat Same number": "微信同號" }, "Registered user": "註冊用戶", "Forget your password": "忘記密碼", + "Email notification will be preferred if you fill in the mailbox": "填了郵箱將優先使用郵件通知", "To log in": "直接登入", "Other login methods": "其它登入管道", "Remember to log in": "記住登入", @@ -888,10 +1034,15 @@ "Select time": "選擇時間", "Select Date": "選擇日期", "Select month": "選擇月份", + "Menu switch": "選單切換", + "Back to top": "返回頂部", + "Special thanks": "特別鳴謝:", + "Links": "友情連結:", "Unbundling": "解綁", "Download": "下載", "Click Upload": "點擊上傳", "Only picture files can be uploaded and no more than {size}": "只能上傳圖片檔案,且不超過{size}", + "Please enter the link address": "請輸入連結位址", "Confirm to add": "確認添加", "Your account has been logged in elsewhere": "您的帳號已在其他地方登入!" } \ No newline at end of file diff --git a/resources/views/index.blade.php b/resources/views/index.blade.php index f2c2c397..b6e68187 100644 --- a/resources/views/index.blade.php +++ b/resources/views/index.blade.php @@ -6,6 +6,7 @@ + {{$app_name}} @@ -21,6 +22,9 @@ +
    + {{isset($markdown)?$markdown:''}} +
    diff --git a/routes/route.json b/routes/route.json index 91d92786..126425da 100644 --- a/routes/route.json +++ b/routes/route.json @@ -15,6 +15,11 @@ "auth" ] }, + "_home": { + "prefix": "/home", + "namespace": "\\App\\Http\\Controllers\\Home", + "middleware": [] + }, "admin": { "prefix": "/admin", "namespace": "\\App\\Http\\Controllers\\Admin", @@ -85,6 +90,16 @@ "status": "Display", "_id": 5 }, + { + "id": 132, + "name": "Donation management", + "icons": "fa-share-alt-square", + "description": "Donation management", + "parent_id": 2, + "method": [], + "status": "Display", + "_id": 46 + }, { "id": 7, "name": "Other settings", @@ -93,10 +108,10 @@ "parent_id": 2, "method": [], "status": "Display", - "_id": 38 + "_id": 71 }, { - "id": 88, + "id": 120, "name": "Menu drag", "icons": "fa-mouse-pointer", "description": "Menu drag page data", @@ -107,25 +122,25 @@ ], "group": "admin", "action": "MenuController@tree", - "_id": 47 + "_id": 80 }, { - "id": 89, + "id": 131, "name": "Submit menu location modification", "icons": "fa-edit", "description": "Submit menu location modification", "url": "/admin/menus/update-position", - "parent_id": 88, + "parent_id": 120, "method": [ "post" ], "group": "admin", "action": "MenuController@updatePosition", "env": "local", - "_id": 48 + "_id": 81 }, { - "id": 84, + "id": 116, "name": "Development assistance", "icons": "fa-wrench", "description": "Development assistant function page", @@ -139,58 +154,57 @@ "group": "admin", "action": "DevelopmentsController@index", "env": "local", - "_id": 57 + "_id": 114 }, { - "id": 85, + "id": 117, "name": "Edit page layout save", "icons": "fa-save", "description": "Submit edit page layout save", "url": "/admin/developments/layout", - "parent_id": 84, + "parent_id": 116, "method": [ "post" ], "group": "admin", "action": "DevelopmentsController@postLayout", "env": "local", - "_id": 58 + "_id": 115 }, { - "id": 86, + "id": 118, "name": "Data table query", "icons": "fa-table", "description": "Data table name association query", "url": "/admin/developments/tables", - "parent_id": 84, + "parent_id": 116, "method": [ "get" ], "group": "admin", "action": "DevelopmentsController@tables", "env": "local", - "_id": 59 + "_id": 116 }, { - "id": 87, + "id": 119, "name": "Command execution", "icons": "fa-code", "description": "Submit the command for execution", "url": "/admin/developments/command", - "parent_id": 84, + "parent_id": 116, "method": [ "post" ], "group": "admin", "action": "DevelopmentsController@postCommand", "env": "local", - "_id": 60 + "_id": 117 }, { - "id": 90, + "id": 121, "name": "Log file", "icons": "fa-file", - "description": "System log file", "url": "/admin/file-log/index", "parent_id": 7, "method": [ @@ -200,7 +214,8 @@ "status": "Display", "group": "admin", "action": "FileLogController@index", - "_id": 61 + "as": "系统日志文件", + "_id": 118 }, { "id": 8, @@ -210,7 +225,7 @@ "parent_id": 2, "method": [], "status": "Display", - "_id": 62 + "_id": 119 }, { "id": 57, @@ -225,7 +240,7 @@ "is_page": "Yes", "status": "Display", "group": "admin", - "_id": 63 + "_id": 120 }, { "id": 58, @@ -239,7 +254,7 @@ ], "group": "admin", "action": "PersonageController@postIndex", - "_id": 64 + "_id": 121 }, { "id": 59, @@ -254,7 +269,7 @@ "is_page": "Yes", "status": "Display", "group": "admin", - "_id": 65 + "_id": 122 }, { "id": 60, @@ -268,7 +283,7 @@ ], "group": "admin", "action": "PersonageController@putPassword", - "_id": 66 + "_id": 123 }, { "id": 3, @@ -277,13 +292,9 @@ "description": "Home module", "url": "/home/index", "parent_id": 1, - "method": [ - "get" - ], - "is_page": "Yes", + "method": [], "status": "Display", - "group": "home", - "_id": 67 + "_id": 124 }, { "id": 78, @@ -297,39 +308,94 @@ ], "group": "home", "action": "PersonageController@putPassword", - "_id": 68 + "_id": 125 }, { - "id": 81, + "id": 85, + "name": "Using documents", + "icons": "fa-home", + "description": "Use documentation", + "url": "/home/index", + "parent_id": 3, + "method": [ + "get" + ], + "is_page": "Yes", + "status": "Display", + "group": "_home", + "action": "IndexController@index", + "_id": 126 + }, + { + "id": 102, + "name": "Personal Center", + "icons": "fa-user", + "description": "Personal Center Group", + "parent_id": 3, + "method": [], + "status": "Display", + "_id": 127 + }, + { + "id": 103, "name": "Personal data", "icons": "fa-heart", "description": "Personal data", "url": "/home/personage/index", - "parent_id": 3, + "parent_id": 102, "method": [ "get" ], "is_page": "Yes", "status": "Display", "group": "home", - "_id": 69 + "_id": 128 }, { - "id": 82, + "id": 104, "name": "Submit and edit personal data", "icons": "fa-lock", "description": "Submit to edit to change password", "url": "/home/personage/index", - "parent_id": 81, + "parent_id": 103, "method": [ "post" ], "group": "home", "action": "PersonageController@postIndex", - "_id": 70 + "_id": 129 }, { - "id": 83, + "id": 105, + "name": "Change Password", + "icons": "fa-lock", + "description": "Change Password", + "url": "/home/personage/password", + "parent_id": 102, + "method": [ + "get" + ], + "is_page": "Yes", + "status": "Display", + "group": "home", + "_id": 130 + }, + { + "id": 114, + "name": "Document acquisition", + "icons": "fa-file-code-o", + "description": "Document get document content", + "url": "/home/docs/{any}", + "parent_id": 3, + "method": [ + "get" + ], + "group": "_home", + "action": "IndexController@getDocs", + "_id": 131 + }, + { + "id": 115, "name": "File upload", "icons": "fa-upload", "description": "File upload", @@ -340,7 +406,7 @@ ], "group": "home", "action": "UploadController@postIndex", - "_id": 71 + "_id": 132 }, { "id": 4, @@ -350,10 +416,8 @@ "url": "/open/index", "parent_id": 1, "method": [], - "is_page": "Yes", "status": "Display", - "group": "open", - "_id": 72 + "_id": 133 }, { "id": 61, @@ -366,7 +430,7 @@ ], "group": "open", "action": "IndexController@config", - "_id": 73 + "_id": 134 }, { "id": 62, @@ -382,11 +446,11 @@ "use": [ "web" ], - "_id": 74 + "_id": 135 }, { "id": 63, - "name": "Login page", + "name": "Sign in", "description": "Login page", "url": "/open/login", "parent_id": 4, @@ -394,10 +458,11 @@ "get" ], "is_page": "Yes", + "status": "Display", "group": "open", "action": "LoginController@showLoginForm", "as": "login", - "_id": 75 + "_id": 136 }, { "id": 64, @@ -417,7 +482,7 @@ "middleware": [ "log" ], - "_id": 76 + "_id": 137 }, { "id": 76, @@ -433,7 +498,7 @@ "use": [ "web" ], - "_id": 77 + "_id": 138 }, { "id": 77, @@ -450,7 +515,7 @@ "api", "web" ], - "_id": 78 + "_id": 139 }, { "id": 65, @@ -468,11 +533,11 @@ "web" ], "as": "logout", - "_id": 79 + "_id": 140 }, { "id": 66, - "name": "Registration page", + "name": "Register", "description": "Registration page", "url": "/open/register", "parent_id": 4, @@ -480,9 +545,10 @@ "get" ], "is_page": "Yes", + "status": "Display", "group": "open", "action": "RegisterController@index", - "_id": 80 + "_id": 141 }, { "id": 67, @@ -499,7 +565,7 @@ "api", "web" ], - "_id": 81 + "_id": 142 }, { "id": 68, @@ -516,12 +582,12 @@ "api", "web" ], - "_id": 82 + "_id": 143 }, { "id": 69, - "name": "Forget page", - "description": "Forget page", + "name": "Forget password page", + "description": "Forget password page", "url": "/open/password", "parent_id": 4, "method": [ @@ -530,7 +596,7 @@ "is_page": "Yes", "group": "open", "action": "ForgotPasswordController@index", - "_id": 83 + "_id": 144 }, { "id": 70, @@ -543,7 +609,7 @@ ], "group": "open", "action": "ForgotPasswordController@send", - "_id": 84 + "_id": 145 }, { "id": 71, @@ -556,7 +622,7 @@ ], "group": "open", "action": "ForgotPasswordController@sendSMS", - "_id": 85 + "_id": 146 }, { "id": 72, @@ -568,7 +634,7 @@ "post" ], "group": "open", - "_id": 86 + "_id": 147 }, { "id": 73, @@ -581,7 +647,7 @@ ], "group": "open", "action": "IndexController@user", - "_id": 87 + "_id": 148 }, { "id": 74, @@ -594,10 +660,10 @@ ], "group": "open", "action": "IndexController@menu", - "_id": 88 + "_id": 149 }, { - "id": 92, + "id": 159, "name": "Get single menu details", "icons": "fa-edit", "description": "Menu details", @@ -608,7 +674,7 @@ ], "group": "open", "action": "IndexController@menuInfo", - "_id": 89 + "_id": 150 }, { "id": 75, @@ -625,7 +691,7 @@ "api", "web" ], - "_id": 90 + "_id": 151 }, { "id": 79, @@ -638,10 +704,106 @@ ], "group": "open", "action": "IndexController@clientId", - "_id": 91 + "_id": 152 + }, + { + "id": 81, + "name": "Home page", + "icons": "fa-home", + "description": "Official website homepage", + "url": "/open/index", + "parent_id": 4, + "method": [ + "get" + ], + "is_page": "Yes", + "status": "Display", + "group": "open", + "action": "IndexController@getIndex", + "_id": 153 + }, + { + "id": 82, + "name": "Download", + "icons": "fa-download", + "description": "Project source code download", + "url": "https://gitee.com/laravel-admin/laraveladmin", + "parent_id": 4, + "method": [], + "status": "Display", + "_id": 154 + }, + { + "id": 83, + "name": "Online demo", + "icons": "fa-desktop", + "description": "Demo Online", + "url": "https://demo.laraveladmin.cn", + "parent_id": 4, + "method": [], + "status": "Display", + "_id": 155 + }, + { + "id": 157, + "name": "Sponsor", + "icons": "fa-coffee", + "description": "Sponsor", + "url": "/open/sponsors", + "parent_id": 4, + "method": [ + "get" + ], + "is_page": "Yes", + "group": "open", + "action": "SponsorController@index", + "_id": 156 + }, + { + "id": 158, + "name": "Sponsor Pagination", + "icons": "fa-list", + "description": "Sponsor Pagination", + "url": "/open/sponsors/list", + "parent_id": 157, + "method": [ + "get" + ], + "group": "open", + "action": "SponsorController@list", + "_id": 157 }, { - "id": 91, + "id": 160, + "name": "Interface document", + "icons": "fa-file-word-o", + "description": "Interface Document Page", + "url": "/api-doc", + "parent_id": 4, + "method": [], + "is_page": "Yes", + "status": "Display", + "is_out_link": "Yes", + "_id": 158 + }, + { + "id": 84, + "name": "Reward", + "icons": "fa-phone", + "description": "Contact us", + "url": "/open/contact", + "parent_id": 4, + "method": [ + "get" + ], + "is_page": "Yes", + "status": "Display", + "group": "open", + "action": "IndexController@contact", + "_id": 159 + }, + { + "id": 122, "name": "Seven cattle cloud token", "icons": "fa-cloud-upload", "description": "Seven cattle cloud upload token to get", @@ -652,7 +814,7 @@ ], "group": "open", "action": "QiNiuController@getToken", - "_id": 92 + "_id": 160 } ], "resource": [ @@ -669,6 +831,20 @@ "_id": 6, "end_id": 16 }, + { + "id": 123, + "name": "Member user", + "icons": "fa-graduation-cap", + "description": "Member user", + "url": "/admin/members", + "parent_id": 6, + "is_page": "Yes", + "status": "Display", + "group": "admin", + "item_name": "Member user", + "_id": 14, + "end_id": 130 + }, { "id": 17, "name": "Authority management", @@ -680,7 +856,7 @@ "status": "Display", "group": "admin", "item_name": "Role", - "_id": 14, + "_id": 22, "end_id": 24 }, { @@ -694,7 +870,7 @@ "status": "Display", "group": "admin", "item_name": "Journal", - "_id": 22, + "_id": 30, "end_id": 32 }, { @@ -707,9 +883,49 @@ "is_page": "Yes", "status": "Display", "group": "admin", - "_id": 30, + "_id": 38, "end_id": 40 }, + { + "id": 133, + "name": "Sponsor", + "icons": "fa-trophy", + "description": "Sponsor", + "url": "/admin/sponsors", + "parent_id": 132, + "is_page": "Yes", + "status": "Display", + "group": "admin", + "item_name": "Sponsor", + "_id": 47, + "end_id": 140 + }, + { + "id": 141, + "name": "Donation record", + "icons": "fa-credit-card", + "description": "Donation record", + "url": "/admin/donations", + "parent_id": 132, + "is_page": "Yes", + "status": "Display", + "group": "admin", + "_id": 55, + "end_id": 148 + }, + { + "id": 149, + "name": "Income details", + "icons": "fa-server", + "description": "Income details", + "url": "/admin/bills", + "parent_id": 132, + "is_page": "Yes", + "status": "Display", + "group": "admin", + "_id": 63, + "end_id": 156 + }, { "id": 41, "name": "Menu settings", @@ -721,7 +937,7 @@ "status": "Display", "group": "admin", "item_name": "Menu", - "_id": 39, + "_id": 72, "options": { "only": [ { @@ -770,8 +986,47 @@ "is_page": "Yes", "status": "Display", "group": "admin", - "_id": 49, + "_id": 82, "end_id": 56 + }, + { + "id": 86, + "name": "New features", + "icons": "fa-internet-explorer", + "description": "New features", + "url": "/admin/features", + "parent_id": 7, + "is_page": "Yes", + "status": "Display", + "group": "admin", + "_id": 90, + "end_id": 93 + }, + { + "id": 94, + "name": "Using technology", + "icons": "fa-bullhorn", + "description": "Using related technology stack", + "url": "/admin/technologys", + "parent_id": 7, + "is_page": "Yes", + "status": "Display", + "group": "admin", + "_id": 98, + "end_id": 101 + }, + { + "id": 106, + "name": "Document content", + "icons": "fa-file-text-o", + "description": "Document grouping", + "url": "/admin/docs", + "parent_id": 7, + "is_page": "Yes", + "status": "Display", + "group": "admin", + "_id": 106, + "end_id": 113 } ], "update_position": [] diff --git a/storage/developments/api-doc.json b/storage/developments/api-doc.json index a617b8d7..adfac686 100644 --- a/storage/developments/api-doc.json +++ b/storage/developments/api-doc.json @@ -63,7 +63,7 @@ }, { "name": "where[status]", - "type": 2, + "type": 1, "title": "状态", "description": "", "example": "", @@ -72,7 +72,7 @@ { "name": "where[created_at][0]", "type": 1, - "title": "创建时间开始", + "title": "创建时间", "description": "", "example": "", "validate": "" @@ -80,7 +80,7 @@ { "name": "where[created_at][1]", "type": 1, - "title": "创建时间结束", + "title": "创建时间", "description": "", "example": "", "validate": "" @@ -111,7 +111,7 @@ }, { "name": "where[id]", - "type": 2, + "type": 1, "title": "ID", "description": "", "example": "", @@ -127,7 +127,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "asc", @@ -152,42 +152,6 @@ ], "body_params": [], "responses": [ - { - "name": "list.data.$index", - "description": "用户对象" - }, - { - "name": "list.data.$index.id", - "description": "ID" - }, - { - "name": "list.data.$index.uname", - "description": "用户名" - }, - { - "name": "list.data.$index.name", - "description": "姓名" - }, - { - "name": "list.data.$index.mobile_phone", - "description": "手机号码" - }, - { - "name": "list.data.$index.email", - "description": "电子邮箱" - }, - { - "name": "list.data.$index.status", - "description": "状态" - }, - { - "name": "list.data.$index.created_at", - "description": "创建时间" - }, - { - "name": "list.data.$index.updated_at", - "description": "修改时间" - }, { "name": "options.where.status", "description": "状态" @@ -279,6 +243,42 @@ { "name": "excel.exportFields.id", "description": "ID" + }, + { + "name": "list.data.$index", + "description": "用户对象" + }, + { + "name": "list.data.$index.id", + "description": "ID" + }, + { + "name": "list.data.$index.uname", + "description": "用户名" + }, + { + "name": "list.data.$index.name", + "description": "姓名" + }, + { + "name": "list.data.$index.mobile_phone", + "description": "手机号码" + }, + { + "name": "list.data.$index.email", + "description": "电子邮箱" + }, + { + "name": "list.data.$index.status", + "description": "状态" + }, + { + "name": "list.data.$index.created_at", + "description": "创建时间" + }, + { + "name": "list.data.$index.updated_at", + "description": "修改时间" } ], "route_params": [] @@ -289,7 +289,7 @@ "params": [ { "name": "where[status]", - "type": 2, + "type": 1, "title": "状态", "description": "", "example": "", @@ -298,7 +298,7 @@ { "name": "where[created_at][0]", "type": 1, - "title": "创建时间开始", + "title": "创建时间", "description": "", "example": "", "validate": "" @@ -306,7 +306,7 @@ { "name": "where[created_at][1]", "type": 1, - "title": "创建时间结束", + "title": "创建时间", "description": "", "example": "", "validate": "" @@ -337,7 +337,7 @@ }, { "name": "where[id]", - "type": 2, + "type": 1, "title": "ID", "description": "", "example": "", @@ -353,7 +353,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "asc", @@ -423,7 +423,7 @@ "params": [ { "name": "where[status]", - "type": 2, + "type": 1, "title": "状态", "description": "", "example": "", @@ -432,7 +432,7 @@ { "name": "where[created_at][0]", "type": 1, - "title": "创建时间开始", + "title": "创建时间", "description": "", "example": "", "validate": "" @@ -440,7 +440,7 @@ { "name": "where[created_at][1]", "type": 1, - "title": "创建时间结束", + "title": "创建时间", "description": "", "example": "", "validate": "" @@ -471,7 +471,7 @@ }, { "name": "where[id]", - "type": 2, + "type": 1, "title": "ID", "description": "", "example": "", @@ -487,7 +487,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "asc", @@ -581,10 +581,6 @@ "name": "row.password", "description": "密码" }, - { - "name": "row.name", - "description": "姓名" - }, { "name": "row.email", "description": "电子邮箱" @@ -620,6 +616,10 @@ { "name": "maps.status.2", "description": "停用" + }, + { + "name": "row.name", + "description": "姓名" } ], "route_params": [ @@ -688,7 +688,7 @@ }, { "name": "where[is_tmp]", - "type": 2, + "type": 1, "title": "是否模板", "description": "", "example": "", @@ -712,7 +712,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "asc", @@ -866,7 +866,7 @@ }, { "name": "where[is_tmp]", - "type": 2, + "type": 1, "title": "是否模板", "description": "", "example": "", @@ -890,7 +890,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "asc", @@ -968,7 +968,7 @@ }, { "name": "where[is_tmp]", - "type": 2, + "type": 1, "title": "是否模板", "description": "", "example": "", @@ -992,7 +992,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "asc", @@ -1066,10 +1066,6 @@ "name": "row.id", "description": "ID" }, - { - "name": "row.name", - "description": "名称" - }, { "name": "row.description", "description": "描述" @@ -1349,6 +1345,14 @@ { "name": "mapsRelations.tmp", "description": "" + }, + { + "name": "row.name", + "description": "名称" + }, + { + "name": "maps.menus.group._home", + "description": "_home" } ], "route_params": [ @@ -1409,7 +1413,7 @@ }, { "name": "where[menu_id]", - "type": 2, + "type": 1, "title": "菜单ID", "description": "", "example": "", @@ -1417,7 +1421,7 @@ }, { "name": "where[user_id]", - "type": 2, + "type": 1, "title": "用户ID", "description": "", "example": "", @@ -1434,15 +1438,15 @@ { "name": "where[created_at][0]", "type": 1, - "title": "创建时间开始", + "title": "创建时间", "description": "", - "example": "2021-08-10 00:00:00", + "example": "2021-08-09 00:00:00", "validate": "" }, { "name": "where[created_at][1]", "type": 1, - "title": "创建时间结束", + "title": "创建时间", "description": "", "example": "", "validate": "" @@ -1457,7 +1461,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "desc", @@ -2049,6 +2053,14 @@ { "name": "excel.exportFields.id", "description": "ID" + }, + { + "name": "maps.menu.group._home", + "description": "_home" + }, + { + "name": "maps.menu.parent.group._home", + "description": "_home" } ], "route_params": [] @@ -2059,7 +2071,7 @@ "params": [ { "name": "where[menu_id]", - "type": 2, + "type": 1, "title": "菜单ID", "description": "", "example": "", @@ -2067,7 +2079,7 @@ }, { "name": "where[user_id]", - "type": 2, + "type": 1, "title": "用户ID", "description": "", "example": "", @@ -2084,15 +2096,15 @@ { "name": "where[created_at][0]", "type": 1, - "title": "创建时间开始", + "title": "创建时间", "description": "", - "example": "2021-08-10 00:00:00", + "example": "2021-08-09 00:00:00", "validate": "" }, { "name": "where[created_at][1]", "type": 1, - "title": "创建时间结束", + "title": "创建时间", "description": "", "example": "", "validate": "" @@ -2107,7 +2119,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "desc", @@ -2225,7 +2237,7 @@ "params": [ { "name": "where[menu_id]", - "type": 2, + "type": 1, "title": "菜单ID", "description": "", "example": "", @@ -2233,7 +2245,7 @@ }, { "name": "where[user_id]", - "type": 2, + "type": 1, "title": "用户ID", "description": "", "example": "", @@ -2250,15 +2262,15 @@ { "name": "where[created_at][0]", "type": 1, - "title": "创建时间开始", + "title": "创建时间", "description": "", - "example": "2021-08-10 00:00:00", + "example": "2021-08-09 00:00:00", "validate": "" }, { "name": "where[created_at][1]", "type": 1, - "title": "创建时间结束", + "title": "创建时间", "description": "", "example": "", "validate": "" @@ -2273,7 +2285,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "desc", @@ -2634,6 +2646,10 @@ { "name": "mapsRelations.user", "description": "" + }, + { + "name": "maps.menu.group._home", + "description": "_home" } ], "route_params": [ @@ -2694,7 +2710,7 @@ }, { "name": "where[roles.id]", - "type": 2, + "type": 1, "title": "角色ID", "description": "", "example": "", @@ -2726,7 +2742,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "desc", @@ -2940,7 +2956,7 @@ "params": [ { "name": "where[roles.id]", - "type": 2, + "type": 1, "title": "角色ID", "description": "", "example": "", @@ -2972,7 +2988,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "desc", @@ -3078,7 +3094,7 @@ "params": [ { "name": "where[roles.id]", - "type": 2, + "type": 1, "title": "角色ID", "description": "", "example": "", @@ -3110,7 +3126,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "desc", @@ -3351,7 +3367,7 @@ }, { "name": "where[status]", - "type": 2, + "type": 1, "title": "状态", "description": "", "example": "", @@ -3359,7 +3375,7 @@ }, { "name": "where[is_page]", - "type": 2, + "type": 1, "title": "是否为页面", "description": "", "example": "", @@ -3391,7 +3407,7 @@ }, { "name": "where[resource_id]", - "type": 2, + "type": 1, "title": "所属资源ID", "description": "", "example": "", @@ -3407,7 +3423,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "asc", @@ -3967,6 +3983,14 @@ { "name": "excel.exportFields.id", "description": "ID" + }, + { + "name": "maps.group._home", + "description": "_home" + }, + { + "name": "maps.parent.group._home", + "description": "_home" } ], "route_params": [] @@ -3977,7 +4001,7 @@ "params": [ { "name": "where[status]", - "type": 2, + "type": 1, "title": "状态", "description": "", "example": "", @@ -3985,7 +4009,7 @@ }, { "name": "where[is_page]", - "type": 2, + "type": 1, "title": "是否为页面", "description": "", "example": "", @@ -4017,7 +4041,7 @@ }, { "name": "where[resource_id]", - "type": 2, + "type": 1, "title": "所属资源ID", "description": "", "example": "", @@ -4033,7 +4057,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "asc", @@ -4127,7 +4151,7 @@ "params": [ { "name": "where[status]", - "type": 2, + "type": 1, "title": "状态", "description": "", "example": "", @@ -4135,7 +4159,7 @@ }, { "name": "where[is_page]", - "type": 2, + "type": 1, "title": "是否为页面", "description": "", "example": "", @@ -4167,7 +4191,7 @@ }, { "name": "where[resource_id]", - "type": 2, + "type": 1, "title": "所属资源ID", "description": "", "example": "", @@ -4183,7 +4207,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "asc", @@ -4281,10 +4305,6 @@ "name": "row.id", "description": "ID" }, - { - "name": "row.name", - "description": "名称" - }, { "name": "row.disabled", "description": "功能状态" @@ -5032,6 +5052,22 @@ { "name": "mapsRelations.resources", "description": "" + }, + { + "name": "row.name", + "description": "名称" + }, + { + "name": "maps.group._home", + "description": "_home" + }, + { + "name": "maps.resource.group._home", + "description": "_home" + }, + { + "name": "maps.resources.group._home", + "description": "_home" } ], "route_params": [ @@ -5108,7 +5144,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "desc", @@ -5266,7 +5302,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "desc", @@ -5344,7 +5380,7 @@ }, { "name": "order[id]", - "type": 2, + "type": 1, "title": "ID排序", "description": "asc-升序,desc-降序", "example": "desc", @@ -5426,10 +5462,6 @@ "name": "row.id", "description": "ID" }, - { - "name": "row.name", - "description": "名称" - }, { "name": "row.description", "description": "描述" @@ -5493,6 +5525,10 @@ { "name": "maps.itype.5", "description": "switch" + }, + { + "name": "row.name", + "description": "名称" } ], "route_params": [ @@ -5569,10 +5605,6 @@ "name": "row.uname", "description": "用户名" }, - { - "name": "row.name", - "description": "姓名" - }, { "name": "row.avatar", "description": "头像" @@ -5644,6 +5676,10 @@ { "name": "maps.status.2", "description": "停用" + }, + { + "name": "row.name", + "description": "姓名" } ], "route_params": [] @@ -5753,107 +5789,107 @@ "responses": [ { "name": "logo", - "description": "" + "description": "站点LOGO图片地址" }, { "name": "name", - "description": "" + "description": "应用名称" }, { "name": "name_short", - "description": "" + "description": "应用名称简称" }, { "name": "debug", - "description": "" + "description": "是否为调试模式" }, { "name": "env", - "description": "" + "description": "当前环境状态" }, { "name": "icp", - "description": "" + "description": "icp备案号码" }, { "name": "api_url_model", - "description": "" + "description": "接口请求模式" }, { "name": "app_url", - "description": "" + "description": "应用站点网址" }, { "name": "api_url", - "description": "" + "description": "移动应用接口请求地址源" }, { "name": "web_url", - "description": "" + "description": "网页应用接口请求地址源" }, { "name": "domain", - "description": "" + "description": "登录信息cookie存储domain" }, { "name": "lifetime", - "description": "" + "description": "登录信息过期生命周期" }, { "name": "verify", - "description": "" + "description": "验证码配置" }, { "name": "verify.type", - "description": "" + "description": "验证码类型" }, { "name": "verify.dataUrl", - "description": "" + "description": "验证码获取地址" }, { "name": "verify.data", - "description": "" + "description": "验证配置数据项" }, { "name": "verify.data.client_fail_alert", - "description": "" + "description": "滑块验证配置项(未验证提醒文案)" }, { "name": "verify.data.lang", - "description": "" + "description": "滑块验证配置项(语言)" }, { "name": "verify.data.product", - "description": "" + "description": "滑块验证配置项" }, { "name": "verify.data.http", - "description": "" + "description": "滑块验证配置项" }, { "name": "client_id", - "description": "" + "description": "连接唯一标识(类似cookie的session id机制)" }, { "name": "default_language", - "description": "" + "description": "默认系统语言" }, { "name": "tinymce_key", - "description": "" + "description": "tinymce富文本编辑器配置" }, { "name": "locales", - "description": "" + "description": "可切换系统语言" }, { "name": "locales.$index", - "description": "" + "description": "系统语言选项" }, { "name": "version", - "description": "" + "description": "应用版本号" } ], "route_params": [] @@ -5866,7 +5902,7 @@ "responses": [ { "name": "_token", - "description": "" + "description": "CSRF认证token值" } ], "route_params": [] @@ -5879,27 +5915,27 @@ "responses": [ { "name": "otherLogin", - "description": "" + "description": "三方登录集合" }, { "name": "otherLogin.$index", - "description": "" + "description": "三方登录" }, { "name": "otherLogin.$index.type", - "description": "" + "description": "服务商" }, { "name": "otherLogin.$index.url", - "description": "" + "description": "跳转地址" }, { "name": "otherLogin.$index.class", - "description": "" + "description": "图标样式" }, { "name": "mustVerify", - "description": "" + "description": "是否有验证码" } ], "route_params": [] @@ -5908,9 +5944,87 @@ "id": 64, "_trans_name": "提交登录", "params": [], - "body_params": [], - "responses": [], - "route_params": [] + "body_params": [ + { + "name": "username", + "type": 2, + "title": "用户名", + "description": "用户名", + "example": "demo_admin", + "validate": "必填" + }, + { + "name": "password", + "type": 2, + "title": "密码", + "description": "密码", + "example": "admin123456", + "validate": "必填" + }, + { + "name": "_token", + "type": 2, + "title": "CSRF认证token", + "description": "", + "example": "", + "validate": "必填" + }, + { + "name": "other", + "type": 2, + "title": "三方登录回传标记", + "description": "三方登录回传绑定码", + "example": "", + "validate": "非必填" + }, + { + "name": "verify", + "type": 2, + "title": "极验滑块验证参数", + "description": "极验滑块验证参数", + "example": "", + "validate": "当出现滑块验证时必填" + }, + { + "name": "geetest_seccode", + "type": 2, + "title": "极验滑块验证参数", + "description": "极验滑块验证参数", + "example": "", + "validate": "当出现滑块验证时必填" + }, + { + "name": "geetest_validate", + "type": 2, + "title": "极验滑块验证参数", + "description": "极验滑块验证参数", + "example": "", + "validate": "当出现滑块验证时必填" + } + ], + "responses": [ + { + "name": "title", + "description": "提示" + }, + { + "name": "content", + "description": "提示内容" + }, + { + "name": "lifetime", + "description": "token保存生命周期" + }, + { + "name": "redirect", + "description": "跳转至页面" + }, + { + "name": "token", + "description": "用户token认证信息" + } + ], + "route_params": [] }, { "id": 65, @@ -6006,10 +6120,6 @@ "name": "user.uname", "description": "" }, - { - "name": "user.name", - "description": "" - }, { "name": "user.avatar", "description": "" @@ -6129,6 +6239,10 @@ { "name": "lifetime", "description": "" + }, + { + "name": "user.name", + "description": "" } ], "route_params": [] @@ -6269,10 +6383,6 @@ "name": "row.uname", "description": "用户名" }, - { - "name": "row.name", - "description": "姓名" - }, { "name": "row.avatar", "description": "头像" @@ -6408,6 +6518,18 @@ { "name": "maps.status.2", "description": "停用" + }, + { + "name": "row.name", + "description": "姓名" + }, + { + "name": "features", + "description": "" + }, + { + "name": "technologys", + "description": "" } ], "route_params": [] @@ -6482,10 +6604,6 @@ "name": "row.parameters.$index._value", "description": "" }, - { - "name": "row.name", - "description": "" - }, { "name": "row._id", "description": "" @@ -6573,6 +6691,10 @@ { "name": "history", "description": "" + }, + { + "name": "row.name", + "description": "" } ], "route_params": [] @@ -6588,7 +6710,56 @@ { "id": 86, "_trans_name": "数据表查询", - "params": [], + "params": [ + { + "name": "where[_key]", + "type": 1, + "title": "关键字搜索组默认使用key", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[name]", + "type": 1, + "title": "名称", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], "body_params": [], "responses": [ { @@ -6678,6 +6849,50 @@ { "name": "data.$index.TABLE_COMMENT", "description": "" + }, + { + "name": "options.where.name", + "description": "名称" + }, + { + "name": "options.order.updated_at", + "description": "修改时间" + }, + { + "name": "options.order.id", + "description": "ID" + }, + { + "name": "excel.exportFields.id", + "description": "ID" + }, + { + "name": "excel.exportFields.name", + "description": "名称" + }, + { + "name": "excel.exportFields.icon", + "description": "图标" + }, + { + "name": "excel.exportFields.color", + "description": "颜色" + }, + { + "name": "excel.exportFields.description", + "description": "描述" + }, + { + "name": "excel.exportFields.created_at", + "description": "创建时间" + }, + { + "name": "excel.exportFields.updated_at", + "description": "修改时间" + }, + { + "name": "excel.exportFields.deleted_at", + "description": "删除时间" } ], "route_params": [] @@ -6685,7 +6900,48 @@ { "id": 87, "_trans_name": "命令执行", - "params": [], + "params": [ + { + "name": "where[name]", + "type": 1, + "title": "名称", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], "body_params": [], "responses": [], "route_params": [] @@ -6693,7 +6949,40 @@ { "id": 88, "_trans_name": "菜单拖拽", - "params": [], + "params": [ + { + "name": "where[name]", + "type": 1, + "title": "名称", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "", + "validate": "正整数" + } + ], "body_params": [], "responses": [ { @@ -6759,20 +7048,48 @@ { "name": "row.update_position", "description": "" - } - ], - "route_params": [] - }, - { - "id": 89, - "_trans_name": "提交菜单位置修改", - "params": [], - "body_params": [], - "responses": [], - "route_params": [] - }, - { - "id": 90, + }, + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.$index", + "description": "excel数据项" + }, + { + "name": "data.$index.0", + "description": "名称" + }, + { + "name": "data.$index.1", + "description": "图标" + }, + { + "name": "data.$index.2", + "description": "颜色" + }, + { + "name": "data.$index.3", + "description": "描述" + }, + { + "name": "data.$index.4", + "description": "ID" + } + ], + "route_params": [] + }, + { + "id": 89, + "_trans_name": "提交菜单位置修改", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 90, "_trans_name": "日志文件", "params": [ { @@ -6821,9 +7138,42 @@ { "name": "configUrl.downloadUrl", "description": "" + }, + { + "name": "row", + "description": "" + }, + { + "name": "row.id", + "description": "ID" + }, + { + "name": "row.name", + "description": "名称" + }, + { + "name": "row.icon", + "description": "图标" + }, + { + "name": "row.color", + "description": "颜色" + }, + { + "name": "row.description", + "description": "描述" } ], - "route_params": [] + "route_params": [ + { + "name": "id", + "type": 2, + "title": "ID", + "description": "数据ID", + "example": "0", + "validate": "正整数" + } + ] }, { "id": 91, @@ -6841,6 +7191,3598 @@ } ], "route_params": [] + }, + { + "id": 92, + "_trans_name": "更新新增功能", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 93, + "_trans_name": "删除新增功能", + "params": [], + "body_params": [ + { + "name": "ids[]", + "type": 2, + "title": "ID", + "description": "数据ID;单条数据还可使用'ids'作为key", + "example": "1", + "validate": "正整数" + } + ], + "responses": [], + "route_params": [] + }, + { + "id": 94, + "_trans_name": "使用技术", + "params": [ + { + "name": "where[_key]", + "type": 1, + "title": "关键字搜索组默认使用key", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[name]", + "type": 1, + "title": "名称", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "options.where.name", + "description": "名称" + }, + { + "name": "options.order.updated_at", + "description": "修改时间" + }, + { + "name": "options.order.id", + "description": "ID" + }, + { + "name": "excel.exportFields.id", + "description": "ID" + }, + { + "name": "excel.exportFields.name", + "description": "名称" + }, + { + "name": "excel.exportFields.url", + "description": "链接地址" + }, + { + "name": "excel.exportFields.logo", + "description": "LOGO图片" + }, + { + "name": "excel.exportFields.description", + "description": "描述" + }, + { + "name": "excel.exportFields.created_at", + "description": "创建时间" + }, + { + "name": "excel.exportFields.updated_at", + "description": "修改时间" + }, + { + "name": "excel.exportFields.deleted_at", + "description": "删除时间" + } + ], + "route_params": [] + }, + { + "id": 95, + "_trans_name": "使用技术分页", + "params": [ + { + "name": "where[name]", + "type": 1, + "title": "名称", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 96, + "_trans_name": "导出使用技术", + "params": [ + { + "name": "where[name]", + "type": 1, + "title": "名称", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "", + "validate": "正整数" + } + ], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.$index", + "description": "excel数据项" + }, + { + "name": "data.$index.0", + "description": "名称" + }, + { + "name": "data.$index.1", + "description": "链接地址" + }, + { + "name": "data.$index.2", + "description": "LOGO图片" + }, + { + "name": "data.$index.3", + "description": "描述" + }, + { + "name": "data.$index.4", + "description": "ID" + } + ], + "route_params": [] + }, + { + "id": 97, + "_trans_name": "导入使用技术", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 98, + "_trans_name": "编辑查看使用技术", + "params": [], + "body_params": [], + "responses": [ + { + "name": "row", + "description": "" + }, + { + "name": "row.id", + "description": "ID" + }, + { + "name": "row.name", + "description": "名称" + }, + { + "name": "row.url", + "description": "链接地址" + }, + { + "name": "row.logo", + "description": "LOGO图片" + }, + { + "name": "row.description", + "description": "描述" + } + ], + "route_params": [ + { + "name": "id", + "type": 2, + "title": "ID", + "description": "数据ID", + "example": "0", + "validate": "正整数" + } + ] + }, + { + "id": 99, + "_trans_name": "创建使用技术", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 100, + "_trans_name": "更新使用技术", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 101, + "_trans_name": "删除使用技术", + "params": [], + "body_params": [ + { + "name": "ids[]", + "type": 2, + "title": "ID", + "description": "数据ID;单条数据还可使用'ids'作为key", + "example": "1", + "validate": "正整数" + } + ], + "responses": [], + "route_params": [] + }, + { + "id": 103, + "_trans_name": "个人资料", + "params": [], + "body_params": [], + "responses": [ + { + "name": "row", + "description": "" + }, + { + "name": "row.id", + "description": "ID" + }, + { + "name": "row.province_id", + "description": "" + }, + { + "name": "row.city_id", + "description": "" + }, + { + "name": "row.area_id", + "description": "" + }, + { + "name": "row.uname", + "description": "用户名" + }, + { + "name": "row.name", + "description": "姓名" + }, + { + "name": "row.avatar", + "description": "头像" + }, + { + "name": "row.email", + "description": "电子邮箱" + }, + { + "name": "row.mobile_phone", + "description": "手机号码" + }, + { + "name": "row.status", + "description": "状态" + }, + { + "name": "row.email_verified_at", + "description": "" + }, + { + "name": "row.description", + "description": "备注" + }, + { + "name": "row.created_at", + "description": "创建时间" + }, + { + "name": "row.updated_at", + "description": "修改时间" + }, + { + "name": "row.admin", + "description": "后台用户" + }, + { + "name": "row.admin.id", + "description": "后台用户ID" + }, + { + "name": "row.admin.user_id", + "description": "后台用户用户ID" + }, + { + "name": "row.admin.created_at", + "description": "后台用户创建时间" + }, + { + "name": "row.admin.updated_at", + "description": "后台用户修改时间" + }, + { + "name": "row.admin.roles", + "description": "角色" + }, + { + "name": "row.admin.roles.$index", + "description": "" + }, + { + "name": "row.admin.roles.$index.id", + "description": "角色ID" + }, + { + "name": "row.admin.roles.$index.tmp_id", + "description": "角色模板ID" + }, + { + "name": "row.admin.roles.$index.name", + "description": "角色名称" + }, + { + "name": "row.admin.roles.$index.is_tmp", + "description": "角色是否模板" + }, + { + "name": "row.admin.roles.$index.description", + "description": "角色描述" + }, + { + "name": "row.admin.roles.$index.parent_id", + "description": "角色父级ID" + }, + { + "name": "row.admin.roles.$index.level", + "description": "角色" + }, + { + "name": "row.admin.roles.$index.left_margin", + "description": "角色" + }, + { + "name": "row.admin.roles.$index.right_margin", + "description": "角色" + }, + { + "name": "row.admin.roles.$index.created_at", + "description": "角色创建时间" + }, + { + "name": "row.admin.roles.$index.updated_at", + "description": "角色修改时间" + }, + { + "name": "row.admin.roles.$index.pivot", + "description": "" + }, + { + "name": "row.admin.roles.$index.pivot.admin_id", + "description": "" + }, + { + "name": "row.admin.roles.$index.pivot.role_id", + "description": "" + }, + { + "name": "configUrl.backUrl", + "description": "" + }, + { + "name": "maps.status", + "description": "状态" + }, + { + "name": "maps.status.0", + "description": "注销" + }, + { + "name": "maps.status.1", + "description": "有效" + }, + { + "name": "maps.status.2", + "description": "停用" + } + ], + "route_params": [] + }, + { + "id": 104, + "_trans_name": "提交编辑修改个人资料", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 105, + "_trans_name": "修改密码", + "params": [], + "body_params": [], + "responses": [ + { + "name": "row", + "description": "" + }, + { + "name": "row.id", + "description": "ID" + }, + { + "name": "row.old_password", + "description": "" + }, + { + "name": "row.password", + "description": "密码" + }, + { + "name": "row.password_confirmation", + "description": "" + }, + { + "name": "row.ousers", + "description": "三方登录用户" + }, + { + "name": "row.unbind_ids", + "description": "" + }, + { + "name": "row.email", + "description": "电子邮箱" + }, + { + "name": "row.mobile_phone", + "description": "手机号码" + }, + { + "name": "configUrl.backUrl", + "description": "" + }, + { + "name": "maps.ousers", + "description": "" + }, + { + "name": "maps.ousers.type", + "description": "三方登录用户" + }, + { + "name": "maps.ousers.type.1", + "description": "qq" + }, + { + "name": "maps.ousers.type.2", + "description": "weixin" + }, + { + "name": "maps.ousers.type.3", + "description": "weibo" + }, + { + "name": "maps.ousers.type.4", + "description": "weixinweb" + }, + { + "name": "maps.ousers.type.5", + "description": "official" + }, + { + "name": "maps.ousers.type_show", + "description": "三方登录用户" + } + ], + "route_params": [] + }, + { + "id": 106, + "_trans_name": "文档内容", + "params": [ + { + "name": "where[_key]", + "type": 1, + "title": "关键字搜索组默认使用key", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[name|description]", + "type": 1, + "title": "路径或内容", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "list.data.$index", + "description": "对象" + }, + { + "name": "list.data.$index.id", + "description": "ID" + }, + { + "name": "list.data.$index.name", + "description": "路径" + }, + { + "name": "list.data.$index.description", + "description": "内容" + }, + { + "name": "list.data.$index.created_at", + "description": "创建时间" + }, + { + "name": "list.data.$index.updated_at", + "description": "修改时间" + }, + { + "name": "options.where.name|description", + "description": "路径或内容" + }, + { + "name": "options.order.updated_at", + "description": "修改时间" + }, + { + "name": "options.order.id", + "description": "ID" + }, + { + "name": "excel.exportFields.id", + "description": "ID" + }, + { + "name": "excel.exportFields.name", + "description": "路径" + }, + { + "name": "excel.exportFields.description", + "description": "内容" + }, + { + "name": "excel.exportFields.created_at", + "description": "创建时间" + }, + { + "name": "excel.exportFields.updated_at", + "description": "修改时间" + }, + { + "name": "excel.exportFields.deleted_at", + "description": "删除时间" + } + ], + "route_params": [] + }, + { + "id": 107, + "_trans_name": "文档内容分页", + "params": [ + { + "name": "where[name|description]", + "type": 1, + "title": "路径或内容", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.id", + "description": "ID" + }, + { + "name": "data.$index.name", + "description": "路径" + }, + { + "name": "data.$index.description", + "description": "内容" + }, + { + "name": "data.$index.created_at", + "description": "创建时间" + }, + { + "name": "data.$index.updated_at", + "description": "修改时间" + } + ], + "route_params": [] + }, + { + "id": 108, + "_trans_name": "导出文档内容", + "params": [ + { + "name": "where[name|description]", + "type": 1, + "title": "路径或内容", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "", + "validate": "正整数" + } + ], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.$index", + "description": "excel数据项" + }, + { + "name": "data.$index.0", + "description": "路径" + }, + { + "name": "data.$index.1", + "description": "内容" + }, + { + "name": "data.$index.2", + "description": "ID" + } + ], + "route_params": [] + }, + { + "id": 109, + "_trans_name": "导入文档内容", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 110, + "_trans_name": "编辑查看文档内容", + "params": [], + "body_params": [], + "responses": [ + { + "name": "row", + "description": "" + }, + { + "name": "row.id", + "description": "ID" + }, + { + "name": "row.name", + "description": "路径" + }, + { + "name": "row.description", + "description": "内容" + } + ], + "route_params": [ + { + "name": "id", + "type": 2, + "title": "ID", + "description": "数据ID", + "example": "0", + "validate": "正整数" + } + ] + }, + { + "id": 111, + "_trans_name": "创建文档内容", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 112, + "_trans_name": "更新文档内容", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 113, + "_trans_name": "删除文档内容", + "params": [], + "body_params": [ + { + "name": "ids[]", + "type": 2, + "title": "ID", + "description": "数据ID;单条数据还可使用'ids'作为key", + "example": "1", + "validate": "正整数" + } + ], + "responses": [], + "route_params": [] + }, + { + "id": 114, + "_trans_name": "文档获取", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 115, + "_trans_name": "文件上传", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 116, + "_trans_name": "开发辅助", + "params": [], + "body_params": [], + "responses": [ + { + "name": "row", + "description": "" + }, + { + "name": "row.command", + "description": "" + }, + { + "name": "row.parameters", + "description": "" + }, + { + "name": "row.parameters.$index", + "description": "" + }, + { + "name": "row.parameters.$index.key", + "description": "" + }, + { + "name": "row.parameters.$index.value", + "description": "" + }, + { + "name": "row.parameters.$index.rules", + "description": "" + }, + { + "name": "row.parameters.$index.title", + "description": "" + }, + { + "name": "row.parameters.$index.name", + "description": "" + }, + { + "name": "row.parameters.$index.type", + "description": "" + }, + { + "name": "row.parameters.$index.placeholderValue", + "description": "" + }, + { + "name": "row.parameters.$index._value", + "description": "" + }, + { + "name": "row.name", + "description": "" + }, + { + "name": "row._id", + "description": "" + }, + { + "name": "row._exec", + "description": "" + }, + { + "name": "commands", + "description": "" + }, + { + "name": "commands.$index", + "description": "" + }, + { + "name": "commands.$index.command", + "description": "" + }, + { + "name": "commands.$index.parameters", + "description": "" + }, + { + "name": "commands.$index.parameters.$index", + "description": "" + }, + { + "name": "commands.$index.parameters.$index.key", + "description": "" + }, + { + "name": "commands.$index.parameters.$index.value", + "description": "" + }, + { + "name": "commands.$index.parameters.$index.rules", + "description": "" + }, + { + "name": "commands.$index.parameters.$index.title", + "description": "" + }, + { + "name": "commands.$index.parameters.$index.name", + "description": "" + }, + { + "name": "commands.$index.parameters.$index.type", + "description": "" + }, + { + "name": "commands.$index.parameters.$index.placeholderValue", + "description": "" + }, + { + "name": "commands.$index.parameters.$index._value", + "description": "" + }, + { + "name": "commands.$index.name", + "description": "" + }, + { + "name": "commands.$index._id", + "description": "" + }, + { + "name": "commands.$index._exec", + "description": "" + }, + { + "name": "maps.database", + "description": "" + }, + { + "name": "maps.database.mysql", + "description": "" + }, + { + "name": "index", + "description": "" + }, + { + "name": "history", + "description": "" + } + ], + "route_params": [] + }, + { + "id": 117, + "_trans_name": "编辑页面布局保存", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 118, + "_trans_name": "数据表查询", + "params": [], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "" + }, + { + "name": "data.$index.TABLE_CATALOG", + "description": "" + }, + { + "name": "data.$index.TABLE_SCHEMA", + "description": "" + }, + { + "name": "data.$index.TABLE_NAME", + "description": "" + }, + { + "name": "data.$index.TABLE_TYPE", + "description": "" + }, + { + "name": "data.$index.ENGINE", + "description": "" + }, + { + "name": "data.$index.VERSION", + "description": "" + }, + { + "name": "data.$index.ROW_FORMAT", + "description": "" + }, + { + "name": "data.$index.TABLE_ROWS", + "description": "" + }, + { + "name": "data.$index.AVG_ROW_LENGTH", + "description": "" + }, + { + "name": "data.$index.DATA_LENGTH", + "description": "" + }, + { + "name": "data.$index.MAX_DATA_LENGTH", + "description": "" + }, + { + "name": "data.$index.INDEX_LENGTH", + "description": "" + }, + { + "name": "data.$index.DATA_FREE", + "description": "" + }, + { + "name": "data.$index.AUTO_INCREMENT", + "description": "" + }, + { + "name": "data.$index.CREATE_TIME", + "description": "" + }, + { + "name": "data.$index.UPDATE_TIME", + "description": "" + }, + { + "name": "data.$index.CHECK_TIME", + "description": "" + }, + { + "name": "data.$index.TABLE_COLLATION", + "description": "" + }, + { + "name": "data.$index.CHECKSUM", + "description": "" + }, + { + "name": "data.$index.CREATE_OPTIONS", + "description": "" + }, + { + "name": "data.$index.TABLE_COMMENT", + "description": "" + } + ], + "route_params": [] + }, + { + "id": 119, + "_trans_name": "命令执行", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 120, + "_trans_name": "菜单拖拽", + "params": [], + "body_params": [], + "responses": [ + { + "name": "tree", + "description": "" + }, + { + "name": "tree.$index", + "description": "" + }, + { + "name": "tree.$index.id", + "description": "" + }, + { + "name": "tree.$index.name", + "description": "" + }, + { + "name": "tree.$index.icons", + "description": "" + }, + { + "name": "tree.$index.parent_id", + "description": "" + }, + { + "name": "tree.$index.level", + "description": "" + }, + { + "name": "tree.$index.left_margin", + "description": "" + }, + { + "name": "tree.$index.right_margin", + "description": "" + }, + { + "name": "tree.$index.item_name", + "description": "" + }, + { + "name": "tree.$index.resource_id", + "description": "" + }, + { + "name": "tree.$index.parent", + "description": "" + }, + { + "name": "tree.$index._parent_id", + "description": "" + }, + { + "name": "tree.$index._level", + "description": "" + }, + { + "name": "row", + "description": "" + }, + { + "name": "row.update_position", + "description": "" + } + ], + "route_params": [] + }, + { + "id": 121, + "_trans_name": "日志文件", + "params": [ + { + "name": "where[file]", + "type": 1, + "title": "未命名", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "未命名排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "options.where.file", + "description": "" + }, + { + "name": "options.order.updated_at", + "description": "" + }, + { + "name": "configUrl.downloadUrl", + "description": "" + } + ], + "route_params": [] + }, + { + "id": 122, + "_trans_name": "七牛云TOKEN", + "params": [], + "body_params": [], + "responses": [ + { + "name": "token", + "description": "" + }, + { + "name": "domain", + "description": "" + } + ], + "route_params": [] + }, + { + "id": 123, + "_trans_name": "会员用户", + "params": [ + { + "name": "where[_key]", + "type": 1, + "title": "关键字搜索组默认使用key", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[user.name|user.uname|user.mobile_phone]", + "type": 1, + "title": "用户姓名或用户用户名或用户手机号码", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[left_margin]", + "type": 1, + "title": "左边界排序", + "description": "asc-升序,desc-降序", + "example": "asc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "list.data.$index", + "description": "对象" + }, + { + "name": "list.data.$index.id", + "description": "ID" + }, + { + "name": "list.data.$index.user_id", + "description": "用户ID" + }, + { + "name": "list.data.$index.parent_id", + "description": "推荐人ID" + }, + { + "name": "list.data.$index.level", + "description": "层级" + }, + { + "name": "list.data.$index.left_margin", + "description": "左边界" + }, + { + "name": "list.data.$index.right_margin", + "description": "右边界" + }, + { + "name": "list.data.$index.created_at", + "description": "创建时间" + }, + { + "name": "list.data.$index.updated_at", + "description": "修改时间" + }, + { + "name": "list.data.$index.user", + "description": "用户对象" + }, + { + "name": "list.data.$index.user.id", + "description": "用户ID" + }, + { + "name": "list.data.$index.user.name", + "description": "用户姓名" + }, + { + "name": "list.data.$index.user.uname", + "description": "用户用户名" + }, + { + "name": "list.data.$index.parent", + "description": "" + }, + { + "name": "options.where.user.name|user.uname|user.mobile_phone", + "description": "用户姓名或用户用户名或用户手机号码" + }, + { + "name": "options.order.left_margin", + "description": "左边界" + }, + { + "name": "maps.user", + "description": "" + }, + { + "name": "maps.user.status", + "description": "用户状态" + }, + { + "name": "maps.user.status.0", + "description": "注销" + }, + { + "name": "maps.user.status.1", + "description": "有效" + }, + { + "name": "maps.user.status.2", + "description": "停用" + }, + { + "name": "maps.parent", + "description": "" + }, + { + "name": "maps.parent.user", + "description": "" + }, + { + "name": "maps.parent.user.status", + "description": "用户状态" + }, + { + "name": "maps.parent.user.status.0", + "description": "注销" + }, + { + "name": "maps.parent.user.status.1", + "description": "有效" + }, + { + "name": "maps.parent.user.status.2", + "description": "停用" + }, + { + "name": "mapsRelations.user", + "description": "" + }, + { + "name": "mapsRelations.parent", + "description": "" + }, + { + "name": "excel.exportFields.user.uname", + "description": "用户用户名" + }, + { + "name": "excel.exportFields.user.name", + "description": "用户姓名" + }, + { + "name": "excel.exportFields.parent.user.uname", + "description": "用户推荐人用户名" + }, + { + "name": "excel.exportFields.parent.user.name", + "description": "用户推荐人" + }, + { + "name": "excel.exportFields.user_id", + "description": "用户ID" + }, + { + "name": "excel.exportFields.parent_id", + "description": "父级ID" + }, + { + "name": "excel.exportFields.id", + "description": "ID" + } + ], + "route_params": [] + }, + { + "id": 124, + "_trans_name": "会员用户分页", + "params": [ + { + "name": "where[user.name|user.uname|user.mobile_phone]", + "type": 1, + "title": "用户姓名或用户用户名或用户手机号码", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[left_margin]", + "type": 1, + "title": "左边界排序", + "description": "asc-升序,desc-降序", + "example": "asc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.id", + "description": "ID" + }, + { + "name": "data.$index.user_id", + "description": "用户ID" + }, + { + "name": "data.$index.parent_id", + "description": "推荐人ID" + }, + { + "name": "data.$index.level", + "description": "层级" + }, + { + "name": "data.$index.left_margin", + "description": "左边界" + }, + { + "name": "data.$index.right_margin", + "description": "右边界" + }, + { + "name": "data.$index.created_at", + "description": "创建时间" + }, + { + "name": "data.$index.updated_at", + "description": "修改时间" + }, + { + "name": "data.$index.user", + "description": "用户对象" + }, + { + "name": "data.$index.user.id", + "description": "用户ID" + }, + { + "name": "data.$index.user.name", + "description": "用户姓名" + }, + { + "name": "data.$index.user.uname", + "description": "用户用户名" + }, + { + "name": "data.$index.parent", + "description": "" + } + ], + "route_params": [] + }, + { + "id": 125, + "_trans_name": "导出会员用户", + "params": [ + { + "name": "where[user.name|user.uname|user.mobile_phone]", + "type": 1, + "title": "用户姓名或用户用户名或用户手机号码", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[left_margin]", + "type": 1, + "title": "左边界排序", + "description": "asc-升序,desc-降序", + "example": "asc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "", + "validate": "正整数" + } + ], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.$index", + "description": "excel数据项" + }, + { + "name": "data.$index.0", + "description": "用户名" + }, + { + "name": "data.$index.1", + "description": "姓名" + }, + { + "name": "data.$index.2", + "description": "推荐人用户名" + }, + { + "name": "data.$index.3", + "description": "推荐人" + }, + { + "name": "data.$index.4", + "description": "用户ID" + }, + { + "name": "data.$index.5", + "description": "父级ID" + }, + { + "name": "data.$index.6", + "description": "ID" + } + ], + "route_params": [] + }, + { + "id": 126, + "_trans_name": "导入会员用户", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 127, + "_trans_name": "编辑查看会员用户", + "params": [], + "body_params": [], + "responses": [ + { + "name": "row", + "description": "" + }, + { + "name": "row.id", + "description": "ID" + }, + { + "name": "row.user_id", + "description": "用户ID" + }, + { + "name": "row.parent_id", + "description": "推荐人ID" + }, + { + "name": "maps.optional_parents", + "description": "" + }, + { + "name": "maps.user_id", + "description": "用户ID" + }, + { + "name": "no_root", + "description": "" + } + ], + "route_params": [ + { + "name": "id", + "type": 2, + "title": "ID", + "description": "数据ID", + "example": "0", + "validate": "正整数" + } + ] + }, + { + "id": 128, + "_trans_name": "创建会员用户", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 129, + "_trans_name": "更新会员用户", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 130, + "_trans_name": "删除会员用户", + "params": [], + "body_params": [ + { + "name": "ids[]", + "type": 2, + "title": "ID", + "description": "数据ID;单条数据还可使用'ids'作为key", + "example": "1", + "validate": "正整数" + } + ], + "responses": [], + "route_params": [] + }, + { + "id": 131, + "_trans_name": "提交菜单位置修改", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 133, + "_trans_name": "赞助商", + "params": [ + { + "name": "where[_key]", + "type": 1, + "title": "关键字搜索组默认使用key", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[name]", + "type": 1, + "title": "赞助商", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "list.data.$index", + "description": "对象" + }, + { + "name": "list.data.$index.id", + "description": "ID" + }, + { + "name": "list.data.$index.name", + "description": "赞助商" + }, + { + "name": "list.data.$index.url", + "description": "链接" + }, + { + "name": "list.data.$index.logo", + "description": "LOGO图标" + }, + { + "name": "list.data.$index.created_at", + "description": "创建时间" + }, + { + "name": "list.data.$index.updated_at", + "description": "修改时间" + }, + { + "name": "options.where.name", + "description": "赞助商" + }, + { + "name": "options.order.updated_at", + "description": "修改时间" + }, + { + "name": "options.order.id", + "description": "ID" + }, + { + "name": "excel.exportFields.id", + "description": "ID" + }, + { + "name": "excel.exportFields.name", + "description": "赞助商" + }, + { + "name": "excel.exportFields.url", + "description": "链接" + }, + { + "name": "excel.exportFields.logo", + "description": "LOGO图标" + }, + { + "name": "excel.exportFields.created_at", + "description": "创建时间" + }, + { + "name": "excel.exportFields.updated_at", + "description": "修改时间" + }, + { + "name": "excel.exportFields.deleted_at", + "description": "删除时间" + } + ], + "route_params": [] + }, + { + "id": 134, + "_trans_name": "赞助商分页", + "params": [ + { + "name": "where[name]", + "type": 1, + "title": "赞助商", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.id", + "description": "ID" + }, + { + "name": "data.$index.name", + "description": "赞助商" + }, + { + "name": "data.$index.url", + "description": "链接" + }, + { + "name": "data.$index.logo", + "description": "LOGO图标" + }, + { + "name": "data.$index.created_at", + "description": "创建时间" + }, + { + "name": "data.$index.updated_at", + "description": "修改时间" + } + ], + "route_params": [] + }, + { + "id": 135, + "_trans_name": "导出赞助商", + "params": [ + { + "name": "where[name]", + "type": 1, + "title": "赞助商", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "", + "validate": "正整数" + } + ], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.$index", + "description": "excel数据项" + }, + { + "name": "data.$index.0", + "description": "赞助商" + }, + { + "name": "data.$index.1", + "description": "链接" + }, + { + "name": "data.$index.2", + "description": "LOGO图标" + }, + { + "name": "data.$index.3", + "description": "ID" + } + ], + "route_params": [] + }, + { + "id": 136, + "_trans_name": "导入赞助商", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 137, + "_trans_name": "编辑查看赞助商", + "params": [], + "body_params": [], + "responses": [ + { + "name": "row", + "description": "" + }, + { + "name": "row.id", + "description": "ID" + }, + { + "name": "row.name", + "description": "赞助商" + }, + { + "name": "row.url", + "description": "链接" + }, + { + "name": "row.logo", + "description": "LOGO图标" + } + ], + "route_params": [ + { + "name": "id", + "type": 2, + "title": "ID", + "description": "数据ID", + "example": "0", + "validate": "正整数" + } + ] + }, + { + "id": 138, + "_trans_name": "创建赞助商", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 139, + "_trans_name": "更新赞助商", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 140, + "_trans_name": "删除赞助商", + "params": [], + "body_params": [ + { + "name": "ids[]", + "type": 2, + "title": "ID", + "description": "数据ID;单条数据还可使用'ids'作为key", + "example": "1", + "validate": "正整数" + } + ], + "responses": [], + "route_params": [] + }, + { + "id": 141, + "_trans_name": "捐赠记录", + "params": [ + { + "name": "where[_key]", + "type": 1, + "title": "关键字搜索组默认使用key", + "description": "", + "example": "member.user.name", + "validate": "" + }, + { + "name": "where[from]", + "type": 1, + "title": "来源", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[sponsor.name]", + "type": 1, + "title": "赞助商", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[member.user.name]", + "type": 1, + "title": "用户姓名", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "list.data.$index", + "description": "对象" + }, + { + "name": "list.data.$index.id", + "description": "ID" + }, + { + "name": "list.data.$index.member_id", + "description": "会员ID" + }, + { + "name": "list.data.$index.sponsor_id", + "description": "赞助商ID" + }, + { + "name": "list.data.$index.from", + "description": "来源" + }, + { + "name": "list.data.$index.amount", + "description": "捐赠金额" + }, + { + "name": "list.data.$index.created_at", + "description": "创建时间" + }, + { + "name": "list.data.$index.updated_at", + "description": "修改时间" + }, + { + "name": "list.data.$index.bills_count", + "description": "" + }, + { + "name": "list.data.$index.member", + "description": "对象" + }, + { + "name": "list.data.$index.member.id", + "description": "ID" + }, + { + "name": "list.data.$index.member.user_id", + "description": "用户ID" + }, + { + "name": "list.data.$index.member.user", + "description": "用户对象" + }, + { + "name": "list.data.$index.member.user.id", + "description": "用户ID" + }, + { + "name": "list.data.$index.member.user.name", + "description": "用户姓名" + }, + { + "name": "list.data.$index.sponsor", + "description": "对象" + }, + { + "name": "list.data.$index.sponsor.id", + "description": "ID" + }, + { + "name": "list.data.$index.sponsor.name", + "description": "赞助商" + }, + { + "name": "options.where.from", + "description": "来源" + }, + { + "name": "options.where.sponsor.name", + "description": "赞助商" + }, + { + "name": "options.where.member.user.name", + "description": "用户姓名" + }, + { + "name": "options.order.updated_at", + "description": "修改时间" + }, + { + "name": "options.order.id", + "description": "ID" + }, + { + "name": "maps.from", + "description": "来源" + }, + { + "name": "maps.from.1", + "description": "微信" + }, + { + "name": "maps.from.2", + "description": "支付宝" + }, + { + "name": "maps.from.3", + "description": "转账" + }, + { + "name": "maps.member", + "description": "" + }, + { + "name": "maps.member.user", + "description": "" + }, + { + "name": "maps.member.user.status", + "description": "用户状态" + }, + { + "name": "maps.member.user.status.0", + "description": "注销" + }, + { + "name": "maps.member.user.status.1", + "description": "有效" + }, + { + "name": "maps.member.user.status.2", + "description": "停用" + }, + { + "name": "maps.sponsor", + "description": "" + }, + { + "name": "mapsRelations.member", + "description": "" + }, + { + "name": "mapsRelations.sponsor", + "description": "" + }, + { + "name": "keywordsMap.sponsor.name", + "description": "" + }, + { + "name": "keywordsMap.member.user.name", + "description": "" + }, + { + "name": "excel.exportFields.id", + "description": "ID" + }, + { + "name": "excel.exportFields.member_id", + "description": "会员ID" + }, + { + "name": "excel.exportFields.sponsor_id", + "description": "赞助商ID" + }, + { + "name": "excel.exportFields.from", + "description": "来源" + }, + { + "name": "excel.exportFields.amount", + "description": "捐赠金额" + }, + { + "name": "excel.exportFields.created_at", + "description": "创建时间" + }, + { + "name": "excel.exportFields.updated_at", + "description": "修改时间" + }, + { + "name": "excel.exportFields.deleted_at", + "description": "删除时间" + } + ], + "route_params": [] + }, + { + "id": 142, + "_trans_name": "捐赠记录分页", + "params": [ + { + "name": "where[from]", + "type": 1, + "title": "来源", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[sponsor.name]", + "type": 1, + "title": "赞助商", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[member.user.name]", + "type": 1, + "title": "用户姓名", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.id", + "description": "ID" + }, + { + "name": "data.$index.member_id", + "description": "会员ID" + }, + { + "name": "data.$index.sponsor_id", + "description": "赞助商ID" + }, + { + "name": "data.$index.from", + "description": "来源" + }, + { + "name": "data.$index.amount", + "description": "捐赠金额" + }, + { + "name": "data.$index.created_at", + "description": "创建时间" + }, + { + "name": "data.$index.updated_at", + "description": "修改时间" + }, + { + "name": "data.$index.bills_count", + "description": "" + }, + { + "name": "data.$index.member", + "description": "对象" + }, + { + "name": "data.$index.member.id", + "description": "ID" + }, + { + "name": "data.$index.member.user_id", + "description": "用户ID" + }, + { + "name": "data.$index.member.user", + "description": "用户对象" + }, + { + "name": "data.$index.member.user.id", + "description": "用户ID" + }, + { + "name": "data.$index.member.user.name", + "description": "用户姓名" + }, + { + "name": "data.$index.sponsor", + "description": "对象" + }, + { + "name": "data.$index.sponsor.id", + "description": "ID" + }, + { + "name": "data.$index.sponsor.name", + "description": "赞助商" + } + ], + "route_params": [] + }, + { + "id": 143, + "_trans_name": "导出捐赠记录", + "params": [ + { + "name": "where[from]", + "type": 1, + "title": "来源", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[sponsor.name]", + "type": 1, + "title": "赞助商", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[member.user.name]", + "type": 1, + "title": "用户姓名", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "", + "validate": "正整数" + } + ], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.$index", + "description": "excel数据项" + }, + { + "name": "data.$index.0", + "description": "会员ID" + }, + { + "name": "data.$index.1", + "description": "赞助商ID" + }, + { + "name": "data.$index.2", + "description": "来源" + }, + { + "name": "data.$index.3", + "description": "捐赠金额" + }, + { + "name": "data.$index.4", + "description": "ID" + } + ], + "route_params": [] + }, + { + "id": 144, + "_trans_name": "导入捐赠记录", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 145, + "_trans_name": "编辑查看捐赠记录", + "params": [], + "body_params": [], + "responses": [ + { + "name": "row", + "description": "" + }, + { + "name": "row.id", + "description": "ID" + }, + { + "name": "row.member_id", + "description": "会员ID" + }, + { + "name": "row.sponsor_id", + "description": "赞助商ID" + }, + { + "name": "row.from", + "description": "来源" + }, + { + "name": "row.amount", + "description": "捐赠金额" + }, + { + "name": "row.member", + "description": "" + }, + { + "name": "row.member.id", + "description": "ID" + }, + { + "name": "row.member.user_id", + "description": "用户ID" + }, + { + "name": "row.member.user", + "description": "用户" + }, + { + "name": "row.member.user.id", + "description": "用户ID" + }, + { + "name": "row.member.user.uname", + "description": "用户用户名" + }, + { + "name": "row.member.user.name", + "description": "用户姓名" + }, + { + "name": "row.sponsor", + "description": "" + }, + { + "name": "row.sponsor.id", + "description": "ID" + }, + { + "name": "row.sponsor.name", + "description": "赞助商" + }, + { + "name": "maps.from", + "description": "来源" + }, + { + "name": "maps.from.1", + "description": "微信" + }, + { + "name": "maps.from.2", + "description": "支付宝" + }, + { + "name": "maps.from.3", + "description": "转账" + }, + { + "name": "maps.member", + "description": "" + }, + { + "name": "maps.member.user", + "description": "" + }, + { + "name": "maps.member.user.status", + "description": "用户状态" + }, + { + "name": "maps.member.user.status.0", + "description": "注销" + }, + { + "name": "maps.member.user.status.1", + "description": "有效" + }, + { + "name": "maps.member.user.status.2", + "description": "停用" + }, + { + "name": "maps.sponsor", + "description": "" + }, + { + "name": "maps.member_id", + "description": "会员ID" + }, + { + "name": "maps.sponsor_id", + "description": "赞助商ID" + }, + { + "name": "mapsRelations.member", + "description": "" + }, + { + "name": "mapsRelations.sponsor", + "description": "" + } + ], + "route_params": [ + { + "name": "id", + "type": 2, + "title": "ID", + "description": "数据ID", + "example": "0", + "validate": "正整数" + } + ] + }, + { + "id": 146, + "_trans_name": "创建捐赠记录", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 147, + "_trans_name": "更新捐赠记录", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 148, + "_trans_name": "删除捐赠记录", + "params": [], + "body_params": [ + { + "name": "ids[]", + "type": 2, + "title": "ID", + "description": "数据ID;单条数据还可使用'ids'作为key", + "example": "1", + "validate": "正整数" + } + ], + "responses": [], + "route_params": [] + }, + { + "id": 149, + "_trans_name": "收益明细", + "params": [ + { + "name": "where[_key]", + "type": 1, + "title": "关键字搜索组默认使用key", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[member_id]", + "type": 1, + "title": "会员ID", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[donation_id]", + "type": 1, + "title": "捐赠ID", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[status]", + "type": 1, + "title": "状态", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "options.where.member_id", + "description": "会员ID" + }, + { + "name": "options.where.donation_id", + "description": "捐赠ID" + }, + { + "name": "options.where.status", + "description": "状态" + }, + { + "name": "options.order.updated_at", + "description": "修改时间" + }, + { + "name": "options.order.id", + "description": "ID" + }, + { + "name": "maps.status", + "description": "状态" + }, + { + "name": "maps.status.0", + "description": "未提现" + }, + { + "name": "maps.status.1", + "description": "已提现" + }, + { + "name": "maps.member_id", + "description": "会员ID" + }, + { + "name": "maps.donation_id", + "description": "捐赠ID" + }, + { + "name": "excel.exportFields.id", + "description": "ID" + }, + { + "name": "excel.exportFields.member_id", + "description": "会员ID" + }, + { + "name": "excel.exportFields.donation_id", + "description": "捐赠ID" + }, + { + "name": "excel.exportFields.amount", + "description": "金额" + }, + { + "name": "excel.exportFields.status", + "description": "状态" + }, + { + "name": "excel.exportFields.created_at", + "description": "创建时间" + }, + { + "name": "excel.exportFields.updated_at", + "description": "修改时间" + }, + { + "name": "excel.exportFields.deleted_at", + "description": "删除时间" + } + ], + "route_params": [] + }, + { + "id": 150, + "_trans_name": "收益明细分页", + "params": [ + { + "name": "where[member_id]", + "type": 1, + "title": "会员ID", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[donation_id]", + "type": 1, + "title": "捐赠ID", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[status]", + "type": 1, + "title": "状态", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 151, + "_trans_name": "导出收益明细", + "params": [ + { + "name": "where[member_id]", + "type": 1, + "title": "会员ID", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[donation_id]", + "type": 1, + "title": "捐赠ID", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[status]", + "type": 1, + "title": "状态", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "", + "validate": "正整数" + } + ], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.$index", + "description": "excel数据项" + }, + { + "name": "data.$index.0", + "description": "会员ID" + }, + { + "name": "data.$index.1", + "description": "捐赠ID" + }, + { + "name": "data.$index.2", + "description": "金额" + }, + { + "name": "data.$index.3", + "description": "状态" + }, + { + "name": "data.$index.4", + "description": "ID" + } + ], + "route_params": [] + }, + { + "id": 152, + "_trans_name": "导入收益明细", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 153, + "_trans_name": "编辑查看收益明细", + "params": [], + "body_params": [], + "responses": [ + { + "name": "row", + "description": "" + }, + { + "name": "row.id", + "description": "ID" + }, + { + "name": "row.member_id", + "description": "会员ID" + }, + { + "name": "row.donation_id", + "description": "捐赠ID" + }, + { + "name": "row.amount", + "description": "金额" + }, + { + "name": "row.status", + "description": "状态" + }, + { + "name": "maps.status", + "description": "状态" + }, + { + "name": "maps.status.0", + "description": "未提现" + }, + { + "name": "maps.status.1", + "description": "已提现" + }, + { + "name": "maps.member_id", + "description": "会员ID" + }, + { + "name": "maps.donation_id", + "description": "捐赠ID" + } + ], + "route_params": [ + { + "name": "id", + "type": 2, + "title": "ID", + "description": "数据ID", + "example": "0", + "validate": "正整数" + } + ] + }, + { + "id": 154, + "_trans_name": "创建收益明细", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 155, + "_trans_name": "更新收益明细", + "params": [], + "body_params": [], + "responses": [], + "route_params": [] + }, + { + "id": 156, + "_trans_name": "删除收益明细", + "params": [], + "body_params": [ + { + "name": "ids[]", + "type": 2, + "title": "ID", + "description": "数据ID;单条数据还可使用'ids'作为key", + "example": "1", + "validate": "正整数" + } + ], + "responses": [], + "route_params": [] + }, + { + "id": 157, + "_trans_name": "赞助商", + "params": [ + { + "name": "where[_key]", + "type": 1, + "title": "关键字搜索组默认使用key", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "where[name]", + "type": 1, + "title": "赞助商", + "description": "", + "example": "", + "validate": "" + }, + { + "name": "order[updated_at]", + "type": 1, + "title": "修改时间排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "order[id]", + "type": 1, + "title": "ID排序", + "description": "asc-升序,desc-降序", + "example": "desc", + "validate": "" + }, + { + "name": "page", + "type": 2, + "title": "页码", + "description": "页码", + "example": "1", + "validate": "正整数" + }, + { + "name": "per_page", + "type": 2, + "title": "每页数据条数", + "description": "每页多少条", + "example": "15", + "validate": "正整数;最大值为200" + } + ], + "body_params": [], + "responses": [ + { + "name": "list.data.$index", + "description": "对象" + }, + { + "name": "list.data.$index.id", + "description": "ID" + }, + { + "name": "list.data.$index.name", + "description": "赞助商" + }, + { + "name": "list.data.$index.url", + "description": "链接" + }, + { + "name": "list.data.$index.logo", + "description": "LOGO图标" + }, + { + "name": "list.data.$index.created_at", + "description": "创建时间" + }, + { + "name": "list.data.$index.updated_at", + "description": "修改时间" + }, + { + "name": "options.where.name", + "description": "赞助商" + }, + { + "name": "options.order.updated_at", + "description": "修改时间" + }, + { + "name": "options.order.id", + "description": "ID" + }, + { + "name": "excel.exportFields.id", + "description": "ID" + }, + { + "name": "excel.exportFields.name", + "description": "赞助商" + }, + { + "name": "excel.exportFields.url", + "description": "链接" + }, + { + "name": "excel.exportFields.logo", + "description": "LOGO图标" + }, + { + "name": "excel.exportFields.created_at", + "description": "创建时间" + }, + { + "name": "excel.exportFields.updated_at", + "description": "修改时间" + }, + { + "name": "excel.exportFields.deleted_at", + "description": "删除时间" + } + ], + "route_params": [] + }, + { + "id": 158, + "_trans_name": "赞助商分页", + "params": [], + "body_params": [], + "responses": [ + { + "name": "data.$index", + "description": "对象" + }, + { + "name": "data.$index.id", + "description": "ID" + }, + { + "name": "data.$index.name", + "description": "赞助商" + }, + { + "name": "data.$index.url", + "description": "链接" + }, + { + "name": "data.$index.logo", + "description": "LOGO图标" + }, + { + "name": "data.$index.created_at", + "description": "创建时间" + }, + { + "name": "data.$index.updated_at", + "description": "修改时间" + } + ], + "route_params": [] + } + ], + "common_responses": [ + { + "name": "title", + "description": "提示" + }, + { + "name": "content", + "description": "提示内容" + }, + { + "name": "redirect", + "description": "跳转至页面" + }, + { + "name": "message", + "description": "提示内容" + }, + { + "name": "errors", + "description": "参数验证错误提醒" + }, + { + "name": "alert", + "description": "消息提示" + }, + { + "name": "alert.customClass", + "description": "消息提示自定义样式类" + }, + { + "name": "alert.duration", + "description": "消息提示显示时长" + }, + { + "name": "alert.iconClass", + "description": "消息提示显示图标类" + }, + { + "name": "alert.message", + "description": "消息提示内容" + }, + { + "name": "alert.position", + "description": "消息提示显示位置" + }, + { + "name": "alert.show", + "description": "判断消息提示是否显示临时变量" + }, + { + "name": "alert.showClose", + "description": "消息提示可否提前手动关闭" + }, + { + "name": "alert.title", + "description": "消息提示标题" + }, + { + "name": "alert.type", + "description": "消息提示类型" + }, + { + "name": "list", + "description": "列表分页数据" + }, + { + "name": "options", + "description": "排序筛选对象" + }, + { + "name": "options.where", + "description": "当前筛选条件" + }, + { + "name": "options.where._key", + "description": "关键字搜索组使用搜索key" + }, + { + "name": "options.order", + "description": "当前排序结果" + }, + { + "name": "maps", + "description": "数据项字典映射" + }, + { + "name": "mapsRelations", + "description": "关联对象对应的数据表" + }, + { + "name": "configUrl", + "description": "拥有的可操作权限" + }, + { + "name": "configUrl.indexUrl", + "description": "列表页面" + }, + { + "name": "configUrl.listUrl", + "description": "分页接口" + }, + { + "name": "configUrl.exportUrl", + "description": "导出地址" + }, + { + "name": "configUrl.importUrl", + "description": "导入地址" + }, + { + "name": "configUrl.showUrl", + "description": "查看详情" + }, + { + "name": "configUrl.createUrl", + "description": "创建操作" + }, + { + "name": "configUrl.updateUrl", + "description": "修改操作" + }, + { + "name": "configUrl.deleteUrl", + "description": "删除操作" + }, + { + "name": "keywordsMap", + "description": "关键字搜索可选项" + }, + { + "name": "excel", + "description": "导出excel配置" + }, + { + "name": "excel.sheet", + "description": "导出excel的sheet名称" + }, + { + "name": "excel.fileName", + "description": "导出excel的文件名" + }, + { + "name": "excel.exportFields", + "description": "导出excel的可选字段" + } + ], + "common_responses_list": [ + { + "name": "current_page", + "description": "当前页码" + }, + { + "name": "data", + "description": "分页数据集合" + }, + { + "name": "first_page_url", + "description": "第一页地址" + }, + { + "name": "from", + "description": "数据条数开始数" + }, + { + "name": "last_page", + "description": "最大页码" + }, + { + "name": "last_page_url", + "description": "最后一页地址" + }, + { + "name": "links", + "description": "页码按钮集合" + }, + { + "name": "links.$index", + "description": "页码按钮数据对象" + }, + { + "name": "links.$index.url", + "description": "页码地址" + }, + { + "name": "links.$index.label", + "description": "页码数" + }, + { + "name": "links.$index.active", + "description": "是否选中当前页码" + }, + { + "name": "next_page_url", + "description": "下一页地址" + }, + { + "name": "path", + "description": "数据地址" + }, + { + "name": "per_page", + "description": "每页多少条" + }, + { + "name": "prev_page_url", + "description": "上一页地址" + }, + { + "name": "to", + "description": "数据条数结束数" + }, + { + "name": "total", + "description": "总数据条数" } ] } \ No newline at end of file