admin/plugins/cultural-space/src/PluginApplication.php

221 lines
9.4 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
namespace Yunshop\CulturalSpace;
use Yunshop\CulturalSpace\listener\OrderPaidListener;
use Yunshop\CulturalSpace\models\ContributionBonusLog;
use Yunshop\CulturalSpace\models\CulturalSpaceAreaBonus;
use Yunshop\CulturalSpace\models\CulturalSpaceAreaCycle;
class PluginApplication extends \app\common\services\PluginApplication{
protected function setMenuConfig(){
return [];
\app\backend\modules\menu\Menu::current()->setPluginMenu('cultural-space', [
'name' => '文创空间',
'type' => 'marketing',
'url' => 'plugin.cultural-space.admin.contribution.index',// url 可以填写http 也可以直接写路由
'url_params' => '',//如果是url填写的是路由则启用参数否则不启用
'permit' => 1,//如果不设置则不会做权限检测
'menu' => 1,//如果不设置则不显示菜单,子菜单也将不显示
'icon' => '',//菜单图标
'list_icon' => 'cultural-space',
'parents' => [],
'top_show' => 0,
'left_first_show' => 0,
'left_second_show' => 1,
'child' => [
'plugin_cultural_space_contribution' => [
'name' => '贡献值管理',
'permit' => 1,
'menu' => 1,
'icon' => '',
'url' => 'plugin.cultural-space.admin.contribution.index',
'url_params' => '',
'item' => 'plugin_cultural_space_contribution',
'parents' => ['cultural-space'],
'child' => [
// 权限补充
'plugin_cultural_space_contribution_index' => [
'name' => '贡献值管理',
'url' => 'plugin.cultural-space.admin.contribution.index',
'url_params' => '',
'permit' => 1,
'menu' => 0,
'icon' => '',
'item' => 'plugin_cultural_space_contribution_index',
'parents' => ['cultural-space','plugin_cultural_space_contribution']
],
]
],
'plugin_cultural_space_fund_pool' => [
'name' => '基金池',
'permit' => 1,
'menu' => 1,
'icon' => '',
'url' => 'plugin.cultural-space.admin.fund.index',
'url_params' => '',
'item' => 'plugin_cultural_space_fund',
'parents' => ['cultural-space'],
'child' => [
// 权限补充
'plugin_cultural_space_fund_index' => [
'name' => '基金池',
'url' => 'plugin.cultural-space.admin.fund.index',
'url_params' => '',
'permit' => 1,
'menu' => 0,
'icon' => '',
'item' => 'plugin_cultural_space_fund_index',
'parents' => ['cultural-space','plugin_cultural_space_fund']
],
]
],
'plugin_cultural_space_legumes' => [
'name' => '易出申请',
'permit' => 1,
'menu' => 1,
'icon' => '',
'url' => 'plugin.cultural-space.admin.legumes.withdrawalApply',
'url_params' => '',
'item' => 'plugin_cultural_space_legumes',
'parents' => ['cultural-space'],
'child' => [
// 权限补充
'plugin_cultural_space_legumes_withdrawal' => [
'name' => '易出申请',
'url' => 'plugin.cultural-space.admin.legumes.withdrawalApply',
'url_params' => '',
'permit' => 1,
'menu' => 0,
'icon' => '',
'item' => 'plugin_cultural_space_legumes_withdrawal',
'parents' => ['cultural-space','plugin_cultural_space_legumes']
],
]
],
'plugin_cultural_space_area_bonus' => [
'name' => '市场津贴',
'permit' => 1,
'menu' => 1,
'icon' => '',
'url' => 'plugin.cultural-space.admin.area_bonus.index',
'url_params' => '',
'item' => 'plugin_cultural_space_area_bonus',
'parents' => ['cultural-space'],
'child' => [
// 权限补充
'plugin_cultural_space_area_bonus_index' => [
'name' => '市场津贴',
'url' => 'plugin.cultural-space.admin.area_bonus.index',
'url_params' => '',
'permit' => 1,
'menu' => 0,
'icon' => '',
'item' => 'plugin_cultural_space_area_bonus_index',
'parents' => ['cultural-space','plugin_cultural_space_area_bonus']
],
]
],
'plugin_cultural_space_set' => [
'name' => '基本设置',
'permit' => 1,
'menu' => 1,
'icon' => '',
'url' => 'plugin.cultural-space.admin.index.set',
'url_params' => '',
'parents' => ['cultural-space'],
'child' => [
// 权限补充
'plugin_cultural_space_index_set' => [
'name' => '基本设置',
'url' => 'plugin.cultural-space.admin.index.set',
'url_params' => '',
'permit' => 1,
'menu' => 0,
'icon' => '',
'item' => 'plugin_cultural_space_index_set',
'parents' => ['cultural-space', 'plugin_cultural_space_set'],
]
]
],
]
]);
}
public function getWidgetItems()
{
return [
'withdraw.contribution_bonus' => [
'title' => '贡献分享分红提现',
'class' => 'Yunshop\CulturalSpace\admin\widget\CulturalSpaceWithdrawWidget',
],
'vue-goods.cultural_space' => [
'title' => '文创空间',
'class' => \Yunshop\CulturalSpace\admin\widget\CulturalSpaceWidget::class,
],
];
}
protected function setConfig(){
\app\common\modules\shop\ShopConfig::current()->set(
'observer.goods.cultural_space', [
'class' => 'Yunshop\CulturalSpace\models\GoodsCulturalSpace',
'function_save' => 'relationSave'
]
);
}
public function getIncomeItems(){
return [
'contributionBonus' => [
'title' => '贡献分享分红',
'type' => 'contributionBonus',
'type_name' => '贡献分享分红',
'class' => 'Yunshop\CulturalSpace\models\ContributionBonusLog',
]
];
}
public function boot(){
$events = app('events');
// 订单支付成功
$events->subscribe(OrderPaidListener::class);
}
public function cronConfig(){
\Event::listen('cron.collectJobs', function () {
// 每天0点30分 执行一次贡献分享分红处理
\Cron::add('cultural-space-contribution-bonus', '30 0 * * *', function () {
\Log::debug('--- 文创空间 - 贡献分享分红 - 开始 ----');
(new ContributionBonusLog())->bonusInit();
return;
});
// 每天1点30分 执行一次贡献分享分红结算
\Cron::add('cultural-space-contribution-bonus-settlement', '30 1 * * *', function () {
\Log::debug('--- 文创空间 - 贡献分享分红 - 结算开始 ----');
(new ContributionBonusLog())->contributionBonusSettlement();
return;
});
// 每天0点5分 执行一次市场津贴
\Cron::add('cultural-space-area-cycle', '5 0 * * *', function () {
\Log::debug('--- 文创空间 - 市场津贴 - 开启处理 ----');
(new CulturalSpaceAreaCycle())->bonusInit();
return;
});
// 每天1点30分 执行一次市场津贴结算 todo不结算到提现
/*\Cron::add('cultural-space-area-bonus', '30 1 * * *', function () {
\Log::debug('--- 文创空间 - 市场津贴 - 开启结算 ----');
(new CulturalSpaceAreaBonus())->bonusSettlement();
return;
});*/
});
}
}