mirror of
https://gitee.com/ulthon/ulthon_admin.git
synced 2026-07-05 17:42:49 +08:00
优化curd命令的调用方式;调整后台工作台内容;优化版本命令代码
This commit is contained in:
@@ -106,95 +106,7 @@
|
|||||||
|
|
||||||
<div class="layui-col-md4">
|
<div class="layui-col-md4">
|
||||||
|
|
||||||
<div class="layui-card">
|
|
||||||
<div class="layui-card-header"><i class="fa fa-bullhorn icon icon-tip"></i>系统公告</div>
|
|
||||||
<div class="layui-card-body layui-text">
|
|
||||||
<div class="layuimini-notice">
|
|
||||||
<div class="layuimini-notice-title">修改选项卡样式</div>
|
|
||||||
<div class="layuimini-notice-extra">2019-07-11 23:06</div>
|
|
||||||
<div class="layuimini-notice-content layui-hide">
|
|
||||||
界面足够简洁清爽。<br>
|
|
||||||
一个接口几行代码而已直接初始化整个框架,无需复杂操作。<br>
|
|
||||||
支持多tab,可以打开多窗口。<br>
|
|
||||||
支持无限级菜单和对font-awesome图标库的完美支持。<br>
|
|
||||||
失效以及报错菜单无法直接打开,并给出弹出层提示完美的线上用户体验。<br>
|
|
||||||
url地址hash定位,可以清楚看到当前tab的地址信息。<br>
|
|
||||||
刷新页面会保留当前的窗口,并且会定位当前窗口对应左侧菜单栏。<br>
|
|
||||||
移动端的友好支持。<br>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="layuimini-notice">
|
|
||||||
<div class="layuimini-notice-title">新增系统404模板</div>
|
|
||||||
<div class="layuimini-notice-extra">2019-07-11 12:57</div>
|
|
||||||
<div class="layuimini-notice-content layui-hide">
|
|
||||||
界面足够简洁清爽。<br>
|
|
||||||
一个接口几行代码而已直接初始化整个框架,无需复杂操作。<br>
|
|
||||||
支持多tab,可以打开多窗口。<br>
|
|
||||||
支持无限级菜单和对font-awesome图标库的完美支持。<br>
|
|
||||||
失效以及报错菜单无法直接打开,并给出弹出层提示完美的线上用户体验。<br>
|
|
||||||
url地址hash定位,可以清楚看到当前tab的地址信息。<br>
|
|
||||||
刷新页面会保留当前的窗口,并且会定位当前窗口对应左侧菜单栏。<br>
|
|
||||||
移动端的友好支持。<br>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="layuimini-notice">
|
|
||||||
<div class="layuimini-notice-title">新增treetable插件和菜单管理样式</div>
|
|
||||||
<div class="layuimini-notice-extra">2019-07-05 14:28</div>
|
|
||||||
<div class="layuimini-notice-content layui-hide">
|
|
||||||
界面足够简洁清爽。<br>
|
|
||||||
一个接口几行代码而已直接初始化整个框架,无需复杂操作。<br>
|
|
||||||
支持多tab,可以打开多窗口。<br>
|
|
||||||
支持无限级菜单和对font-awesome图标库的完美支持。<br>
|
|
||||||
失效以及报错菜单无法直接打开,并给出弹出层提示完美的线上用户体验。<br>
|
|
||||||
url地址hash定位,可以清楚看到当前tab的地址信息。<br>
|
|
||||||
刷新页面会保留当前的窗口,并且会定位当前窗口对应左侧菜单栏。<br>
|
|
||||||
移动端的友好支持。<br>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="layuimini-notice">
|
|
||||||
<div class="layuimini-notice-title">修改logo缩放问题</div>
|
|
||||||
<div class="layuimini-notice-extra">2019-07-04 11:02</div>
|
|
||||||
<div class="layuimini-notice-content layui-hide">
|
|
||||||
界面足够简洁清爽。<br>
|
|
||||||
一个接口几行代码而已直接初始化整个框架,无需复杂操作。<br>
|
|
||||||
支持多tab,可以打开多窗口。<br>
|
|
||||||
支持无限级菜单和对font-awesome图标库的完美支持。<br>
|
|
||||||
失效以及报错菜单无法直接打开,并给出弹出层提示完美的线上用户体验。<br>
|
|
||||||
url地址hash定位,可以清楚看到当前tab的地址信息。<br>
|
|
||||||
刷新页面会保留当前的窗口,并且会定位当前窗口对应左侧菜单栏。<br>
|
|
||||||
移动端的友好支持。<br>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="layuimini-notice">
|
|
||||||
<div class="layuimini-notice-title">修复左侧菜单缩放tab无法移动</div>
|
|
||||||
<div class="layuimini-notice-extra">2019-06-17 11:55</div>
|
|
||||||
<div class="layuimini-notice-content layui-hide">
|
|
||||||
界面足够简洁清爽。<br>
|
|
||||||
一个接口几行代码而已直接初始化整个框架,无需复杂操作。<br>
|
|
||||||
支持多tab,可以打开多窗口。<br>
|
|
||||||
支持无限级菜单和对font-awesome图标库的完美支持。<br>
|
|
||||||
失效以及报错菜单无法直接打开,并给出弹出层提示完美的线上用户体验。<br>
|
|
||||||
url地址hash定位,可以清楚看到当前tab的地址信息。<br>
|
|
||||||
刷新页面会保留当前的窗口,并且会定位当前窗口对应左侧菜单栏。<br>
|
|
||||||
移动端的友好支持。<br>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="layuimini-notice">
|
|
||||||
<div class="layuimini-notice-title">修复多模块菜单栏展开有问题</div>
|
|
||||||
<div class="layuimini-notice-extra">2019-06-13 14:53</div>
|
|
||||||
<div class="layuimini-notice-content layui-hide">
|
|
||||||
界面足够简洁清爽。<br>
|
|
||||||
一个接口几行代码而已直接初始化整个框架,无需复杂操作。<br>
|
|
||||||
支持多tab,可以打开多窗口。<br>
|
|
||||||
支持无限级菜单和对font-awesome图标库的完美支持。<br>
|
|
||||||
失效以及报错菜单无法直接打开,并给出弹出层提示完美的线上用户体验。<br>
|
|
||||||
url地址hash定位,可以清楚看到当前tab的地址信息。<br>
|
|
||||||
刷新页面会保留当前的窗口,并且会定位当前窗口对应左侧菜单栏。<br>
|
|
||||||
移动端的友好支持。<br>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="layui-card">
|
<div class="layui-card">
|
||||||
<div class="layui-card-header"><i class="fa fa-fire icon"></i>版本信息</div>
|
<div class="layui-card-header"><i class="fa fa-fire icon"></i>版本信息</div>
|
||||||
@@ -213,7 +125,11 @@
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>当前版本</td>
|
<td>当前版本</td>
|
||||||
<td>v2.0.0</td>
|
<td>{:\\app\\common\\command\\admin\\Version::VERSION}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>最新修改</td>
|
||||||
|
<td>{:implode('<br />',\\app\\common\\command\\admin\\Version::COMMENT)}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>主要特色</td>
|
<td>主要特色</td>
|
||||||
@@ -233,11 +149,17 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="layui-card">
|
||||||
|
<div class="layui-card-header"><i class="fa fa-bullhorn icon icon-tip"></i>系统公告</div>
|
||||||
|
<div class="layui-card-body layui-text">
|
||||||
|
<script src='https://gitee.com/ulthon/ulthon_admin/widget_preview' async defer></script>
|
||||||
|
<div id="osc-gitee-widget-tag"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="layui-card">
|
<div class="layui-card">
|
||||||
<div class="layui-card-header"><i class="fa fa-paper-plane-o icon"></i>作者心语</div>
|
<div class="layui-card-header"><i class="fa fa-paper-plane-o icon"></i>作者心语</div>
|
||||||
<div class="layui-card-body layui-text layadmin-text">
|
<div class="layui-card-body layui-text layadmin-text">
|
||||||
<p>本模板基于layui2.5.4以及font-awesome-4.7.0进行实现。layui开发文档地址:<a class="layui-btn layui-btn-xs layui-btn-danger" target="_blank" href="http://www.layui.com/doc">layui文档</a></p>
|
<p>本模板基于layui2.7.4以及font-awesome-4.7.0进行实现。layui开发文档地址:<a class="layui-btn layui-btn-xs layui-btn-danger" target="_blank" href="https://layui.gitee.io/v2/">layui文档</a></p>
|
||||||
<p>技术交流QQ群:<a target="_blank" href="https://jq.qq.com/?_wv=1027&k=TULvsosz"><img border="0" src="//pub.idqqimg.com/wpa/images/group.png" alt="layuimini" title="layuimini"></a>(加群请备注来源:如gitee、github、官网等)</p>
|
<p>技术交流QQ群:<a target="_blank" href="https://jq.qq.com/?_wv=1027&k=TULvsosz"><img border="0" src="//pub.idqqimg.com/wpa/images/group.png" alt="layuimini" title="layuimini"></a>(加群请备注来源:如gitee、github、官网等)</p>
|
||||||
<p>喜欢此后台模板的可以给我的GitHub和Gitee加个Star支持一下</p>
|
<p>喜欢此后台模板的可以给我的GitHub和Gitee加个Star支持一下</p>
|
||||||
<p class="layui-red">备注:此后台框架永久开源,但请勿进行出售或者上传到任何素材网站,否则将追究相应的责任。</p>
|
<p class="layui-red">备注:此后台框架永久开源,但请勿进行出售或者上传到任何素材网站,否则将追究相应的责任。</p>
|
||||||
|
|||||||
@@ -20,8 +20,8 @@ class Curd extends Command
|
|||||||
->addOption('controllerFilename', 'c', Option::VALUE_REQUIRED, '控制器文件名', null)
|
->addOption('controllerFilename', 'c', Option::VALUE_REQUIRED, '控制器文件名', null)
|
||||||
->addOption('modelFilename', 'm', Option::VALUE_REQUIRED, '主表模型文件名', null)
|
->addOption('modelFilename', 'm', Option::VALUE_REQUIRED, '主表模型文件名', null)
|
||||||
#
|
#
|
||||||
->addOption('force', 'f', Option::VALUE_REQUIRED, '强制覆盖模式', 0)
|
->addOption('force', 'f', Option::VALUE_NONE, '强制覆盖模式')
|
||||||
->addOption('delete', 'd', Option::VALUE_REQUIRED, '删除模式', 0)
|
->addOption('delete', 'd', Option::VALUE_NONE, '删除模式')
|
||||||
->setDescription('一键curd命令服务');
|
->setDescription('一键curd命令服务');
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -32,8 +32,16 @@ class Curd extends Command
|
|||||||
$controllerFilename = $input->getOption('controllerFilename');
|
$controllerFilename = $input->getOption('controllerFilename');
|
||||||
$modelFilename = $input->getOption('modelFilename');
|
$modelFilename = $input->getOption('modelFilename');
|
||||||
|
|
||||||
$force = $input->getOption('force');
|
$force = 0;
|
||||||
$delete = $input->getOption('delete');
|
$delete = 0;
|
||||||
|
|
||||||
|
if ($input->hasOption('force')) {
|
||||||
|
$force = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($input->hasOption('delete')) {
|
||||||
|
$delete = 1;
|
||||||
|
}
|
||||||
|
|
||||||
if (empty($table)) {
|
if (empty($table)) {
|
||||||
$output->error('请设置主表');
|
$output->error('请设置主表');
|
||||||
@@ -47,10 +55,8 @@ class Curd extends Command
|
|||||||
|
|
||||||
$columns = $build->getTableColumns();
|
$columns = $build->getTableColumns();
|
||||||
|
|
||||||
|
|
||||||
$relations = [];
|
$relations = [];
|
||||||
|
|
||||||
|
|
||||||
foreach ($columns as $field => $column) {
|
foreach ($columns as $field => $column) {
|
||||||
|
|
||||||
if (isset($column['formType']) && $column['formType'] == 'relation') {
|
if (isset($column['formType']) && $column['formType'] == 'relation') {
|
||||||
|
|||||||
@@ -14,10 +14,13 @@ use think\facade\App;
|
|||||||
class Version extends Command
|
class Version extends Command
|
||||||
{
|
{
|
||||||
|
|
||||||
const VERSION = 'v2.0.7';
|
const VERSION = 'v2.0.8';
|
||||||
|
|
||||||
const COMMENT = [
|
const COMMENT = [
|
||||||
'给版本命令增加自动推送功能',
|
'优化curd命令的调用方式',
|
||||||
|
'调整后台工作台内容',
|
||||||
|
'优化版本命令代码',
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
protected function configure()
|
protected function configure()
|
||||||
@@ -48,12 +51,14 @@ class Version extends Command
|
|||||||
$is_push_tag = $input->hasOption('push-tag');
|
$is_push_tag = $input->hasOption('push-tag');
|
||||||
|
|
||||||
if ($is_push_tag) {
|
if ($is_push_tag) {
|
||||||
$root_path = App::getRootPath();
|
$output->writeln('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>');
|
||||||
|
|
||||||
$version = $this::VERSION;
|
$version = $this::VERSION;
|
||||||
$comment = implode(';', $this::COMMENT);
|
$comment = implode(';', $this::COMMENT);
|
||||||
|
$output->info('生成标签:' . $version);
|
||||||
|
$output->info('标签描述:' . $comment);
|
||||||
exec("git tag -a $version -m \"$comment\"");
|
exec("git tag -a $version -m \"$comment\"");
|
||||||
|
$output->info('推送到远程仓库');
|
||||||
exec("git push --tags");
|
exec("git push --tags");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,22 +1,105 @@
|
|||||||
.layui-card {border:1px solid #f2f2f2;border-radius:5px;}
|
.layui-card {
|
||||||
.icon {margin-right:10px;color:#1aa094;}
|
border : 1px solid #f2f2f2;
|
||||||
.icon-cray {color:#ffb800!important;}
|
border-radius: 5px;
|
||||||
.icon-blue {color:#1e9fff!important;}
|
}
|
||||||
.icon-tip {color:#ff5722!important;}
|
|
||||||
.layuimini-qiuck-module {text-align:center;margin-top: 10px}
|
.icon {
|
||||||
.layuimini-qiuck-module a i {display:inline-block;width:100%;height:60px;line-height:60px;text-align:center;border-radius:2px;font-size:30px;background-color:#F8F8F8;color:#333;transition:all .3s;-webkit-transition:all .3s;}
|
margin-right: 10px;
|
||||||
.layuimini-qiuck-module a cite {position:relative;top:2px;display:block;color:#666;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:14px;}
|
color : #1aa094;
|
||||||
.welcome-module {width:100%;height:210px;}
|
}
|
||||||
.panel {background-color:#fff;border:1px solid transparent;border-radius:3px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}
|
|
||||||
.panel-body {padding:10px}
|
.icon-cray {
|
||||||
.panel-title {margin-top:0;margin-bottom:0;font-size:12px;color:inherit}
|
color: #ffb800 !important;
|
||||||
.label {display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em;margin-top: .3em;}
|
}
|
||||||
.layui-red {color:red}
|
|
||||||
.main_btn > p {height:40px;}
|
.icon-blue {
|
||||||
.layui-bg-number {background-color:#F8F8F8;}
|
color: #1e9fff !important;
|
||||||
.layuimini-notice:hover {background:#f6f6f6;}
|
}
|
||||||
.layuimini-notice {padding:7px 16px;clear:both;font-size:12px !important;cursor:pointer;position:relative;transition:background 0.2s ease-in-out;}
|
|
||||||
.layuimini-notice-title,.layuimini-notice-label {
|
.icon-tip {
|
||||||
padding-right: 70px !important;text-overflow:ellipsis!important;overflow:hidden!important;white-space:nowrap!important;}
|
color: #ff5722 !important;
|
||||||
.layuimini-notice-title {line-height:28px;font-size:14px;}
|
}
|
||||||
.layuimini-notice-extra {position:absolute;top:50%;margin-top:-8px;right:16px;display:inline-block;height:16px;color:#999;}
|
|
||||||
|
.layuimini-qiuck-module {
|
||||||
|
text-align: center;
|
||||||
|
margin-top: 10px
|
||||||
|
}
|
||||||
|
|
||||||
|
.layuimini-qiuck-module a i {
|
||||||
|
display : inline-block;
|
||||||
|
width : 100%;
|
||||||
|
height : 60px;
|
||||||
|
line-height : 60px;
|
||||||
|
text-align : center;
|
||||||
|
border-radius : 2px;
|
||||||
|
font-size : 30px;
|
||||||
|
background-color : #F8F8F8;
|
||||||
|
color : #333;
|
||||||
|
transition : all .3s;
|
||||||
|
-webkit-transition: all .3s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layuimini-qiuck-module a cite {
|
||||||
|
position : relative;
|
||||||
|
top : 2px;
|
||||||
|
display : block;
|
||||||
|
color : #666;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
overflow : hidden;
|
||||||
|
white-space : nowrap;
|
||||||
|
font-size : 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.welcome-module {
|
||||||
|
width : 100%;
|
||||||
|
height: 210px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel {
|
||||||
|
background-color : #fff;
|
||||||
|
border : 1px solid transparent;
|
||||||
|
border-radius : 3px;
|
||||||
|
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
|
||||||
|
box-shadow : 0 1px 1px rgba(0, 0, 0, .05)
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-body {
|
||||||
|
padding: 10px
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-title {
|
||||||
|
margin-top : 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
font-size : 12px;
|
||||||
|
color : inherit
|
||||||
|
}
|
||||||
|
|
||||||
|
.label {
|
||||||
|
display : inline;
|
||||||
|
padding : .2em .6em .3em;
|
||||||
|
font-size : 75%;
|
||||||
|
font-weight : 700;
|
||||||
|
line-height : 1;
|
||||||
|
color : #fff;
|
||||||
|
text-align : center;
|
||||||
|
white-space : nowrap;
|
||||||
|
vertical-align: baseline;
|
||||||
|
border-radius : .25em;
|
||||||
|
margin-top : .3em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layui-red {
|
||||||
|
color: red
|
||||||
|
}
|
||||||
|
|
||||||
|
.main_btn>p {
|
||||||
|
height: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layui-bg-number {
|
||||||
|
background-color: #F8F8F8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.osc_link_color {
|
||||||
|
color: #9B9B9B !important
|
||||||
|
}
|
||||||
@@ -30,36 +30,6 @@ define(["jquery", "easy-admin", "echarts", "echarts-theme", "miniAdmin", "miniTa
|
|||||||
|
|
||||||
miniTab.listen();
|
miniTab.listen();
|
||||||
|
|
||||||
/**
|
|
||||||
* 查看公告信息
|
|
||||||
**/
|
|
||||||
$('body').on('click', '.layuimini-notice', function () {
|
|
||||||
var title = $(this).children('.layuimini-notice-title').text(),
|
|
||||||
noticeTime = $(this).children('.layuimini-notice-extra').text(),
|
|
||||||
content = $(this).children('.layuimini-notice-content').html();
|
|
||||||
var html = '<div style="padding:15px 20px; text-align:justify; line-height: 22px;border-bottom:1px solid #e2e2e2;background-color: #2f4056;color: #ffffff">\n' +
|
|
||||||
'<div style="text-align: center;margin-bottom: 20px;font-weight: bold;border-bottom:1px solid #718fb5;padding-bottom: 5px"><h4 class="text-danger">' + title + '</h4></div>\n' +
|
|
||||||
'<div style="font-size: 12px">' + content + '</div>\n' +
|
|
||||||
'</div>\n';
|
|
||||||
layer.open({
|
|
||||||
type: 1,
|
|
||||||
title: '系统公告' + '<span style="float: right;right: 1px;font-size: 12px;color: #b1b3b9;margin-top: 1px">' + noticeTime + '</span>',
|
|
||||||
area: '300px;',
|
|
||||||
shade: 0.8,
|
|
||||||
id: 'layuimini-notice',
|
|
||||||
btn: ['查看', '取消'],
|
|
||||||
btnAlign: 'c',
|
|
||||||
moveType: 1,
|
|
||||||
content: html,
|
|
||||||
success: function (layero) {
|
|
||||||
var btn = layero.find('.layui-layer-btn');
|
|
||||||
btn.find('.layui-layer-btn0').attr({
|
|
||||||
href: 'https://gitee.com/zhongshaofa/layuimini',
|
|
||||||
target: '_blank'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 报表功能
|
* 报表功能
|
||||||
|
|||||||
@@ -488,10 +488,6 @@ $box-shape: polygon(0 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%,
|
|||||||
color: $main-color;
|
color: $main-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
.layuimini-notice:hover {
|
|
||||||
background-color: $active-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.layuimini-qiuck-module {
|
.layuimini-qiuck-module {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|||||||
@@ -420,9 +420,7 @@
|
|||||||
.elem-style-sicfi .layui-text {
|
.elem-style-sicfi .layui-text {
|
||||||
color: rgb(126, 252, 246);
|
color: rgb(126, 252, 246);
|
||||||
}
|
}
|
||||||
.elem-style-sicfi .layuimini-notice:hover {
|
|
||||||
background-color: rgba(62, 251, 251, 0.5);
|
|
||||||
}
|
|
||||||
.elem-style-sicfi .layuimini-qiuck-module {
|
.elem-style-sicfi .layuimini-qiuck-module {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user