[notice]数据库迁移脚本

This commit is contained in:
2025-06-23 18:17:28 +08:00
parent a19e13280a
commit 879982f3f3
2 changed files with 108 additions and 0 deletions

View File

@ -0,0 +1,54 @@
<?php
use think\admin\extend\PhinxExtend;
use think\migration\Migrator;
@set_time_limit(0);
@ini_set('memory_limit', -1);
class InstallNoticeTable extends Migrator
{
/**
* 获取脚本名称
* @return string
*/
public function getName(): string
{
return 'NoticePlugin';
}
/**
* 创建数据库
*/
public function change()
{
$this->_create_notice();
}
/**
* 创建数据对象
* @class JlNoticeNotice
* @table jl_notice_notice
* @return void
*/
private function _create_notice()
{
// 创建数据表对象
$table = $this->table('jl_notice_notice', [
'engine' => 'InnoDB', 'collation' => 'utf8mb4_general_ci', 'comment' => '消息通知',
]);
// 创建或更新数据表
PhinxExtend::upgrade($table, [
['staff_id', 'integer', ['default' => NULL, 'null' => false, 'comment' => '员工ID']],
['type', 'string', ['limit' => 255, 'default' => NULL, 'null' => true, 'comment' => '类型']],
['content', 'string', ['limit' => 255, 'default' => NULL, 'null' => true, 'comment' => '信息内容']],
['link', 'string', ['limit' => 255, 'default' => NULL, 'null' => true, 'comment' => '跳转链接(如果有)']],
['create_at', 'datetime', ['default' => 'CURRENT_TIMESTAMP', 'null' => false, 'comment' => '创建时间']],
['read_at', 'datetime', ['default' => NULL, 'null' => true, 'comment' => '已读时间']],
], [
'type', 'staff_id',
], false);
}
}

View File

@ -0,0 +1,54 @@
<?php
use jerryyan\notice\Service;
use think\admin\extend\PhinxExtend;
use think\migration\Migrator;
@set_time_limit(0);
@ini_set('memory_limit', -1);
/**
* 系统模块数据
*/
class InstallNoticeMenu extends Migrator
{
/**
* 获取脚本名称
* @return string
*/
public function getName(): string
{
return 'NoticePlugin';
}
/**
* 创建数据库
*/
public function change()
{
$this->insertMenu();
}
/**
* 初始化系统菜单
* @return void
* @throws \Exception
*/
private function insertMenu()
{
// 初始化菜单数据
PhinxExtend::write2menu([
[
'name' => '消息通知',
'sort' => '105',
'subs' => Service::menu(),
],
], [
'url|node' => 'notice/notice/index'
]);
}
}