From 8be1b149327239d4fb9587e72bc8f438013f9838 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 12 七月 2023 20:26:17 +0800
Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs

---
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMsMapperProcessor.java       |    2 
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessorStrategy.java |    2 
 Source/UBCS-WEB/src/components/Tree/classifyTrees.vue                                                          |   73 ++
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMySqlMapperProcessor.java    |    2 
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMySqlMapperProcessor.java    |    2 
 Source/UBCS-WEB/src/api/GetItem.js                                                                             |    8 
 Source/UBCS-WEB/src/components/template/SetPersonnel.vue                                                       |    1 
 Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue                                                       |   12 
 Source/UBCS-WEB/vue.config.js                                                                                  |    4 
 Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/VciSpringUtil.java          |    2 
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMapperProcessStrategy.java   |    2 
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlOracleMapperProcessor.java   |    2 
 Source/UBCS-WEB/src/components/file/inHtml.vue                                                                 |    3 
 Source/UBCS-WEB/src/views/modeling/Business.vue                                                                |   10 
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllOracleMapperProcessor.java   |    2 
 Source/UBCS-WEB/src/components/Master/MasterTree.vue                                                           |    2 
 Source/UBCS-WEB/src/components/work/BusinessWork.vue                                                           |   19 
 Source/UBCS/ubcs-service-api/ubcs-ddl-api/src/main/java/com/vci/ubcs/ddl/bo/DdlFieldMappingAttrBO.java         |   13 
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMsMapperProcessor.java       |    2 
 Source/UBCS-WEB/src/views/MasterData/items.vue                                                                 |   14 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/dto/BtmTypeDTO.java                   |    2 
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlDmMapperProcessor.java       |    2 
 Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/BtmTypeAttributeMapper.xml                         |    5 
 Source/UBCS-WEB/src/views/modeling/BusinessAdd.vue                                                             | 1050 ++++++++++++++++++++++---------------------
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllSqlLiteMapperProcessor.java  |    2 
 Source/UBCS-WEB/src/components/file/main.vue                                                                   |   24 
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java       |   21 
 Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue                                                          |   74 ++
 Source/UBCS-WEB/src/views/work/process/leave/handle.vue                                                        |    9 
 Source/UBCS-WEB/src/components/file/inDialog.vue                                                               |    1 
 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/mapper/BtmTypeAttributeMapper.java            |    2 
 Source/UBCS-WEB/src/components/Tree/attrCrud.vue                                                               |   33 
 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java          |    4 
 33 files changed, 780 insertions(+), 626 deletions(-)

diff --git a/Source/UBCS-WEB/src/api/GetItem.js b/Source/UBCS-WEB/src/api/GetItem.js
index a6464c9..9281bd4 100644
--- a/Source/UBCS-WEB/src/api/GetItem.js
+++ b/Source/UBCS-WEB/src/api/GetItem.js
@@ -46,3 +46,11 @@
   })
 }
 
+//娴佺▼鎵ц涓〃澶�
+export function FlowTable(data){
+  return request({
+    url: 'api/ubcs-code/mdmEngineController/getFlowdUIInfoByClassifyOid',
+    method: 'get',
+    data
+  })
+}
diff --git a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
index be3ea00..a7b9b6f 100644
--- a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
+++ b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
@@ -27,7 +27,7 @@
       </div>
       <el-row style="height: 700px; width: 100%">
         <div>
-          <el-button v-for="(item, index) in masterVrBtnList" :key="index" plain size="small" type="primary"
+          <el-button v-for="(item, index) in masterVrBtnList" :key="index" plain size="small" type="primary" v-if="!['PREVIEW', 'DELETEFILE', 'revisefile', 'DOWNLOADFILE', 'UPLOADFILE'].includes(item.uniqueFlag)"
                      @click="handelBtnClick(item)">{{
               item.name
             }}
@@ -92,7 +92,8 @@
     integrationTransfer,
     SetPersonnel,
     ResembleQueryDialog,
-    BatchImport
+    BatchImport,
+    // fileInHtml
   },
   name: "Crud.vue",
   props: {
@@ -148,9 +149,11 @@
         type: "PUBLIC",
         template: "",
         vars: {
-          codeClassifyOid: ""
+          codeClassifyOid: "",
+          templateOid:""
         }
       },
+      visibleNames:[],
       visibleFlow: false,
       transferData: [],
       transferProps: {
@@ -193,7 +196,15 @@
         codeClassifyOid: ''
       },
       // 涓绘暟鎹寜閽�
-      masterVrBtnList: []
+      masterVrBtnList: [],
+      fileOptions:{
+        ownbizOid:"1",
+        ownbizBtm:"1",
+        fileDocClassify:'!=processAuditSuggest',
+        fileDocClassifyName:'',
+        hasDownload:true,
+        hasUpload:true
+      }
     };
   },
   computed: {},
@@ -213,8 +224,7 @@
     codeClassifyOid: {
       handler(newval, oldval) {
         this.codeClassifyOid = newval;
-        this.parameter.vars.codeClassifyOid = newval;
-        console.log('瀛�',newval)
+        this.parameter.vars.codeClassifyOid = newval
       },
       deep: true,
     },
@@ -251,6 +261,8 @@
     templateOid: {
       handler(newval, oldval) {
         this.parameter.code = newval;
+        this.fileOptions.ownbizOid="1";
+        this.parameter.vars.templateOid = newval
       },
       deep: true,
     },
@@ -334,6 +346,10 @@
       this.editShow = column.property;
       this.rowOid = row.oid;
     },
+    handleRowClick(row,column){
+      this.fileOptions.ownbizOid= row.oid;
+      this.fileOptions.ownbizBtm=row.btmname;
+    },
     //鍒犻櫎
     enumDeleteRow(row) {
       this.tableData.splice(row, 1);
@@ -352,8 +368,7 @@
     CrudHeaderRend() {
       if (this.codeClassifyOid != "") {
         MasterTable({
-          codeClassifyOid: this.codeClassifyOid,
-          functionId: 5,
+          codeClassifyOid: this.codeClassifyOid
         }).then((res) => {
           this.options = res.data.tableDefineVO.seniorQueryColumns;
           this.List = res.data.tableDefineVO.cols[0];
@@ -421,19 +436,18 @@
       });
     },
     //澶氶��
-    handleSelectionChange(row) {
-      console.log(row)
-      if (this.row) {
-        this.rowOid = row[0].oid;
-      } else {
-        this.rowOid = "";
-      }
-      this.selectRow = row;
+    handleSelectionChange(list) {
+      this.selectRow = list;
       this.parameter.ids = [];
-      row.forEach((item) => {
+      list.forEach((item) => {
         this.parameter.ids.push(item.oid);
       });
-      console.log('  this.parameter.ids', this.parameter.ids)
+    },
+    //閫夋嫨
+    handleSelection(list,row) {
+      this.fileOptions.ownbizOid= row.oid;
+      this.fileOptions.ownbizBtm=row.btmname;
+
     },
     //缂栬緫
     editHandler() {
@@ -504,9 +518,9 @@
       })
     },
     openBatchImport(type) {
-      this.batchImportData.visible = true;
-      this.batchImportData.type = type;
-      this.batchImportData.codeClassifyOid = this.codeClassifyOid;
+      this.batchImportData.visible = true
+      this.batchImportData.type = type
+      this.batchImportData.codeClassifyOid = this.codeClassifyOid
     }
   },
 };
@@ -517,6 +531,7 @@
   .el-table--scrollable-x .el-table__body-wrapper {
     overflow: auto !important;
   }
+
   .el-table__fixed-right-patch {
     background-color: #f5f7fa !important;
   }
@@ -525,4 +540,21 @@
 /deep/ .el-button {
   margin: 0 10px 10px 0;
 }
+
+.main {
+  display: flex;
+  flex-direction: column;
+  height: calc(100vh - 150px);
+  min-height: 400px;
+}
+.top {
+  overflow-y: scroll;
+  min-height: 55%;
+}
+
+.bottom {
+  margin-top: 20px;
+  max-height: 43%;
+  overflow-y: scroll;
+}
 </style>
diff --git a/Source/UBCS-WEB/src/components/Master/MasterTree.vue b/Source/UBCS-WEB/src/components/Master/MasterTree.vue
index ea42225..9c1c430 100644
--- a/Source/UBCS-WEB/src/components/Master/MasterTree.vue
+++ b/Source/UBCS-WEB/src/components/Master/MasterTree.vue
@@ -1,7 +1,7 @@
 <template>
   <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="Treedata" :defaultExpandAll="false"
              :option="Treeoption"
-             style="height: 80.5vh;padding-top: 5px;padding-bottom: 30px"
+             style="height: calc(100vh - 150px);"
              @node-click=" nodeClick"
   ></avue-tree>
 </template>
diff --git a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
index 92ee657..5e22116 100644
--- a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
+++ b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
@@ -1,7 +1,7 @@
 <template>
   <div>
-    <div style="display: flex;flex-wrap: wrap;" v-if="this.crudArrayFlag" class="app">
-      <el-button-group>
+    <div style="display: flex;flex-wrap: wrap;" v-if="this.crudArrayFlag">
+
       <!--鏂板-->
       <el-button v-if="attrEditVisible == false && attrFlagChiledren==false" size="small" type="primary" icon="el-icon-plus" @click="busineHandle">娣诲姞 {{ msg }}</el-button>
       <!--        鍏ㄥ睆缂栬緫-->
@@ -10,8 +10,8 @@
       <el-button icon="el-icon-info" size="small" @click="ruleAddHandler">楠岃瘉瑙勫垯</el-button>
       <!--        灞炴�у垎缁�-->
       <el-button icon="el-icon-menu" size="small" @click="attrVisibleHandle">灞炴�у垎缁�</el-button>
-      </el-button-group>
-      <el-button-group>
+
+
       <!--        鍒嗙被娉ㄥ叆-->
       <el-button icon="el-icon-magic-stick" size="small" @click="injectBtn">鍒嗙被娉ㄥ叆</el-button>
         <!--    缁勫悎瑙勫垯-->
@@ -22,8 +22,8 @@
       <el-button size="small" @click="CascadeHandle">绾ц仈灞炴��</el-button>
       <!--    棰勮鎺掑簭-->
         <el-button size="small" @click="orderHandle" icon="el-icon-arrow-down">棰勮鎺掑簭</el-button>
-      </el-button-group>
-      <el-button-group>
+
+
       <!--    淇濆瓨-->
       <el-button size="small" @click="addsHandler" icon="el-icon-check">淇濆瓨</el-button>
       <!--    鍒犻櫎-->
@@ -32,7 +32,7 @@
       <el-button size="small" @click="reset" icon="el-icon-refresh-right">閲嶇疆</el-button>
       <!--    鍚屾鍒板叾浠栨ā鏉�-->
       <el-button size="small"@click="syncHandle" icon="el-icon-share">鍚屾鍒板叾浠栨ā鏉�</el-button>
-      </el-button-group>
+
       <!--    缂栫爜鐢宠棰勮-->
       <el-button size="small" @click="applicationHandle" style="">缂栫爜鐢宠棰勮</el-button>
       <!--        楠岃瘉瑙勫垯-->
@@ -242,7 +242,7 @@
     </div>
     <el-table :data="ProData"
               style="width: 100%"
-              :height='attrEditVisible == false && attrFlagChiledren==false?400 :750'
+              height="280"
               @cell-click="handleCellClicks"
               @select="selectHandle"
               @selection-change="selectionChange"
@@ -936,13 +936,11 @@
         column: [
           {
             label: "灞炴�ц嫳鏂囧悕绉�",
-            prop: "id",
-            width:110
+            prop: "id"
           },
           {
             label: "灞炴�т腑鏂囧悕绉�",
-            prop: "name",
-            width:110
+            prop: "name"
           },
           {
             label: "闀垮害",
@@ -1486,7 +1484,6 @@
     //涓氬姟绫诲瀷閫夋嫨
     businessSelect(selection, row) {
       this.busineSelectList = selection
-      console.log(selection)
     },
     // 浠庝笟鍔$被鍨嬩腑閫夋嫨鏁版嵁寮圭獥
     busineHandle() {
@@ -1548,7 +1545,7 @@
       console.log(row)
     },
     //琛ㄦ牸閫夋嫨
-    selectionChange(list,) {
+    selectionChange(list) {
       this.attrSelectList = list;
       console.log(list)
     },
@@ -1590,6 +1587,8 @@
       }else if(column.property == 'verifyRule'){
         this.RulesForm.expressionTextt=this.CurrentCell.verifyRule;
         this.rulesVisible=true;
+        console.log(this.CurrentCell.verifyRule)
+        console.log(this.RulesForm.expressionText)
       }
     },
     saveRows() {
@@ -1816,9 +1815,7 @@
 </script>
 
 <style scoped lang="scss" >
-.app {
-   /deep/ .el-button {
-     margin: 0 10px 10px 0;
-     }
+/deep/ .el-button {
+  margin: 0 10px 10px 0;
 }
 </style>
diff --git a/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue b/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue
index 9a71b38..236d931 100644
--- a/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue
+++ b/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue
@@ -94,7 +94,7 @@
         </template>
         <avue-crud :data="BtmData" :option="masterOption" @select="btmSelect"></avue-crud>
         <div style="height: 30px">
-          <div style="display: inline-block;float: left;border: 1px solid #eee;padding: 5px;margin-top: 5px;font-size: 14px " >宸茶缃殑鍊间负:[{{this.loneTreeNewForm.btmtypename}}]</div>
+          <div style="display: inline-block;float: left;border: 1px solid #eee;padding: 5px;margin-top: 5px;font-size: 14px " >宸茶缃殑鍊间负:[{{this.loneTreeNewForm.btmTypeName}}]</div>
           <div style="padding-top: 10px;display: flex; justify-content: flex-end;float: right;overflow: hidden" >
             <el-button type="primary" size="small" @click="btmHandlerClick">纭畾</el-button>
             <el-button  size="small" @click="BtmdialogVisible=false">鍙栨秷</el-button>
@@ -226,7 +226,7 @@
           },
           {
             label: '瀛樺偍鐨勪笟鍔$被鍨�',
-            prop: 'btmtypename',
+            prop: 'btmTypeName',
             labelWidth:128,
             disabled: true,
             rules: [{
@@ -294,7 +294,7 @@
             },
             {
               label: '瀛樺偍鐨勪笟鍔$被鍨�',
-              prop: 'btmtypename',
+              prop: 'btmTypeName',
               labelWidth:128,
               focus:this.btmFoucus,
                 // readonly: true,
@@ -355,6 +355,8 @@
       TreeEditSave(this.loneTreeNewForm).then(res=>{
         this.$message.success('淇敼鎴愬姛');
         this.Editclose()
+        this.$emit('referTreeForm');
+        this.$emit('flushed');
         done()
       })
     },
@@ -540,8 +542,8 @@
       }else {
         this.BtmdialogVisible=false;
         this.btmSelectList=[]
-        this.$set(this.loneTreeNewForm,'btmtypename',this.btmName ||this.btmOid)
-        this.$set(this.loneTreeNewForm,'btmtypeid',this.btmOid)
+        this.$set(this.loneTreeNewForm,'btmTypeName',this.btmName ||this.btmOid)
+        this.$set(this.loneTreeNewForm,'btmTypeid',this.btmOid)
         this.$emit('MasterHandler',this.loneTreeNewForm)
       }
     },
diff --git a/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue b/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
index c659dfa..b1ed81c 100644
--- a/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
+++ b/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
@@ -6,13 +6,19 @@
       <basic-container style="height: 85vh; max-height: 155vh; overflow-y: scroll;">
         <div>
         <div>
-          <div style="display: flex;justify-content: space-around">
-            <el-button plain size="small" type="primary" @click="TreeAdd">娣诲姞</el-button>
-            <el-button plain size="small" type="primary" @click="TreeEdit">淇敼</el-button>
-            <el-button plain size="small" type="primary" @click="TreeDel">鍒犻櫎</el-button>
-<!--            <el-button plain size="small" type="primary" @click="ExportExcel">瀵煎嚭</el-button>-->
-<!--            <el-button plain size="small" type="primary" @click="ImportExcel">瀵煎叆</el-button>-->
-            <el-button plain size="small" type="primary" @click="flushed">鍒锋柊</el-button>
+          <div style="display: flex; flex-direction: column;">
+            <div style="display: flex;">
+              <el-button plain size="small" type="primary" @click="TreeAdd">娣诲姞</el-button>
+              <el-button plain size="small" type="primary" @click="TreeEdit">淇敼</el-button>
+              <el-button plain size="small" type="primary" @click="TreeDel">鍒犻櫎</el-button>
+              <el-button plain size="small" type="primary" @click="flushed">鍒锋柊</el-button>
+            </div>
+            <div style="display: flex; margin-top: 10px">
+              <el-button plain size="small" type="primary" @click="Enable">鍚敤</el-button>
+              <el-button plain size="small" type="primary" @click="Deactivate">鍋滅敤</el-button>
+              <el-button plain size="small" type="primary" @click="ImportExcel">瀵煎叆</el-button>
+              <el-button plain size="small" type="primary" @click="ExportExcel">瀵煎嚭</el-button>
+            </div>
           </div>
           <div style="display: flex;justify-content: space-around;margin-top: 5px;margin-bottom: 5px">
           </div>
@@ -52,7 +58,7 @@
         </el-dialog>
         <!--        淇敼瀵硅瘽妗�-->
         <el-dialog :visible.sync="TreeEditFormVisible" append-to-body title="淇敼鍒嗙被">
-          <classifyTreeform ref="childForm" :loneTreeNewForm="TreeList" :nodeList="nodeList" :flag="'edit'" @MasterHandler="MasterHandler" :Editclose=" ()=>{TreeEditFormVisible=false}" :TreeFlag="TreeFlagCode" ::nodeClickList="nodeClickList"></classifyTreeform>
+          <classifyTreeform ref="childForm" :loneTreeNewForm="TreeList" :nodeList="nodeList" :flag="'edit'" @MasterHandler="MasterHandler" :Editclose=" ()=>{TreeEditFormVisible=false}" :TreeFlag="TreeFlagCode" ::nodeClickList="nodeClickList" @referTreeForm="referTreeForm" @flushed="flushed"></classifyTreeform>
         </el-dialog>
         <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata" :defaultExpandAll="false"
                    :option="Treeoption"
@@ -73,7 +79,7 @@
         </span>
         <span v-else-if="type.prop==='tab2'">
             <basic-container>
-               <avue-crud v-model="crudForm" v-loading="FormLoing" :data="this.Formlist" :option="this.crudTreeOption"
+               <avue-crud ref="textCrud" v-model="crudForm" v-loading="FormLoing" :data="this.Formlist" :option="this.crudTreeOption"
                           @row-save="CrudRowSave"
                           @row-del="CrudRowDel"
                           @row-update="CrudRowUpdata"
@@ -83,8 +89,6 @@
             <template slot="menuLeft">
               <el-button plain size="small" type="primary" @click="FindeHanler">鏌ヨ</el-button>
               <el-button plain size="small" type="primary" @click="TemRefresh">鍒锋柊</el-button>
-            <el-button plain size="small" type="primary" @click="Enable">鍚敤</el-button>
-            <el-button plain size="small" type="primary" @click="Deactivate">鍋滅敤</el-button>
               <el-button plain size="small" type="primary" @click="CloneBtn">浠庡叾瀹冩ā鏉垮厠闅�</el-button>
               <!--              鏌ヨ瀵硅瘽妗�-->
            <el-dialog :visible.sync="FindFormVisible" append-to-body title="楂樼骇鏌ヨ">
@@ -145,6 +149,7 @@
                             <avue-crud v-model="ClonecrudForm" v-loading="FormLoing" :data="this.CloneFormlist"
                                        :option="this.ClonecrudTreeOption"
                                        @selection-change="selectionChange"
+
                             ></avue-crud>
                          </div>
                        </el-main>
@@ -165,7 +170,16 @@
                     </el-dialog>
                 </el-dialog>
             </template>
-                  <template #menu="{ size, row }">
+                  <template #menu="{ size, row ,index}">
+                    <el-button type="text"
+                               v-if="row.lcStatus != 'Released'"
+                               icon="el-icon-edit-outline "
+                                :size="size"
+                                @click="$refs.textCrud.rowEdit(row)">缂栬緫</el-button>
+                    <el-button type="text"
+                               icon="el-icon-delete"
+                               :size="size"
+                               @click="$refs.textCrud.rowDel(row,index)">鍒犻櫎</el-button>
                 <el-button
                   v-show="row.lcStatus === 'Released'"
                   @click="upAndStopAndStart(row, 'upVersion')"
@@ -326,7 +340,7 @@
   //浣跨敤inject鎺ユ敹鍙傛暟
   //Treeoption宸︿晶鏍戞柊澧炶〃鍗曢」 Treedata宸︿晶鏍戣妭鐐� 閰嶇疆椤� crudTreeOption鍙充晶琛ㄦ牸閰嶇疆椤� crudTreeData鍙充晶琛ㄦ牸鏄剧ず鍐呭
   //Treeform鍙充晶琛ㄥ崟閰嶇疆椤�
-  inject: [, "crudTreeData"],
+  inject: ["crudTreeData"],
   data() {
     return {
       //鏍戣妭鐐规樉绀洪殣钘�
@@ -621,7 +635,9 @@
           funAPi: startRelease,
           load: 'startReleaseLoad'
         }
-      }
+      },
+      //妯℃澘绠$悊缂栬緫
+      showEditBtn:false,
     }
   },
   //tab鏍忛粯璁ゆ槸琛ㄦ牸
@@ -634,9 +650,7 @@
         this.$refs.tree.setCurrentKey(null)
         this.nodeClickList = {}
         this.TreeList=[]
-        this.TreeFlagCode=false
-        console.log('鍚嶵reeList',this.TreeList)
-        console.log('鍚巒odeClickList',this.nodeClickList)
+        this.TreeFlagCode=false;
       }
     }, true)
   },
@@ -648,6 +662,8 @@
         height:180,
         selection:true,
         addBtn:this.Formlist.length<=0  && this.nodeClickList != "",
+        editBtn:false,
+        delBtn:false,
         column: [
           {
             label: "妯℃澘缂栧彿",
@@ -686,6 +702,10 @@
     }
   },
   methods: {
+    //妯℃澘绠$悊宸插彂甯冪紪杈�
+    // checkShowEditBtn() {
+    //   this.showEditBtn = this.Formlist.some(item => item.lcStatus === 'Released');
+    // },
     //缂栫爜瑙勫垯澶辩劍
     CodeFoucus(){
       this.MasterdialogVisible=true;
@@ -1129,16 +1149,17 @@
               this.codeClassifyOid = item.codeclassifyoid
               return item.codeclassifyoid == this.nodeClickList.oid
             }
+            console.log('Formlist',this.Formlist)
           })
         }).catch(res => {
           this.$message.error(res)
         })
         //  鍩烘湰淇℃伅琛ㄥ崟鏁版嵁
-        await getObjectByOid(this.nodeClickList.oid).then(res => {
-          this.TreeList = res.data.data;
-        }).catch(res => {
-          this.$message.error(res)
-        })
+          await getObjectByOid(this.nodeClickList.oid).then(res => {
+            this.TreeList = res.data.data;
+          }).catch(res => {
+            this.$message.error(res)
+          })
       } catch (error) {
         this.$message.error(error)
       }
@@ -1146,6 +1167,14 @@
     treeClick(e) {
       console.log(e);
     },
+    //鍩烘湰淇℃伅琛ㄥ崟鍒锋柊
+    referTreeForm(){
+       getObjectByOid(this.nodeClickList.oid).then(res => {
+        this.TreeList = res.data.data;
+      }).catch(res => {
+        this.$message.error(res)
+      })
+    },
     //鍏嬮殕妯℃澘鏍戠殑鐐瑰嚮鍒囨崲鏁版嵁
     async ClonenodeClick(data){
       this.ClonenodeClickList=data;
diff --git a/Source/UBCS-WEB/src/components/file/inDialog.vue b/Source/UBCS-WEB/src/components/file/inDialog.vue
index 574f0f2..ad21a36 100644
--- a/Source/UBCS-WEB/src/components/file/inDialog.vue
+++ b/Source/UBCS-WEB/src/components/file/inDialog.vue
@@ -9,6 +9,7 @@
              :width="options.width|| '80%'">
     <fileContent
       :options="options"
+      :ownbizOid="options.ownbizOid"
     ></fileContent>
   </el-dialog>
   </div>
diff --git a/Source/UBCS-WEB/src/components/file/inHtml.vue b/Source/UBCS-WEB/src/components/file/inHtml.vue
index 66eddf1..31b6ef7 100644
--- a/Source/UBCS-WEB/src/components/file/inHtml.vue
+++ b/Source/UBCS-WEB/src/components/file/inHtml.vue
@@ -1,9 +1,8 @@
 <template>
-  <basic-container>
     <fileContent
       :options="options"
+      :ownbizOid="options.ownbizOid"
     ></fileContent>
-  </basic-container>
 </template>
 
 <script>
diff --git a/Source/UBCS-WEB/src/components/file/main.vue b/Source/UBCS-WEB/src/components/file/main.vue
index cfbd438..44f196f 100644
--- a/Source/UBCS-WEB/src/components/file/main.vue
+++ b/Source/UBCS-WEB/src/components/file/main.vue
@@ -7,6 +7,7 @@
                :before-open="beforeOpen"
                :permission="permissionList"
                v-model="form"
+               :height="options.height || 200"
                ref="crud"
                @row-del="rowDel"
                @search-change="searchChange"
@@ -67,13 +68,14 @@
 import {validatenull} from "@/util/validate";
 
 export default {
-  props: ["options","visible"],
+  props: ["options","visible","ownbizOid"],
   data() {
     return {
       form: {},
       query: {},
       params:{},
       loading: false,
+      hasPage:this.options.hasPage||false,
       page: {
         pageSize: 10,
         currentPage: 1,
@@ -232,6 +234,12 @@
   mounted() {
 
   },
+  watch:{
+    ownbizOid(val){
+      this.setParams()
+      this.refreshChange()
+    }
+  },
   methods: {
     setFormItem(){
       /*this.options.formItems=[{
@@ -312,9 +320,9 @@
     setParams() {
       var queryMap = {
         currentButtonKey: 'VIEW',
-        ownbizOid:this.options.ownbizOid || "share",
-        ownBtmName:this.options.ownbizBtm || "share",
-        fileDocClassify: this.options.fileDocClassify|| "ADMIN_SHARE",
+        ownbizOid: this.options.ownbizOid || "share",
+        ownBtmName: this.options.ownbizBtm || "share",
+        fileDocClassify: this.options.fileDocClassify || "ADMIN_SHARE",
         fileDocClassifyName: this.options.fileDocClassifyName || "绠$悊鍛樺叡浜枃浠�"
       };
       if (this.options.where) {
@@ -330,6 +338,12 @@
       }
       this.page.pageSize = this.options.pageObject.limit;
       this.page.currentPage = this.options.pageObject.page;
+
+      this.attachOption.column[1].data.ownbizOid = this.options.ownbizOid || "share";
+      this.attachOption.column[1].data.ownBtmName = this.options.ownbizBtm || "share";
+      this.attachOption.column[1].data.fileDocClassify = this.options.fileDocClassify || "ADMIN_SHARE";
+      this.attachOption.column[1].data.fileDocClassifyName = this.options.fileDocClassifyName || "绠$悊鍛樺叡浜枃浠�"
+
     },
     handleUpload() {
       this.attachOption.column[1].data.fileOid='';
@@ -448,7 +462,7 @@
       this.page.pageSize = pageSize;
     },
     refreshChange() {
-      this.onLoad(this.page, this.query);
+      this.onLoad(this.page);
     },
     onLoad(page, params={}) {
       this.loading = true;
diff --git a/Source/UBCS-WEB/src/components/template/SetPersonnel.vue b/Source/UBCS-WEB/src/components/template/SetPersonnel.vue
index 22644e7..2c7a417 100644
--- a/Source/UBCS-WEB/src/components/template/SetPersonnel.vue
+++ b/Source/UBCS-WEB/src/components/template/SetPersonnel.vue
@@ -76,6 +76,7 @@
         visible(n) {
             this.dialogVisible = n;
             if (n) {
+              this.saveParam=this.setSaveParam();
                 this.apiInit()
                 this.apiDict()
             }
diff --git a/Source/UBCS-WEB/src/components/work/BusinessWork.vue b/Source/UBCS-WEB/src/components/work/BusinessWork.vue
index 4f0b688..3597bfa 100644
--- a/Source/UBCS-WEB/src/components/work/BusinessWork.vue
+++ b/Source/UBCS-WEB/src/components/work/BusinessWork.vue
@@ -40,11 +40,11 @@
 
 <script>
 import {businese} from '@/api/work/businese'
-import {MasterTable} from "@/api/GetItem";
+import {FlowTable} from "@/api/GetItem";
 import {validatenull} from "@/util/validate";
 export default {
   name: "BusinessWork",
-  props:['ids','templateId'],
+  props:['ids','templateId',"taskId","modelKey","codeClassifyOid"],
   data() {
     return {
       BuinessOids:[],
@@ -78,9 +78,11 @@
     //琛ㄦ牸澶存覆鏌�
     CrudHeaderRend() {
       if (this.codeClassifyOid != "") {
-        MasterTable({
-          codeClassifyOid: this.codeClassifyOid,
-          functionId: 5,
+        FlowTable({
+          templateId: this.templateId,
+          taskId	: this.taskId	,
+          modelKey: this.modelKey,
+          codeClassifyOid: this.codeClassifyOid
         }).then((res) => {
           this.options = res.data.tableDefineVO.seniorQueryColumns;
           this.List = res.data.tableDefineVO.cols[0];
@@ -97,9 +99,12 @@
               //浼佷笟缂栫爜鐨勯粯璁ゆ坊鍔犺秴閾炬帴,鏆傛湭瀹炵幇
               columnItem.formatter = '';
             }else {
-              if (item.templet && typeof (item.templet) == 'string' && !validatenull(item.templet) && item.templet.indexOf("function(row,column)")>-1) {
+              if (item.templet && typeof (item.templet) == 'string' && !validatenull(item.templet) && item.templet.indexOf("function(row,column)") > -1) {
                 columnItem.formatter = eval("(" + item.templet + ")");
-                //function(row,column){return row[column.property]=='true'?'鏄�':'鍚�'}
+              } else if (item.fieldType == "truefalse") {
+                columnItem.formatter = function (row, column) {
+                  return row[column.property] == 'true' || row[column.property] == '1' ? '鏄�' : '鍚�'
+                }
               }
             }
             this.tableHeadData.push(columnItem)
diff --git a/Source/UBCS-WEB/src/views/MasterData/items.vue b/Source/UBCS-WEB/src/views/MasterData/items.vue
index 5a94682..536a6fd 100644
--- a/Source/UBCS-WEB/src/views/MasterData/items.vue
+++ b/Source/UBCS-WEB/src/views/MasterData/items.vue
@@ -1,7 +1,7 @@
 <template>
   <el-container>
     <el-aside>
-      <basic-container style="height: 85vh; max-height: 155vh; overflow-y: scroll;">
+      <basic-container style="overflow: hidden;">
         <!--          鏍戠粍浠�-->
         <master-tree @codeClassifyOid="codeClassifyOidList" @coderuleoid="coderuleoidList" :pageSize="this.pageSize"
           :currentPage="this.currentPage" @tableDataArray="tableDataArrays" @tableHeadDataFateher="tableHeadDatas"
@@ -85,4 +85,14 @@
 }
 </script>
 
-<style scoped></style>
+<style scoped>
+.el-container{
+  height: 100%;
+}
+.el-aside {
+  height: calc(100% - 30px);
+}
+.el-main {
+  height: calc(100% - 30px);
+}
+</style>
diff --git a/Source/UBCS-WEB/src/views/modeling/Business.vue b/Source/UBCS-WEB/src/views/modeling/Business.vue
index 35923fd..c29b168 100644
--- a/Source/UBCS-WEB/src/views/modeling/Business.vue
+++ b/Source/UBCS-WEB/src/views/modeling/Business.vue
@@ -82,7 +82,7 @@
                   <i :class="icons.revisionRule"></i>
                   鐗堟湰瑙勫垯
                 </template>
-                {{ obj.versionRule }}
+                {{ obj.revisionRuleName }}
               </el-descriptions-item>
               <el-descriptions-item :labelStyle="descriptionOption.labelStyle"
                 :contentStyle="descriptionOption.contentStyle">
@@ -350,8 +350,12 @@
       this.ifRefreshBtmAddRefresh();
     },
     businessEdit() {
-      var json = JSON.stringify(this.obj);
-      this.$refs.btmAdd.btmType = JSON.parse(json);
+      if (!this.obj.oid){
+        this.$message.warning("璇烽�夋嫨涓�鏉″彾瀛愯妭鐐圭殑涓氬姟绫诲瀷");
+        return;
+      }
+      const json = JSON.stringify(this.obj);
+      this.$refs.btmAdd.btmType =JSON.parse(json);
       this.$refs.btmAdd.showSubmitDialog = true;
       this.ifRefreshBtmAddRefresh();
     },
diff --git a/Source/UBCS-WEB/src/views/modeling/BusinessAdd.vue b/Source/UBCS-WEB/src/views/modeling/BusinessAdd.vue
index e8abccc..ca03ae9 100644
--- a/Source/UBCS-WEB/src/views/modeling/BusinessAdd.vue
+++ b/Source/UBCS-WEB/src/views/modeling/BusinessAdd.vue
@@ -1,555 +1,575 @@
 <template>
-    <el-dialog
+  <el-dialog
     title="涓氬姟绫诲瀷"
     :visible.sync="showSubmitDialog"
     append-to-body
     @close="closeSubmitDialog"
     width="70%"
     style="height: 115vh;"
+  >
+    <el-form ref="form" :model="btmType" show-message="true" inline size="medium" label-suffix=":" class="btmTypeForm"
+             :rules="rules" @resetFields="resetForm" status-icon="true">
+      <el-form-item label="鑻辨枃鍚嶇О" label-width="100px" required="true" prop="id">
+        <el-input v-model="btmType.id" :prefix-icon="icons.key"></el-input>
+      </el-form-item>
+      <el-form-item label="涓枃鍚嶇О" label-width="100px">
+        <el-input v-model="btmType.name" :prefix-icon="icons.name"></el-input>
+      </el-form-item>
+      <el-form-item label="鏁版嵁搴撹〃鍚�" label-width="100px">
+        <el-input v-model="btmType.tableName" :prefix-icon="icons.tableName"></el-input>
+      </el-form-item>
+      <el-form-item label="鎵�灞為鍩�" label-width="100px" prop="domain" class="domainSelect">
+        <el-select v-model="btmType.bizDomain" :prefix-icon="icons.domain">
+          <el-option v-for="item in domainOption"
+                     :label="item.label" :value="item.value" :key="item.value">
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="鐗堟湰瑙勫垯" label-width="100px">
+        <el-input v-model="btmType.revisionRuleName" :prefix-icon="icons.revisionRule" class="revisionRule"
+                  @focus="openRevision" clearable @clear="clearRevision">
+          <i slot="suffix" class="el-input__icon el-icon-search"></i>
+        </el-input>
+      </el-form-item>
+      <el-form-item label="鐢熷懡鍛ㄦ湡" label-width="100px">
+        <el-input v-model="btmType.lifeCycleId" :prefix-icon="icons.lifeCycle">
+          <i slot="suffix" class="el-input__icon el-icon-search"></i>
+        </el-input>
+      </el-form-item>
+      <div>
+        <el-form-item label="寮�鍚鍥�" label-width="100px" class="viewFlag">
+          <el-switch v-model="btmType.viewFlag" active-color="#13ce66" @change="viewChange"></el-switch>
+        </el-form-item>
+        <el-form-item label="瑙嗗浘璇彞" label-width="100px" class="viewInput">
+          <el-input v-model="btmType.view" :prefix-icon="icons.view" :disabled="!btmType.viewFlag"></el-input>
+        </el-form-item>
+      </div>
+      <el-form-item label="鎻忚堪" label-width="100px" class="description">
+        <el-input v-model="btmType.description"
+                  :prefix-icon="icons.desc"
+                  class="descClass"
+                  id="descId"
+        ></el-input>
+      </el-form-item>
+    </el-form>
+    <avue-crud :option="option"
+               :data="btmType.attributes"
+               :page.sync="page"
+               ref="attrTable">
+      <template slot-scope="scope" slot="menuLeft">
+        <el-button type="danger"
+                   icon="el-icon-plus"
+                   size="small"
+                   @click="rowAdd()">灞炴�ч�夋嫨
+        </el-button>
+      </template>
+      <template slot="attrDataTypeText" slot-scope="{row}">
+        <el-tag>{{ row.attrDataTypeText }}</el-tag>
+      </template>
+      <template slot="menu" slot-scope="{row,index}">
+        <el-button icon="el-icon-edit" size="small" type="text" v-if="!row.$cellEdit" @click="cellEditClick(row)">缂栬緫
+        </el-button>
+        <el-button icon="el-icon-delete" size="small" type="text" v-if="!row.$cellEdit"
+                   @click="removeFormAttrTable(row,index)">绉婚櫎
+        </el-button>
+        <el-button icon="el-icon-check" size="small" type="text" v-if="row.$cellEdit" @click="cellEditSave(row,index)">
+          淇濆瓨
+        </el-button>
+      </template>
+    </avue-crud>
+    <div slot="footer" class="dialog-footer">
+      <el-button type="primary" @click="submitBtmType">纭畾</el-button>
+      <el-button @click="cancleSubmitBtmType">鍙栨秷</el-button>
+    </div>
+
+    <!-- 灞炴�ф睜鐨勯�夋嫨 -->
+    <el-dialog title="灞炴�ф睜"
+               :visible="attrRef.visible"
+               append-to-body
+               @close="closeAttrDialog"
+               width="80%"
     >
-        <el-form ref="form" :model="btmType" show-message="true" inline size="medium" label-suffix=":" class="btmTypeForm" :rules="rules" @resetFields="resetForm" status-icon="true">
-            <el-form-item label="鑻辨枃鍚嶇О" label-width="100px" required="true" prop="id">
-                <el-input v-model="btmType.id" :prefix-icon="icons.key"></el-input>
-            </el-form-item>
-            <el-form-item label="涓枃鍚嶇О" label-width="100px">
-                <el-input v-model="btmType.name" :prefix-icon="icons.name"></el-input>
-            </el-form-item>
-            <el-form-item label="鏁版嵁搴撹〃鍚�" label-width="100px">
-                <el-input v-model="btmType.tableName" :prefix-icon="icons.tableName"></el-input>
-            </el-form-item>
-            <el-form-item label="鎵�灞為鍩�" label-width="100px" prop="domain">
-                <el-select v-model="btmType.domain" :prefix-icon="icons.domain">
-                    <el-option v-for="item in domainOption"
-                    :label="item.label" :value="item.value" :key="item.value"></el-option>
-                </el-select>
-            </el-form-item>
-            <el-form-item label="鐗堟湰瑙勫垯" label-width="100px">
-                <el-input v-model="btmType.revisionRuleName" :prefix-icon="icons.revisionRule" class="revisionRule"
-                @focus="openRevision" clearable @clear="clearRevision">
-                    <i slot="suffix" class="el-input__icon el-icon-search"></i>
-                </el-input>
-            </el-form-item>
-            <el-form-item label="鐢熷懡鍛ㄦ湡" label-width="100px">
-                <el-input v-model="btmType.lifeCycleId" :prefix-icon="icons.lifeCycle">
-                    <i slot="suffix" class="el-input__icon el-icon-search"></i>
-                </el-input>
-            </el-form-item>
-            <div>
-            <el-form-item label="寮�鍚鍥�" label-width="100px" class="viewFlag">
-                <el-switch v-model="btmType.viewFlag" active-color="#13ce66" @change="viewChange"></el-switch>
-            </el-form-item>
-            <el-form-item label="瑙嗗浘璇彞" label-width="100px">
-                <el-input v-model="btmType.view" :prefix-icon="icons.view" :disabled="!btmType.viewFlag"></el-input>
-            </el-form-item>
-        </div>
-            <el-form-item label="鎻忚堪" label-width="100px" class="description">
-                <el-input v-model="btmType.description"
-                :prefix-icon="icons.desc"
-                class="descClass"
-                id="descId"
-                ></el-input>
-            </el-form-item>
-        </el-form>
-        <avue-crud :option="option"
-        :data="btmType.attributes"
-        :page.sync="page"
-        ref="attrTable">
-            <template slot-scope="scope" slot="menuLeft">
-                <el-button type="danger"
-                icon="el-icon-plus"
-                size="small"
-                @click="rowAdd()">灞炴�ч�夋嫨</el-button>
-            </template>
-          <template slot="menu" slot-scope="{row,index}">
-            <el-button icon="el-icon-edit" size="small" type="text" v-if="!row.$cellEdit" @click="cellEditClick(row)">缂栬緫</el-button>
-            <el-button icon="el-icon-delete" size="small" type="text" v-if="!row.$cellEdit" @click="removeFormAttrTable(row,index)">绉婚櫎</el-button>
-            <el-button icon="el-icon-check" size="small" type="text" v-if="row.$cellEdit" @click="cellEditSave(row,index)">淇濆瓨</el-button>
-          </template>
-        </avue-crud>
-        <div slot="footer" class="dialog-footer">
-            <el-button type="primary" @click="submitBtmType">纭畾</el-button>
-            <el-button @click="cancleSubmitBtmType">鍙栨秷</el-button>
-        </div>
-
-<!-- 灞炴�ф睜鐨勯�夋嫨 -->
-        <el-dialog title="灞炴�ф睜"
-            :visible="attrRef.visible"
-            append-to-body
-            @close="closeAttrDialog"
-            width="80%"
-        >
-            <avue-crud class="attrRef"
-            :option="attrRef.option"
-            :data="attrRef.data"
-            :page.sync="attrRef.page"
-            ref="attrRef"
-            @on-load="attrRefOnLoad"
-            @search-change="attrRefSearch"
-            @selection-change="selectionChange"
-            v-loading="attrRef.loading">
-                <template slot="typeValue" slot-scope="scope" >
-                    <el-tag>{{scope.row.typeValue}}</el-tag>
-                </template>
-            </avue-crud>
-            <div slot="footer" class="dialog-footer">
-                <el-button @click="confirmSelectAttr">纭畾</el-button>
-                <el-button @click="cancleSelectAttr">鍙栨秷</el-button>
-            </div>
-        </el-dialog>
-<!-- 鐗堟湰瑙勫垯鐨勫弬鐓� -->
-        <el-dialog title="璇烽�夋嫨鐗堟湰瑙勫垯"
-            :visible.sync="revisionRef.visible"
-            append-to-body
-            width="80%">
-
-            <avue-crud class="revisionRef"
-             :option="revisionRef.option"
-             :data="revisionRef.data"
-             :page.sync="revisionRef.page"
-             ref="revisionRef"
-             @row-click="revisionClick">
-                <template slot="radio"
-                slot-scope="{row}">
-                    <el-radio v-model="revisionRef.selectRow"
-                        :label="row.$index">&nbsp;
-                    </el-radio>
-                </template>
-            </avue-crud>
-            <div slot="footer" class="dialog-footer">
-                <el-button type="primary" @click="confirmRevision">纭畾</el-button>
-                <el-button @click="cancelRevision">鍙栨秷</el-button>
-            </div>
-        </el-dialog>
+      <avue-crud class="attrRef"
+                 :option="attrRef.option"
+                 :data="attrRef.data"
+                 :page.sync="attrRef.page"
+                 ref="attrRef"
+                 @on-load="attrRefOnLoad"
+                 @search-change="attrRefSearch"
+                 @selection-change="selectionChange"
+                 v-loading="attrRef.loading">
+        <template slot="typeValue" slot-scope="scope">
+          <el-tag>{{ scope.row.typeValue }}</el-tag>
+        </template>
+      </avue-crud>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="confirmSelectAttr">纭畾</el-button>
+        <el-button @click="cancleSelectAttr">鍙栨秷</el-button>
+      </div>
     </el-dialog>
+    <!-- 鐗堟湰瑙勫垯鐨勫弬鐓� -->
+    <el-dialog title="璇烽�夋嫨鐗堟湰瑙勫垯"
+               :visible.sync="revisionRef.visible"
+               append-to-body
+               width="80%">
+
+      <avue-crud class="revisionRef"
+                 :option="revisionRef.option"
+                 :data="revisionRef.data"
+                 :page.sync="revisionRef.page"
+                 ref="revisionRef"
+                 @row-click="revisionClick">
+        <template slot="radio"
+                  slot-scope="{row}">
+          <el-radio v-model="revisionRef.selectRow"
+                    :label="row.$index">&nbsp;
+          </el-radio>
+        </template>
+      </avue-crud>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="confirmRevision">纭畾</el-button>
+        <el-button @click="cancelRevision">鍙栨秷</el-button>
+      </div>
+    </el-dialog>
+  </el-dialog>
 </template>
 
 
 <script>
 
-import { add,update } from '@/api/omd/btmType';
-import { queryPage } from '@/api/omd/OmdAttribute';
-import { getPage } from '@/api/omd/revisionRule';
+import {add, update} from '@/api/omd/btmType';
+import {queryPage} from '@/api/omd/OmdAttribute';
+import {getPage} from '@/api/omd/revisionRule';
+
 export default {
-    name: 'BusinessAdd',
-    props: {
-        btmType:{
-            type: Object
-        },
-        domainOption:{
-            type: Array
-        },
-        icons: {
-            type: Array
-        }
+  name: 'BusinessAdd',
+  props: {
+    btmType: {
+      type: Object
     },
-  watch:{
-    btmType:{
-      handler(newval,oldval){
-        console.log('鐩戝惉',newval,oldval)
-      },
-      deep:true,
-      immediate:true
+    domainOption: {
+      type: Array
+    },
+    icons: {
+      type: Array
     }
   },
-    data() {
-        return {
-            form: {},
-            showSubmitDialog : false,
-            option: {
-                height: "330px",
-                selection: false,
-                headerAlign: 'center',
-                border: true,
-                index: true,
-                rowKey: 'id',
-                tabs: true,
-                menu: true,
-                editBtn: false,
-                delBtn: false,
-                menuWidth: 150,
-                addBtn:false,
-                highlightCurrentRow: true,
-                column: [
-                    {
-                        label: '鑻辨枃鍚嶇О',
-                        prop: 'id',
-                        align: 'center'
-                    }, {
-                        label: '涓枃鍚嶇О',
-                        prop: 'name',
-                        align: 'center',
-                        cell: true
-                    },
-                    {
-                        label: "绫诲瀷",
-                        prop: "attrDataType",
-                        align: 'center',
-                        slot: true
-                    },
-                    {
-                        label: "榛樿鍊�",
-                        prop: "defaultValue",
-                        align: 'center',
-                        cell: true
-                    },
-                    {
-                        label: "璇存槑",
-                        prop: "description",
-                        align: 'center',
-                        cell:true
-                    }
-                ]
-            },
-            attrRef:{
-                visible:false,
-                page: {
-                    currentPage:1,
-                    pageSize:10,
-                },
-                loading: false,
-                key: null,
-                option:{
-                    height: 360,
-                    addBtn: false,
-                    refreshBtn: false,
-                    columnBtn: false,
-                    selection: true,
-                    menu: false,
-                    border: true,
-                    reserveSelection: true,
-                    searchMenuSpan:8,
-                    highlightCurrentRow: true,
-                    rowKey: 'id',
-                    column: [
-                        {
-                        label: '鑻辨枃鍚嶇О',
-                        prop: 'id',
-                        align: 'left',
-                        search: true,
-                        width: 230
-                    }, {
-                        label: '涓枃鍚嶇О',
-                        prop: 'name',
-                        align: 'center',
-                    },
-                    {
-                        label: "绫诲瀷",
-                        prop: "typeValue",
-                        align: 'center',
-                        slot: true,
-                    },
-                    {
-                        label: "榛樿鍊�",
-                        prop: "defaultValue",
-                        align: 'center'
-                    },
-                    {
-                        label: '鍏佽涓虹┖',
-                        prop: 'nullable',
-                        type: 'switch',
-                        display: false,
-                        hide: true,
-                        labelWidth: 132,
-                        dicData: [{
-                        label: '鍚�',
-                        value: 1
-                        }, {
-                        label: '鏄�',
-                        value: 0
-                        }]
-                    },
-                    {
-                        label: "璇存槑",
-                        prop: "description",
-                        cell:true,
-                        align: 'center'
-                    }
-                    ]
-                },
-                data: [],
-                queryNotIn: ''
-            },
-            revisionRef: {
-                visible: false,
-                page: {
-                    currentPage:1,
-                    pageSize: 10
-                },
-                selectRow:'',
-                searchKey: null,
-                option:{
-                    height: 360,
-                    addBtn: false,
-                    refreshBtn: false,
-                    columnBtn: false,
-                    menu: false,
-                    border: true,
-                    reserveSelection: true,
-                    searchMenuSpan:8,
-                    searchShowBtn: false,
-                    highlightCurrentRow: true,
-                    column:[{
-                        label: '閫夋嫨',
-                        prop: 'radio',
-                        width: 60,
-                        hide: false
-                    },
-                        {
-                            label:'鑻辨枃鍚嶇О',
-                            prop: 'id',
-                            search:true
-                        },
-                        {
-                            label:"涓枃鍚嶇О",
-                            prop:"name",
-                            search:true,
-                        },
-                        {
-                            label:"璺宠穬瀛楃",
-                            prop: "skipCode"
-                        },
-                        {
-                            label: "鍒濆鍊�",
-                            prop:"startCode"
-                        },
-                        {
-                            label: "姝ラ暱",
-                            prop: "serialStep"
-                        },
-                        {
-                            label: "鍓嶇紑",
-                            prop:"prefixCode"
-                        },
-                        {
-                            label: "鍚庣紑",
-                            prop: "suffixCode"
-                        },
-                        {
-                            label: "鎻忚堪",
-                            prop:"description",
-                            type:"textarea"
-                        }
-                    ]
-                },
-            },
-            rules: {
-                id: [
-                    { required: true, message: '璇疯緭鍏ヤ笟鍔$被鍨嬬紪鍙�', trigger: 'blur' },
-                    { pattern: /^[A-Za-z]+$/, message: '涓氬姟绫诲瀷缂栧彿鍙兘涓鸿嫳鏂�', trigger: 'blur' },
-                    { min: 2, max: 20, message: '闀垮害鍦�2鍒�20涓瓧绗�', trigger: 'blur' }
-                ],
-                domain: [
-                    { required: true, message: '璇烽�夋嫨鎵�灞為鍩�', trigger: 'blur' }
-                ]
-            },
-        }
-    },
-    created() {
-
-    },
-    methods: {
-        // 鍏抽棴缁勪欢寮圭獥
-        closeSubmitDialog(){
-            this.showSubmitDialog = false;
-            this.btmType.attributes = [];
-            this.btmType = {};
-            this.attrRef.selectData = [];
-            this.attrRef.queryNotIn = null;
-            this.resetForm();
-        },
-        // 鍏抽棴灞炴�ф睜鏌ヨ寮圭獥
-        closeAttrDialog(){
-            this.attrRef.visible = false;
-        },
-        // 灞炴�ч�夋嫨娣诲姞
-        async rowAdd() {
-            await this.attrRefOnLoad();
-            this.attrRef.visible = true;
-        },
-        // 灞炴�ф睜鍔犺浇
-        attrRefOnLoad(){
-            if (this.attrRef.queryNotIn != ''){
-              this.attrRef.queryNotIn = '';
-               this.btmType.attributes.forEach(item => {
-                  this.attrRef.queryNotIn += (item.id + ",")
-               })
-            }
-            this.attrRef.loading = true;
-            queryPage(this.attrRef.key,this.attrRef.queryNotIn,this.attrRef.page.currentPage, this.attrRef.page.pageSize).then(res => {
-                const data = res.data.data;
-                this.attrRef.page.total = data.total;
-                this.attrRef.data = data.records;
-            });
-            setTimeout(() => {
-              this.attrRef.loading = false;
-            },600)
-            this.$nextTick(() => {
-                this.$refs.attrRef.refreshTable();
-            });
-        },
-        // 灞炴�ф睜妫�绱�
-        attrRefSearch(form,done){
-            this.attrRef.key = form.id;
-            this.attrRefOnLoad();
-            done();
-            this.attrRef.key = null;
-        },
-        // 浠庡睘鎬ф睜涓Щ闄�
-        removeFormAttrTable(row,index){
-          this.btmType.attributes.splice(index,1);
-          this.attrRef.queryNotIn = "";
-          this.btmType.attributes.forEach(item => {
-            this.attrRef.queryNotIn += (item.id + ",")
-          })
-        },
-        // 灞炴�ф睜鍕鹃�変簨浠�
-        selectionChange(list){
-            this.attrRef.selectData = list;
-        },
-        // 纭灞炴�ф睜鍕鹃��
-        confirmSelectAttr(){
-            if(!this.btmType.attributes) {
-              this.btmType.attributes = [];
-            }
-            this.attrRef.selectData.forEach(item => {
-                this.btmType.attributes.push({
-                    id: item.id,
-                    name: item.name,
-                    typeValue: item.typeValue,
-                    typeKey: item.typeValue,
-                    attrDataType : item.typeKey,
-                    defaultValue: item.defaultValue,
-                    description: item.description,
-                    attributeLength: item.maxLength,
-                    referBtmTypeId: item.referTypeCode,
-                    referBtmTypeName: item.referToName,
-                    enumId: item.dictCode,
-                    // enumName: item,
-                });
-                this.attrRef.queryNotIn += (item.id + ",")
-            });
-            this.attrRef.data = [];
-            this.closeAttrDialog();
-        },
-        // 鍙栨秷灞炴�ф睜鍕鹃��
-        cancleSelectAttr(){
-            this.attrRef.selectData = [];
-            this.closeAttrDialog();
-        },
-        // 娣诲姞涓氬姟绫诲瀷
-        submitBtmType(){
-            console.log(this.btmType);
-            add(this.btmType,true).then(res => {
-                // 娣诲姞瀹屾垚锛屽洖璋冪埗缁勪欢鐨勫埛鏂�
-                this.$message.success('淇濆瓨鎴愬姛');
-                this.cancleSubmitBtmType();
-                this.$emit('refreshTable');
-            })
-        },
-        // 鍙栨秷娣诲姞涓氬姟绫诲瀷
-        cancleSubmitBtmType(){
-            this.btmType = {};
-            this.btmType.attributes = [];
-            this.showSubmitDialog = false;
-        },
-        // 鍒锋柊灞炴�у垪琛�
-        refreshAttrTable(){
-            this.$nextTick( () => {
-                this.$refs.attrTable.refreshTable();
-            })
-        },
-        //
-        viewChange(){
-
-        },
-        // 鍒楄〃缂栬緫
-        cellEditClick(cell){
-          console.log(cell);
-            cell.$cellEdit = true;
-        },
-        // 鍒楄〃缂栬緫淇濆瓨
-        cellEditSave(row){
-            this.btmType.attributes[row.$index].name = row.name
-            this.btmType.attributes[row.$index].defaultValue = row.defaultValue;
-            this.btmType.attributes[row.$index].description = row.description;
-            row.$cellEdit = false;
-        },
-        // 鎵撳紑鐗堟湰瑙勫垯鍙傜収
-        async openRevision(){
-            await getPage().then(res => {
-                this.revisionRef.data = res.data.data.records;
-            });
-            this.revisionRef.visible = true;
-        },
-       // 鍏抽棴鐗堟湰瑙勫垯鍙傜収寮圭獥
-       closeRevisionDialog(){
-            this.revisionRef.visible = false;
-       },
-       // 鐗堟湰瑙勫垯鍙傜収鍒楄〃妫�绱�
-       revisionRefSearch(){
-
-       },
-       // 鐗堟湰瑙勫垯閫変腑浜嬩欢
-       revisionChange(){},
-       // 纭閫変腑鐗堟湰瑙勫垯
-       confirmRevision(){
-            this.btmType.revisionFlag = true;
-            this.btmType.revisionRuleId = this.revisionRef.selectData.id;
-            this.btmType.revisionRuleName = this.revisionRef.selectData.name;
-            this.btmType.inputRevisionFlag = false;
-            this.cancelRevision();
-       },
-       // 鍙栨秷閫変腑鐗堟湰瑙勫垯
-       cancelRevision(){
-            this.revisionRef.selectRow  = '';
-            this.revisionRef.selectData = {};
-            this.closeRevisionDialog();
-       },
-       // 鐗堟湰瑙勫垯鍗曢��
-       revisionClick(row){
-            this.revisionRef.selectRow = row.$index;
-            this.revisionRef.selectData = {
-                id: row.id,
-                name: row.name,
-            };
-       },
-       clearRevision(){
-            this.$delete(this.btmType,'revisionFlag');
-            this.$delete(this.btmType,'revisionRuleId');
-            this.$delete(this.btmType,'revisionRuleName');
-            this.$delete(this.btmType,'inputRevisionFlag');
-       },
-       resetForm(){
-        this.btmType = {};
-        this.$refs.form.resetFields();
-       }
+  watch: {
+    btmType: {
+      handler(newval, oldval) {
+        console.log('鐩戝惉', newval, oldval)
+      },
+      deep: true,
+      immediate: true
     }
+  },
+  data() {
+    return {
+      form: {},
+      showSubmitDialog: false,
+      option: {
+        height: "330px",
+        selection: false,
+        headerAlign: 'center',
+        border: true,
+        index: true,
+        rowKey: 'id',
+        tabs: true,
+        menu: true,
+        editBtn: false,
+        delBtn: false,
+        columnBtn: false,
+        menuWidth: 150,
+        addBtn: false,
+        highlightCurrentRow: true,
+        column: [
+          {
+            label: '鑻辨枃鍚嶇О',
+            prop: 'id',
+            align: 'center'
+          }, {
+            label: '涓枃鍚嶇О',
+            prop: 'name',
+            align: 'center',
+            cell: true
+          },{
+            label: "绫诲瀷",
+            prop: "attrDataTypeText",
+            align: 'center',
+            slot: true
+          },
+          {
+            label: "榛樿鍊�",
+            prop: "defaultValue",
+            align: 'center',
+            cell: true
+          },
+          {
+            label: "璇存槑",
+            prop: "description",
+            align: 'center',
+            cell: true
+          }
+        ]
+      },
+      attrRef: {
+        visible: false,
+        page: {
+          currentPage: 1,
+          pageSize: 10,
+        },
+        loading: false,
+        key: null,
+        option: {
+          height: 360,
+          addBtn: false,
+          refreshBtn: false,
+          columnBtn: false,
+          selection: true,
+          menu: false,
+          border: true,
+          reserveSelection: true,
+          searchMenuSpan: 8,
+          highlightCurrentRow: true,
+          rowKey: 'id',
+          column: [
+            {
+              label: '鑻辨枃鍚嶇О',
+              prop: 'id',
+              align: 'left',
+              search: true,
+              width: 230
+            }, {
+              label: '涓枃鍚嶇О',
+              prop: 'name',
+              align: 'center',
+            },
+            {
+              label: "绫诲瀷",
+              prop: "typeValue",
+              align: 'center',
+              slot: true,
+            },
+            {
+              label: "榛樿鍊�",
+              prop: "defaultValue",
+              align: 'center'
+            },
+            {
+              label: '鍏佽涓虹┖',
+              prop: 'nullable',
+              type: 'switch',
+              display: false,
+              hide: true,
+              labelWidth: 132,
+              dicData: [{
+                label: '鍚�',
+                value: 1
+              }, {
+                label: '鏄�',
+                value: 0
+              }]
+            },
+            {
+              label: "璇存槑",
+              prop: "description",
+              cell: true,
+              align: 'center'
+            }
+          ]
+        },
+        data: [],
+        queryNotIn: ''
+      },
+      revisionRef: {
+        visible: false,
+        page: {
+          currentPage: 1,
+          pageSize: 10
+        },
+        selectRow: '',
+        searchKey: null,
+        option: {
+          height: 360,
+          addBtn: false,
+          refreshBtn: false,
+          columnBtn: false,
+          menu: false,
+          border: true,
+          reserveSelection: true,
+          searchMenuSpan: 8,
+          searchShowBtn: false,
+          highlightCurrentRow: true,
+          column: [{
+            label: '閫夋嫨',
+            prop: 'radio',
+            width: 60,
+            hide: false
+          },
+            {
+              label: '鑻辨枃鍚嶇О',
+              prop: 'id',
+              search: true
+            },
+            {
+              label: "涓枃鍚嶇О",
+              prop: "name",
+              search: true,
+            },
+            {
+              label: "璺宠穬瀛楃",
+              prop: "skipCode"
+            },
+            {
+              label: "鍒濆鍊�",
+              prop: "startCode"
+            },
+            {
+              label: "姝ラ暱",
+              prop: "serialStep"
+            },
+            {
+              label: "鍓嶇紑",
+              prop: "prefixCode"
+            },
+            {
+              label: "鍚庣紑",
+              prop: "suffixCode"
+            },
+            {
+              label: "鎻忚堪",
+              prop: "description",
+              type: "textarea"
+            }
+          ]
+        },
+      },
+      rules: {
+        id: [
+          {required: true, message: '璇疯緭鍏ヤ笟鍔$被鍨嬬紪鍙�', trigger: 'blur'},
+          {pattern: /^[A-Za-z]+$/, message: '涓氬姟绫诲瀷缂栧彿鍙兘涓鸿嫳鏂�', trigger: 'blur'},
+          {min: 2, max: 20, message: '闀垮害鍦�2鍒�20涓瓧绗�', trigger: 'blur'}
+        ],
+        domain: [
+          {required: true, message: '璇烽�夋嫨鎵�灞為鍩�', trigger: 'blur'}
+        ]
+      },
+    }
+  },
+  created() {
+
+  },
+  methods: {
+    // 鍏抽棴缁勪欢寮圭獥
+    closeSubmitDialog() {
+      this.showSubmitDialog = false;
+      this.btmType.attributes = [];
+      this.btmType = {};
+      this.attrRef.selectData = [];
+      this.attrRef.queryNotIn = null;
+      this.resetForm();
+    },
+    // 鍏抽棴灞炴�ф睜鏌ヨ寮圭獥
+    closeAttrDialog() {
+      this.attrRef.visible = false;
+    },
+    // 灞炴�ч�夋嫨娣诲姞
+    async rowAdd() {
+      await this.attrRefOnLoad();
+      this.attrRef.visible = true;
+    },
+    // 灞炴�ф睜鍔犺浇
+    attrRefOnLoad() {
+      if (this.attrRef.queryNotIn != '' && this.btmType.attributes !== undefined && this.btmType.attributes.length > 0) {
+        this.attrRef.queryNotIn = '';
+        this.btmType.attributes.forEach(item => {
+          this.attrRef.queryNotIn += (item.id + ",")
+        })
+      }
+      this.attrRef.loading = true;
+      queryPage(this.attrRef.key, this.attrRef.queryNotIn, this.attrRef.page.currentPage, this.attrRef.page.pageSize).then(res => {
+        const data = res.data.data;
+        this.attrRef.page.total = data.total;
+        this.attrRef.data = data.records;
+      });
+      setTimeout(() => {
+        this.attrRef.loading = false;
+      }, 600)
+      this.$nextTick(() => {
+        this.$refs.attrRef.refreshTable();
+      });
+    },
+    // 灞炴�ф睜妫�绱�
+    attrRefSearch(form, done) {
+      this.attrRef.key = form.id;
+      this.attrRefOnLoad();
+      done();
+      this.attrRef.key = null;
+    },
+    // 浠庡睘鎬ф睜涓Щ闄�
+    removeFormAttrTable(row, index) {
+      this.btmType.attributes.splice(index, 1);
+      this.attrRef.queryNotIn = "";
+      this.btmType.attributes.forEach(item => {
+        this.attrRef.queryNotIn += (item.id + ",")
+      })
+    },
+    // 灞炴�ф睜鍕鹃�変簨浠�
+    selectionChange(list) {
+      this.attrRef.selectData = list;
+    },
+    // 纭灞炴�ф睜鍕鹃��
+    confirmSelectAttr() {
+      if (!this.btmType.attributes) {
+        this.btmType.attributes = [];
+      }
+      console.log(this.attrRef.selectData);
+      this.attrRef.selectData.forEach(item => {
+        this.btmType.attributes.push({
+          id: item.id,
+          name: item.name,
+          attrDataType: item.typeKey,
+          attrDataTypeText: item.typeValue,
+          defaultValue: item.defaultValue,
+          description: item.description,
+          attributeLength: item.maxLength,
+          referBtmTypeId: item.referTypeCode,
+          referBtmTypeName: item.referToName,
+          enumId: item.dictCode,
+        });
+        this.attrRef.queryNotIn += (item.id + ",")
+      });
+      this.attrRef.data = [];
+      this.closeAttrDialog();
+    },
+    // 鍙栨秷灞炴�ф睜鍕鹃��
+    cancleSelectAttr() {
+      this.attrRef.selectData = [];
+      this.closeAttrDialog();
+    },
+    // 娣诲姞涓氬姟绫诲瀷
+    submitBtmType() {
+      console.log(this.btmType);
+      add(this.btmType, true).then(res => {
+        // 娣诲姞瀹屾垚锛屽洖璋冪埗缁勪欢鐨勫埛鏂�
+        this.$message.success('淇濆瓨鎴愬姛');
+        this.cancleSubmitBtmType();
+        this.$emit('refreshTable');
+      })
+    },
+    // 鍙栨秷娣诲姞涓氬姟绫诲瀷
+    cancleSubmitBtmType() {
+      this.btmType = {};
+      this.btmType.attributes = [];
+      this.showSubmitDialog = false;
+    },
+    // 鍒锋柊灞炴�у垪琛�
+    refreshAttrTable() {
+      this.$nextTick(() => {
+        this.$refs.attrTable.refreshTable();
+      })
+    },
+    //
+    viewChange() {
+
+    },
+    // 鍒楄〃缂栬緫
+    cellEditClick(cell) {
+      console.log(cell);
+      cell.$cellEdit = true;
+    },
+    // 鍒楄〃缂栬緫淇濆瓨
+    cellEditSave(row) {
+      this.btmType.attributes[row.$index].name = row.name
+      this.btmType.attributes[row.$index].defaultValue = row.defaultValue;
+      this.btmType.attributes[row.$index].description = row.description;
+      row.$cellEdit = false;
+    },
+    // 鎵撳紑鐗堟湰瑙勫垯鍙傜収
+    async openRevision() {
+      await getPage().then(res => {
+        this.revisionRef.data = res.data.data.records;
+      });
+      this.revisionRef.visible = true;
+    },
+    // 鍏抽棴鐗堟湰瑙勫垯鍙傜収寮圭獥
+    closeRevisionDialog() {
+      this.revisionRef.visible = false;
+    },
+    // 鐗堟湰瑙勫垯鍙傜収鍒楄〃妫�绱�
+    revisionRefSearch() {
+
+    },
+    // 鐗堟湰瑙勫垯閫変腑浜嬩欢
+    revisionChange() {
+    },
+    // 纭閫変腑鐗堟湰瑙勫垯
+    confirmRevision() {
+      this.btmType.revisionFlag = true;
+      this.btmType.revisionRuleId = this.revisionRef.selectData.id;
+      this.btmType.revisionRuleName = this.revisionRef.selectData.name;
+      this.btmType.inputRevisionFlag = false;
+      this.cancelRevision();
+    },
+    // 鍙栨秷閫変腑鐗堟湰瑙勫垯
+    cancelRevision() {
+      this.revisionRef.selectRow = '';
+      this.revisionRef.selectData = {};
+      this.closeRevisionDialog();
+    },
+    // 鐗堟湰瑙勫垯鍗曢��
+    revisionClick(row) {
+      this.revisionRef.selectRow = row.$index;
+      this.revisionRef.selectData = {
+        id: row.id,
+        name: row.name,
+      };
+    },
+    clearRevision() {
+      this.$delete(this.btmType, 'revisionFlag');
+      this.$delete(this.btmType, 'revisionRuleId');
+      this.$delete(this.btmType, 'revisionRuleName');
+      this.$delete(this.btmType, 'inputRevisionFlag');
+    },
+    resetForm() {
+      this.btmType = {};
+      this.$refs.form.resetFields();
+    }
+  }
 }
 </script>
 
 <style>
 /* 灞炴�ф睜鍙傜収鍒楄〃 */
-.attrRef > .el-card:nth-of-type(2) > .el-card__body > .avue-crud__menu{
-    display: none !important;
+.attrRef > .el-card:nth-of-type(2) > .el-card__body > .avue-crud__menu {
+  display: none !important;
 }
 
-.revisionRef > .el-card:nth-of-type(2) > .el-card__body > .avue-crud__menu{
-    display: none !important;
+.revisionRef > .el-card:nth-of-type(2) > .el-card__body > .avue-crud__menu {
+  display: none !important;
 }
 
 .btmTypeForm > .el-form-item > .el-form-item__content > .el-input > .el-input__inner {
-    width: 200px;
+  width: 200px;
+}
+
+.domainSelect > .el-form-item__content > .el-select > .el-input > .el-input__inner {
+  width: 200px;
 }
 
 .viewFlag {
-    width: 305px;
+  width: 305px;
+}
+
+.viewInput > .el-form-item__content > .el-input > .el-input__inner {
+  width: 200px;
 }
 
 .descClass > .el-input__inner {
-    width: 57vw
+  width: 57vw
 }
 
 #descId {
-    width: 57vw;
+  width: 57vw;
 }
 </style>
diff --git a/Source/UBCS-WEB/src/views/work/process/leave/handle.vue b/Source/UBCS-WEB/src/views/work/process/leave/handle.vue
index 50f4ae3..3dcbcb4 100644
--- a/Source/UBCS-WEB/src/views/work/process/leave/handle.vue
+++ b/Source/UBCS-WEB/src/views/work/process/leave/handle.vue
@@ -5,7 +5,7 @@
         <el-card class="dialogwarp_tab_card">
           <el-tabs v-model="activeName" @tab-click="handleClick">
             <el-tab-pane label="涓氬姟鏁版嵁淇℃伅" name="first">
-              <businesswork ref="businesswork":ids="ids" :templateId="templateId"></businesswork>
+              <businesswork ref="businesswork":ids="ids" :templateId="templateId" :taskId="taskId" :modelKey="modelKey" :codeClassifyOid="codeClassifyOid"></businesswork>
             </el-tab-pane>
             <el-tab-pane label="娴佺▼璺熻釜" name="second">
               <avue-crud :data="flowList" :option="option" ref="crud">
@@ -78,6 +78,8 @@
       ids:[],
       templateId:'',
       taskId: '',
+      modelKey:'',
+      codeClassifyOid:'',
       businessId: '',
       processInstanceId: '',
       src: '',
@@ -142,9 +144,12 @@
       const res = response.data
       this.ids=res.data.variables.ids;
       this.templateId=res.data.variables.templateId;
+      this.modelKey=res.data.variables.modelKey;
+      this.codeClassifyOid=res.data.variables.codeClassifyOid;
+      this.taskId=res.data.variables.taskId;
       if (res.success) {
         console.log(res)
-        this.btnList = res.data.toTasks
+        this.btnList = res.data.toTasks;
       }
     },
     async apiExamineTask(param) {
diff --git a/Source/UBCS-WEB/vue.config.js b/Source/UBCS-WEB/vue.config.js
index ad43a75..0991057 100644
--- a/Source/UBCS-WEB/vue.config.js
+++ b/Source/UBCS-WEB/vue.config.js
@@ -26,10 +26,10 @@
     proxy: {
       '/api': {
         //鏈湴鏈嶅姟鎺ュ彛鍦板潃
-        target: 'http://localhost:37000',
+        // target: 'http://localhost:37000',
         // target: 'http://192.168.1.51:37000',
         // target: 'http://192.168.1.46:37000',
-        // target: 'http://dev.vci-tech.com:37000',
+        target: 'http://dev.vci-tech.com:37000',
         // target: 'http://192.168.1.51:37000/',
         // target: 'http://192.168.1.104:37000',
         // target: 'http://192.168.1.63:37000',
diff --git a/Source/UBCS/ubcs-service-api/ubcs-ddl-api/src/main/java/com/vci/ubcs/ddl/bo/DdlFieldMappingAttrBO.java b/Source/UBCS/ubcs-service-api/ubcs-ddl-api/src/main/java/com/vci/ubcs/ddl/bo/DdlFieldMappingAttrBO.java
index 038400b..65e6252 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-ddl-api/src/main/java/com/vci/ubcs/ddl/bo/DdlFieldMappingAttrBO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-ddl-api/src/main/java/com/vci/ubcs/ddl/bo/DdlFieldMappingAttrBO.java
@@ -59,16 +59,19 @@
 	@Override
 	public String toString() {
 		StringBuilder stringBuilder = new StringBuilder().append(dataType);
-		if (dataLength != null && dataPrecision != null){
-			stringBuilder.append(StringPool.SPACE).append(StringPool.LEFT_BRACKET).append(dataLength).append(StringPool.COMMA).append(dataPrecision).append(StringPool.RIGHT_BRACKET).append(StringPool.SPACE);
-		}else if (dataLength != null) {
-			stringBuilder.append(StringPool.SPACE).append(StringPool.LEFT_BRACKET).append(dataLength).append(StringPool.RIGHT_BRACKET).append(StringPool.SPACE);
+		if (dataLength != null){
+			stringBuilder.append(StringPool.SPACE).append(StringPool.LEFT_BRACKET).append(dataLength);
+			if (dataPrecision != null){
+				stringBuilder.append(StringPool.COMMA).append(dataPrecision).append(StringPool.RIGHT_BRACKET).append(StringPool.SPACE);
+			}else {
+				stringBuilder.append(StringPool.RIGHT_BRACKET).append(StringPool.SPACE);
+			}
 		}
 		if (!nullable){
 			stringBuilder.append(StringPool.SPACE).append("not null").append(StringPool.SPACE);
 		}
 		if (StringUtil.isNotBlank(defaultValue)){
-			stringBuilder.append(StringPool.SPACE).append("default").append(StringPool.SPACE).append(defaultValue).append(StringPool.SPACE);
+			stringBuilder.append(StringPool.SPACE).append("default").append(StringPool.SPACE).append(StringPool.SINGLE_QUOTE).append(defaultValue).append(StringPool.SINGLE_QUOTE).append(StringPool.SPACE);
 		}
 		return stringBuilder.toString();
 	}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/dto/BtmTypeDTO.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/dto/BtmTypeDTO.java
index 723c7ea..081469a 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/dto/BtmTypeDTO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/dto/BtmTypeDTO.java
@@ -147,5 +147,5 @@
 	/**
 	 * 涓氬姟绫诲瀷鎵�灞為鍩�
 	 */
-	private String domain;
+	private String bizDomain;
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/VciSpringUtil.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/VciSpringUtil.java
index 246345f..9c17440 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/VciSpringUtil.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/VciSpringUtil.java
@@ -12,7 +12,7 @@
  * @author LiHang
  * @date 2023/4/26
  */
-@Component
+@Component("vciSpringUtil")
 public class VciSpringUtil implements ApplicationContextAware {
 
 	private static ApplicationContext applicationContext;
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlDmMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlDmMapperProcessor.java
index d40064d..0c7eb69 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlDmMapperProcessor.java
+++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlDmMapperProcessor.java
@@ -3,12 +3,14 @@
 import com.vci.ubcs.ddl.mapper.DdlDmMapper;
 import com.vci.ubcs.ddl.mapper.DdlMapper;
 import com.vci.ubcs.starter.util.VciSpringUtil;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 
 /**
  * 杈炬ⅵ鏁版嵁搴撴墽琛岃〃鎿嶄綔sql鐨勫鐞嗗櫒
  */
 @Component
+@DependsOn("vciSpringUtil")
 public class DdlDmMapperProcessor extends DdlMapperProcessor{
 
 	private static final DdlMapper MAPPER = VciSpringUtil.getBean(DdlDmMapper.class);
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMapperProcessStrategy.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMapperProcessStrategy.java
index 578d9b8..f19401a 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMapperProcessStrategy.java
+++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMapperProcessStrategy.java
@@ -9,6 +9,7 @@
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 
 import javax.annotation.Resource;
@@ -21,6 +22,7 @@
  * @date 2023/4/24
  */
 @Component
+@DependsOn("vciSpringUtil")
 public class DdlMapperProcessStrategy {
 
 	@Value("${spring.datasource.driver-class-name}")
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMsMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMsMapperProcessor.java
index a21d862..b279937 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMsMapperProcessor.java
+++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMsMapperProcessor.java
@@ -5,6 +5,7 @@
 import com.vci.ubcs.ddl.mapper.DdlMapper;
 import com.vci.ubcs.starter.util.VciSpringUtil;
 import com.vci.ubcs.starter.web.util.VciBaseUtil;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 import org.springframework.util.CollectionUtils;
 
@@ -20,6 +21,7 @@
  * @date 2023/4/24
  */
 @Component
+@DependsOn("vciSpringUtil")
 public class DdlMsMapperProcessor extends DdlMapperProcessor{
 
 	private static DdlMapper mapper = VciSpringUtil.getBean(DdlMSMapper.class);
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMySqlMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMySqlMapperProcessor.java
index d7e8ca5..4d278d2 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMySqlMapperProcessor.java
+++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMySqlMapperProcessor.java
@@ -5,6 +5,7 @@
 import com.vci.ubcs.ddl.mapper.DdlMySqlMapper;
 import com.vci.ubcs.starter.util.VciSpringUtil;
 import com.vci.ubcs.starter.web.util.VciBaseUtil;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Repository;
 import org.springframework.util.CollectionUtils;
@@ -20,6 +21,7 @@
  * @date 2023/4/24
  */
 @Component
+@DependsOn("vciSpringUtil")
 public class DdlMySqlMapperProcessor extends DdlMapperProcessor{
 
 	private static DdlMapper mapper = VciSpringUtil.getBean(DdlMySqlMapper.class);
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlOracleMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlOracleMapperProcessor.java
index 174344c..872192c 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlOracleMapperProcessor.java
+++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlOracleMapperProcessor.java
@@ -5,6 +5,7 @@
 import com.vci.ubcs.starter.util.VciSpringUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 
 import javax.annotation.PostConstruct;
@@ -17,6 +18,7 @@
  * @date 2023/4/24
  */
 @Component
+@DependsOn("vciSpringUtil")
 public class DdlOracleMapperProcessor extends DdlMapperProcessor{
 
 	private static DdlMapper mapper = VciSpringUtil.getBean(DdlOracleMapper.class);
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java
index 2121d5c..ffbe5b0 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java
+++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java
@@ -9,10 +9,12 @@
 import org.apache.commons.collections4.BidiMap;
 import org.springblade.core.tool.utils.StringPool;
 import org.springblade.core.tool.utils.StringUtil;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
 import java.util.Locale;
+import java.util.Optional;
 
 /**
  * Description: 搴旂敤浜庤揪姊︽暟鎹紝鐢熸垚鍒涘缓琛ㄦ搷浣渟ql鐨勫鐞嗗櫒
@@ -21,6 +23,7 @@
  * @date 2023/4/24
  */
 @Component
+@DependsOn("vciSpringUtil")
 public class DllDmMapperProcessor extends DllMapperProcessor {
 
 	private static final DllMapper MAPPER = VciSpringUtil.getBean(DllDmMapper.class);
@@ -29,8 +32,8 @@
 
 	static {
 		// 闇�瑕侀噸鏂版槧灏勭殑瀛楁绫诲瀷鍦ㄨ繖閲屽啓
-		FIELD_MAP.put(VciFieldTypeEnum.VTDouble, new DdlFieldMappingAttrBO("DOUBLE", 26, 8, true, null));
-		FIELD_MAP.put(VciFieldTypeEnum.VTInteger, new DdlFieldMappingAttrBO("INTEGER", 10, null, true, null));
+		FIELD_MAP.put(VciFieldTypeEnum.VTDouble, new DdlFieldMappingAttrBO("DOUBLE", 53, null, true, null));
+		FIELD_MAP.put(VciFieldTypeEnum.VTInteger, new DdlFieldMappingAttrBO("INTEGER", null, null, true, null));
 		FIELD_MAP.put(VciFieldTypeEnum.VTLong, new DdlFieldMappingAttrBO("NUMBER", 38, null, true, null));
 		FIELD_MAP.put(VciFieldTypeEnum.VTBoolean, new DdlFieldMappingAttrBO("VARCHAR", 5, null, true, null));
 		FIELD_MAP.put(VciFieldTypeEnum.VTDate, new DdlFieldMappingAttrBO("DATE", null, null, true, null));
@@ -64,17 +67,13 @@
 	@Override
 	public String getColumnTypeSql(VciFieldTypeEnum fieldType, BtmTypeAttributeVO attributeVO) {
 		DdlFieldMappingAttrBO mappingBO = getMappingBO(fieldType);
-		if (fieldType.equals(VciFieldTypeEnum.VTDouble)) {
-			mappingBO.setDataPrecision(attributeVO.getPrecisionLength() == -1 ? 8 : attributeVO.getPrecisionLength());
-		}
-		//鍏堝彧閽堝鏁板瓧绫诲瀷鐨勮繘琛屽鐞�
-		if (fieldType.equals(VciFieldTypeEnum.VTInteger) ){
-			mappingBO.setDataLength(null);
-		} else if (fieldType.equals(VciFieldTypeEnum.VTDouble) || fieldType.equals(VciFieldTypeEnum.VTLong)) {
-			if (attributeVO.getAttributeLength() <= mappingBO.getDataLength()) {
+		if (mappingBO.getDataLength() != null) {
+			//mappingBO鐢ㄦ潵鍋氭渶鍚庣殑鏍¢獙锛屽鏋滃畾涔夌殑BO娌℃湁瀛楁闀垮害锛屽垯璇存槑杩欎釜绫诲瀷鐢熸垚鐨剆ql涓嶅簲璇ユ寚瀹氶暱搴︺�傚鏋滄寚瀹氫簡闀垮害锛岃鏄庢槸瀛楁闀垮害鐨勬渶澶у�硷紝VARCHAR銆丆LOB闄ゅ
+			if (!(fieldType.equals(VciFieldTypeEnum.VTClob) || fieldType.equals(VciFieldTypeEnum.VTString))
+				&& attributeVO.getAttributeLength() > mappingBO.getDataLength()) {
 				mappingBO.setDataLength(attributeVO.getAttributeLength());
 			}
-		}else {
+		} else {
 			mappingBO.setDataLength(attributeVO.getAttributeLength());
 		}
 		mappingBO.setNullable(attributeVO.isNullableFlag());
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessorStrategy.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessorStrategy.java
index db82496..537a55c 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessorStrategy.java
+++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessorStrategy.java
@@ -9,6 +9,7 @@
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 
 import javax.annotation.PostConstruct;
@@ -22,6 +23,7 @@
  * @date 2023/4/24
  */
 @Component
+@DependsOn("vciSpringUtil")
 public class DllMapperProcessorStrategy {
 
 	@Value("${spring.datasource.driver-class-name}")
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMsMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMsMapperProcessor.java
index fa60a49..e446893 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMsMapperProcessor.java
+++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMsMapperProcessor.java
@@ -11,6 +11,7 @@
 import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum;
 import org.apache.commons.collections4.BidiMap;
 import org.springblade.core.tool.utils.StringPool;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 
 import java.util.Arrays;
@@ -23,6 +24,7 @@
  * @date 2023/4/24
  */
 @Component
+@DependsOn("vciSpringUtil")
 public class DllMsMapperProcessor extends DllMapperProcessor {
 
 	private static DllMapper mapper = VciSpringUtil.getBean(DllMsMapper.class);
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMySqlMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMySqlMapperProcessor.java
index 780984d..0340cca 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMySqlMapperProcessor.java
+++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMySqlMapperProcessor.java
@@ -7,6 +7,7 @@
 import com.vci.ubcs.starter.util.VciSpringUtil;
 import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum;
 import org.apache.commons.collections4.BidiMap;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
@@ -18,6 +19,7 @@
  * @date 2023/4/24
  */
 @Component
+@DependsOn("vciSpringUtil")
 public class DllMySqlMapperProcessor extends DllMapperProcessor {
 
 	private static final DllMapper MAPPER = VciSpringUtil.getBean(DllMySqlMapper.class);
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllOracleMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllOracleMapperProcessor.java
index 4629964..a171433 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllOracleMapperProcessor.java
+++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllOracleMapperProcessor.java
@@ -6,6 +6,7 @@
 import com.vci.ubcs.starter.util.VciSpringUtil;
 import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum;
 import org.apache.commons.collections4.BidiMap;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
@@ -18,6 +19,7 @@
  * @date 2023/4/24
  */
 @Component
+@DependsOn("vciSpringUtil")
 public class DllOracleMapperProcessor extends DllMapperProcessor {
 
 	private static DllMapper mapper = VciSpringUtil.getBean(DllOracleMapper.class);
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllSqlLiteMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllSqlLiteMapperProcessor.java
index 539f540..c47d99e 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllSqlLiteMapperProcessor.java
+++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllSqlLiteMapperProcessor.java
@@ -6,6 +6,7 @@
 import com.vci.ubcs.starter.util.VciSpringUtil;
 import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum;
 import org.apache.commons.collections4.BidiMap;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
@@ -17,6 +18,7 @@
  * @date 2023/4/24
  */
 @Component
+@DependsOn("vciSpringUtil")
 public class DllSqlLiteMapperProcessor extends DllMapperProcessor{
 	private static DllMapper mapper = VciSpringUtil.getBean(DllSqlLiteMapper.class);
 
diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/mapper/BtmTypeAttributeMapper.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/mapper/BtmTypeAttributeMapper.java
index 01bc4e0..96d8483 100644
--- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/mapper/BtmTypeAttributeMapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/mapper/BtmTypeAttributeMapper.java
@@ -1,5 +1,6 @@
 package com.vci.ubcs.omd.mapper;
 
+import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.vci.ubcs.omd.entity.BtmTypeAttribute;
 import org.apache.ibatis.annotations.Param;
@@ -19,6 +20,7 @@
     int batchDelete(@Param("records") List<String> records);
 
 
+	@InterceptorIgnore(tenantLine = "true")
 	int batchUpdate(@Param("records") List<BtmTypeAttribute> btmTypeAttributeDOList);
 
 	/**
diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java
index 2dc1b5f..2a64160 100644
--- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java
@@ -495,7 +495,7 @@
 		}
 		checkBtmTypeBeforeSave(btmTypeDTO);
 		BtmType btmTypeDO = Optional.ofNullable(BeanUtil.copy(btmTypeDTO, BtmType.class)).orElseGet(BtmType::new);
-		btmTypeDO.setBizDomain(btmTypeDTO.getDomain());
+		btmTypeDO.setBizDomain(btmTypeDTO.getBizDomain());
 		List<BtmTypeLinkAttributesDTO> attributes = btmTypeDTO.getAttributes();
 		List<BtmTypeAttributeVO> afterAttributes;
 		if (StringUtils.isBlank(btmTypeDO.getOid())){
@@ -521,7 +521,7 @@
 		try {
 			if (autoCreateTable) {
 //				checkTableSame(btmTypeVO);
-				R result = DomainRepeater.submitBtmType(btmTypeDTO.getDomain(), btmTypeVO);
+				R result = DomainRepeater.submitBtmType(btmTypeDTO.getBizDomain(), btmTypeVO);
 				if (result.isSuccess()){
 					List<ModifyAttributeInfo> infoList = new ArrayList<>();
 					Object data = result.getData();
diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/BtmTypeAttributeMapper.xml b/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/BtmTypeAttributeMapper.xml
index bfa4fe8..55b7372 100644
--- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/BtmTypeAttributeMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/BtmTypeAttributeMapper.xml
@@ -41,7 +41,8 @@
         pl_omd_btm_type
     </sql>
     <update id="batchUpdate" parameterType="java.util.List">
-        <foreach collection="records" item="item" index="index" open="begin" close=";end;" separator=";">
+        BEGIN
+        <foreach collection="records" item="item" index="index" separator=";">
             update <include refid="tableName"/> set
                 id = #{item.id,jdbcType=VARCHAR},
                 name = #{item.name,jdbcType=VARCHAR},
@@ -65,7 +66,9 @@
                 last_modifier = #{item.lastModifier,jdbcType=VARCHAR},
                 last_modify_time = #{item.lastModifyTime,jdbcType=TIMESTAMP},
                 ts = #{item.ts,jdbcType=TIMESTAMP}
+            where oid = #{item.oid,jdbcType=VARCHAR}
         </foreach>
+        ;END;
     </update>
     <delete id="batchDelete">
         delete from

--
Gitblit v1.9.3