From dbe1b807e2a0e4aaa37277b69c50dd69dc42dda2 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期日, 25 六月 2023 10:34:36 +0800
Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs

---
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSystemConfigVO.java  |   12 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingSysIntParamWrapper.java           |   69 +
 Source/UBCS-WEB/src/views/work/process/leave-bak/handle.vue                                                         |  169 ++++
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingSysIntHeaderWrapper.java          |   67 +
 Source/UBCS-WEB/src/components/BatchImport/ShowImportData.vue                                                       |  397 +++++++++
 Source/UBCS-WEB/src/views/work/process/leave-bak/form.vue                                                           |  112 ++
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingSysIntHeaderMapper.java            |    7 
 Source/UBCS-WEB/src/components/template/SetPersonnel.vue                                                            |   90 +
 Source/UBCS-WEB/vue.config.js                                                                                       |    1 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSysIntHeaderServiceImpl.java |   13 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSysIntHeaderVO.java  |   55 +
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingSysIntParamMapper.java             |    7 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSystemConfigDTO.java          |  383 --------
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java      |   29 
 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingSysIntParamMapper.xml                           |   42 +
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSysIntParamService.java          |    8 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingTaskServiceImpl.java         |    2 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSysIntHeaderDTO.java          |   57 +
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntParam.java           |   66 +
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java         |   19 
 Source/UBCS-WEB/src/api/resource/file.js                                                                            |    3 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSysIntParamVO.java   |   54 +
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java |  143 +++
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java               |   27 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java     |  132 +++
 Source/UBCS-WEB/src/views/work/process/leave-bak/detail.vue                                                         |  107 ++
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSysIntParamDTO.java           |   57 +
 /dev/null                                                                                                           |   81 -
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSysIntHeaderService.java         |    7 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntHeader.java          |   60 +
 Source/UBCS-WEB/src/components/FormTemplate/index.vue                                                               |   59 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java          |    4 
 Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/constant/CodeTableNameConstant.java   |    6 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java           |   34 
 Source/UBCS-WEB/src/components/file/main.vue                                                                        |   20 
 Source/UBCS-WEB/src/api/batchImport/index.js                                                                        |   38 
 Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue                                                               |   10 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSysIntParamServiceImpl.java  |   13 
 Source/UBCS-WEB/src/components/BatchImport/index.vue                                                                |   50 +
 39 files changed, 1,927 insertions(+), 583 deletions(-)

diff --git a/Source/UBCS-WEB/src/api/batchImport/index.js b/Source/UBCS-WEB/src/api/batchImport/index.js
index 69c3f05..d795f54 100644
--- a/Source/UBCS-WEB/src/api/batchImport/index.js
+++ b/Source/UBCS-WEB/src/api/batchImport/index.js
@@ -15,7 +15,8 @@
   return request({
     url: '/api/ubcs-code/mdmEngineController/downloadErrorFile',
     method: 'get',
-    params
+    params,
+    responseType: 'blob'
   })
 }
 // 瀵煎叆鏁版嵁灞曠ず
@@ -25,4 +26,37 @@
     method: 'get',
     params: {redisOid: redisOid + "-class"}
   })
-}
\ No newline at end of file
+}
+// 鑾峰彇鍘嗗彶鏁版嵁姝g‘鏁版嵁
+export const getHistoryLeftTree = (redisOid) => {
+  return request({
+    url: '/api/ubcs-code/mdmEngineController/gridValidata',
+    method: 'get',
+    params: {redisOid: redisOid + "-ok"}
+  })
+}
+// 鑾峰彇鍘嗗彶鐩镐技椤�
+export const getHistoryResembleTable = (params) => {
+  return request({
+    url: '/api/ubcs-code/mdmEngineController/gridResemble',
+    method: 'get',
+    params
+  })
+}
+
+// 鑾峰彇妯℃澘
+export function getFormTemplate(params) {
+  return request({
+    url: 'api/ubcs-code/ubcs-code/mdmEngineController/getFormDefineByTemplateOid',
+    method: 'get',
+    params
+  })
+}
+// 鑾峰彇褰撳墠琛岀浉浼奸」鏁版嵁
+export function getCurretnSelectedRowResemble(params) {
+  return request({
+    url: 'api/ubcs-code/ubcs-code/mdmEngineController/gridRowResemble',
+    method: 'get',
+    params
+  })
+}
diff --git a/Source/UBCS-WEB/src/api/resource/file.js b/Source/UBCS-WEB/src/api/resource/file.js
index 520b333..1df5197 100644
--- a/Source/UBCS-WEB/src/api/resource/file.js
+++ b/Source/UBCS-WEB/src/api/resource/file.js
@@ -12,11 +12,12 @@
   })
 }
 
-export const remove = (oids) => {
+export const remove = (fileOids,oids) => {
   return request({
     url: '/api/ubcs-resource/fileController/deleteFile',
     method: 'delete',
     params: {
+      fileOids,
       oids
     }
   })
diff --git a/Source/UBCS-WEB/src/components/BatchImport/ShowImportData.vue b/Source/UBCS-WEB/src/components/BatchImport/ShowImportData.vue
index 32fde8d..9a74712 100644
--- a/Source/UBCS-WEB/src/components/BatchImport/ShowImportData.vue
+++ b/Source/UBCS-WEB/src/components/BatchImport/ShowImportData.vue
@@ -1,9 +1,10 @@
 <template>
   <el-dialog
     :title="title"
-    :visible="dialogVisible"
-    width="1200px"
+    :visible.sync="dialogVisible"
+    width="1300px"
     append-to-body
+    top="5vh"
   >
     <div class="flex_box">
       <div class="left" :style="{ width: leftWidth }">
@@ -25,23 +26,90 @@
         <el-tree
           v-show="isExpand"
           class="filter_tree"
-          :data="data"
+          :data="leftTree"
           default-expand-all
+          highlight-current
           :filter-node-method="filterNode"
+          @node-click="treeNodeClick"
           ref="tree"
+          :props="{
+            label: 'name',
+          }"
         >
         </el-tree>
       </div>
       <div class="right">
         <div class="tab_box">
-          <el-tabs v-model="activeName" type="card" @tab-click="handleClick">
-            <el-tab-pane label="姝g‘鏁版嵁" name="success">
-              <el-table border :data="successData"></el-table>
+          <el-tabs
+            v-model="activeTab"
+            type="card"
+            @tab-click="handleClick"
+            size="small"
+          >
+            <el-tab-pane label="鏈夌浉浼奸」" name="resemble">
+              <el-table
+                border
+                :data="resembleData"
+                style="width: 100%"
+                height="400px"
+                highlight-current-row
+                @current-change="resembleRowChange"
+              >
+                <el-table-column
+                  v-for="item in cloNamesList"
+                  :key="item.field"
+                  :prop="item.field"
+                  :label="item.title"
+                  :width="item.width"
+                >
+                </el-table-column>
+              </el-table>
             </el-tab-pane>
-            <el-tab-pane label="鏈夌浉浼奸」鎴栬�呴敊璇暟鎹�" name="error">
-              <el-table border :data="errorData"></el-table>
+            <el-tab-pane label="姝g‘鏁版嵁" name="success">
+              <el-table border :data="successData" height="400px">
+                <el-table-column
+                  v-for="item in cloNamesList"
+                  :key="item.field"
+                  :prop="item.field"
+                  :label="item.title"
+                  :width="item.width"
+                >
+                </el-table-column>
+              </el-table>
             </el-tab-pane>
           </el-tabs>
+        </div>
+        <div>
+          <el-table
+            border
+            :data="currentSelectedResemble"
+            style="width: 100%"
+            height="200px"
+          >
+            <el-table-column
+              v-for="item in resembleColumList"
+              :key="item.field"
+              :prop="item.field"
+              :label="item.title"
+              :minWidth="item.minWidth"
+            >
+              <template #default="{ row }">
+                <span v-if="item.field === 'id'">
+                  <el-link type="primary" @click="openFormTemlpate(row)">{{
+                    row[item.field]
+                  }}</el-link>
+                </span>
+                <span v-else>
+                  {{ row[item.field] }}
+                </span>
+              </template>
+            </el-table-column>
+            <el-table-column
+              v-show="resembleColumList.length > 0"
+              prop="rowIndex"
+              label="excel琛屾暟"
+            ></el-table-column>
+          </el-table>
         </div>
       </div>
     </div>
@@ -51,18 +119,41 @@
         <el-button size="small">鍙栨秷</el-button>
       </div>
     </template>
+    <FormTemplateDialog
+      ref="FormTemplateDialog"
+      type="detail"
+      v-bind="currentSelectedResembleRow"
+      :visible.sync="currentSelectedResembleRow.visible"
+      title="鏌ョ湅璇︾粏淇℃伅"
+    ></FormTemplateDialog>
   </el-dialog>
 </template>
 
 <script>
+import {
+  getHistorySuccessTable,
+  getHistoryResembleTable,
+  getFormTemplate,
+  getCurretnSelectedRowResemble,
+} from "../../api/batchImport/index";
+import ResembleQuery from "../FormTemplate/ResembleQuery.vue";
 export default {
   name: "ShowImportData",
+  components: { ResembleQuery },
   props: {
     title: {
       type: String,
       default: "鍘嗗彶鏁版嵁瀵煎叆",
     },
     visible: false,
+    leftTree: {
+      type: Array,
+      default: () => [],
+    },
+    redisOid: {
+      type: String,
+      default: "",
+    },
   },
   computed: {
     dialogVisible: {
@@ -193,15 +284,26 @@
           ],
         },
       ],
+      resembleData: [],
       successData: [],
-      errorData: [],
+      activeTab: "resemble",
+      cloNamesList: [],
+      codeClassifyOid: "",
+      resembleColumList: [],
+      currentSelectedResemble: [],
+      currentSelectedResembleRow: {
+        templateOid: "",
+        codeClassifyOid: "",
+        rowOid: "",
+        formTemplateVisible: false,
+      },
     };
   },
 
   methods: {
     filterNode(value, data) {
       if (!value) return true;
-      return data.label.indexOf(value) !== -1;
+      return data.name.indexOf(value) !== -1;
     },
     hideTree() {
       if (this.isExpand) {
@@ -210,6 +312,276 @@
         this.leftWidth = "200px";
       }
       this.isExpand = !this.isExpand;
+    },
+    treeNodeClick(data) {
+      this.codeClassifyOid = data.codeclassifyoid;
+      this.cloNamesList = data.cloNamesList;
+      getHistorySuccessTable(this.redisOid).then((res) => {
+        this.successData = res.data
+        // this.successData = [
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH007",
+        //     caigouwl: "鏄�",
+        //     oid: "433DFA8E-4445-18F4-AC95-85E7EE1C92CF",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH006",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘瘝",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯4",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0004",
+        //     id: "0201020013",
+        //   },
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH006",
+        //     caigouwl: "鏄�",
+        //     oid: "E94E3320-841F-AE87-1D56-D6B3398D0FFC",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH005",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘瘝",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯3",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0003",
+        //     id: "0201020012",
+        //   },
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH003",
+        //     caigouwl: "鏄�",
+        //     oid: "D2E0A166-A774-BE6F-A9C7-3277467CE8EC",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH003",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘瘝",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯2",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0002",
+        //     id: "0201020011",
+        //   },
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH002",
+        //     caigouwl: "鏄�",
+        //     oid: "291CD01A-F18D-2D95-5291-D2C80ED57CC8",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH002",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘瘝",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯1",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0001",
+        //     id: "0201020010",
+        //   },
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH001",
+        //     caigouwl: "鏄�",
+        //     oid: "FED83315-F2B4-C603-2AC2-11B0DF3029A6",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH001",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘爴",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯6",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0006",
+        //     id: "0201010019",
+        //   },
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH005",
+        //     caigouwl: "鏄�",
+        //     oid: "3E120284-8EC2-9BF4-D1AB-579380DFA085",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH005",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘爴",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯5",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0005",
+        //     id: "0201010018",
+        //   },
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH004",
+        //     caigouwl: "鏄�",
+        //     oid: "2EB3B122-2FE4-A236-53F2-9B67E40332AC",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH004",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘爴",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯4",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0004",
+        //     id: "0201010017",
+        //   },
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH009",
+        //     caigouwl: "鏄�",
+        //     oid: "8940A341-8041-E031-6FE1-A18526C62DE9",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH008",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘瘝",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯6",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0006",
+        //     id: "0201020015",
+        //   },
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH008",
+        //     caigouwl: "鏄�",
+        //     oid: "936CBC1E-2FD0-5CD7-C331-64B86204FD78",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH007",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘瘝",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯5",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0005",
+        //     id: "0201020014",
+        //   },
+        // ];
+      });
+      getHistoryResembleTable({
+        codeClassifyOid: data.codeClassifyOid,
+        redisOid: this.redisOid + "-resemble",
+      }).then((res) => {
+        console.log(res);
+        this.resembleData = res.data
+        // this.resembleData = [
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH007",
+        //     caigouwl: "鏄�",
+        //     oid: "FC2F0D9F-8B2E-5A19-3BDE-22107F373EB3",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH006",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘瘝",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯4",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0004",
+        //     id: "0201020013",
+        //   },
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH007",
+        //     caigouwl: "鏄�",
+        //     oid: "B92CFF46-1D46-E680-66C4-33A3ABE77A6C",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH005",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘瘝",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯3",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0003",
+        //     id: "0201020012",
+        //   },
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH15",
+        //     caigouwl: "鏄�",
+        //     oid: "B383C30E-D201-01F2-89EE-6F751EFA0AA1",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH008",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘瘝",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯6",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0006",
+        //     id: "0201020015",
+        //   },
+        //   {
+        //     xiaoshouwl: "鏄�",
+        //     xinghaoguige: "XH17",
+        //     caigouwl: "鏄�",
+        //     oid: "1C379116-F27B-3F20-DFC3-74A39B87E505",
+        //     kucunwl: "鏄�",
+        //     tuhao: "TH007",
+        //     codeSecLengthField: "6#4",
+        //     codeclsfid: "绱у浐浠�#铻烘瘝",
+        //     materialtype: "鏉愭枡",
+        //     chukufangshi: "鍏堣繘鍏堝嚭",
+        //     hesuanfenlei: "鍘熸潗鏂�",
+        //     name: "娴嬭瘯5",
+        //     jiliangdw: "涓�",
+        //     oldcode: "z0005",
+        //     id: "0201020014",
+        //   },
+        // ];
+      });
+      getFormTemplate({
+        templateOid: data.oid,
+        codeClassifyOid: data.codeClassifyOid,
+      }).then((res) => {
+        this.resembleColumList = res.data.resembleTableVO.cols[0];
+      });
+    },
+    resembleRowChange(row) {
+      getCurretnSelectedRowResemble({
+        redisOid: this.redisOid + "-resemble-data",
+        dataOid: row.oid,
+      }).then((res) => {
+        this.currentSelectedResemble = res.data
+        // this.currentSelectedResemble = [
+        //   {
+        //     xinghaoguige: "XH007",
+        //     codetemplateoid: "f441b131-5ea0-4672-ab74-735b11161928",
+        //     rowIndex: "9",
+        //     id: "0201020012",
+        //     oid: "B92CFF46-1D46-E680-66C4-33A3ABE77A6C",
+        //   },
+        // ];
+      });
+    },
+    openFormTemlpate(row) {
+      this.currentSelectedResembleRow = {
+        visible: true,
+        templateOid: row.codetemplateoid,
+        codeClassifyOid: this.codeClassifyOid,
+        rowOid: row.rowOid,
+      }
     },
   },
   watch: {
@@ -234,5 +606,10 @@
       overflow-y: scroll;
     }
   }
+  .right {
+    margin-left: 20px;
+    margin-top: 30px;
+    width: 1000px;
+  }
 }
 </style>
diff --git a/Source/UBCS-WEB/src/components/BatchImport/index.vue b/Source/UBCS-WEB/src/components/BatchImport/index.vue
index 3c674f4..3c65d7a 100644
--- a/Source/UBCS-WEB/src/components/BatchImport/index.vue
+++ b/Source/UBCS-WEB/src/components/BatchImport/index.vue
@@ -29,6 +29,7 @@
       :headers="uploadHeaders"
       :on-success="onSuccess"
       :show-file-list="false"
+      :on-change="uploadChange"
       :data="{
         codeClassifyOid: this.codeClassifyOid,
         classifyAttr: this.classifyAttr,
@@ -46,9 +47,14 @@
         :loading="downloadLoading"
         >涓嬭浇瀵煎叆妯℃澘</el-button
       >
-      <el-button size="small" @click="visible = false">鍏抽棴</el-button>
+      <el-button size="small" @click="dialogVisible = false">鍏抽棴</el-button>
     </template>
-    <ShowImportData :visible="showVisible" v-if="showVisible"></ShowImportData>
+    <ShowImportData
+      :visible.sync="showVisible"
+      v-if="dialogVisible"
+      :leftTree="leftTree"
+      :redisOid="redisOid"
+    ></ShowImportData>
   </el-dialog>
 </template>
 
@@ -57,6 +63,7 @@
 import {
   downloadHistoryImportTemplate,
   downloadErrorFile,
+  getHistoryLeftTree
 } from "../../api/batchImport/index";
 import { getToken } from "@/util/auth";
 export default {
@@ -86,6 +93,9 @@
       uploadParams: {},
       downloadLoading: false,
       showVisible: false,
+      leftTree: [],
+      redisOid:'',
+      pageLoading: null
     };
   },
   computed: {
@@ -139,19 +149,47 @@
         codeClassifyOid: this.codeClassifyOid,
       })
         .then((res) => {
-          this.downloadLoading = false;
           this.$utilFunc.downloadFileByBlob(res.data, "鍘嗗彶鏁版嵁瀵煎叆妯℃澘.xls");
+          this.downloadLoading = false;
         })
         .catch(() => {
           this.downloadLoading = false;
         });
     },
     onSuccess(res) {
-      if (res.code === 400) {
-        this.$message.error(`${res.msg}锛岃涓嬭浇閿欒淇℃伅杩涜鏌ョ湅锛乣);
+      let fileName = res.data.filePath.split('/').pop()
+      if (res.data.fileOid) {
+        this.$message.error("璇蜂笅杞介敊璇俊鎭枃浠惰繘琛屾煡鐪嬶紒");
+        downloadErrorFile({ uuid: res.data.fileOid }).then((res2) => {
+          this.$utilFunc.downloadFileByBlob(res2.data, fileName);
+        });
       }
-      downloadErrorFile({ uuid: res.data.fileOid });
+      if (res.data.redisUuid) {
+        this.redisOid = res.data.redisUuid
+        getHistoryLeftTree(res.data.redisUuid).then(res => {
+          this.leftTree = res.obj.map(item => {
+            return {
+              ...item.codeClassifyTemplateVO,
+              cloNamesList: item.cloNamesList
+            }
+          })
+          this.showVisible = true
+        })
+      }
     },
+    uploadChange(file) {
+      if (file.status === 'ready') {
+        this.pageLoading = this.$loading({
+          lock: true,
+          text: '鏂囦欢涓婁紶涓�',
+          spinner: 'el-icon-loading',
+          background: 'rgba(0, 0, 0, 0.7)'
+        });
+      }
+      if (file.status === 'success' || file.status === 'error') {
+        this.pageLoading.close()
+      }
+    }
   },
   watch: {
     visible: {
diff --git a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
index ba64b83..f58d3b0 100644
--- a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
+++ b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
@@ -28,7 +28,7 @@
           @submit="EditSumbit"
         ></FormTemplateDialog>
         <el-button plain size="small" type="primary">鎵归噺瀵煎叆鐢宠</el-button>
-        <el-button plain size="small" type="primary">鍘嗗彶鏁版嵁瀵煎叆</el-button>
+        <el-button plain size="small" type="primary" @click="historyVisible = true">鍘嗗彶鏁版嵁瀵煎叆</el-button>
         <el-button plain size="small" type="primary">鎵归噺鐢宠缂栫爜</el-button>
         <el-button plain size="small" type="primary">鎵归噺鍙戝竷</el-button>
         <el-button plain size="small" type="primary">鏌ョ湅娴佺▼鍘嗗彶</el-button>
@@ -111,6 +111,7 @@
         @current-change="handleCurrentChange">
       </el-pagination>
     </div>
+    <historyImport :visible.sync="historyVisible" :codeClassifyOid="codeClassifyOid" type="historyImport"></historyImport>
   </basic-container>
 </template>
 <script>
@@ -119,11 +120,13 @@
 import integrationTransfer from '@/views/integration/integrationTransfer'
 import SetPersonnel from '@/components/template/SetPersonnel'
 import ResembleQueryDialog from "@/components/FormTemplate/ResembleQueryDialog.vue";
+import historyImport from '../BatchImport/index.vue'
 export default {
   components: {
     integrationTransfer,
     SetPersonnel,
-    ResembleQueryDialog
+    ResembleQueryDialog,
+    historyImport
   },
   name: "Crud.vue",
   props: {
@@ -208,7 +211,8 @@
       tableHeadData: [],
       items: {},
       seniorQueryColumns: [],
-      selectRow: []
+      selectRow: [],
+      historyVisible: false
     }
   },
   computed: {},
diff --git a/Source/UBCS-WEB/src/components/FormTemplate/index.vue b/Source/UBCS-WEB/src/components/FormTemplate/index.vue
index b6946b6..f37041e 100644
--- a/Source/UBCS-WEB/src/components/FormTemplate/index.vue
+++ b/Source/UBCS-WEB/src/components/FormTemplate/index.vue
@@ -29,7 +29,7 @@
       "
     >
       <el-tabs v-model="activeName" type="border-card" @tab-click="handleClick">
-        <el-tab-pane label="鐮佸�肩敵璇�" name="codeApply">
+        <el-tab-pane label="鐮佸�肩敵璇�" name="codeApply" v-if="showCodeApply">
           <FormTempalte
             v-bind="$attrs"
             :type="type"
@@ -57,18 +57,25 @@
         </el-tab-pane>
       </el-tabs>
     </div>
-    <div class="avue-dialog__footer" v-if="type !== 'detail'">
-      <el-button @click="close()">鍙� 娑�</el-button>
-      <el-button @click="submit()" type="primary" :loading="submitBtnLoading">{{
-        submitText
-      }}</el-button>
-      <el-button
-        @click="resembleQuerySubmit"
-        type="primary"
-        v-if="showResembleQuery"
-        >鐩镐技鍍忔煡璇�</el-button
-      >
-    </div>
+    <template #footer>
+      <div class="" v-if="type !== 'detail'">
+        <el-button @click="close()" size="small">鍙� 娑�</el-button>
+        <el-button
+          @click="submit()"
+          type="primary"
+          :loading="submitBtnLoading"
+          size="small"
+          >{{ submitText }}</el-button
+        >
+        <el-button
+          @click="resembleQuerySubmit"
+          type="primary"
+          size="small"
+          v-if="showResembleQuery"
+          >鐩镐技鍍忔煡璇�</el-button
+        >
+      </div>
+    </template>
   </el-dialog>
 </template>
 
@@ -236,6 +243,7 @@
     // 鑾峰彇鐮佸�肩敵璇锋暟鎹�
     getCodeRule() {
       getCodeRule({ codeClassifyOid: this.codeClassifyOid }).then((res) => {
+        console.log(res, "resresresresres");
         if (res.data && res.data.code === 200) {
           const typeList = [
             "codefixedsec",
@@ -244,8 +252,9 @@
             "coderefersec",
           ];
           this.secVOList = (res.data.data.secVOList || []).filter((item) =>
-            typeList.includes(item)
+            typeList.includes(item.secType)
           );
+          console.log(this.secVOList, "this.secVOListthis.secVOList");
           this.$nextTick(() => {
             if (this.secVOList.length > 0 && this.type === "add") {
               this.showCodeApply = true;
@@ -301,19 +310,21 @@
         this.form
       );
       if (resembleQueryList.length === 0) {
-        let resForm = {}
-        const { defaultValue, formValue } = this.getDefaultValueAndFormValues(this.form)
-        resForm.data = formValue
-        resForm = Object.assign({}, resForm, defaultValue)
-        resForm.secDTOList = []
+        let resForm = {};
+        const { defaultValue, formValue } = this.getDefaultValueAndFormValues(
+          this.form
+        );
+        resForm.data = formValue;
+        resForm = Object.assign({}, resForm, defaultValue);
+        resForm.secDTOList = [];
         for (const key in this.codeApplyForm) {
-        if (Object.hasOwnProperty.call(this.codeApplyForm, key)) {
-          const value = this.codeApplyForm[key];
-          if (value) {
-            resForm.secDTOList.push({[key]: value})
+          if (Object.hasOwnProperty.call(this.codeApplyForm, key)) {
+            const value = this.codeApplyForm[key];
+            if (value) {
+              resForm.secDTOList.push({ [key]: value });
+            }
           }
         }
-      }
         this.$emit("submit", resForm);
       } else {
         this.$confirm(
diff --git a/Source/UBCS-WEB/src/components/file/main.vue b/Source/UBCS-WEB/src/components/file/main.vue
index f4021d0..9e5a099 100644
--- a/Source/UBCS-WEB/src/components/file/main.vue
+++ b/Source/UBCS-WEB/src/components/file/main.vue
@@ -353,17 +353,13 @@
       done();
     },
     uploadAfter(res, done, loading, column) {
-      if(res.success){
-        this.attachBox = false;
-        this.$message.success('鏂囦欢涓婁紶鎴愬姛')
-      }else{
-        this.$message.error(res.msg);
-      }
+      this.attachBox = false;
+      this.$message.success('鏂囦欢涓婁紶鎴愬姛')
       this.refreshChange();
       done();
     },
     uploadError(error, column) {
-      this.$message.error('涓婁紶鏂囦欢鍑虹幇浜嗗紓甯�')
+      this.$message.error(error || '涓婁紶鏂囦欢鍑虹幇浜嗗紓甯�')
     },
     handleDownload(row) {
       //window.open(`${row.link}`);
@@ -384,7 +380,7 @@
         type: "warning"
       })
         .then(() => {
-          return remove(row.oid);
+          return remove(row.oid,row.oid);
         })
         .then(() => {
           this.onLoad(this.page);
@@ -405,7 +401,7 @@
         type: "warning"
       })
         .then(() => {
-          return remove(this.oids);
+          return remove(this.oids,this.oids);
         })
         .then(() => {
           this.onLoad(this.page);
@@ -461,7 +457,7 @@
       getList(page.currentPage, page.pageSize, Object.assign(params,this.params, query,this.query)).then(res => {
         const data = res.data.data;
         this.page.total = data.total;
-        if(data && data.records.length>0 && this.options.fileDocClassifyCombox){
+        if(this.options.fileDocClassifyCombox){
           this.data = data.records.map(item => {
             if(validatenull(item.fileDocClassifyName)&& !validatenull(item.fileDocClassify)){
               item.fileDocClassifyName = this.options.fileDocClassifyCombox[item.fileDocClassify] || '';
@@ -470,8 +466,10 @@
               ...item
             }
           })
+        }else{
+          this.data = data.records;
         }
-        //this.data = data.records;
+
         this.loading = false;
         this.selectionClear();
       }).catch(error=>{
diff --git a/Source/UBCS-WEB/src/components/template/SetPersonnel.vue b/Source/UBCS-WEB/src/components/template/SetPersonnel.vue
index a03ab9d..a8ee38e 100644
--- a/Source/UBCS-WEB/src/components/template/SetPersonnel.vue
+++ b/Source/UBCS-WEB/src/components/template/SetPersonnel.vue
@@ -73,14 +73,22 @@
     watch: {
         visible(n) {
             this.dialogVisible = n;
-            if(n){
-              this.apiInit()
-              this.apiDict()
+            if (n) {
+                this.apiInit()
+                this.apiDict()
             }
         },
         dialogVisible(n) {
             this.$emit('update:visible', n)
         },
+        users:{
+            handler(val){
+                console.log('鐩戝惉users',val)
+                this.collectParam.flowTaskUsers = val
+            },
+            deep:true,
+            immediate:true
+        }
     },
     data() {
         return {
@@ -125,9 +133,10 @@
                 const { modelKey, templateId, modelName } = response.data.data.flow
                 let flowTaskUsers = response.data.data.user
                 this.collectParam = { modelKey, templateId, flowTaskUsers: flowTaskUsers }
+                this.users = response.data.data.user
                 console.log(this.collectParam)
                 this.saveParam = { ...this.saveParam, modelKey, templateId, modelName }
-                this.handleClickTag(this.tags[0])
+                if (this.tags.length !== 0) this.handleClickTag(this.tags[0])
             }
         },
         async apiDict() {
@@ -154,12 +163,11 @@
                 this.collectParam = { ...this.collectParam, name: value }
                 console.log(this.collectParam)
                 const response = await personnelCollect(this.collectParam)
-                Console.log(response)
+                console.log(response)
                 if (response.status === 200) {
                     this.$nextTick(() => {
                         this.apiInit()
                     })
-                    console.log(response)
                 }
             }).catch(() => {
 
@@ -179,35 +187,60 @@
         },
         async apiSave() {
             try {
-                const response = await personnelSave(this.saveParam)
-                if (response.status === 200) {
-                    console.log(response)
+                const len = this.collectParam.flowTaskUsers.length
+                console.log(this.collectParam.flowTaskUsers)
+                console.log(len == 0)
+                console.log(len != this.initFrom.length)
+                if (len == 0 && len != this.initFrom.length) {
                     this.$message({
-                        type: 'success',
-                        message: response.data.msg
+                        type: "error",
+                        message: "璇烽�夋嫨鑺傜偣锛�"
                     });
-                    this.done()
+                } else {
+                    console.log('baoc')
+                    const response = await personnelSave({ ...this.saveParam, flowTaskUsers: this.collectParam.flowTaskUsers })
+                    if (response.status === 200) {
+                        console.log(response)
+                        this.$message({
+                            type: 'success',
+                            message: response.data.msg
+                        });
+                        this.done()
+                    }
                 }
+
             } catch {
                 console.error('鎺ュ彛璋冪敤澶辫触')
             }
         },
         handleClickTag(event) {
-            console.log(event)
-            const flowTaskUsers = event.flowTaskUsers//collet.flowTaskUsers
-            let tasks =  this.collectParam.flowTaskUsers;//user
-            for(let i=0;i<tasks.length;i++){
-                let thisFlowTaskUsers = tasks[i];
-                console.log('thisFlowTaskUsers',thisFlowTaskUsers)
-                for(let j=0;j<flowTaskUsers.length;j++){
-                    let thisFflowTaskUsers = flowTaskUsers[j];
-                    if(thisFlowTaskUsers.taskId==thisFflowTaskUsers.taskId){
-                        thisFlowTaskUsers['userName']=thisFflowTaskUsers.userName;
-                        thisFlowTaskUsers['userId']=thisFflowTaskUsers.userId;
+            console.log(event.flowTaskUsers)
+
+            console.log(this.collectParam.flowTaskUsers)
+            let flowTaskUsers = this.collectParam.flowTaskUsers
+            this.collectParam.flowTaskUsers = flowTaskUsers.map((item, index) => {
+                for (let i = 0; i < event.flowTaskUsers.length; i++) {
+                    if (item.taskId == event.flowTaskUsers[i].taskId) {
+                        item['userName'] = event.flowTaskUsers[i]['userName']
+                        item['userId'] = event.flowTaskUsers[i]['userId']
                     }
                 }
-            }
-            console.log(this.collectParam)
+                return item
+            })
+            this.users =  this.collectParam.flowTaskUsers
+            // const flowTaskUsers = event.flowTaskUsers//collet.flowTaskUsers
+            // let tasks = this.collectParam.flowTaskUsers;//user
+            // for (let i = 0; i < tasks.length; i++) {
+            //     let thisFlowTaskUsers = tasks[i];
+            //     for (let j = 0; j < flowTaskUsers.length; j++) {
+            //         let thisFflowTaskUsers = flowTaskUsers[j];
+            //         if (thisFlowTaskUsers.taskId == thisFflowTaskUsers.taskId) {
+            //             thisFlowTaskUsers['userName'] = thisFflowTaskUsers.userName;
+            //             thisFlowTaskUsers['userId'] = thisFflowTaskUsers.userId;
+            //         }
+            //     }
+            // }
+            // this.collectParam.flowTaskUsers = {...this.collectParam.flowTaskUsers,userId,userName}
         },
         handleCloseTag(event) {
             console.log(event)
@@ -216,9 +249,10 @@
         handleSelect(event, index) {
             const res = this.typeName.find(item => item.userId === event)
             const { userName } = res
-            let users = { ... this.collectParam.flowTaskUsers[index], userName }
-            console.log(users)
-            this.users[index] = users
+            console.log(this.users)
+            this.$set(this.users, index, { ... this.collectParam.flowTaskUsers[index], userName })
+            // this.users[index] = { ... this.collectParam.flowTaskUsers[index], userName }
+            console.log(this.users)
         },
         done() {
             this.dialogVisible = false
diff --git a/Source/UBCS-WEB/src/views/work/process/leave-bak/detail.vue b/Source/UBCS-WEB/src/views/work/process/leave-bak/detail.vue
new file mode 100644
index 0000000..18a8e30
--- /dev/null
+++ b/Source/UBCS-WEB/src/views/work/process/leave-bak/detail.vue
@@ -0,0 +1,107 @@
+<template>
+  <basic-container>
+    <el-form ref="form" :model="form" label-width="80px">
+      <el-row type="flex" class="row-bg" justify="end">
+        <el-form-item>
+          <el-button @click="handleCancel">鍏抽棴</el-button>
+        </el-form-item>
+      </el-row>
+      <el-card shadow="hover">
+        <div slot="header">
+          <span>瀹℃壒淇℃伅</span>
+        </div>
+        <el-form-item label="鐢宠浜�">
+          <el-input :disabled="true" v-model="form.flow.assigneeName" />
+        </el-form-item>
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="寮�濮嬫椂闂�">
+              <el-input :disabled="true" v-model="form.startTime" />
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="缁撴潫鏃堕棿">
+              <el-input :disabled="true" v-model="form.endTime" />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-form-item label="璇峰亣鐞嗙敱">
+          <el-input :disabled="true" type="textarea" v-model="form.reason" />
+        </el-form-item>
+      </el-card>
+      <el-card shadow="hover">
+        <div slot="header">
+          <span>娴佺▼淇℃伅</span>
+        </div>
+        <el-row type="flex" class="row-bg">
+          <el-timeline>
+            <el-timeline-item :key="flow.id" :timestamp="flow.createTime" v-for="flow in flowList" placement="top">
+              <el-card shadow="hover">
+                <p>{{flow.assigneeName}} 鍦� [{{flow.createTime}}] 寮�濮嬪鐞� [{{flow.historyActivityName}}] 鐜妭</p>
+                <p v-if="flow.historyActivityDurationTime!==''">浠诲姟鍘嗘椂 [{{flow.historyActivityDurationTime}}]</p>
+                <p v-if="flow.comment!==''">鎵瑰鎰忚: [{{flow.comment}}]</p>
+                <p v-if="flow.endTime!==''">缁撴潫鏃堕棿: [{{flow.endTime}}]</p>
+              </el-card>
+            </el-timeline-item>
+          </el-timeline>
+        </el-row>
+      </el-card>
+      <el-card shadow="hover">
+        <div slot="header">
+          <span>娴佺▼璺熻釜</span>
+        </div>
+        <el-row class="row-bg">
+          <flow-design :is-display="true" :process-instance-id="processInstanceId"></flow-design>
+        </el-row>
+      </el-card>
+    </el-form>
+  </basic-container>
+</template>
+
+<script>
+  import {historyFlowList, leaveDetail} from "@/api/work/process";
+
+  export default {
+    data() {
+      return {
+        businessId: '',
+        processInstanceId: '',
+        src: '',
+        flowList: [],
+        form: {
+          flow:{
+            assigneeName:'',
+          },
+          startTime: '',
+          endTime: '',
+          reason: '',
+        }
+      }
+    },
+    created() {
+      this.init();
+    },
+    methods: {
+      init() {
+        this.processInstanceId = this.$route.params.processInstanceId;
+        this.businessId = this.$route.params.businessId;
+        historyFlowList(this.processInstanceId).then(res => {
+          const data = res.data;
+          if (data.success) {
+            this.flowList = data.data;
+          }
+        })
+        leaveDetail(this.businessId).then(res => {
+          const data = res.data;
+          if (data.success) {
+            this.form = data.data;
+          }
+        })
+      },
+      handleCancel() {
+        this.$router.$avueRouter.closeTag();
+        this.$router.push({path: `/work/start`});
+      }
+    }
+  }
+</script>
diff --git a/Source/UBCS-WEB/src/views/work/process/leave-bak/form.vue b/Source/UBCS-WEB/src/views/work/process/leave-bak/form.vue
new file mode 100644
index 0000000..5f15d44
--- /dev/null
+++ b/Source/UBCS-WEB/src/views/work/process/leave-bak/form.vue
@@ -0,0 +1,112 @@
+<template>
+  <div>
+    <basic-container>
+      <avue-form :option="option" v-model="form" @submit="handleSubmit"/>
+    </basic-container>
+    <basic-container>
+      <flow-design :is-display="true" :process-definition-id="processDefinitionId"></flow-design>
+    </basic-container>
+  </div>
+</template>
+
+<script>
+  import {leaveProcess} from "@/api/work/process";
+
+  export default {
+    data() {
+      return {
+        processDefinitionId: '',
+        form: {},
+        option: {
+          group: [
+            {
+              icon: 'el-icon-info',
+              label: '璇峰亣鍩虹淇℃伅',
+              prop: 'group1',
+              column: [
+                {
+                  label: '瀹℃壒浜哄憳',
+                  prop: 'taskUser',
+                  type: 'select',
+                  dicUrl: `/api/ubcs-user/user-list`,
+                  props: {
+                    label: "account",
+                    value: "id"
+                  },
+                  span: 24,
+                  rules: [
+                    {
+                      required: true,
+                      message: '璇烽�夋嫨瀹℃壒浜哄憳',
+                      trigger: 'blur'
+                    }
+                  ]
+                },
+                {
+                  label: '寮�濮嬫椂闂�',
+                  prop: 'startTime',
+                  type: 'datetime',
+                  valueFormat: 'yyyy-MM-dd HH:mm:ss',
+                  rules: [
+                    {
+                      required: true,
+                      message: '璇烽�夋嫨寮�濮嬫椂闂�',
+                      trigger: 'blur'
+                    }
+                  ]
+                },
+                {
+                  label: '缁撴潫鏃堕棿',
+                  prop: 'endTime',
+                  type: 'datetime',
+                  valueFormat: 'yyyy-MM-dd HH:mm:ss',
+                  rules: [
+                    {
+                      required: true,
+                      message: '璇烽�夋嫨缁撴潫鏃堕棿',
+                      trigger: 'blur'
+                    }
+                  ]
+                },
+                {
+                  label: '璇峰亣鐞嗙敱',
+                  prop: 'reason',
+                  type: 'textarea',
+                  span: 24,
+                  rules: [
+                    {
+                      required: true,
+                      message: '璇疯緭鍏ヨ鍋囩悊鐢�',
+                      trigger: 'blur'
+                    }
+                  ]
+                },
+              ]
+            },
+          ],
+        }
+      }
+    },
+    created() {
+      this.processDefinitionId = this.$route.params.processDefinitionId;
+    },
+    methods: {
+      handleSubmit() {
+        const params = {
+          processDefinitionId: this.$route.params.processDefinitionId,
+          ...this.form,
+        };
+        leaveProcess(params).then(resp => {
+          const data = resp.data;
+          if (data.success) {
+            this.$message.success(data.msg);
+            this.$router.$avueRouter.closeTag();
+            this.$router.push({path: `/work/start`});
+          } else {
+            this.$message.error(data.msg || '鎻愪氦澶辫触');
+          }
+        });
+      }
+    }
+  }
+</script>
diff --git a/Source/UBCS-WEB/src/views/work/process/leave-bak/handle.vue b/Source/UBCS-WEB/src/views/work/process/leave-bak/handle.vue
new file mode 100644
index 0000000..961bf88
--- /dev/null
+++ b/Source/UBCS-WEB/src/views/work/process/leave-bak/handle.vue
@@ -0,0 +1,169 @@
+<template>
+  <basic-container>
+    <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-row type="flex" class="row-bg" justify="end">
+        <el-form-item>
+          <el-button type="primary" @click="handleAgree">鍚屾剰</el-button>
+          <el-button type="danger" @click="handleDisagree">椹冲洖</el-button>
+          <el-button @click="handleCancel">鍏抽棴</el-button>
+        </el-form-item>
+      </el-row>
+      <el-card shadow="hover">
+        <div slot="header">
+          <span>瀹℃壒淇℃伅</span>
+        </div>
+        <el-form-item label="鐢宠浜�">
+          <el-input :disabled="true" v-model="form.flow.assigneeName"/>
+        </el-form-item>
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="寮�濮嬫椂闂�">
+              <el-input :disabled="true" v-model="form.startTime"/>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="缁撴潫鏃堕棿">
+              <el-input :disabled="true" v-model="form.endTime"/>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-form-item label="璇峰亣鐞嗙敱">
+          <el-input :disabled="true" type="textarea" v-model="form.reason"/>
+        </el-form-item>
+        <el-form-item label="鎵瑰鎰忚">
+          <el-input type="textarea" v-model="form.comment"/>
+        </el-form-item>
+      </el-card>
+      <el-card shadow="hover">
+        <div slot="header">
+          <span>娴佺▼淇℃伅</span>
+        </div>
+        <el-row type="flex" class="row-bg">
+          <el-timeline>
+            <el-timeline-item :key="flow.id" :timestamp="flow.createTime" v-for="flow in flowList" placement="top">
+              <el-card shadow="hover">
+                <p>{{flow.assigneeName}} 鍦� [{{flow.createTime}}] 寮�濮嬪鐞� [{{flow.historyActivityName}}] 鐜妭</p>
+                <p v-if="flow.historyActivityDurationTime!==''">浠诲姟鍘嗘椂 [{{flow.historyActivityDurationTime}}]</p>
+                <p v-if="flow.comment!==''">鎵瑰鎰忚: [{{flow.comment}}]</p>
+                <p v-if="flow.endTime!==''">缁撴潫鏃堕棿: [{{flow.endTime}}]</p>
+              </el-card>
+            </el-timeline-item>
+          </el-timeline>
+        </el-row>
+      </el-card>
+      <el-card shadow="hover">
+        <div slot="header">
+          <span>娴佺▼璺熻釜</span>
+        </div>
+        <el-row class="row-bg">
+          <flow-design :is-display="true" :process-instance-id="processInstanceId"></flow-design>
+        </el-row>
+      </el-card>
+    </el-form>
+  </basic-container>
+</template>
+
+<script>
+  import {historyFlowList, leaveDetail} from "@/api/work/process";
+  import {completeTask} from "@/api/work/work";
+
+  export default {
+    data() {
+      return {
+        taskId: '',
+        businessId: '',
+        processInstanceId: '',
+        src: '',
+        flowList: [],
+        form: {
+          flow: {
+            assigneeName: '',
+          },
+          startTime: '',
+          endTime: '',
+          reason: '',
+          comment: '',
+        },
+      }
+    },
+    created() {
+      this.init();
+    },
+    beforeRouteUpdate(to, from, next) {
+      // 鍦ㄥ綋鍓嶈矾鐢辨敼鍙橈紝浣嗘槸璇ョ粍浠惰澶嶇敤鏃惰皟鐢�
+      // 涓句緥鏉ヨ锛屽浜庝竴涓甫鏈夊姩鎬佸弬鏁扮殑璺緞 /foo/:id锛屽湪 /foo/1 鍜� /foo/2 涔嬮棿璺宠浆鐨勬椂鍊�
+      // 鐢变簬浼氭覆鏌撳悓鏍风殑 Foo 缁勪欢锛屽洜姝ょ粍浠跺疄渚嬩細琚鐢ㄣ�傝�岃繖涓挬瀛愬氨浼氬湪杩欎釜鎯呭喌涓嬭璋冪敤
+      // 鍙互璁块棶缁勪欢瀹炰緥 `this`
+      if (to.fullPath !== from.fullPath) {
+        next();
+        this.init();
+      }
+    },
+    methods: {
+      init() {
+        this.taskId = this.$route.params.taskId;
+        this.processInstanceId = this.$route.params.processInstanceId;
+        this.businessId = this.$route.params.businessId;
+        historyFlowList(this.processInstanceId).then(res => {
+          const data = res.data;
+          if (data.success) {
+            this.flowList = data.data;
+          }
+        })
+        leaveDetail(this.businessId).then(res => {
+          const data = res.data;
+          if (data.success) {
+            this.form = data.data;
+          }
+        })
+      },
+      handleAgree() {
+        if (!this.form.comment) {
+          this.$message.warning('璇峰厛濉啓鎵瑰鎰忚');
+          return;
+        }
+        const params = {
+          taskId: this.taskId,
+          processInstanceId: this.processInstanceId,
+          flag: 'ok',
+          comment: this.form.comment,
+        };
+        completeTask(params).then(res => {
+          const data = res.data;
+          if (data.success) {
+            this.$message.success(data.msg);
+            this.$router.$avueRouter.closeTag();
+            this.$router.push({path: `/work/start`});
+          } else {
+            this.$message.error(data.msg || '鎻愪氦澶辫触');
+          }
+        })
+      },
+      handleDisagree() {
+        if (!this.form.comment) {
+          this.$message.warning('璇峰厛濉啓鎵瑰鎰忚');
+          return;
+        }
+        const params = {
+          taskId: this.taskId,
+          processInstanceId: this.processInstanceId,
+          comment: this.form.comment,
+        };
+        completeTask(params).then(res => {
+          const data = res.data;
+          if (data.success) {
+            this.$message.success(data.msg);
+            this.$router.$avueRouter.closeTag();
+            this.$router.push({path: `/work/start`});
+          } else {
+            this.$message.error(data.msg || '鎻愪氦澶辫触');
+          }
+        })
+      },
+      handleCancel() {
+        this.$router.$avueRouter.closeTag();
+        this.$router.push({path: `/work/start`});
+      }
+    }
+  }
+</script>
diff --git a/Source/UBCS-WEB/vue.config.js b/Source/UBCS-WEB/vue.config.js
index 09c8cd8..90f5f41 100644
--- a/Source/UBCS-WEB/vue.config.js
+++ b/Source/UBCS-WEB/vue.config.js
@@ -30,7 +30,6 @@
         // target: 'http://192.168.1.51:37000',
         //target: 'http://192.168.1.46: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',
         //target: 'http://192.168.3.7:37000',
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSysIntHeaderDTO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSysIntHeaderDTO.java
new file mode 100644
index 0000000..1dc500e
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSysIntHeaderDTO.java
@@ -0,0 +1,57 @@
+package com.vci.ubcs.code.dto;
+
+
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import lombok.Data;
+
+/**
+ * 绯荤粺闆嗘垚鎺ュ彛鐨勮璇佹暟鎹紶杈撳璞�
+ *
+ * @author xiejun
+ * @date 2023-06-21
+ */
+@Data
+public class DockingSysIntHeaderDTO extends BaseModel {
+
+	/**
+     * 绂佹淇敼杩欎釜鍊�
+     */
+	private static final long serialVersionUID = 4615707117695864945L;
+
+	/**
+	 * SysIntInfoDO 鐨刼id
+	 */
+	private String infoOid;
+
+	/**
+	 * 鍙傛暟key
+	 */
+	private String headerKey;
+
+	/**
+	 * 鍙傛暟value
+	 */
+	private String headerValue;
+
+	/**
+	 * 鏄惁浣跨敤
+	 */
+	private String usedFlag;
+
+
+	/***
+	 * 鏄惁浣跨敤鏄剧ず鏂囨湰
+	 */
+	private String usedFlagText;
+
+	@Override
+	public String toString() {
+		return "DockingSysIntHeaderDTO{" +
+			"infoOid='" + infoOid + '\'' +
+			", headerKey='" + headerKey + '\'' +
+			", headerValue='" + headerValue + '\'' +
+			", usedFlag='" + usedFlag + '\'' +
+			", usedFlagText='" + usedFlagText + '\'' +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSysIntParamDTO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSysIntParamDTO.java
new file mode 100644
index 0000000..c23c50d
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSysIntParamDTO.java
@@ -0,0 +1,57 @@
+package com.vci.ubcs.code.dto;
+
+
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import lombok.Data;
+
+/**
+ * 绯荤粺闆嗘垚鎺ュ彛鐨勮璇佹暟鎹紶杈撳璞�
+ *
+ * @author weidy
+ * @date 2022-04-11
+ */
+@Data
+public class DockingSysIntParamDTO extends BaseModel {
+
+	/**
+     * 绂佹淇敼杩欎釜鍊�
+     */
+	private static final long serialVersionUID = 4615707120661255093L;
+
+	/**
+	 * SysIntInfoDO 鐨刼id
+	 */
+	private String infoOid;
+
+	/**
+	 * 鍙傛暟key
+	 */
+	private String paramkey;
+
+	/**
+	 * 鍙傛暟value
+	 */
+	private String paramvalue;
+
+	/**
+	 * 鏄惁浣跨敤
+	 */
+	private String usedflag;
+
+
+	/***
+	 * 鏄惁浣跨敤鏄剧ず鏂囨湰
+	 */
+	private String usedFlagText;
+
+	@Override
+	public String toString() {
+		return "DockingSysIntParamDTO{" +
+			"infoOid='" + infoOid + '\'' +
+			", paramkey='" + paramkey + '\'' +
+			", paramvalue='" + paramvalue + '\'' +
+			", usedflag='" + usedflag + '\'' +
+			", usedFlagText='" + usedFlagText + '\'' +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSystemConfigDTO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSystemConfigDTO.java
index 5edd5d6..8473859 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSystemConfigDTO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSystemConfigDTO.java
@@ -1,9 +1,10 @@
 package com.vci.ubcs.code.dto;
 
 
-import com.vci.ubcs.code.vo.pagemodel.SysIntHeaderVO;
-import com.vci.ubcs.code.vo.pagemodel.SysIntParamVO;
+import com.vci.ubcs.code.vo.pagemodel.DockingSysIntHeaderVO;
+import com.vci.ubcs.code.vo.pagemodel.DockingSysIntParamVO;
 import com.vci.ubcs.starter.revision.model.BaseModel;
+import lombok.Data;
 
 import java.util.List;
 
@@ -13,6 +14,7 @@
  * @author lihang
  * @date 2022-03-07
  */
+@Data
 public class DockingSystemConfigDTO extends BaseModel {
 
 	/**
@@ -245,381 +247,12 @@
 	/***
 	 * 鍙傛暟淇℃伅瀵硅薄
 	 */
-	private List<SysIntParamVO> sysIntParamVOs;
+	private List<DockingSysIntParamDTO> sysIntParamDTOS;
 	/***
 	 * header淇℃伅瀵硅薄
 	 */
-	private List<SysIntHeaderVO> sysIntHeaderVOs;
-
-	public String getAuthorityOid() {
-		return authorityOid;
-	}
-
-	public void setAuthorityOid(String authorityOid) {
-		this.authorityOid = authorityOid;
-	}
-
-	public String getAuthorityOidName() {
-		return authorityOidName;
-	}
-
-	public void setAuthorityOidName(String authorityOidName) {
-		this.authorityOidName = authorityOidName;
-	}
-
-	public String getAuthorityType() {
-		return authorityType;
-	}
-
-	public void setAuthorityType(String authorityType) {
-		this.authorityType = authorityType;
-	}
-
-	public String getAuthorityTypeText() {
-		return authorityTypeText;
-	}
-
-	public void setAuthorityTypeText(String authorityTypeText) {
-		this.authorityTypeText = authorityTypeText;
-	}
-
-	public String getUserAccount() {
-		return userAccount;
-	}
-
-	public void setUserAccount(String userAccount) {
-		this.userAccount = userAccount;
-	}
-
-	public String getUserCode() {
-		return userCode;
-	}
-
-	public void setUserCode(String userCode) {
-		this.userCode = userCode;
-	}
-
-	public String getToken() {
-		return token;
-	}
-
-	public void setToken(String token) {
-		this.token = token;
-	}
-
-	public String getInterfaceFunction() {
-		return interfaceFunction;
-	}
-
-	public void setInterfaceFunction(String interfaceFunction) {
-		this.interfaceFunction = interfaceFunction;
-	}
-
-	@Override
-	public String getDescription() {
-		return description;
-	}
-
-	@Override
-	public void setDescription(String description) {
-		this.description = description;
-	}
-
-	public String getInterfaceType() {
-		return interfaceType;
-	}
-
-	public void setInterfaceType(String interfaceType) {
-		this.interfaceType = interfaceType;
-	}
-
-	public String getInterfaceTypeText() {
-		return interfaceTypeText;
-	}
-
-	public void setInterfaceTypeText(String interfaceTypeText) {
-		this.interfaceTypeText = interfaceTypeText;
-	}
-
-	public String getParamType() {
-		return paramType;
-	}
-
-	public void setParamType(String paramType) {
-		this.paramType = paramType;
-	}
-
-	public String getParamTypeText() {
-		return paramTypeText;
-	}
-
-	public void setParamTypeText(String paramTypeText) {
-		this.paramTypeText = paramTypeText;
-	}
-
-	public String getRequestMethod() {
-		return requestMethod;
-	}
-
-	public void setRequestMethod(String requestMethod) {
-		this.requestMethod = requestMethod;
-	}
-
-	public String getRequestMethodText() {
-		return requestMethodText;
-	}
-
-	public void setRequestMethodText(String requestMethodText) {
-		this.requestMethodText = requestMethodText;
-	}
-
-	public String getClassifyOid() {
-		return classifyOid;
-	}
-
-	public void setClassifyOid(String classifyOid) {
-		this.classifyOid = classifyOid;
-	}
-
-	public String getUsedFlag() {
-		return usedFlag;
-	}
-
-	public void setUsedFlag(String usedFlag) {
-		this.usedFlag = usedFlag;
-	}
-
-	public String getSysBaseOid() {
-		return sysBaseOid;
-	}
-
-	public void setSysBaseOid(String sysBaseOid) {
-		this.sysBaseOid = sysBaseOid;
-	}
-
-	public String getSysBaseId() {
-		return sysBaseId;
-	}
-
-	public void setSysBaseId(String sysBaseId) {
-		this.sysBaseId = sysBaseId;
-	}
-
-	public String getSysBaseName() {
-		return sysBaseName;
-	}
-
-	public void setSysBaseName(String sysBaseName) {
-		this.sysBaseName = sysBaseName;
-	}
-
-	public String getRequestUrl() {
-		return requestUrl;
-	}
-
-	public void setRequestUrl(String requestUrl) {
-		this.requestUrl = requestUrl;
-	}
-
-	public String getReturnType() {
-		return returnType;
-	}
-
-	public void setReturnType(String returnType) {
-		this.returnType = returnType;
-	}
-
-	public String getReturnTypeText() {
-		return returnTypeText;
-	}
-
-	public void setReturnTypeText(String returnTypeText) {
-		this.returnTypeText = returnTypeText;
-	}
-
-	public String getSourceSystemOid() {
-		return sourceSystemOid;
-	}
-
-	public void setSourceSystemOid(String sourceSystemOid) {
-		this.sourceSystemOid = sourceSystemOid;
-	}
-
-	public String getSourceSysName() {
-		return sourceSysName;
-	}
-
-	public void setSourceSysName(String sourceSysName) {
-		this.sourceSysName = sourceSysName;
-	}
-
-	public String getSourceSysId() {
-		return sourceSysId;
-	}
-
-	public void setSourceSysId(String sourceSysId) {
-		this.sourceSysId = sourceSysId;
-	}
-
-	public String getSourceSystemOidName() {
-		return sourceSystemOidName;
-	}
-
-	public void setSourceSystemOidName(String sourceSystemOidName) {
-		this.sourceSystemOidName = sourceSystemOidName;
-	}
-
-	public String getTargetSystemOid() {
-		return targetSystemOid;
-	}
-
-	public void setTargetSystemOid(String targetSystemOid) {
-		this.targetSystemOid = targetSystemOid;
-	}
-
-	public String getTargetSysName() {
-		return targetSysName;
-	}
-
-	public void setTargetSysName(String targetSysName) {
-		this.targetSysName = targetSysName;
-	}
-
-	public String getTargetSysId() {
-		return targetSysId;
-	}
-
-	public void setTargetSysId(String targetSysId) {
-		this.targetSysId = targetSysId;
-	}
-
-	public String getTargetSystemOidName() {
-		return targetSystemOidName;
-	}
-
-	public void setTargetSystemOidName(String targetSystemOidName) {
-		this.targetSystemOidName = targetSystemOidName;
-	}
-
-	public String getClassPath() {
-		return classPath;
-	}
-
-	public void setClassPath(String classPath) {
-		this.classPath = classPath;
-	}
-
-	public String getDataFlowType() {
-		return dataFlowType;
-	}
-
-	public void setDataFlowType(String dataFlowType) {
-		this.dataFlowType = dataFlowType;
-	}
-
-	public String getDataFlowTypeText() {
-		return dataFlowTypeText;
-	}
-
-	public void setDataFlowTypeText(String dataFlowTypeText) {
-		this.dataFlowTypeText = dataFlowTypeText;
-	}
-
-	public String getBtmTypeId() {
-		return btmTypeId;
-	}
-
-	public void setBtmTypeId(String btmTypeId) {
-		this.btmTypeId = btmTypeId;
-	}
-
-	public String getBtmTypeName() {
-		return btmTypeName;
-	}
-
-	public void setBtmTypeName(String btmTypeName) {
-		this.btmTypeName = btmTypeName;
-	}
-
-	public String getNamespace() {
-		return namespace;
-	}
-
-	public void setNamespace(String namespace) {
-		this.namespace = namespace;
-	}
-
-	public String getSoapAction() {
-		return soapAction;
-	}
-
-	public void setSoapAction(String soapAction) {
-		this.soapAction = soapAction;
-	}
-
-	public String getCxfAxis() {
-		return cxfAxis;
-	}
-
-	public void setCxfAxis(String cxfAxis) {
-		this.cxfAxis = cxfAxis;
-	}
-
-	public String getTargetName() {
-		return targetName;
-	}
-
-	public void setTargetName(String targetName) {
-		this.targetName = targetName;
-	}
-
-	public String getPushType() {
-		return pushType;
-	}
-
-	public void setPushType(String pushType) {
-		this.pushType = pushType;
-	}
-
-	public String getPushTypeText() {
-		return pushTypeText;
-	}
-
-	public void setPushTypeText(String pushTypeText) {
-		this.pushTypeText = pushTypeText;
-	}
-
-	public String getClassifyId() {
-		return classifyId;
-	}
-
-	public void setClassifyId(String classifyId) {
-		this.classifyId = classifyId;
-	}
-
-	public String getClassifyName() {
-		return classifyName;
-	}
-
-	public void setClassifyName(String classifyName) {
-		this.classifyName = classifyName;
-	}
-
-	public List<SysIntParamVO> getSysIntParamVOs() {
-		return sysIntParamVOs;
-	}
-
-	public void setSysIntParamVOs(List<SysIntParamVO> sysIntParamVOs) {
-		this.sysIntParamVOs = sysIntParamVOs;
-	}
-
-	public List<SysIntHeaderVO> getSysIntHeaderVOs() {
-		return sysIntHeaderVOs;
-	}
+	private List<DockingSysIntHeaderDTO> sysIntHeaderDTOS;
 
-	public void setSysIntHeaderVOs(List<SysIntHeaderVO> sysIntHeaderVOs) {
-		this.sysIntHeaderVOs = sysIntHeaderVOs;
-	}
 
 	@Override
 	public String toString() {
@@ -668,8 +301,8 @@
 			", pushTypeText='" + pushTypeText + '\'' +
 			", classifyId='" + classifyId + '\'' +
 			", classifyName='" + classifyName + '\'' +
-			", sysIntParamVOs=" + sysIntParamVOs +
-			", sysIntHeaderVOs=" + sysIntHeaderVOs +
+			", sysIntParamDTOS=" + sysIntParamDTOS +
+			", sysIntHeaderDTOS=" + sysIntHeaderDTOS +
 			'}';
 	}
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/SysIntHeaderDTO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/SysIntHeaderDTO.java
deleted file mode 100644
index 6910120..0000000
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/SysIntHeaderDTO.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package com.vci.ubcs.code.dto;
-
-
-import com.vci.ubcs.starter.revision.model.BaseModel;
-
-/**
- * 绯荤粺闆嗘垚鎺ュ彛鐨勮璇佹暟鎹紶杈撳璞�
- *
- * @author weidy
- * @date 2022-04-11
- */
-public class SysIntHeaderDTO extends BaseModel {
-
-	/**
-     * 绂佹淇敼杩欎釜鍊�
-     */
-	private static final long serialVersionUID = 4615707117695864945L;
-
-	/**
-	 * SysIntInfoDO 鐨刼id
-	 */
-	private String infoOid;
-
-	/**
-	 * 鍙傛暟key
-	 */
-	private String headerkey;
-
-	/**
-	 * 鍙傛暟value
-	 */
-	private String headeralue;
-
-	/**
-	 * 鏄惁浣跨敤
-	 */
-	private String usedflag;
-
-	public String getInfoOid() {
-		return infoOid;
-	}
-
-	public void setInfoOid(String infoOid) {
-		this.infoOid = infoOid;
-	}
-
-	public String getHeaderkey() {
-		return headerkey;
-	}
-
-	public void setHeaderkey(String headerkey) {
-		this.headerkey = headerkey;
-	}
-
-	public String getHeaderalue() {
-		return headeralue;
-	}
-
-	public void setHeaderalue(String headeralue) {
-		this.headeralue = headeralue;
-	}
-
-	public String getUsedflag() {
-		return usedflag;
-	}
-
-	public void setUsedflag(String usedflag) {
-		this.usedflag = usedflag;
-	}
-
-	@Override
-	public String toString() {
-		return "SysIntHeaderDO{" +
-				"infoOid='" + infoOid + '\'' +
-				", headerkey='" + headerkey + '\'' +
-				", headeralue='" + headeralue + '\'' +
-				", usedflag='" + usedflag + '\'' +
-				'}';
-	}
-}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/SysIntInfoBseDTO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/SysIntInfoBseDTO.java
deleted file mode 100644
index c5cc1cb..0000000
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/SysIntInfoBseDTO.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package com.vci.ubcs.code.dto;
-
-import com.vci.ubcs.starter.revision.model.BaseModel;
-
-import java.util.List;
-
-public class SysIntInfoBseDTO extends BaseModel {
-    private DockingSystemConfigDTO sysIntInfoDTO;
-
-    private List<SysIntParamDTO> sysIntParamDTO;
-
-    private List<SysIntHeaderDTO> sysIntHeaderDTOS;
-
-    public DockingSystemConfigDTO getSysIntInfoDTO() {
-        return sysIntInfoDTO;
-    }
-
-    public void setSysIntInfoDTO(DockingSystemConfigDTO sysIntInfoDTO) {
-        this.sysIntInfoDTO = sysIntInfoDTO;
-    }
-
-    public List<SysIntParamDTO> getSysIntParamDTO() {
-        return sysIntParamDTO;
-    }
-
-    public void setSysIntParamDTO(List<SysIntParamDTO> sysIntParamDTO) {
-        this.sysIntParamDTO = sysIntParamDTO;
-    }
-
-    public List<SysIntHeaderDTO> getSysIntHeaderDTOS() {
-        return sysIntHeaderDTOS;
-    }
-
-    public void setSysIntHeaderDTOS(List<SysIntHeaderDTO> sysIntHeaderDTOS) {
-        this.sysIntHeaderDTOS = sysIntHeaderDTOS;
-    }
-
-    @Override
-    public String toString() {
-        return "SysIntInfoBseDTO{" +
-                "sysIntInfoDTO=" + sysIntInfoDTO +
-                ", sysIntParamDTO=" + sysIntParamDTO +
-                ", sysIntHeaderDTOS=" + sysIntHeaderDTOS +
-                '}';
-    }
-}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/SysIntParamDTO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/SysIntParamDTO.java
deleted file mode 100644
index 8317e0a..0000000
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/SysIntParamDTO.java
+++ /dev/null
@@ -1,81 +0,0 @@
-package com.vci.ubcs.code.dto;
-
-
-import com.vci.ubcs.starter.revision.model.BaseModel;
-
-/**
- * 绯荤粺闆嗘垚鎺ュ彛鐨勮璇佹暟鎹紶杈撳璞�
- *
- * @author weidy
- * @date 2022-04-11
- */
-public class SysIntParamDTO extends BaseModel {
-
-	/**
-     * 绂佹淇敼杩欎釜鍊�
-     */
-	private static final long serialVersionUID = 4615707120661255093L;
-
-	/**
-	 * SysIntInfoDO 鐨刼id
-	 */
-	private String infoOid;
-
-	/**
-	 * 鍙傛暟key
-	 */
-	private String paramkey;
-
-	/**
-	 * 鍙傛暟value
-	 */
-	private String paramvalue;
-
-	/**
-	 * 鏄惁浣跨敤
-	 */
-	private String usedflag;
-
-
-	public String getInfoOid() {
-		return infoOid;
-	}
-
-	public void setInfoOid(String infoOid) {
-		this.infoOid = infoOid;
-	}
-
-	public String getParamkey() {
-		return paramkey;
-	}
-
-	public void setParamkey(String paramkey) {
-		this.paramkey = paramkey;
-	}
-
-	public String getParamvalue() {
-		return paramvalue;
-	}
-
-	public void setParamvalue(String paramvalue) {
-		this.paramvalue = paramvalue;
-	}
-
-	public String getUsedflag() {
-		return usedflag;
-	}
-
-	public void setUsedflag(String usedflag) {
-		this.usedflag = usedflag;
-	}
-
-	@Override
-	public String toString() {
-		return "SysIntParamDO{" +
-				"infoOid='" + infoOid + '\'' +
-				", paramkey='" + paramkey + '\'' +
-				", paramvalue='" + paramvalue + '\'' +
-				", usedflag='" + usedflag + '\'' +
-				'}';
-	}
-}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntHeader.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntHeader.java
new file mode 100644
index 0000000..d94e7fc
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntHeader.java
@@ -0,0 +1,60 @@
+package com.vci.ubcs.code.entity;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.vci.ubcs.starter.constant.CodeTableNameConstant;
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/****
+ * 鎺ュ彛澶村崗璁�
+ */
+@Data
+@TableName(CodeTableNameConstant.PL_CODE_SYSINTPAREMTER)
+@ApiModel(value = "DockingSysIntHeader", description = "闆嗘垚鎺ュ彛-鎺ュ彛澶村崗璁璞�")
+@EqualsAndHashCode(callSuper = true)
+public class DockingSysIntHeader extends BaseModel {
+
+	/**
+	 * 绂佹淇敼杩欎釜鍊�
+	 */
+	private static final long serialVersionUID = 4615707117938037102L;
+
+	/**
+	 * SysIntInfoDO 鐨刼id
+	 */
+	@ApiModelProperty(value = "閰嶇疆涓婚敭")
+
+	private String infoOid;
+
+	/**
+	 * 鍙傛暟key
+	 */
+	@ApiModelProperty(value = "閰嶇疆涓婚敭")
+	private String headerKey;
+
+	/**
+	 * 鍙傛暟value
+	 */
+	@ApiModelProperty(value = "閰嶇疆涓婚敭")
+	@TableField(value = "headeralue")
+	private String headerValue;
+
+	/**
+	 * 鏄惁浣跨敤
+	 */
+	@ApiModelProperty(value = "閰嶇疆涓婚敭")
+	private String usedFlag;
+
+	/**
+	 * 鏄惁浣跨敤
+	 */
+	@ApiModelProperty(value = "閰嶇疆涓婚敭")
+	@TableField(exist = true)
+	private String usedFlagText;
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntParam.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntParam.java
new file mode 100644
index 0000000..9b8d9b8
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntParam.java
@@ -0,0 +1,66 @@
+package com.vci.ubcs.code.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.vci.ubcs.starter.constant.CodeTableNameConstant;
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 绯荤粺闆嗘垚鎺ュ彛鐨勫弬鏁板璞�
+ *
+ * @author weidy
+ * @date 2022-04-11
+ */
+@Data
+@TableName(CodeTableNameConstant.PL_CODE_SYSINTPAREMTER)
+@ApiModel(value = "DockingSysIntParam", description = "闆嗘垚鎺ュ彛-鎺ュ彛鐨勫弬鏁板璞�")
+@EqualsAndHashCode(callSuper = true)
+public class DockingSysIntParam  extends BaseModel {
+
+	/**
+	 * 绂佹淇敼杩欎釜鍊�
+	 */
+	private static final long serialVersionUID = 4615707118871819648L;
+
+	/**
+	 * SysIntInfoDO 鐨刼id
+	 */
+	@ApiModelProperty(value = "鎺ュ彛閰嶇疆涓婚敭")
+	private String infoOid;
+
+	/**
+	 * 鍙傛暟key
+	 */
+	@ApiModelProperty(value = "鍙傛暟key")
+	private String paramKey;
+
+	/**
+	 * 鍙傛暟value
+	 */
+	@ApiModelProperty(value = "鍙傛暟value")
+	private String paramValue;
+	/**
+	 * 鏄惁浣跨敤
+	 */
+	@ApiModelProperty(value = "鏄惁浣跨敤")
+	private String usedFlag;
+	/**
+	 * 鏄惁浣跨敤鏄剧ず鍊�
+	 */
+	@ApiModelProperty(value = "鏄惁浣跨敤鏄剧ず鍊�")
+	@TableField(exist = true)
+	private String usedFlagText;
+
+	@Override
+	public String toString() {
+		return "DockingSysIntParamVO{" +
+			"infoOid='" + infoOid + '\'' +
+			", paramKey='" + paramKey + '\'' +
+			", paramValue='" + paramValue + '\'' +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java
index 800ffdd..c18ddf3 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java
@@ -2,16 +2,12 @@
 
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
-import com.vci.ubcs.code.vo.pagemodel.SysIntHeaderVO;
-import com.vci.ubcs.code.vo.pagemodel.SysIntParamVO;
 import com.vci.ubcs.starter.constant.CodeTableNameConstant;
 import com.vci.ubcs.starter.revision.model.BaseModel;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
-
-import java.util.List;
 
 /***
  * 闆嗘垚鎺ュ彛-闆嗘垚鎺ュ彛绠$悊瀵硅薄
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSysIntHeaderVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSysIntHeaderVO.java
new file mode 100644
index 0000000..a0ecf6d
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSysIntHeaderVO.java
@@ -0,0 +1,55 @@
+package com.vci.ubcs.code.vo.pagemodel;
+
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import lombok.Data;
+
+/**
+ * 绯荤粺闆嗘垚鎺ュ彛鐨勮璇佹樉绀哄璞�
+ *
+ * @author weidy
+ * @date 2022-04-11
+ */
+@Data
+public class DockingSysIntHeaderVO extends BaseModel {
+
+	/**
+     * 绂佹淇敼杩欎釜鍊�
+     */
+	private static final long serialVersionUID = 4615707117938037102L;
+
+	/**
+	 * SysIntInfoDO 鐨刼id
+	 */
+	private String infoOid;
+
+	/**
+	 * 鍙傛暟key
+	 */
+	private String headerKey;
+
+	/**
+	 * 鍙傛暟value
+	 */
+	private String headerValue;
+
+	/**
+	 * 鏄惁浣跨敤
+	 */
+	private String usedFlag;
+
+	/***
+	 * 鏄惁浣跨敤鏄剧ず鏂囨湰
+	 */
+	private String usedFlagText;
+
+	@Override
+	public String toString() {
+		return "DockingSysIntHeaderVO{" +
+			"infoOid='" + infoOid + '\'' +
+			", headerKey='" + headerKey + '\'' +
+			", headerValue='" + headerValue + '\'' +
+			", usedFlag='" + usedFlag + '\'' +
+			", usedFlagText='" + usedFlagText + '\'' +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSysIntParamVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSysIntParamVO.java
new file mode 100644
index 0000000..576d9df
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSysIntParamVO.java
@@ -0,0 +1,54 @@
+package com.vci.ubcs.code.vo.pagemodel;
+
+
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import lombok.Data;
+
+/**
+ * 绯荤粺闆嗘垚鎺ュ彛鐨勮璇佹樉绀哄璞�
+ *
+ * @author xiejun
+ * @date 2023-06-21
+ */
+@Data
+public class DockingSysIntParamVO extends BaseModel {
+
+	/**
+     * 绂佹淇敼杩欎釜鍊�
+     */
+	private static final long serialVersionUID = 4615707118871819648L;
+
+	/**
+	 * SysIntInfoDO 鐨刼id
+	 */
+	private String infoOid;
+
+	/**
+	 * 鍙傛暟key
+	 */
+	private String paramKey;
+
+	/**
+	 * 鍙傛暟value
+	 */
+	private String paramValue;
+	/***
+	 * 鏄惁浣跨敤
+	 */
+	private String usedFlag;
+	/***
+	 * 鏄惁浣跨敤鏄剧ず鏂囨湰
+	 */
+	private String usedFlagText;
+
+	@Override
+	public String toString() {
+		return "DockingSysIntParamVO{" +
+			"infoOid='" + infoOid + '\'' +
+			", paramKey='" + paramKey + '\'' +
+			", paramValue='" + paramValue + '\'' +
+			", usedFlag='" + usedFlag + '\'' +
+			", usedFlagText='" + usedFlagText + '\'' +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSystemConfigVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSystemConfigVO.java
index 8f74d87..de9096b 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSystemConfigVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSystemConfigVO.java
@@ -241,11 +241,11 @@
 	/***
 	 * 鍙傛暟淇℃伅瀵硅薄
 	 */
-	private List<SysIntParamVO> sysIntParamVOs;
+	private List<DockingSysIntParamVO> sysIntParamVOs;
 	/***
 	 * header淇℃伅瀵硅薄
 	 */
-	private List<SysIntHeaderVO> sysIntHeaderVOs;
+	private List<DockingSysIntHeaderVO> sysIntHeaderVOs;
 
 
 	public String getAuthorityOid() {
@@ -602,19 +602,19 @@
 		this.classifyName = classifyName;
 	}
 
-	public List<SysIntParamVO> getSysIntParamVOs() {
+	public List<DockingSysIntParamVO> getSysIntParamVOs() {
 		return sysIntParamVOs;
 	}
 
-	public void setSysIntParamVOs(List<SysIntParamVO> sysIntParamVOs) {
+	public void setSysIntParamVOs(List<DockingSysIntParamVO> sysIntParamVOs) {
 		this.sysIntParamVOs = sysIntParamVOs;
 	}
 
-	public List<SysIntHeaderVO> getSysIntHeaderVOs() {
+	public List<DockingSysIntHeaderVO> getSysIntHeaderVOs() {
 		return sysIntHeaderVOs;
 	}
 
-	public void setSysIntHeaderVOs(List<SysIntHeaderVO> sysIntHeaderVOs) {
+	public void setSysIntHeaderVOs(List<DockingSysIntHeaderVO> sysIntHeaderVOs) {
 		this.sysIntHeaderVOs = sysIntHeaderVOs;
 	}
 
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SysIntHeaderVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SysIntHeaderVO.java
deleted file mode 100644
index 8825e59..0000000
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SysIntHeaderVO.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package com.vci.ubcs.code.vo.pagemodel;
-
-import com.vci.ubcs.starter.revision.model.BaseModel;
-
-/**
- * 绯荤粺闆嗘垚鎺ュ彛鐨勮璇佹樉绀哄璞�
- *
- * @author weidy
- * @date 2022-04-11
- */
-public class SysIntHeaderVO extends BaseModel {
-
-	/**
-     * 绂佹淇敼杩欎釜鍊�
-     */
-	private static final long serialVersionUID = 4615707117938037102L;
-
-	/**
-	 * SysIntInfoDO 鐨刼id
-	 */
-	private String infoOid;
-
-	/**
-	 * 鍙傛暟key
-	 */
-	private String headerkey;
-
-	/**
-	 * 鍙傛暟value
-	 */
-	private String headeralue;
-
-	/**
-	 * 鏄惁浣跨敤
-	 */
-	private String usedflag;
-
-
-	public String getInfoOid() {
-		return infoOid;
-	}
-
-	public void setInfoOid(String infoOid) {
-		this.infoOid = infoOid;
-	}
-
-	public String getHeaderkey() {
-		return headerkey;
-	}
-
-	public void setHeaderkey(String headerkey) {
-		this.headerkey = headerkey;
-	}
-
-	public String getHeaderalue() {
-		return headeralue;
-	}
-
-	public void setHeaderalue(String headeralue) {
-		this.headeralue = headeralue;
-	}
-
-	public String getUsedflag() {
-		return usedflag;
-	}
-
-	public void setUsedflag(String usedflag) {
-		this.usedflag = usedflag;
-	}
-
-	@Override
-	public String toString() {
-		return "SysIntHeaderDO{" +
-				"infoOid='" + infoOid + '\'' +
-				", headerkey='" + headerkey + '\'' +
-				", headeralue='" + headeralue + '\'' +
-				", usedflag='" + usedflag + '\'' +
-				'}';
-	}
-}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SysIntParamVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SysIntParamVO.java
deleted file mode 100644
index 9ce2ae2..0000000
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SysIntParamVO.java
+++ /dev/null
@@ -1,81 +0,0 @@
-package com.vci.ubcs.code.vo.pagemodel;
-
-
-import com.vci.ubcs.starter.revision.model.BaseModel;
-
-/**
- * 绯荤粺闆嗘垚鎺ュ彛鐨勮璇佹樉绀哄璞�
- *
- * @author weidy
- * @date 2022-04-11
- */
-public class SysIntParamVO extends BaseModel {
-
-	/**
-     * 绂佹淇敼杩欎釜鍊�
-     */
-	private static final long serialVersionUID = 4615707118871819648L;
-
-	/**
-	 * SysIntInfoDO 鐨刼id
-	 */
-	private String infoOid;
-
-	/**
-	 * 鍙傛暟key
-	 */
-	private String paramkey;
-
-	/**
-	 * 鍙傛暟value
-	 */
-	private String paramvalue;
-
-	/**
-	 * 鏄惁浣跨敤
-	 */
-	private String usedflag;
-
-
-	public String getInfoOid() {
-		return infoOid;
-	}
-
-	public void setInfoOid(String infoOid) {
-		this.infoOid = infoOid;
-	}
-
-	public String getParamkey() {
-		return paramkey;
-	}
-
-	public void setParamkey(String paramkey) {
-		this.paramkey = paramkey;
-	}
-
-	public String getParamvalue() {
-		return paramvalue;
-	}
-
-	public void setParamvalue(String paramvalue) {
-		this.paramvalue = paramvalue;
-	}
-
-	public String getUsedflag() {
-		return usedflag;
-	}
-
-	public void setUsedflag(String usedflag) {
-		this.usedflag = usedflag;
-	}
-
-	@Override
-	public String toString() {
-		return "SysIntParamDO{" +
-				"infoOid='" + infoOid + '\'' +
-				", paramkey='" + paramkey + '\'' +
-				", paramvalue='" + paramvalue + '\'' +
-				", usedflag='" + usedflag + '\'' +
-				'}';
-	}
-}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/constant/CodeTableNameConstant.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/constant/CodeTableNameConstant.java
index 7637bda..84b8d0f 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/constant/CodeTableNameConstant.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/constant/CodeTableNameConstant.java
@@ -122,4 +122,10 @@
 	 */
 	public static final String PL_CODE_SYSINTINFO = "PL_CODE_SYSINTINFO";
 
+	/**
+	 * 闆嗘垚鎺ュ彛-闆嗘垚鎺ュ彛绠$悊瀵硅薄
+	 * platformbtm_sysintparemter
+	 */
+	public static final String PL_CODE_SYSINTPAREMTER = "PL_CODE_SYSINTPAREMTER";
+
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java
index e3e0864..0ddb3ad 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import com.vci.ubcs.code.dto.DockingSystemConfigDTO;
 import com.vci.ubcs.code.dto.DockingSystemDTO;
 import com.vci.ubcs.code.entity.CodeRule;
 import com.vci.ubcs.code.entity.DockingSystem;
@@ -51,7 +52,7 @@
 	 * @param dockingSystem 鍩虹鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑
 	 *@return 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭樉绀哄璞″垪琛�
 	 */
-	@GetMapping("/gridSysIntBase")
+	@GetMapping("/gridDockingSystem")
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "鍒嗛〉", notes = "dockingSystem")
 	public R<IPage<DockingSystemVO>> page(DockingSystem dockingSystem, Query query) {
@@ -64,8 +65,8 @@
 	 * @param dockingSystemDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞�
 	 * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
 	 */
-	@PostMapping( "/addSave")
-	public  R<DockingSystemVO> addSave(@RequestBody DockingSystemDTO dockingSystemDTO){
+	@PostMapping( "/addSaveDockingSystem")
+	public  R<DockingSystemVO> addSaveDockingSystem(@RequestBody DockingSystemDTO dockingSystemDTO){
 		boolean res= dockingSystemService.addSave(dockingSystemDTO);
 		return  R.status(res);
 	}
@@ -76,8 +77,8 @@
 	 * @param dockingSystemDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞�
 	 * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
 	 */
-	@PutMapping("/editSave")
-	public R<DockingSystemVO> editSave(@RequestBody DockingSystemDTO dockingSystemDTO){
+	@PutMapping("/editSaveDockingSystem")
+	public R<DockingSystemVO> editSaveDockingSystem(@RequestBody DockingSystemDTO dockingSystemDTO){
 		DockingSystemVO dockingSystemVO = dockingSystemService.editSave(dockingSystemDTO);
 		return R.data(dockingSystemVO);
 	}
@@ -102,12 +103,26 @@
 	 * @param DockingSystemConfig 鍩虹鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑
 	 * @return 绯荤粺闆嗘垚鍩虹淇℃伅鏄剧ず瀵硅薄鍒楄〃
 	 */
-	@GetMapping("/gridSysIntInfo")
+	@GetMapping("/gridSystemConfig")
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "鍒嗛〉", notes = "DockingSystemConfig")
-	public R<IPage<DockingSystemConfigVO>> gridSysIntInfo(DockingSystemConfig DockingSystemConfig, Query query){
+	public R<IPage<DockingSystemConfigVO>> gridSystemConfig(DockingSystemConfig DockingSystemConfig, Query query){
 		IPage<DockingSystemConfig> pages = dockingSystemConfigService.page(Condition.getPage(query), Condition.getQueryWrapper(DockingSystemConfig));
 		return R.data(DockingSystemConfigWrapper.build().pageVO(pages));
 	}
 
+	/**
+	 * 澧炲姞 绯荤粺闆嗘垚鍩虹淇℃伅
+	 * @param systemConfigDTO 绯荤粺闆嗘垚鍩虹淇℃伅鏁版嵁浼犺緭瀵硅薄
+	 * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
+	 */
+	@PostMapping( "/addSaveSystemConfig")
+	public R addSaveSystemConfig(@RequestBody DockingSystemConfigDTO systemConfigDTO){
+		try {
+			boolean res =  dockingSystemConfigService.addSave(systemConfigDTO);
+			return R.success("淇濆瓨鎴愬姛!");
+		}catch (Throwable e){
+			return R.fail("淇濆瓨澶辫触!");
+		}
+	}
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingSysIntHeaderMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingSysIntHeaderMapper.java
new file mode 100644
index 0000000..e3089c7
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingSysIntHeaderMapper.java
@@ -0,0 +1,7 @@
+package com.vci.ubcs.code.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.vci.ubcs.code.entity.DockingSysIntHeader;
+
+public interface DockingSysIntHeaderMapper extends BaseMapper<DockingSysIntHeader> {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingSysIntParamMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingSysIntParamMapper.java
new file mode 100644
index 0000000..c489801
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingSysIntParamMapper.java
@@ -0,0 +1,7 @@
+package com.vci.ubcs.code.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.vci.ubcs.code.entity.DockingSysIntParam;
+
+public interface DockingSysIntParamMapper extends BaseMapper<DockingSysIntParam> {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSysIntHeaderService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSysIntHeaderService.java
new file mode 100644
index 0000000..a781bf7
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSysIntHeaderService.java
@@ -0,0 +1,7 @@
+package com.vci.ubcs.code.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.vci.ubcs.code.entity.DockingSysIntHeader;
+
+public interface IDockingSysIntHeaderService extends IService<DockingSysIntHeader> {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSysIntParamService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSysIntParamService.java
new file mode 100644
index 0000000..7a22834
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSysIntParamService.java
@@ -0,0 +1,8 @@
+package com.vci.ubcs.code.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.vci.ubcs.code.entity.DockingSysIntParam;
+
+public interface IDockingSysIntParamService extends IService<DockingSysIntParam> {
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java
index 7a208c3..373ccab 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java
@@ -1,8 +1,9 @@
 package com.vci.ubcs.code.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.vci.ubcs.code.entity.DockingSystem;
+import com.vci.ubcs.code.dto.DockingSystemConfigDTO;
 import com.vci.ubcs.code.entity.DockingSystemConfig;
+import com.vci.ubcs.code.vo.pagemodel.DockingSystemVO;
 
 /***
  * 绯荤粺鎺ュ彛绠$悊-鎺ュ彛閰嶇疆鏈嶅姟
@@ -10,4 +11,20 @@
  * @date 2023-06-01
  */
 public interface IDockingSystemConfigService extends IService<DockingSystemConfig> {
+
+	/**
+	 * 澧炲姞 绯荤粺闆嗘垚鐨勬帴鍙g鐞嗕俊鎭�
+	 * @param dockingSystemConfigDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞�
+	 * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
+	 */
+	public boolean addSave(DockingSystemConfigDTO dockingSystemConfigDTO);
+	/**
+	 * 淇敼 绯荤粺闆嗘垚鐨勬帴鍙g鐞嗕俊鎭�
+	 * @param dockingSystemConfigDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞�
+	 * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
+	 */
+	DockingSystemVO editSave(DockingSystemConfigDTO dockingSystemConfigDTO);
+
+
+	boolean deleteDataById(String oids);
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java
index a3f53b6..c17b3a8 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java
@@ -1,10 +1,18 @@
 package com.vci.ubcs.code.service.impl;
 
 
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.vci.ubcs.code.entity.DockingSystem;
 import com.vci.ubcs.code.service.ICodeDuckingSyncService;
+import com.vci.ubcs.code.service.IDockingSystemService;
 import lombok.extern.slf4j.Slf4j;
 import org.springblade.core.tool.api.R;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import javax.annotation.Resource;
+import java.util.*;
+import java.util.stream.Collectors;
 
 
 /*
@@ -17,9 +25,16 @@
 @Slf4j
 public class CodeDuckingSyncServiceImpl implements ICodeDuckingSyncService {
 
+	@Resource
+	private  IDockingSystemService dockingSystemService;
+
 
 	@Override
 	public void DockingDataSyncScheduing() {
+
+// insertCache2();
+		initPushDataTaks(1);
+		//sendpushDataForService();
 
 	}
 
@@ -32,5 +47,122 @@
 	public R sendData(String oids) {
 		return null;
 	}
+
+
+	/***
+	 * 鏌ヨredis涓暟鎹紝瀵规瘮鍚庢彃鍏ockingtask
+	 * @param type
+	 */
+	private void initPushDataTaks(int type){
+//		//initSysadmin();
+//		//sysintinfo鏌ヨ瑕佹帹閫佺殑涓婚搴撳拰鐩稿叧绯荤粺淇℃伅
+//		Map<String, String> conditionMap = new HashMap<>();
+//		conditionMap.put("usedflag","true");
+//		conditionMap.put("pushType",type==2?"2":"1") ;//2鏄唬琛ㄥ垎绫绘帹閫侊紝1鏄唬琛ㄦ暟鎹帹閫�
+//
+//		Wrappers wrappers=new Wrappers();
+//
+//		List<DockingSystem> sysIntInfoVOList = dockingSystemService.list(Wrappers.query().lambda().eq());
+//		if(CollectionUtils.isEmpty(sysIntInfoVOList)){
+//			String title=type==2?"鍒嗙被鎺ㄩ��":"鏁版嵁鎺ㄩ��";
+//			log.info("info->鎵�鏈夐泦鎴愮郴缁燂紝鏈煡璇㈠埌鐩稿叧鐨勩��"+title+"銆戠殑鎺ュ彛閰嶇疆淇℃伅锛岄厤缃�");
+//			return;
+//		}
+//		Map<String ,List<DockingSystem>> sysIntInfoDOMap = new HashMap<String ,List<DockingSystem>>();//key=classifyoid,value=list<map>
+//		for (SysIntInfoDO sysIntInfoVOi:sysIntInfoVOList){
+//			List<SysIntInfoDO> SysIntInfoVOListi = sysIntInfoDOMap.get(sysIntInfoVOi.getClassifyoid());
+//			if(SysIntInfoVOListi==null){
+//				SysIntInfoVOListi = new ArrayList<SysIntInfoDO>();
+//			}
+//			SysIntInfoVOListi.add(sysIntInfoVOi);
+//			sysIntInfoDOMap.put(sysIntInfoVOi.getClassifyoid(),SysIntInfoVOListi);
+//		}
+//		//鏍规嵁绫诲瀷鍘绘煡璇㈤渶瑕侀泦鎴愮殑鍒嗙被鎴栬�呮暟鎹�
+//		VciQueryWrapperForDO queryWrapperForDO = new VciQueryWrapperForDO(DockingDataDO.class);
+//		queryWrapperForDO.addQueryMap("sendflag","false");
+//		if(type==2){
+//			queryWrapperForDO.addQueryMap("btmTypeId",DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT));
+//		}else {
+//			queryWrapperForDO.addQueryMap("btmTypeId", QueryOptionConstant.NOTIN + "(" + VciBaseUtil.toInSql(DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT)) + ")");
+//		}
+//		List<DockingDataDO> dataList = dockingDataDaoI.selectByWrapper(queryWrapperForDO);
+//
+//		for (DockingDataDO mapi:dataList){
+//			WebUtil.setPersistence(false);
+//			BatchCBO batchCBO = new BatchCBO();
+//			String dataoid = mapi.getOid();//data瀵硅薄鐨刼id
+//			String classifyoid = mapi.getClassifyoid();
+//			String id = mapi.getId();
+//			String uniquecode = mapi.getUniquecode();
+//			String btmid = mapi.getBtmid();
+//			String btmoid = mapi.getBtmoid();
+//			String sendtype = mapi.getSendtype();
+//			String classifyid = mapi.getClassifyid();
+//			String classifyname = mapi.getClassifyname();
+//			String curentClassOid=null;
+//			if(type==2){
+//				curentClassOid=btmoid;
+//			}else{
+//				curentClassOid=classifyoid;
+//			}
+//			List<SysIntInfoDO> effectiveSysIntInfoVOs=new ArrayList<>();
+//			//鏍规嵁褰撳墠鏁版嵁鐨刬d锛屾煡璇㈣幏鍙栧摢浜涚郴缁熼渶瑕佸仛闆嗘垚
+//			List<CodeClassifyDO> parentLeveDO= codeClassifyDaoI.selectAllLevelParentByOid(curentClassOid);
+//			if(CollectionUtils.isEmpty(parentLeveDO)){
+//				continue;//璇存槑杩欎釜鍒嗙被琚垹鎺変簡锛屼笉鍋氬鐞�
+//			}
+//			Map<String, CodeClassifyDO> oidCodeclassifyDOMap = parentLeveDO.stream().filter(codeClassifyDO -> codeClassifyDO != null && StringUtils.isNotBlank(codeClassifyDO.getOid())).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getOid(), t -> t));
+//
+//			oidCodeclassifyDOMap.keySet().forEach(oid->{
+//				if(sysIntInfoDOMap.containsKey(oid)){
+//					List<SysIntInfoDO> sysIntInfoDOS= sysIntInfoDOMap.get(oid);
+//					effectiveSysIntInfoVOs.addAll(sysIntInfoDOS);
+//				}
+//			});
+//			//濡傛灉鏍¢獙鐨勭郴缁熸帴鍙d俊鎭笉瀛樺湪锛屽垯鏁版嵁涓嶄笉寰�淇℃伅閲屾帹閫�
+//			if(CollectionUtils.isEmpty(effectiveSysIntInfoVOs)){
+//				continue;
+//			}
+//			List<DockingTaskDO> dockingTaskDO_insert = new ArrayList<DockingTaskDO>();
+//			for (SysIntInfoDO sysIntInfoVOi:effectiveSysIntInfoVOs){
+//				DockingTaskDO dockingTaskDO = new DockingTaskDO();
+//				dockingTaskDO.setOid(redisService.getUUIDEveryDay());
+//				dockingTaskDO.setSendflag(SEND_FLAG_FALSE);
+//				dockingTaskDO.setId(id);//缂栫爜
+//				dockingTaskDO.setUniquecode(uniquecode);
+//				dockingTaskDO.setBtmoid(btmoid);//鏁版嵁oid
+//				dockingTaskDO.setBtmid(btmid);//鏁版嵁涓氬姟绫诲瀷id
+//				dockingTaskDO.setClassifyid(classifyid);//鏁版嵁鍦ㄥ垎绫籭d
+//				dockingTaskDO.setClassifyoid(classifyoid);//鏁版嵁鎵�鍦ㄥ垎绫籵id
+//				dockingTaskDO.setClassifyname(classifyname);//鏁版嵁鎵�鍦ㄥ垎绫诲悕绉�
+//				dockingTaskDO.setSendtype(sendtype);//鏁版嵁鎺ㄩ�佺被鍨�
+//				dockingTaskDO.setDataoid(dataoid);
+//
+//				//intinfo
+//				dockingTaskDO.setSysinfooid(sysIntInfoVOi.getOid());//intinfo鐨刼id
+//				dockingTaskDO.setSystemoid(sysIntInfoVOi.getSysbaseoid());//绯荤粺oid
+//				dockingTaskDO.setSystemcode(sysIntInfoVOi.getSysbaseid());//绯荤粺缂栫爜
+//				dockingTaskDO.setSystemname(sysIntInfoVOi.getSysbasename());//绯荤粺name
+//				dockingTaskDO_insert.add(dockingTaskDO);
+//			}
+//
+//			BatchCBO bi = null;
+//			if(dockingTaskDO_insert.size()!=0) {
+//				bi = dockingTaskDaoI.batchInsert(dockingTaskDO_insert);
+//				batchCBO.copyFromOther(bi);
+//			}
+//			WebUtil.setPersistence(true);
+//			boService.persistenceBatch(batchCBO);
+//			//dockingTaskDaoI.updateByPrimaryKey鏂规硶鎶ラ敊浜嗭紝鎵�浠ユ墜鍐欎簡杩欎釜
+//			boolean u = updateDockingDatasSendFlag(dataoid,SEND_FLAG_TRUE);
+//			if(!u){
+//				log.error("闆嗘垚data鍒嗚В浠诲姟澶辫触锛乨ataoid:"+dataoid);
+//				continue;
+//			}
+//
+//		}
+	}
+
+
 }
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSysIntHeaderServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSysIntHeaderServiceImpl.java
new file mode 100644
index 0000000..b24b7b9
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSysIntHeaderServiceImpl.java
@@ -0,0 +1,13 @@
+package com.vci.ubcs.code.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.entity.DockingSysIntHeader;
+import com.vci.ubcs.code.mapper.DockingSysIntHeaderMapper;
+import com.vci.ubcs.code.service.IDockingSysIntHeaderService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+@Slf4j
+@Service
+public class DockingSysIntHeaderServiceImpl  extends ServiceImpl<DockingSysIntHeaderMapper, DockingSysIntHeader> implements IDockingSysIntHeaderService {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSysIntParamServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSysIntParamServiceImpl.java
new file mode 100644
index 0000000..98a9f01
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSysIntParamServiceImpl.java
@@ -0,0 +1,13 @@
+package com.vci.ubcs.code.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.entity.DockingSysIntParam;
+import com.vci.ubcs.code.mapper.DockingSysIntParamMapper;
+import com.vci.ubcs.code.service.IDockingSysIntParamService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+@Slf4j
+@Service
+public class DockingSysIntParamServiceImpl extends ServiceImpl<DockingSysIntParamMapper, DockingSysIntParam> implements IDockingSysIntParamService {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java
index 2341b7d..4d9af0a 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java
@@ -1,23 +1,156 @@
 package com.vci.ubcs.code.service.impl;
 
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.constant.MdmBtmTypeConstant;
+import com.vci.ubcs.code.dto.DockingSysIntHeaderDTO;
+import com.vci.ubcs.code.dto.DockingSystemConfigDTO;
+import com.vci.ubcs.code.dto.DockingSysIntParamDTO;
+import com.vci.ubcs.code.entity.DockingSysIntHeader;
+import com.vci.ubcs.code.entity.DockingSysIntParam;
+import com.vci.ubcs.code.entity.DockingSystem;
 import com.vci.ubcs.code.entity.DockingSystemConfig;
+import com.vci.ubcs.code.enumpack.SysIntegrationRequestTypeEnum;
+import com.vci.ubcs.code.mapper.DockingSysIntHeaderMapper;
+import com.vci.ubcs.code.mapper.DockingSysIntParamMapper;
 import com.vci.ubcs.code.mapper.DockingSystemConfigMapper;
+import com.vci.ubcs.code.mapper.DockingSystemMapper;
+import com.vci.ubcs.code.service.IDockingSysIntHeaderService;
+import com.vci.ubcs.code.service.IDockingSysIntParamService;
 import com.vci.ubcs.code.service.IDockingSystemConfigService;
+import com.vci.ubcs.code.vo.pagemodel.DockingSysIntHeaderVO;
+import com.vci.ubcs.code.vo.pagemodel.DockingSystemVO;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import com.vci.ubcs.starter.revision.service.RevisionModelUtil;
+import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
+import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
+import com.vci.ubcs.starter.web.util.VciBaseUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
 
-import java.util.Collection;
-import java.util.Map;
-import java.util.function.Function;
+import java.util.*;
 
 /***
  * 绯荤粺鎺ュ彛绠$悊-鎺ュ彛閰嶇疆鏈嶅姟
  * @author xiejun
  * @date 2023-06-01
  */
+@Slf4j
 @Service
 public class DockingSystemConfigServiceImpl extends ServiceImpl<DockingSystemConfigMapper, DockingSystemConfig> implements IDockingSystemConfigService{
 
+	/***
+	 * 闆嗘垚绯荤粺绠$悊鏈嶅姟
+	 */
+	@Autowired(required = false)
+	private DockingSystemConfigMapper dockingSystemConfigMapper;
+
+	/***
+	 * 闆嗘垚鎺ュ彛-闆嗘垚鎺ュ彛绠$悊鍙傛暟鏈嶅姟
+	 */
+	@Autowired(required = false)
+	private IDockingSysIntParamService dockingSysIntParamService;
+
+
+
+	/***
+	 * 闆嗘垚鎺ュ彛-闆嗘垚鎺ュ彛绠$悊鍙傛暟鏈嶅姟
+	 */
+	@Autowired(required = false)
+	private IDockingSysIntHeaderService dockingSysIntHeaderService;
+
+
+	/***
+	 * 闆嗘垚鎺ュ彛-闆嗘垚绯荤粺鏈嶅姟
+	 */
+	@Autowired(required = false)
+	private DockingSystemMapper dockingSystemMapper;
+
+	/**
+	 * 瀵硅薄鐨勬搷浣�
+	 */
+	@Autowired
+	private RevisionModelUtil revisionModelUtil;
+	/**
+	 * 澧炲姞绯荤粺闆嗘垚鐨勬帴鍙g鐞嗕俊鎭�
+	 * @param dockingSystemConfigDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞�
+	 * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
+	 */
+	@Transactional(rollbackFor = Exception.class)
+	@Override
+	public boolean addSave(DockingSystemConfigDTO dockingSystemConfigDTO) {
+		log.info(" 澧炲姞绯荤粺闆嗘垚鐨勬帴鍙g鐞嗕俊鎭�:"+dockingSystemConfigDTO.toString());
+		VciBaseUtil.alertNotNull(dockingSystemConfigDTO, "闇�瑕佹坊鍔犵殑鏁版嵁瀵硅薄");
+		checkColumnNotNull(dockingSystemConfigDTO);
+		String sourcesystemoid = dockingSystemConfigDTO.getSourceSystemOid();
+		DockingSystem dockingSystem = dockingSystemMapper.selectById(sourcesystemoid);
+		dockingSystemConfigDTO.setSysBaseOid(sourcesystemoid);
+		dockingSystemConfigDTO.setSysBaseId(dockingSystem.getId());
+		dockingSystemConfigDTO.setSysBaseName(dockingSystem.getName());
+		dockingSystemConfigDTO.setUsedFlag("true");//璁剧疆榛樿鍚敤鐘舵��
+
+		//灏咲TO杞崲涓篋O
+		DockingSystemConfig dockingSystemConfig = new DockingSystemConfig();
+		revisionModelUtil.copyFromDTOIgnore(dockingSystemConfigDTO,dockingSystemConfig);
+
+
+		List<DockingSysIntParamDTO> sysIntParamDTOList=  dockingSystemConfigDTO.getSysIntParamDTOS();
+		List<DockingSysIntParam> sysIntParamList=new ArrayList<>();
+		if(!CollectionUtils.isEmpty(sysIntParamDTOList)) {
+			sysIntParamDTOList.stream().forEach(sysIntParamDTO -> {
+				DockingSysIntParam sysIntParamDO = new DockingSysIntParam();
+				sysIntParamDTO.setInfoOid(dockingSystemConfigDTO.getOid());
+				BeanUtilForVCI.copyPropertiesIgnoreCase(sysIntParamDTO, sysIntParamDO);
+				DefaultAttrAssimtUtil.addDefaultAttrAssimt(sysIntParamDO,MdmBtmTypeConstant.SYS_INT_PARAMTERY);
+				sysIntParamList.add(sysIntParamDO);
+			});
+		}
+		List<DockingSysIntHeaderDTO> sysIntHeaderDTOs= dockingSystemConfigDTO.getSysIntHeaderDTOS();
+		List<DockingSysIntHeader> sysIntHeaderList = new ArrayList<>();
+		if(!CollectionUtils.isEmpty(sysIntHeaderDTOs)) {
+			sysIntHeaderDTOs.stream().forEach(sysIntHeaderDTO -> {
+				DockingSysIntHeader dockingSysIntHeader = new DockingSysIntHeader();
+				sysIntHeaderDTO.setInfoOid(dockingSystemConfigDTO.getOid());
+				BeanUtilForVCI.copyPropertiesIgnoreCase(sysIntHeaderDTO, dockingSysIntHeader);
+				DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingSysIntHeader,MdmBtmTypeConstant.SYS_INT_HEADER);
+				sysIntHeaderList.add(dockingSysIntHeader);
+			});
+		}
+		dockingSysIntParamService.saveBatch(sysIntParamList);
+		dockingSysIntHeaderService.saveBatch(sysIntHeaderList);
+		DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingSystemConfig,MdmBtmTypeConstant.SYS_INT_INFO);
+		dockingSystemConfigMapper.insert(dockingSystemConfig);
+
+		return true;
+
+	}
+
+	@Override
+	public DockingSystemVO editSave(DockingSystemConfigDTO dockingSystemDTO) {
+		return null;
+	}
+
+	@Override
+	public boolean deleteDataById(String oids) {
+		return false;
+	}
+
+	/**
+	 * 绯荤粺闆嗘垚鎺ュ彛鍩虹淇℃伅Null瀛楁妫�楠�
+	 * @param dockingSystemConfigDTO 绯荤粺闆嗘垚鍩虹淇℃伅鏁版嵁浼犺緭瀵硅薄
+	 * @throws VciBaseException 鍙傛暟涓虹┖锛屽敮涓�椤癸紝蹇呰緭椤逛笉閫氳繃鏃朵細鎶涘嚭寮傚父
+	 */
+	private void checkColumnNotNull(DockingSystemConfigDTO  dockingSystemConfigDTO) throws VciBaseException {
+		if (SysIntegrationRequestTypeEnum.HTTP.getValue().equals(dockingSystemConfigDTO.getInterfaceType())){
+			VciBaseUtil.alertNotNull(dockingSystemConfigDTO.getRequestUrl(),"HTTP鎺ュ彛鐨勮姹傚湴鍧�",dockingSystemConfigDTO.getRequestMethod(),"HTTP鎺ュ彛鐨勮姹傛柟寮�");
+		}
+		if (SysIntegrationRequestTypeEnum.WEB_SERVICE.getValue().equals(dockingSystemConfigDTO.getInterfaceType())){
+			VciBaseUtil.alertNotNull(dockingSystemConfigDTO.getInterfaceFunction(),"WebService鐨勬帴鍙e嚱鏁�");
+		}
+		if (SysIntegrationRequestTypeEnum.CLASSPATH.getValue().equals(dockingSystemConfigDTO.getInterfaceType())){
+			VciBaseUtil.alertNotNull(dockingSystemConfigDTO.getClassPath(),"绫昏矾寰�");
+		}
+	}
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingTaskServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingTaskServiceImpl.java
index d9d9908..b104c18 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingTaskServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingTaskServiceImpl.java
@@ -1,9 +1,7 @@
 package com.vci.ubcs.code.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.vci.ubcs.code.entity.CodeClassifyValue;
 import com.vci.ubcs.code.entity.DockingTask;
-import com.vci.ubcs.code.mapper.CodeClassifyValueMapper;
 import com.vci.ubcs.code.mapper.DockingTaskMapper;
 import com.vci.ubcs.code.service.IDockingTaskService;
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
index 0bba185..8df4c4c 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -2182,31 +2182,32 @@
 			deleteBatchDTO.getCodeClassifyOid(), "涓婚搴撳垎绫荤殑涓婚敭");
 		CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(deleteBatchDTO.getCodeClassifyOid());
 		//鎵句笟鍔$被鍨嬶紝鐒跺悗浣跨敤涓婚敭鍘昏幏鍙栨暟鎹簱閲岀殑鏁版嵁
-		Collection<String> oidCollection = null;
+		Collection<String> oidCollection = new ArrayList<>();
 		for (Collection<String> strings : VciBaseUtil.switchCollectionForOracleIn(deleteBatchDTO.getOidList())) {
 			oidCollection.addAll(strings);
 		}
 
-		List<CodeWupin> cboList = codeWupinMapper.selectBatchIds(oidCollection);
-		//		List<ClientBusinessObject> cboList = new ArrayList<>();
-//		oidCollection.stream().forEach(oids -> {
-//			Map<String, String> conditionMap = new HashMap<>();
+//		List<CodeWupin> cboList = codeWupinMapper.selectBatchIds(oidCollection);
+		List<BaseModel> cboList = new ArrayList<>();
+		oidCollection.stream().forEach(oids -> {
+			Map<String, String> conditionMap = new HashMap<>();
 //			conditionMap.put("oid", QueryOptionConstant.IN + "(" + VciBaseUtil.toInSql(oids.toArray(new String[0])) + ")");
-//			List<ClientBusinessObject> cbos = boService.queryCBO(classifyFullInfo.getTopClassifyVO().getBtmtypeid(), conditionMap);
-//			cboList.addAll(cbos);
-//		});
+			List<BaseModel> cbos = selectByTypeAndOid(classifyFullInfo.getTopClassifyVO().getBtmtypeid(),oids);
+//				boService.queryCBO(classifyFullInfo.getTopClassifyVO().getBtmtypeid(), conditionMap);
+			cboList.addAll(cbos);
+		});
 		if (CollectionUtils.isEmpty(cboList)) {
 			throw new VciBaseException("鏁版嵁鍏ㄩ儴鍦ㄧ郴缁熶腑涓嶅瓨鍦�");
 		}
-		List<CodeWupin> editCBOs = cboList.stream().filter(s -> !CodeDefaultLC.EDITING.getValue().equalsIgnoreCase(s.getLcStatus())).collect(Collectors.toList());
+		List<BaseModel> editCBOs = cboList.stream().filter(s -> !CodeDefaultLC.EDITING.getValue().equalsIgnoreCase(s.getLcStatus())).collect(Collectors.toList());
 		if (!CollectionUtils.isEmpty(editCBOs)) {
-			CodeWupin cbo = editCBOs.get(0);
+			BaseModel cbo = editCBOs.get(0);
 			throw new VciBaseException("缂栫爜涓簕0}绛夊叡{1}鏉℃暟鎹殑鐘舵�佷笉鏄痆{2}]锛屼笉鍏佽鍒犻櫎", new String[]{cbo.getId(), String.valueOf(editCBOs.size()), CodeDefaultLC.EDITING.getText()});
 		}
 
 		//鍙兘鍒犻櫎鑷繁鍒涘缓鐨勬暟鎹�
-		String userId = AuthUtil.getUser().getUserName();
-		for (CodeWupin clientBusinessObject : cboList) {
+		String userId = String.valueOf(AuthUtil.getUser().getUserId());
+		for (BaseModel clientBusinessObject : cboList) {
 			String creator = clientBusinessObject.getCreator();
 			if (!userId.equalsIgnoreCase(creator)) {
 				throw new VciBaseException("缂栫爜涓�" + clientBusinessObject.getId() + "鐨勬暟鎹笉鏄綋鍓嶇敤鎴峰垱寤猴紝涓嶈兘鍒犻櫎锛�");
@@ -2218,7 +2219,14 @@
 //		WebUtil.setPersistence(false);
 //		batchCBO.copyFromOther(
 		productCodeService.recycleCode(classifyFullInfo.getCurrentClassifyVO().getBtmtypeid(), deleteBatchDTO.getOidList());
-		baseMapper.deleteBatchIds(cboList);
+//		baseMapper.deleteBatchIds(cboList);
+		//浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃
+		R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(classifyFullInfo.getCurrentClassifyVO().getBtmtypeid()));
+		if (listR.getData().size() == 0) {
+			throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+		}
+		commonsMapper.deleteByTaleAndOid(listR.getData().get(0).getTableName(),
+			"'"+(StringUtils.join(cboList.stream().map(BaseModel::getOid).collect(Collectors.toSet()),"','"))+"'");
 		//		);
 //		WebUtil.setPersistence(true);
 //		boService.persistenceBatch(batchCBO);
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
index c324801..4d865ed 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
@@ -1895,9 +1895,30 @@
 		getFieldIndexMap(titleRowData, attrNameIdMap, fieldIndexMap);
 		Map<String, String> cboOidMap = new HashMap<>();
 		cboOidMap.put("id", QueryOptionConstant.IN + "(" + VciBaseUtil.toInSql(codeDataMap.keySet().toArray(new String[0])) + ")");
-		R<BtmTypeVO>  r= btmTypeClient.getDetail(templateVO.getBtmTypeId());
-		BtmTypeVO btmTypeVO =r.getData();
-		String tableName=btmTypeVO.getTableName();
+		String tableName ="";
+		try {
+			R<BtmTypeVO> r = btmTypeClient.getAllAttributeByBtmId(templateVO.getBtmTypeId());
+			if(r.getCode()!=200) {
+				throw new Throwable(r.getMsg());
+			}
+			BtmTypeVO btmTypeVO = r.getData();
+			if (btmTypeVO == null) {
+				throw new Throwable("鏍规嵁涓氬姟绫诲瀷鏈煡璇㈠埌涓氬姟绫诲瀷瀵硅薄锛�");
+			}
+			tableName = btmTypeVO.getTableName();
+			if (StringUtils.isBlank(tableName)) {
+				throw new Throwable("鏍规嵁涓氬姟绫诲瀷鏈煡璇㈠埌涓氬姟绫诲瀷鐩稿叧鑱旂殑琛�");
+			}
+		}catch (Throwable e){
+			log.error("鏌ヨ涓氬姟瀵硅薄琛�"+e);
+			XMLResultDataObjectDetailDO xmlResultDataObjectDetailDO=new XMLResultDataObjectDetailDO();
+			xmlResultDataObjectDetailDO.setErrorid("103");
+			xmlResultDataObjectDetailDO.setMsg("鏌ヨ涓氬姟瀵硅薄琛�"+e);
+			xmlResultDataObjectDetailDO.setId("");
+			xmlResultDataObjectDetailDO.setCode("");
+			resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO);
+			return;
+		}
 
 		StringBuffer sb=new StringBuffer();
 		sb.append(" select * from ");
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingSysIntHeaderWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingSysIntHeaderWrapper.java
new file mode 100644
index 0000000..db46ab7
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingSysIntHeaderWrapper.java
@@ -0,0 +1,67 @@
+package com.vci.ubcs.code.wrapper;
+
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.vci.ubcs.code.entity.DockingSysIntHeader;
+import com.vci.ubcs.code.vo.pagemodel.DockingSysIntHeaderVO;
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Objects;
+
+public class DockingSysIntHeaderWrapper extends BaseEntityWrapper<DockingSysIntHeader, DockingSysIntHeaderVO> {
+	public static DockingSysIntHeaderWrapper build() {
+		return new DockingSysIntHeaderWrapper();
+	}
+	@Override
+	public DockingSysIntHeaderVO entityVO(DockingSysIntHeader entity) {
+		DockingSysIntHeaderVO vo = Objects.requireNonNull(BeanUtil.copy(entity, DockingSysIntHeaderVO.class));
+		return vo;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param entitys
+	 * @return
+	 */
+	public List<DockingSysIntHeaderVO> entityVOs(Collection<DockingSysIntHeader> entitys) {
+		if(CollectionUtils.isEmpty(entitys)) {
+			return new ArrayList<>();
+		}
+		List<DockingSysIntHeaderVO> vos=new ArrayList<>();
+		if(!CollectionUtils.isEmpty(entitys)) {
+			entitys.stream().forEach(DockingSystem -> {
+				vos.add(entityVO(DockingSystem));
+			});
+		}
+		return vos;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vos
+	 * @return
+	 */
+	public List<DockingSysIntHeader> voentitys(Collection<DockingSysIntHeaderVO> vos) {
+		if(CollectionUtils.isEmpty(vos)) {return new ArrayList<>();}
+		List<DockingSysIntHeader>entitys =new ArrayList<>();
+		if(!CollectionUtils.isEmpty(vos)) {
+			vos.stream().forEach(entity -> {
+				entitys.add(voentity(entity));
+			});
+		}
+		return entitys;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vo
+	 * @return
+	 */
+	public DockingSysIntHeader voentity(DockingSysIntHeaderVO vo) {
+		DockingSysIntHeader entity = Objects.requireNonNull(BeanUtil.copy(vo, DockingSysIntHeader.class));
+		return entity;
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingSysIntParamWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingSysIntParamWrapper.java
new file mode 100644
index 0000000..f1cac56
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingSysIntParamWrapper.java
@@ -0,0 +1,69 @@
+package com.vci.ubcs.code.wrapper;
+
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.vci.ubcs.code.entity.DockingSysIntParam;
+import com.vci.ubcs.code.vo.pagemodel.DockingSysIntParamVO;
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Objects;
+
+public class DockingSysIntParamWrapper extends BaseEntityWrapper<DockingSysIntParam, DockingSysIntParamVO> {
+
+
+	public static DockingSysIntParamWrapper build() {
+		return new DockingSysIntParamWrapper();
+	}
+	@Override
+	public DockingSysIntParamVO entityVO(DockingSysIntParam entity) {
+		DockingSysIntParamVO vo = Objects.requireNonNull(BeanUtil.copy(entity, DockingSysIntParamVO.class));
+		return vo;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param entitys
+	 * @return
+	 */
+	public List<DockingSysIntParamVO> entityVOs(Collection<DockingSysIntParam> entitys) {
+		if(CollectionUtils.isEmpty(entitys)) {
+			return new ArrayList<>();
+		}
+		List<DockingSysIntParamVO> vos=new ArrayList<>();
+		if(!CollectionUtils.isEmpty(entitys)) {
+			entitys.stream().forEach(DockingSystem -> {
+				vos.add(entityVO(DockingSystem));
+			});
+		}
+		return vos;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vos
+	 * @return
+	 */
+	public List<DockingSysIntParam> voentitys(Collection<DockingSysIntParamVO> vos) {
+		if(CollectionUtils.isEmpty(vos)) {return new ArrayList<>();}
+		List<DockingSysIntParam>entitys =new ArrayList<>();
+		if(!CollectionUtils.isEmpty(vos)) {
+			vos.stream().forEach(entity -> {
+				entitys.add(voentity(entity));
+			});
+		}
+		return entitys;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vo
+	 * @return
+	 */
+	public DockingSysIntParam voentity(DockingSysIntParamVO vo) {
+		DockingSysIntParam entity = Objects.requireNonNull(BeanUtil.copy(vo, DockingSysIntParam.class));
+		return entity;
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingSysIntParamMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingSysIntParamMapper.xml
new file mode 100644
index 0000000..2695019
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingSysIntParamMapper.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.vci.ubcs.code.mapper.DockingSysIntParamMapper">
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="plDockingSysIntParamResultMap" type="com.vci.ubcs.code.entity.DockingSysIntParam">
+        <result column="OID" property="oid"/>
+        <result column="REVISIONOID" property="revisionOid"/>
+        <result column="NAMEOID" property="nameOid"/>
+        <result column="BTMNAME" property="btmname"/>
+        <result column="LASTR" property="lastR"/>
+        <result column="FIRSTR" property="firstR"/>
+        <result column="LASTV" property="lastV"/>
+        <result column="FIRSTV" property="firstV"/>
+        <result column="CREATOR" property="creator"/>
+        <result column="CREATETIME" property="createTime"/>
+        <result column="LASTMODIFIER" property="lastModifier"/>
+        <result column="LASTMODIFYTIME" property="lastModifyTime"/>
+        <result column="REVISIONRULE" property="revisionRule"/>
+        <result column="VERSIONRULE" property="versionRule"/>
+        <result column="REVISIONSEQ" property="revisionSeq"/>
+        <result column="REVISIONVALUE" property="revisionValue"/>
+        <result column="VERSIONSEQ" property="versionSeq"/>
+        <result column="VERSIONVALUE" property="versionValue"/>
+        <result column="LCTID" property="lctid"/>
+        <result column="LCSTATUS" property="lcStatus"/>
+        <result column="TS" property="ts"/>
+        <result column="ID" property="id"/>
+        <result column="NAME" property="name"/>
+        <result column="DESCRIPTION" property="description"/>
+        <result column="OWNER" property="owner"/>
+        <result column="COPYFROMVERSION" property="copyFromVersion"/>
+
+        <result column="INFOOID" property="infoOid"/>
+        <result column="PARAMKEY" property="paramKey"/>
+        <result column="PARAMVALUE" property="paramValue"/>
+        <result column="USEDFLAG" property="usedFlag"/>
+        <result column="tenant_id" property="tenantId"/>
+
+        <result column="tenant_id" property="tenantId"/>
+    </resultMap>
+
+</mapper>

--
Gitblit v1.9.3