push('shop-foundation.status', ['key' => 'running_delivery', 'class' => \Yunshop\RunningDelivery\models\process\RunningStatus::class]); } public function boot() //注册监听事件 { $events = app('events'); //判断当前门店配送是否走跑腿配送第三方运费 \app\common\modules\shop\ShopConfig::current()->set('extra_store_delivery_is_allow.running_delivery', [ 'class' => '\Yunshop\RunningDelivery\services\DeliveryService', 'function' => 'runningDeliveryAllow' ] ); //获取当前跑腿配送第三方运费 \app\common\modules\shop\ShopConfig::current()->set('extra_store_delivery_get_fee.running_delivery', [ 'class' => '\Yunshop\RunningDelivery\services\DeliveryService', 'function' => 'getDeliveryFee' ] ); //门店订单详情隐藏操作按钮 \app\common\modules\shop\ShopConfig::current()->set('change_order_for_store_order_detail.running_delivery', [ 'class' => '\Yunshop\RunningDelivery\services\StoreService', 'function' => 'getRunningDeliveryOrder' ] ); //判断门店下单页地址是否需要设置经纬度 \app\common\modules\shop\ShopConfig::current()->set('create_store_order_need_set_lat.running_delivery', [ 'class' => '\Yunshop\RunningDelivery\services\DeliveryService', 'function' => 'checkStoreOpen' ] ); $events->subscribe(\Yunshop\RunningDelivery\listener\OrderCreatedListener::class); $events->subscribe(\Yunshop\RunningDelivery\listener\OrderPaidListener::class); $events->subscribe(\Yunshop\RunningDelivery\listener\AfterOrderCanceledListener::class); $events->subscribe(\Yunshop\RunningDelivery\listener\BeforeOrderCanceledListener::class); \Event::listen('cron.collectJobs', function () { //token刷新定时任务 \Cron::add('RunningDeliveryRefreshToken', '*/10 * * * *', function () { (new \Yunshop\RunningDelivery\services\TimeRefreshTokenService())->handle(); return; }); }); \Event::listen('cron.collectJobs', function () { //token刷新定时任务 \Cron::add('RunningDeliveryRefreshOrder', '*/3 * * * *', function () { (new \Yunshop\RunningDelivery\services\TimeRefreshOrderService())->handle(); return; }); }); } protected function setMenuConfig() { \app\backend\modules\menu\Menu::current()->setPluginMenu('running_delivery', [ 'name' => '跑腿配送', 'type' => 'store', 'url' => 'plugin.running-delivery.admin.setting.index', 'url_params' => '', 'permit' => 1, 'menu' => 1, 'top_show' => 0, 'left_first_show' => 0, 'left_second_show' => 1, 'icon' => 'fa-picture-o', 'list_icon' => 'running_delivery', 'parents' => [], 'child' => [ 'running_delivery_setting' => [ 'name' => '基础设置', 'permit' => 1, 'menu' => 1, 'icon' => 'fa-gear', 'url' => 'plugin.running-delivery.admin.setting.index', 'url_params' => '', 'parents' => ['running_delivery'], 'child' => [ 'running_delivery_setting_edit' => [ 'name' => '编辑设置', 'permit' => 1, 'menu' => 0, 'icon' => 'fa-th-list', 'url' => 'plugin.running-delivery.admin.setting.edit', 'url_params' => '', 'parents' => ['running_delivery', 'running_delivery_setting'], 'child' => [] ], ], ], 'running_delivery_store' => [ 'name' => '门店管理', 'permit' => 1, 'menu' => 1, 'icon' => 'fa-group', 'url' => 'plugin.running-delivery.admin.store.index', 'url_params' => '', 'parents' => ['running_delivery'], 'child' => [ 'running_delivery_store_bind_many' => [ 'name' => '批量绑定商户', 'permit' => 1, 'menu' => 0, 'icon' => 'fa-th-list', 'url' => 'plugin.running-delivery.admin.store.bindManyStore', 'url_params' => '', 'parents' => ['running_delivery', 'running_delivery_store'], 'child' => [] ], 'running_delivery_store_bind_one' => [ 'name' => '绑定单个商户', 'permit' => 1, 'menu' => 0, 'icon' => 'fa-th-list', 'url' => 'plugin.running-delivery.admin.store.bindOneStore', 'url_params' => '', 'parents' => ['running_delivery', 'running_delivery_store'], 'child' => [] ], ] ], 'running_delivery_order' => [ 'name' => '跑腿订单同步', 'permit' => 1, 'menu' => 0, 'icon' => 'fa-group', 'url' => 'plugin.running-delivery.admin.order.changeProcess', 'url_params' => '', 'parents' => ['running_delivery'], 'child' => [ 'running_delivery_order_cancel' => [ 'name' => '跑腿订单取消', 'permit' => 1, 'menu' => 0, 'icon' => 'fa-th-list', 'url' => 'plugin.running-delivery.admin.order.cancelOrder', 'url_params' => '', 'parents' => ['running_delivery', 'running_delivery_store'], 'child' => [] ], ] ], ] ]); } }