You've already forked think-plugs-notice
[notice]数据库迁移脚本
This commit is contained in:
54
stc/database/20250623000000_install_notice_table.php
Normal file
54
stc/database/20250623000000_install_notice_table.php
Normal 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);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
54
stc/database/20250623000001_install_notice_menu.php
Normal file
54
stc/database/20250623000001_install_notice_menu.php
Normal 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'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user