forked from github/dataease
feat: 操作日志 详情筛选 修改密码优化 日期组件优化
This commit is contained in:
parent
4c33c1fe6b
commit
969866d445
@ -12,7 +12,7 @@ export default {
|
||||
});
|
||||
},
|
||||
handlerConfirm(options) {
|
||||
let { title, content, type = 'danger', cb, confirmButtonText = this.$t('commons.delete'), showCancelButton = true, cancelButtonText = this.$t("commons.cancel") } = options;
|
||||
let { title, content, type = 'danger', cb, confirmButtonText = this.$t('commons.delete'), showCancelButton = true, cancelButtonText = this.$t("commons.cancel"), cancelCb = () => {} } = options;
|
||||
let text = content ? `<span>${ this.$t(title) }</span><br><span class="use-html">${ this.$t(content) }</span>` : this.$t(title);
|
||||
const dangerouslyUseHTMLString = Boolean(content);
|
||||
let customClass = `de-confirm de-confirm-fail ${ dangerouslyUseHTMLString && 'de-use-html'}`
|
||||
@ -34,7 +34,9 @@ export default {
|
||||
.then(() => {
|
||||
cb();
|
||||
})
|
||||
.catch(() => {});
|
||||
.catch(() => {
|
||||
cancelCb()
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
|
16
frontend/src/components/msgCfm/keyEnter.js
Normal file
16
frontend/src/components/msgCfm/keyEnter.js
Normal file
@ -0,0 +1,16 @@
|
||||
export default {
|
||||
mounted() {
|
||||
document.addEventListener('keypress', this.entryKey)
|
||||
},
|
||||
destroyed() {
|
||||
document.removeEventListener('keypress', this.entryKey)
|
||||
},
|
||||
methods: {
|
||||
entryKey(event) {
|
||||
const keyCode = event.keyCode
|
||||
if (keyCode === 13) {
|
||||
this.$refs.search.blur()
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
@ -305,6 +305,31 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
.el-date-range-picker__time-header,
|
||||
.el-date-picker__time-header {
|
||||
border-bottom: 1px solid var(--BrDateColor, #dfe4ed) !important;
|
||||
}
|
||||
|
||||
.el-picker-panel__footer {
|
||||
border-top: 1px solid var(--BrDateColor, #dfe4ed) !important;
|
||||
background: var(--BgDateColor, #FFFFFF) !important;
|
||||
}
|
||||
|
||||
.el-date-range-picker__time-picker-wrap,
|
||||
.el-date-picker__time-header {
|
||||
.el-input__inner {
|
||||
border:1px solid var(--BrDateColor, #dfe4ed) !important;
|
||||
color: var(--DateColor, #606266);
|
||||
background: var(--BgDateColor, #FFFFFF) !important;
|
||||
}
|
||||
}
|
||||
|
||||
.el-picker-panel__link-btn:nth-child(2) {
|
||||
color: #FFFFFF;
|
||||
background: var(--BgDateColor, #FFFFFF) !important;
|
||||
border:1px solid var(--BrDateColor, #dfe4ed) !important;
|
||||
}
|
||||
|
||||
|
||||
.popper__arrow,
|
||||
.popper__arrow::after {
|
||||
|
@ -835,7 +835,9 @@ export default {
|
||||
delete_this_category: 'Are you sure to delete this category?',
|
||||
edit_template: 'Edit template',
|
||||
edit_classification: 'Edit classification',
|
||||
classification_name: 'Classification Name:'
|
||||
classification_name: 'Classification Name:',
|
||||
by_event_details: 'Search by event details',
|
||||
password_input_error: 'Original password input error'
|
||||
},
|
||||
chart: {
|
||||
rich_text_view_result_tips: 'The rich text view selects only the first result',
|
||||
|
@ -836,7 +836,9 @@ export default {
|
||||
delete_this_category: '確定删除該分類嗎?',
|
||||
edit_template: '編輯模版',
|
||||
edit_classification: '編輯分類',
|
||||
classification_name: '分類名稱'
|
||||
classification_name: '分類名稱',
|
||||
by_event_details: '通過事件詳情蒐索',
|
||||
password_input_error: '原始密碼輸入錯誤'
|
||||
},
|
||||
chart: {
|
||||
rich_text_view_result_tips: '富文本只选取第一条结果',
|
||||
|
@ -836,7 +836,9 @@ export default {
|
||||
delete_this_category: '确定删除该分类吗?',
|
||||
edit_template: '编辑模版',
|
||||
edit_classification: '编辑分类',
|
||||
classification_name: '分类名称'
|
||||
classification_name: '分类名称',
|
||||
by_event_details: '通过事件详情搜索',
|
||||
password_input_error: '原始密码输入错误'
|
||||
},
|
||||
chart: {
|
||||
rich_text_view_result_tips: '富文本只选取第一条结果',
|
||||
|
@ -627,28 +627,6 @@ div:focus {
|
||||
background-color: var(--ContentBG);
|
||||
}
|
||||
|
||||
.blackTheme .el-select-dropdown__item.hover {
|
||||
background-color: #171B22 !important;
|
||||
}
|
||||
|
||||
.blackTheme .el-select-dropdown__item:hover {
|
||||
background-color: #171B22 !important;
|
||||
}
|
||||
|
||||
.blackTheme .el-dropdown-menu__item:not(.is-disabled):hover {
|
||||
background-color: #171B22 !important;
|
||||
}
|
||||
|
||||
.blackTheme .el-dropdown-menu__item:focus {
|
||||
background-color: #171B22 !important;
|
||||
}
|
||||
|
||||
|
||||
.blackTheme .el-dropdown-menu__item--divided:before {
|
||||
background-color: #000000 !important;
|
||||
}
|
||||
|
||||
|
||||
.blackTheme .el-card__header {
|
||||
border-color: var(--TableBorderColor) !important;
|
||||
}
|
||||
@ -685,20 +663,6 @@ div:focus {
|
||||
}
|
||||
|
||||
|
||||
|
||||
.blackTheme .el-message-box__btns {
|
||||
.el-button--default:not(.el-button--primary) {
|
||||
background-color: #171b22;
|
||||
color: #2681ff;
|
||||
}
|
||||
|
||||
.el-button--primary {
|
||||
color: #21333b;
|
||||
background-color: #2681ff;
|
||||
border-color: #2681ff;
|
||||
}
|
||||
}
|
||||
|
||||
.blackTheme .vue-treeselect__menu {
|
||||
border: 1px solid var(--TableBorderColor, #cfcfcf);
|
||||
background: var(--MainBG, #fff);
|
||||
|
@ -96,7 +96,7 @@ export default {
|
||||
const param = this.user ? { password: this.form.password, resourceId: this.resourceId, user: this.user } : { password: this.form.password, resourceId: this.resourceId }
|
||||
validatePwd(param).then(res => {
|
||||
if (!res.data) {
|
||||
this.msg = this.$t('pblink.pwd_error')
|
||||
this.msg = this.$t('system_parameter_setting.password_input_error')
|
||||
} else {
|
||||
this.$emit('fresh-token')
|
||||
}
|
||||
|
@ -92,7 +92,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="邮箱服务器配置">
|
||||
<el-checkbox v-model="formInline.ssl"
|
||||
>开启SSL
|
||||
>{{ $t('chart.open') }}SSL
|
||||
<el-tooltip
|
||||
class="item"
|
||||
effect="dark"
|
||||
@ -104,7 +104,7 @@
|
||||
</el-checkbox>
|
||||
|
||||
<el-checkbox v-model="formInline.tls">
|
||||
开启TSL
|
||||
{{ $t('chart.open') }}TSL
|
||||
<el-tooltip
|
||||
class="item"
|
||||
effect="dark"
|
||||
|
@ -377,7 +377,7 @@ export default {
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
text-align: right;
|
||||
background: #ffffff;
|
||||
background-color: var(--MainBG, #fff);
|
||||
box-shadow: 0px -1px 4px rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,7 @@
|
||||
</el-col>
|
||||
<el-col :span="12" class="right-user">
|
||||
<el-input
|
||||
:placeholder="$t('通过事件详情搜索')"
|
||||
:placeholder="$t('system_parameter_setting.by_event_details')"
|
||||
prefix-icon="el-icon-search"
|
||||
class="name-email-search"
|
||||
size="small"
|
||||
@ -118,15 +118,15 @@ import DeLayoutContent from "@/components/business/DeLayoutContent";
|
||||
import GridTable from "@/components/gridTable/index.vue";
|
||||
import filterUser from './filterUser';
|
||||
import _ from 'lodash';
|
||||
import keyEnter from '@/components/msgCfm/keyEnter.js'
|
||||
import {
|
||||
formatCondition,
|
||||
formatQuickCondition,
|
||||
addOrder,
|
||||
formatOrders,
|
||||
} from "@/utils/index";
|
||||
import { logGrid, exportExcel } from "@/api/system/log";
|
||||
export default {
|
||||
components: { GridTable, DeLayoutContent, filterUser },
|
||||
mixins: [keyEnter],
|
||||
data() {
|
||||
return {
|
||||
columns: [],
|
||||
@ -170,11 +170,13 @@ export default {
|
||||
});
|
||||
},
|
||||
exportData() {
|
||||
let condition = this.last_condition;
|
||||
condition = formatQuickCondition(condition, "key");
|
||||
const temp = formatCondition(condition);
|
||||
const param = temp || {};
|
||||
param["orders"] = formatOrders(this.orderConditions);
|
||||
const param = {
|
||||
orders: formatOrders(this.orderConditions),
|
||||
conditions: [...this.cacheCondition],
|
||||
};
|
||||
if (this.nikeName) {
|
||||
param.keyWord = this.nikeName;
|
||||
}
|
||||
|
||||
exportExcel(param).then((res) => {
|
||||
const blob = new Blob([res], { type: "application/vnd.ms-excel" });
|
||||
@ -265,11 +267,7 @@ export default {
|
||||
conditions: [...this.cacheCondition],
|
||||
};
|
||||
if (this.nikeName) {
|
||||
param.conditions.push({
|
||||
field: `nick_name`,
|
||||
operator: "like",
|
||||
value: this.nikeName,
|
||||
});
|
||||
param.keyWord = this.nikeName;
|
||||
}
|
||||
const { currentPage, pageSize } = this.paginationConfig;
|
||||
logGrid(currentPage, pageSize, param).then((response) => {
|
||||
|
@ -325,11 +325,12 @@ import GridTable from "@/components/gridTable/index.vue";
|
||||
import filterUser from "./filterUser.vue";
|
||||
import msgCfm from "@/components/msgCfm/index";
|
||||
import _ from "lodash";
|
||||
import keyEnter from '@/components/msgCfm/keyEnter.js'
|
||||
|
||||
export default {
|
||||
name: "DatasetTaskList",
|
||||
components: { GridTable, cron, filterUser, TableSelector },
|
||||
mixins: [msgCfm],
|
||||
mixins: [msgCfm, keyEnter],
|
||||
props: {
|
||||
transCondition: {
|
||||
type: Object,
|
||||
|
@ -137,10 +137,12 @@ import { exportExcel, post } from "@/api/dataset/dataset";
|
||||
import GridTable from "@/components/gridTable/index.vue";
|
||||
import filterUser from "./filterUserRecord.vue";
|
||||
import _ from "lodash";
|
||||
import keyEnter from '@/components/msgCfm/keyEnter.js'
|
||||
|
||||
export default {
|
||||
name: "TaskRecord",
|
||||
components: { GridTable, filterUser },
|
||||
mixins: [keyEnter],
|
||||
props: {
|
||||
param: {
|
||||
type: Object,
|
||||
|
@ -455,7 +455,7 @@ export default {
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
text-align: right;
|
||||
background: #FFFFFF;
|
||||
background-color: var(--MainBG, #fff);
|
||||
box-shadow: 0px -1px 4px rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
}
|
||||
|
@ -443,7 +443,7 @@ export default {
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
text-align: right;
|
||||
background: #ffffff;
|
||||
background-color: var(--MainBG, #fff);
|
||||
box-shadow: 0px -1px 4px rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
}
|
||||
|
@ -232,7 +232,6 @@ import "codemirror/addon/hint/show-hint.css";
|
||||
import "codemirror/addon/hint/sql-hint";
|
||||
import "codemirror/addon/hint/show-hint";
|
||||
import TableSelector from "./TableSelector";
|
||||
import { log } from "@antv/g2plot/lib/utils";
|
||||
|
||||
export default {
|
||||
components: { cron, codemirror, TableSelector, DeLayoutContent },
|
||||
@ -590,11 +589,11 @@ export default {
|
||||
box-sizing: border-box;
|
||||
padding: 20px;
|
||||
width: 100%;
|
||||
background: #f5f6f7;
|
||||
background-color: var(--MainBG, #f5f6f7);
|
||||
border-radius: 4px;
|
||||
|
||||
.el-input__inner {
|
||||
background: #ffffff !important;
|
||||
background: var(--ContentBG, #ffffff) !important;
|
||||
}
|
||||
|
||||
.el-date-editor {
|
||||
@ -607,7 +606,7 @@ export default {
|
||||
width: 100%;
|
||||
border-radius: 4px;
|
||||
padding: 20px;
|
||||
background: #f5f6f7;
|
||||
background-color: var(--MainBG, #f5f6f7);
|
||||
|
||||
.param-title {
|
||||
width: 100%;
|
||||
@ -641,7 +640,7 @@ export default {
|
||||
height: 80px;
|
||||
bottom: 0;
|
||||
right: 24px;
|
||||
background: #ffffff;
|
||||
background-color: var(--MainBG, #fff);
|
||||
box-shadow: 0px -2px 4px rgba(0, 0, 0, 0.08);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
|
@ -7,15 +7,20 @@
|
||||
</div>
|
||||
<el-form ref="createUserForm" :model="form" :rules="rule" size="small" label-width="auto" label-position="right">
|
||||
<el-form-item :label="$t('user.origin_passwd')" prop="oldPwd">
|
||||
<el-input v-model="form.oldPwd" type="password" />
|
||||
<dePwd
|
||||
v-model="form.oldPwd"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('user.new_passwd')" prop="newPwd">
|
||||
<el-input v-model="form.newPwd" type="password" />
|
||||
<dePwd
|
||||
v-model="form.newPwd"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('user.confirm_passwd')" prop="repeatPwd">
|
||||
<el-input v-model="form.repeatPwd" type="password" />
|
||||
<dePwd
|
||||
v-model="form.repeatPwd"
|
||||
/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="save">{{ $t('commons.confirm') }}</el-button>
|
||||
</el-form-item>
|
||||
@ -28,9 +33,10 @@
|
||||
<script>
|
||||
import LayoutContent from '@/components/business/LayoutContent'
|
||||
import { updatePersonPwd } from '@/api/system/user'
|
||||
import dePwd from '@/components/deCustomCm/dePwd.vue'
|
||||
export default {
|
||||
|
||||
components: { LayoutContent },
|
||||
components: { LayoutContent, dePwd },
|
||||
data() {
|
||||
return {
|
||||
form: {
|
||||
|
Loading…
Reference in New Issue
Block a user