李帅

init

Showing 32 changed files with 790 additions and 55 deletions
......@@ -10,6 +10,8 @@ use Dcat\Admin\Http\Controllers\AdminController;
class AuthorController extends AdminController
{
protected $title = '作者';
/**
* Make a grid builder.
*
......@@ -20,14 +22,16 @@ class AuthorController extends AdminController
return Grid::make(new Author(), function (Grid $grid) {
$grid->column('id')->sortable();
$grid->column('name');
$grid->column('dynasty');
$grid->column('introduce');
$grid->column('dynasty')->editable();
$grid->column('introduce')->limit(45);
$grid->column('created_at');
$grid->column('updated_at')->sortable();
$grid->filter(function (Grid\Filter $filter) {
$filter->equal('id');
$filter->equal('id')->width(2);
$filter->like('username')->width(3);
$filter->like('name')->width(3);
$filter->panel();
});
});
}
......
<?php
namespace App\Admin\Controllers;
use App\Admin\Renderable\PoemTable;
use App\Admin\Repositories\EverydayPoem;
use App\Models\OnePoem;
use Carbon\Carbon;
use Dcat\Admin\Form;
use Dcat\Admin\Form\NestedForm;
use Dcat\Admin\Grid;
use Dcat\Admin\Layout\Content;
use Dcat\Admin\Show;
use Dcat\Admin\Http\Controllers\AdminController;
class EverydayPoemController extends AdminController
{
protected $title = '每日一言';
/**
* Make a grid builder.
*
* @return Grid
*/
protected function grid()
{
return Grid::make(new EverydayPoem(), function (Grid $grid) {
$grid->model()->with('poem');
$grid->column('id')->sortable();
$grid->column('date');
$grid->column('poem.title');
$grid->column('poem.author');
$grid->column('poem.content')->limit(50);
$grid->column('created_at');
$grid->column('updated_at')->sortable();
$grid->filter(function (Grid\Filter $filter) {
$filter->equal('id');
});
});
}
/**
* Make a show builder.
*
* @param mixed $id
*
* @return Show
*/
protected function detail($id)
{
return Show::make($id, new EverydayPoem(), function (Show $show) {
$show->field('id');
$show->field('date');
$show->field('poem_id');
$show->field('sn');
$show->field('created_at');
$show->field('updated_at');
});
}
/**
* Make a form builder.
*
* @return Form
*/
protected function form()
{
return Form::make(new EverydayPoem(['poem']), function (Form $form) {
$form->display('id');
$form->text('date');
$form->text('should');
$form->display('poem.title');
$form->display('poem.author');
$form->display('poem.content');
$form->display('created_at');
$form->display('updated_at');
});
}
public function create(Content $content)
{
return $content
->translation($this->translation())
->title($this->title())
->description($this->description()['create'] ?? trans('admin.create'))
->body(Form::make(new EverydayPoem(), function (Form $form) {
$form->table('everyday','每日一言', function (NestedForm $table) {
$table->date('date');
$table->text('should');
$table->selectTable('poem_id')
->title('一言诗词库')
->from(PoemTable::make())
->model(OnePoem::class, 'id', 'title');
});
}));
}
public function store()
{
$all = request()->all();
try{
$data = [];
$now = Carbon::now();
foreach ($all['everyday'] as $item) {
if ($item['_remove_'] == 1) continue;
$data[] = [
'date' => $item['date'],
'should' => $item['should'],
'poem_id' => $item['poem_id'],
'created_at' => $now,
'updated_at' => $now,
];
}
\App\Models\EverydayPoem::query()->insert($data);
}catch (\Exception $exception){
return $this->form()->response()->error($exception->getMessage());
}
return $this->form()->response()->refresh()->success(trans('admin.save_succeeded'));
}
}
<?php
namespace App\Admin\Controllers;
use App\Admin\Repositories\OnePoem;
use App\Admin\Repositories\Verse;
use App\Models\Author;
use App\Models\Poetry;
use Dcat\Admin\Form;
use Dcat\Admin\Grid;
use Dcat\Admin\Layout\Content;
use Dcat\Admin\Show;
use Dcat\Admin\Http\Controllers\AdminController;
use Dcat\Admin\Widgets\Card;
class OnePoemController extends AdminController
{
protected $title = '一言';
/**
* Make a grid builder.
*
* @return Grid
*/
protected function grid()
{
return Grid::make(new OnePoem(), function (Grid $grid) {
$grid->column('id')->sortable();
$grid->column('title');
$grid->column('content');
$grid->column('annotate');
$grid->column('spelling');
$grid->column('en');
$grid->column('created_at');
$grid->column('updated_at')->sortable();
$grid->filter(function (Grid\Filter $filter) {
$filter->equal('id');
});
});
}
/**
* Make a show builder.
*
* @param mixed $id
*
* @return Show
*/
protected function detail($id)
{
return Show::make($id, new OnePoem(), function (Show $show) {
$show->field('id');
$show->field('title');
$show->field('content');
$show->field('annotate');
$show->field('spelling');
$show->field('en');
$show->field('poetry_id');
$show->field('created_at');
$show->field('updated_at');
});
}
public function create(Content $content)
{
return $content
->translation($this->translation())
->title($this->title())
->description('注意:基础库中内容只做参考,创建的一言与其他表数据不耦合!理论上可自行组装句子,也可按诗词原文复制。')
// ->description($this->description()['create'] ?? trans('admin.create'))
->body(Card::make($this->PoetryGrid()))
->body($this->form());
}
/**
* Make a form builder.
*
* @return Form
*/
protected function form()
{
return Form::make(new OnePoem(), function (Form $form) {
$form->display('id');
$form->text('title');
$form->text('author');
$form->text('content');
$form->text('annotate');
$form->text('spelling');
$form->text('en');
$form->display('created_at');
$form->display('updated_at');
});
}
protected function PoetryGrid()
{
return Grid::make(new Verse(), function (Grid $grid) {
$grid->model()->with(['poetry']);
$grid->column('id')->sortable();
$grid->column('author_id')->display(function (){
$id = $this->poetry_id;
$poetry = Poetry::query()->find($id);
$author_id = $poetry->author_id;
$author = Author::query()->find($author_id);
return $author->name;
})->copyable();
$grid->column('poetry.name')->copyable();
$grid->column('stanza')->copyable();
$grid->column('annotate')->copyable();
$grid->column('spelling')->copyable();
$grid->column('en')->copyable();
// $grid->column('created_at');
// $grid->column('updated_at')->sortable();
$grid->withBorder();
$grid->quickSearch(['stanza'])->placeholder('快捷搜索诗句(节)');
$grid->paginate(5);
$grid->simplePaginate();
$grid->disableActions();
$grid->disableCreateButton();
$grid->filter(function (Grid\Filter $filter) {
$filter->like('poetry.name')->width(3);
$filter->like('stanza')->width(5);
$filter->panel();
});
});
}
}
<?php
namespace App\Admin\Controllers;
use App\Admin\Repositories\Order;
use Dcat\Admin\Form;
use Dcat\Admin\Grid;
use Dcat\Admin\Show;
use Dcat\Admin\Http\Controllers\AdminController;
class OrderController extends AdminController
{
/**
* Make a grid builder.
*
* @return Grid
*/
protected function grid()
{
return Grid::make(new Order(), function (Grid $grid) {
$grid->column('id')->sortable();
$grid->column('order_sn');
$grid->column('user_id');
$grid->column('pay_amount');
$grid->column('goods_amount');
$grid->column('status');
$grid->column('cancel_time');
$grid->column('pay_number');
$grid->column('pay_type');
$grid->column('pay_time');
$grid->column('created_at');
$grid->column('updated_at')->sortable();
$grid->filter(function (Grid\Filter $filter) {
$filter->equal('id');
});
});
}
/**
* Make a show builder.
*
* @param mixed $id
*
* @return Show
*/
protected function detail($id)
{
return Show::make($id, new Order(), function (Show $show) {
$show->field('id');
$show->field('order_sn');
$show->field('user_id');
$show->field('pay_amount');
$show->field('goods_amount');
$show->field('status');
$show->field('cancel_time');
$show->field('pay_number');
$show->field('pay_type');
$show->field('pay_time');
$show->field('created_at');
$show->field('updated_at');
});
}
/**
* Make a form builder.
*
* @return Form
*/
protected function form()
{
return Form::make(new Order(), function (Form $form) {
$form->display('id');
$form->text('order_sn');
$form->text('user_id');
$form->text('pay_amount');
$form->text('goods_amount');
$form->text('status');
$form->text('cancel_time');
$form->text('pay_number');
$form->text('pay_type');
$form->text('pay_time');
$form->display('created_at');
$form->display('updated_at');
});
}
}
......@@ -2,14 +2,18 @@
namespace App\Admin\Controllers;
use App\Admin\Repositories\PickPoetry;
use App\Admin\Renderable\PoemTable;
use App\Admin\Repositories\OnePoem;
use App\Admin\Repositories\PackPoem;
use Dcat\Admin\Form;
use Dcat\Admin\Grid;
use Dcat\Admin\Show;
use Dcat\Admin\Http\Controllers\AdminController;
class PickPoetryController extends AdminController
class PackPoemController extends AdminController
{
protected $title = '众妙';
/**
* Make a grid builder.
*
......@@ -17,15 +21,18 @@ class PickPoetryController extends AdminController
*/
protected function grid()
{
return Grid::make(new PickPoetry(), function (Grid $grid) {
return Grid::make(new PackPoem(), function (Grid $grid) {
$grid->model()->with('poem');
$grid->column('id')->sortable();
$grid->column('title');
$grid->column('subtitle');
$grid->column('left_tag_id');
$grid->column('right_tag_id');
$grid->column('poetry_id');
$grid->column('use_num');
$grid->column('state');
$grid->column('left_text');
$grid->column('right_text');
$grid->column('poem.title');
$grid->column('poem.content')->limit(50);
$grid->column('poem.author');
// $grid->column('state');
$grid->column('created_at');
$grid->column('updated_at')->sortable();
......@@ -45,14 +52,13 @@ class PickPoetryController extends AdminController
*/
protected function detail($id)
{
return Show::make($id, new PickPoetry(), function (Show $show) {
return Show::make($id, new PackPoem(), function (Show $show) {
$show->field('id');
$show->field('title');
$show->field('subtitle');
$show->field('left_tag_id');
$show->field('right_tag_id');
$show->field('left_text');
$show->field('right_text');
$show->field('poetry_id');
$show->field('use_num');
$show->field('state');
$show->field('created_at');
$show->field('updated_at');
......@@ -66,16 +72,24 @@ class PickPoetryController extends AdminController
*/
protected function form()
{
return Form::make(new PickPoetry(), function (Form $form) {
return Form::make(new PackPoem(['poem']), function (Form $form) {
$form->display('id');
$form->text('title');
$form->text('subtitle');
$form->text('left_tag_id');
$form->text('right_tag_id');
$form->text('poetry_id');
$form->text('use_num');
$form->text('state');
$form->text('left_text');
$form->text('right_text');
if ($form->isEditing()) {
$form->display('poem.title');
$form->display('poem.author');
$form->display('poem.content');
}else{
$form->selectTable('poem_id')
->title('一言诗词库')
->from(PoemTable::make())
->model(OnePoem::class, 'id', 'title');
}
$form->display('created_at');
$form->display('updated_at');
});
......
<?php
/**
* Created by PhpStorm.
* User: lishuai
* Date: 2022/1/10
* Time: 5:57 PM
*/
namespace App\Admin\Renderable;
use App\Admin\Repositories\OnePoem;
use Dcat\Admin\Grid;
use Dcat\Admin\Grid\LazyRenderable;
class PoemTable extends LazyRenderable
{
public function grid(): Grid
{
return Grid::make(new OnePoem(), function (Grid $grid) {
$grid->column('id', 'ID')->sortable();
$grid->column('title');
$grid->column('author');
$grid->column('content');
$grid->column('annotate');
$grid->column('spelling');
$grid->column('en');
$grid->quickSearch(['title', 'author', 'content', 'annotate']);
$grid->paginate(10);
$grid->disableActions();
$grid->filter(function (Grid\Filter $filter) {
$filter->like('username')->width(4);
$filter->like('name')->width(4);
});
});
}
}
\ No newline at end of file
......@@ -2,10 +2,10 @@
namespace App\Admin\Repositories;
use App\Models\PickPoetry as Model;
use App\Models\EverydayPoem as Model;
use Dcat\Admin\Repositories\EloquentRepository;
class PickPoetry extends EloquentRepository
class EverydayPoem extends EloquentRepository
{
/**
* Model.
......
<?php
namespace App\Admin\Repositories;
use App\Models\OnePoem as Model;
use Dcat\Admin\Repositories\EloquentRepository;
class OnePoem extends EloquentRepository
{
/**
* Model.
*
* @var string
*/
protected $eloquentClass = Model::class;
}
<?php
namespace App\Admin\Repositories;
use App\Models\Order as Model;
use Dcat\Admin\Repositories\EloquentRepository;
class Order extends EloquentRepository
{
/**
* Model.
*
* @var string
*/
protected $eloquentClass = Model::class;
}
<?php
namespace App\Admin\Repositories;
use App\Models\PackPoem as Model;
use Dcat\Admin\Repositories\EloquentRepository;
class PackPoem extends EloquentRepository
{
/**
* Model.
*
* @var string
*/
protected $eloquentClass = Model::class;
}
<?php
namespace App\Admin\Repositories;
use App\Models\PickPoetryVerse as Model;
use Dcat\Admin\Repositories\EloquentRepository;
class PickPoetryVerse extends EloquentRepository
{
/**
* Model.
*
* @var string
*/
protected $eloquentClass = Model::class;
}
......@@ -14,4 +14,19 @@ Route::group([
$router->get('/', 'HomeController@index');
$router->resource('/author', 'AuthorController');
$router->resource('/poetry', 'PoetryController');
$router->resource('/verse', 'VerseController');
/** 一言 */
$router->resource('/poem', 'OnePoemController');
/** 众妙*/
$router->resource('/package', 'PackPoemController');
/** 每日一言*/
$router->resource('/tool/every-poem', 'EverydayPoemController');
/** 推荐*/
// $router->resource('/tool/recommend','');
});
......
......@@ -10,5 +10,9 @@ class Author extends Model
{
use HasDateTimeFormatter;
protected $table = 'author';
public function poetry()
{
return $this->hasMany(Poetry::class);
}
}
......
<?php
namespace App\Models;
use Dcat\Admin\Traits\HasDateTimeFormatter;
use Illuminate\Database\Eloquent\Model;
class EverydayPoem extends Model
{
use HasDateTimeFormatter;
protected $table = 'everyday_poem';
public function poem()
{
return $this->belongsTo(OnePoem::class);
}
}
......@@ -6,9 +6,9 @@ use Dcat\Admin\Traits\HasDateTimeFormatter;
use Illuminate\Database\Eloquent\Model;
class PickPoetry extends Model
class OnePoem extends Model
{
use HasDateTimeFormatter;
protected $table = 'pick_poetry';
protected $table = 'one_poem';
}
......
<?php
namespace App\Models;
use Dcat\Admin\Traits\HasDateTimeFormatter;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Eloquent\Model;
class Order extends Model
{
use HasDateTimeFormatter;
use SoftDeletes;
protected $table = 'order';
}
<?php
namespace App\Models;
use Dcat\Admin\Traits\HasDateTimeFormatter;
use Illuminate\Database\Eloquent\Model;
class PackPoem extends Model
{
use HasDateTimeFormatter;
protected $table = 'pack_poem';
public function poem()
{
return $this->belongsTo(OnePoem::class);
}
}
......@@ -10,5 +10,14 @@ class Poetry extends Model
{
use HasDateTimeFormatter;
protected $table = 'poetry';
public function author()
{
return $this->belongsTo(Author::class);
}
protected function verses()
{
return $this->hasMany(Verse::class);
}
}
......
......@@ -10,5 +10,9 @@ class Verse extends Model
{
use HasDateTimeFormatter;
protected $table = 'verse';
public function poetry()
{
return $this->belongsTo(Poetry::class);
}
}
......
......@@ -67,7 +67,7 @@ return [
|
*/
'timezone' => 'UTC',
'timezone' => 'Asia/Shanghai',
/*
|--------------------------------------------------------------------------
......
......@@ -4,7 +4,7 @@ use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreatePoetryTagTable extends Migration
class CreatePoemTagTable extends Migration
{
/**
* Run the migrations.
......@@ -13,9 +13,9 @@ class CreatePoetryTagTable extends Migration
*/
public function up()
{
Schema::create('poetry_tag', function (Blueprint $table) {
Schema::create('poem_tag', function (Blueprint $table) {
$table->increments('id');
$table->unsignedBigInteger('poetry_id')->index()->comment('诗词id');
$table->unsignedBigInteger('poem_id')->index()->comment('诗词id');
$table->unsignedBigInteger('tag_id')->index()->comment('标签id');
});
}
......@@ -27,6 +27,6 @@ class CreatePoetryTagTable extends Migration
*/
public function down()
{
Schema::dropIfExists('poetry_tag');
Schema::dropIfExists('poem_tag');
}
}
......
......@@ -4,7 +4,7 @@ use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreatePickPoetryTable extends Migration
class CreatePackPoemTable extends Migration
{
/**
* Run the migrations.
......@@ -13,15 +13,14 @@ class CreatePickPoetryTable extends Migration
*/
public function up()
{
Schema::create('pick_poetry', function (Blueprint $table) {
Schema::create('pack_poem', function (Blueprint $table) {
$table->increments('id');
$table->string('title')->default('')->comment('标题');
$table->string('subtitle')->default('')->comment('副标题');
$table->string('left_text')->default('')->comment('左侧文本');
$table->string('right_text')->default('')->comment('右侧文本');
$table->unsignedBigInteger('poetry_id')->index()->comment('诗词id');
$table->unsignedBigInteger('use_num')->comment('使用次数');
$table->unsignedTinyInteger('state')->comment('状态');
$table->unsignedBigInteger('poem_id')->index()->comment('诗词id');
$table->unsignedTinyInteger('state')->default(0)->comment('状态');
$table->timestamps();
});
}
......@@ -33,6 +32,6 @@ class CreatePickPoetryTable extends Migration
*/
public function down()
{
Schema::dropIfExists('pick_poetry');
Schema::dropIfExists('pack_poem');
}
}
......
......@@ -16,11 +16,14 @@ class CreateMembershipTable extends Migration
Schema::create('membership', function (Blueprint $table) {
$table->increments('id');
$table->string('name')->default('')->comment('会员名称');
$table->integer('price')->comment('价格(分)');
$table->integer('origin_price')->comment('原价(分)');
$table->integer('limited_days')->comment('有效天数');
$table->decimal('price')->comment('价格(分)');
$table->decimal('origin_price')->comment('原价(分)');
$table->integer('limit_days')->comment('有效天数');
$table->string('limit_unit')->comment('有效期单位');
$table->string('intro')->default('')->comment('简介');
$table->unsignedTinyInteger('state')->comment('状态');
$table->string('image')->default('')->comment('介绍图');
$table->unsignedTinyInteger('sale_term')->default('')->comment('上架终端');
$table->unsignedTinyInteger('state')->comment('状态:1=售卖中');
$table->unsignedTinyInteger('sn')->comment('SN顺序');
$table->timestamps();
});
......
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateOnePoemTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('one_poem', function (Blueprint $table) {
$table->increments('id');
$table->string('title')->default('')->comment('诗词标题');
$table->string('author')->default('')->comment('作者');
$table->string('content')->default('')->comment('正文');
$table->text('annotate')->nullable()->comment('注解');
$table->text('spelling')->nullable()->comment('拼音');
$table->text('en')->nullable()->comment('英文解释');
$table->unsignedTinyInteger('state')->index()->default(0)->comment('状态');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('one_poem');
}
}
......@@ -4,7 +4,7 @@ use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreatePickPoetryVerseTable extends Migration
class CreateEverydayPoemTable extends Migration
{
/**
* Run the migrations.
......@@ -13,10 +13,12 @@ class CreatePickPoetryVerseTable extends Migration
*/
public function up()
{
Schema::create('pick_poetry_verse', function (Blueprint $table) {
Schema::create('everyday_poem', function (Blueprint $table) {
$table->increments('id');
$table->unsignedBigInteger('pick_id')->index()->comment('官方秀id');
$table->unsignedBigInteger('verse_id')->index()->comment('诗句(节)id');
$table->date('date')->unique()->comment('日期');
$table->string('should')->default('')->comment('宜');
$table->unsignedBigInteger('poem_id')->index()->comment('一言');
$table->timestamps();
});
}
......@@ -27,6 +29,6 @@ class CreatePickPoetryVerseTable extends Migration
*/
public function down()
{
Schema::dropIfExists('pick_poetry_verse');
Schema::dropIfExists('everyday_poem');
}
}
......
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateOrderTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('order', function (Blueprint $table) {
$table->increments('id');
$table->string('order_sn')->index()->default('')->comment('订单号');
$table->unsignedBigInteger('user_id')->index()->comment('用户id');
$table->decimal('pay_amount')->comment('实付金额');
$table->decimal('goods_amount')->comment('商品金额');
$table->unsignedSmallInteger('status')->comment('订单状态:100待付款 101用户取消 102超时取消 103商户取消 201已付款 204已完成');
$table->timestamp('cancel_time')->comment('关闭时间');
$table->string('source')->comment('来源');
$table->string('pay_number')->default('')->comment('支付交易号');
$table->string('pay_type')->default('')->comment('支付类型');
$table->timestamp('pay_time')->comment('支付时间');
$table->timestamps();
$table->softDeletes();
$table->unsignedTinyInteger('is_deleted')->comment('是否删除');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('order');
}
}
<?php
return [
'labels' => [
'EverydayPoem' => 'EverydayPoem',
'everyday-poem' => 'EverydayPoem',
],
'fields' => [
'date' => '日期',
'poem_id' => '一言',
'should' => '宜',
'sn' => '序号',
],
'options' => [
],
];
<?php
return [
'labels' => [
'OnePoem' => 'OnePoem',
'one-poem' => 'OnePoem',
],
'fields' => [
'title' => '标题',
'content' => '正文',
'stanza' => '诗节',
'annotate' => '注解',
'spelling' => '拼音',
'en' => '英文解释',
'poetry_id' => '诗词id',
'state' => '状态',
'author' => '作者',
'author_id' => '作者id',
'name' => '题目',
'subname' => '小标题',
'alias' => '别名',
'poetry' => [
'name' => '诗词名'
]
],
'options' => [
],
];
<?php
return [
'labels' => [
'Order' => 'Order',
'order' => 'Order',
],
'fields' => [
'order_sn' => '订单号',
'user_id' => '用户id',
'pay_amount' => '实付金额',
'goods_amount' => '商品金额',
'status' => '订单状态',
'cancel_time' => '关闭时间',
'pay_number' => '支付交易号',
'pay_type' => '支付类型',
'pay_time' => '支付时间',
],
'options' => [
],
];
<?php
return [
'labels' => [
'PickPoetry' => 'PickPoetry',
'pick-poetry' => 'PickPoetry',
'PackPoem' => 'PackPoem',
'pack-poem' => 'PackPoem',
],
'fields' => [
'title' => '标题',
'subtitle' => '副标题',
'left_tag_id' => '左侧标签',
'right_tag_id' => '右侧标签',
'poetry_id' => '诗词id',
'left_text' => '左侧文本',
'right_text' => '右侧文本',
'poem_id' => '一言',
'use_num' => '使用次数',
'state' => '状态',
'poem'=>[
'title' => '一言',
'content' => '正文',
'author' => '作者'
]
],
'options' => [
],
......
<?php
return [
'labels' => [
'PickPoetryVerse' => 'PickPoetryVerse',
'pick-poetry-verse' => 'PickPoetryVerse',
],
'fields' => [
'pick_id' => '一言id',
'verse_id' => '重新打包的诗句(节)id',
],
'options' => [
],
];
......@@ -10,6 +10,7 @@ return [
'annotate' => '注解',
'spelling' => '拼音',
'en' => '英文解释',
'state' => '状态',
],
'options' => [
],
......