From c4d9e7a20dac267c5496ad3586c5053be279a17a Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期五, 26 四月 2024 20:09:59 +0800 Subject: [PATCH] 添加action,表单组件 --- Source/ProjectWeb/src/actions/base/AddAction.js | 32 +++++++++++++++++++++++++------- 1 files changed, 25 insertions(+), 7 deletions(-) diff --git a/Source/ProjectWeb/src/actions/base/AddAction.js b/Source/ProjectWeb/src/actions/base/AddAction.js index f3e45b6..5ac9b70 100644 --- a/Source/ProjectWeb/src/actions/base/AddAction.js +++ b/Source/ProjectWeb/src/actions/base/AddAction.js @@ -4,11 +4,12 @@ import {paramLow,callPreEvent, callPostEvent} from './BaseAction'; import {validatenull} from "@/util/validate"; import Vue from "vue"; +import AddEditDialog from "@/components/actions/AddEditDialog" -export const doAction = (options) => { +export const doAction = (options,callback) => { options.paramVOS = paramLow(options.paramVOS) const paramVOS = Object.assign({ - url: 'uiDataController/addSave', + url: '/api/uiDataController/addSave', method: 'post', uploadfileurl: 'vciFileUploadController/uploadFile' }, options.paramVOS) @@ -18,7 +19,7 @@ callPreEvent(options, doBefore, function (options) { doAdd(options, function () { - callPostEvent(options, doAfter, options.callback); + callPostEvent(options, doAfter, callback); }); }); }; @@ -30,14 +31,31 @@ */ export const doAdd = (options,callback)=> { const paramVOS = options.paramVOS; - if (!paramVOS['form'] && !paramVOS['context']) { + if (!paramVOS['form'] && !paramVOS['context'] && !paramVOS['content']) { Vue.prototype.$message.error("鎸夐挳閰嶇疆涓嶆纭�"); return false; } - Vue.prototype.$message.success('鎵ц'+paramVOS.title); - if(callback){ - callback(options); + + const dialogConstructor = Vue.extend(AddEditDialog); + let instance = new dialogConstructor(); + instance.sourceData = options.sourceData; + instance.dataStore = options.dataStore; + instance.paramVOS = paramVOS + + instance.type = 'add'; + instance.dialogClose = function () { + vm.visible = false; + document.body.removeChild(vm.$el); + instance.$destroy(); + instance = null; + }; + if (callback) { + instance.saveCallback = callback; } + let vm = instance.$mount(); + document.body.appendChild(vm.$el); + instance.visible = true; + } /** * 鍓嶇疆浜嬩欢 -- Gitblit v1.9.3