Commit 2087f464 authored by zhukai's avatar zhukai Committed by dailidong
Browse files

Implements the sql type task, now it can be cache the previous input. (#1745)

parent 4b027fbf
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -143,6 +143,7 @@
        <m-sql
          v-if="taskType === 'SQL'"
          @on-params="_onParams"
          @on-cache-params="_onCacheParams"
          ref="SQL"
          :create-node-id="id"
          :backfill-item="backfillItem">
+15 −2
Original line number Diff line number Diff line
@@ -112,7 +112,20 @@
        })
      }
    },
    watch: {},
    computed: {
      cacheParams () {
        return {
          type: this.type,
          datasource: this.datasource
        }
      }
    },
    // Watch the cacheParams
    watch: {
      cacheParams (val) {
        this.$emit('on-dsData', val);
      }
    },
    created () {
      let supportType = this.supportType || []
      this.typeList = _.cloneDeep(this.store.state.dag.dsTypeListS)
+33 −2
Original line number Diff line number Diff line
@@ -371,6 +371,10 @@
          this.connParams = ''
        }
      },
      //Watch the cacheParams
      cacheParams (val) {
        this.$emit('on-cache-params', val);
      }
    },
    created () {
      let o = this.backfillItem
@@ -396,7 +400,8 @@
        this.receivers = o.params.receivers && o.params.receivers.split(',') || []
        this.receiversCc = o.params.receiversCc && o.params.receiversCc.split(',') || []
      }
      if (!_.some(this.store.state.dag.tasks, { id: this.createNodeId }) &&
      // read tasks from cache
      if (!_.some(this.store.state.dag.cacheTasks, { id: this.createNodeId }) &&
        this.router.history.current.name !== 'definition-create') {
        this._getReceiver()
      }
@@ -415,7 +420,33 @@
        editor.off($('.code-sql-mirror'), 'keypress', this.keypress)
      }
    },
    computed: {},
    computed: {
      cacheParams () {
        return {
          type: this.type,
          datasource: this.rtDatasource,
          sql: editor ? editor.getValue() : '',
          udfs: this.udfs,
          sqlType: this.sqlType,
          title: this.title,
          receivers: this.receivers.join(','),
          receiversCc: this.receiversCc.join(','),
          showType: (() => {

            let showType = this.showType
            if (showType.length === 2 && showType[0] === 'ATTACHMENT') {
              return [showType[1], showType[0]].join(',')
            } else {
              return showType.join(',')
            }
          })(),
          localParams: this.localParams,
          connParams: this.connParams,
          preStatements: this.preStatements,
          postStatements: this.postStatements
        }
      }
    },
    components: { mListBox, mDatasource, mLocalParams, mUdfs, mSqlType, mStatementList, mEmail }
  }
</script>
+5 −0
Original line number Diff line number Diff line
@@ -110,6 +110,11 @@ export default {
        let processDefinitionJson = JSON.parse(res.data.processDefinitionJson)
        // tasks info
        state.tasks = processDefinitionJson.tasks
        // tasks cache
        state.cacheTasks = {}
        processDefinitionJson.tasks.forEach(v => {
          state.cacheTasks[v.id] = v
        })
        // global params
        state.globalParams = processDefinitionJson.globalParams
        // timeout