ostheneo / toaster
在线Toaster
dev-master
2020-04-13 16:21 UTC
Requires
- php: ^7.0
- illuminate/support: 5.6.*|5.7.*|5.8.*|6.*
This package is auto-updated.
Last update: 2021-06-05 20:26:19 UTC
README
安装Toaster
最低要求
- illuminate/support: 5.6.|5.7.|6.*
- php: ^7.0
执行命令
composer require ostheneo/toaster
或者将以下内容添加到你的composer.json中,然后执行
"ostheneo/toaster": "dev-master"
并执行composer update
-
然后执行以下命令以发布Toaster的所有配置、自定义和其他选项。以下是要发布的文件。
`php artisan vendor:publish --provider=OsTheNeo\Toaster\ToasterServiceProvider`
-
resources/views/vendor/Toaster (视图)
`php artisan vendor:publish --tag=views`
-
resources/lang (多语言字典)
`php artisan vendor:publish --tag=dictionary`
-
config/toaster.php (配置文件)
`php artisan vendor:publish --tag=config`
-
你也可以使用上述命令中的相应命令分别发布每个文件,如下所示。
实现用户和权限
为了处理用户和权限,你需要实现库Zizaco/entrust
创建迁移
-
执行以下命令以创建表“galery”的迁移
`php artisan make:migration toaster_create_galery_table --create=galery`
-
在创建的迁移的“up”函数中,粘贴以下代码。
`Schema::create('gallery', function (Blueprint $table) { $table->increments('id');
$table->text('icon'); $table->text('images'); $table->integer('state'); $table->string('binded'); $table->string('videos',100); $table->timestamps(); });`
然后执行php artisan migrate。这样就会在数据库中创建“gallery”表。
创建名为“Dictionary”的类,具有以下结构和以下方法。
`public static function alias($ask) {
$dictionary = (object)[
'productTable' => Product::class,
'variantTable' => Variant::class,
];
return $dictionary->$ask;
}
public static function replacemente($ask) {
/**estructura de datos para las tablas de purchase*/
$purchaseTables=[
'delivery_state' => ['kind' => 'group'],
'payment_state' => ['kind' => 'group'],
'state' => ['kind' => 'group'],
'note' => ['kind' => 'json','value' => 'datetime','splitData'=>'data:']];
$replacement = (object)[
'purchaseTable' =>$purchaseTables,
'purchaseTableBogota' => $purchaseTables,
'purchaseTableBogotaNorte' => $purchaseTables
];
if (isset($replacement->$ask))
return $replacement->$ask;
return null;
}
public static function groupDefinitions($group){//'0'=>'Pendiente de pago'
$groups = (object)([
'size' => ['0s' => 'Pequeño', '1s' => 'Mediano', '2s' => 'Grande'],
'delivery_state' => ['Pendiente de envío', 'Enviado', 'Recibido', 'Devuelto cliente', 'Devuelto despachadora'],
'payment_state' => ['0'=>'......','1'=>'Aprobado','2'=>'Rechazada','3'=>'En verificación','4'=>'Fallida',
'5'=>'N/D','6'=>'Reversada','7'=>'Retenida','8'=>'Iniciada','9'=>'Exprirada',
'10'=>'Abandonada','11'=>'Cancelada','12'=>'Antifraude'],
'state' => ['Pendiente', 'Aprobada', 'Cancelado usuario', 'Cancelado administrador'],
'cities'=>config('store.cities'),
'states'=>['1'=>'Activado','0'=>'Desactivado'],
]);
if (isset($groups->$group)) {
return $groups->$group;
}
return null;
}
public static function groupCustomDefinitions($group,$parameters,$data){
$item='Indefinido';
switch ($parameters['from']){
case 'DB':
if(isset($parameters['data']['where'])){
$key=$parameters['data']['where'];
$parameters['data']['where']=[$key=>$data['row']->$group];
}
$item=BladeEngine::makeOptions($parameters['data'])->toArray()[$data['value']];
break;
case 'group':
$item=self::groupDefinitions($parameters['table'])[$group][$data['value']];
break;
}
return $item;
}
/**
* extra un dato de un json
*/
public static function jsonDefinitionValue($value,$key,$splitData=null){
if($splitData!=null) $value=explode($splitData,$value)[1];
$data=json_decode($value);
return $data->$key;
}`
实现或使用方式
从“ToasterController”扩展
class TuController extends ToasterController
实现index
实现create
实现edit
实现show