From fc6ab71d6b6269ef31202662458a5287ef1f7ba9 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期四, 09 十一月 2023 19:11:00 +0800
Subject: [PATCH] 最大流水号提交

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

diff --git a/Source/UBCS-WEB/src/views/code/code.vue b/Source/UBCS-WEB/src/views/code/code.vue
index 91711ee..5210e2d 100644
--- a/Source/UBCS-WEB/src/views/code/code.vue
+++ b/Source/UBCS-WEB/src/views/code/code.vue
@@ -1,5 +1,5 @@
 <template>
-  <basic-container class="code-total" style="height: 100%">
+  <basic-container class="code-total" style=" height: 100%">
     <!-- 缂栫爜瑙勫垯淇℃伅灞曠ず鍖哄煙 -->
     <basic-container class="code-rule-container">
       <p
@@ -36,8 +36,7 @@
       >
         <!-- 琛ㄦ牸鍐呮搷浣滄寜閽� -->
         <template slot="menu" slot-scope="scope">
-          <el-button
-            v-show="scope.row.lcStatus == 'Editing' ? true : false"
+          <el-button v-if="permissionList.editBtn && (scope.row.lcStatus == 'Editing' ? true : false)"
             icon="el-icon-edit"
             plain
             size="small"
@@ -45,8 +44,7 @@
             @click="openEdit(scope.row)"
             >缂� 杈�
           </el-button>
-          <el-button
-            v-show="scope.row.lcStatus == 'Editing' ? true : false"
+          <el-button v-if="permissionList.releaseBtn && (scope.row.lcStatus == 'Editing' ? true : false)"
             :loading="releadDisabled"
             icon="el-icon-position"
             plain
@@ -55,8 +53,7 @@
             @click="enableOrDeactivatse(scope.row.oid, 'release')"
             >鍙� 甯�
           </el-button>
-          <el-button
-            v-show="scope.row.lcStatus == 'Released' ? true : false"
+          <el-button v-if="permissionList.deactivateBtn && (scope.row.lcStatus == 'Released' ? true : false)"
             icon="el-icon-video-pause"
             plain
             size="small"
@@ -64,8 +61,7 @@
             @click="enableOrDeactivatse(scope.row.oid, 'disable')"
             >鍋� 鐢�
           </el-button>
-          <el-button
-            v-show="scope.row.lcStatus == 'Disabled' ? true : false"
+          <el-button v-if="permissionList.enableBtn && (scope.row.lcStatus == 'Disabled' ? true : false)"
             icon="el-icon-video-play"
             plain
             size="small"
@@ -76,7 +72,7 @@
         </template>
         <!-- 琛ㄦ牸涓婃柟鎸夐挳鍖哄煙 -->
         <template slot="menuLeft" slot-scope="scope">
-          <el-button
+          <el-button v-if="permissionList.rulDelBtn"
             icon="el-icon-delete"
             plain
             size="small"
@@ -85,16 +81,15 @@
           >
             鍒� 闄�
           </el-button>
-          <el-button
+          <el-button v-if="permissionList.advancedQueryBtn"
             icon="el-icon-search"
             plain
             size="small"
             type="primary"
-            @click="openAdvancedQuery('codeRule')"
-          >
+            @click="openAdvancedQuery('codeRule')">
             楂樼骇鏌ヨ
           </el-button>
-          <el-button
+          <el-button v-if="permissionList.cloneBtn"
             icon="icon-kelong"
             plain
             size="small"
@@ -102,7 +97,7 @@
           >
             鍏� 闅�
           </el-button>
-          <el-button
+          <el-button v-if="permissionList.otherCloneBtn"
             icon="icon-lianjiekelong"
             plain
             size="small"
@@ -111,7 +106,7 @@
           >
             浠庡叾浠栬鍒欎腑鍏嬮殕鐮佹
           </el-button>
-          <el-button
+          <el-button v-if="permissionList.usescopeBtn"
             icon="el-icon-s-help"
             plain
             size="small"
@@ -119,7 +114,7 @@
           >
             浣跨敤鑼冨洿
           </el-button>
-          <el-button
+          <el-button v-if="permissionList.clearBtn"
             icon="icon-qingkong"
             plain
             size="small"
@@ -127,7 +122,7 @@
           >
             娓呯┖鐮佸��
           </el-button>
-          <el-button
+          <el-button  v-if="permissionList.escapeOwnerBtn"
             icon="el-icon-guide"
             plain
             size="small"
@@ -135,7 +130,7 @@
           >
             杞Щ鎵�鏈夎��
           </el-button>
-          <el-button
+          <el-button  v-if="permissionList.maxSerialnumBtn"
             icon="el-icon-data-analysis"
             plain
             size="small"
@@ -223,21 +218,18 @@
     <!-- 鍩虹鐮佹灞曠ず鍖哄煙 -->
     <basic-container class="code-basicsec-container">
       <p
-        style="
-          margin-top: -5px;
+        style="margin-top: -5px;
           margin-bottom: 4px;
           font-weight: 570;
           font-size: 19px;
-          color: #0e2d5f;
-        "
-      >
+          color: #0e2d5f;">
         鐮佹绠$悊
       </p>
       <avue-crud
         ref="crudBasic"
         :data="basicData"
         :option="optionBasic"
-        :permission="permissionList"
+        :permission="basicPermissionList"
         :table-loading="loadingBasic"
         class="code-basic-crud"
         @row-click="codeBasicSecRowClick"
@@ -248,8 +240,7 @@
       >
         <!-- 鍩虹鐮佹琛ㄦ牸鍐呮搷浣滄寜閽� -->
         <template slot="menu" slot-scope="scope">
-          <el-button
-            v-show="currentRuleLcStatus != 'Editing'"
+          <el-button v-if="basicPermissionList.viewBtn && currentRuleLcStatus != 'Editing'"
             icon="el-icon-view"
             plain
             size="small"
@@ -257,8 +248,7 @@
             @click="openBasicDialog('view', scope.row)"
             >鏌ョ湅
           </el-button>
-          <el-button
-            v-show="currentRuleLcStatus === 'Editing'"
+          <el-button v-if="basicPermissionList.editBtn && currentRuleLcStatus === 'Editing'"
             icon="el-icon-edit"
             plain
             size="small"
@@ -266,11 +256,7 @@
             @click="openBasicDialog('edit', scope.row)"
             >缂栬緫
           </el-button>
-          <el-button
-            v-show="
-              scope.row.secType === 'codeclassifysec' ||
-              scope.row.secType == 'codefixedsec'
-            "
+          <el-button v-if="basicPermissionList.basicMgrBtn && (scope.row.secType === 'codeclassifysec' || scope.row.secType == 'codefixedsec')"
             icon="el-icon-setting"
             plain
             size="small"
@@ -278,8 +264,7 @@
             @click="openBasicSecCodeValueMgr(scope.row)"
             >鐮佸�肩鐞�
           </el-button>
-          <el-button
-            v-show="scope.row.orderNum > 1"
+          <el-button v-if="basicPermissionList.basicMoveupBtn && scope.row.orderNum > 1"
             icon="el-icon-arrow-up"
             plain
             size="small"
@@ -287,7 +272,7 @@
             @click="upOrderNum(scope.row)"
             >涓婄Щ
           </el-button>
-          <el-button
+          <el-button v-if="basicPermissionList.basicDownBtn"
             icon="el-icon-arrow-down"
             plain
             size="small"
@@ -299,7 +284,7 @@
 
         <!-- 鍩虹鐮佹琛ㄦ牸宸︿笂鏂规寜閽尯鍩� -->
         <template slot="menuLeft" slot-scope="scope">
-          <el-button
+          <el-button v-if="basicPermissionList.addBtn"
             :disabled="selectionList.length <= 0"
             icon="el-icon-plus"
             size="small"
@@ -308,7 +293,7 @@
           >
             鏂� 澧�
           </el-button>
-          <el-button
+          <el-button v-if="basicPermissionList.basicDelBtn"
             :disabled="selectionList.length <= 0"
             icon="el-icon-delete"
             plain
@@ -318,7 +303,7 @@
           >
             鍒� 闄�
           </el-button>
-          <el-button
+          <el-button  v-if="basicPermissionList.basicAdvancedQueryBtn"
             :disabled="selectionList.length <= 0"
             icon="el-icon-search"
             plain
@@ -591,16 +576,16 @@
       :title="basicSecDialogTitle"
       :visible.sync="addBasicCodeSettingBox"
       append-to-body
-      class="avue-dialog avue-dialog--top"
+      class="avue-dialog avue-dialog--top add-basicsec-dialog"
       destroy-on-close
       lock-scroll
-      style="height: 100vh"
+      style="height: 105vh"
       top="-3%"
       width="900px"
       @close="clearBasicAddForm"
     >
       <!--  绗竴灞傚璇濇,娣诲姞鐮佹淇℃伅瀵硅瘽妗嗕腑鐨勫唴瀹� -->
-      <div class="add-basicsec-total" style="overflow-y: auto; height: 58vh">
+      <div class="add-basicsec-total">
         <el-form :model="form" class="add-basicsec-form">
           <span class="left">
             <el-form-item
@@ -629,7 +614,7 @@
 
             <el-form-item
               :label-width="leftFormLabelWidth"
-              label="鐮佹绫诲瀷"
+              label="鐮佹绫诲瀷:"
               required
             >
               <el-select
@@ -646,6 +631,24 @@
                 >
                 </el-option>
               </el-select>
+            </el-form-item>
+
+            <el-form-item
+              :label-width="leftFormLabelWidth"
+              label="鍓嶇紑:">
+              <el-input
+                v-model="form.prefixCode"
+                :readonly="basicSecOnlyRead"
+              ></el-input>
+            </el-form-item>
+
+            <el-form-item
+              :label-width="leftFormLabelWidth"
+              label="鍚庣紑:">
+              <el-input
+                v-model="form.suffixCode"
+                :readonly="basicSecOnlyRead">
+              </el-input>
             </el-form-item>
 
             <el-form-item :label-width="leftFormLabelWidth" label="鎻忚堪:">
@@ -833,9 +836,9 @@
                 >
                   <el-option
                     v-for="item in enumParam.codeFillSeparator"
-                    :key="item.itemValue"
-                    :label="item.itemName"
-                    :value="item.itemValue"
+                    :key="item.dictKey"
+                    :label="item.dictValue"
+                    :value="item.dictValue"
                   >
                   </el-option>
                 </el-select>
@@ -1128,9 +1131,9 @@
                 >
                   <el-option
                     v-for="item in enumParam.codeFillSeparator"
-                    :key="item.itemValue"
-                    :label="item.itemName"
-                    :value="item.itemValue"
+                    :key="item.dictKey"
+                    :label="item.dictValue"
+                    :value="item.dictValue"
                   >
                   </el-option>
                 </el-select>
@@ -1140,7 +1143,7 @@
         </el-form>
       </div>
       <!-- 绗竴灞傚璇濇鐨勬寜閽拰鍒嗛殧绾挎潯 -->
-      <el-divider class="horizontal-line" direction="horizontal"></el-divider>
+      <!-- <el-divider class="horizontal-line" direction="horizontal"></el-divider> -->
       <div slot="footer" class="dialog-footer">
         <el-button
           :disabled="!showbtn"
@@ -1201,9 +1204,7 @@
           </el-row>
         </div>
         <div slot="footer" class="dialog-footer">
-          <el-button type="primary" @click="selectedListClassifyLinkAttr"
-            >纭� 瀹�</el-button
-          >
+          <el-button type="primary" @click="selectedListClassifyLinkAttr">纭� 瀹�</el-button>
           <el-button @click="isShowSelectAttrOption = false">鍙� 娑�</el-button>
         </div>
       </el-dialog>
@@ -1310,6 +1311,7 @@
   saveCodeClassifyValueOrder,
 } from "@/api/code/codeClassifyValue";
 import { getDictionary } from "@/api/omd/enum";
+import { getDictionaryBiz } from "@/api/system/dictbiz";
 import optionBasic from "@/const/code/codebasic";
 import optionRule from "@/const/code/mdmrule";
 import attrOption from "@/const/code/selectAttrOptionDialog";
@@ -1320,10 +1322,12 @@
 import { mapGetters } from "vuex";
 import { getByRoleUserList } from "@/api/system/user";
 import func from "@/util/func";
+import secTypeEnum from '@/enumpack/CodeSecTypeEnum';
 
 export default {
   data() {
     return {
+      crudOption:{...optionRule},
       ruleForm: {},
       query: {},
       loading: true,
@@ -1341,7 +1345,7 @@
 
       /*鍏嬮殕缂栫爜瑙勫垯瀵硅瘽妗嗘帶鍒跺彉閲�*/
       cloneSettingBox: false,
-      
+
       /*浠庡叾浠栬鍒欏厠闅嗙爜娈�*/
       cloneOtherCodeRuleSettingBox: false,
 
@@ -1548,6 +1552,8 @@
         serialDependFlag: false, //鏄惁娴佹按渚濊禆
         serialDependOrder: "", //娴佹按渚濊禆椤哄簭
         nullableFlag: false, //鏄惁涓虹┖
+        prefixCode: "", //鍓嶇紑
+        suffixCode: "", //鍚庣紑
         displayFlag: false, //
         componentCodeFlag: false, //鏄惁鍙備笌缂栫爜
         pkCodeRule: "", //鎵�灞炵紪鐮佽鍒�
@@ -1586,11 +1592,35 @@
     ...mapGetters(["permission"]),
     permissionList() {
       return {
-        addBtn: this.vaildData(this.permission.codeRule_add, true),
-        viewBtn: this.vaildData(this.permission.codeRule_view, false),
-        delBtn: this.vaildData(this.permission.plCodeRule_delete, false),
-        editBtn: this.vaildData(this.permission.codeRule_edit, true),
+        // 缂栫爜瑙勫垯鐩稿叧鎸夐挳
+        addBtn: this.vaildData(this.permission.code_rule.code_rule_add, false),
+        //viewBtn: this.vaildData(this.permission.code_rule.code_rule_view, false),
+        rulDelBtn: this.vaildData(this.permission.code_rule.code_rule_delete, false),
+        editBtn: this.vaildData(this.permission.code_rule.code_rule_edit, false),
+        deactivateBtn: this.vaildData(this.permission.code_rule.code_rule_deactivate, false),
+        enableBtn: this.vaildData(this.permission.code_rule.code_rule_enable, false),
+        releaseBtn: this.vaildData(this.permission.code_rule.	code_rule_release, false),
+        advancedQueryBtn: this.vaildData(this.permission.code_rule.code_rule_advanced_query, false),
+        cloneBtn: this.vaildData(this.permission.code_rule.code_rule_clone, false),
+        otherCloneBtn: this.vaildData(this.permission.code_rule.code_rule_other_clone, false),
+        usescopeBtn: this.vaildData(this.permission.code_rule.code_rule_usescope, false),
+        clearBtn: this.vaildData(this.permission.code_rule.code_rule_clear, false),
+        escapeOwnerBtn: this.vaildData(this.permission.code_rule.code_rule_escape_owner, false),
+        maxSerialnumBtn: this.vaildData(this.permission.code_rule.code_rule_max_serialnum, false),
       };
+    },
+    basicPermissionList() {
+      return{
+        // 鍩虹鐮佹鐩稿叧鎸夐挳
+        addBtn: this.vaildData(this.permission.code_rule.code_basic_add, false),
+        editBtn: this.vaildData(this.permission.code_rule.code_basic_edit, false),
+        viewBtn: this.vaildData(this.permission.code_rule.	code_basic_view, false),
+        basicDelBtn: this.vaildData(this.permission.code_rule.code_basic_delete, false),
+        basicAdvancedQueryBtn: this.vaildData(this.permission.code_rule.code_basic_advanced_query, false),
+        basicMgrBtn: this.vaildData(this.permission.code_rule.code_basic_mgr, false),
+        basicMoveupBtn: this.vaildData(this.permission.code_rule.code_basic_moveup, false),
+        basicDownBtn: this.vaildData(this.permission.code_rule.code_basic_down, false),
+      }
     },
   },
   watch: {},
@@ -1603,6 +1633,16 @@
       this.$refs.crud.doLayout();
       this.$refs.crudBasic.doLayout();
     });
+  },
+  // 鐢熷懡閽╁瓙鍑芥暟
+  beforeDestroy() {
+    // 娓呴櫎鎸囧畾缂撳瓨
+    localStorage.removeItem('codeSecType');
+    localStorage.removeItem('codeSecLength');
+    localStorage.removeItem('codeFillType');
+    localStorage.removeItem('codeLevelType');
+    localStorage.removeItem('codeCutType');
+    localStorage.removeItem('codeGetValueType');
   },
   methods: {
 
@@ -1646,11 +1686,11 @@
       if (JSON.stringify(conditionMaps) != "{}") {
         if (this.advancedQueryParam.currentOpen == "codeRule") {
           this.query = conditionMaps;
+          // console.log(this.query);
           this.onLoad(this.page);
         } else {
           this.sendGridCodeBasicSec(conditionMaps, true);
         }
-        //console.log(conditionMaps);
       }
     },
     /* 鍏紡缂栬緫妗嗗唴瀹规敼鍙�,瀛愮粍浠剁紪杈戝畬鍏紡涔嬪悗鍐呭鍥炴樉鏃惰皟鐢� */
@@ -1659,12 +1699,12 @@
     },
     /* 寮曠敤鐮佹鍙傜収閰嶇疆,瀛愮粍浠跺~瀹屽弬鐓ч厤缃箣鍚庡唴瀹瑰洖鏄炬椂璋冪敤 */
     setReferConfigValue(content) {
-      // console.log(content.referTypeName);
       this.form.referBtmId = content.referType || "";
       this.form.referBtmName = content.referTypeName || content.referType;
       //杞崲鎴怞SON瀛楃涓茶繘琛岀埗缁勪欢鍥炴樉
       let submitFormJson = JSON.stringify(content);
       this.form.referConfig = submitFormJson || "";
+      debugger;
     },
     /** 寮曠敤鐮佹涓恒�愬弬鐓у紩鐢ㄧ殑涓氬姟绫诲瀷銆戦�夊彇鍊间箣鍚庣殑鍐呭鍥炴樉鏃惰皟鐢� */
     echoReferBtmType(content) {
@@ -1676,7 +1716,6 @@
     /** 鐖跺垎绫婚�夋嫨瀵硅瘽妗嗭紝绗簩灞傚祵濂楀璇濇锛屽強鍏剁浉鍏虫柟娉� */
     /** 淇濆瓨褰撳墠鐖跺垎绫荤爜娈电殑閫変腑琛岋紝骞惰繘琛屽洖鏄� */
     saveSelectedParentClassify() {
-      //console.log(this.parentClsfyParams.parentClassifySelectionList.length);
       if (this.parentClsfyParams.parentClassifySelectionList.length != 1) {
         this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�!");
         return false;
@@ -1744,7 +1783,6 @@
         page.pageSize,
         conditionMaps
       ).then((res) => {
-        //console.log(res.data);
         const data = res.data.data;
         parentClsParam.parentClassifyDataPage.total = data.total;
         parentClsParam.parentClassifyData = data.records;
@@ -1762,7 +1800,6 @@
     /** 鍔犺浇鍒嗙被杩炴帴灞炴�ц〃鏍兼暟鎹� */
     loadlistClassifyLinkAttr() {
       let attrParam = this.selectAttrParams;
-      //console.log(this.currentSelectTreeData);
       this.selectAttrParams.selectAttrOptionLoading = true;
       let conditionMaps = {};
       if (attrParam.selectAttrQeury) {
@@ -1780,7 +1817,6 @@
         this.$nextTick(() => {
           this.$refs[attrParam.ref].doLayout();
         });
-        //console.log(data.data);
         this.selectAttrParams.selectAttrData = data.data;
         this.selectAttrParams.selectAttrOptionLoading = false;
         // 灏嗘悳绱㈡鍐呭缃┖
@@ -1850,13 +1886,11 @@
       this.fixedValueOptionLoading = true;
       gridCodeFixedValue(1, -1, { codeFixedSecOid: row.oid }).then((res) => {
         this.fixedValueData = res.data.data.records;
-        //console.log(this.fixedValueData);
         this.fixedValueOptionLoading = false;
       });
     },
     /** 鍗曞嚮鍥哄畾鐮佹鐨勭爜鍊艰〃涓鏃惰Е鍙戠殑浜嬩欢*/
     selectedCodeValueRow(row) {
-      //console.log(row);
       this.selectedFixedOrCodeclassifyValue = row;
       this.codeFixdForm.id = row.id;
       this.codeFixdForm.description = row.description;
@@ -1868,14 +1902,15 @@
         if (!this.tipsCodeSecValueMessage(this.codeFixdForm.id)) {
           return;
         }
-        this.codeFixdForm.codeFixedSecOid =
-          this.codefixedsecOrCodeclassifysec.oid;
+        this.codeFixdForm.codeFixedSecOid = this.codefixedsecOrCodeclassifysec.oid;
         addSaveCodeFixedValue(this.codeFixdForm).then(
           () => {
             this.loadFixedValueTableData({
               oid: this.codefixedsecOrCodeclassifysec.oid,
             });
             this.clearFixedOrClassifyForm("codefixedsec");
+            this.$refs.crudFixedValue.refreshTable();
+            this.$refs.crudFixedValue.doLayout();
             this.$message({
               type: "success",
               message: "鎿嶄綔鎴愬姛!",
@@ -1891,7 +1926,6 @@
         }
         this.codeClassifyForm.codeClassifySecOid =
           this.codefixedsecOrCodeclassifysec.oid;
-        // console.log(this.codeClassifyForm);
         addSaveCodeClassifyValue(this.codeClassifyForm).then(
           () => {
             this.loadClassifyValueData({
@@ -1916,7 +1950,6 @@
     clearFixedOrClassifyForm(condition) {
       //鐐瑰嚮鍙栨秷鏃舵竻绌鸿〃鍗曚笌褰撳墠閫変腑鐨勭爜鍊硷紝骞剁鐢ㄦ寜閽�
       this.selectedFixedOrCodeclassifyValue = "";
-      //console.log(condition);
       if (condition === "close") {
         this.codeFixdForm = this.$options.data().codeFixdForm;
         this.codeClassifyForm = this.$options.data().codeClassifyForm;
@@ -2310,6 +2343,12 @@
             queryField: "lcStatus",
             comboxKey: "codeSearchLCStatus",
           },
+          {
+            data: [],
+            title: "鎵�鏈夎��",
+            fieldType: "text",
+            queryField: "ownerText",
+          },
         ];
       } else {
         this.advancedQueryParam.options = [
@@ -2414,11 +2453,11 @@
           .catch((error) => {
             this.releadDisabled = false;
           });
+        this.releadDisabled = false;
       } else {
         this.updateStatus(oid, update);
       }
     },
-    
     /** 鎵撳紑缂栫爜瑙勫垯鍏嬮殕瀵硅瘽妗�*/
     openCodeRuleDialog() {
       if (!this.tipsMessage(this.selectionList)) {
@@ -2426,7 +2465,6 @@
       }
       this.cloneSettingBox = true;
     },
-
     /** 鎵撳紑浠庡叾浠栫紪鐮佽鍒欎腑鍏嬮殕鐮佹瀵硅瘽妗�*/
     openOtherCodeRuleDialog() {
       if (!this.tipsMessage(this.selectionList)) {
@@ -2469,7 +2507,6 @@
     },
     /** 娣诲姞*/
     rowSave(row, done, loading) {
-      console.log(row);
       add(row).then(
         () => {
           this.onLoad(this.page);
@@ -2545,7 +2582,7 @@
       this.query = {};
       this.onLoad(this.page);
     },
-    // 缂栫爜瑙勫垯蹇�熸煡璇�
+    // 缂栫爜瑙勫垯蹇�熸煡璇earchChange
     searchChange(params, done) {
       this.page.currentPage = 1;
       // 澶氫釜conditionMap杩欐牱浼犲弬锛屽揩閫熸煡璇㈤粯璁ら噰鐢ㄦā绯婃煡璇�
@@ -2558,6 +2595,11 @@
       }
       this.query = requestData;
       this.onLoad(this.page, this.query);
+      // console.log(  this.findObject(this.optionRule.column,'id'))
+      // console.log(this.crudOption.column[0])
+      // this.crudOption.column && this.crudOption.column.length > 0
+      //   ? (this.crudOption.column[0].value = '')
+      //   : null;
       done();
     },
     /** 缂栫爜瑙勫垯褰撳墠閫変腑琛屽彉鍖栫殑鏃跺�欒Е鍙�*/
@@ -2595,7 +2637,11 @@
     },
     onLoad(page, params = {}) {
       this.loading = true;
-      gridCodeRule(page.currentPage, page.pageSize, params).then((res) => {
+      gridCodeRule(
+        page.currentPage,
+        page.pageSize,
+        Object.assign({},params,this.query),
+      ).then((res) => {
         //console.log(res.data);
         const data = res.data.data;
         this.page.total = data.total;
@@ -2650,13 +2696,13 @@
         this.basicSecDialogTitle = "淇敼鐮佹淇℃伅";
         this.showbtn = true;
         this.basicSecOnlyRead = false;
-        //涓篺orm缁戝畾鍊�
       } else {
         this.basicSecDialogTitle = "鏌ョ湅鐮佹淇℃伅";
         this.showbtn = false;
         this.basicSecOnlyRead = true;
       }
       //console.log(this.form);
+      //涓篺orm缁戝畾鍊�
       this.changeSectypeFormItems(condition == "add" ? null : row);
       this.addBasicCodeSettingBox = true;
     },
@@ -2679,16 +2725,16 @@
                 type: "success",
                 message: "鎿嶄綔鎴愬姛!",
               });
+              // 鍏抽棴瀵硅瘽妗�
+              this.addBasicCodeSettingBox = false;
+              // 鐐瑰嚮鏂板鍩虹鐮佹,鍏抽棴绐楀彛涔嬪悗瑙﹀彂閲嶆柊鍔犺浇
+              this.loadBasic(this.selectionList[0]);
             },
             (error) => {
               window.console.log(error);
             }
           );
-          // 鍏抽棴瀵硅瘽妗�
-          this.addBasicCodeSettingBox = false;
         }
-        // 鐐瑰嚮鏂板鍩虹鐮佹,鍏抽棴绐楀彛涔嬪悗瑙﹀彂閲嶆柊鍔犺浇
-        this.loadBasic(this.selectionList[0]);
       } else {
         // 鍙兘鍙傜収寮曠敤鐨勪笟鍔$被鍨嬩細鍙戠敓鏀瑰彉鎵�浠ヨ繖鍎跨洿鎺ュreferConfig鐨刯son杩涜鏀瑰彉
         if (
@@ -2702,21 +2748,38 @@
           // let referValueInfo = JSON.parse(this.form.referValueInfo);
           // referValueInfo.referType = this.form.referBtmId;
         }
-        editSave(this.form).then(
+        let oldBasicSec = this.selectionBasicList.at(-1);
+        let secType = this.form.secType;
+        Vue.set(this.form, 'isClearValue', false);
+        if((oldBasicSec.secType == "codefixedsec" || oldBasicSec.secType === "codeclassifysec") && oldBasicSec.secType != secType){
+          await this.$confirm("鐮佹绫诲瀷鐢便��"+oldBasicSec.secTypeText+"銆戯紝淇敼涓�"+"銆�"+secTypeEnum.getTextByValue(secType)+"銆戯紝璇烽棶鏄惁闇�瑕佹竻绌哄叧鑱旂殑鐮佸�硷紵", "鎻愮ず", {
+            distinguishCancelAndClose: true,
+            closeOnClickModal: false,
+            confirmButtonText: "娓呯┖鐮佸��",
+            cancelButtonText: "淇濈暀鐮佸��",
+          }).then(() => {
+            // 娓呯┖鐮佸��
+            this.form.isClearValue = true;
+          }).catch(action => {
+            this.form.isClearValue = false;
+          });
+        }
+        await editSave(this.form).then(
           () => {
             this.$message({
               type: "success",
               message: "鎿嶄綔鎴愬姛!",
             });
+            this.loadBasic(this.selectionList[0]);
+            // 鍏抽棴瀵硅瘽妗�
+            this.addBasicCodeSettingBox = false;
           },
           (error) => {
             window.console.log(error);
           }
         );
-        this.loadBasic(this.selectionList[0]);
-        // 鍏抽棴瀵硅瘽妗�
-        this.addBasicCodeSettingBox = false;
       }
+      // 鍙栨秷淇濆瓨鎸夐挳鍔犺浇鏁堟灉
       this.isLoadingSecCodeAddBtn = false;
     },
     /** 鍥犱负elementui鐨勮〃鍗曟牎楠岃缃笉涓婃墍浠ラ噰鐢ㄥ垽鏂殑鏂瑰紡鏉ュ仛琛ㄥ崟妫�楠屾柟寮�*/
@@ -2924,6 +2987,10 @@
     /** 鍩虹鐮佹鍒犻櫎*/
     deleteBasicCode() {
       if (!this.tipsMessage(this.selectionBasicList)) {
+        return;
+      }
+      if (this.selectionList.at(-1).lcStatus != "Editing") {
+        this.$message.warning('缂栫爜瑙勫垯鐘舵�佷笉鏄�"缂栬緫涓�"锛屼笉鍏佽鍒犻櫎鐮佹!');
         return;
       }
       let oid = this.selectionBasicList[0].oid;
@@ -3144,42 +3211,27 @@
     },
     /** 鐮佹绫诲瀷鏀瑰彉鏃讹紝澧炲姞瀵瑰簲鐨刦orm琛ㄥ崟涓殑灞炴��*/
     changeSectypeFormItems(row) {
-      //console.log(row);
       if (
         func.isEmpty(this.enumParam.secTypeList) ||
         this.enumParam.secTypeList.length == 0
       ) {
         this.loadCodeSecType();
       }
-      if (row != null) {
-        this.form = {
-          oid: row.oid,
-          id: row.id, //缂栧彿,
-          name: row.name, //鍚嶇О
-          secType: row.secType, //鐮佹绫诲瀷
-          description: row.description, //鎻忚堪
-          serialDependFlag: row.serialDependFlag == "true" ? true : false, //鏄惁娴佹按渚濊禆
-          serialDependOrder: row.serialDependOrder, //娴佹按渚濊禆椤哄簭
-          nullableFlag: row.nullableFlag == "true" ? true : false, //鏄惁涓虹┖
-          displayFlag: row.displayFlag == "true" ? true : false,
-          componentCodeFlag: row.componentCodeFlag == "true" ? true : false, //鏄惁鍙備笌缂栫爜
-          pkCodeRule: row.pkCodeRule, //鎵�灞炵紪鐮佽鍒�
-        };
-      } else {
-        this.form = {
-          id: this.form.id, //缂栧彿
-          name: this.form.name, //鍚嶇О
-          secType: this.form.secType, //鐮佹绫诲瀷
-          description: this.form.description, //鎻忚堪
-          serialDependFlag: this.form.serialDependFlag, //鏄惁娴佹按渚濊禆
-          serialDependOrder: this.form.serialDependOrder, //娴佹按渚濊禆椤哄簭
-          nullableFlag: this.form.nullableFlag, //鏄惁涓虹┖
-          displayFlag: this.form.displayFlag, //
-          componentCodeFlag: this.form.componentCodeFlag, //鏄惁鍙備笌缂栫爜
-          pkCodeRule: this.form.pkCodeRule, //鎵�灞炵紪鐮佽鍒�
-        };
-        //console.log(this.form);
-      }
+      this.form = {
+        oid: row !=null ? row.oid:this.form.oid,
+        id: row != null ? row.id:this.form.id, //缂栧彿,
+        name: row != null ? row.name:this.form.name, //鍚嶇О
+        secType: row != null ?  row.secType:this.form.secType, //鐮佹绫诲瀷
+        description:  row != null ? row.description:this.form.description, //鎻忚堪
+        serialDependFlag: this.isNullJsonBoolean(row,this.form, 'serialDependFlag'), //鏄惁娴佹按渚濊禆
+        serialDependOrder:  row !=null ? row.serialDependOrder:this.form.serialDependOrder, //娴佹按渚濊禆椤哄簭
+        nullableFlag: this.isNullJsonBoolean(row, this.form, 'nullableFlag'), //鏄惁涓虹┖
+        displayFlag: this.isNullJsonBoolean(row, this.form, 'displayFlag'),
+        componentCodeFlag: this.isNullJsonBoolean(row, this.form, 'componentCodeFlag'), //鏄惁鍙備笌缂栫爜
+        pkCodeRule:  row != null ? row.pkCodeRule:this.form.pkCodeRule, //鎵�灞炵紪鐮佽鍒�
+        prefixCode: row != null ? row.prefixCode:this.form.prefixCode, //鍓嶇紑
+        suffixCode: row!= null ? row.suffixCode:this.form.suffixCode, //鍚庣紑
+      };
       if (this.form.secType === "codefixedsec") {
         //鍥哄畾鐮佹
         this.form = Object.assign({}, this.form, {
@@ -3244,8 +3296,6 @@
               ? row.customCodeSerialClass
               : "", //鑷畾涔夋祦姘寸畻娉�
         });
-        console.log(this.form);
-        console.log(this.enumParam.codeFillType);
         this.loadCodeFillType();
         this.loadCodeFillSeparator();
       } else if (this.form.secType === "codelevelsec") {
@@ -3291,7 +3341,6 @@
               : "", //鏃ユ湡鏍煎紡
         });
       } else if (this.form.secType === "codeclassifysec") {
-        //console.log(this.form);
         //鍒嗙被鐮佹
         this.form = Object.assign({}, this.form, {
           codeSecLengthType:
@@ -3334,7 +3383,15 @@
         this.loadCodeFillType();
         this.loadCodeFillSeparator();
       }
-      // console.log(this.form);
+    },
+    // 鍒ゆ柇Boolean鍊兼槸鍚︿负绌猴紝骞朵笖瀵箂tr绫诲瀷甯冨皵鍊艰繘琛岃浆鎹�
+    isNullJsonBoolean(row,form,attr) {
+        //console.log(row[attr],form[attr]);
+        if(row != null){
+          return JSON.parse(row[attr]);
+        }else {
+          return form[attr];
+        }
     },
     /** 绗竴娆¤姹傜殑鏋氫妇鏁版嵁鏀剧紦瀛�*/
     getLocalStorageEnum(enumKey) {
@@ -3369,16 +3426,17 @@
       this.enumParam.codeFillType = this.getLocalStorageEnum("codeFillType") || [];
     },
     loadCodeFillSeparator() {
-      let enumCach = JSON.parse(localStorage.getItem("codeFillSeparator"));
-      if (enumCach == null) {
-        getDictionary("codeFillSeparator").then((res) => {
-          this.enumParam.codeFillSeparator = res.data.data;
-          localStorage.setItem(
-            "codeFillSeparator",
-            JSON.stringify(res.data.data)
-          );
-        });
-      }
+      //let enumCach = JSON.parse(localStorage.getItem("codeFillSeparator"));
+      //if (enumCach == null) {
+      getDictionaryBiz({code:"codeFillSeparator"}).then((res) => {
+        this.enumParam.codeFillSeparator = res.data.data;
+        //console.log(this.enumParam.codeFillSeparator);
+        localStorage.setItem(
+          "codeFillSeparator",
+          JSON.stringify(res.data.data)
+        );
+      });
+      //}
     },
     loadCodeLevelType() {
       this.enumParam.codeLevelType = this.getLocalStorageEnum("codeLevelType") || [];
@@ -3391,9 +3449,12 @@
     },
     // 鏈�澶ф祦姘村彿
     maxSerialNum() {
-      console.log(this.selectionList);
-      if (this.selectionList.length === 0) {
+      if (this.selectionList.length <= 0) {
         this.$message.warning("璇烽�夋嫨涓�鏉$紪鐮佽鍒欙紒");
+        return;
+      }
+      if(this.selectionList.length> 1){
+        this.$message.warning("鍙兘閫夋嫨涓�鏉$紪鐮佽鍒欙紒");
         return;
       }
       this.maxSerial.visible = true;
@@ -3404,145 +3465,155 @@
 </script>
 
 <style>
-[class^="icon-"] {
-  font-size: 12px !important;
-}
+  [class^="icon-"] {
+    font-size: 12px !important;
+  }
 
-.code-rule-crud > .avue-crud__search,
-.code-basic-crud > .avue-crud__search {
-  margin-bottom: -15px;
-}
+  .code-rule-crud > .avue-crud__search,
+  .code-basic-crud > .avue-crud__search {
+    margin-bottom: -15px;
+  }
 
-.clone-input-textarea > .el-form-item__content {
-  width: 495px;
-}
+  .clone-input-textarea > .el-form-item__content {
+    width: 495px;
+  }
 
-.clone-avue-crud > .el-card > .el-card__body > .avue-crud__menu {
-  display: none !important;
-}
+  .clone-avue-crud > .el-card > .el-card__body > .avue-crud__menu {
+    display: none !important;
+  }
 
-.fixed-avue-crud > .el-card > .el-card__body > .avue-crud__menu {
-  display: none !important;
-}
+  .fixed-avue-crud > .el-card > .el-card__body > .avue-crud__menu {
+    display: none !important;
+  }
 
-.other-clone-codebasic-crud > .el-card > .el-card__body > .avue-crud__menu {
-  display: none !important;
-}
+  .other-clone-codebasic-crud > .el-card > .el-card__body > .avue-crud__menu {
+    display: none !important;
+  }
 
-.other-clone-coderule-crud > .el-card > .el-card__body > .avue-crud__menu {
-  display: none !important;
-}
+  .other-clone-coderule-crud > .el-card > .el-card__body > .avue-crud__menu {
+    display: none !important;
+  }
 
-.el-table--small .el-table__cell {
-  padding: 3px 0;
-}
+  .el-table--small .el-table__cell {
+    padding: 3px 0;
+  }
 
-.classify_value_box > .el-scrollbar {
-  height: 95%;
-}
+  .classify_value_box > .el-scrollbar {
+    height: 95%;
+  }
 
-.basic-container > .el-card > .el-card__body {
-  margin: -10px 0;
-}
+  .basic-container > .el-card > .el-card__body {
+    margin: -10px 0;
+  }
 
-.code-basicsec-container {
-  padding: 1px 6px;
-}
+  .code-basicsec-container {
+    padding: 1px 6px;
+  }
 
-.horizontal-line {
-  /* margin-top: 19px !important; */
-  margin-bottom: -20px !important;
-  width: 100%;
-  height: 2px;
-}
+  .horizontal-line {
+    /* margin-top: 19px !important; */
+    margin-bottom: -20px !important;
+    width: 100%;
+    height: 2px;
+  }
 
-.el-card__body > .treeBox {
-  height: 56vh;
-}
+  .el-card__body > .treeBox {
+    height: 56vh;
+  }
 
-.el-col-5 > .box {
-  height: 56vh;
-}
+  .el-col-5 > .box {
+    height: 56vh;
+  }
 
-.operator_,
-filter,
-.layui-btn {
-  width: 60px;
-}
+  .operator_,
+  filter,
+  .layui-btn {
+    width: 60px;
+  }
 
-.left > .el-form-item > .el-form-item__content > .el-input-number {
-  width: 120px;
-}
+  .left > .el-form-item > .el-form-item__content > .el-input-number {
+    width: 120px;
+  }
 
-.left
-  > .el-form-item
-  > .el-form-item__content
-  > .el-input-number
-  > .el-input
-  > .el-input__inner {
-  width: 120px;
-}
+  .left
+    > .el-form-item
+    > .el-form-item__content
+    > .el-input-number
+    > .el-input
+    > .el-input__inner {
+    width: 120px;
+  }
 
-.el-col > .el-card > .el-card__header {
-  background: rgb(213 231 239);
-  border-radius: inherit;
-}
+  .el-col > .el-card > .el-card__header {
+    background: rgb(213 231 239);
+    border-radius: inherit;
+  }
 
-/** 鏂板鐮佹 */
-.add-basicsec-total {
-  width: 100%;
-}
+  /** 鏂板鐮佹 */
+  .add-basicsec-dialog > .el-dialog > .el-dialog__body {
+    padding: 20px 20px 4px;
+    margin-bottom: 30px;
+  }
 
-.add-basicsec-total .el-input__inner,
-.add-basicsec-total .el-textarea__inner {
-  width: 220px;
-}
+  .add-basicsec-total {
+    width: 100%;
+    height: 500px;
+  }
 
-.add-basicsec-total > .add-basicsec-form {
-  display: flex;
-  flex-direction: row;
-  width: 100%;
-  height: 100%;
-  align-items: center;
-  justify-content: space-around;
-}
+  .add-basicsec-total .el-input__inner,
+  .add-basicsec-total .el-textarea__inner {
+    width: 220px;
+  }
 
-.add-basicsec-form > .el-divider--vertical {
-  width: 2px;
-  height: 100%;
-  margin: 0 auto;
-  /* position: fixed; */
-}
-
-.left {
-  /* float: left; */
-  width: 45%;
-  height: 100%;
-}
-
-.right {
-  /* float: right; */
-  margin-right: 2vw;
-  height: 100%;
-  width: auto;
-}
-
-.right > .el-form > .el-form-item {
-  margin-bottom: 8px;
-}
-
-/* 瀵硅瘽妗嗗簳閮ㄦ寜閽竟妗嗘牱寮� */
-.el-dialog__footer {
-  /* width: 100%; */
-  border-top: 1px solid #e9e7e7;
-  padding: 5px 10px 10px;
-}
-
-.seloption {
-  margin-left: 10px;
-}
-
-/* .code-total > .basic-container__card {
+  .add-basicsec-total > .add-basicsec-form {
+    display: flex;
+    flex-direction: row;
+    width: 100%;
     height: 100%;
-  } */
+    align-items: center;
+    justify-content: space-around;
+  }
+
+  .add-basicsec-form > .el-divider--vertical {
+    width: 2px;
+    height: 78%;
+    position: absolute;
+    top: 50%;
+    left: 50%;
+    transform: translate(-50%, -50%);
+  }
+
+  .left {
+    /* float: left; */
+    width: 45%;
+    height: 100%;
+  }
+
+  .right {
+    /* float: right; */
+    margin-right: 2vw;
+    height: 100%;
+    width: auto;
+  }
+
+  .add-basicsec-form > .left > .el-form-item,
+  .add-basicsec-form > .right > div > .el-form-item{
+    margin-bottom: 12px;
+  }
+
+  /* 瀵硅瘽妗嗗簳閮ㄦ寜閽竟妗嗘牱寮� */
+  .el-dialog__footer {
+    /* width: 100%; */
+    border-top: 1px solid #e9e7e7;
+    padding: 5px 10px 10px;
+  }
+
+  .seloption {
+    margin-left: 10px;
+  }
+
+  /* .code-total > .basic-container__card {
+      height: 100%;
+    } */
+
 </style>

--
Gitblit v1.9.3