PHP code example of clearswitch / dragon-ball-laravel
1. Go to this page and download the library: Download clearswitch/dragon-ball-laravel library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
clearswitch / dragon-ball-laravel example snippets
use ClearSwitch\DragonBallLaravel\Models\AbstractMode;
class OrderItem extends AbstractMode{
}
use ClearSwitch\DragonBallLaravel\Models\AbstractMode;
class User extends AbstractMode
{
}
//当填写了主键的值,那么存储的数据主键值就是1
$model=new OrderItem([
"id"=>'1'
])
$model->save();
//当没有写主键的时候,主键自动已雪花的格式补充
$model=new OrderItem([
"sku"=>'1123443545'
])
$model->save();
//如果你想自定义,这个自动补充主键的规则你需要写如下的代码
use Illuminate\Support\ServiceProvider;
class SnowflakeServiceProvider extends ServiceProvider
{
public function register()
{
// 首先解除包中绑定的snowflake服务
$this->app->forgetInstance('snowflake');
//绑定自定义的名叫snowflake的服务,名字必须和包中的服务名字保持一直
$this->app->singleton('snowflake', function ($app) {
// 你自己的服务代码
return new YourCustomSnowflakeClass();
});
}
}
//然后注册自己定义的服务
//您可以在 `config/app.php` 文件中的 `providers` 数组中添加它:
'providers' => [
// ...
App\Providers\SnowflakeServiceProvider::class,
// ...
],
use Illuminate\Contracts\Auth\Authenticatable;
use ClearSwitch\DragonBallLaravel\Models\AbstractMode;
class User extends AbstractMode implements Authenticatable
{
}
use ClearSwitch\DragonBallLaravel\Traits\Robot
class sendMessage{
use Robot;
public function send(){
$this->qyWeChat("类容")
$this->qyWeChat("EmailSend")
}
}
use ClearSwitch\DragonBallLaravel\Requests\JsonRequest;
class Login extends JsonRequest
{
public function rules()
{
return [];
}
public function attributes()
{
return [];
}
}
//Controller
use Login
public function login(Login $request)
{
//获得请求数据通过的数据
$data = $request->validated();
}
use ClearSwitch\DragonBallLaravel\Requests\ListRequest;
class order extends ListRequest
{
public function rules()
{
return [];
}
public function attributes()
{
return [];
}
}
use ClearSwitch\DragonBallLaravel\Controllers\AbstractController;
use ClearSwitch\DragonBallLaravel\Component\DataProvider;
use ClearSwitch\DragonBallLaravel\Component\DataFilter;
class order extends AbstractController{
$filter = (new DataFilter($data))
->addRule('waybill', '=', 'waybill')
->addRule('orderId', '=', 'orderId')
->addRule('start_time', '>=', 'addTime')
->addRule('end_time', '<=', 'addTime');
$provider = (new DataProvider($builder, $filter))
->setColumns(['waybill', 'orderId', 'codCurrency', 'consigneeCountry', 'addTime', 'codAmount'])
->addSort('addTime')
->setSerializer(function ($rows) {
$result = [];
foreach ($rows as $row) {
$order = $row->getAttributes();
$result[] = $order;
}
return $result;
});
return $this->send($provider);
}
use ClearSwitch\DragonBallLaravel\Traits\Log
$this->log()->info();