Compare commits

...

49 Commits

Author SHA1 Message Date
fit2bot
3ccfe6a18a feat: Update v3.2.0 2023-04-21 18:35:29 +08:00
“huailei000”
955dabb02f fix: 修复云同步更新实例任务IP网段组不显示问题 2023-04-21 14:28:58 +08:00
老广
f7901fcdf8 Merge pull request #3072 from jumpserver/pr@v3.2@fix_custom_platform
perf: 优化平台列表 tab
2023-04-21 10:13:49 +08:00
ibuler
6650ec8da0 perf: 优化平台列表 tab 2023-04-20 14:51:47 +00:00
ibuler
cb75a1620a perf: 优化账号切换的 disable 属性 2023-04-20 19:46:43 +08:00
ibuler
8f9d1f4ddf perf: 优化账号切换自显示
perf: 切换账号

perf: 修改缩进啊
2023-04-20 19:25:39 +08:00
feng626
44da5da8b6 Merge pull request #3066 from jumpserver/pr@v3.2@active
fix: 账号详情激活
2023-04-20 19:22:49 +08:00
feng
b8326ef880 fix: 账号详情激活 2023-04-20 19:21:47 +08:00
ibuler
45448513cb perf: 切换账号
perf: 修改缩进啊
2023-04-20 19:19:58 +08:00
Jiangjie.Bai
3117046342 Merge pull request #3061 from jumpserver/dev
v3.2.0
2023-04-20 18:40:08 +08:00
Bai
b68aecb5cc fix: 批量更新资产平台help-text 2023-04-20 18:39:22 +08:00
Jiangjie.Bai
1c9b155d97 Merge pull request #3057 from jumpserver/dev
v3.2.0
2023-04-20 18:22:46 +08:00
Jiangjie.Bai
75b1be9864 Merge pull request #3019 from jumpserver/dev
v3.2.0 rc2
2023-04-14 19:01:37 +08:00
Jiangjie.Bai
615c3c1cf4 Merge pull request #3014 from jumpserver/dev
v3.2.0 rc1
2023-04-13 20:02:38 +08:00
Jiangjie.Bai
4d82231af4 Merge pull request #3012 from jumpserver/dev
v3.2.0 rc1
2023-04-13 19:22:38 +08:00
“huailei000”
c6cf6571b6 perf: ldap导入用户列表-组织下拉框设置最大宽度 2023-03-16 16:44:36 +08:00
Bai
8ea990d070 fix: 修复创建资产添加账号模版报错问题 2023-03-16 16:44:36 +08:00
“huailei000”
f4a32170d5 perf: message 2023-03-16 16:44:36 +08:00
ibuler
073508675e perf: 添加默认的信息 2023-03-16 16:44:36 +08:00
Jiangjie.Bai
1d6ca0a93a Merge pull request #2924 from jumpserver/dev
v3.1.0 rc4
2023-03-15 19:46:31 +08:00
Jiangjie.Bai
36aea652d6 Merge pull request #2788 from jumpserver/dev
v3.0.0
2023-02-23 20:16:41 +08:00
Jiangjie.Bai
1a42ce90ab Merge pull request #2760 from jumpserver/dev
v3.0.0-rc-latest
2023-02-22 22:21:54 +08:00
Jiangjie.Bai
31a401b55d Merge pull request #2463 from jumpserver/dev
v3.0.0-rc4
2023-01-31 18:55:34 +08:00
Jiangjie.Bai
582a84178d Merge pull request #2187 from jumpserver/dev
v2.28.0
2022-11-17 17:44:19 +08:00
Jiangjie.Bai
9b9f7c936c Merge pull request #2184 from jumpserver/dev
v2.28.0-rc5
2022-11-17 14:18:15 +08:00
Jiangjie.Bai
2a6100957f Merge pull request #2182 from jumpserver/dev
v2.28.0-rc4
2022-11-16 21:08:55 +08:00
Jiangjie.Bai
16606d6a27 Merge pull request #2176 from jumpserver/dev
v2.28.0-rc2
2022-11-14 10:01:05 +08:00
Jiangjie.Bai
0a612f50e6 Merge pull request #2164 from jumpserver/dev
v2.28.0-rc1
2022-11-10 17:45:47 +08:00
Jiangjie.Bai
fe36fa9390 Merge pull request #2117 from jumpserver/dev
v2.27.0-rc4
2022-10-18 21:02:10 +08:00
Jiangjie.Bai
ba109900ec Merge pull request #2113 from jumpserver/dev
v2.27.0-rc3
2022-10-18 11:20:57 +08:00
Jiangjie.Bai
ec7768267f Merge pull request #2105 from jumpserver/dev
v2.27.0-rc2
2022-10-14 11:01:32 +08:00
Jiangjie.Bai
cc58b374ab Merge pull request #2101 from jumpserver/dev
v2.27.0-rc1
2022-10-13 17:44:53 +08:00
Jiangjie.Bai
04ffbb8fd6 Merge pull request #2097 from jumpserver/dev
v2.27.0-rc1
2022-10-13 15:14:40 +08:00
Jiangjie.Bai
49880f6739 Merge pull request #2059 from jumpserver/dev
v2.26.0
2022-09-15 17:49:44 +08:00
Jiangjie.Bai
e6f98d58c4 Merge pull request #2057 from jumpserver/dev
v2.26.0-rc4
2022-09-15 16:18:03 +08:00
Jiangjie.Bai
fd1f16d43c Merge pull request #2050 from jumpserver/dev
v2.26.0-rc2
2022-09-13 17:41:39 +08:00
Jiangjie.Bai
968b2415b1 Merge pull request #2043 from jumpserver/dev
v2.26.0-rc1
2022-09-08 15:46:44 +08:00
Jiangjie.Bai
776090d6ba Merge pull request #2001 from jumpserver/dev
v2.25.0
2022-08-18 16:12:45 +08:00
Jiangjie.Bai
3a37952288 Merge pull request #1996 from jumpserver/dev
v2.25.0-rc4
2022-08-17 16:53:23 +08:00
Jiangjie.Bai
62b8fc0e3b Merge pull request #1994 from jumpserver/dev
v2.25.0-rc3
2022-08-16 19:08:23 +08:00
Jiangjie.Bai
b2028869cb Merge pull request #1986 from jumpserver/dev
v2.25.0-rc2
2022-08-12 18:06:56 +08:00
Jiangjie.Bai
5277a725f8 Merge pull request #1973 from jumpserver/dev
v2.25.0-rc1
2022-08-11 14:11:59 +08:00
Jiangjie.Bai
f137788c1a Merge pull request #1957 from jumpserver/dev
v2.24.0-rc5
2022-07-20 19:06:03 +08:00
Jiangjie.Bai
f7d17c8de7 Merge pull request #1954 from jumpserver/dev
v2.24.0-rc4
2022-07-19 16:18:13 +08:00
Jiangjie.Bai
feea70b0be Merge pull request #1944 from jumpserver/dev
v2.24.0-rc3
2022-07-18 12:05:42 +08:00
Jiangjie.Bai
04696ef3d6 Merge pull request #1940 from jumpserver/dev
v2.24.0-rc2
2022-07-15 18:07:37 +08:00
Jiangjie.Bai
1731f4f788 Merge pull request #1934 from jumpserver/dev
v2.24.0-rc1
2022-07-14 18:27:51 +08:00
Jiangjie.Bai
6f25d93909 Merge pull request #1931 from jumpserver/dev
v2.24.0-rc1
2022-07-14 17:51:58 +08:00
Jiangjie.Bai
46461ec324 Merge pull request #1925 from jumpserver/dev
v2.24.0-rc1
2022-07-14 15:12:15 +08:00
7 changed files with 40 additions and 59 deletions

1
GITSHA Normal file
View File

@@ -0,0 +1 @@
955dabb02f5258167a547ca4502b6585fd0900ce

View File

@@ -204,7 +204,10 @@ export default {
helpText: this.$t('accounts.AccountPush.WindowsPushHelpText'),
hidden: () => {
const automation = this.iPlatform.automation || {}
return !automation.push_account_enabled || !automation.ansible_enabled || !this.$hasPerm('accounts.push_account') || this.addTemplate
return !automation.push_account_enabled ||
!automation.ansible_enabled ||
!this.$hasPerm('accounts.push_account') ||
this.addTemplate
}
},
params: {
@@ -280,16 +283,6 @@ export default {
return secretTypes.indexOf(item.value) > -1
})
},
controlShowField() {
const privileged = ['privileged']
let suFrom = ['su_from']
const filterSuFrom = ['database', 'device', 'cloud', 'web', 'windows']
const asset = this?.asset || {}
if (filterSuFrom.includes(asset?.category?.value) || filterSuFrom.includes(asset?.type?.value)) {
suFrom = []
}
return [...privileged, ...suFrom]
},
confirm(form) {
const secretType = form.secret_type || ''
if (secretType !== 'password') {

View File

@@ -1,17 +1,17 @@
<template>
<div>
<el-button
v-show="!isShow"
type="text"
class="button-text"
v-show="!iShowSelect"
:disabled="disabled"
@click="isShow=true"
class="button-text"
type="text"
@click="iShowSelect=true"
>
{{ iLabel }}
<svg-icon class-name="icon" icon-class="switch" />
</el-button>
<Select2
v-show="isShow"
v-show="iShowSelect"
ref="select2"
v-model="iValue"
:disabled="disabled"
@@ -41,7 +41,7 @@ export default {
},
showSelect: {
type: Boolean,
default: true
default: false
},
disabled: {
type: Boolean,
@@ -50,8 +50,8 @@ export default {
},
data() {
return {
isShow: this.showSelect,
iLabel: this.label
iShowSelect: this.showSelect,
iLabel: this.label || '-'
}
},
computed: {
@@ -67,14 +67,14 @@ export default {
created() {
const { path } = this.$route
if (hasUUID(path) && this.value) {
this.isShow = false
this.iShowSelect = false
}
},
methods: {
onSelectChange(val) {
const options = this.$refs.select2.options.filter(item => item.value === val)
const label = options.length > 0 ? options[0].label : ''
this.isShow = false
this.iShowSelect = false
this.iLabel = val ? label : '-'
}
}
@@ -84,8 +84,7 @@ export default {
<style scoped>
.button-text {
color: #676a6c;
padding-left: 0!important;
padding-right: 0!important;
padding: 5px!important;
}
.icon {
color: #676a6c!important;

View File

@@ -229,7 +229,7 @@
"AssetTree": "资产树",
"CustomTree": "自定义树",
"BuiltinTree": "类型树",
"UserSwitchFrom": "用户切换自",
"UserSwitchFrom": "切换自",
"sshkeyAccount": "密钥账号",
"passwordAccount": "密码账号",
"Category": "类别",

View File

@@ -12,9 +12,9 @@
:visible.sync="showViewSecretDialog"
/>
<AutomationParamsForm
:visible.sync="autoPushVisible"
:has-button="false"
:method="pushAccountMethod"
:visible.sync="autoPushVisible"
@canSetting="onCanSetting"
@submit="onSubmit"
/>
@@ -45,8 +45,6 @@ export default {
},
data() {
const vm = this
const filterSuFrom = ['database', 'device', 'cloud', 'web', 'windows']
return {
needSetAutoPushParams: false,
autoPushVisible: false,
@@ -64,7 +62,7 @@ export default {
change: (val) => {
this.$axios.patch(
`/api/v1/accounts/accounts/${this.object.id}/`,
{ is_active: val }
{ is_active: val, name: this.object.name }
).then(res => {
this.$message.success(this.$tc('common.updateSuccessMsg'))
})
@@ -184,14 +182,15 @@ export default {
multiple: false,
clearable: true,
model: vm.object.su_from?.id || '',
label: vm.object.su_from?.name ? vm.object.su_from?.name + `(${vm.object.su_from?.username})` : '',
label: vm.object.su_from?.name ? vm.object.su_from?.name + `(${vm.object.su_from?.username})` : '-',
ajax: {
url: `/api/v1/accounts/accounts/su-from-accounts/?account=${vm.object.id}&fields_size=mini`,
transformOption: (item) => {
return { label: item.name + '(' + item.username + ')', value: item.id }
}
},
disabled: !vm.$hasPerm('accounts.verify_account') || filterSuFrom.includes(vm.object?.asset?.category?.value) || filterSuFrom.includes(vm.object?.asset?.type?.value)
disabled: !vm.$hasPerm('accounts.change_account') ||
!vm.object.asset.auto_config?.su_enabled
},
callbacks: Object.freeze({
change: (value) => {

View File

@@ -19,7 +19,7 @@ export default {
is_periodic: true,
interval: 24,
hostname_strategy: 'instance_name_partial_ip',
ip_network_segment_group: '*'
ip_network_segment_group: ['*']
},
fields: [
[this.$t('common.Basic'), ['name']],
@@ -123,7 +123,7 @@ export default {
const [name, port] = i.split('/')
return { name, port }
})
formValue.ip_network_segment_group = formValue.ip_network_segment_group.toString()
return formValue
},
cleanFormValue(value) {

View File

@@ -24,23 +24,6 @@ export default {
const vm = this
return {
loading: true,
nameComponentMap: {
host: {
icon: 'fa-inbox'
},
device: {
icon: 'fa-microchip'
},
database: {
icon: 'fa-database'
},
cloud: {
icon: 'fa-cloud'
},
web: {
icon: 'fa-globe'
}
},
tab: {
submenu: [],
activeMenu: 'host'
@@ -106,9 +89,7 @@ export default {
hasBulkDelete: false,
hasRightActions: true,
createRoute: 'PlatformCreate',
canCreate: () => {
return this.$hasPerm('assets.add_platform')
},
canCreate: () => this.$hasPerm('assets.add_platform'),
handleImportClick: ({ selectedRows }) => {
this.$eventBus.$emit('showImportDialog', {
selectedRows,
@@ -135,7 +116,7 @@ export default {
},
async mounted() {
try {
await this.setCategories()
await this.setCategoriesTab()
} finally {
this.loading = false
}
@@ -150,15 +131,23 @@ export default {
return item.category === this.tab.activeMenu
})
},
async setCategories() {
async setCategoriesTab() {
const categoryIcon = {
host: 'fa-inbox',
device: 'fa-microchip',
database: 'fa-database',
cloud: 'fa-cloud',
web: 'fa-globe',
custom: 'fa-th'
}
const state = await this.$store.dispatch('assets/getAssetCategories')
for (const item of state.assetCategories) {
const name = item.value
this.nameComponentMap[name]['name'] = name
this.nameComponentMap[name]['title'] = item.label
this.tab.submenu.push({
name: item.value,
title: item.label,
icon: categoryIcon[item.value]
})
}
this.tab.submenu = _.toArray(this.nameComponentMap)
}
}
}