| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- <?php
- namespace app\migrations;
- use common\enums\StatusEnum;
- use common\models\backend\Menu;
- use common\models\rbac\AuthItem;
- use yii\db\Migration;
- /**
- * Class M230815063347InsertBackendDigitalMenu
- */
- class M230815063347InsertBackendDigitalMenu extends Migration
- {
- /**
- * {@inheritdoc}
- */
- public function safeUp()
- {
- try {
- $pid = Menu::find()->where(['and', ['status' => StatusEnum::ENABLED], ['url' => 'mall/finance/stat'], ['app_id' => 'backend']])->select('id')->limit(1)->scalar();
- if (empty($pid)) throw new \Exception("上级菜单不存在");
- $menu_sql = "INSERT INTO `qimall_menu`(`title`, `app_id`, `cate_id`, `addons_name`, `is_addon`, `pid`, `url`, `icon`, `level`, `dev`, `sort`, `params`, `tree`, `status`, `created_at`, `updated_at`) VALUES ('数字币明细', 'backend', 2, '', 0, {$pid}, 'mall/digital/index', '', 2, 0, 999, NULL, 'tr_0 tr_{$pid}', 1, 1686800793, 1686800793);";
- $this->execute($menu_sql);
- $prbac_id = AuthItem::find()->where(['and', ['status' => StatusEnum::ENABLED], ['name' => 'mall/finance/stat'], ['app_id' => 'backend']])->select('id')->limit(1)->scalar();
- if (empty($prbac_id)) throw new \Exception("上级菜单权限不存在");
- $auth_item_sql = "INSERT INTO `qimall_rbac_auth_item`(`name`, `title`, `app_id`, `addons_name`, `pid`, `level`, `is_addon`, `sort`, `tree`, `status`, `created_at`, `updated_at`, `cate_id`) VALUES ('mall/digital/index', '数字币明细', 'backend', '', {$prbac_id}, 2, 0, 999, 'tr_0 tr_{$prbac_id}', 1, 1686800794, 1686800794, 2);";
- $this->execute($auth_item_sql);
- } catch (\Exception $e) {
- echo "添加数字币明细菜单失败err: " . $e->getMessage() . PHP_EOL;
- }
- }
- /**
- * {@inheritdoc}
- */
- public function safeDown()
- {
- echo "M230815063347InsertBackendDigitalMenu cannot be reverted.\n";
- return false;
- }
- /*
- // Use up()/down() to run migration code without a transaction.
- public function up()
- {
- }
- public function down()
- {
- echo "M230815063347InsertBackendDigitalMenu cannot be reverted.\n";
- return false;
- }
- */
- }
|