diff --git a/dolphinscheduler-dist/release-docs/LICENSE b/dolphinscheduler-dist/release-docs/LICENSE index c2d5b7d698..24d815b0e0 100644 --- a/dolphinscheduler-dist/release-docs/LICENSE +++ b/dolphinscheduler-dist/release-docs/LICENSE @@ -479,6 +479,7 @@ The text of each license is also included at licenses/ui-licenses/LICENSE-[proje ======================================== MIT licenses ======================================== + @form-create/element-ui 1.0.18: https://github.com/xaboy/form-create MIT axios 0.16.2: https://github.com/axios/axios MIT bootstrap 3.3.7: https://github.com/twbs/bootstrap MIT canvg 1.5.1: https://github.com/canvg/canvg MIT diff --git a/dolphinscheduler-dist/release-docs/licenses/ui-licenses/LICENSE-@form-create-element-ui b/dolphinscheduler-dist/release-docs/licenses/ui-licenses/LICENSE-@form-create-element-ui new file mode 100644 index 0000000000..468a05fc1d --- /dev/null +++ b/dolphinscheduler-dist/release-docs/licenses/ui-licenses/LICENSE-@form-create-element-ui @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2018 xaboy + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/dolphinscheduler-ui/package.json b/dolphinscheduler-ui/package.json index acc40b6f52..74558c856f 100644 --- a/dolphinscheduler-ui/package.json +++ b/dolphinscheduler-ui/package.json @@ -13,6 +13,7 @@ "build:release": "npm run clean && cross-env NODE_ENV=production PUBLIC_PATH=/dolphinscheduler/ui webpack --config ./build/webpack.config.release.js" }, "dependencies": { + "@form-create/element-ui": "^1.0.18", "@riophae/vue-treeselect": "^0.4.0", "axios": "^0.16.2", "bootstrap": "3.3.7", diff --git a/dolphinscheduler-ui/src/js/conf/home/index.js b/dolphinscheduler-ui/src/js/conf/home/index.js index 42295b24a2..37515ad497 100644 --- a/dolphinscheduler-ui/src/js/conf/home/index.js +++ b/dolphinscheduler-ui/src/js/conf/home/index.js @@ -38,6 +38,7 @@ import 'bootstrap/dist/css/bootstrap.min.css' import 'bootstrap/dist/js/bootstrap.min.js' import 'canvg/dist/browser/canvg.min.js' import 'remixicon/fonts/remixicon.css' +import formCreate from '@form-create/element-ui' // Component internationalization const useOpt = i18n.globalScope.LOCALE === 'en_US' ? { locale: locale } : {} @@ -45,8 +46,7 @@ const useOpt = i18n.globalScope.LOCALE === 'en_US' ? { locale: locale } : {} i18n.globalScope.LOCALE === 'en_US' ? Vue.use(ElementUI, { locale }) : Vue.use(ElementUI) // Vue.use(ans) -Vue.use(useOpt) - +Vue.use(useOpt, formCreate) sync(store, router) Vue.config.devtools = true diff --git a/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sql.vue b/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sql.vue index 7e3ae465c8..706edcda6a 100644 --- a/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sql.vue +++ b/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sql.vue @@ -55,18 +55,6 @@ - -
*{{$t('Recipient')}}
-
- -
-
- -
{{$t('Cc')}}
-
- -
-
{{$t('SQL Parameter')}}
@@ -155,7 +143,6 @@ import mLocalParams from './_source/localParams' import mStatementList from './_source/statementList' import disabledState from '@/module/mixin/disabledState' - import mEmail from '@/conf/home/pages/projects/pages/definition/pages/list/_source/email' import codemirror from '@/conf/home/pages/resource/pages/file/pages/_source/codemirror' let editor @@ -188,10 +175,6 @@ preStatements: [], // Post statements postStatements: [], - // recipients - receivers: [], - // copy to - receiversCc: [], item: '', scriptBoxDialog: false } @@ -274,14 +257,6 @@ this.$message.warning(`${i18n.$t('Recipient required')}`) return false } - // receivers Subcomponent verification - if (this.sqlType === 0 && !this.$refs.refEmail._manualEmail()) { - return false - } - // receiversCc Subcomponent verification - if (this.sqlType === 0 && !this.$refs.refCc._manualEmail()) { - return false - } // udfs Subcomponent verification Verification only if the data type is HIVE if (this.type === 'HIVE') { if (!this.$refs.refUdfs._verifUdfs()) { @@ -312,8 +287,6 @@ udfs: this.udfs, sqlType: this.sqlType, title: this.title, - receivers: this.receivers.join(','), - receiversCc: this.receiversCc.join(','), showType: (() => { /** * Special processing return order TABLE,ATTACHMENT @@ -366,19 +339,6 @@ return editor }, - _getReceiver () { - let param = {} - let current = this.router.history.current - if (current.name === 'projects-definition-details') { - param.processDefinitionId = current.params.id - } else { - param.processInstanceId = current.params.id - } - this.store.dispatch('dag/getReceiver', param).then(res => { - this.receivers = res.receivers && res.receivers.split(',') || [] - this.receiversCc = res.receiversCc && res.receiversCc.split(',') || [] - }) - }, _cacheParams () { this.$emit('on-cache-params', { type: this.type, @@ -387,8 +347,6 @@ 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') { @@ -419,8 +377,6 @@ } if (val !== 0) { this.title = '' - this.receivers = [] - this.receiversCc = [] } }, // Listening data source @@ -455,13 +411,6 @@ this.preStatements = o.params.preStatements || [] this.postStatements = o.params.postStatements || [] this.title = o.params.title || '' - this.receivers = o.params.receivers && o.params.receivers.split(',') || [] - this.receiversCc = o.params.receiversCc && o.params.receiversCc.split(',') || [] - } - // read tasks from cache - if (!_.some(this.store.state.dag.cacheTasks, { id: this.createNodeId }) && - this.router.history.current.name !== 'definition-create') { - this._getReceiver() } }, mounted () { @@ -487,8 +436,6 @@ 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') { @@ -504,6 +451,6 @@ } } }, - components: { mListBox, mDatasource, mLocalParams, mUdfs, mSqlType, mStatementList, mEmail, mScriptBox } + components: { mListBox, mDatasource, mLocalParams, mUdfs, mSqlType, mStatementList, mScriptBox } } diff --git a/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sqoop.vue b/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sqoop.vue index 7647e67ab4..7819b23fc1 100644 --- a/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sqoop.vue +++ b/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sqoop.vue @@ -1175,8 +1175,6 @@ } if (val !== 0) { this.title = '' - this.receivers = [] - this.receiversCc = [] } }, // Listening data source diff --git a/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/startingParam/index.vue b/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/startingParam/index.vue index 5d28ebce5b..bcc91524ff 100644 --- a/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/startingParam/index.vue +++ b/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/startingParam/index.vue @@ -27,8 +27,6 @@
  • {{$t('Worker group')}}:{{startupParam.workerGroup}}
  • {{$t('Notification strategy')}}:{{_rtWarningType(startupParam.warningType)}}
  • {{$t('Notification group')}}:{{_rtNotifyGroupName(startupParam.warningGroupId)}}
  • -
  • {{$t('Recipient')}}:{{startupParam.receivers || '-'}}
  • -
  • {{$t('Cc')}}:{{startupParam.receiversCc || '-'}}
  • diff --git a/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/list.vue b/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/list.vue index c3b779936c..1aee167cbc 100644 --- a/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/list.vue +++ b/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/list.vue @@ -177,8 +177,6 @@ timingDialog: false, timingData: { item: {}, - receiversD: [], - receiversCcD: [], type: '' }, relatedItemsDialog: false, @@ -191,7 +189,7 @@ pageSize: Number }, methods: { - ...mapActions('dag', ['editProcessState', 'getStartCheck', 'getReceiver', 'deleteDefinition', 'batchDeleteDefinition', 'exportDefinition', 'getProcessDefinitionVersionsPage', 'copyProcess', 'switchProcessDefinitionVersion', 'deleteProcessDefinitionVersion', 'moveProcess']), + ...mapActions('dag', ['editProcessState', 'getStartCheck', 'deleteDefinition', 'batchDeleteDefinition', 'exportDefinition', 'getProcessDefinitionVersionsPage', 'copyProcess', 'switchProcessDefinitionVersion', 'deleteProcessDefinitionVersion', 'moveProcess']), ...mapActions('security', ['getWorkerGroupsAll']), selectable (row, index) { @@ -226,30 +224,13 @@ closeStart () { this.startDialog = false }, - /** - * get emial - */ - _getReceiver (id) { - return new Promise((resolve, reject) => { - this.getReceiver({ processDefinitionId: id }).then(res => { - resolve({ - receivers: res.receivers && res.receivers.split(',') || [], - receiversCc: res.receiversCc && res.receiversCc.split(',') || [] - }) - }) - }) - }, /** * timing */ _timing (item) { - this._getReceiver(item.id).then(res => { - this.timingData.item = item - this.timingData.receiversD = res.receivers - this.timingData.receiversCcD = res.receiversCc - this.timingData.type = 'timing' - this.timingDialog = true - }) + this.timingData.item = item + this.timingData.type = 'timing' + this.timingDialog = true }, onUpdateTiming () { this._onUpdate() diff --git a/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/start.vue b/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/start.vue index cb6cc67e57..2520f047fa 100644 --- a/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/start.vue +++ b/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/start.vue @@ -99,22 +99,6 @@ -
    -
    - {{$t('Recipient')}} -
    -
    - -
    -
    -
    -
    - {{$t('Cc')}} -
    -
    - -
    -
    {{$t('Complement Data')}} @@ -164,7 +148,6 @@ diff --git a/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/timing.vue b/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/timing.vue index 51c2787704..526abfb16e 100644 --- a/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/timing.vue +++ b/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/timing.vue @@ -136,22 +136,6 @@
    -
    -
    - {{$t('Recipient')}} -
    -
    - -
    -
    -
    -
    - {{$t('Cc')}} -
    -
    - -
    -
    {{$t('Cancel')}} {{spinnerLoading ? 'Loading...' : (timingData.item.crontab ? $t('Edit') : $t('Create'))}} @@ -159,9 +143,7 @@
    diff --git a/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/timing/_source/list.vue b/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/timing/_source/list.vue index b566976c3e..7081e3055d 100644 --- a/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/timing/_source/list.vue +++ b/dolphinscheduler-ui/src/js/conf/home/pages/projects/pages/definition/timing/_source/list.vue @@ -124,16 +124,14 @@ list: [], timingDialog: false, timingData: { - item: {}, - receiversD: [], - receiversCcD: [] + item: {} } } }, props: { }, methods: { - ...mapActions('dag', ['getScheduleList', 'scheduleOffline', 'scheduleOnline', 'getReceiver', 'deleteTiming']), + ...mapActions('dag', ['getScheduleList', 'scheduleOffline', 'scheduleOnline', 'deleteTiming']), /** * delete */ @@ -228,29 +226,12 @@ this.$message.error(e.msg || '') }) }, - /** - * get email - */ - _getReceiver (id) { - return new Promise((resolve, reject) => { - this.getReceiver({ processDefinitionId: id }).then(res => { - resolve({ - receivers: res.receivers && res.receivers.split(',') || [], - receiversCc: res.receiversCc && res.receiversCc.split(',') || [] - }) - }) - }) - }, /** * timing */ _editTiming (item) { - this._getReceiver(item.processDefinitionId).then(res => { - this.timingData.item = item - this.timingData.receiversD = res.receivers - this.timingData.receiversCcD = res.receiversCc - this.timingDialog = true - }) + this.timingData.item = item + this.timingDialog = true }, onUpdateTiming () { this.pageNo = 1 diff --git a/dolphinscheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/_source/list.vue b/dolphinscheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/_source/list.vue index a4fd982a26..a06e868e15 100644 --- a/dolphinscheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/_source/list.vue +++ b/dolphinscheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/_source/list.vue @@ -38,9 +38,6 @@ diff --git a/dolphinscheduler-ui/src/js/conf/home/store/dag/actions.js b/dolphinscheduler-ui/src/js/conf/home/store/dag/actions.js index 7f895db2b4..95913023ae 100644 --- a/dolphinscheduler-ui/src/js/conf/home/store/dag/actions.js +++ b/dolphinscheduler-ui/src/js/conf/home/store/dag/actions.js @@ -806,18 +806,6 @@ export default { }) }) }, - /** - * Get the mailbox list interface - */ - getReceiver ({ state }, payload) { - return new Promise((resolve, reject) => { - io.get(`projects/${state.projectName}/executors/get-receiver-cc`, payload, res => { - resolve(res.data) - }).catch(e => { - reject(e) - }) - }) - }, getTaskListDefIdAll ({ state }, payload) { return new Promise((resolve, reject) => { io.get(`projects/${state.projectName}/process/get-task-list`, payload, res => {