From 98f9901f5f50f4123557909f511d53c5da1608e9 Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期三, 08 五月 2024 16:05:03 +0800
Subject: [PATCH] 删除action

---
 Source/ProjectWeb/src/actions/base/AddAction.js                      |    4 +-
 Source/ProjectWeb/src/api/base/actions.js                            |    9 ++--
 Source/ProjectWeb/src/components/actions/AddEditDialog.vue           |    6 +-
 Source/ProjectWeb/src/components/dynamic-components/dynamic-tree.vue |    2 
 Source/ProjectWeb/src/actions/base/DeleteAction.js                   |   59 ++++++++++++++++++++++-------
 Source/ProjectWeb/src/actions/base/EditAction.js                     |    4 +-
 6 files changed, 57 insertions(+), 27 deletions(-)

diff --git a/Source/ProjectWeb/src/actions/base/AddAction.js b/Source/ProjectWeb/src/actions/base/AddAction.js
index 688f26a..3989c9b 100644
--- a/Source/ProjectWeb/src/actions/base/AddAction.js
+++ b/Source/ProjectWeb/src/actions/base/AddAction.js
@@ -62,7 +62,7 @@
  * @param callback 鍥炶皟
  */
 export const doBefore = (options,callback)=> {
-  Vue.prototype.$message.success('鎵ц澧炲姞鍓嶇疆浜嬩欢');
+  console.log("鎵ц澧炲姞鍓嶇疆浜嬩欢")
   if(callback){
     callback(options);
   }
@@ -73,7 +73,7 @@
  * @param callback 鍥炶皟
  */
 export const doAfter = (options,callback,actionType)=> {
-  Vue.prototype.$message.success('鎵ц澧炲姞鍚庣疆浜嬩欢');
+  console.log('鎵ц澧炲姞鍚庣疆浜嬩欢');
   if(callback){
     callback(actionType);
   }
diff --git a/Source/ProjectWeb/src/actions/base/DeleteAction.js b/Source/ProjectWeb/src/actions/base/DeleteAction.js
index 5b13a26..1e199a6 100644
--- a/Source/ProjectWeb/src/actions/base/DeleteAction.js
+++ b/Source/ProjectWeb/src/actions/base/DeleteAction.js
@@ -1,16 +1,16 @@
 /**
  * 鎸夐挳澶勭悊 涓氬姟绫诲瀷鍒犻櫎
  */
-import {paramLow,callPreEvent,callPostEvent} from './BaseAction';
+import {paramLow,callPreEvent,callPostEvent,replaceFreeMarker} from './BaseAction';
 import {validatenull} from "@/util/validate";
 import Vue from "vue";
+import { del} from "@/api/base/actions"
 
-export const doAction = (options) => {
+export const doAction = (options,callback) => {
   options.paramVOS = paramLow(options.paramVOS)
   const paramVOS = Object.assign({
-    url: 'uiDataController/addSave',
-    method: 'post',
-    uploadfileurl: 'vciFileUploadController/uploadFile'
+    url: 'uiDataController/deleteData',
+    method: 'delete'
   }, options.paramVOS)
   options.paramVOS = paramVOS;
 
@@ -26,8 +26,8 @@
   }
 
   callPreEvent(options, doBefore,function (options) {
-    doAdd(options, function () {
-      callPostEvent(options,doAfter, options.callback);
+    doDelete(options, function (type) {
+      callPostEvent(options,doAfter , callback,type);
     });
   });
 };
@@ -37,12 +37,43 @@
  * @param options 鎸夐挳鐨勯厤缃俊鎭�
  * @param callback 鍥炶皟
  */
-export const doAdd = (options,callback)=> {
-  const paramVOS = options.paramVOS;
-  Vue.prototype.$message.success('鎵ц'+paramVOS.title);
-  if(callback){
-    callback(options);
+export const doDelete = (options,callback)=> {
+  let submitData = {
+    checkLinkedFlag:options.paramVOS.checklinkedflag,
+    cascade:options.paramVOS.cascade,
+    adminCascade:options.paramVOS.admincascade
   }
+  if(options.paramVOS.checkonback){
+    submitData['checkNotDelete']=options.paramVOS.checknotdelete;
+    submitData['checkNotDeleteMsg']=options.paramVOS.checknotdeletemsg;
+  }else if(options.paramVOS.checknotdelete){
+    const notdelete = options.paramVOS.checknotdelete.split('&');
+    let checknotdelete=false;
+    let msgStore={};
+    notdelete.forEach((item,i)=>{
+      for (let j=0;j<options.dataStore.length;j++){
+        if (options.dataStore[j][item.split('=')[0]] == item.split('=')[1]) {
+          checknotdelete=true;
+          msgStore=options.dataStore[j]
+          return false;
+        }
+      }
+    })
+    if (checknotdelete) {
+      Vue.prototype.$message.error(replaceFreeMarker(options.paramVOS.checknotdeletemsg,msgStore,{}) || '褰撳墠鏁版嵁涓嶅厑璁稿垹闄�');
+      return false;
+    }
+  }
+  submitData.dataList = options.dataStore;
+  del(submitData,options.paramVOS.url,options.paramVOS.method).then(() => {
+    Vue.prototype.$message({
+      type: "success",
+      message: options.paramVOS.successmsg||"鍒犻櫎鎴愬姛!"
+    });
+    if(callback){
+      callback("del");
+    }
+  });
 }
 /**
  * 鍓嶇疆浜嬩欢
@@ -60,9 +91,9 @@
  * @param options 鎸夐挳鐨勯厤缃俊鎭�
  * @param callback 鍥炶皟
  */
-export const doAfter = (options,callback)=> {
+export const doAfter = (options,callback,actionType)=> {
   Vue.prototype.$message.success('鎵ц鍒犻櫎鍚庣疆浜嬩欢');
   if(callback){
-    callback(options);
+    callback(actionType);
   }
 }
diff --git a/Source/ProjectWeb/src/actions/base/EditAction.js b/Source/ProjectWeb/src/actions/base/EditAction.js
index 2c0e519..c9fd534 100644
--- a/Source/ProjectWeb/src/actions/base/EditAction.js
+++ b/Source/ProjectWeb/src/actions/base/EditAction.js
@@ -42,7 +42,7 @@
     }
   }
   callPreEvent(options, doBefore, function (options) {
-    doAdd(options, function (type,formData) {
+    doEdit(options, function (type,formData) {
       callPostEvent(options, doAfter,type, callback);
     });
   });
@@ -53,7 +53,7 @@
  * @param options 鎸夐挳鐨勯厤缃俊鎭�
  * @param callback 鍥炶皟
  */
-export const doAdd = (options,callback)=> {
+export const doEdit = (options,callback)=> {
   const paramVOS = options.paramVOS;
   if (!paramVOS['form'] && !paramVOS['context']) {
     Vue.prototype.$message.error("鎸夐挳閰嶇疆涓嶆纭�");
diff --git a/Source/ProjectWeb/src/api/base/actions.js b/Source/ProjectWeb/src/api/base/actions.js
index d704ed5..68efaba 100644
--- a/Source/ProjectWeb/src/api/base/actions.js
+++ b/Source/ProjectWeb/src/api/base/actions.js
@@ -11,17 +11,16 @@
 // 淇敼
 export const editSave = (data,url,method) => {
   return request({
-    url: url || '/api/uiDataController/edit-save',
+    url: url || '/api/uiDataController/editSave',
     method: method || 'put',
     data
   })
 }
 // 鍒犻櫎
-export const del = (data) => {
-  let url = '/api/uiDataController/remove'
+export const del = (data,url,method) => {
   return request({
-    url,
-    method: 'post',
+    url:url || '/api/uiDataController/deleteData',
+    method: method || 'delete',
     data
   })
 }
diff --git a/Source/ProjectWeb/src/components/actions/AddEditDialog.vue b/Source/ProjectWeb/src/components/actions/AddEditDialog.vue
index 7e74447..5fec06d 100644
--- a/Source/ProjectWeb/src/components/actions/AddEditDialog.vue
+++ b/Source/ProjectWeb/src/components/actions/AddEditDialog.vue
@@ -234,7 +234,7 @@
         addSave(datas,that.paramVOS.url,that.paramVOS.method).then(() => {
           that.$message({
             type: "success",
-            message: "淇濆瓨鎴愬姛!"
+            message: that.paramVOS.successmsg||"淇濆瓨鎴愬姛!"
           });
           if(that.saveCallback){
             that.saveCallback(that.type,that.form);
@@ -242,10 +242,10 @@
           that.dialogClose();
         });
       }else{
-        editSave(that.form,that.paramVOS.url,that.paramVOS.method).then(() => {
+        editSave(datas,that.paramVOS.url,that.paramVOS.method).then(() => {
           that.$message({
             type: "success",
-            message: "淇敼鎴愬姛!"
+            message: that.paramVOS.successmsg||"淇敼鎴愬姛!"
           });
           if(that.saveCallback){
             that.saveCallback(that.type,that.form);
diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-tree.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-tree.vue
index 3a11502..9e86210 100644
--- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-tree.vue
+++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-tree.vue
@@ -275,7 +275,7 @@
     },
     handleRefresh(type,data) {
       //type:add\edit\delete
-      if(type=="delete"){
+      if(type=="delete" || type=="del"){
         this.$refs.tree.remove(this.currentClickNode);
         this.currentClickNode=null;
       }else{

--
Gitblit v1.9.3