mirror of
https://gh-proxy.org/https://github.com/klinsmaya/SQLBot.git
synced 2026-11-08 01:06:59 +08:00
fix(User Management): Users can bind system variables; the same system variable can be bound repeatedly.
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
"Details": "Details"
|
||||
},
|
||||
"variables": {
|
||||
"number_variable_error": "Please enter the correct numerical range.",
|
||||
"built_in": "Built-in",
|
||||
"normal_value": "Normal value",
|
||||
"cannot_be_empty": "Variable values cannot be empty.",
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
"return_to_view": "화면으로 돌아가기"
|
||||
},
|
||||
"variables": {
|
||||
"number_variable_error": "올바른 숫자 범위를 입력하십시오.",
|
||||
"built_in": "내장형",
|
||||
"normal_value": "정상값",
|
||||
"cannot_be_empty": "변수 값은 비어 있을 수 없습니다.",
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
"return_to_view": "返回查看"
|
||||
},
|
||||
"variables": {
|
||||
"number_variable_error": "请输入正确的数值范围",
|
||||
"built_in": "已内置",
|
||||
"normal_value": "常规值",
|
||||
"cannot_be_empty": "变量值不能为空",
|
||||
|
||||
@@ -173,6 +173,7 @@ defineExpose({
|
||||
border: 1px solid #dee0e3;
|
||||
padding: 16px;
|
||||
margin-bottom: 8px;
|
||||
cursor: pointer;
|
||||
|
||||
.header {
|
||||
display: flex;
|
||||
|
||||
@@ -391,6 +391,9 @@
|
||||
v-for="item in variables"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:disabled="
|
||||
state.form.system_variables.map((ele: any) => ele.variableId).includes(item.id)
|
||||
"
|
||||
:value="item.id"
|
||||
>
|
||||
<div style="width: 100%; display: flex; align-items: center">
|
||||
@@ -434,7 +437,7 @@
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
<el-input
|
||||
<el-input-number
|
||||
v-else-if="
|
||||
variableValueMap[state.form.system_variables[index].variableId].var_type ===
|
||||
'number'
|
||||
@@ -442,9 +445,9 @@
|
||||
v-model.number="state.form.system_variables[index].variableValue"
|
||||
style="width: 236px"
|
||||
:placeholder="$t('variables.please_enter_value')"
|
||||
autocomplete="off"
|
||||
maxlength="50"
|
||||
clearable
|
||||
max="10000000000000000"
|
||||
controls-position="right"
|
||||
/>
|
||||
<el-date-picker
|
||||
v-else
|
||||
|
||||
@@ -189,7 +189,12 @@ const validateValue = (_: any, value: any, callback: any) => {
|
||||
}
|
||||
return
|
||||
}
|
||||
if (value.some((ele: any) => ele === '')) {
|
||||
if (var_type === 'datetime') {
|
||||
if (value === null) {
|
||||
callback(new Error(t('datasource.please_enter') + t('common.empty') + t('variables.date')))
|
||||
}
|
||||
}
|
||||
if (value.some((ele: any) => ele === '' || ele === null)) {
|
||||
callback(
|
||||
new Error(
|
||||
t('datasource.please_enter') +
|
||||
@@ -237,6 +242,17 @@ const saveHandler = () => {
|
||||
obj.value = [...new Set(obj.value)]
|
||||
}
|
||||
|
||||
if (obj.var_type === 'number') {
|
||||
const [min = 0, max = 0] = obj.value
|
||||
if (min > max) {
|
||||
ElMessage({
|
||||
type: 'error',
|
||||
message: t('variables.number_variable_error'),
|
||||
})
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
variablesApi.save(obj).then(() => {
|
||||
ElMessage({
|
||||
type: 'success',
|
||||
@@ -553,12 +569,14 @@ const handleCurrentChange = (val: number) => {
|
||||
v-model.number="pageForm.value[0]"
|
||||
:placeholder="$t('variables.please_enter_value')"
|
||||
clearable
|
||||
max="10000000000000000"
|
||||
controls-position="right"
|
||||
/>
|
||||
<span class="ed-range-separator separator"></span>
|
||||
<el-input-number
|
||||
v-model.number="pageForm.value[1]"
|
||||
:placeholder="$t('variables.please_enter_value')"
|
||||
max="10000000000000000"
|
||||
clearable
|
||||
controls-position="right"
|
||||
/>
|
||||
|
||||
Reference in New Issue
Block a user