94 lines
2.6 KiB
PHP
94 lines
2.6 KiB
PHP
<?php
|
|
|
|
|
|
namespace Yunshop\PointActivity;
|
|
|
|
|
|
use Yunshop\PointActivity\Common\Config\MenuHook;
|
|
use Yunshop\PointActivity\Common\Services\TimedTaskActivityValidityService;
|
|
use Yunshop\PointActivity\Common\Services\TimedTaskPointValidityService;
|
|
|
|
class PluginApplication extends \app\common\services\PluginApplication
|
|
{
|
|
public function getIncomePageItems()
|
|
{
|
|
return [
|
|
'pointActivity' => [
|
|
'class' => 'Yunshop\PointActivity\Common\Services\IncomePageService',
|
|
'type' => 'marketing'
|
|
]
|
|
];
|
|
}
|
|
|
|
public function getIncomeItems()
|
|
{
|
|
return ['pointActivity' => [
|
|
'title' => '积分活动奖励',
|
|
'type' => 'pointActivity',
|
|
'class' => 'Yunshop\PointActivity\Common\Models\PointActivityAwardLog',
|
|
'order_class' => '',
|
|
]];
|
|
}
|
|
|
|
protected function setConfig()
|
|
{
|
|
|
|
\app\common\modules\shop\ShopConfig::current()->set('observer.goods.point_activity', [
|
|
'class' => 'Yunshop\PointActivity\Backend\Models\GoodsPointActivity',
|
|
'function_validator' => 'relationValidator',
|
|
'function_save' => 'relationSave'
|
|
]);
|
|
|
|
}
|
|
|
|
public function getWidgetItems()
|
|
{
|
|
return [
|
|
'withdraw.point_activity' => [
|
|
'title' => '积分活动提现',
|
|
'class' => 'Yunshop\PointActivity\Backend\Controllers\PointActivityWithdrawWidget',
|
|
],
|
|
'vue-goods.point_activity' => [
|
|
'title' => '积分活动奖励',
|
|
'class' => \Yunshop\PointActivity\Backend\widgets\PointActivityVueWidget::class
|
|
],
|
|
];
|
|
}
|
|
|
|
protected function setMenuConfig()
|
|
{
|
|
/**
|
|
* 菜单、权限、路由
|
|
*/
|
|
\app\backend\modules\menu\Menu::current()->setPluginMenu('point_activity', MenuHook::menu());
|
|
|
|
}
|
|
|
|
public function boot()
|
|
{
|
|
$events = app('events');
|
|
|
|
|
|
$events->subscribe(\Yunshop\PointActivity\Common\Listeners\OrderReceivedListener::class);
|
|
}
|
|
|
|
public function register()
|
|
{
|
|
$point = \Setting::get('shop.shop.credit1') ?: "积分";
|
|
|
|
define('MEMBER_POINT', $point);
|
|
}
|
|
public function cronConfig()
|
|
{
|
|
\Event::listen('cron.collectJobs', function () {
|
|
\Cron::add('Activity-Point-Validity', '*/10 * * * *', function () {
|
|
(new TimedTaskActivityValidityService())->handle();
|
|
});
|
|
|
|
\Cron::add('Point-Activity-Validity', '*/10 * * * *', function () {
|
|
(new TimedTaskPointValidityService())->handle();
|
|
});
|
|
});
|
|
|
|
}
|
|
} |