mirror of
https://gitee.com/zoujingli/ThinkAdmin.git
synced 2025-04-05 19:41:44 +08:00
优化后台任务显示
This commit is contained in:
parent
e81291c7ab
commit
16feb95ed9
@ -44,8 +44,9 @@ class Base extends Controller
|
||||
public function index()
|
||||
{
|
||||
$this->_query(SystemBase::class)->layTable(function () {
|
||||
$this->applyTypes();
|
||||
$this->title = '数据字典管理';
|
||||
$this->types = (new SystemBase)->types();
|
||||
$this->type = input('get.type') ?: ($this->types[0] ?? '-');
|
||||
}, function (QueryHelper $query) {
|
||||
$query->where(['deleted' => 0])->equal('type')->like('code,name,status')->dateBetween('create_at');
|
||||
});
|
||||
@ -82,9 +83,14 @@ class Base extends Controller
|
||||
protected function _form_filter(array &$data)
|
||||
{
|
||||
if ($this->request->isGet()) {
|
||||
$this->applyTypes(true);
|
||||
$this->types = (new SystemBase)->types();
|
||||
$this->types[] = '--- 新增类型 ---';
|
||||
$this->type = input('get.type') ?: ($this->types[0] ?? '-');
|
||||
} else {
|
||||
$map = [['type', '=', $data['type']], ['code', '=', $data['code']], ['deleted', '=', 0]];
|
||||
$map = [];
|
||||
$map[] = ['deleted', '=', 0];
|
||||
$map[] = ['code', '=', $data['code']];
|
||||
$map[] = ['type', '=', $data['type']];
|
||||
if (isset($data['id'])) $map[] = ['id', '<>', $data['id']];
|
||||
if ($this->app->db->name($this->table)->where($map)->count() > 0) {
|
||||
$this->error("同类型的数据编码已经存在!");
|
||||
@ -111,17 +117,4 @@ class Base extends Controller
|
||||
{
|
||||
$this->_delete($this->table);
|
||||
}
|
||||
|
||||
/**
|
||||
* 初始化数据类型
|
||||
* @param false $add
|
||||
*/
|
||||
private function applyTypes(bool $add = false)
|
||||
{
|
||||
$query = $this->app->db->name($this->table)->where(['deleted' => 0]);
|
||||
$this->types = $query->distinct(true)->order('id asc')->column('type');
|
||||
if (empty($this->types)) $this->types = ['身份权限'];
|
||||
$this->type = input('get.type') ?: ($this->types[0] ?? '-');
|
||||
if ($add) $this->types[] = '--- 新增类型 ---';
|
||||
}
|
||||
}
|
@ -102,5 +102,4 @@ class Config extends Controller
|
||||
$this->success('修改文件存储成功!');
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -120,5 +120,4 @@ class Login extends Controller
|
||||
$this->app->session->destroy();
|
||||
$this->success('退出登录成功!', sysuri('admin/login/index'));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -100,5 +100,4 @@ class Oplog extends Controller
|
||||
{
|
||||
$this->_delete($this->table);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -70,8 +70,8 @@ class Queue extends Controller
|
||||
if ($item['status'] === 4) $this->total['ers'] = $item['count'];
|
||||
});
|
||||
}, function (QueryHelper $query) {
|
||||
$query->timeBetween('enter_time,exec_time')->dateBetween('create_at');
|
||||
$query->equal('status')->like('code,title,command');
|
||||
$query->timeBetween('enter_time,exec_time')->dateBetween('create_at');
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -264,5 +264,4 @@ class User extends Controller
|
||||
sysoplog('系统用户管理', "删除系统用户[{$id}]成功");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -116,5 +116,4 @@ class Runtime extends Controller
|
||||
$this->error('只有超级管理员才能操作!');
|
||||
}
|
||||
}
|
||||
|
||||
}
|
@ -74,5 +74,4 @@ class Update extends Controller
|
||||
{
|
||||
$this->success('获取模块信息成功!', ModuleService::instance()->getModules());
|
||||
}
|
||||
|
||||
}
|
@ -218,5 +218,4 @@ class Upload extends Controller
|
||||
foreach (['<?php ', '<% ', '<script '] as $key) if (stripos($bins, $key) !== false) return true;
|
||||
return preg_match("/(3c25.*?28.*?29.*?253e)|(3c3f.*?28.*?29.*?3f3e)|(3C534352495054)|(2F5343524950543E)|(3C736372697074)|(2F7363726970743E)/is", $hexs);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -22,6 +22,7 @@ use think\Model;
|
||||
* 数据字典数据模型
|
||||
* Class SystemBase
|
||||
* @package app\admin\model
|
||||
* @method \think\db\Query distinct(bool $true)
|
||||
*/
|
||||
class SystemBase extends Model
|
||||
{
|
||||
@ -41,6 +42,18 @@ class SystemBase extends Model
|
||||
return $bases;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所有数据类型
|
||||
* @param boolean $simple
|
||||
* @return array
|
||||
*/
|
||||
public function types(bool $simple = false): array
|
||||
{
|
||||
$types = $this->where(['deleted' => 0])->distinct(true)->column('type');
|
||||
if (empty($types) && empty($simple)) $types = ['身份权限'];
|
||||
return $types;
|
||||
}
|
||||
|
||||
/**
|
||||
* 格式化创建时间
|
||||
* @param string $value
|
||||
|
@ -31,7 +31,7 @@
|
||||
{field: 'desc', title: '权限描述', sort: false, align: 'center', templet: '<div>{{d.desc||"-"}}</div>'},
|
||||
{field: 'create_at', title: '创建时间', align: 'center', sort: true},
|
||||
{field: 'status', title: '权限状态', align: 'center', minWidth: 110, fixed: 'right', templet: '#StatusSwitchTpl'},
|
||||
{toolbar: '#toolbar', align: 'center', minWidth: 200, title: '权限操作', fixed: 'right'},
|
||||
{toolbar: '#toolbar', title: '操作面板', align: 'center', minWidth: 200, fixed: 'right'},
|
||||
]]
|
||||
});
|
||||
|
||||
|
@ -54,7 +54,7 @@
|
||||
</td>
|
||||
<td class='text-center'><i class="{$vo.icon} font-s18"></i></td>
|
||||
<td class="nowrap"><span class="color-desc">{$vo.spl|raw}</span>{$vo.title}</td>
|
||||
<td class='layui-hide-xs'>{$vo.url}</td>
|
||||
<td class='layui-hide-xs layui-elip'>{$vo.url}</td>
|
||||
<td class='text-center nowrap'>{eq name='vo.status' value='0'}<span class="color-red">已禁用</span>{else}<span class="color-green">已激活</span>{/eq}</td>
|
||||
<td class='text-center nowrap notselect'>
|
||||
|
||||
|
@ -32,7 +32,7 @@
|
||||
{field: 'geoip', title: '访问地址', sort: true},
|
||||
{field: 'geoisp', title: '网络服务商', sort: false},
|
||||
{field: 'create_at', title: '操作时间', minWidth: 170, align: 'center', sort: true},
|
||||
{toolbar: '#toolbar', align: 'center', fixed: 'right'}
|
||||
{toolbar: '#toolbar', title: '操作面板', align: 'center', fixed: 'right'}
|
||||
]]
|
||||
});
|
||||
});
|
||||
|
@ -69,10 +69,10 @@
|
||||
cols: [[
|
||||
{checkbox: true, fixed: 'left'},
|
||||
{field: 'code', title: '任务编号', width: 140, sort: true},
|
||||
{field: 'title', title: '任务名称', minWidth: 160},
|
||||
{field: 'command', title: '任务指令', minWidth: 160},
|
||||
{field: 'title', title: '任务名称', minWidth: 150},
|
||||
{field: 'command', title: '任务指令', minWidth: 150},
|
||||
{
|
||||
field: 'exec_time', title: '计划时间', minWidth: 250, templet: function (d) {
|
||||
field: 'exec_time', title: '计划时间', minWidth: 245, templet: function (d) {
|
||||
d.exec_time = d.exec_time || 0, d.loops_time = d.loops_time || 0;
|
||||
if (d.loops_time > 0) {
|
||||
return d.exec_time + ' ( 每 <b class="color-blue">' + d.loops_time + '</b> 秒 ) ';
|
||||
@ -87,13 +87,14 @@
|
||||
if (d.enter_time.length > 12) {
|
||||
return d.enter_time.substr(12) + '<span class="color-desc"> ( 耗时 ' + d.outer_time + ' )</span>';
|
||||
} else {
|
||||
return '<span class="color-desc">未执行</span>'
|
||||
return '<span class="color-desc">任务未执行</span>'
|
||||
}
|
||||
}
|
||||
},
|
||||
{field: 'attempts', title: '执行次数', minWidth: 80, align: 'center', sort: true, templet: "<div>{{d.attempts||0}}</div>"},
|
||||
{field: 'create_at', title: '创建时间', minWidth: 170, align: 'center'},
|
||||
{toolbar: '#toolbar', title: '操作面板', align: 'left', fixed: 'right', minWidth: 270}
|
||||
{field: 'attempts', title: '执行次数', width: 95, align: 'center', sort: true, templet: "<div>{{d.attempts||0}}</div>"},
|
||||
{field: 'exec_desc', title: '执行结果', minWidth: 180},
|
||||
{field: 'create_at', title: '创建时间', minWidth: 170},
|
||||
{toolbar: '#toolbar', title: '操作面板', align: 'left', fixed: 'right', minWidth: 225}
|
||||
]]
|
||||
});
|
||||
});
|
||||
|
@ -33,7 +33,7 @@
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
{if !empty($authorizes) || !empty($bases)}
|
||||
{if !empty($bases) || !empty($authorizes)}
|
||||
<fieldset>
|
||||
<legend><b class="layui-badge think-bg-violet">用户权限</b></legend>
|
||||
{if !empty($bases)}
|
||||
@ -53,11 +53,11 @@
|
||||
<div class="layui-form-item">
|
||||
<span class="color-green font-w7">访问权限</span>
|
||||
<span class="color-desc margin-left-5">User Permission</span>
|
||||
<div class="layui-textarea" style="min-height:50px">
|
||||
<div class="layui-textarea" style="min-height:42px;line-height:28px">
|
||||
{if isset($vo.username) and $vo.username eq $superName}
|
||||
<span class="color-desc">超级用户不需要配置权限</span>
|
||||
{else}{foreach $authorizes as $authorize}
|
||||
<label class="think-checkbox layui-unselect">
|
||||
<label class="think-checkbox layui-unselect margin-top-5">
|
||||
{if in_array($authorize.id, $vo.authorize)}
|
||||
<input type="checkbox" checked name="authorize[]" value="{$authorize.id}" lay-ignore>{$authorize.title}
|
||||
{else}
|
||||
|
@ -55,7 +55,7 @@
|
||||
{field: 'login_at', title: '最后登录', sort: true, align: 'center', minWidth: 170},
|
||||
{field: 'create_at', title: '创建时间', align: 'center', minWidth: 170, sort: true},
|
||||
{field: 'status', title: '权限状态', align: 'center', minWidth: 110, fixed: 'right', templet: '#StatusSwitchTpl'},
|
||||
{toolbar: '#toolbar', title: '操作', align: 'center', minWidth: 160, fixed: 'right'}
|
||||
{toolbar: '#toolbar', title: '操作面板', align: 'center', minWidth: 160, fixed: 'right'}
|
||||
]]
|
||||
});
|
||||
|
||||
|
@ -361,7 +361,9 @@ $(function () {
|
||||
}).trigger('resize');
|
||||
/*! Mini 菜单模式时TIPS文字显示 */
|
||||
$('[data-target-tips]').mouseenter(function () {
|
||||
if ($menu.hasClass(miniClass)) $(this).attr('index', layer.tips(this.dataset.targetTips || '', this));
|
||||
if ($menu.hasClass(miniClass)) {
|
||||
$(this).attr('index', layer.tips(this.dataset.targetTips || '', this, {time: 0}));
|
||||
}
|
||||
}).mouseleave(function () {
|
||||
layer.close($(this).attr('index'));
|
||||
});
|
||||
@ -559,11 +561,13 @@ $(function () {
|
||||
|
||||
/*! 全局文件上传入口 */
|
||||
$.fn.uploadFile = function (callable) {
|
||||
if (this.data('inited')) return false;
|
||||
var that = this, mult = '|one|btn|'.indexOf(this.data('file') || 'one') ? 0 : 1;
|
||||
this.data('inited', true).data('multiple', mult), require(['upload'], function (apply) {
|
||||
return this.each(function () {
|
||||
if ($(this).data('inited')) return false;
|
||||
var that = $(this), mult = '|one|btn|'.indexOf(that.data('file') || 'one') ? 0 : 1;
|
||||
that.data('inited', true).data('multiple', mult), require(['upload'], function (apply) {
|
||||
apply.call(this, that, callable);
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
/*! 上传单张图片 */
|
||||
@ -592,7 +596,7 @@ $(function () {
|
||||
|
||||
function showImageContainer(srcs) {
|
||||
$(srcs).each(function (idx, src, $image) {
|
||||
$image = $('<div class="uploadimage uploadimagemtl transition"><a class="layui-icon margin-right-5"></a><a class="layui-icon margin-right-5">ဆ</a><a class="layui-icon margin-right-5"></a></div>');
|
||||
$image = $('<div class="uploadimage uploadimagemtl transition"><a class="layui-icon"></a><a class="layui-icon">ဆ</a><a class="layui-icon"></a></div>');
|
||||
$image.attr('data-tips-image', encodeURI(src)).css('backgroundImage', 'url(' + encodeURI(src) + ')').on('click', 'a', function (event, index, prevs, $item) {
|
||||
event.stopPropagation(), $item = $(this).parent(), index = $(this).index(), prevs = $bt.prevAll('div.uploadimage').length;
|
||||
if (index === 0 && $item.index() !== prevs) $item.next().after($item);
|
||||
@ -864,6 +868,18 @@ $(function () {
|
||||
onEvent('click', '[data-tips-image]', function () {
|
||||
$.previewImage(this.dataset.tipsImage || this.dataset.lazySrc || this.src, this.dataset.with);
|
||||
});
|
||||
/*! 注册 data-tips-image Hover 事件 */
|
||||
onEvent('mouseenter', '[data-tips-image][data-tips-hover]', function () {
|
||||
var img = new Image(), that = this;
|
||||
img.referrerPolicy = 'no-referrer', img.style.maxWidth = '260px', img.style.maxHeight = '260px';
|
||||
img.src = this.dataset.tipsImage || this.dataset.lazySrc || this.src, img.onload = function () {
|
||||
$(that).attr('index', layer.tips(img.outerHTML, that, {time: 0, skin: 'layui-layer-image', scrollbar: false, anim: 5, isOutAnim: false}));
|
||||
}
|
||||
$(this).off('mouseleave').on('mouseleave', function () {
|
||||
layer.close($(this).attr('index'));
|
||||
});
|
||||
})
|
||||
|
||||
$.previewImage = function (src, area) {
|
||||
var img = new Image(), defer = $.Deferred(), load = $.msg.loading();
|
||||
img.style.background = '#FFFFFF', img.referrerPolicy = 'no-referrer';
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -106,174 +106,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
.pull- {
|
||||
&left {
|
||||
float: left !important
|
||||
}
|
||||
|
||||
&right {
|
||||
float: right !important
|
||||
}
|
||||
}
|
||||
|
||||
.full- {
|
||||
&width {
|
||||
width: 100% !important
|
||||
}
|
||||
|
||||
&height {
|
||||
height: 100% !important
|
||||
}
|
||||
}
|
||||
|
||||
.color- {
|
||||
&red {
|
||||
color: #e44 !important
|
||||
}
|
||||
|
||||
&blue {
|
||||
color: #29f !important
|
||||
}
|
||||
|
||||
&desc {
|
||||
color: #999 !important
|
||||
}
|
||||
|
||||
&text {
|
||||
color: #333 !important
|
||||
}
|
||||
|
||||
&green {
|
||||
color: #090 !important
|
||||
}
|
||||
}
|
||||
|
||||
.sub-span- {
|
||||
&red span {
|
||||
color: #e44 !important
|
||||
}
|
||||
|
||||
&blue span {
|
||||
color: #29f !important
|
||||
}
|
||||
|
||||
&desc span {
|
||||
color: #999 !important
|
||||
}
|
||||
|
||||
&text span {
|
||||
color: #333 !important
|
||||
}
|
||||
|
||||
&green span {
|
||||
color: #090 !important
|
||||
}
|
||||
}
|
||||
|
||||
.sub-strong- {
|
||||
&s10 b {
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
&s12 b {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
&s14 b {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
&red b {
|
||||
color: #ec494e !important
|
||||
}
|
||||
|
||||
&blue b {
|
||||
color: #2494f2 !important
|
||||
}
|
||||
|
||||
&desc b {
|
||||
color: #999 !important
|
||||
}
|
||||
|
||||
&text b {
|
||||
color: #333 !important
|
||||
}
|
||||
|
||||
&green b {
|
||||
color: #090 !important
|
||||
}
|
||||
}
|
||||
|
||||
.text- {
|
||||
&top {
|
||||
vertical-align: top !important
|
||||
}
|
||||
|
||||
&left {
|
||||
text-align: left !important
|
||||
}
|
||||
|
||||
&right {
|
||||
text-align: right !important
|
||||
}
|
||||
|
||||
¢er {
|
||||
text-align: center !important
|
||||
}
|
||||
|
||||
&middle {
|
||||
vertical-align: middle !important
|
||||
}
|
||||
|
||||
&bottom {
|
||||
vertical-align: bottom !important
|
||||
}
|
||||
}
|
||||
|
||||
.think-bg- {
|
||||
&white {
|
||||
background: white !important
|
||||
}
|
||||
|
||||
&blue {
|
||||
background: linear-gradient(-125deg, #57bdbf, #2f9de2) !important
|
||||
}
|
||||
|
||||
&orig {
|
||||
background: linear-gradient(-141deg, #ecca1b, #f39526) !important
|
||||
}
|
||||
|
||||
&red {
|
||||
background: linear-gradient(-125deg, #ff7d7d, #fb2c95) !important
|
||||
}
|
||||
|
||||
&gray {
|
||||
background: linear-gradient(-113deg, #EEEEEE, #EFEFEF) !important
|
||||
}
|
||||
|
||||
&violet {
|
||||
background: linear-gradient(-113deg, #c543d8, #925cc3) !important
|
||||
}
|
||||
}
|
||||
|
||||
/* 分隔线条 */
|
||||
.hr-line- {
|
||||
&dashed {
|
||||
color: #fff;
|
||||
height: 1px;
|
||||
margin: 15px 0;
|
||||
background-color: #fff;
|
||||
border-top: 1px dashed #e7eaec
|
||||
}
|
||||
|
||||
&solid {
|
||||
margin-top: 15px;
|
||||
margin-bottom: 15px;
|
||||
border-bottom: 1px solid #e7eaec;
|
||||
background-color: rgba(0, 0, 0, 0)
|
||||
}
|
||||
}
|
||||
|
||||
.input-right-icon {
|
||||
top: 1px;
|
||||
right: 1px;
|
||||
@ -292,6 +124,17 @@
|
||||
}
|
||||
}
|
||||
|
||||
[data-tips-image] {
|
||||
cursor: zoom-in !important
|
||||
}
|
||||
|
||||
[data-lazy-src] {
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
background-size: cover;
|
||||
background-position: center center;
|
||||
}
|
||||
|
||||
/** 加载进度 */
|
||||
.pace-inactive {
|
||||
display: none
|
||||
@ -338,14 +181,15 @@
|
||||
margin-right: 8px;
|
||||
|
||||
a {
|
||||
color: #fff;
|
||||
float: right;
|
||||
color: #EEE;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
float: right;
|
||||
margin: 4px 4px 0 0;
|
||||
display: none;
|
||||
text-align: center;
|
||||
line-height: 22px;
|
||||
background: rgba(0, 0, 0, .5)
|
||||
line-height: 20px;
|
||||
background: rgba(0, 0, 0, 0.6);
|
||||
}
|
||||
|
||||
&:hover a {
|
||||
@ -353,21 +197,36 @@
|
||||
display: inline-block;
|
||||
|
||||
&:hover {
|
||||
color: #fff;
|
||||
color: #FFF;
|
||||
text-decoration: none
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[data-tips-image] {
|
||||
cursor: zoom-in !important
|
||||
.upload-image-smbox,
|
||||
.upload-image-mdbox,
|
||||
.upload-image-lgbox {
|
||||
a {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
margin: 1px 1px 0 0;
|
||||
line-height: 30px;
|
||||
}
|
||||
}
|
||||
|
||||
[data-lazy-src] {
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
background-size: cover;
|
||||
background-position: center center;
|
||||
.upload-image-smbox .uploadimage {
|
||||
width: 120px;
|
||||
height: 120px;
|
||||
}
|
||||
|
||||
.upload-image-mdbox .uploadimage {
|
||||
width: 180px;
|
||||
height: 180px;
|
||||
}
|
||||
|
||||
.upload-image-lgbox .uploadimage {
|
||||
width: 260px;
|
||||
height: 260px;
|
||||
}
|
||||
|
||||
.portal-block-container {
|
||||
@ -477,59 +336,171 @@
|
||||
}
|
||||
}
|
||||
|
||||
.border {
|
||||
&-0 {
|
||||
border: 0 !important
|
||||
/* 分隔线条 */
|
||||
.hr-line- {
|
||||
&dashed {
|
||||
color: #fff;
|
||||
height: 1px;
|
||||
margin: 15px 0;
|
||||
background-color: #fff;
|
||||
border-top: 1px dashed #e7eaec
|
||||
}
|
||||
|
||||
&-line {
|
||||
border: 1px solid @BoxBorderColor;
|
||||
&solid {
|
||||
margin-top: 15px;
|
||||
margin-bottom: 15px;
|
||||
border-bottom: 1px solid #e7eaec;
|
||||
background-color: rgba(0, 0, 0, 0)
|
||||
}
|
||||
}
|
||||
|
||||
&-bottom-line {
|
||||
border-bottom: 1px solid @BoxBorderColor;
|
||||
.pull- {
|
||||
&left {
|
||||
float: left !important
|
||||
}
|
||||
|
||||
&-top-0 {
|
||||
border-top: 0 !important;
|
||||
&right {
|
||||
float: right !important
|
||||
}
|
||||
}
|
||||
|
||||
&-left-0 {
|
||||
border-left: 0 !important;
|
||||
.full- {
|
||||
&width {
|
||||
width: 100% !important
|
||||
}
|
||||
|
||||
&-right-0 {
|
||||
border-right: 0 !important;
|
||||
&height {
|
||||
height: 100% !important
|
||||
}
|
||||
}
|
||||
|
||||
&-bottom-0 {
|
||||
border-bottom: 0 !important;
|
||||
.color- {
|
||||
&red {
|
||||
color: #e44 !important
|
||||
}
|
||||
|
||||
&-radius {
|
||||
border-radius: 50% !important;
|
||||
|
||||
&-0 {
|
||||
border-radius: 0 !important
|
||||
&blue {
|
||||
color: #29f !important
|
||||
}
|
||||
|
||||
&-5 {
|
||||
border-radius: 5px !important;
|
||||
&desc {
|
||||
color: #999 !important
|
||||
}
|
||||
|
||||
&-6 {
|
||||
border-radius: 6px !important;
|
||||
&text {
|
||||
color: #333 !important
|
||||
}
|
||||
|
||||
&-left-0 {
|
||||
border-top-left-radius: 0 !important;
|
||||
border-bottom-left-radius: 0 !important
|
||||
&green {
|
||||
color: #090 !important
|
||||
}
|
||||
}
|
||||
|
||||
&-right-0 {
|
||||
border-top-right-radius: 0 !important;
|
||||
border-bottom-right-radius: 0 !important
|
||||
.sub-span- {
|
||||
&red span {
|
||||
color: #e44 !important
|
||||
}
|
||||
|
||||
&blue span {
|
||||
color: #29f !important
|
||||
}
|
||||
|
||||
&desc span {
|
||||
color: #999 !important
|
||||
}
|
||||
|
||||
&text span {
|
||||
color: #333 !important
|
||||
}
|
||||
|
||||
&green span {
|
||||
color: #090 !important
|
||||
}
|
||||
}
|
||||
|
||||
.sub-strong- {
|
||||
&s10 b {
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
&s12 b {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
&s14 b {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
&red b {
|
||||
color: #ec494e !important
|
||||
}
|
||||
|
||||
&blue b {
|
||||
color: #2494f2 !important
|
||||
}
|
||||
|
||||
&desc b {
|
||||
color: #999 !important
|
||||
}
|
||||
|
||||
&text b {
|
||||
color: #333 !important
|
||||
}
|
||||
|
||||
&green b {
|
||||
color: #090 !important
|
||||
}
|
||||
}
|
||||
|
||||
.think-bg- {
|
||||
&white {
|
||||
background: white !important
|
||||
}
|
||||
|
||||
&blue {
|
||||
background: linear-gradient(-125deg, #57bdbf, #2f9de2) !important
|
||||
}
|
||||
|
||||
&orig {
|
||||
background: linear-gradient(-141deg, #ecca1b, #f39526) !important
|
||||
}
|
||||
|
||||
&red {
|
||||
background: linear-gradient(-125deg, #ff7d7d, #fb2c95) !important
|
||||
}
|
||||
|
||||
&gray {
|
||||
background: linear-gradient(-113deg, #EEEEEE, #EFEFEF) !important
|
||||
}
|
||||
|
||||
&violet {
|
||||
background: linear-gradient(-113deg, #c543d8, #925cc3) !important
|
||||
}
|
||||
}
|
||||
|
||||
.text- {
|
||||
&top {
|
||||
vertical-align: top !important
|
||||
}
|
||||
|
||||
&left {
|
||||
text-align: left !important
|
||||
}
|
||||
|
||||
&right {
|
||||
text-align: right !important
|
||||
}
|
||||
|
||||
¢er {
|
||||
text-align: center !important
|
||||
}
|
||||
|
||||
&middle {
|
||||
vertical-align: middle !important
|
||||
}
|
||||
|
||||
&bottom {
|
||||
vertical-align: bottom !important
|
||||
}
|
||||
}
|
||||
|
||||
@ -615,245 +586,62 @@
|
||||
}
|
||||
}
|
||||
|
||||
.padding {
|
||||
.border {
|
||||
&-0 {
|
||||
padding: 0 !important
|
||||
border: 0 !important
|
||||
}
|
||||
|
||||
&-line {
|
||||
border: 1px solid @BoxBorderColor;
|
||||
}
|
||||
|
||||
&-bottom-line {
|
||||
border-bottom: 1px solid @BoxBorderColor;
|
||||
}
|
||||
|
||||
&-top-0 {
|
||||
border-top: 0 !important;
|
||||
}
|
||||
|
||||
&-left-0 {
|
||||
border-left: 0 !important;
|
||||
}
|
||||
|
||||
&-right-0 {
|
||||
border-right: 0 !important;
|
||||
}
|
||||
|
||||
&-bottom-0 {
|
||||
border-bottom: 0 !important;
|
||||
}
|
||||
|
||||
&-radius {
|
||||
border-radius: 50% !important;
|
||||
|
||||
&-0 {
|
||||
border-radius: 0 !important
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding: 5px !important
|
||||
border-radius: 5px !important;
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding: 10px !important
|
||||
&-6 {
|
||||
border-radius: 6px !important;
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding: 15px !important
|
||||
&-left-0 {
|
||||
border-top-left-radius: 0 !important;
|
||||
border-bottom-left-radius: 0 !important
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding: 20px !important
|
||||
}
|
||||
|
||||
&-25 {
|
||||
padding: 25px !important
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding: 30px !important
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding: 40px !important
|
||||
}
|
||||
|
||||
&-col {
|
||||
&-0 {
|
||||
padding-left: 0 !important;
|
||||
padding-right: 0 !important;
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-left: 5px !important;
|
||||
padding-right: 5px !important;
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-left: 10px !important;
|
||||
padding-right: 10px !important;
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-left: 15px !important;
|
||||
padding-right: 15px !important;
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-left: 20px !important;
|
||||
padding-right: 20px !important;
|
||||
}
|
||||
|
||||
&-25 {
|
||||
padding-left: 25px !important;
|
||||
padding-right: 25px !important;
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-left: 30px !important;
|
||||
padding-right: 30px !important;
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-left: 40px !important;
|
||||
padding-right: 40px !important;
|
||||
}
|
||||
}
|
||||
|
||||
&-row {
|
||||
&-0 {
|
||||
padding-top: 0 !important;
|
||||
padding-bottom: 0 !important;
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-top: 5px !important;
|
||||
padding-bottom: 5px !important;
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-top: 10px !important;
|
||||
padding-bottom: 10px !important;
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-top: 15px !important;
|
||||
padding-bottom: 15px !important;
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-top: 20px !important;
|
||||
padding-bottom: 20px !important;
|
||||
}
|
||||
|
||||
&-25 {
|
||||
padding-top: 25px !important;
|
||||
padding-bottom: 25px !important;
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-top: 30px !important;
|
||||
padding-bottom: 30px !important;
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-top: 40px !important;
|
||||
padding-bottom: 40px !important;
|
||||
}
|
||||
}
|
||||
|
||||
&-top {
|
||||
&-0 {
|
||||
padding-top: 0 !important
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-top: 5px !important
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-top: 10px !important
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-top: 15px !important
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-top: 20px !important
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-top: 30px !important
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-top: 40px !important
|
||||
}
|
||||
}
|
||||
|
||||
&-left {
|
||||
&-0 {
|
||||
padding-left: 0 !important
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-left: 5px !important
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-left: 10px !important
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-left: 15px !important
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-left: 20px !important
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-left: 30px !important
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-left: 40px !important
|
||||
}
|
||||
}
|
||||
|
||||
&-right {
|
||||
&-0 {
|
||||
padding-right: 0 !important
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-right: 5px !important
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-right: 10px !important
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-right: 15px !important
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-right: 20px !important
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-right: 30px !important
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-right: 40px !important
|
||||
}
|
||||
}
|
||||
|
||||
&-bottom {
|
||||
&-0 {
|
||||
padding-bottom: 0 !important
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-bottom: 5px !important
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-bottom: 10px !important
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-bottom: 15px !important
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-bottom: 20px !important
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-bottom: 30px !important
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-bottom: 40px !important
|
||||
&-right-0 {
|
||||
border-top-right-radius: 0 !important;
|
||||
border-bottom-right-radius: 0 !important
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.margin {
|
||||
&-0 {
|
||||
margin: 0 !important
|
||||
@ -1107,3 +895,241 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.padding {
|
||||
&-0 {
|
||||
padding: 0 !important
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding: 5px !important
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding: 10px !important
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding: 15px !important
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding: 20px !important
|
||||
}
|
||||
|
||||
&-25 {
|
||||
padding: 25px !important
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding: 30px !important
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding: 40px !important
|
||||
}
|
||||
|
||||
&-col {
|
||||
&-0 {
|
||||
padding-left: 0 !important;
|
||||
padding-right: 0 !important;
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-left: 5px !important;
|
||||
padding-right: 5px !important;
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-left: 10px !important;
|
||||
padding-right: 10px !important;
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-left: 15px !important;
|
||||
padding-right: 15px !important;
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-left: 20px !important;
|
||||
padding-right: 20px !important;
|
||||
}
|
||||
|
||||
&-25 {
|
||||
padding-left: 25px !important;
|
||||
padding-right: 25px !important;
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-left: 30px !important;
|
||||
padding-right: 30px !important;
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-left: 40px !important;
|
||||
padding-right: 40px !important;
|
||||
}
|
||||
}
|
||||
|
||||
&-row {
|
||||
&-0 {
|
||||
padding-top: 0 !important;
|
||||
padding-bottom: 0 !important;
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-top: 5px !important;
|
||||
padding-bottom: 5px !important;
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-top: 10px !important;
|
||||
padding-bottom: 10px !important;
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-top: 15px !important;
|
||||
padding-bottom: 15px !important;
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-top: 20px !important;
|
||||
padding-bottom: 20px !important;
|
||||
}
|
||||
|
||||
&-25 {
|
||||
padding-top: 25px !important;
|
||||
padding-bottom: 25px !important;
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-top: 30px !important;
|
||||
padding-bottom: 30px !important;
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-top: 40px !important;
|
||||
padding-bottom: 40px !important;
|
||||
}
|
||||
}
|
||||
|
||||
&-top {
|
||||
&-0 {
|
||||
padding-top: 0 !important
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-top: 5px !important
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-top: 10px !important
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-top: 15px !important
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-top: 20px !important
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-top: 30px !important
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-top: 40px !important
|
||||
}
|
||||
}
|
||||
|
||||
&-left {
|
||||
&-0 {
|
||||
padding-left: 0 !important
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-left: 5px !important
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-left: 10px !important
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-left: 15px !important
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-left: 20px !important
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-left: 30px !important
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-left: 40px !important
|
||||
}
|
||||
}
|
||||
|
||||
&-right {
|
||||
&-0 {
|
||||
padding-right: 0 !important
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-right: 5px !important
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-right: 10px !important
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-right: 15px !important
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-right: 20px !important
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-right: 30px !important
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-right: 40px !important
|
||||
}
|
||||
}
|
||||
|
||||
&-bottom {
|
||||
&-0 {
|
||||
padding-bottom: 0 !important
|
||||
}
|
||||
|
||||
&-5 {
|
||||
padding-bottom: 5px !important
|
||||
}
|
||||
|
||||
&-10 {
|
||||
padding-bottom: 10px !important
|
||||
}
|
||||
|
||||
&-15 {
|
||||
padding-bottom: 15px !important
|
||||
}
|
||||
|
||||
&-20 {
|
||||
padding-bottom: 20px !important
|
||||
}
|
||||
|
||||
&-30 {
|
||||
padding-bottom: 30px !important
|
||||
}
|
||||
|
||||
&-40 {
|
||||
padding-bottom: 40px !important
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,4 @@
|
||||
@charset "UTF-8";
|
||||
@charset "UTF-8";
|
||||
@import "console.config.less";
|
||||
|
||||
// +----------------------------------------------------------------------
|
||||
@ -72,6 +71,22 @@ fieldset {
|
||||
}
|
||||
}
|
||||
|
||||
.layui-layer-tips {
|
||||
&.layui-layer-image .layui-layer-content {
|
||||
width: auto !important;
|
||||
padding: 4px !important;
|
||||
|
||||
img {
|
||||
z-index: 2;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
i.layui-layer-TipsR {
|
||||
z-index: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.layui-tab, .layui-card {
|
||||
border-radius: @BoxBorderRadius;
|
||||
}
|
||||
@ -237,7 +252,6 @@ fieldset {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* 表单验证异常提示 */
|
||||
.label-required {
|
||||
&-prev:before {
|
||||
|
Loading…
x
Reference in New Issue
Block a user