This is an automated email from the ASF dual-hosted git repository.
gallardot pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
The following commit(s) were added to refs/heads/dev by this push:
new 19cb333eca [Improvement-17063][UI][DATASYNC] Improvement datasync json
parameter validate (#17064)
19cb333eca is described below
commit 19cb333ecac8823c1386d435d133b2f4900e936a
Author: 小可耐 <[email protected]>
AuthorDate: Wed Mar 26 08:03:13 2025 +0800
[Improvement-17063][UI][DATASYNC] Improvement datasync json parameter
validate (#17064)
---
dolphinscheduler-ui/src/locales/en_US/project.ts | 3 ++-
dolphinscheduler-ui/src/locales/zh_CN/project.ts | 3 ++-
.../projects/task/components/node/fields/use-datasync.ts | 13 ++++++++++++-
3 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/dolphinscheduler-ui/src/locales/en_US/project.ts
b/dolphinscheduler-ui/src/locales/en_US/project.ts
index 947f1b06b5..7012d4b252 100644
--- a/dolphinscheduler-ui/src/locales/en_US/project.ts
+++ b/dolphinscheduler-ui/src/locales/en_US/project.ts
@@ -924,7 +924,8 @@ export default {
spark_submit_parameters: 'spark submit parameters',
spark_submit_parameters_tips: 'spark submit parameters',
is_production: 'is production',
- is_production_tips: 'is production'
+ is_production_tips: 'is production',
+ json_format_tips: 'Json parameters format is abnormal'
},
menu: {
fav: 'Favorites',
diff --git a/dolphinscheduler-ui/src/locales/zh_CN/project.ts
b/dolphinscheduler-ui/src/locales/zh_CN/project.ts
index 6c46fcd3cc..e20043ab61 100644
--- a/dolphinscheduler-ui/src/locales/zh_CN/project.ts
+++ b/dolphinscheduler-ui/src/locales/zh_CN/project.ts
@@ -894,7 +894,8 @@ export default {
spark_submit_parameters: 'spark submit parameters',
spark_submit_parameters_tips: 'spark submit parameters',
is_production: 'is production',
- is_production_tips: 'is production'
+ is_production_tips: 'is production',
+ json_format_tips: 'JSON参数格式异常'
},
menu: {
fav: '收藏组件',
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-datasync.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-datasync.ts
index ead9ed3f07..d62bb57c10 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-datasync.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-datasync.ts
@@ -18,6 +18,8 @@
import type { IJsonItem } from '../types'
import { watch, ref } from 'vue'
import { useCustomParams } from '.'
+import utils from '@/utils'
+import { useI18n } from 'vue-i18n'
export function useDatasync(model: { [field: string]: any }): IJsonItem[] {
const jsonSpan = ref(0)
@@ -25,6 +27,7 @@ export function useDatasync(model: { [field: string]: any }):
IJsonItem[] {
const sourceLocationArnSpan = ref(0)
const nameSpan = ref(0)
const cloudWatchLogGroupArnSpan = ref(0)
+ const { t } = useI18n()
const resetSpan = () => {
jsonSpan.value = model.jsonFormat ? 24 : 0
@@ -54,7 +57,15 @@ export function useDatasync(model: { [field: string]: any
}): IJsonItem[] {
type: 'editor',
field: 'json',
name: 'json',
- span: jsonSpan
+ span: jsonSpan,
+ validate: {
+ trigger: ['input', 'blur'],
+ validator() {
+ if (model.json && !utils.isJson(model.json)) {
+ return new Error(t('project.node.json_format_tips'))
+ }
+ }
+ }
},
{
type: 'input',