🚩后羿 - TenSunS Release v1.0.0
parent
8357abac91
commit
46f03bf1ae
|
@ -18,6 +18,7 @@ parser = reqparse.RequestParser()
|
|||
parser.add_argument('username',type=str)
|
||||
parser.add_argument('password',type=str)
|
||||
parser.add_argument('title',type=str)
|
||||
parser.add_argument('height',type=str)
|
||||
parser.add_argument('ldap',type=str)
|
||||
parser.add_argument('file',type=FileStorage, location="files", help="File is wrong.")
|
||||
|
||||
|
@ -25,6 +26,9 @@ class Logo(Resource):
|
|||
@token_auth.auth.login_required
|
||||
def post(self, logo_opt):
|
||||
if logo_opt == 'nologo':
|
||||
height = parser.parse_args().get("height")
|
||||
height = '450' if height == "" else height
|
||||
consul_kv.put_kv('ConsulManager/img/logoheight',height)
|
||||
consul_kv.put_kv('ConsulManager/img/biglogo','R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7')
|
||||
consul_kv.put_kv('ConsulManager/img/isbig',True)
|
||||
return {"code": 20000, "data": "设置成功!"}
|
||||
|
@ -75,7 +79,11 @@ class Logo(Resource):
|
|||
consul_kv_path = 'ConsulManager/img/smallogo'
|
||||
b64logo = consul_kv.get_value(consul_kv_path)
|
||||
if b64logo:
|
||||
return {"code": 20000, "isbig": isbig, "data": 'data:image/png;base64,' + b64logo}
|
||||
if b64logo == 'R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7':
|
||||
logoheight = consul_kv.get_value('ConsulManager/img/logoheight')
|
||||
return {"code": 20000, "isbig": isbig, "data": 'data:image/png;base64,' + b64logo, "logoheight": logoheight}
|
||||
else:
|
||||
return {"code": 20000, "isbig": isbig, "data": 'data:image/png;base64,' + b64logo}
|
||||
else:
|
||||
return {"code": 20000, "isbig": isbig, "data": 'default'}
|
||||
elif logo_opt == 'title':
|
||||
|
|
|
@ -7,10 +7,11 @@ export function logo() {
|
|||
})
|
||||
}
|
||||
|
||||
export function postnologo() {
|
||||
export function postnologo(height) {
|
||||
return request({
|
||||
url: '/api/login/nologo',
|
||||
method: 'post'
|
||||
method: 'post',
|
||||
data: { height }
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
<p><el-button type="primary" size="mini" icon="el-icon-star-off" circle />支持阿里/华为/腾讯云采集ECS外网IP功能</p>
|
||||
<p><el-button type="success" size="mini" icon="el-icon-star-off" circle />支持华为云ECS采集到期日指标</p>
|
||||
<p><el-button type="warning" size="mini" icon="el-icon-star-off" circle />优化云ECS资源推送到JumpServer3.x资产管理</p>
|
||||
<p><el-button type="info" size="mini" icon="el-icon-star-off" circle />优化自建资源/站点监控查询分页</p>
|
||||
<p><el-button type="info" size="mini" icon="el-icon-star-off" circle />优化自建资源/站点监控查询分页</p>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="2023/07/26" placement="top">
|
||||
|
|
|
@ -68,19 +68,39 @@
|
|||
<br><el-button type="primary" @click="setresmall">恢复默认LOGO风格</el-button>
|
||||
</div></el-col>
|
||||
</el-row><br>
|
||||
<el-divider><i class="el-icon-s-promotion" /></el-divider>
|
||||
<el-divider><i class="el-icon-s-promotion" />展示名称</el-divider>
|
||||
<el-form :inline="true" :model="formtitle" class="demo-form-inline">
|
||||
<el-form-item label="登录页名称">
|
||||
<el-input v-model="formtitle.title" placeholder="请输入" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<span slot="label">
|
||||
<span class="span-box">
|
||||
<span>登录页名称</span>
|
||||
<el-tooltip style="diaplay:inline" effect="dark" content="登录页面展示的名称,仅在LOGO风格的时候会展示名称。" placement="top">
|
||||
<i class="el-icon-info" />
|
||||
</el-tooltip>
|
||||
</span>
|
||||
</span>
|
||||
<el-input v-model="formtitle.title" placeholder="默认显示:TenSunS" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="setitle">设置名称</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="info" icon="el-icon-refresh-left" @click="setretitle">恢复默认名称</el-button>
|
||||
</el-form-item>
|
||||
<el-divider><i class="el-icon-s-promotion" />壁纸模式</el-divider>
|
||||
<el-form-item>
|
||||
<el-button type="warning" icon="el-icon-magic-stick" @click="setnologo">进入壁纸模式</el-button>
|
||||
<span slot="label">
|
||||
<span class="span-box">
|
||||
<span>登录框位置</span>
|
||||
<el-tooltip style="diaplay:inline" effect="dark" content="登录框位置仅壁纸模式可用,默认位置的值是450,增大该值,登录框位置下移。" placement="top">
|
||||
<i class="el-icon-info" />
|
||||
</el-tooltip>
|
||||
</span>
|
||||
</span>
|
||||
<el-input v-model="formtitle.height" placeholder="壁纸模式默认位置值:450" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="warning" icon="el-icon-magic-stick" @click="setnologo">设置并进入壁纸模式</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
|
@ -97,7 +117,7 @@ export default {
|
|||
imageUrl1: '',
|
||||
imageUrl2: '',
|
||||
imageUrl3: '',
|
||||
formtitle: { title: '' }
|
||||
formtitle: { title: '', height: '' }
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
@ -123,7 +143,7 @@ export default {
|
|||
},
|
||||
|
||||
setnologo() {
|
||||
postnologo().then(response => {
|
||||
postnologo(this.formtitle.height).then(response => {
|
||||
this.$message.success(response.data)
|
||||
})
|
||||
},
|
||||
|
|
|
@ -1,152 +0,0 @@
|
|||
<template>
|
||||
<div>
|
||||
<el-upload
|
||||
class="avatar-uploader"
|
||||
action="/api/login/bgimg"
|
||||
:headers="myHeaders"
|
||||
:show-file-list="false"
|
||||
:on-success="handleAvatarSuccess"
|
||||
:before-upload="beforeAvatarUpload"
|
||||
>
|
||||
<img v-if="imageUrl" :src="imageUrl" class="avatar">
|
||||
<i v-else class="el-icon-plus avatar-uploader-icon" />
|
||||
</el-upload>
|
||||
<el-upload
|
||||
class="avatar-uploader"
|
||||
action="/api/login/biglogo"
|
||||
:headers="myHeaders"
|
||||
:show-file-list="false"
|
||||
:on-success="handleAvatarSuccess"
|
||||
:before-upload="beforeAvatarUpload"
|
||||
>
|
||||
<img v-if="imageUrl" :src="imageUrl" class="avatar">
|
||||
<i v-else class="el-icon-plus avatar-uploader-icon" />
|
||||
</el-upload>
|
||||
|
||||
<el-upload
|
||||
class="avatar-uploader"
|
||||
action="/api/login/smallogo"
|
||||
:headers="myHeaders"
|
||||
:show-file-list="false"
|
||||
:on-success="handleAvatarSuccess"
|
||||
:before-upload="beforeAvatarUpload"
|
||||
>
|
||||
<img v-if="imageUrl" :src="imageUrl" class="avatar">
|
||||
<i v-else class="el-icon-plus avatar-uploader-icon" />
|
||||
</el-upload>
|
||||
|
||||
<el-form :inline="true" :model="formtitle" class="demo-form-inline">
|
||||
<el-form-item label="登录页名称">
|
||||
<el-input v-model="formtitle.title" placeholder="请输入" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="setitle">设置名称</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="setretitle">恢复默认名称</el-button>
|
||||
</el-form-item>
|
||||
<br>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="setnologo">壁纸模式</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="setrebig">恢复默认横幅</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="setresmall">恢复默认Logo</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="setrebgimg">恢复默认壁纸</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { postitle, postnologo, rebig, resmall, rebgimg, retitle } from '@/api/login'
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
myHeaders: { Authorization: this.$store.getters.token },
|
||||
imageUrl: '',
|
||||
formtitle: { title: '' }
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
setrebig() {
|
||||
rebig().then(response => {
|
||||
this.$message.success(response.data)
|
||||
})
|
||||
},
|
||||
setresmall() {
|
||||
resmall().then(response => {
|
||||
this.$message.success(response.data)
|
||||
})
|
||||
},
|
||||
setrebgimg() {
|
||||
rebgimg().then(response => {
|
||||
this.$message.success(response.data)
|
||||
})
|
||||
},
|
||||
setretitle() {
|
||||
retitle().then(response => {
|
||||
this.$message.success(response.data)
|
||||
})
|
||||
},
|
||||
|
||||
setnologo() {
|
||||
postnologo().then(response => {
|
||||
this.$message.success(response.data)
|
||||
})
|
||||
},
|
||||
setitle() {
|
||||
postitle(this.formtitle.title).then(response => {
|
||||
this.$message.success(response.data)
|
||||
})
|
||||
},
|
||||
handleAvatarSuccess(res, file) {
|
||||
this.imageUrl = URL.createObjectURL(file.raw)
|
||||
this.$message.success('LOGO设置成功!')
|
||||
},
|
||||
beforeAvatarUpload(file) {
|
||||
const isJPG = file.type === 'image/jpeg' || file.type === 'image/png'
|
||||
const isLt2M = file.size / 1024 < 512
|
||||
if (!isJPG) {
|
||||
this.$message.error('上传LOGO图片只能是 JPG/PNG 格式!')
|
||||
}
|
||||
if (!isLt2M) {
|
||||
this.$message.error('上传LOGO图片大小不能超过 512KB!')
|
||||
}
|
||||
return isJPG && isLt2M
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.avatar-uploader .el-upload {
|
||||
border: 1px dashed #d9d9d9;
|
||||
border-radius: 6px;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
.avatar-uploader .el-upload:hover {
|
||||
border-color: #409EFF;
|
||||
}
|
||||
.avatar-uploader-icon {
|
||||
font-size: 28px;
|
||||
color: #8c939d;
|
||||
width: 178px;
|
||||
height: 178px;
|
||||
line-height: 178px;
|
||||
text-align: center;
|
||||
}
|
||||
.avatar {
|
||||
width: 178px;
|
||||
height: 178px;
|
||||
display: block;
|
||||
}
|
||||
</style>
|
|
@ -95,7 +95,7 @@ export default {
|
|||
loginbgimg: '',
|
||||
logintitle: 'T e n S u n S',
|
||||
isbig: true,
|
||||
height: 330,
|
||||
height: '330',
|
||||
redirect: undefined
|
||||
}
|
||||
},
|
||||
|
@ -125,7 +125,7 @@ export default {
|
|||
}
|
||||
} else {
|
||||
if (response.data === 'data:image/png;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7') {
|
||||
this.height = 450
|
||||
this.height = response.logoheight
|
||||
}
|
||||
this.loginlogo = response.data
|
||||
this.isbig = response.isbig
|
||||
|
|
Loading…
Reference in New Issue