Browse Source

fix switch node cannot get branch flow (#6565)

3.0.0/version-upgrade
wangyizhi 3 years ago committed by GitHub
parent
commit
5dfb0163c2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 13
      dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/formModel.vue
  2. 10
      dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/switch.vue

13
dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/formModel.vue

@ -383,6 +383,7 @@
@on-switch-result="_onSwitchResult" @on-switch-result="_onSwitchResult"
:backfill-item="backfillItem" :backfill-item="backfillItem"
:nodeData="nodeData" :nodeData="nodeData"
:postTasks="postTasks"
></m-switch> ></m-switch>
<!-- waterdrop node --> <!-- waterdrop node -->
<m-waterdrop <m-waterdrop
@ -517,7 +518,7 @@
label: `${i18n.$t('Failed')}` label: `${i18n.$t('Failed')}`
} }
], ],
// for CONDITIONS // for CONDITIONS and SWITCH
postTasks: [], postTasks: [],
prevTasks: [], prevTasks: [],
// refresh part of the formModel, after set backfillItem outside // refresh part of the formModel, after set backfillItem outside
@ -550,6 +551,7 @@
return { return {
code: task.code, code: task.code,
conditionResult: task.taskParams.conditionResult, conditionResult: task.taskParams.conditionResult,
switchResult: task.taskParams.switchResult,
delayTime: task.delayTime, delayTime: task.delayTime,
dependence: task.taskParams.dependence, dependence: task.taskParams.dependence,
desc: task.description, desc: task.description,
@ -559,7 +561,8 @@
params: _.omit(task.taskParams, [ params: _.omit(task.taskParams, [
'conditionResult', 'conditionResult',
'dependence', 'dependence',
'waitStartTimeout' 'waitStartTimeout',
'switchResult'
]), ]),
retryInterval: task.failRetryInterval, retryInterval: task.failRetryInterval,
runFlag: task.flag, runFlag: task.flag,
@ -763,7 +766,8 @@
...this.params, ...this.params,
dependence: this.cacheDependence, dependence: this.cacheDependence,
conditionResult: this.conditionResult, conditionResult: this.conditionResult,
waitStartTimeout: this.waitStartTimeout waitStartTimeout: this.waitStartTimeout,
switchResult: this.switchResult
}, },
flag: this.runFlag, flag: this.runFlag,
taskPriority: this.taskInstancePriority, taskPriority: this.taskInstancePriority,
@ -861,6 +865,9 @@
this.successBranch = o.conditionResult.successNode[0] this.successBranch = o.conditionResult.successNode[0]
this.failedBranch = o.conditionResult.failedNode[0] this.failedBranch = o.conditionResult.failedNode[0]
} }
if (o.switchResult) {
this.switchResult = o.switchResult
}
// If the workergroup has been deleted, set the default workergroup // If the workergroup has been deleted, set the default workergroup
for ( for (
let i = 0; let i = 0;

10
dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/switch.vue

@ -34,8 +34,8 @@
</textarea> </textarea>
</label> </label>
<span class="text-b" style="padding-left: 0">{{$t('Branch flow')}}</span> <span class="text-b" style="padding-left: 0">{{$t('Branch flow')}}</span>
<el-select style="width: 157px;" size="small" v-model="el.nextNode" clearable> <el-select style="width: 157px;" size="small" v-model="el.nextNode" clearable :disabled="isDetails">
<el-option v-for="item in nodeData.rearList" :key="item.value" :value="item.value" :label="item.label"></el-option> <el-option v-for="item in postTasks" :key="item.code" :value="item.name" :label="item.name"></el-option>
</el-select> </el-select>
<span class="operation"> <span class="operation">
<a href="javascript:" class="delete" @click="!isDetails && _removeDep(index)" v-if="index === (dependItemList.length - 1)"> <a href="javascript:" class="delete" @click="!isDetails && _removeDep(index)" v-if="index === (dependItemList.length - 1)">
@ -53,7 +53,7 @@
<div slot="text">{{$t('Branch flow')}}</div> <div slot="text">{{$t('Branch flow')}}</div>
<div slot="content"> <div slot="content">
<el-select style="width: 157px;" size="small" v-model="nextNode" clearable :disabled="isDetails"> <el-select style="width: 157px;" size="small" v-model="nextNode" clearable :disabled="isDetails">
<el-option v-for="item in nodeData.rearList" :key="item.value" :value="item.value" :label="item.label"></el-option> <el-option v-for="item in postTasks" :key="item.code" :value="item.name" :label="item.name"></el-option>
</el-select> </el-select>
</div> </div>
</m-list-box> </m-list-box>
@ -82,7 +82,7 @@
props: { props: {
nodeData: Object, nodeData: Object,
backfillItem: Object, backfillItem: Object,
rearList: Array postTasks: Array
}, },
methods: { methods: {
editList (index) { editList (index) {
@ -90,7 +90,7 @@
const self = this const self = this
const editor = codemirror(`code-switch-mirror${index}`, { const editor = codemirror(`code-switch-mirror${index}`, {
mode: 'shell', mode: 'shell',
readOnly: this.isInstance readOnly: this.isDetails
}, this) }, this)
editor.on('change', function () { editor.on('change', function () {
const outputList = _.cloneDeep(self.dependItemList) const outputList = _.cloneDeep(self.dependItemList)

Loading…
Cancel
Save