From 53d628adb1082d7df51dc1a2151505f17b1de9a2 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期一, 11 九月 2023 14:59:07 +0800
Subject: [PATCH] bug修改,规则克隆接口修改

---
 Source/UBCS-WEB/src/views/code/code.vue |  321 ++---------------------------------------------------
 1 files changed, 14 insertions(+), 307 deletions(-)

diff --git a/Source/UBCS-WEB/src/views/code/code.vue b/Source/UBCS-WEB/src/views/code/code.vue
index cdbc7b8..91711ee 100644
--- a/Source/UBCS-WEB/src/views/code/code.vue
+++ b/Source/UBCS-WEB/src/views/code/code.vue
@@ -156,7 +156,7 @@
     >
     </advanced-query>
 
-    <!-- 缂栫爜瑙勫垯鐩稿叧瀵硅瘽妗� -->
+    <!-- 浠ヤ笅鏄紪鐮佽鍒欑浉鍏冲璇濇 -->
     <el-dialog
       :visible.sync="codeRangeSettingBox"
       append-to-body
@@ -177,150 +177,18 @@
     </el-dialog>
 
     <!-- 缂栫爜瑙勫垯,鍏嬮殕瀵硅瘽妗� -->
-    <el-dialog
+    <clone-rule-dialog
       :visible.sync="cloneSettingBox"
-      append-to-body
-      class="avue-dialog avue-dialog--top"
-      style="height: 100vh"
-      title="鍏嬮殕缂栫爜瑙勫垯"
-      top="-3%"
-      width="800px"
-    >
-      <div>
-        <el-row>
-          <el-form ref="form" :inline="true" :model="form" label-width="80px">
-            <el-form-item label="缂栧彿" required>
-              <el-input v-model="cloneCodeRuleForm.id"></el-input>
-            </el-form-item>
-            <el-form-item label="鍚嶇О" required>
-              <el-input v-model="cloneCodeRuleForm.name"></el-input>
-            </el-form-item>
-            <el-form-item class="clone-input-textarea" label="鎻忚堪">
-              <el-input
-                v-model="cloneCodeRuleForm.description"
-                :autosize="{ minRows: 3, maxRows: 5 }"
-                type="textarea"
-              ></el-input>
-            </el-form-item>
-          </el-form>
-        </el-row>
-        <el-row>
-          <p
-            style="
-              margin: 0 0px 16px 50%;
-              font-weight: 500;
-              font-size: 20px;
-              color: #000;
-            "
-          >
-            鐮佹绠$悊
-          </p>
-          <avue-crud
-            :data="cloneData"
-            :option="cloneOption"
-            :table-loading="cloneTableLoading"
-            class="clone-avue-crud"
-            @on-load="cloneDataOnLoad"
-          >
-            <template slot="menu" slot-scope="scope">
-              <el-button
-                v-show="scope.row.orderNum > 1"
-                icon="el-icon-arrow-up"
-                plain
-                size="small"
-                type="text"
-                @click="upOrderNum(scope.row)"
-                >涓婄Щ
-              </el-button>
-              <el-button
-                icon="el-icon-arrow-down"
-                plain
-                size="small"
-                type="text"
-                @click="downOrderNum(scope.row)"
-                >涓嬬Щ
-              </el-button>
-            </template>
-          </avue-crud>
-        </el-row>
-      </div>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="saveCloneCodeRule">淇� 瀛�</el-button>
-        <el-button @click="cloneSettingBox = false">鍙� 娑�</el-button>
-      </div>
-    </el-dialog>
+      :ruleData="selectionList[0]"
+      @refreshRuleTable="onLoad">
+    </clone-rule-dialog>
 
     <!-- 缂栫爜瑙勫垯,浠庡叾浠栬鍒欏厠闅嗗璇濇 -->
-    <el-dialog
+    <clone-other-basic-sec-dialog
       :visible.sync="cloneOtherCodeRuleSettingBox"
-      append-to-body
-      class="avue-dialog avue-dialog--top"
-      destroy-on-close
-      style="height: 100vh"
-      title="鍏嬮殕缂栫爜瑙勫垯鐨勫熀纭�淇℃伅"
-      top="-3%"
-      width="800px"
-    >
-      <div>
-        <el-row>
-          <p
-            style="
-              margin-top: -20px;
-              margin-bottom: 4px;
-              font-weight: 570;
-              font-size: 19px;
-              color: #0e2d5f;
-            "
-          >
-            缂栫爜瑙勫垯
-          </p>
-          <avue-crud
-            ref="crudCloneCodeRuleOther"
-            :data="data"
-            :option="cloneCodeRuleOption"
-            :page.sync="page"
-            :table-loading="loading"
-            class="other-clone-coderule-crud"
-            @row-click="codeOtherCloneRuleRowClick"
-            @size-change="sizeChange"
-            @selection-change="selectionOtherCloneCodeRuleChange"
-            @search-change="searchOtherCloneChange"
-            @search-reset="searchOtherCloneReset"
-            @on-load="onLoad"
-          >
-          </avue-crud>
-        </el-row>
-        <el-row style="margin-top: 10px; border-top: 1px solid #ebeef5">
-          <p
-            style="
-              margin-top: 10px;
-              margin-bottom: 4px;
-              font-weight: 570;
-              font-size: 19px;
-              color: #0e2d5f;
-            "
-          >
-            鐮佹淇℃伅
-          </p>
-          <avue-crud
-            ref="crudCloneCodeBasicOther"
-            :data="basicData"
-            :option="cloneBasicOption"
-            :table-loading="loadingBasic"
-            class="other-clone-codebasic-crud"
-            @row-click="codeOtherCloneBasicRowClick"
-            @selection-change="selectionOtherCloneCodeBasicChange"
-          >
-          </avue-crud>
-        </el-row>
-      </div>
-      <div slot="footer" class="dialog-footer" style="height: 50px">
-        <el-button type="primary" @click="saveOtherCodeBasic">淇� 瀛�</el-button>
-        <el-button @click="cloneOtherCodeRuleSettingBox = false"
-          >鍙� 娑�</el-button
-        >
-      </div>
-    </el-dialog>
+      :quiltCloneCodeRule="selectionList[0]"
+      @refreshRuleTable="onLoad">
+    </clone-other-basic-sec-dialog>
 
     <!-- 缂栫爜瑙勫垯,杞Щ鎵�鏈夎�呭璇濇 -->
     <el-dialog
@@ -1414,7 +1282,6 @@
   remove,
   listUseRange,
   updateStatus,
-  clone,
   clearAllCode,
   checkLikeCodeRule,
 } from "@/api/code/mdmrule";
@@ -1424,7 +1291,6 @@
   upOrderNum,
   deleteData,
   editSave,
-  cloneCodeBasic,
   addSave,
   refDataGridClassifySec,
 } from "@/api/code/codebasic";
@@ -1445,9 +1311,6 @@
 } from "@/api/code/codeClassifyValue";
 import { getDictionary } from "@/api/omd/enum";
 import optionBasic from "@/const/code/codebasic";
-import cloneOption from "@/const/code/cloneOption";
-import cloneBasicOption from "@/const/code/cloneBasicDialogOption";
-import cloneCodeRuleOption from "@/const/code/cloneCodeRuleDialogOption";
 import optionRule from "@/const/code/mdmrule";
 import attrOption from "@/const/code/selectAttrOptionDialog";
 import treeOption from "@/const/code/classifyTreeOptionDialog";
@@ -1476,24 +1339,11 @@
       data: [],
       currentRuleLcStatus: "",
 
-      /*鍏嬮殕瀵硅瘽妗嗘帶鍒跺彉閲�*/
+      /*鍏嬮殕缂栫爜瑙勫垯瀵硅瘽妗嗘帶鍒跺彉閲�*/
       cloneSettingBox: false,
-      cloneTableLoading: false,
-      cloneOption: cloneOption,
-      cloneData: [],
-      cloneCodeRuleForm: {
-        id: "",
-        name: "",
-        description: "",
-      },
       
       /*浠庡叾浠栬鍒欏厠闅嗙爜娈�*/
       cloneOtherCodeRuleSettingBox: false,
-      cloneBasicOption: cloneBasicOption,
-      cloneCodeRuleOption: cloneCodeRuleOption,
-      selectionOtherCloneCodeBasicList: [], // 姝ょ晫闈㈠唴褰撳墠閫変腑鐨勫熀纭�鐮佹
-      selectionOtherCloneCodeRuleList: [], // 姝ょ晫闈㈠唴褰撳墠閫変腑鐨勭紪鐮佽鍒�
-      otherCloneQuery: {}, // 鏌ヨ鏉′欢瀵硅薄
 
       /** 杞Щ鎵�鏈夎�呭璇濇 */
       escapeOwnerVisible: false,
@@ -1549,7 +1399,7 @@
       loadingBasic: false,
       selectionBasicList: [],
       addBasicCodeSettingBox: false,
-      showbtn: false, //鍩虹鐮佹鏂板鏄惁鏄剧ず鍩虹鐮佹
+      showbtn: false, //鍩虹鐮佹鏂板鎸夐挳鏄惁绂佺敤
       isLoadingSecCodeAddBtn: false,
       basicSecDialogTitle: "", //鍩虹鐮佹绗竴灞傚璇濇鏍囬
       basicSecOnlyRead: false, //鏂板鍩虹鐮佹琛ㄥ崟鏄惁鍙
@@ -2575,46 +2425,6 @@
         return;
       }
       this.cloneSettingBox = true;
-      this.cloneCodeRuleForm.id = this.selectionList[0].id;
-      this.cloneCodeRuleForm.name = this.selectionList[0].name;
-      this.cloneCodeRuleForm.description = this.selectionList[0].description;
-      this.loadBasic({ oid: this.selectionList[0].oid });
-    },
-    /** 鍏嬮殕缂栫爜瑙勫垯淇濆瓨鍔熻兘*/
-    saveCloneCodeRule() {
-      let form = this.cloneCodeRuleForm;
-      if (form.id.trim() == "") {
-        this.$message.warning("缂栧彿涓嶈兘涓虹┖!");
-        return;
-      }
-      if (form.name.trim() == "") {
-        this.$message.warning("鐮佸�间笉鑳戒负绌�!");
-        return;
-      }
-      this.selectionList[0].oid = "";
-      this.selectionList[0].id = form.id;
-      this.selectionList[0].name = form.name;
-      this.selectionList[0].description = form.description;
-      this.selectionList[0].createTime = new Date().getTime();
-      this.selectionList[0].ts = new Date(this.selectionList[0].ts).getTime();
-      this.selectionList[0].lcStatus = "Editing";
-      let data = Object.assign({}, this.selectionList[0], {
-        elements: this.cloneData,
-      });
-      clone(data).then(
-        () => {
-          this.cloneSettingBox = false;
-          this.onLoad(this.page);
-          this.$message({
-            type: "success",
-            message: "鎿嶄綔鎴愬姛!",
-          });
-        },
-        (error) => {
-          window.console.log(error);
-        }
-      );
-      //console.log(data);
     },
 
     /** 鎵撳紑浠庡叾浠栫紪鐮佽鍒欎腑鍏嬮殕鐮佹瀵硅瘽妗�*/
@@ -2627,99 +2437,6 @@
         return;
       }
       this.cloneOtherCodeRuleSettingBox = true;
-    },
-    /** 浠庡叾浠栫紪鐮佽鍒欎腑鍏嬮殕鐮佹瀵硅瘽妗�-鍗曞嚮缂栫爜瑙勫垯瀹炵幇琛岄�夋嫨*/
-    codeOtherCloneRuleRowClick(row) {
-      this.$refs.crudCloneCodeRuleOther.toggleSelection();
-      this.selectionOtherCloneCodeRuleList = row;
-      this.$refs.crudCloneCodeRuleOther.setCurrentRow(row);
-      this.$refs.crudCloneCodeRuleOther.toggleRowSelection(row); //閫変腑褰撳墠琛�
-      this.loadBasic(row);
-    },
-    /** 浠庡叾浠栫紪鐮佽鍒欎腑鍏嬮殕鐮佹瀵硅瘽妗�-鍗曞嚮鍩虹鐮佹瀹炵幇琛岄�夋嫨*/
-    codeOtherCloneBasicRowClick(row) {
-      this.$refs.crudCloneCodeBasicOther.toggleSelection();
-      this.selectionOtherCloneCodeBasicList = row;
-      this.$refs.crudCloneCodeBasicOther.setCurrentRow(row);
-      this.$refs.crudCloneCodeBasicOther.toggleRowSelection(row); //閫変腑褰撳墠琛�
-    },
-    /** 浠庡叾浠栬鍒欏厠闅嗙爜娈电晫闈腑缂栫爜瑙勫垯褰撳墠閫変腑琛屽彉鍖栫殑鏃跺�欒Е鍙�*/
-    selectionOtherCloneCodeRuleChange(list) {
-      //console.log(list);
-      this.selectionOtherCloneCodeRuleList = list;
-      this.$refs.crudBasic.setCurrentRow(
-        this.selectionBasicList[list.length - 1]
-      );
-      if (list == "") {
-        this.basicData = [];
-      }
-      if (this.selectionOtherCloneCodeRuleList.length > 0) {
-        this.loadBasic(this.selectionOtherCloneCodeRuleList[list.length - 1]);
-      }
-    },
-    selectionOtherCloneCodeBasicChange(list) {
-      this.selectionOtherCloneCodeBasicList = list;
-      this.$refs.crudCloneCodeBasicOther.setCurrentRow(
-        this.selectionOtherCloneCodeBasicList[list.length - 1]
-      );
-    },
-    /** 浠庡叾浠栬鍒欏厠闅嗙爜娈电晫闈㈤噸缃悳绱㈠姛鑳� */
-    searchOtherCloneReset() {
-      this.otherCloneQuery = {};
-      this.onLoad(this.page);
-    },
-    /** 浠庡叾浠栬鍒欏厠闅嗙爜娈电晫闈㈡悳绱㈠姛鑳�*/
-    searchOtherCloneChange(params, done) {
-      this.page.currentPage = 1;
-      // 澶氫釜conditionMap杩欐牱浼犲弬锛屽揩閫熸煡璇㈤粯璁ら噰鐢ㄦā绯婃煡璇�
-      let requestData = {};
-      if (params) {
-        Object.keys(params).forEach((key) => {
-          requestData["conditionMap" + "[" + key + "_like]"] =
-            params[key].trim();
-        });
-      }
-      this.otherCloneQuery = requestData;
-      this.onLoad(this.page,requestData);
-      done();
-    },
-    /** 淇濆瓨浠庡叾浠栫紪鐮佽鍒欎腑鍏嬮殕鐮佹淇℃伅*/
-    saveOtherCodeBasic() {
-      let oid = this.selectionList[0].oid;
-      let fromDialogPkCodebasic = this.selectionOtherCloneCodeBasicList;
-      if (fromDialogPkCodebasic.length <= 0) {
-        this.$message.warning("璇烽�夋嫨鐮佹鏁版嵁!");
-        return;
-      }
-      let res = fromDialogPkCodebasic.filter((item) => {
-        return item.pkCodeRule == oid;
-      });
-      if (res != "") {
-        this.$message.warning("闇�瑕佸厠闅嗙殑缂栫爜瑙勫垯涓庤鍏嬮殕鐨勭紪鐮佽鍒欑浉鍚�!");
-        return;
-      }
-      let oidArr = [];
-      fromDialogPkCodebasic.forEach((ele) => {
-        oidArr.push(ele.oid);
-      });
-      let data = {
-        pkCodeRule: oid,
-        oidArr: oidArr.join(","),
-      };
-      //console.log(data);
-      cloneCodeBasic(data).then(
-        () => {
-          this.cloneOtherCodeRuleSettingBox = false;
-          this.onLoad(this.page);
-          this.$message({
-            type: "success",
-            message: "鎿嶄綔鎴愬姛!",
-          });
-        },
-        (error) => {
-          window.console.log(error);
-        }
-      );
     },
 
     /** 娓呯┖鐮佸��*/
@@ -3235,11 +2952,7 @@
     },
     /** 鐐瑰嚮瑙﹀彂鍔犺浇鍩虹鐮佹淇℃伅*/
     loadBasic(row) {
-      if (this.cloneSettingBox) {
-        this.cloneTableLoading = true;
-      } else {
-        this.loadingBasic = true;
-      }
+      this.loadingBasic = true;
       // console.log(row.oid);
       if (row != "" || row != null) {
         //瀛樺偍褰撳墠鍏宠仈鐨勭紪鐮佽鍒欑浉鍏充俊鎭�
@@ -3272,14 +2985,8 @@
       gridCodeBasicSec(1, -1, isAdancedQuery ? condition : conditionMaps).then(
         (res) => {
           const data = res.data.data;
-          if (this.cloneSettingBox) {
-            this.cloneData = data.records;
-            this.cloneTableLoading = false;
-          } else {
-            this.basicData = data.records;
-            // console.log(this.basicData);
-            this.loadingBasic = false;
-          }
+          this.basicData = data.records;
+          this.loadingBasic = false;
         }
       );
     },

--
Gitblit v1.9.3