From 77d8f6ccb72cb64c29e77c39fcc8298781d008bb Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期四, 02 一月 2025 15:22:22 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/funingyunwei

---
 admin/src/views/contract/components/contractEdit.vue                                                                       |  235 ++++++-----
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTaskRecord.java                          |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/AreasServiceImpl.java                         |    3 
 h5/pages/polling/detail.vue                                                                                                |   54 ++
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java                                |    2 
 h5/pages/workOrder/edit.vue                                                                                                |    9 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java            |   45 +
 admin/src/views/Inspection/task.vue                                                                                        |    2 
 h5/pages/operation/device.vue                                                                                              |   20 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java                   |   16 
 h5/pages/index.vue                                                                                                         |   26 
 h5/pages/login.vue                                                                                                         |    2 
 admin/src/views/contract/components/contractDetail.vue                                                                     |    4 
 admin/src/views/workorder/components/detail.vue                                                                            |   72 ++-
 h5/pages/polling/task.vue                                                                                                  |   21 
 h5/static/plan_ic_finish@2x.png                                                                                            |    0 
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CompanyCloudController.java                               |    9 
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/ERPSyncCloudController.java                               |    2 
 h5/pages/workOrder/detail.vue                                                                                              |  153 ++++++-
 h5/pages/polling/point.vue                                                                                                 |   74 ++-
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java                  |    8 
 admin/src/views/workorder/workorderList.vue                                                                                |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java                              |   11 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CompanyService.java                                |    2 
 admin/src/views/Inspection/components/taskDetail.vue                                                                       |   17 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java                |   12 
 admin/src/views/business/areas.vue                                                                                         |    3 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java                              |    1 
 server/system_service/src/main/java/com/doumee/biz/system/impl/SystemDictDataBizImpl.java                                  |    3 
 admin/src/views/project/components/OperaYwRoomWindow.vue                                                                   |   13 
 h5/utils/config.js                                                                                                         |    4 
 admin/src/components/business/OperaAreasWindow.vue                                                                         |    8 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java                        |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java                                 |    9 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java                     |    3 
 admin/src/views/Inspection/plan.vue                                                                                        |   44 +
 h5/pages/workOrder/list.vue                                                                                                |    6 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java |    2 
 /dev/null                                                                                                                  |  144 -------
 h5/static/play.png                                                                                                         |    0 
 admin/src/api/company.js                                                                                                   |    4 
 admin/src/views/project/components/OperaYwBuildingWindow.vue                                                               |   12 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java                       |   12 
 admin/src/views/workorder/components/OperaYwWorkorderWindow.vue                                                            |   14 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java                   |   20 +
 45 files changed, 646 insertions(+), 460 deletions(-)

diff --git a/admin/src/api/company.js b/admin/src/api/company.js
index 832abb0..ad54d7a 100644
--- a/admin/src/api/company.js
+++ b/admin/src/api/company.js
@@ -11,3 +11,7 @@
 export function companyList (data) {
   return request.post('/visitsAdmin/cloudService/business/company/list', data)
 }
+// 鍒楄〃
+export function companyListConstract (data) {
+  return request.post('/visitsAdmin/cloudService/business/company/listForConstract', data)
+}
diff --git a/admin/src/components/business/OperaAreasWindow.vue b/admin/src/components/business/OperaAreasWindow.vue
index 2458dad..5cdd9cc 100644
--- a/admin/src/components/business/OperaAreasWindow.vue
+++ b/admin/src/components/business/OperaAreasWindow.vue
@@ -9,9 +9,12 @@
       <el-form-item :label="form.type==1?'甯傚悕绉�':'鍘垮尯鍚嶇О'" prop="name">
         <el-input v-model="form.name" :placeholder="form.type==1?'杈撳叆甯傚悕绉�':'杈撳叆鍘垮尯鍚嶇О'" v-trim/>
       </el-form-item>
-      <el-form-item label="鎺掑簭鐮�" prop="sortnum">
-        <el-input v-model="form.sortnum" placeholder="璇疯緭鍏ユ帓搴忕爜" v-trim/>
+      <el-form-item label="琛屾斂鍖轰唬鐮�" prop="code">
+        <el-input v-model="form.code" placeholder="璇疯緭鍏ユ帓搴忕爜" v-trim/>
       </el-form-item>
+<!--      <el-form-item label="鎺掑簭鐮�" prop="sortnum">
+        <el-input v-model="form.sortnum" placeholder="璇疯緭鍏ユ帓搴忕爜" v-trim/>
+      </el-form-item>-->
     </el-form>
   </GlobalAlertWindow>
 </template>
@@ -30,6 +33,7 @@
         id: null,
         parentId: null,
         name: null,
+        code:null,
         sortnum: '0',
         type: null
       },
diff --git a/admin/src/views/Inspection/components/taskDetail.vue b/admin/src/views/Inspection/components/taskDetail.vue
index 54b30a5..a357861 100644
--- a/admin/src/views/Inspection/components/taskDetail.vue
+++ b/admin/src/views/Inspection/components/taskDetail.vue
@@ -1,5 +1,5 @@
 <template>
-  <GlobalWindow title="宸℃浠诲姟璇︽儏" :showConfirm="false" :visible.sync="isShowModal">
+  <GlobalWindow title="宸℃浠诲姟璇︽儏" width="800px" :showConfirm="false" :visible.sync="isShowModal">
     <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getDetail(1)" @clear="clear" />
     <el-table v-loading="loading" :data="list" stripe>
       <el-table-column prop="pointName" label="宸℃鐐瑰悕绉�" min-width="100" show-overflow-tooltip />
@@ -11,12 +11,25 @@
       </el-table-column>
       <el-table-column prop="realname" label="宸℃浜�" min-width="100" show-overflow-tooltip />
       <el-table-column prop="editDate" label="宸℃鏃堕棿" min-width="100" show-overflow-tooltip />
-      <el-table-column prop="" label="宸℃缁撴灉" min-width="100" show-overflow-tooltip>
+      <el-table-column prop="files" label="宸℃缁撴灉" min-width="100" show-overflow-tooltip >
         <template v-slot="{ row }">
           <span class="gray" v-if="row.dealStatus == 0">姝e父</span>
           <span class="red" v-if="row.dealStatus == 1">寮傚父</span>
         </template>
       </el-table-column>
+      <el-table-column prop="" label="宸℃闄勪欢" min-width="100" show-overflow-tooltip>
+        <template v-slot="{ row }">
+          <div class="value" v-if="row.multifileList != null && row.multifileList.length">
+            <div v-for="item in row.multifileList" :key="item.id" style="display: inline;margin-right: 20px">
+              <video v-if="item.fileurlFull && item.fileurlFull.endsWith('.mp4')" ref="videoRef" controls preload="auto"
+                     style="width: 60px;height: 60px;object-fit: contain;" :src="item.fileurlFull" />
+              <el-image v-else-if="item.fileurlFull" style="width:60px; height: 60px" :src="item.fileurlFull"
+                        :preview-src-list="[item.fileurlFull]">
+              </el-image>
+            </div>
+          </div>
+        </template>
+      </el-table-column>
       <el-table-column prop="dealInfo" label="宸℃璇存槑" min-width="100" show-overflow-tooltip />
     </el-table>
     <div class="mt20">
diff --git a/admin/src/views/Inspection/plan.vue b/admin/src/views/Inspection/plan.vue
index 421f804..31bd4c2 100644
--- a/admin/src/views/Inspection/plan.vue
+++ b/admin/src/views/Inspection/plan.vue
@@ -2,14 +2,17 @@
   <TableLayout :permissions="['business:ywpatrolscheme:query']">
     <!-- 鎼滅储琛ㄥ崟 -->
     <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
+      <el-form-item label="寮�濮嬫棩鏈�" prop="selDate">
+        <el-date-picker type="daterange" v-model="searchForm.selDate"  @change="changeSelDate" clearable value-format="yyyy-MM-dd"
+        />
+      </el-form-item>
+      <el-form-item label="缁撴潫鏃ユ湡" prop="selDateSec">
+        <el-date-picker type="daterange" v-model="searchForm.selDateSec"  @change="changeSelDateSec" clearable value-format="yyyy-MM-dd"
+         />
+      </el-form-item>
       <el-form-item label="璁″垝鍚嶇О" prop="title">
         <el-input v-model="searchForm.title" placeholder="璇疯緭鍏ヨ鍒掑悕绉�" @keypress.enter.native="search"></el-input>
       </el-form-item>
-      <el-form-item label="璁″垝鏃ユ湡" prop="selDate">
-        <el-date-picker type="daterange" v-model="searchForm.selDate" clearable value-format="yyyy-MM-dd"
-          @change="changeDate" />
-      </el-form-item>
-
       <section>
         <el-button type="primary" @click="search">鎼滅储</el-button>
         <el-button @click="reset">閲嶇疆</el-button>
@@ -90,7 +93,9 @@
     return {
       // 鎼滅储
       searchForm: {
-        title: ''
+        title: '',
+        selDate:[],
+        selDateSec:[]
       }
     }
   },
@@ -113,16 +118,7 @@
         this.search()
       })
     },
-    changeDate(e) {
-      if (e && e.length > 0) {
-        this.$set(this.searchForm, 'startDate', e[0])
-        this.$set(this.searchForm, 'endDate', e[1])
-      } else {
-        this.$set(this.searchForm, 'startDate', '')
-        this.$set(this.searchForm, 'endDate', '')
-      }
 
-    },
     reset() {
       this.searchForm = {}
       this.search()
@@ -137,6 +133,24 @@
       this.$refs.operaYwPatrolSchemeWindow.initData()
 
     },
+    changeSelDate(e) {
+      if (e && e.length > 0) {
+        this.$set(this.searchForm, 'startDate', e[0] )
+        this.$set(this.searchForm, 'endDate', e[1]  )
+      } else {
+        this.$set(this.searchForm, 'startDate', '')
+        this.$set(this.searchForm, 'endDate', '')
+      }
+    },
+    changeSelDateSec(e) {
+      if (e && e.length > 0) {
+        this.$set(this.searchForm, 'startDateSec', e[0] )
+        this.$set(this.searchForm, 'endDateSec', e[1]  )
+      } else {
+        this.$set(this.searchForm, 'startDateSec', '')
+        this.$set(this.searchForm, 'endDateSec', '')
+      }
+    },
   }
 }
 </script>
diff --git a/admin/src/views/Inspection/task.vue b/admin/src/views/Inspection/task.vue
index b9fe645..7084b40 100644
--- a/admin/src/views/Inspection/task.vue
+++ b/admin/src/views/Inspection/task.vue
@@ -5,7 +5,7 @@
       <el-form-item label="璁″垝鍚嶇О" prop="planTitle">
         <el-input v-model="searchForm.planTitle" placeholder="璇疯緭鍏ヨ鍒掑悕绉�" @keypress.enter.native="search"></el-input>
       </el-form-item>
-      <el-form-item label="浠诲姟鐘舵��">
+      <el-form-item label="浠诲姟鐘舵��" prop="status">
         <el-select v-model="searchForm.status" label="浠诲姟鐘舵��" filterable clearable>
           <el-option value="0" label="寰呭紑濮�"></el-option>
           <el-option value="1" label="杩涜涓�"></el-option>
diff --git a/admin/src/views/business/areas.vue b/admin/src/views/business/areas.vue
index 0908620..d308427 100644
--- a/admin/src/views/business/areas.vue
+++ b/admin/src/views/business/areas.vue
@@ -17,8 +17,11 @@
         @selection-change="handleSelectionChange"
       >
         <el-table-column prop="name" label="鍦板尯鍚嶇О" min-width="100px"></el-table-column>
+        <el-table-column prop="code" label="琛屾斂鍖轰唬鐮�" align="center" min-width="140px"></el-table-column>
         <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" align="center" min-width="140px"></el-table-column>
+<!--
         <el-table-column prop="sortnum" label="鎺掑簭鐮�" align="center" min-width="140px"></el-table-column>
+-->
         <el-table-column
           v-if="containPermissions(['business:areas:update', 'business:areas:create', 'business:areas:delete'])"
           label="鎿嶄綔"
diff --git a/admin/src/views/contract/components/contractDetail.vue b/admin/src/views/contract/components/contractDetail.vue
index a9c43db..3b49554 100644
--- a/admin/src/views/contract/components/contractDetail.vue
+++ b/admin/src/views/contract/components/contractDetail.vue
@@ -235,7 +235,7 @@
           label="璐﹀崟鏉ユ簮">
           <template slot-scope="{row}">
             <span v-if="row.type === 0">鍚堝悓璐﹀崟</span>
-            <span v-if="row.type === 1">鑷缓璐﹀崟</span>
+            <span v-else>鑷缓璐﹀崟</span>
           </template>
         </el-table-column>
         <el-table-column
@@ -345,7 +345,7 @@
       page: 1,
       total: 0,
       tableData: [],
-      
+
       loading: false
     }
   },
diff --git a/admin/src/views/contract/components/contractEdit.vue b/admin/src/views/contract/components/contractEdit.vue
index a441200..84a9fe8 100644
--- a/admin/src/views/contract/components/contractEdit.vue
+++ b/admin/src/views/contract/components/contractEdit.vue
@@ -1,12 +1,6 @@
 <template>
-  <GlobalWindow
-    width="100%"
-    :title="title"
-    :withFooter="false"
-    :visible.sync="visible"
-    :confirm-working="isWorking"
-    @confirm="confirm"
-    @close="close">
+  <GlobalWindow width="100%" :title="title" :withFooter="false" :visible.sync="visible" :confirm-working="isWorking"
+    @confirm="confirm" @close="close">
     <div class="tabs fixed">
       <div class="tab" :class="{ active: activeTabs === 0 }">1銆佸熀鏈俊鎭�</div>
       <div class="tab" :class="{ active: activeTabs === 1 }">2銆佽垂鐢ㄦ潯娆�</div>
@@ -19,7 +13,8 @@
             <div class="list">
               <el-form-item label="鍚堝悓绫诲瀷" prop="type">
                 <el-select v-model="form.type" placeholder="璇烽�夋嫨" @change="changeType">
-                  <el-option v-for="(item, index) in types" :key="index" :value="item.value" :label="item.name"></el-option>
+                  <el-option v-for="(item, index) in types" :key="index" :value="item.value"
+                    :label="item.name"></el-option>
                 </el-select>
               </el-form-item>
               <el-form-item label="鍚堝悓缂栧彿" prop="code">
@@ -27,21 +22,26 @@
               </el-form-item>
               <el-form-item label="缁忓姙浜�" prop="userId">
                 <el-select v-model="form.userId" filterable placeholder="璇烽�夋嫨">
-                  <el-option v-for="(item, index) in agentList" :key="index" :value="item.id" :label="item.realname"></el-option>
+                  <el-option v-for="(item, index) in agentList" :key="index" :value="item.id"
+                    :label="item.realname"></el-option>
                 </el-select>
               </el-form-item>
               <el-form-item label="鍚堝悓绛捐鏃ユ湡" prop="signDate">
-                <el-date-picker type="date" v-model="form.signDate" value-format="yyyy-MM-dd" :clearable="false" placeholder="璇烽�夋嫨" />
+                <el-date-picker type="date" v-model="form.signDate" value-format="yyyy-MM-dd" :clearable="false"
+                  placeholder="璇烽�夋嫨" />
               </el-form-item>
               <el-form-item label="鍚堝悓寮�濮嬫棩鏈�" prop="startDate">
-                <el-date-picker type="date" v-model="form.startDate" @change="getHouseData" :clearable="false" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
+                <el-date-picker type="date" v-model="form.startDate" @change="getHouseData" :clearable="false"
+                  value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
               </el-form-item>
               <el-form-item label="鍚堝悓缁撴潫鏃ユ湡" prop="endDate">
-                <el-date-picker type="date" v-model="form.endDate" @change="getHouseData" :clearable="false" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
+                <el-date-picker type="date" v-model="form.endDate" @change="getHouseData" :clearable="false"
+                  value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
               </el-form-item>
               <el-form-item label="褰掑睘椤圭洰" prop="projectId">
                 <el-select v-model="form.projectId" @change="getHouseTree" placeholder="璇烽�夋嫨">
-                  <el-option v-for="(item, index) in projectList" :key="index" :value="item.id" :label="item.name"></el-option>
+                  <el-option v-for="(item, index) in projectList" :key="index" :value="item.id"
+                    :label="item.name"></el-option>
                 </el-select>
               </el-form-item>
               <el-form-item label="缁撴灉鍙栨暣(鍥涜垗浜斿叆)" prop="roundedUp">
@@ -52,7 +52,8 @@
               </el-form-item>
               <el-form-item label="鎵�灞炲叕鍙�" prop="companyId">
                 <el-select v-model="form.companyId" placeholder="璇烽�夋嫨">
-                  <el-option v-for="(item, index) in comparyList" :key="index" :value="item.id" :label="item.name"></el-option>
+                  <el-option v-for="(item, index) in comparyList" :key="index" :value="item.id"
+                    :label="item.name"></el-option>
                 </el-select>
               </el-form-item>
             </div>
@@ -65,24 +66,21 @@
               </el-form-item>
               <el-form-item label="鑱旂郴浜�" prop="memberId">
                 <el-select v-model="form.memberId" placeholder="璇烽�夋嫨">
-                  <el-option v-for="(item, index) in contactsList" :key="index" :value="item.id" :label="item.name"></el-option>
+                  <el-option v-for="(item, index) in contactsList" :key="index" :value="item.id"
+                    :label="item.name"></el-option>
                 </el-select>
-<!--                <el-input v-model="form.memberName" readonly placeholder="璇风偣鍑婚�夋嫨绉熷" />-->
+                <!--                <el-input v-model="form.memberName" readonly placeholder="璇风偣鍑婚�夋嫨绉熷" />-->
               </el-form-item>
             </div>
           </el-form>
         </div>
         <div class="main_house">
           <div class="title">璇烽�夋嫨鎴挎簮</div>
-          <el-tree
-            :data="houseList"
-            show-checkbox
-            node-key="idd"
-            @check="checkHouseRoom"
-            :default-expanded-keys="ids"
-            :default-checked-keys="ids"
-            :props="{ children: 'projectDataVOList', label: 'name' }">
-            <span class="custom-tree-node" style="width: 100%; display: flex; align-items: center; justify-content: space-between;" slot-scope="{ node, data }">
+          <el-tree :data="houseList" show-checkbox node-key="idd" @check="checkHouseRoom" :default-expanded-keys="ids"
+            :default-checked-keys="ids" :props="{ children: 'projectDataVOList', label: 'name' }">
+            <span class="custom-tree-node"
+              style="width: 100%; display: flex; align-items: center; justify-content: space-between;"
+              slot-scope="{ node, data }">
               <span>{{ data.name }}</span>
               <span style="color: #2080f7;" v-if="data.lv === 3">
                 {{ data.area }}銕�
@@ -113,8 +111,12 @@
     </div>
     <div v-show="activeTabs === 1">
       <div class="tabs cost_tabs">
-        <div class="tab" :class="{ active: cactiveTabs === 0 }" @click="ctabsClick(0)" v-if="[0,2].includes(form.type)">绉熻祦鏉℃</div>
-        <div class="tab" :class="{ active: cactiveTabs === 1 }" @click="ctabsClick(1)" v-if="[0,1].includes(form.type)">鐗╀笟鏉℃</div>
+        <div class="tab" :class="{ active: cactiveTabs === 0 }" @click="ctabsClick(0)" v-if="[0, 2].includes(form.type)">
+          绉熻祦鏉℃
+        </div>
+        <div class="tab" :class="{ active: cactiveTabs === 1 }" @click="ctabsClick(1)" v-if="[0, 1].includes(form.type)">
+          鐗╀笟鏉℃
+        </div>
       </div>
       <!--   绉熻祦鏉℃   -->
       <div v-show="cactiveTabs === 0">
@@ -128,7 +130,8 @@
                 </el-form-item>
                 <el-form-item label="浠樻鏂瑰紡" prop="zlPayType">
                   <el-select v-model="form.zlPayType" @change="changePayType" placeholder="璇烽�夋嫨">
-                    <el-option v-for="(item, index) in payMethods" :key="index" :value="item.value" :label="item.name"></el-option>
+                    <el-option v-for="(item, index) in payMethods" :key="index" :value="item.value"
+                      :label="item.name"></el-option>
                   </el-select>
                 </el-form-item>
                 <el-form-item label="鍏嶇鏈�" prop="zlDate">
@@ -141,18 +144,22 @@
                 <el-button type="text" size="medium" @click="addZl">澧炲姞</el-button>
               </div>
               <div class="list">
-                <div style="width: 100%; display: flex; flex-wrap: wrap;" v-for="(zlDetailList, index) in form.zlDetailList" :key="index">
+                <div style="width: 100%; display: flex; flex-wrap: wrap;"
+                  v-for="(zlDetailList, index) in form.zlDetailList" :key="index">
                   <el-form-item label="璧峰鏃ユ湡" :prop="'zlDetailList.' + index + '.time'" :rules="{
                     required: true, message: '璇烽�夋嫨', trigger: 'blur'
                   }">
-                    <el-date-picker type="daterange" v-model="zlDetailList.time" @change="getDate1($event, index)" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
+                    <el-date-picker type="daterange" v-model="zlDetailList.time" @change="getDate1($event, index)"
+                      value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
                   </el-form-item>
                   <el-form-item label="鍚堝悓鍗曚环" :prop="'zlDetailList.' + index + '.price'" :rules="{
                     required: true, message: '璇疯緭鍏�', trigger: 'blur'
                   }">
                     <el-input placeholder="璇疯緭鍏�" v-model="zlDetailList.price" @input="clearzl" class="input-with-select">
-                      <el-select v-model="zlDetailList.circleType" @change="clearzl" style="width: 150px;" slot="append" placeholder="璇烽�夋嫨">
-                        <el-option v-for="(item, index) in unitOps" :key="index" :value="item.value" :label="item.name"></el-option>
+                      <el-select v-model="zlDetailList.circleType" @change="clearzl" style="width: 150px;" slot="append"
+                        placeholder="璇烽�夋嫨">
+                        <el-option v-for="(item, index) in unitOps" :key="index" :value="item.value"
+                          :label="item.name"></el-option>
                       </el-select>
                     </el-input>
                   </el-form-item>
@@ -161,7 +168,8 @@
                   }">
                     <div style="display: flex; align-items: center; justify-content: space-between;">
                       <el-input v-model="zlDetailList.advanceDays" @input="clearzl" placeholder="璇疯緭鍏�" v-trim />
-                      <el-link :underline="false" type="danger" @click="deleZl(index)" style="margin-left: 20px; flex-shrink: 0;">鍒犻櫎</el-link>
+                      <el-link :underline="false" type="danger" @click="deleZl(index)"
+                        style="margin-left: 20px; flex-shrink: 0;">鍒犻櫎</el-link>
                     </div>
                   </el-form-item>
                 </div>
@@ -185,24 +193,24 @@
           </el-table-column>
           <el-table-column label="鏈熸暟" align="center" show-overflow-tooltip>
             <template slot-scope="{row}">
-              <el-tag type="success" v-if="row.sortnum > 0">{{row.sortnum}}</el-tag>
+              <el-tag type="success" v-if="row.sortnum > 0">{{ row.sortnum }}</el-tag>
             </template>
           </el-table-column>
           <el-table-column label="鍖洪棿" align="center" show-overflow-tooltip>
             <template slot-scope="{row}">
-              {{row.startDate}} ~ {{row.endDate}}
+              {{ row.startDate }} ~ {{ row.endDate }}
             </template>
           </el-table-column>
           <el-table-column prop="planPayDate" label="浠樻鏃�" align="center" show-overflow-tooltip />
           <el-table-column label="搴旀敹" align="center" show-overflow-tooltip>
             <template slot-scope="{row}">
-              {{row.receivableFee}}鍏�
+              {{ row.receivableFee }}鍏�
             </template>
           </el-table-column>
         </el-table>
         <div class="total">
           <span>鎬昏</span>
-          <div>璐圭敤搴旀敹鎬昏锛歿{zlPrice}}鍏冿紝鎶奸噾搴旀敹鎬昏锛歿{form.zlDeposit}}鍏�</div>
+          <div>璐圭敤搴旀敹鎬昏锛歿{ zlPrice }}鍏冿紝鎶奸噾搴旀敹鎬昏锛歿{ form.zlDeposit }}鍏�</div>
         </div>
       </div>
       <!--   鐗╀笟鏉℃   -->
@@ -217,7 +225,8 @@
                 </el-form-item>
                 <el-form-item label="浠樻鏂瑰紡" prop="wyPayType">
                   <el-select v-model="form.wyPayType" @change="changePayType1" placeholder="璇烽�夋嫨">
-                    <el-option v-for="(item, index) in payMethods" :key="index" :value="item.value" :label="item.name"></el-option>
+                    <el-option v-for="(item, index) in payMethods" :key="index" :value="item.value"
+                      :label="item.name"></el-option>
                   </el-select>
                 </el-form-item>
                 <el-form-item label="鍏嶇鏈�" prop="wyDate">
@@ -230,18 +239,22 @@
                 <el-button type="text" size="medium" @click="addWy">澧炲姞</el-button>
               </div>
               <div class="list">
-                <div style="width: 100%; display: flex; flex-wrap: wrap;" v-for="(wyDetailList, index) in form.wyDetailList" :key="index">
+                <div style="width: 100%; display: flex; flex-wrap: wrap;"
+                  v-for="(wyDetailList, index) in form.wyDetailList" :key="index">
                   <el-form-item label="璧峰鏃ユ湡" :prop="'wyDetailList.' + index + '.time'" :rules="{
                     required: true, message: '璇疯緭鍏�', trigger: 'blur'
                   }">
-                    <el-date-picker type="daterange" v-model="wyDetailList.time" @change="getDate2($event, index)" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
+                    <el-date-picker type="daterange" v-model="wyDetailList.time" @change="getDate2($event, index)"
+                      value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
                   </el-form-item>
                   <el-form-item label="鍚堝悓鍗曚环" :prop="'wyDetailList.' + index + '.price'" :rules="{
                     required: true, message: '璇疯緭鍏�', trigger: 'blur'
                   }">
                     <el-input placeholder="璇疯緭鍏�" @input="clearwy" v-model="wyDetailList.price">
-                      <el-select v-model="wyDetailList.circleType" @change="clearwy" style="width: 150px;" slot="append" placeholder="璇烽�夋嫨">
-                        <el-option v-for="(item, index) in unitOps1" :key="index" :value="item.value" :label="item.name"></el-option>
+                      <el-select v-model="wyDetailList.circleType" @change="clearwy" style="width: 150px;" slot="append"
+                        placeholder="璇烽�夋嫨">
+                        <el-option v-for="(item, index) in unitOps1" :key="index" :value="item.value"
+                          :label="item.name"></el-option>
                       </el-select>
                     </el-input>
                   </el-form-item>
@@ -250,7 +263,8 @@
                   }">
                     <div style="display: flex; align-items: center; justify-content: space-between;">
                       <el-input v-model="wyDetailList.advanceDays" @input="clearwy" placeholder="璇疯緭鍏�" v-trim />
-                      <el-link :underline="false" type="danger" @click="deleWy(index)" style="margin-left: 20px; flex-shrink: 0;">鍒犻櫎</el-link>
+                      <el-link :underline="false" type="danger" @click="deleWy(index)"
+                        style="margin-left: 20px; flex-shrink: 0;">鍒犻櫎</el-link>
                     </div>
                   </el-form-item>
                 </div>
@@ -274,32 +288,33 @@
           </el-table-column>
           <el-table-column label="鏈熸暟" align="center" show-overflow-tooltip>
             <template slot-scope="{row}">
-              <el-tag type="success" v-if="row.sortnum > 0">{{row.sortnum}}</el-tag>
+              <el-tag type="success" v-if="row.sortnum > 0">{{ row.sortnum }}</el-tag>
             </template>
           </el-table-column>
           <el-table-column label="鍖洪棿" align="center" show-overflow-tooltip>
             <template slot-scope="{row}">
-              {{row.startDate}} ~ {{row.endDate}}
+              {{ row.startDate }} ~ {{ row.endDate }}
             </template>
           </el-table-column>
           <el-table-column prop="planPayDate" label="浠樻鏃�" align="center" show-overflow-tooltip />
           <el-table-column prop="receivableFee" label="搴旀敹" align="center" show-overflow-tooltip>
             <template slot-scope="{row}">
-              {{row.receivableFee}}鍏�
+              {{ row.receivableFee }}鍏�
             </template>
           </el-table-column>
         </el-table>
         <div class="total">
           <span>鎬昏</span>
-          <div>璐圭敤搴旀敹鎬昏锛歿{wyPrice}}鍏冿紝鎶奸噾搴旀敹鎬昏锛歿{form.wyDeposit}}鍏�</div>
+          <div>璐圭敤搴旀敹鎬昏锛歿{ wyPrice }}鍏冿紝鎶奸噾搴旀敹鎬昏锛歿{ form.wyDeposit }}鍏�</div>
         </div>
       </div>
     </div>
     <div class="window__footer">
       <slot name="footer">
-        <el-button @click="confirm" :loading="confirmWorking" type="primary">{{activeTabs === 0 ? '涓嬩竴姝�' : '鎻愪氦'}}</el-button>
+        <el-button @click="confirm" :loading="confirmWorking" type="primary">{{ activeTabs === 0 ? '涓嬩竴姝�' :
+          '鎻愪氦'}}</el-button>
         <slot name="btns" />
-        <el-button @click="close">{{activeTabs === 0 ? '杩斿洖' : '涓婁竴姝�'}}</el-button>
+        <el-button @click="close">{{ activeTabs === 0 ? '杩斿洖' : '涓婁竴姝�' }}</el-button>
       </slot>
     </div>
     <!-- 閫夋嫨绉熷 -->
@@ -316,7 +331,7 @@
 import { ywList } from '@/api/customer'
 import { getUserList } from '@/api/system/user'
 import { getProjectList, tree } from '@/api/project/ywProject'
-import { companyList } from '@/api/company'
+import {companyListConstract as companyList } from '@/api/company'
 import { Message, Loading } from 'element-ui'
 import { mapState } from 'vuex'
 export default {
@@ -328,7 +343,7 @@
   computed: {
     ...mapState(['userInfo'])
   },
-  data () {
+  data() {
     return {
       title: '鍒涘缓鍚堝悓',
       activeTabs: 0,
@@ -347,7 +362,7 @@
         memberId: '',
         memberName: '',
         fileList: [],
-  
+
         zlDeposit: '',
         zlPayType: '',
         zlFreeStartDate: '',
@@ -363,7 +378,8 @@
             advanceDays: ''
           }
         ],
-  
+
+
         wyDeposit: '',
         wyPayType: '',
         wyFreeStartDate: '',
@@ -379,17 +395,17 @@
             advanceDays: ''
           }
         ],
-  
+
         roomIds: []
       },
-      
+
       ids: [],
-  
+
       zlList: [],
       wyList: [],
-      
+
       rules,
-  
+
       contactsList: [],
 
       loadingInstance: null,
@@ -432,12 +448,13 @@
         { name: '鍏�/m虏路骞�', value: 2 },
         { name: '鍏�/鍦�', value: 6 },
       ],
-      
+
+
       houseLvThree: []
     }
   },
   methods: {
-    open (title, target) {
+    open(title, target) {
       this.title = title
       this.ids = []
       this.houseList = []
@@ -486,7 +503,7 @@
         // this.getHouseTree()
       })
     },
-    changePayType (e) {
+    changePayType(e) {
       if (e === 0) {
         this.unitOps = [
           { name: '鍏�/m虏路澶�', value: 0 },
@@ -514,7 +531,7 @@
       }
       this.clearzl()
     },
-    changePayType1 (e) {
+    changePayType1(e) {
       if (e === 0) {
         this.unitOps1 = [
           { name: '鍏�/m虏路澶�', value: 0 },
@@ -543,14 +560,14 @@
       this.clearwy()
     },
     // 鑾峰彇鑱旂郴浜�
-    getYwList () {
+    getYwList() {
       ywList({
         customerId: this.form.renterId
       }).then(res => {
         this.contactsList = res
       })
     },
-    getHouseData () {
+    getHouseData() {
       if (this.form.startDate && this.form.endDate) {
         this.getHouseTree()
         if (this.form.zlDetailList.length === 1) {
@@ -565,33 +582,33 @@
         }
       }
     },
-    changeType (e) {
+    changeType(e) {
       if (e === 0 || e === 2) {
         this.cactiveTabs = 0
       } else if (e === 0 || e === 1) {
         this.cactiveTabs = 1
       }
     },
-    getDayTime (num) {
-      const today = new Date();
-      const year = today.getFullYear();
-      const month = today.getMonth() + 1;
-      const day = today.getDate();
+    getDayTime(num) {
+      const today = new Date()
+      const year = today.getFullYear()
+      const month = today.getMonth() + 1
+      const day = today.getDate()
       if (!num) {
-        return `${year}-${month < 10 ? '0' + month : month}-${day < 10 ? '0' + day : day}`;
+        return `${year}-${month < 10 ? '0' + month : month}-${day < 10 ? '0' + day : day}`
       } else {
-        return `${year + 1}-${month < 10 ? '0' + month : month}-${day < 10 ? '0' + day - 1 : day - 1}`;
+        return `${year + 1}-${month < 10 ? '0' + month : month}-${day < 10 ? '0' + day - 1 : day - 1}`
       }
     },
-    clearzl () {
+    clearzl() {
       this.zlList = []
       this.zlPrice = ''
     },
-    clearwy () {
+    clearwy() {
       this.wyList = []
       this.wyPrice = ''
     },
-    confirm () {
+    confirm() {
       var that = this
       if (this.activeTabs === 0) {
         this.$refs.form.validate((valid) => {
@@ -633,7 +650,7 @@
         }
       }
     },
-    submit () {
+    submit() {
       // 璋冪敤鏂板缓鎺ュ彛
       this.isWorking = true
       create({ ...this.form })
@@ -646,26 +663,26 @@
           this.isWorking = false
         })
     },
-    getDate1 (e, index) {
+    getDate1(e, index) {
       this.form.zlDetailList[index].startDate = e[0]
       this.form.zlDetailList[index].endDate = e[1]
       this.clearzl()
     },
-    getDate2 (e, index) {
+    getDate2(e, index) {
       this.form.wyDetailList[index].startDate = e[0]
       this.form.wyDetailList[index].endDate = e[1]
       this.clearwy()
     },
-    checkHouseRoom (a, b) {
+    checkHouseRoom(a, b) {
       this.ids = b.checkedKeys
       let arr = b.checkedKeys.map(item => {
         if (item.split('-')[0] == 3) {
           return Number(item.split('-')[1])
         }
       })
-      this.form.roomIds = arr.filter(item => item !== undefined);
+      this.form.roomIds = arr.filter(item => item !== undefined)
     },
-    getHouseTree () {
+    getHouseTree() {
       tree({
         startDate: this.form.startDate,
         endDate: this.form.endDate,
@@ -681,14 +698,14 @@
     },
     addParamToArray(arr) {
       for (let i = 0; i < arr.length; i++) {
-        const currentItem = arr[i].projectDataVOList;
+        const currentItem = arr[i].projectDataVOList
         arr[i].idd = arr[i].lv + '-' + arr[i].id
         if (currentItem.length > 0) {
-          this.addParamToArray(currentItem);
+          this.addParamToArray(currentItem)
         }
       }
     },
-    generateZL () {
+    generateZL() {
       getBillList({ ...this.form, billType: 0 })
         .then(res => {
           let zlPrice = 0
@@ -703,7 +720,7 @@
           this.zlList = arr
         })
     },
-    generateWY () {
+    generateWY() {
       getBillList({ ...this.form, billType: 1 })
         .then(res => {
           this.wy = true
@@ -719,7 +736,7 @@
           this.wyList = arr
         })
     },
-    addZl () {
+    addZl() {
       this.form.zlDetailList.push({
         circleType: 0,
         startDate: this.form.startDate,
@@ -729,7 +746,7 @@
         advanceDays: ''
       })
     },
-    addWy () {
+    addWy() {
       this.form.wyDetailList.push({
         circleType: 0,
         startDate: this.form.startDate,
@@ -749,62 +766,66 @@
       this.form.wyDetailList.splice(index, 1)
       this.clearwy()
     },
-    getZLDate (e) {
+    getZLDate(e) {
       this.form.zlFreeStartDate = e[0]
       this.form.zlFreeEndDate = e[1]
       this.clearzl()
     },
-    getWYDate (e) {
+    getWYDate(e) {
       this.form.wyFreeStartDate = e[0]
       this.form.wyFreeEndDate = e[1]
       this.clearwy()
     },
-    getTenant (row) {
+    getTenant(row) {
       this.form.renterId = row.id
       this.form.renterName = row.name
       this.form.memberId = ''
       this.form.memberName = ''
       this.getYwList()
     },
-    dele (imgaddr) {
+    dele(imgaddr) {
       this.form.fileList.forEach((item, index) => {
         if (imgaddr === item.imgaddr) {
           this.form.fileList.splice(index, 1)
         }
       })
     },
-    getUser () {
+    getUser() {
       getUserList({})
         .then(res => {
           this.agentList = res
         })
     },
-    getProject () {
+    getProject() {
       getProjectList({})
         .then(res => {
-          this.projectList = res
+          this.projectList = res || []
+          if (this.projectList.length > 0) {
+            this.$set(this.form, 'projectId', this.projectList[0].id)
+            this.getHouseTree()
+          }
         })
     },
-    getCompany () {
+    getCompany() {
       companyList({ type: 2 })
         .then(res => {
           this.comparyList = res
           this.form.companyId = res[0].id
         })
     },
-    tabsClick (val) {
+    tabsClick(val) {
       this.activeTabs = val
     },
-    ctabsClick (val) {
+    ctabsClick(val) {
       this.cactiveTabs = val
     },
-    handleRent () {
+    handleRent() {
       this.$refs.MemberSearchRef.open()
     },
-    houseChange (e) {
+    houseChange(e) {
       console.log(e)
     },
-    beforeUpload (file) {
+    beforeUpload(file) {
       this.loadingInstance = Loading.service({
         lock: true,
         text: 'Loading',
@@ -812,14 +833,14 @@
         background: 'rgba(0, 0, 0, 0.7)'
       })
     },
-    uploadError () {
+    uploadError() {
       this.$nextTick(() => { // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂�
         if (this.loadingInstance) {
           this.loadingInstance.close()
         }
       })
     },
-    getDay () {
+    getDay() {
       const now = new Date()
       const year = now.getFullYear()
       const month = now.getMonth() + 1 // 鍔�1浣垮叾浠�1寮�濮�
@@ -827,9 +848,9 @@
       const hours = now.getHours()
       const minutes = now.getMinutes()
       const seconds = now.getSeconds()
-      return `${year}-${month.toString().padStart(2, '0')}-${day.toString().padStart(2, '0')} ${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`;
+      return `${year}-${month.toString().padStart(2, '0')}-${day.toString().padStart(2, '0')} ${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`
     },
-    uploadAvatarSuccess (file) {
+    uploadAvatarSuccess(file) {
       this.$nextTick(() => {
         if (this.loadingInstance) {
           this.loadingInstance.close()
@@ -838,7 +859,7 @@
       const item = file.data[0]
       this.form.fileList.push({ ...item, fileurl: item.imgaddr, name: item.originname, userName: this.userInfo.realname, createTime: this.getDay() })
     },
-    close () {
+    close() {
       if (this.activeTabs === 0) {
         this.$emit('close')
         this.visible = false
@@ -854,6 +875,7 @@
 
 <style lang="scss" scoped>
 @import '@/assets/style/variables.scss';
+
 .fixed {
   background: #ffffff;
   position: sticky;
@@ -976,6 +998,7 @@
   display: flex;
   align-items: center;
   justify-content: space-between;
+
   span {
     font-weight: 500;
     font-size: 14px;
diff --git a/admin/src/views/project/components/OperaYwBuildingWindow.vue b/admin/src/views/project/components/OperaYwBuildingWindow.vue
index 83fecbe..f1387b7 100644
--- a/admin/src/views/project/components/OperaYwBuildingWindow.vue
+++ b/admin/src/views/project/components/OperaYwBuildingWindow.vue
@@ -89,7 +89,7 @@
     })
   },
   methods: {
-    open (title, target,type) {
+    open(title, target, type) {
       this.title = title
       this.visible = true
       this.getProject()
@@ -98,14 +98,14 @@
         this.$nextTick(() => {
           this.$refs.form.resetFields()
           this.form[this.configData['field.id']] = null
-          this.form.type=type
+          this.form.type = type
         })
         return
       }
       // 缂栬緫
       this.$nextTick(() => {
-        console.log('----');
-        
+        console.log('----')
+
         this.getDetail(target.id)
       })
     },
@@ -117,6 +117,10 @@
     getProject() {
       getProjectList({}).then(res => {
         this.projectList = res || []
+        if (this.projectList.length > 0) {
+          this.$set(this.form, 'projectId', this.projectList[0].id)
+          // this.changeProject(this.projectList[0].id)
+        }
       })
     }
   }
diff --git a/admin/src/views/project/components/OperaYwRoomWindow.vue b/admin/src/views/project/components/OperaYwRoomWindow.vue
index dc0c159..1ed0a57 100644
--- a/admin/src/views/project/components/OperaYwRoomWindow.vue
+++ b/admin/src/views/project/components/OperaYwRoomWindow.vue
@@ -101,6 +101,8 @@
       this.title = title
       this.visible = true
       this.getProject()
+      this.buildList = []
+      this.floorList = []
       // 鏂板缓缁勭粐
       if (target == null) {
         this.$nextTick(() => {
@@ -115,8 +117,8 @@
         this.getDetail(target.id)
       })
     },
-    confirm () {
-      if(!this.form.feeArea){
+    confirm() {
+      if (!this.form.feeArea) {
         this.form.feeArea = this.form.rentArea
       }
       if (this.form.id == null || this.form.id === '') {
@@ -143,6 +145,10 @@
     getProject() {
       getProjectList({}).then(res => {
         this.projectList = res || []
+        if (this.projectList.length > 0) {
+          this.$set(this.form, 'projectId', this.projectList[0].id)
+          this.changeProject(this.projectList[0].id)
+        }
       })
 
     },
@@ -150,6 +156,9 @@
       this.form.buildingId = ''
       getBuildList({ projectId: e }).then(res => {
         this.buildList = res || []
+        // if(this.buildList.length > 0){
+        //   this.form.buildingId = this.buildList[0].id
+        // }
       })
     },
     changeBuild(e) {
diff --git a/admin/src/views/workorder/components/OperaYwWorkorderWindow.vue b/admin/src/views/workorder/components/OperaYwWorkorderWindow.vue
index 4f8ce99..c97fbf4 100644
--- a/admin/src/views/workorder/components/OperaYwWorkorderWindow.vue
+++ b/admin/src/views/workorder/components/OperaYwWorkorderWindow.vue
@@ -140,7 +140,7 @@
       this.visible = true
       this.getProject()
       this.getCate()
-      // 鏂板缓
+      // 鏂板缓 
       if (target == null) {
         this.form = {
           id: null,
@@ -192,7 +192,11 @@
     },
     getProject() {
       getProjectList({}).then(res => {
-        this.projectList = res
+        this.projectList = res || []
+        if(this.projectList.length > 0){
+          this.$set(this.form, 'projectId', this.projectList[0].id)
+          this.getBuild(this.projectList[0].id)
+        }
       })
     },
     getBuild(projectId) {
@@ -200,7 +204,11 @@
       this.$set(this.form, 'floorId', '')
       this.$set(this.form, 'roomId', '')
       getBuildList({ projectId }).then(res => {
-        this.buildList = res
+        this.buildList = res || []
+        // if(projectId && this.buildList.length > 0){
+        //   this.$set(this.form, 'buildingId', this.buildList[0].id)
+        //   this.changeBuild(this.buildList[0].id)
+        // }
       })
     },
     changeBuild(e) {
diff --git a/admin/src/views/workorder/components/detail.vue b/admin/src/views/workorder/components/detail.vue
index a6908d4..f2e7d5f 100644
--- a/admin/src/views/workorder/components/detail.vue
+++ b/admin/src/views/workorder/components/detail.vue
@@ -49,11 +49,21 @@
             <div class="value" v-if="info.fileList == null || !info.fileList.length">鏃�</div>
             <div class="value" v-if="info.fileList != null && info.fileList.length">
               <div v-for="item in info.fileList" :key="item.id" style="display: inline;margin-right: 20px">
-                <video v-if="item.fileurlFull && item.fileurlFull.endsWith('.mp4')" ref="videoRef" controls
-                  preload="auto" style="width: 80px;height: 80px;object-fit: contain;" :src="item.fileurlFull" />
-                <el-image v-else-if="item.fileurlFull" style="width:80px; height: 80px" :src="item.fileurlFull"
+                <!-- <video v-if="item.fileurlFull && item.fileurlFull.endsWith('.mp4')" ref="videoRef" controls
+                  preload="auto" style="width: 80px;height: 80px;object-fit: contain;" :src="item.fileurlFull" /> -->
+                <el-image v-if="item.type == 0" style="width:80px; height: 80px" :src="item.fileurlFull"
                   :preview-src-list="[item.fileurlFull]">
                 </el-image>
+              </div>
+            </div>
+          </div>
+          <div v-if="info.fileList && info.fileList.length > 0 && info.fileList.filter(i => i.type == 1).length > 0"
+            class="item max">
+            <div class="la">闂瑙嗛</div>
+            <div class="value">
+              <div v-for="item in info.fileList" :key="item.id" style="display: inline;margin-right: 20px">
+                <video v-if="item.type == 1" ref="videoRef" controls preload="auto"
+                  style="width: 240px;height: 160px;object-fit: contain;" :src="item.fileurlFull" />
               </div>
             </div>
           </div>
@@ -61,7 +71,7 @@
         <div class="side">
           <div class="title">宸ュ崟娴佽浆璁板綍</div>
           <div class="flow_list">
-            <div class="item" v-for="item,i in info.logList">
+            <div class="item" v-for="item, i in info.logList">
               <div class="icon">
                 <div class="dian"></div>
                 <div v-if="i < info.logList.length - 1" class="line"></div>
@@ -76,7 +86,9 @@
           </div>
         </div>
       </div>
-      <div class="title">{{ info.dealStatus == 0 || info.dealStatus == 1 ? '宸ュ崟澶勭悊' : '澶勭悊缁撴灉' }}</div>
+      <div class="title"
+        v-if="info.dealStatus == 2 || info.dealStatus == 0 || (info.dealStatus == 1 && info.dealUserId === userInfo.id)">
+        {{ info.dealStatus == 0 || info.dealStatus == 1 ? '宸ュ崟澶勭悊' : '澶勭悊缁撴灉' }}</div>
       <el-form :model="param" ref="form" :rules="rules">
         <template v-if="info.dealStatus == 0 || info.dealStatus == null">
           <el-form-item label="澶勭悊鏂瑰紡" prop="dealType">
@@ -84,7 +96,7 @@
               <el-radio v-model="param.dealType" :label="0">鎸囨淳</el-radio>
               <el-radio v-model="param.dealType" :label="1">鐩存帴鍥炲</el-radio>
             </div>
-          </el-form-item> 
+          </el-form-item>
           <el-form-item v-if="param.dealType == 0" label="鎸囨淳缁�" prop="dealUserId">
             <el-select v-model="param.dealUserId" clearable filterable class="w400">
               <el-option v-for="item in staffList" :label="item.realname" :value="item.id"></el-option>
@@ -104,8 +116,8 @@
           </el-form-item>
           <el-form-item label="鐜板満鍥剧墖">
             <div class="file_list">
-              <el-upload class="avatar-uploader" :data="uploadData" :auto-upload="true"
-                :action="uploadImgUrl" :show-file-list="false" :on-success="uploadAvatarSuccess" :on-error="uploadError"
+              <el-upload class="avatar-uploader" :data="uploadData" :auto-upload="true" :action="uploadImgUrl"
+                :show-file-list="false" :on-success="uploadAvatarSuccess" :on-error="uploadError"
                 :before-upload="beforeUpload">
                 <div class="upload_wrap">
                   <i class="el-icon-plus avatar-uploader-icon"></i>
@@ -223,8 +235,8 @@
       const { id } = this
       detailById(id).then(res => {
         this.info = res
-        if(this.info.dealStatus == 1){
-          this.$set(this.param, 'getDate',dayjs().format('YYYY-MM-DD HH:mm:ss') )
+        if (this.info.dealStatus == 1) {
+          this.$set(this.param, 'getDate', dayjs().format('YYYY-MM-DD HH:mm:ss'))
         }
       })
     },
@@ -316,13 +328,15 @@
     }
 
     .primaryColor {
-      border: 1px solid rgba(63, 126, 239,.2);
-      background-color: rgba(63, 126, 239,.2);
+      border: 1px solid rgba(63, 126, 239, .2);
+      background-color: rgba(63, 126, 239, .2);
     }
-    .green{
+
+    .green {
       background-color: rgba(83, 183, 148, .2);
       border: 1px solid rgba(83, 183, 148, .2);
     }
+
     .gray {
       color: #333333;
       background-color: rgba(128, 128, 128, .2);
@@ -352,7 +366,8 @@
       width: 100%;
       display: flex;
       align-items: center;
-      .la{
+
+      .la {
         margin-bottom: 0;
         width: 72px;
       }
@@ -362,38 +377,47 @@
       width: 100%;
     }
   }
-  .main_content{
+
+  .main_content {
     display: flex;
-    .side{
+
+    .side {
       width: 370px;
-      .title{
+
+      .title {
         font-size: 14px;
       }
-      .flow_list{
-        .item{
+
+      .flow_list {
+        .item {
           display: flex;
-          .icon{
+
+          .icon {
             width: 28px;
             display: flex;
             flex-direction: column;
             align-items: center;
-            .dian{
+
+            .dian {
               width: 12px;
               height: 12px;
               border-radius: 50%;
               background-color: #e89e42;
             }
-            .line{
+
+            .line {
               width: 1px;
               height: 100%;
               background-color: #e89e42;
             }
           }
-          .content{
+
+          .content {
             font-size: 12px;
             color: #999999;
             padding-bottom: 12px;
-            .name{
+
+            .name {
               font-size: 13px;
               color: #333333;
             }
diff --git a/admin/src/views/workorder/workorderList.vue b/admin/src/views/workorder/workorderList.vue
index a2b0b1e..f3ad3de 100644
--- a/admin/src/views/workorder/workorderList.vue
+++ b/admin/src/views/workorder/workorderList.vue
@@ -103,7 +103,6 @@
       showDetail: false,
       searchForm: {
         selDate: [],
-        areaType: '',
         areaIds: '',
         projectId: '',
         buildingId: '',
diff --git a/h5/pages/index.vue b/h5/pages/index.vue
index 9d3409d..81b4ef6 100644
--- a/h5/pages/index.vue
+++ b/h5/pages/index.vue
@@ -1,6 +1,6 @@
 <template>
 	<view class="main_app">
-		<view class="hone_name title">{{ userInfo.realname }}锛屾杩庣櫥褰�</view>
+		<view class="hone_name title">{{ userInfo.realname }}锛屾杩庣櫥褰曪綖</view>
 		<view class="home_con">
 			<image class="bg" src="@/static/home/home_bg.jpg" mode=""></image>
 			<view class="h1">闃滃畞鏂囦綋涓績</view>
@@ -24,14 +24,15 @@
 	</view>
 </template>
 
-<script>
-	import { logoutPost } from '@/api'
+<script>
+	import {
+		logoutPost
+	} from '@/api'
 	export default {
 		data() {
 			return {
 				userInfo: uni.getStorageSync('userInfo') || {},
-				list1: [
-					{
+				list1: [{
 						name: '鏂板宸ュ崟',
 						url: '/pages/workOrder/edit',
 						img: require('@/static/home/ic_xinzenggongdan@2x.png'),
@@ -74,12 +75,15 @@
 					url: item.url
 				})
 			},
-			loginOut() {
-				logoutPost()
-				this.$store.commit('empty')
-				uni.redirectTo({
-					url: '/pages/login'
-				})
+			loginOut() {
+				logoutPost().then(res => {
+					this.$store.commit('empty')
+					setTimeout(() => {
+						uni.redirectTo({
+							url: '/pages/login'
+						})
+					}, 300)
+				})
 				// window.location.href= 'https://zhcg.fnwtzx.com/fn_h5'
 			},
 
diff --git a/h5/pages/login.vue b/h5/pages/login.vue
index 81323ed..b742a89 100644
--- a/h5/pages/login.vue
+++ b/h5/pages/login.vue
@@ -45,7 +45,7 @@
 					code: ''
 				},
 				downTime: 0,
-				code: ''
+				code: '111'
 				// code: ''
 			}
 		},
diff --git a/h5/pages/operation/device.vue b/h5/pages/operation/device.vue
index 9377ebb..414be7b 100644
--- a/h5/pages/operation/device.vue
+++ b/h5/pages/operation/device.vue
@@ -83,7 +83,8 @@
 	import {
 		uploadUrl,
 		ywDevicePost,
-		ywDeviceCreate
+		ywDeviceCreate,
+		getPointRecordByCode
 	} from '@/api'
 	import dayjs from 'dayjs';
 	import {
@@ -122,7 +123,7 @@
 			},
 			handleP() {
 				const {
-					param,
+					param, 
 					fileList
 				} = this
 				ywDeviceCreate({
@@ -285,8 +286,19 @@
 							},
 							(decodeText, decodeResult) => {
 								if (decodeText) { //杩欓噷decodeText灏辨槸閫氳繃鎵弿浜岀淮鐮佸緱鍒扮殑鍐呭
-									this.$set(this.param, 'deviceCode', decodeText)
-									this.stopScan(); //鍏抽棴鎵爜鍔熻兘
+									this.$set(this.param, 'deviceCode', decodeText)
+									this.stopScan(); //鍏抽棴鎵爜鍔熻兘
+									getPointRecordByCode({
+										// taskId: this.id,
+										pointCode: decodeText
+									}).then(ress => {
+										if (ress.data) {
+											console.log('ress', ress.data);
+										} else {
+											this.showToast('鏈尮閰嶅埌宸℃鐐�,璇烽噸鏂版壂鎻�')
+										}
+									})
+									
 								}
 							},
 							(err) => {
diff --git a/h5/pages/polling/detail.vue b/h5/pages/polling/detail.vue
index 383395d..45ad7fb 100644
--- a/h5/pages/polling/detail.vue
+++ b/h5/pages/polling/detail.vue
@@ -34,7 +34,10 @@
 				<view class="content">
 					<view class="head">
 						<view>{{item.pointName}}</view>
-						<view class="status" :class="{ gray: item.status == 1 }">{{ item.status == 1 ? '宸插贰妫�' : '寰呭贰妫�' }}</view>
+						<view class="status" :class="{ gray: item.status == 1 }">
+							<image v-if="item.status == 1" src="@/static/plan_ic_finish@2x.png" class="icon" mode=""></image>
+							<text>{{ item.status == 1 ? '宸插贰妫�' : '寰呭贰妫�' }}</text>
+						</view>
 					</view>
 					<template v-if="item.status == 1">
 						<view class="line">
@@ -43,7 +46,10 @@
 						</view>
 						<view class="line">
 							<view class="la">宸℃鏃堕棿锛�</view>
-							<view class="val">{{item.dealDate}}</view>
+							<view class="val">
+								<text>{{item.dealDate}}</text>
+								<text v-if="item.status == 1" class="detail">鏌ョ湅璇︽儏</text>
+							</view>
 						</view>
 					</template>
 					<view class="desc" v-else>{{item.content}}</view>
@@ -100,11 +106,11 @@
 		},
 		onLoad(option) {
 			this.id = option.id
+			// this.getDetail()
+		},
+		onShow() {
 			this.getDetail()
 		},
-		// onShow() {
-		// 	this.getDetail()
-		// },
 		methods: {
 			openSc() {
 				this.isScaning = true;
@@ -164,7 +170,7 @@
 					this.info = res.data
 					let time = new Date(res.data.startDate).getTime()
 					console.log('res.data.startDate', new Date().getTime());
-					this.flag = new Date().getTime() > time
+					this.flag = new Date().getTime() > time && (this.info.status == 0 || this.info.status == 1)
 				})
 				ywPatrolTaskRecord({
 					capacity: 999,
@@ -268,14 +274,15 @@
 			margin-bottom: 20rpx;
 
 			.la {
-				color: #666666;
+				color: #666666;
+				
 			}
 		}
 
 		.list {
-			height: calc(100vh - 720rpx);
-			overflow: auto;
-
+			height: calc(100vh - 490rpx);
+			overflow: auto;
+			padding-bottom: 160rpx;
 			.item {
 				width: 690rpx;
 				height: 188rpx;
@@ -288,7 +295,18 @@
 				margin-bottom: 20rpx;
 
 				.line {
-					margin-bottom: 10rpx;
+					margin-bottom: 10rpx;
+					width: 100%;
+					.val{
+						display: flex;
+						justify-content: space-between;
+						align-items: center;
+						flex: 1;
+						.detail{
+							color: $primaryColor;
+							font-size: 26rpx;
+						}
+					}
 				}
 
 				.icon {
@@ -311,9 +329,19 @@
 						margin-bottom: 16rpx;
 
 						.status {
-							offset-anchor: 28rpx;
+							font-size: 28rpx;
 							color: $primaryColor;
-							font-weight: 400;
+							font-weight: 400;
+							display: flex;
+							align-items: center;
+							.icon{
+								width: 40rpx;
+								height: 40rpx;
+								// border-radius: 50%;
+								// overflow: hidden;
+								background: none;
+							}
+							
 						}
 
 						.gray {
diff --git a/h5/pages/polling/point.vue b/h5/pages/polling/point.vue
index 4711fbc..1288d07 100644
--- a/h5/pages/polling/point.vue
+++ b/h5/pages/polling/point.vue
@@ -31,7 +31,7 @@
 					<video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video>
 				</view>
 			</view>
-			<view class="desc">{{ info.dealInfo }}</view>
+			<view v-if="info.dealInfo" class="desc">{{ info.dealInfo }}</view>
 			<view class="line line_s">
 				<view class="la">宸℃浜猴細</view>
 				<view class="val">{{ info.realname }}</view>
@@ -78,11 +78,12 @@
 					</view>
 				</view>
 
-				<view class="label">澶勭悊璇存槑</view>
-				<textarea v-model="handleParam.dealInfo" placeholder="璇峰~鍐欏鐞嗚鏄�" placeholder-class="placeholder9" />
+				<view class="label" style="margin-bottom: 10rpx;">澶勭悊璇存槑</view>
+				<textarea v-model="handleParam.dealInfo" :maxlength="-1" placeholder="璇峰~鍐欏鐞嗚鏄�"
+					placeholder-class="placeholder9" />
 			</view>
 		</view>
-		<view class="sub_btn" @click="onSubmit">纭宸℃</view>
+		<view v-if="info.status == 0" class="sub_btn" @click="onSubmit">纭宸℃</view>
 		<!--  -->
 		<u-popup :show="showUpload" @close="showUpload = false" closeOnClickOverlay>
 			<view class="sel_upload_wrap">
@@ -149,34 +150,38 @@
 					fileList,
 					id
 				} = this
-				if (handleParam.dealStatus == 1) {
-					return uni.showModal({
-						title: '娓╅Θ鎻愮ず',
-						content: '宸℃缁撴灉寮傚父锛屾槸鍚﹀墠寰�鎻愪氦宸ュ崟锛�',
-						success: function(res) {
-							if (res.confirm) {
-								patrolData({
-									...handleParam,
-									multifileList: fileList,
-									id,
-								}).then(res => {
-									this.showToast('鎿嶄綔鎴愬姛')
-									uni.navigateBack()
-								})
+				patrolData({
+					...handleParam,
+					multifileList: fileList,
+					id,
+				}).then(res => {
+					if (handleParam.dealStatus == 1) {
+						return uni.showModal({
+							title: '娓╅Θ鎻愮ず',
+							content: '宸℃缁撴灉寮傚父锛屾槸鍚﹀墠寰�鎻愪氦宸ュ崟锛�',
+							success: (res) => {
+								if (res.confirm) {
+									this.showToast('鎿嶄綔鎴愬姛')
+									setTimeout(() => {
+										uni.redirectTo({
+											url: '/pages/workOrder/edit'
+										})
+									}, 300)
+								}else{
+									this.showToast('鎿嶄綔鎴愬姛')
+									setTimeout(() => {
+										uni.navigateBack()
+									}, 300)
+								}
 							}
-						}
-					});
-				} else {
-					patrolData({
-						...handleParam,
-						multifileList: fileList,
-						id,
-					}).then(res => {
+						});
+					} else {
 						this.showToast('鎿嶄綔鎴愬姛')
-						uni.navigateBack()
-					})
-				}
-
+						setTimeout(() => {
+							uni.navigateBack()
+						}, 300)
+					}
+				})
 			},
 			getDetail() {
 				const {
@@ -360,10 +365,11 @@
 	}
 
 	.sub_btn {
-		position: fixed;
-		bottom: 68rpx;
-		left: 40rpx;
+		// position: fixed;
+		// bottom: 68rpx;
+		// left: 40rpx;
 		width: 670rpx;
+		margin-top: 60rpx;
 		height: 88rpx;
 		background: $primaryColor;
 		box-shadow: 0rpx 8rpx 20rpx 0rpx rgba(0, 104, 255, 0.3);
@@ -417,7 +423,7 @@
 		textarea {
 			box-sizing: border-box;
 			width: 690rpx;
-			min-height: 200rpx;
+			min-height: 140rpx;
 			background-color: #f7f7f7;
 			font-size: 28rpx;
 			color: #333333;
diff --git a/h5/pages/polling/task.vue b/h5/pages/polling/task.vue
index 6ba466e..0e72898 100644
--- a/h5/pages/polling/task.vue
+++ b/h5/pages/polling/task.vue
@@ -44,13 +44,17 @@
 						<view class="line" @click="itemClick(item)">鎵ц鏃堕棿锛歿{ item.startDate.slice(11, 16) }} 鑷� {{ item.endDate.slice(11, 16) }}</view>
 						<view class="line">
 							<view @click="itemClick(item)">瀹屾垚鎯呭喌锛歿{item.finishNum || 0}}/{{item.patrolNum}}</view>
-							<view v-if="param.queryStatus == '0,1'" class="btn" @click="openSc(item)">
+							<view v-if="param.queryStatus == '0,1' && item.flag && (item.status == 0 || item.status == 1)" class="btn" @click="openSc(item)">
 								<image src="@/static/side/ic_saoma@2x.png" class="saoma" mode=""></image>
 								<view>鎵爜宸℃</view>
 							</view>
 						</view>
 					</view>
 				</view>
+				<view v-if="list.length == 0" class="empty_wrap">
+					<image src="@/static/empty.png" mode=""></image>
+					<view class="">鏆傛棤鏁版嵁</view>
+				</view>
 			</view>
 		</scroll-view>
 
@@ -93,7 +97,9 @@
 				// activeItem: {}
 			};
 		},
-		onLoad() {
+		onShow() {
+			this.page = 1
+			this.list = []
 			this.getList()
 		},
 		methods: {
@@ -184,7 +190,11 @@
 					page,
 					capacity: 10
 				}).then(res => {
-					this.list = [...this.list, ...res.data.records]
+					this.list = [...this.list, ...res.data.records]
+					this.list.forEach(item => {
+					let time = new Date(item.startDate).getTime()
+					item.flag = new Date().getTime() > time
+					})
 					this.total = res.data.total
 				})
 			}
@@ -272,10 +282,11 @@
 	}
 
 	.scroll_Y {
-		height: calc(100vh - 230rpx);
+		height: calc(100vh - 130rpx);
 	}
 
-	.list {
+	.list {
+		
 		.item {
 			display: flex;
 			// height: 290rpx;
diff --git a/h5/pages/workOrder/detail.vue b/h5/pages/workOrder/detail.vue
index f26e85c..c112a22 100644
--- a/h5/pages/workOrder/detail.vue
+++ b/h5/pages/workOrder/detail.vue
@@ -11,7 +11,12 @@
 			<view class="file_list">
 				<view class="file" v-for="(item,index) in info.fileList">
 					<image v-if="item.type == 0" :src="item.fileurlFull" mode="aspectFill"></image>
-					<video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video>
+					<!-- <video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video> -->
+					<view v-if="item.type == 1" @click="videoClick(item)" class="video_wrap">
+						<video :src="item.fileurlFull" initial-time="0.01" :show-center-play-btn="false" :controls="false"
+							class="video" :enable-progress-gesture="false" autoplay muted />
+						<image src="@/static/play.png" class="play" mode=""></image>
+					</view>
 				</view>
 			</view>
 			<view class="content">
@@ -23,7 +28,7 @@
 					<view class="la">涓婃姤浜猴細</view>
 					<view class="val">{{ info.creatorName }}{{info.creatorCompany ? '-' + info.creatorCompany : ''}}</view>
 				</view>
-				<view class="line"  v-if="info.creatorPhone || info.creatorMobile">
+				<view class="line" v-if="info.creatorPhone || info.creatorMobile">
 					<view class="la">鑱旂郴鐢佃瘽锛�</view>
 					<view class="val">{{ info.creatorMobile || info.creatorPhone }}</view>
 				</view>
@@ -63,7 +68,7 @@
 				<image src="@/static/side/phoneed.png" class="icon"></image>
 				<text>涓婃姤浜�</text>
 			</view>
-			<view class="btn active" @click="isShowHandle = true">鍘诲鐞�</view>
+			<view class="btn active" @click="handleOpen">鍘诲鐞�</view>
 		</view>
 		<!--  -->
 		<u-popup :show="showUpload" @close="showUpload = false" zIndex="10076" closeOnClickOverlay>
@@ -74,8 +79,8 @@
 		</u-popup>
 		<!--  -->
 		<!-- 宸ュ崟澶勭悊 -->
-		<u-popup :show="isShowHandle" :round="10" :safeAreaInsetBottom="true" mode="bottom" closeable
-			@close="isShowHandle = false">
+		<u-popup :show="isShowHandle" :round="10" :safeAreaInsetTop="true" :safeAreaInsetBottom="true" mode="bottom"
+			closeable @close="isShowHandle = false">
 			<view class="appr_modal">
 				<view class="title">宸ュ崟澶勭悊</view>
 				<view class="df_sb">
@@ -118,13 +123,18 @@
 		<u-datetime-picker :minDate="new Date().getTime()" :show="isShowHandleDate" @confirm="confirmHandleDate"
 			@cancel="isShowHandleDate = false" mode="datetime"></u-datetime-picker>
 		<!--  -->
+		<view v-if="videoPlay" class="video_app">
+			<video controls autoplay muted x5-video-player-type="h5" x5-video-player-fullscreen="true" id="myvideo"
+				:src="videoUrl" @fullscreenchange="screenChange"></video>
+			<view class="bg" @click="closeVideo"></view>
+		</view>
 	</view>
 </template>
 
 <script>
 	import {
 		uploadUrl,
-		ywWorkorderD,
+		ywWorkorderD,
 		ywWorkorderDeal
 	} from '@/api'
 	import dayjs from 'dayjs';
@@ -135,10 +145,14 @@
 				info: {},
 				showUpload: false,
 				isShowHandle: false,
-				isShowHandleDate: false,
+				isShowHandleDate: false,
 				userInfo: uni.getStorageSync('userInfo') || {},
 				handleParam: {},
-				dealFileList: []
+				dealFileList: [],
+
+				videoPlay: false,
+				videoContext: null,
+				videoUrl: ''
 			};
 		},
 		onLoad(option) {
@@ -147,25 +161,55 @@
 			this.getDetail()
 		},
 		methods: {
-			onSubmit() {
-				const { handleParam, dealFileList, id } = this
-				if (!handleParam.dealTime) return this.showToast('澶勭悊鏃堕棿涓嶈兘涓虹┖')
-				ywWorkorderDeal({
-					...handleParam,
-					id,
-					dealFileList
-				}).then(res => {
-					if(res.code == 200){
-						this.showToast('鎿嶄綔鎴愬姛')
-						uni.navigateBack()
-					}
+			handleOpen() {
+				this.isShowHandle = true
+				this.$set(this.handleParam, 'dealTime', dayjs().format('YYYY-MM-DD HH:mm:ss'));
+			},
+			videoClick(item) {
+				this.videoPlay = true;
+				this.videoContext = uni.createVideoContext("myvideo", this); // this杩欎釜鏄疄渚嬪璞� 蹇呬紶
+				this.videoUrl = item.fileurlFull;
+				this.videoContext.requestFullScreen();
+				this.$nextTick(() => {
+					this.videoContext.play();
 				})
-			},
-			handleCall() {
-				const { info } = this
-				uni.makePhoneCall({
-					phoneNumber: info.creatorMobile
-				});
+			},
+			screenChange(e) {
+				let fullScreen = e.detail.fullScreen // 鍊紅rue涓鸿繘鍏ュ叏灞忥紝false涓洪��鍑哄叏灞�
+				if (!fullScreen) {
+					//閫�鍑哄叏灞�
+					this.videoPlay = false // 闅愯棌鎾斁鐩掑瓙
+				}
+			},
+			closeVideo() {
+				this.videoPlay = false
+				this.videoContext = null
+			},
+			onSubmit() {
+				const {
+					handleParam,
+					dealFileList,
+					id
+				} = this
+				if (!handleParam.dealTime) return this.showToast('澶勭悊鏃堕棿涓嶈兘涓虹┖')
+				ywWorkorderDeal({
+					...handleParam,
+					id,
+					dealFileList
+				}).then(res => {
+					if (res.code == 200) {
+						this.showToast('鎿嶄綔鎴愬姛')
+						uni.navigateBack()
+					}
+				})
+			},
+			handleCall() {
+				const {
+					info
+				} = this
+				uni.makePhoneCall({
+					phoneNumber: info.creatorMobile
+				});
 			},
 			getDetail() {
 				ywWorkorderD(this.id).then(res => {
@@ -323,7 +367,7 @@
 
 				image,
 				video {
-					width: 156rpx;
+					width: 156rpx;
 					height: 156rpx;
 				}
 			}
@@ -488,28 +532,37 @@
 			display: flex;
 			flex-wrap: wrap;
 			margin-bottom: 30rpx;
+			max-height: 362rpx;
+			overflow-y: auto;
+			margin-right: -30rpx;
 		}
 
 		.adduser_list_item_ipt1_upload {
 			margin-top: 24rpx;
 			width: 156rpx;
 			height: 156rpx;
-			margin-right: 24rpx;
-			border: 2rpx solid #e5e5e5;
+			margin-right: 22rpx;
+			border: 1rpx solid #e5e5e5;
 			background: #f7f7f7;
 			color: #666666;
 			font-size: 22rpx;
+			box-sizing: border-box;
 			display: flex;
 			flex-direction: column;
 			align-items: center;
 			justify-content: center;
 			position: relative;
 
+			&:nth-of-type(4n) {
+				margin-right: 0;
+			}
+
 			.close {
 				position: absolute;
 				right: -20rpx;
 				top: -20rpx;
 				z-index: 9999;
+				background-color: #fff;
 			}
 
 			image {
@@ -523,4 +576,46 @@
 			}
 		}
 	}
+
+	.video_wrap {
+		position: relative;
+		border: 1px solid;
+		width: 156rpx;
+		height: 156rpx;
+		border-radius: 4rpx;
+
+		.play {
+			width: 60rpx !important;
+			height: 60rpx !important;
+			position: absolute;
+			top: 50%;
+			left: 50%;
+			transform: translate(-50%, -50%);
+		}
+	}
+
+	.video_app {
+		overflow: hidden;
+		position: fixed;
+		left: 0;
+		top: 0;
+		width: 100vw;
+		height: 100vh;
+		display: flex;
+		align-items: center;
+		z-index: 9990;
+
+		.bg {
+			background-color: rgba(0, 0, 0, .6);
+			position: absolute;
+			width: 100%;
+			height: 100%;
+			z-index: -1;
+		}
+
+		video {
+			width: 100%;
+			height: 42vh;
+		}
+	}
 </style>
\ No newline at end of file
diff --git a/h5/pages/workOrder/edit.vue b/h5/pages/workOrder/edit.vue
index 3e0c34d..ff72df9 100644
--- a/h5/pages/workOrder/edit.vue
+++ b/h5/pages/workOrder/edit.vue
@@ -51,7 +51,7 @@
 						<u-icon class="close" size="20" name="close-circle-fill" color="red"
 							@click="fileDel('fileList', i)"></u-icon>
 						<image v-if="item.type == 0" :src="item.fileurlFull" mode="widthFix"></image>
-						<video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video>
+						<video v-if="item.type == 1" :show-center-play-btn="false" :src="item.fileurlFull" :controls="false"></video>
 					</view>
 				</view>
 			</view>
@@ -116,7 +116,7 @@
 				showCate2: false,
 				areaType: [
 					[{
-							name: '瀹ゅ唴瑁呬慨',
+							name: '瀹ゅ唴缁翠慨',
 							id: 0
 						},
 						{
@@ -431,7 +431,10 @@
 					position: absolute;
 					right: -20rpx;
 					top: -20rpx;
-					z-index: 9999;
+					z-index: 9999;
+					background-color: #fff;
+					border-radius: 50%;
+					overflow: hidden;
 				}
 
 				image {
diff --git a/h5/pages/workOrder/list.vue b/h5/pages/workOrder/list.vue
index 2da419f..7d8e1d2 100644
--- a/h5/pages/workOrder/list.vue
+++ b/h5/pages/workOrder/list.vue
@@ -32,7 +32,7 @@
 		<scroll-view scroll-y="true" class="scroll_Y" @scrolltolower="scrolltolower">
 			<view class="list">
 				<view class="item" v-for="item in list" @click="itemClick(item)">
-					<image v-if="item.dealStatus == 0" src="@/static/side/workordered.png" class="icon"></image>
+					<image v-if="item.dealStatus == 0 || item.dealStatus == 1" src="@/static/side/workordered.png" class="icon"></image>
 					<image v-else src="@/static/side/workorder.png" class="icon"></image>
 					<view class="content">
 						<view class="name_wrap line">
@@ -216,7 +216,7 @@
 
 	}
 	.scroll_Y{
-		height: calc(100vh - 320rpx);
+		height: calc(100vh - 250rpx);
 	}
 	.list {
 		.item {
@@ -224,7 +224,7 @@
 			// height: 290rpx;
 			padding: 30rpx 0;
 			border-bottom: 2rpx solid #E5E5E5;
-
+		
 			.icon {
 				width: 80rpx;
 				height: 80rpx;
diff --git a/h5/static/plan_ic_finish@2x.png b/h5/static/plan_ic_finish@2x.png
new file mode 100644
index 0000000..01fafcc
--- /dev/null
+++ b/h5/static/plan_ic_finish@2x.png
Binary files differ
diff --git a/h5/static/play.png b/h5/static/play.png
new file mode 100644
index 0000000..1b4b225
--- /dev/null
+++ b/h5/static/play.png
Binary files differ
diff --git a/h5/utils/config.js b/h5/utils/config.js
index 450773b..49ff135 100644
--- a/h5/utils/config.js
+++ b/h5/utils/config.js
@@ -1,6 +1,6 @@
- // export const baseUrl = 'gateway_interface/'
+ export const baseUrl = 'gateway_interface/'
 // export const baseUrl = 'http://192.168.0.173/gateway_interface/'
-export const baseUrl = 'https://zhcg.fnwtzx.com/gateway_interface/'
+// export const baseUrl = 'https://zhcg.fnwtzx.com/gateway_interface/'
 
 export const uploadAvatar = `${baseUrl}visitsAdmin/cloudService/web/public/uploadFtp.do`
 export const uploadUrl = `${baseUrl}visitsAdmin/cloudService/public/uploadBatch`
diff --git a/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemDictDataBizImpl.java b/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemDictDataBizImpl.java
index a9d3ae1..e6e84ea 100644
--- a/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemDictDataBizImpl.java
+++ b/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemDictDataBizImpl.java
@@ -68,7 +68,8 @@
         queryDto.setDeleted(Boolean.FALSE);
         SystemDict dictData = systemDictService.findOne(queryDto);
         if (dictData == null) {
-            throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鏁版嵁鍊间笉瀛樺湪");
+            return new SystemDictData();
+//            throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鏁版嵁鍊间笉瀛樺湪");
         }
         SystemDictData data = new SystemDictData();
         data.setDictId(dictData.getId());
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveController.java
deleted file mode 100644
index 7e24363..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.api.BaseController;
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.Approve;
-import com.doumee.service.business.ApproveService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * @author 姹熻箘韫�
- * @date 2023/12/28 14:09
- */
-@Api(tags = "瀹℃壒淇℃伅璁板綍琛�")
-@RestController
-@RequestMapping("/business/approve")
-public class ApproveController extends BaseController {
-
-    @Autowired
-    private ApproveService approveService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:approve:create")
-    public ApiResponse create(@RequestBody Approve approve) {
-        return ApiResponse.success(approveService.create(approve));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:approve:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        approveService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:approve:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        approveService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:approve:update")
-    public ApiResponse updateById(@RequestBody Approve approve) {
-        approveService.updateById(approve);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:approve:query")
-    public ApiResponse<PageData<Approve>> findPage (@RequestBody PageWrap<Approve> pageWrap) {
-        return ApiResponse.success(approveService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:approve:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Approve> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Approve.class).export(approveService.findPage(pageWrap).getRecords(), "瀹℃壒淇℃伅璁板綍琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:approve:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(approveService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveParamController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveParamController.java
deleted file mode 100644
index 1065317..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveParamController.java
+++ /dev/null
@@ -1,101 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.ApproveParam;
-import com.doumee.dao.business.vo.ApproveParamDataVO;
-import com.doumee.service.business.ApproveParamService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/12/28 11:46
- */
-@Api(tags = "瀹℃壒妯$増閰嶇疆淇℃伅琛�")
-@RestController
-@RequestMapping("/business/approveParam")
-public class ApproveParamController extends BaseController {
-
-    @Autowired
-    private ApproveParamService approveParamService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:approveparam:create")
-    public ApiResponse create(@RequestBody ApproveParam approveParam) {
-        return ApiResponse.success(approveParamService.create(approveParam));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:approveparam:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        approveParamService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:approveparam:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        approveParamService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:approveparam:update")
-    public ApiResponse updateById(@RequestBody ApproveParam approveParam) {
-        approveParamService.updateById(approveParam);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:approveparam:query")
-    public ApiResponse<PageData<ApproveParam>> findPage (@RequestBody PageWrap<ApproveParam> pageWrap) {
-        return ApiResponse.success(approveParamService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:approveparam:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<ApproveParam> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(ApproveParam.class).export(approveParamService.findPage(pageWrap).getRecords(), "瀹℃壒妯$増閰嶇疆淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:approveparam:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(approveParamService.findById(id));
-    }
-
-
-    @ApiOperation("鑾峰彇閰嶇疆淇℃伅")
-    @GetMapping("/getApproveParamData")
-    @RequiresPermissions("business:approveparam:query")
-    public ApiResponse<ApproveParamDataVO> getApproveParamData() {
-        return ApiResponse.success(approveParamService.getApproveParamData());
-    }
-
-
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveTemplController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveTemplController.java
deleted file mode 100644
index cd76650..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveTemplController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.ApproveTempl;
-import com.doumee.service.business.ApproveTemplService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-import com.doumee.api.BaseController;
-
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "瀹℃壒妯$増淇℃伅琛�")
-@RestController
-@RequestMapping("/business/approveTempl")
-public class ApproveTemplController extends BaseController {
-
-    @Autowired
-    private ApproveTemplService approveTemplService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:approvetempl:create")
-    public ApiResponse create(@RequestBody ApproveTempl approveTempl) {
-        return ApiResponse.success(approveTemplService.create(approveTempl));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:approvetempl:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        approveTemplService.deleteById(id,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:approvetempl:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        approveTemplService.deleteByIdInBatch(this.getIdList(ids),this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:approvetempl:update")
-    public ApiResponse updateById(@RequestBody ApproveTempl approveTempl) {
-        approveTemplService.updateById(approveTempl);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:approvetempl:query")
-    public ApiResponse<PageData<ApproveTempl>> findPage (@RequestBody PageWrap<ApproveTempl> pageWrap) {
-        return ApiResponse.success(approveTemplService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:approvetempl:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<ApproveTempl> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(ApproveTempl.class).export(approveTemplService.findPage(pageWrap).getRecords(), "瀹℃壒妯$増淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:approvetempl:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(approveTemplService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarDriverController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarDriverController.java
deleted file mode 100644
index 83108c2..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarDriverController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.api.BaseController;
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.CarDriver;
-import com.doumee.service.business.CarDriverService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "鍙告満淇℃伅琛�")
-@RestController
-@RequestMapping("/business/carDriver")
-public class CarDriverController extends BaseController {
-
-    @Autowired
-    private CarDriverService carDriverService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:cardriver:create")
-    public ApiResponse create(@RequestBody CarDriver carDriver) {
-        return ApiResponse.success(carDriverService.create(carDriver));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:cardriver:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        carDriverService.deleteById(id,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:cardriver:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        carDriverService.deleteByIdInBatch(this.getIdList(ids),this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:cardriver:update")
-    public ApiResponse updateById(@RequestBody CarDriver carDriver) {
-        carDriverService.updateById(carDriver);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:cardriver:query")
-    public ApiResponse<PageData<CarDriver>> findPage (@RequestBody PageWrap<CarDriver> pageWrap) {
-        return ApiResponse.success(carDriverService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:cardriver:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<CarDriver> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(CarDriver.class).export(carDriverService.findPage(pageWrap).getRecords(), "鍙告満淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:cardriver:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(carDriverService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarEventController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarEventController.java
deleted file mode 100644
index 2c81369..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarEventController.java
+++ /dev/null
@@ -1,102 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.admin.response.CarEventDTO;
-import com.doumee.dao.business.model.CarEvent;
-import com.doumee.service.business.CarEventService;
-import com.doumee.service.business.impl.hksync.HkSyncParkServiceImpl;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-import com.doumee.api.BaseController;
-
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "鍋滆溅鍦轰簨浠舵帹閫佽褰曡〃")
-@RestController
-@RequestMapping("/business/carEvent")
-public class CarEventController extends BaseController {
-
-    @Autowired
-    private HkSyncParkServiceImpl hkSyncParkService;
-
-    @Autowired
-    private CarEventService carEventService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-//    @RequiresPermissions("business:carevent:create")
-    public ApiResponse create(@RequestBody CarEvent carEvent) {
-        return ApiResponse.success(carEventService.create(carEvent));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:carevent:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        carEventService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:carevent:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        carEventService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:carevent:update")
-    public ApiResponse updateById(@RequestBody CarEvent carEvent) {
-        carEventService.updateById(carEvent);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    //@RequiresPermissions("business:carevent:query")
-    public ApiResponse<PageData<CarEventDTO>> findPage (@RequestBody PageWrap<CarEvent> pageWrap) {
-        return ApiResponse.success(carEventService.findVisitCarPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    //@RequiresPermissions("business:carevent:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<CarEvent> pageWrap, HttpServletResponse response) {
-//        ExcelExporter.build(CarEventVo.class).exportWithFirstAndEnd (carEventService.findPageExcel(pageWrap),"鍋滆溅鍦轰簨浠舵帹閫佽褰曡〃", null, "鍋滆溅鍦轰簨浠舵帹閫佽褰曞鍑烘姤琛�",null , response);
-        ExcelExporter.build(CarEventDTO.class).export(carEventService.findVisitCarPage(pageWrap).getRecords(), "鍋滆溅鍦轰簨浠舵帹閫佽褰曡〃", response);
-    }
-    @ApiOperation("鏍规嵁鏃ユ湡(starttime)鍚屾杩囪溅鏁版嵁")
-    @PostMapping("/syncByDate")
-    @RequiresPermissions("business:carevent:sync")
-    public ApiResponse syncByDate(@RequestBody CarEvent param) {
-        hkSyncParkService.syncParkRecords(param.getCreateDate());
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:carevent:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(carEventService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarParksController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarParksController.java
deleted file mode 100644
index c114dcf..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarParksController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.CarParks;
-import com.doumee.service.business.CarParksService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "鍋滆溅搴撲俊鎭〃")
-@RestController
-@RequestMapping("/business/carParks")
-public class CarParksController extends BaseController {
-
-    @Autowired
-    private CarParksService carParksService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:carparks:create")
-    public ApiResponse create(@RequestBody CarParks carParks) {
-        return ApiResponse.success(carParksService.create(carParks));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:carparks:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        carParksService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:carparks:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        carParksService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:carparks:update")
-    public ApiResponse updateById(@RequestBody CarParks carParks) {
-        carParksService.updateById(carParks);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:carparks:query")
-    public ApiResponse<PageData<CarParks>> findPage (@RequestBody PageWrap<CarParks> pageWrap) {
-        return ApiResponse.success(carParksService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:carparks:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<CarParks> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(CarParks.class).export(carParksService.findPage(pageWrap).getRecords(), "鍋滆溅搴撲俊鎭〃", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:carparks:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(carParksService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarUseBookController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarUseBookController.java
deleted file mode 100644
index e3ce650..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarUseBookController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.CarUseBook;
-import com.doumee.service.business.CarUseBookService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "杞﹁締_鐢ㄨ溅鐢宠淇℃伅琛�")
-@RestController
-@RequestMapping("/business/carUseBook")
-public class CarUseBookController extends BaseController {
-
-    @Autowired
-    private CarUseBookService carUseBookService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:carusebook:create")
-    public ApiResponse create(@RequestBody CarUseBook carUseBook)   throws Exception {
-        return ApiResponse.success(carUseBookService.create(carUseBook));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:carusebook:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        carUseBookService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:carusebook:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        carUseBookService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:carusebook:update")
-    public ApiResponse updateById(@RequestBody CarUseBook carUseBook) {
-        carUseBookService.updateById(carUseBook);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:carusebook:query")
-    public ApiResponse<PageData<CarUseBook>> findPage (@RequestBody PageWrap<CarUseBook> pageWrap) {
-        return ApiResponse.success(carUseBookService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:carusebook:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<CarUseBook> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(CarUseBook.class).export(carUseBookService.findPage(pageWrap).getRecords(), "杞﹁締_鐢ㄨ溅鐢宠淇℃伅琛�", response);
-    }
-
-//    @ApiOperation("鏍规嵁ID鏌ヨ")
-//    @GetMapping("/{id}")
-//    @RequiresPermissions("business:carusebook:query")
-//    public ApiResponse findById(@PathVariable Integer id) {
-//        return ApiResponse.success(carUseBookService.findById(id));
-//    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarsController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarsController.java
deleted file mode 100644
index 3847b84..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CarsController.java
+++ /dev/null
@@ -1,100 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.Cars;
-import com.doumee.service.business.CarsService;
-import com.doumee.service.business.impl.hksync.fhk.HkSyncVehicleFromHKServiceImpl;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "杞﹁締淇℃伅琛�")
-@RestController
-@RequestMapping("/business/cars")
-public class CarsController extends BaseController {
-
-    @Autowired
-    private CarsService carsService;
-    @Autowired
-    private HkSyncVehicleFromHKServiceImpl hkSyncVehicleFromHKService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:cars:create")
-    public ApiResponse create(@RequestBody Cars cars) {
-        return ApiResponse.success(carsService.create(cars));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:cars:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        carsService.deleteById(id,getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:cars:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        carsService.deleteByIdInBatch(idList,getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:cars:update")
-    public ApiResponse updateById(@RequestBody Cars cars) {
-        carsService.updateById(cars);
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("鍏ㄩ噺鍚屾杞﹁締淇℃伅")
-    @PostMapping("/sync")
-    @RequiresPermissions("business:cars:sync")
-    public ApiResponse sync(@RequestBody Cars cars) {
-        hkSyncVehicleFromHKService.syncVehicleData();
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:cars:query")
-    public ApiResponse<PageData<Cars>> findPage (@RequestBody PageWrap<Cars> pageWrap) {
-        return ApiResponse.success(carsService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:cars:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Cars> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Cars.class).export(carsService.findPage(pageWrap).getRecords(), "杞﹁締淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:cars:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(carsService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CategoryController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CategoryController.java
deleted file mode 100644
index 614ee4a..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CategoryController.java
+++ /dev/null
@@ -1,102 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.core.utils.Constants;
-import com.doumee.dao.business.model.Category;
-import com.doumee.service.business.CategoryService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "鍒嗙被淇℃伅琛�")
-@RestController
-@RequestMapping("/business/category")
-public class CategoryController extends BaseController {
-
-    @Autowired
-    private CategoryService categoryService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:category:create")
-    public ApiResponse create(@RequestBody Category category) {
-        return ApiResponse.success(categoryService.create(category));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:category:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        categoryService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:category:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        categoryService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:category:update")
-    public ApiResponse updateById(@RequestBody Category category) {
-        categoryService.updateById(category);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:category:query")
-    public ApiResponse<PageData<Category>> findPage (@RequestBody PageWrap<Category> pageWrap) {
-        return ApiResponse.success(categoryService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:category:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Category> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Category.class).export(categoryService.findPage(pageWrap).getRecords(), "鍒嗙被淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:category:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(categoryService.findById(id));
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/findListByStatus")
-    @RequiresPermissions("business:category:query")
-    public ApiResponse<List<Category>> findListByStatus(@RequestParam("type") Integer type){
-        Category category = new Category();
-        category.setIsdeleted(Constants.ZERO);
-        category.setStatus(Constants.ZERO);
-        category.setType(type);
-        return ApiResponse.success(categoryService.findList(category));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CompanyController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CompanyController.java
deleted file mode 100644
index beec7ca..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/CompanyController.java
+++ /dev/null
@@ -1,185 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.config.DataSyncConfig;
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.core.utils.Constants;
-import com.doumee.dao.admin.request.UpdateCompanySortDTO;
-import com.doumee.dao.admin.response.CompanyDTO;
-import com.doumee.dao.business.model.Company;
-import com.doumee.service.business.CompanyService;
-import com.doumee.service.business.ext.ERPSyncService;
-import com.doumee.service.business.impl.hksync.fhk.HkSyncOrgUserFromHKServiceImpl;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "浼佷笟淇℃伅琛�")
-@RestController
-@RequestMapping("/business/company")
-public class CompanyController extends BaseController {
-
-    @Autowired
-    private CompanyService companyService;
-
-    @Autowired
-    private ERPSyncService erpSyncService;
-    @Autowired
-    private HkSyncOrgUserFromHKServiceImpl hkSyncOrgUserFHKService;
-    @Autowired
-    private DataSyncConfig dataSyncConfig;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:company:create")
-    public ApiResponse create(@RequestBody Company company) {
-        return ApiResponse.success(companyService.create(company));
-    }
-
-    @PreventRepeat
-    @ApiOperation("鍒涘缓鍔冲姟鍏徃")
-    @PostMapping("/createLaborServices")
-    @RequiresPermissions("business:company:create")
-    public ApiResponse<Integer> createLaborServices(@RequestBody Company company){
-        return ApiResponse.success(companyService.createLaborServices(company));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:company:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        companyService.deleteById(id,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:company:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        companyService.deleteByIdInBatch(idList,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:company:update")
-    public ApiResponse updateById(@RequestBody Company company) {
-        companyService.updateById(company);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:company:query")
-    public ApiResponse<PageData<Company>> findPage (@RequestBody PageWrap<Company> pageWrap) {
-        return ApiResponse.success(companyService.findPage(pageWrap));
-    }
-
-    @ApiOperation("缁勭粐鏍戞煡璇�")
-    @GetMapping("/tree")
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "type", dataType = "Integer", value = "绫诲瀷 0鍔冲姟鍏徃 1鍐呴儴缁勭粐", required = true)
-    })
-    @RequiresPermissions("business:company:query")
-    public ApiResponse<List<Company>> tree (@RequestParam Integer type) {
-        return ApiResponse.success(companyService.companyTree(type));
-    }
-
-
-    @ApiOperation("鎺掑簭")
-    @PostMapping("/updateSort")
-    @RequiresPermissions("business:company:query")
-    public ApiResponse updateSort (@Validated @RequestBody UpdateCompanySortDTO dto) {
-        companyService.updateSort(dto);
-        return ApiResponse.success(null);
-    }
-
-
-    @ApiOperation("淇敼鐘舵��")
-    @PostMapping("/updateStatusById")
-    @RequiresPermissions("business:company:update")
-    public ApiResponse updateStatusById(@RequestBody Company company) {
-        companyService.updateStatusById(company);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:company:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Company> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Company.class).export(companyService.findPage(pageWrap).getRecords(), "浼佷笟淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:company:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(companyService.findById(id));
-    }
-
-    @ApiOperation("鏍规嵁鍒嗙被ID鏌ヨ")
-    @PostMapping("/findLaborServicesList")
-    @RequiresPermissions("business:company:query")
-    public ApiResponse<List<Company>> findLaborServicesList(Company query){
-        Company company = new Company();
-        company.setIsdeleted(Constants.ZERO);
-        company.setType(query.getType());
-        company.setCategoryId(query.getCategoryId());
-        return ApiResponse.success(companyService.findList(company));
-    }
-
-
-    /**
-     * 鏌ヨ閮ㄩ棬鍙婂叾瀛愰儴闂ㄤ俊鎭�
-     * @param type 0 鏌ヨ鎵�鏈変俊鎭� 1 鏌ヨ鍐呴儴淇℃伅
-     * @return
-     */
-    @ApiOperation("鏍规嵁绫诲瀷鏌ヨ缁勭粐淇℃伅")
-    @GetMapping("/findCompanyTreePage")
-    @RequiresPermissions("business:company:query")
-    public ApiResponse<List<CompanyDTO>> findCompanyTreePage(Integer type){
-        return ApiResponse.success(companyService.findCompanyTreePage(type));
-    }
-
-
-
-    @ApiOperation("鍏ㄩ噺閮ㄩ棬淇℃伅鍚屾")
-    @PostMapping("/syncAll")
-    @RequiresPermissions("business:company:sync")
-    public ApiResponse sync(){
-        if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.erp){
-            return ApiResponse.success( erpSyncService.syncCompany(null));
-        }else if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.hk){
-             hkSyncOrgUserFHKService.syncOrgData(this.getLoginUser(null));
-            return ApiResponse.success("鍚屾鎴愬姛");
-        }else if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.self){
-            //濡傛灉鏄嚜寤虹郴绲憋紝鍚屾瀹夐槻骞冲彴鍒濆鍖栨暟鎹�
-            hkSyncOrgUserFHKService.syncOrgData(this.getLoginUser(null));
-            return ApiResponse.success("鍚屾鎴愬姛");
-        }
-        return ApiResponse.failed("鏃犳晥鎿嶄綔");
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceController.java
deleted file mode 100644
index 9592c47..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceController.java
+++ /dev/null
@@ -1,110 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.core.utils.Constants;
-import com.doumee.dao.business.model.Device;
-import com.doumee.service.business.DeviceService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "璁惧淇℃伅琛�")
-@RestController
-@RequestMapping("/business/device")
-public class DeviceController extends BaseController {
-
-    @Autowired
-    private DeviceService deviceService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:device:create")
-    public ApiResponse create(@RequestBody Device device) {
-        return ApiResponse.success(deviceService.create(device));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:device:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        deviceService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("淇敼鏄惁闂ㄧ鍏ュ彛")
-    @PostMapping("/updateEntranceById")
-    @RequiresPermissions("business:company:update")
-    public ApiResponse updateStatusById(@RequestBody Device param) {
-        Device d = new Device();
-        d.setId(param.getId());
-        d.setEditDate(new Date());
-        d.setIsEntrance(Constants.formatIntegerNum(param.getIsEntrance()));
-        deviceService.updateById(d);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:device:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        deviceService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:device:update")
-    public ApiResponse updateById(@RequestBody Device device) {
-        deviceService.updateById(device);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:device:query")
-    public ApiResponse<PageData<Device>> findPage (@RequestBody PageWrap<Device> pageWrap) {
-        return ApiResponse.success(deviceService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:device:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Device> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Device.class).export(deviceService.findPage(pageWrap).getRecords(), "璁惧淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:device:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(deviceService.findById(id));
-    }
-
-    @ApiOperation("鑾峰彇闂ㄧ闆嗗悎-鎻愪緵缁欓棬绂佺粍")
-    @PostMapping("/getList")
-    @RequiresPermissions("business:device:query")
-    public ApiResponse findList(@RequestBody Device device) {
-        return ApiResponse.success(deviceService.findIdAndNameList(device));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceEventController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceEventController.java
deleted file mode 100644
index 928cb5e..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceEventController.java
+++ /dev/null
@@ -1,94 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.admin.response.DeviceEventDTO;
-import com.doumee.dao.business.model.DeviceEvent;
-import com.doumee.service.business.DeviceEventService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "闂ㄧ浜嬩欢鎺ㄩ�佽褰曡〃")
-@RestController
-@RequestMapping("/business/deviceEvent")
-public class DeviceEventController extends BaseController {
-
-    @Autowired
-    private DeviceEventService deviceEventService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-//    @RequiresPermissions("business:deviceevent:create")
-    public ApiResponse create(@RequestBody DeviceEvent deviceEvent) {
-        return ApiResponse.success(deviceEventService.create(deviceEvent));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:deviceevent:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        deviceEventService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:deviceevent:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        deviceEventService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:deviceevent:update")
-    public ApiResponse updateById(@RequestBody DeviceEvent deviceEvent) {
-        deviceEventService.updateById(deviceEvent);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    //@RequiresPermissions("business:deviceevent:query")
-    public ApiResponse<PageData<DeviceEventDTO>> findPage (@RequestBody PageWrap<DeviceEvent> pageWrap) {
-        return ApiResponse.success(deviceEventService.findDeviceEventDTOPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    //@RequiresPermissions("business:deviceevent:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<DeviceEvent> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(DeviceEventDTO.class).export(deviceEventService.findDeviceEventDTOPage(pageWrap).getRecords(), "闂ㄧ浜嬩欢鎺ㄩ�佽褰曡〃", response);
-    }
-//    public void exportExcel (@RequestBody PageWrap<DeviceEvent> pageWrap, HttpServletResponse response) {
-//        ExcelExporter.build(DeviceEventVo.class).export(deviceEventService.findDeviceEventExcel(pageWrap), "闂ㄧ浜嬩欢鎺ㄩ�佽褰曡〃", response);
-//    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:deviceevent:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(deviceEventService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceRoleController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceRoleController.java
deleted file mode 100644
index b7c8fe2..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceRoleController.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.DeviceRole;
-import com.doumee.service.business.DeviceRoleService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "闂ㄧ瑙掕壊淇℃伅琛�")
-@RestController
-@RequestMapping("/business/deviceRole")
-public class DeviceRoleController extends BaseController {
-
-    @Autowired
-    private DeviceRoleService deviceRoleService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:devicerole:create")
-    public ApiResponse create(@RequestBody DeviceRole deviceRole) {
-        return ApiResponse.success(deviceRoleService.create(deviceRole));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:devicerole:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        deviceRoleService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:devicerole:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        deviceRoleService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:devicerole:update")
-    public ApiResponse updateById(@RequestBody DeviceRole deviceRole) {
-        deviceRoleService.updateById(deviceRole);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼榛樿闂ㄧ缁勭姸鎬�")
-    @PostMapping("/updateStatusById")
-    @RequiresPermissions("business:devicerole:update")
-    public ApiResponse updateStatusById(@RequestBody DeviceRole deviceRole) {
-        deviceRoleService.updateStatusById(deviceRole);
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("榛樿涓嬪彂闂ㄧ缁勮鑹�")
-    @PostMapping("/updateMemberRole")
-    public ApiResponse updateMemberRole(@RequestBody DeviceRole deviceRole) {
-        deviceRoleService.updateMemberRole(deviceRole);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:devicerole:query")
-    public ApiResponse<PageData<DeviceRole>> findPage (@RequestBody PageWrap<DeviceRole> pageWrap) {
-        return ApiResponse.success(deviceRoleService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:devicerole:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<DeviceRole> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(DeviceRole.class).export(deviceRoleService.findPage(pageWrap).getRecords(), "闂ㄧ瑙掕壊淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:devicerole:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(deviceRoleService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ERPSyncController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ERPSyncController.java
deleted file mode 100644
index 6d951cb..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ERPSyncController.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.erp.model.openapi.request.erp.OrgListRequest;
-import com.doumee.core.erp.model.openapi.request.erp.UserListRequest;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.service.business.ext.ERPSyncService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "ERP鏁版嵁鍚屾鎺ュ彛")
-@RestController
-@RequestMapping("/business/erpsync")
-public class ERPSyncController extends BaseController {
-    @Autowired
-    private ERPSyncService erpSyncService;
-
-    @PreventRepeat
-    @ApiOperation("銆怑RP銆戝叏閲忓悓姝RP缁勭粐鎺ュ彛")
-    @PostMapping("/getCompanies")
-    @RequiresPermissions("business:erpsync:company")
-    public ApiResponse getCompanies(@RequestBody OrgListRequest param) {
-        String result = erpSyncService.syncCompany(param);
-        return ApiResponse.success(result);
-    }
-    @PreventRepeat
-    @ApiOperation("銆怑RP銆戝叏閲忓悓姝RP浜哄憳鎺ュ彛")
-    @PostMapping("/getUsers")
-    @RequiresPermissions("business:erpsync:users")
-    public ApiResponse getUsers(@RequestBody UserListRequest param) {
-        String result = erpSyncService.syncUsers(param);
-        return ApiResponse.success(result);
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/EmpowerController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/EmpowerController.java
deleted file mode 100644
index 8fdb392..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/EmpowerController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.Empower;
-import com.doumee.service.business.EmpowerService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "浜哄憳鎺堟潈瀵煎叆璁板綍")
-@RestController
-@RequestMapping("/business/empower")
-public class EmpowerController extends BaseController {
-
-    @Autowired
-    private EmpowerService empowerService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:empower:create")
-    public ApiResponse create(@RequestBody Empower empower) {
-        return ApiResponse.success(empowerService.create(empower));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:empower:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        empowerService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:empower:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        empowerService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:empower:update")
-    public ApiResponse updateById(@RequestBody Empower empower) {
-        empowerService.updateById(empower);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:empower:query")
-    public ApiResponse<PageData<Empower>> findPage (@RequestBody PageWrap<Empower> pageWrap) {
-        return ApiResponse.success(empowerService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:empower:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Empower> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Empower.class).export(empowerService.findPage(pageWrap).getRecords(), "鎺堟潈璁板綍", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:empower:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(empowerService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/FormParamController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/FormParamController.java
deleted file mode 100644
index f161033..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/FormParamController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.FormParam;
-import com.doumee.service.business.FormParamService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "琛ㄥ崟閰嶇疆淇℃伅琛�")
-@RestController
-@RequestMapping("/business/formParam")
-public class FormParamController extends BaseController {
-
-    @Autowired
-    private FormParamService formParamService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:formparam:create")
-    public ApiResponse create(@RequestBody FormParam formParam) {
-        return ApiResponse.success(formParamService.create(formParam));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:formparam:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        formParamService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:formparam:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        formParamService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:formparam:update")
-    public ApiResponse updateById(@RequestBody FormParam formParam) {
-        formParamService.updateById(formParam);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:formparam:query")
-    public ApiResponse<PageData<FormParam>> findPage (@RequestBody PageWrap<FormParam> pageWrap) {
-        return ApiResponse.success(formParamService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:formparam:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<FormParam> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(FormParam.class).export(formParamService.findPage(pageWrap).getRecords(), "琛ㄥ崟閰嶇疆淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:formparam:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(formParamService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerController.java
deleted file mode 100644
index 7c491ce..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.HiddenDanger;
-import com.doumee.service.business.HiddenDangerService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-import com.doumee.api.BaseController;
-
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "闅愭偅淇℃伅琛�")
-@RestController
-@RequestMapping("/business/hiddenDanger")
-public class HiddenDangerController extends BaseController {
-
-    @Autowired
-    private HiddenDangerService hiddenDangerService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:hiddendanger:create")
-    public ApiResponse create(@RequestBody HiddenDanger hiddenDanger) {
-        return ApiResponse.success(hiddenDangerService.create(hiddenDanger));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:hiddendanger:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        hiddenDangerService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:hiddendanger:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        hiddenDangerService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:hiddendanger:update")
-    public ApiResponse updateById(@RequestBody HiddenDanger hiddenDanger) {
-        hiddenDangerService.updateById(hiddenDanger);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:hiddendanger:query")
-    public ApiResponse<PageData<HiddenDanger>> findPage (@RequestBody PageWrap<HiddenDanger> pageWrap) {
-        return ApiResponse.success(hiddenDangerService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:hiddendanger:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<HiddenDanger> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(HiddenDanger.class).export(hiddenDangerService.findPage(pageWrap).getRecords(), "闅愭偅淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:hiddendanger:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(hiddenDangerService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerLogController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerLogController.java
deleted file mode 100644
index 6e20e04..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerLogController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.HiddenDangerLog;
-import com.doumee.service.business.HiddenDangerLogService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "鐞嗚碃鎿嶄綔鍘嗗彶琛�")
-@RestController
-@RequestMapping("/business/hiddenDangerLog")
-public class HiddenDangerLogController extends BaseController {
-
-    @Autowired
-    private HiddenDangerLogService hiddenDangerLogService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:hiddendangerlog:create")
-    public ApiResponse create(@RequestBody HiddenDangerLog hiddenDangerLog) {
-        return ApiResponse.success(hiddenDangerLogService.create(hiddenDangerLog));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:hiddendangerlog:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        hiddenDangerLogService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:hiddendangerlog:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        hiddenDangerLogService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:hiddendangerlog:update")
-    public ApiResponse updateById(@RequestBody HiddenDangerLog hiddenDangerLog) {
-        hiddenDangerLogService.updateById(hiddenDangerLog);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:hiddendangerlog:query")
-    public ApiResponse<PageData<HiddenDangerLog>> findPage (@RequestBody PageWrap<HiddenDangerLog> pageWrap) {
-        return ApiResponse.success(hiddenDangerLogService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:hiddendangerlog:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<HiddenDangerLog> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(HiddenDangerLog.class).export(hiddenDangerLogService.findPage(pageWrap).getRecords(), "鐞嗚碃鎿嶄綔鍘嗗彶琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:hiddendangerlog:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(hiddenDangerLogService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerParamController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerParamController.java
deleted file mode 100644
index d0f1c31..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerParamController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.HiddenDangerParam;
-import com.doumee.service.business.HiddenDangerParamService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "闅愭偅鍖哄煙閰嶇疆绫诲瀷淇℃伅琛�")
-@RestController
-@RequestMapping("/business/hiddenDangerParam")
-public class HiddenDangerParamController extends BaseController {
-
-    @Autowired
-    private HiddenDangerParamService hiddenDangerParamService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:hiddendangerparam:create")
-    public ApiResponse create(@RequestBody HiddenDangerParam hiddenDangerParam) {
-        return ApiResponse.success(hiddenDangerParamService.create(hiddenDangerParam));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:hiddendangerparam:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        hiddenDangerParamService.deleteById(id,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:hiddendangerparam:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        hiddenDangerParamService.deleteByIdInBatch(this.getIdList(ids),this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:hiddendangerparam:update")
-    public ApiResponse updateById(@RequestBody HiddenDangerParam hiddenDangerParam) {
-        hiddenDangerParamService.updateById(hiddenDangerParam);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:hiddendangerparam:query")
-    public ApiResponse<PageData<HiddenDangerParam>> findPage (@RequestBody PageWrap<HiddenDangerParam> pageWrap) {
-        return ApiResponse.success(hiddenDangerParamService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:hiddendangerparam:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<HiddenDangerParam> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(HiddenDangerParam.class).export(hiddenDangerParamService.findPage(pageWrap).getRecords(), "闅愭偅鍖哄煙閰嶇疆绫诲瀷淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:hiddendangerparam:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(hiddenDangerParamService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java
deleted file mode 100644
index 582ed58..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java
+++ /dev/null
@@ -1,122 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.haikang.model.param.request.*;
-import com.doumee.core.haikang.model.param.request.event.acs.EventAcsRequest;
-import com.doumee.core.haikang.model.param.request.event.parks.EventParkRequest;
-import com.doumee.core.haikang.model.param.request.event.parks.EventPlatformCarsRequest;
-import com.doumee.core.haikang.model.param.request.event.parks.EventPlatformRequest;
-import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.dao.business.model.Device;
-import com.doumee.service.business.impl.hksync.*;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "娴峰悍鏁版嵁鍚屾鎺ュ彛")
-@RestController
-@RequestMapping("/business/hksync")
-public class HkSyncController extends BaseController {
-
-    @Autowired
-    private HkSyncDeviceServiceImpl hkSyncDeviceService;
-    @Autowired
-    private HkSyncParkServiceImpl hkSyncParkService;
-    @Autowired
-    private HkSyncPrivilegeServiceImpl hkSyncPrivilegeService;
-    @Autowired
-    private HkSyncPushServiceImpl hkSyncPushService;
-    @Autowired
-    private HkSyncPlatformsServiceImpl hkSyncPlatformsService;
-    @PreventRepeat
-    @ApiOperation("銆愭捣搴枫�戝叏閲忓悓姝ユ湀鍙颁俊鎭帴鍙�")
-    @PostMapping("/syncPlatforms")
-    @RequiresPermissions("business:hksync:platforms")
-    public ApiResponse syncPlatforms(@RequestBody PlatformsListRequest param) {
-        String result = hkSyncPlatformsService.syncPlatforms(param);
-        return ApiResponse.success(result);
-    }
-    @PreventRepeat
-    @ApiOperation("銆愭捣搴枫�戝叏閲忓悓姝ユ湀鍙扮姸鎬佷俊鎭帴鍙�")
-    @PostMapping("/syncPlatformStatus")
-    @RequiresPermissions("business:hksync:platforms")
-    public ApiResponse syncPlatformStatus(@RequestBody PlatformStatusRequest param) {
-        String result = hkSyncPlatformsService.getPlatformStatus(param);
-        return ApiResponse.success(result);
-    }
-    @PreventRepeat
-    @ApiOperation("銆愭捣搴枫�戝叏閲忓悓姝ラ棬绂佽澶囨帴鍙�")
-    @PostMapping("/syncDevices")
-    @RequiresPermissions("business:hksync:device")
-    public ApiResponse syncHkDevices(@RequestBody Device param) {
-        String result = hkSyncDeviceService.syncHkDevices(param);
-        return ApiResponse.success(result);
-    }
-    @PreventRepeat
-    @ApiOperation("銆愭捣搴枫�戝叏閲忓悓姝ュ仠杞﹀簱鎺ュ彛")
-    @PostMapping("/syncParks")
-    @RequiresPermissions("business:hksync:park")
-    public ApiResponse syncHkParks(@RequestBody ParkListRequest param) {
-        String result = hkSyncParkService.syncHkParks(param);
-        return ApiResponse.success(result);
-    }
-    @PreventRepeat
-    @ApiOperation("銆愭捣搴枫�戝叏閲忓悓姝ヨ瀹㈡潈闄愮粍鎺ュ彛")
-    @PostMapping("/syncPrivilege")
-    @RequiresPermissions("business:hksync:privilege")
-    public ApiResponse syncPrivilege(@RequestBody PrivilegeGroupRequest param) {
-        String result = hkSyncPrivilegeService.syncPrivilege(param);
-        return ApiResponse.success(result);
-    }
-//    @PreventRepeat
-    @ApiOperation("銆愭捣搴枫�戦棬绂佷簨浠惰闃呮帹閫佸鎺ュ鐞嗘帴鍙�")
-    @PostMapping("/push/acs")
-    public ApiResponse pushAcs(  HttpServletRequest request,@RequestBody EventAcsRequest param, HttpServletResponse response) {
-        String result = hkSyncPushService.dealAcsEvent(param,response);
-        return ApiResponse.success(result);
-    }
-//    @PreventRepeat
-    @ApiOperation("銆愭捣搴枫�戣瀹簨浠惰闃呮帹閫佸鎺ュ鐞嗘帴鍙�")
-    @PostMapping("/push/visit")
-    public ApiResponse pushVisit(@RequestBody EventVisitRequest param, HttpServletResponse response) {
-        String result = hkSyncPushService.dealVisitEvent(param,response);
-        return ApiResponse.success(result);
-    }
-//    @PreventRepeat
-    @ApiOperation("銆愭捣搴枫�戝仠杞﹀満浜嬩欢璁㈤槄鎺ㄩ�佸鎺ュ鐞嗘帴鍙�")
-    @PostMapping("/push/parks")
-    public ApiResponse pushParks(@RequestBody EventParkRequest param, HttpServletResponse response) {
-        String result = hkSyncPushService.dealParkEvent(param,response);
-        return ApiResponse.success(result);
-    }
-    @PreventRepeat
-    @ApiOperation("銆愭捣搴枫�戝彇娑堣闃呬簨浠�")
-    @PostMapping("/cancelEventSub")
-    public ApiResponse cancelEventSub(@RequestBody EventSubRequest param, HttpServletResponse response) {
-         hkSyncPushService.cancelEventSub();
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("銆愭捣搴枫�戞湀鍙板伐浣滅姸鎬佷簨浠舵帹閫�")
-    @PostMapping("/push/platform/workstatus")
-    public ApiResponse pushPlatformStatus(@RequestBody EventPlatformRequest param, HttpServletResponse response) {
-         hkSyncPushService.dealPlatformStatusEvent(param,response);
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("銆愭捣搴枫�戞湀鍙拌溅杈嗙姸鎬佷簨浠舵帹閫�")
-    @PostMapping("/push/platform/carstatus")
-    public ApiResponse pushPlatformCarStatus(@RequestBody EventPlatformCarsRequest param, HttpServletResponse response) {
-         hkSyncPushService.dealPlatformCarsEvent(param,response);
-        return ApiResponse.success(null);
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/InoutDayCountController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/InoutDayCountController.java
deleted file mode 100644
index 733e71c..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/InoutDayCountController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.api.BaseController;
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.InoutDayCount;
-import com.doumee.service.business.InoutDayCountService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * @author 姹熻箘韫�
- * @date 2024/10/12 16:19
- */
-@Api(tags = "鍑哄叆鍦轰汉娆¤溅娆℃瘡鏃ョ粺璁¤〃")
-@RestController
-@RequestMapping("/business/inoutDayCount")
-public class InoutDayCountController extends BaseController {
-
-    @Autowired
-    private InoutDayCountService inoutDayCountService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:inoutdaycount:create")
-    public ApiResponse create(@RequestBody InoutDayCount inoutDayCount) {
-        return ApiResponse.success(inoutDayCountService.create(inoutDayCount));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:inoutdaycount:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        inoutDayCountService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:inoutdaycount:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        inoutDayCountService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:inoutdaycount:update")
-    public ApiResponse updateById(@RequestBody InoutDayCount inoutDayCount) {
-        inoutDayCountService.updateById(inoutDayCount);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:inoutdaycount:query")
-    public ApiResponse<PageData<InoutDayCount>> findPage (@RequestBody PageWrap<InoutDayCount> pageWrap) {
-        return ApiResponse.success(inoutDayCountService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:inoutdaycount:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<InoutDayCount> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(InoutDayCount.class).export(inoutDayCountService.findPage(pageWrap).getRecords(), "鍑哄叆鍦轰汉娆¤溅娆℃瘡鏃ョ粺璁¤〃", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:inoutdaycount:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(inoutDayCountService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/MemberCardController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/MemberCardController.java
deleted file mode 100644
index 5ef9533..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/MemberCardController.java
+++ /dev/null
@@ -1,125 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.MemberCard;
-import com.doumee.service.business.MemberCardService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "鐢ㄦ埛鍗$墖缁戝畾淇℃伅琛�")
-@RestController
-@RequestMapping("/business/memberCard")
-public class MemberCardController extends BaseController {
-
-    @Autowired
-    private MemberCardService memberCardService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:membercard:create")
-    public ApiResponse create(@RequestBody MemberCard memberCard) {
-        return ApiResponse.success(memberCardService.create(memberCard));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:membercard:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        memberCardService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:membercard:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        memberCardService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:membercard:update")
-    public ApiResponse updateById(@RequestBody MemberCard memberCard) {
-        memberCardService.updateById(memberCard);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎸傚け鎿嶄綔")
-    @PostMapping("/batchLoss")
-    @RequiresPermissions("business:membercard:update")
-    public ApiResponse batchLoss(@RequestBody List<MemberCard> memberCards) {
-        memberCardService.updateByIdInBatch(memberCards,0,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("瑙f寕鎿嶄綔")
-    @PostMapping("/batchUnLoss")
-    @RequiresPermissions("business:membercard:update")
-    public ApiResponse batchUnLoss(@RequestBody List<MemberCard> memberCards) {
-        memberCardService.updateByIdInBatch(memberCards,1,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("閫�鍗℃搷浣�")
-    @PostMapping("/refundCard")
-    @RequiresPermissions("business:membercard:update")
-    public ApiResponse refundCard(@RequestBody MemberCard memberCard) {
-        memberCardService.updateRefundCard(memberCard);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:membercard:query")
-    public ApiResponse<PageData<MemberCard>> findPage (@RequestBody PageWrap<MemberCard> pageWrap) {
-        return ApiResponse.success(memberCardService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:membercard:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<MemberCard> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(MemberCard.class).export(memberCardService.findPage(pageWrap).getRecords(), "鐢ㄦ埛鍗$墖缁戝畾淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:membercard:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(memberCardService.findById(id));
-    }
-
-
-    @ApiOperation("鏍规嵁鏉′欢鏌ヨ鍙敤鍗″彿")
-    @PostMapping("/queryCard")
-    //@RequiresPermissions("business:membercard:query")
-    public ApiResponse<List<MemberCard>> queryCard () {
-        MemberCard card = new MemberCard();
-        return ApiResponse.success(memberCardService.findList(card));
-    }
-
-
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/MemberController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/MemberController.java
deleted file mode 100644
index 31466bd..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/MemberController.java
+++ /dev/null
@@ -1,248 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.config.DataSyncConfig;
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.core.utils.Constants;
-import com.doumee.dao.admin.request.LaborMemberDTO;
-import com.doumee.dao.admin.request.MemberQuery;
-import com.doumee.dao.business.model.Member;
-import com.doumee.service.business.ext.ERPSyncService;
-import com.doumee.service.business.MemberService;
-import com.doumee.service.business.impl.hksync.fhk.HkSyncOrgUserFromHKServiceImpl;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "浜哄憳淇℃伅琛�")
-@RestController
-@RequestMapping("/business/member")
-public class MemberController extends BaseController {
-    @Autowired
-    private ERPSyncService erpSyncService;
-    @Autowired
-    private HkSyncOrgUserFromHKServiceImpl hkSyncOrgUserFHKService;
-    @Autowired
-    private DataSyncConfig dataSyncConfig;
-
-    @Autowired
-    private MemberService memberService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:member:create")
-    public ApiResponse create(@RequestBody Member member) {
-        return ApiResponse.success(memberService.create(member));
-    }
-
-    @PreventRepeat
-    @ApiOperation("鍒涘缓鍔冲姟浜哄憳淇℃伅")
-    @PostMapping("/laborMemberCreate")
-    @RequiresPermissions("business:member:create")
-    public ApiResponse<Integer> laborMemberCreate(@RequestBody LaborMemberDTO member){
-        return ApiResponse.success(memberService.laborMemberCreate(member));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:member:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        memberService.deleteById(id,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:member:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        memberService.deleteByIdInBatch(idList,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍛樺伐鏉冮檺涓嬪彂")
-    @GetMapping("/roleAuth/{id}")
-    @RequiresPermissions("business:empower:create")
-    public ApiResponse roleAuthById(@PathVariable Integer id) {
-        memberService.roleAuthById(id,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-
-    @ApiOperation("鍚屾浜鸿劯淇℃伅")
-    @PostMapping("/updateFace")
-    public ApiResponse updateFace(@RequestBody Member member) {
-        memberService.updateFace(member);
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("寮哄埗鍒犻櫎瀹夐槻骞冲彴浜哄憳淇℃伅")
-    @PostMapping("/delHkForce")
-    public ApiResponse delHkForce(@RequestBody Member member) {
-        memberService.delHkForce(member);
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("閲嶆柊涓嬪彂浜鸿劯")
-    @PostMapping("/empowerByList")
-    public ApiResponse empowerByList(@RequestBody Member member) {
-        memberService.empowerByList(member);
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:member:update")
-    public ApiResponse updateById(@RequestBody Member member) {
-        memberService.updateById(member);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID 绂佸惎鐢�  ")
-    @PostMapping("/updateStatusById")
-    @RequiresPermissions("business:member:update")
-    public ApiResponse updateStatusById(@RequestBody Member member){
-        memberService.updateStatusById(member);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鎷夐粦")
-    @GetMapping("/batchBlock")
-    @RequiresPermissions("business:member:delete")
-    public ApiResponse batchBlock(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        memberService.batchBlock(idList,2,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍐荤粨")
-    @GetMapping("/batchFreeze")
-    @RequiresPermissions("business:member:delete")
-    public ApiResponse batchFreeze(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        memberService.batchBlock(idList,1,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-
-
-    @ApiOperation("鏄惁鍙嫓璁跨姸鎬佷慨鏀�")
-    @PostMapping("/updateCanVisitById")
-    @RequiresPermissions("business:member:update")
-    public ApiResponse updateCanVisitById(@RequestBody Member member){
-        memberService.updateCanVisitById(member);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:member:query")
-    public ApiResponse<PageData<Member>> findPage (@RequestBody PageWrap<Member> pageWrap) {
-        return ApiResponse.success(memberService.findPage(pageWrap));
-    }
-
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:member:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Member> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Member.class).export(memberService.findPage(pageWrap).getRecords(), "浜哄憳淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:member:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(memberService.findById(id));
-    }
-
-
-
-
-    /**
-     *
-     * 鍒嗛〉鏌ヨ鍐呴儴浜哄憳淇℃伅
-     * @param pageWrap
-     * @return
-     */
-    @ApiOperation("鍒嗛〉鏌ヨ鍐呴儴浜哄憳淇℃伅")
-    @PostMapping("/findMemberInfoPage")
-    @RequiresPermissions("business:member:query")
-    public ApiResponse<PageData<Member>> findMemberInfoPage(@RequestBody PageWrap<MemberQuery> pageWrap){
-        if(pageWrap.getModel().getType().equals(Constants.memberType.visitor)){
-            return ApiResponse.success(memberService.findVisitPage(pageWrap));
-        }else if(pageWrap.getModel().getType().equals(Constants.memberType.internal)){
-            return ApiResponse.success(memberService.findMemberInfoPage(pageWrap));
-        }else {
-            return ApiResponse.success(null);
-        }
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ璁垮浜哄憳淇℃伅")
-    @PostMapping("/findVisitPage")
-    @RequiresPermissions("business:member:query")
-    public ApiResponse<PageData<Member>> findVisitPage (@RequestBody PageWrap<MemberQuery> pageWrap) {
-        return ApiResponse.success(memberService.findVisitPage(pageWrap));
-    }
-
-
-    @ApiOperation("寮傚父浜哄憳鍐荤粨/鎷夐粦")
-    @PostMapping("/findUnusualPage")
-    @RequiresPermissions("business:member:query")
-    public ApiResponse<PageData<Member>> findUnusualPage (@RequestBody PageWrap<MemberQuery> pageWrap) {
-        return ApiResponse.success(memberService.findUnusualPage(pageWrap));
-    }
-
-    @ApiOperation("鏍规嵁绫诲瀷鏌ヨ浜哄憳淇℃伅")
-    @PostMapping("/findTypeMemberInfo")
-    //@RequiresPermissions("business:member:query")
-    public ApiResponse<List<Member>> findTypeMemberInfo (@RequestBody Member member) {
-        return ApiResponse.success(memberService.findList(member));
-    }
-
-    @ApiOperation("鍏ㄩ噺淇℃伅鍚屾")
-    @PostMapping("/syncAll")
-    @RequiresPermissions("business:member:sync")
-    public ApiResponse sync(){
-        if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.erp){
-            erpSyncService.syncUsers(null);
-        }else if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.hk){
-            hkSyncOrgUserFHKService.syncUserData(this.getLoginUser(null));
-        }
-        return ApiResponse.success("鍚屾鎴愬姛");
-    }
-
-
-
-    @ApiOperation("娴嬭瘯浜哄憳鍐荤粨")
-    @PostMapping("/testFreeFz")
-    public ApiResponse testFreeFz() {
-        memberService.memberFreeze();
-        return ApiResponse.success(null);
-    }
-
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/MemberRoleController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/MemberRoleController.java
deleted file mode 100644
index dd316c6..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/MemberRoleController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.MemberRole;
-import com.doumee.service.business.MemberRoleService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "浜哄憳瑙掕壊鍏宠仈淇℃伅")
-@RestController
-@RequestMapping("/business/memberRole")
-public class MemberRoleController extends BaseController {
-
-    @Autowired
-    private MemberRoleService memberRoleService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:memberrole:create")
-    public ApiResponse create(@RequestBody MemberRole memberRole) {
-        return ApiResponse.success(memberRoleService.create(memberRole));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:memberrole:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        memberRoleService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:memberrole:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        memberRoleService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:memberrole:update")
-    public ApiResponse updateById(@RequestBody MemberRole memberRole) {
-        memberRoleService.updateById(memberRole);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:memberrole:query")
-    public ApiResponse<PageData<MemberRole>> findPage (@RequestBody PageWrap<MemberRole> pageWrap) {
-        return ApiResponse.success(memberRoleService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:memberrole:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<MemberRole> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(MemberRole.class).export(memberRoleService.findPage(pageWrap).getRecords(), "浜哄憳瑙掕壊鍏宠仈淇℃伅", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:memberrole:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(memberRoleService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ParkBookController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ParkBookController.java
deleted file mode 100644
index 671dd01..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ParkBookController.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.ParkBook;
-import com.doumee.service.business.ParkBookService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "杞﹁締棰勭害璁板綍淇℃伅琛�")
-@RestController
-@RequestMapping("/business/parkBook")
-public class ParkBookController extends BaseController {
-
-    @Autowired
-    private ParkBookService parkBookService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:parkbook:create")
-    public ApiResponse create(@RequestBody ParkBook parkBook) {
-        return ApiResponse.success(parkBookService.create(parkBook));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:parkbook:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        parkBookService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:parkbook:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        parkBookService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:parkbook:update")
-    public ApiResponse updateById(@RequestBody ParkBook parkBook) {
-        parkBookService.updateById(parkBook);
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("閲嶆柊涓嬪彂")
-    @PostMapping("/reUpdate")
-    @RequiresPermissions("business:parkbook:update")
-    public ApiResponse reUpdate(@RequestBody ParkBook parkBook) {
-        parkBookService.reUpdate(parkBook);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:parkbook:query")
-    public ApiResponse<PageData<ParkBook>> findPage (@RequestBody PageWrap<ParkBook> pageWrap) {
-        return ApiResponse.success(parkBookService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:parkbook:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<ParkBook> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(ParkBook.class).export(parkBookService.findPage(pageWrap).getRecords(), "杞﹁締棰勭害璁板綍淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:parkbook:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(parkBookService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ParksController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ParksController.java
deleted file mode 100644
index 8423731..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ParksController.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.Parks;
-import com.doumee.service.business.ParksService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "鍋滆溅搴撲俊鎭〃")
-@RestController
-@RequestMapping("/business/parks")
-public class ParksController extends BaseController {
-
-    @Autowired
-    private ParksService parksService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:parks:create")
-    public ApiResponse create(@RequestBody Parks parks) {
-        return ApiResponse.success(parksService.create(parks));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:parks:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        parksService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:parks:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        parksService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:parks:update")
-    public ApiResponse updateById(@RequestBody Parks parks) {
-        parksService.updateById(parks);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:parks:query")
-    public ApiResponse<PageData<Parks>> findPage (@RequestBody PageWrap<Parks> pageWrap) {
-        return ApiResponse.success(parksService.findPage(pageWrap));
-    }
-
-    @ApiOperation("鎵�灞炲仠杞﹀満鍒楄〃")
-    @PostMapping("/findList")
-    @RequiresPermissions("business:parks:query")
-    public ApiResponse<List<Parks>> findList (@RequestBody Parks parks) {
-        return ApiResponse.success(parksService.findList(parks));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:parks:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Parks> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Parks.class).export(parksService.findPage(pageWrap).getRecords(), "鍋滆溅搴撲俊鎭〃", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:parks:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(parksService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformController.java
deleted file mode 100644
index 88c2471..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.Platform;
-import com.doumee.service.business.PlatformService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-import com.doumee.api.BaseController;
-
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "鏈堝彴淇℃伅琛�")
-@RestController
-@RequestMapping("/business/platform")
-public class PlatformController extends BaseController {
-
-    @Autowired
-    private PlatformService platformService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:platform:create")
-    public ApiResponse create(@RequestBody Platform platform) {
-        return ApiResponse.success(platformService.create(platform));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:platform:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        platformService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:platform:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        platformService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:platform:update")
-    public ApiResponse updateById(@RequestBody Platform platform) {
-        platformService.updateById(platform);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:platform:query")
-    public ApiResponse<PageData<Platform>> findPage (@RequestBody PageWrap<Platform> pageWrap) {
-        return ApiResponse.success(platformService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:platform:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Platform> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Platform.class).export(platformService.findPage(pageWrap).getRecords(), "鏈堝彴淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:platform:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(platformService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformEventController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformEventController.java
deleted file mode 100644
index 8b2ef50..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformEventController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.api.BaseController;
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.PlatformEvent;
-import com.doumee.service.business.PlatformEventService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * @author 姹熻箘韫�
- * @date 2024/08/28 17:24
- */
-@Api(tags = "鏈堝彴杞﹁締杩涘嚭浜嬩欢鎺ㄩ�佽褰曡〃")
-@RestController
-@RequestMapping("/business/platformEvent")
-public class PlatformEventController extends BaseController {
-
-    @Autowired
-    private PlatformEventService platformEventService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:platformevent:create")
-    public ApiResponse create(@RequestBody PlatformEvent platformEvent) {
-        return ApiResponse.success(platformEventService.create(platformEvent));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:platformevent:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        platformEventService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:platformevent:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        platformEventService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:platformevent:update")
-    public ApiResponse updateById(@RequestBody PlatformEvent platformEvent) {
-        platformEventService.updateById(platformEvent);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:platformevent:query")
-    public ApiResponse<PageData<PlatformEvent>> findPage (@RequestBody PageWrap<PlatformEvent> pageWrap) {
-        return ApiResponse.success(platformEventService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:platformevent:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<PlatformEvent> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(PlatformEvent.class).export(platformEventService.findPage(pageWrap).getRecords(), "鏈堝彴杞﹁締杩涘嚭浜嬩欢鎺ㄩ�佽褰曡〃", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:platformevent:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(platformEventService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformGroupController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformGroupController.java
deleted file mode 100644
index b7cb56a..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformGroupController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.PlatformGroup;
-import com.doumee.service.business.PlatformGroupService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "鏈堝彴_鍒嗙粍淇℃伅琛�")
-@RestController
-@RequestMapping("/business/platformGroup")
-public class PlatformGroupController extends BaseController {
-
-    @Autowired
-    private PlatformGroupService platformGroupService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:platformgroup:create")
-    public ApiResponse create(@RequestBody PlatformGroup platformGroup) {
-        return ApiResponse.success(platformGroupService.create(platformGroup));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:platformgroup:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        platformGroupService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:platformgroup:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        platformGroupService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:platformgroup:update")
-    public ApiResponse updateById(@RequestBody PlatformGroup platformGroup) {
-        platformGroupService.updateById(platformGroup);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:platformgroup:query")
-    public ApiResponse<PageData<PlatformGroup>> findPage (@RequestBody PageWrap<PlatformGroup> pageWrap) {
-        return ApiResponse.success(platformGroupService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:platformgroup:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<PlatformGroup> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(PlatformGroup.class).export(platformGroupService.findPage(pageWrap).getRecords(), "鏈堝彴_鍒嗙粍淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:platformgroup:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(platformGroupService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformInterfaceLogController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformInterfaceLogController.java
deleted file mode 100644
index 01a31bb..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformInterfaceLogController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.PlatformInterfaceLog;
-import com.doumee.service.business.PlatformInterfaceLogService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "浣滀笟璋冨害骞冲彴鎺ュ彛浜や簰璁板綍")
-@RestController
-@RequestMapping("/business/platformInterfaceLog")
-public class PlatformInterfaceLogController extends BaseController {
-
-    @Autowired
-    private PlatformInterfaceLogService platformInterfaceLogService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:platforminterfacelog:create")
-    public ApiResponse create(@RequestBody PlatformInterfaceLog platformInterfaceLog) {
-        return ApiResponse.success(platformInterfaceLogService.create(platformInterfaceLog));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:platforminterfacelog:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        platformInterfaceLogService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:platforminterfacelog:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        platformInterfaceLogService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:platforminterfacelog:update")
-    public ApiResponse updateById(@RequestBody PlatformInterfaceLog platformInterfaceLog) {
-        platformInterfaceLogService.updateById(platformInterfaceLog);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:platforminterfacelog:query")
-    public ApiResponse<PageData<PlatformInterfaceLog>> findPage (@RequestBody PageWrap<PlatformInterfaceLog> pageWrap) {
-        return ApiResponse.success(platformInterfaceLogService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:platforminterfacelog:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<PlatformInterfaceLog> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(PlatformInterfaceLog.class).export(platformInterfaceLogService.findPage(pageWrap).getRecords(), "浣滀笟璋冨害骞冲彴鎺ュ彛浜や簰璁板綍", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:platforminterfacelog:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(platformInterfaceLogService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformJobController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformJobController.java
deleted file mode 100644
index 25e9229..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformJobController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.PlatformJob;
-import com.doumee.service.business.PlatformJobService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-import com.doumee.api.BaseController;
-
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "鏈堝彴璋冨害浣滀笟淇℃伅琛�")
-@RestController
-@RequestMapping("/business/platformJob")
-public class PlatformJobController extends BaseController {
-
-    @Autowired
-    private PlatformJobService platformJobService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:platformjob:create")
-    public ApiResponse create(@RequestBody PlatformJob platformJob) {
-        return ApiResponse.success(platformJobService.create(platformJob));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:platformjob:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        platformJobService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:platformjob:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        platformJobService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:platformjob:update")
-    public ApiResponse updateById(@RequestBody PlatformJob platformJob) {
-        platformJobService.updateById(platformJob);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:platformjob:query")
-    public ApiResponse<PageData<PlatformJob>> findPage (@RequestBody PageWrap<PlatformJob> pageWrap) {
-        return ApiResponse.success(platformJobService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:platformjob:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<PlatformJob> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(PlatformJob.class).export(platformJobService.findPage(pageWrap).getRecords(), "鏈堝彴璋冨害浣滀笟淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:platformjob:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(platformJobService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformLogController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformLogController.java
deleted file mode 100644
index a11a2e1..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformLogController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.PlatformLog;
-import com.doumee.service.business.PlatformLogService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "鏈堝彴_浣滀笟鎿嶄綔鍘嗗彶琛�")
-@RestController
-@RequestMapping("/business/platformLog")
-public class PlatformLogController extends BaseController {
-
-    @Autowired
-    private PlatformLogService platformLogService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:platformlog:create")
-    public ApiResponse create(@RequestBody PlatformLog platformLog) {
-        return ApiResponse.success(platformLogService.create(platformLog));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:platformlog:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        platformLogService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:platformlog:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        platformLogService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:platformlog:update")
-    public ApiResponse updateById(@RequestBody PlatformLog platformLog) {
-        platformLogService.updateById(platformLog);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:platformlog:query")
-    public ApiResponse<PageData<PlatformLog>> findPage (@RequestBody PageWrap<PlatformLog> pageWrap) {
-        return ApiResponse.success(platformLogService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:platformlog:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<PlatformLog> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(PlatformLog.class).export(platformLogService.findPage(pageWrap).getRecords(), "鏈堝彴_浣滀笟鎿嶄綔鍘嗗彶琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:platformlog:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(platformLogService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformQueueController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformQueueController.java
deleted file mode 100644
index c528307..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformQueueController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.PlatformQueue;
-import com.doumee.service.business.PlatformQueueService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "鏈堝彴_鍙彿鎺掗槦淇℃伅琛�")
-@RestController
-@RequestMapping("/business/platformQueue")
-public class PlatformQueueController extends BaseController {
-
-    @Autowired
-    private PlatformQueueService platformQueueService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:platformqueue:create")
-    public ApiResponse create(@RequestBody PlatformQueue platformQueue) {
-        return ApiResponse.success(platformQueueService.create(platformQueue));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:platformqueue:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        platformQueueService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:platformqueue:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        platformQueueService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:platformqueue:update")
-    public ApiResponse updateById(@RequestBody PlatformQueue platformQueue) {
-        platformQueueService.updateById(platformQueue);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:platformqueue:query")
-    public ApiResponse<PageData<PlatformQueue>> findPage (@RequestBody PageWrap<PlatformQueue> pageWrap) {
-        return ApiResponse.success(platformQueueService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:platformqueue:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<PlatformQueue> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(PlatformQueue.class).export(platformQueueService.findPage(pageWrap).getRecords(), "鏈堝彴_鍙彿鎺掗槦淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:platformqueue:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(platformQueueService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformReasonController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformReasonController.java
deleted file mode 100644
index 3c71e48..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformReasonController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.api.BaseController;
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.PlatformReason;
-import com.doumee.service.business.PlatformReasonService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * @author 姹熻箘韫�
- * @date 2024/08/13 14:08
- */
-@Api(tags = "鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�")
-@RestController
-@RequestMapping("/business/platformReason")
-public class PlatformReasonController extends BaseController {
-
-    @Autowired
-    private PlatformReasonService platformReasonService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:platformreason:create")
-    public ApiResponse create(@RequestBody PlatformReason platformReason) {
-        return ApiResponse.success(platformReasonService.create(platformReason));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:platformreason:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        platformReasonService.deleteById(id,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:platformreason:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        platformReasonService.deleteByIdInBatch(idList,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:platformreason:update")
-    public ApiResponse updateById(@RequestBody PlatformReason platformReason) {
-        platformReasonService.updateById(platformReason);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:platformreason:query")
-    public ApiResponse<PageData<PlatformReason>> findPage (@RequestBody PageWrap<PlatformReason> pageWrap) {
-        return ApiResponse.success(platformReasonService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:platformreason:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<PlatformReason> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(PlatformReason.class).export(platformReasonService.findPage(pageWrap).getRecords(), "鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:platformreason:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(platformReasonService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformShowParamController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformShowParamController.java
deleted file mode 100644
index 3637cbf..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformShowParamController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.PlatformShowParam;
-import com.doumee.service.business.PlatformShowParamService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "鏈堝彴_鏄剧ず閰嶇疆淇℃伅琛�")
-@RestController
-@RequestMapping("/business/platformShowParam")
-public class PlatformShowParamController extends BaseController {
-
-    @Autowired
-    private PlatformShowParamService platformShowParamService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:platformshowparam:create")
-    public ApiResponse create(@RequestBody PlatformShowParam platformShowParam) {
-        return ApiResponse.success(platformShowParamService.create(platformShowParam));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:platformshowparam:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        platformShowParamService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:platformshowparam:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        platformShowParamService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:platformshowparam:update")
-    public ApiResponse updateById(@RequestBody PlatformShowParam platformShowParam) {
-        platformShowParamService.updateById(platformShowParam);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:platformshowparam:query")
-    public ApiResponse<PageData<PlatformShowParam>> findPage (@RequestBody PageWrap<PlatformShowParam> pageWrap) {
-        return ApiResponse.success(platformShowParamService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:platformshowparam:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<PlatformShowParam> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(PlatformShowParam.class).export(platformShowParamService.findPage(pageWrap).getRecords(), "鏈堝彴_鏄剧ず閰嶇疆淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:platformshowparam:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(platformShowParamService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformWaterGasController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformWaterGasController.java
deleted file mode 100644
index 4f5749f..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformWaterGasController.java
+++ /dev/null
@@ -1,91 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.api.BaseController;
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.PlatformWaterGas;
-import com.doumee.service.business.PlatformWaterGasService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * @author 姹熻箘韫�
- * @date 2024/08/26 16:22
- */
-@Api(tags = "鏈堝彴_鐢ㄦ按鐢ㄦ皵淇℃伅璁板綍琛�")
-@RestController
-@RequestMapping("/business/platformWaterGas")
-public class PlatformWaterGasController extends BaseController {
-
-    @Autowired
-    private PlatformWaterGasService platformWaterGasService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:platformwatergas:create")
-    public ApiResponse create(@RequestBody PlatformWaterGas platformWaterGas) {
-        return ApiResponse.success(platformWaterGasService.create(platformWaterGas));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:platformwatergas:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        platformWaterGasService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:platformwatergas:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        platformWaterGasService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:platformwatergas:update")
-    public ApiResponse updateById(@RequestBody PlatformWaterGas platformWaterGas) {
-        platformWaterGasService.updateById(platformWaterGas);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:platformwatergas:query")
-    public ApiResponse<PageData<PlatformWaterGas>> findPage (@RequestBody PageWrap<PlatformWaterGas> pageWrap) {
-        return ApiResponse.success(platformWaterGasService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:platformwatergas:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<PlatformWaterGas> pageWrap, HttpServletResponse response) {
-        List<PlatformWaterGas>  waterGasPageData = platformWaterGasService.findPage(pageWrap).getRecords();
-        ExcelExporter.build(PlatformWaterGas.class).export(waterGasPageData, "鏈堝彴_鐢ㄦ按鐢ㄦ皵淇℃伅璁板綍琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:platformwatergas:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(platformWaterGasService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ProblemLogController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ProblemLogController.java
deleted file mode 100644
index 9f7a68e..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ProblemLogController.java
+++ /dev/null
@@ -1,91 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.ProblemLog;
-import com.doumee.dao.business.vo.ProblemLogVo;
-import com.doumee.service.business.ProblemLogService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "璁垮绛旈璁板綍琛�")
-@RestController
-@RequestMapping("/business/problemLog")
-public class ProblemLogController extends BaseController {
-
-    @Autowired
-    private ProblemLogService problemLogService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-//    @RequiresPermissions("business:problemlog:create")
-    public ApiResponse create(@RequestBody ProblemLog problemLog) {
-        return ApiResponse.success(problemLogService.create(problemLog));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:problemlog:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        problemLogService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:problemlog:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        problemLogService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:problemlog:update")
-    public ApiResponse updateById(@RequestBody ProblemLog problemLog) {
-        problemLogService.updateById(problemLog);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-//    @RequiresPermissions("business:problemlog:query")
-    public ApiResponse<PageData<ProblemLog>> findPage (@RequestBody PageWrap<ProblemLog> pageWrap) {
-        return ApiResponse.success(problemLogService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-//    @RequiresPermissions("business:problemlog:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<ProblemLog> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(ProblemLogVo.class).export(problemLogService.findPageExcel(pageWrap), "璁垮绛旈璁板綍琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:problemlog:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(problemLogService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ProblemsController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ProblemsController.java
deleted file mode 100644
index d0ad255..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ProblemsController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.dao.business.model.Problems;
-import com.doumee.service.business.ProblemsService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "璇曢淇℃伅琛�")
-@RestController
-@RequestMapping("/business/problems")
-public class ProblemsController extends BaseController {
-
-    @Autowired
-    private ProblemsService problemsService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:problems:create")
-    public ApiResponse create(@RequestBody Problems problems) {
-        return ApiResponse.success(problemsService.create(problems));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:problems:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        problemsService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:problems:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        problemsService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:problems:updateById")
-    public ApiResponse updateById(@RequestBody Problems problems) {
-        problemsService.updateById(problems);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:problems:query")
-    public ApiResponse<PageData<Problems>> findPage (@RequestBody PageWrap<Problems> pageWrap) {
-        return ApiResponse.success(problemsService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    //@RequiresPermissions("business:problems:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Problems> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Problems.class).export(problemsService.findPage(pageWrap).getRecords(), "璇曢淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    //@RequiresPermissions("business:problems:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(problemsService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/RetentionController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/RetentionController.java
deleted file mode 100644
index e37cb74..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/RetentionController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.Retention;
-import com.doumee.service.business.RetentionService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "鍦ㄥ巶浜哄憳淇℃伅 琛紙婊炵暀锛�")
-@RestController
-@RequestMapping("/business/retention")
-public class RetentionController extends BaseController {
-
-    @Autowired
-    private RetentionService retentionService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:retention:create")
-    public ApiResponse create(@RequestBody Retention retention) {
-        return ApiResponse.success(retentionService.create(retention));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:retention:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        retentionService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:retention:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        retentionService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:retention:update")
-    public ApiResponse updateById(@RequestBody Retention retention) {
-        retentionService.updateById(retention);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    //@RequiresPermissions("business:retention:query")
-    public ApiResponse<PageData<Retention>> findPage (@RequestBody PageWrap<Retention> pageWrap) {
-        return ApiResponse.success(retentionService.findTrainTimePage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    //@RequiresPermissions("business:retention:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Retention> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Retention.class).export(retentionService.findTrainTimePage(pageWrap).getRecords(), "瀹炴椂鍦ㄥ満浜哄憳", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:retention:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(retentionService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/StagingController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/StagingController.java
deleted file mode 100644
index 355474c..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/StagingController.java
+++ /dev/null
@@ -1,66 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.utils.Constants;
-import com.doumee.dao.admin.response.StagingDataVO;
-import com.doumee.dao.business.model.Visits;
-import com.doumee.service.business.MemberService;
-import com.doumee.service.business.VisitsService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import com.doumee.api.BaseController;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2024/2/26 11:00
- */
-@Api(tags = "宸ヤ綔鍙版暟鎹�")
-@RestController
-@RequestMapping("/business/staging")
-public class StagingController  extends BaseController {
-
-
-    @Autowired
-    private MemberService memberService;
-
-    @Autowired
-    private VisitsService visitsService;
-
-
-
-    @ApiOperation("澶撮儴鏁版嵁")
-    @GetMapping("/head")
-    public ApiResponse<StagingDataVO> head() {
-        return ApiResponse.success("鏌ヨ鎴愬姛",memberService.stagingHead(new StagingDataVO()));
-    }
-
-
-    @ApiOperation("涓讳綋鏁版嵁")
-    @GetMapping("/body")
-    public ApiResponse<StagingDataVO> body() {
-        return ApiResponse.success("鏌ヨ鎴愬姛",memberService.stagingBody(new StagingDataVO()));
-    }
-
-
-    @ApiOperation("瓒呮椂棰勮浜哄憳")
-    @PostMapping("/timeoutPage")
-    public ApiResponse<PageData<Visits>> timeoutPage (@RequestBody PageWrap<Visits> pageWrap) {
-        pageWrap.getModel().setLevelStatus(Constants.ZERO);
-        return ApiResponse.success(visitsService.retentionPage(pageWrap));
-    }
-
-    @ApiOperation("瓒呮椂棰勮浜哄憳绂诲満")
-    @GetMapping("/level")
-//    @RequiresPermissions("business:visits:level")
-    public ApiResponse level (@RequestParam Integer visitId) {
-        visitsService.visitLevel(visitId);
-        return ApiResponse.success("鎿嶄綔鎴愬姛");
-    }
-
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/TasksController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/TasksController.java
deleted file mode 100644
index 5717c57..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/TasksController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.api.BaseController;
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.Tasks;
-import com.doumee.service.business.TasksService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 16:06
- */
-@Api(tags = "瀹夐槻涓嬪彂骞冲彴浠诲姟淇℃伅琛�")
-@RestController
-@RequestMapping("/business/tasks")
-public class TasksController extends BaseController {
-
-    @Autowired
-    private TasksService tasksService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:tasks:create")
-    public ApiResponse create(@RequestBody Tasks tasks) {
-        return ApiResponse.success(tasksService.create(tasks));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:tasks:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        tasksService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:tasks:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        tasksService.deleteByIdInBatch(this.getIdList(ids));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:tasks:update")
-    public ApiResponse updateById(@RequestBody Tasks tasks) {
-        tasksService.updateById(tasks);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:tasks:query")
-    public ApiResponse<PageData<Tasks>> findPage (@RequestBody PageWrap<Tasks> pageWrap) {
-        return ApiResponse.success(tasksService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:tasks:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Tasks> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Tasks.class).export(tasksService.findPage(pageWrap).getRecords(), "瀹夐槻涓嬪彂骞冲彴浠诲姟淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:tasks:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(tasksService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/TrainTimeController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/TrainTimeController.java
deleted file mode 100644
index fee2405..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/TrainTimeController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.TrainTime;
-import com.doumee.service.business.TrainTimeService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-import com.doumee.api.BaseController;
-
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "浜哄憳鍩硅鏈夋晥鏈熻褰�")
-@RestController
-@RequestMapping("/business/trainTime")
-public class TrainTimeController extends BaseController {
-
-    @Autowired
-    private TrainTimeService trainTimeService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:traintime:create")
-    public ApiResponse create(@RequestBody TrainTime trainTime) {
-        return ApiResponse.success(trainTimeService.create(trainTime));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:traintime:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        trainTimeService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:traintime:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        trainTimeService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:traintime:update")
-    public ApiResponse updateById(@RequestBody TrainTime trainTime) {
-        trainTimeService.updateById(trainTime);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:traintime:query")
-    public ApiResponse<PageData<TrainTime>> findPage (@RequestBody PageWrap<TrainTime> pageWrap) {
-        return ApiResponse.success(trainTimeService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:traintime:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<TrainTime> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(TrainTime.class).export(trainTimeService.findPage(pageWrap).getRecords(), "浜哄憳鍩硅鏈夋晥鏈熻褰�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:traintime:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(trainTimeService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/UserActionController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/UserActionController.java
deleted file mode 100644
index a5697ef..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/UserActionController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.UserAction;
-import com.doumee.service.business.UserActionService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-import com.doumee.api.BaseController;
-
-/**
- * @author 姹熻箘韫�
- * @date 2023/12/14 13:57
- */
-@Api(tags = "浜哄憳鎿嶄綔璁板綍鏃ュ織")
-@RestController
-@RequestMapping("/business/userAction")
-public class UserActionController extends BaseController {
-
-    @Autowired
-    private UserActionService userActionService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:useraction:create")
-    public ApiResponse create(@RequestBody UserAction userAction) {
-        return ApiResponse.success(userActionService.create(userAction));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:useraction:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        userActionService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:useraction:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        userActionService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:useraction:update")
-    public ApiResponse updateById(@RequestBody UserAction userAction) {
-        userActionService.updateById(userAction);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:useraction:query")
-    public ApiResponse<PageData<UserAction>> findPage (@RequestBody PageWrap<UserAction> pageWrap) {
-        return ApiResponse.success(userActionService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:useraction:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<UserAction> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(UserAction.class).export(userActionService.findPage(pageWrap).getRecords(), "浜哄憳鎿嶄綔璁板綍鏃ュ織", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:useraction:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(userActionService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitEventController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitEventController.java
deleted file mode 100644
index 87df0db..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitEventController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.VisitEvent;
-import com.doumee.service.business.VisitEventService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "璁垮浜嬩欢鎺ㄩ�佽褰曡〃")
-@RestController
-@RequestMapping("/business/visitEvent")
-public class VisitEventController extends BaseController {
-
-    @Autowired
-    private VisitEventService visitEventService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:visitevent:create")
-    public ApiResponse create(@RequestBody VisitEvent visitEvent) {
-        return ApiResponse.success(visitEventService.create(visitEvent));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:visitevent:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        visitEventService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:visitevent:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        visitEventService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:visitevent:update")
-    public ApiResponse updateById(@RequestBody VisitEvent visitEvent) {
-        visitEventService.updateById(visitEvent);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:visitevent:query")
-    public ApiResponse<PageData<VisitEvent>> findPage (@RequestBody PageWrap<VisitEvent> pageWrap) {
-        return ApiResponse.success(visitEventService.findVisitPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:visitevent:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<VisitEvent> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(VisitEvent.class).export(visitEventService.findPageExcel(pageWrap), "璁垮鍑哄叆浜嬩欢_" + System.currentTimeMillis(), response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:visitevent:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(visitEventService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitParkController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitParkController.java
deleted file mode 100644
index 6b3cfa7..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitParkController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.VisitPark;
-import com.doumee.service.business.VisitParkService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 15:44
- */
-@Api(tags = "璁垮鎶ュ鍋滆溅搴撳叧鑱旇〃")
-@RestController
-@RequestMapping("/business/visitPark")
-public class VisitParkController extends BaseController {
-
-    @Autowired
-    private VisitParkService visitParkService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:visitpark:create")
-    public ApiResponse create(@RequestBody VisitPark visitPark) {
-        return ApiResponse.success(visitParkService.create(visitPark));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:visitpark:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        visitParkService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:visitpark:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        visitParkService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:visitpark:update")
-    public ApiResponse updateById(@RequestBody VisitPark visitPark) {
-        visitParkService.updateById(visitPark);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:visitpark:query")
-    public ApiResponse<PageData<VisitPark>> findPage (@RequestBody PageWrap<VisitPark> pageWrap) {
-        return ApiResponse.success(visitParkService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:visitpark:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<VisitPark> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(VisitPark.class).export(visitParkService.findPage(pageWrap).getRecords(), "璁垮鎶ュ鍋滆溅搴撳叧鑱旇〃", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:visitpark:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(visitParkService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitProblemLogController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitProblemLogController.java
deleted file mode 100644
index 91adfc2..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitProblemLogController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.VisitProblemLog;
-import com.doumee.service.business.VisitProblemLogService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 15:44
- */
-@Api(tags = "璁垮绛旈璁板綍琛�")
-@RestController
-@RequestMapping("/business/visitProblemLog")
-public class VisitProblemLogController extends BaseController {
-
-    @Autowired
-    private VisitProblemLogService visitProblemLogService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:visitproblemlog:create")
-    public ApiResponse create(@RequestBody VisitProblemLog visitProblemLog) {
-        return ApiResponse.success(visitProblemLogService.create(visitProblemLog));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:visitproblemlog:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        visitProblemLogService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:visitproblemlog:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        visitProblemLogService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:visitproblemlog:update")
-    public ApiResponse updateById(@RequestBody VisitProblemLog visitProblemLog) {
-        visitProblemLogService.updateById(visitProblemLog);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:visitproblemlog:query")
-    public ApiResponse<PageData<VisitProblemLog>> findPage (@RequestBody PageWrap<VisitProblemLog> pageWrap) {
-        return ApiResponse.success(visitProblemLogService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:visitproblemlog:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<VisitProblemLog> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(VisitProblemLog.class).export(visitProblemLogService.findPage(pageWrap).getRecords(), "璁垮绛旈璁板綍琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:visitproblemlog:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(visitProblemLogService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitProblemsController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitProblemsController.java
deleted file mode 100644
index 56c65a9..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitProblemsController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.VisitProblems;
-import com.doumee.service.business.VisitProblemsService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 15:44
- */
-@Api(tags = "璇曢淇℃伅琛�")
-@RestController
-@RequestMapping("/business/visitProblems")
-public class VisitProblemsController extends BaseController {
-
-    @Autowired
-    private VisitProblemsService visitProblemsService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:visitproblems:create")
-    public ApiResponse create(@RequestBody VisitProblems visitProblems) {
-        return ApiResponse.success(visitProblemsService.create(visitProblems));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:visitproblems:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        visitProblemsService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:visitproblems:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        visitProblemsService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:visitproblems:update")
-    public ApiResponse updateById(@RequestBody VisitProblems visitProblems) {
-        visitProblemsService.updateById(visitProblems);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:visitproblems:query")
-    public ApiResponse<PageData<VisitProblems>> findPage (@RequestBody PageWrap<VisitProblems> pageWrap) {
-        return ApiResponse.success(visitProblemsService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:visitproblems:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<VisitProblems> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(VisitProblems.class).export(visitProblemsService.findPage(pageWrap).getRecords(), "璇曢淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:visitproblems:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(visitProblemsService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitReasonController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitReasonController.java
deleted file mode 100644
index cbb867e..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitReasonController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.VisitReason;
-import com.doumee.service.business.VisitReasonService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-import com.doumee.api.BaseController;
-
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 15:44
- */
-@Api(tags = "璁垮浜嬬敱淇℃伅琛�")
-@RestController
-@RequestMapping("/business/visitReason")
-public class VisitReasonController extends BaseController {
-
-    @Autowired
-    private VisitReasonService visitReasonService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:visitreason:create")
-    public ApiResponse create(@RequestBody VisitReason visitReason) {
-        return ApiResponse.success(visitReasonService.create(visitReason));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:visitreason:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        visitReasonService.deleteById(id,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:visitreason:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        visitReasonService.deleteByIdInBatch(idList,this.getLoginUser(null));
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:visitreason:update")
-    public ApiResponse updateById(@RequestBody VisitReason visitReason) {
-        visitReasonService.updateById(visitReason);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:visitreason:query")
-    public ApiResponse<PageData<VisitReason>> findPage (@RequestBody PageWrap<VisitReason> pageWrap) {
-        return ApiResponse.success(visitReasonService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:visitreason:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<VisitReason> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(VisitReason.class).export(visitReasonService.findPage(pageWrap).getRecords(), "璁垮浜嬬敱淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:visitreason:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(visitReasonService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitorController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitorController.java
deleted file mode 100644
index 0c8bcca..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitorController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.Visitor;
-import com.doumee.service.business.VisitorService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-import com.doumee.api.BaseController;
-
-/**
- * @author 姹熻箘韫�
- * @since 2024/04/28 15:44
- */
-@Api(tags = "璁垮淇℃伅琛�")
-@RestController
-@RequestMapping("/business/visitor")
-public class VisitorController extends BaseController {
-
-    @Autowired
-    private VisitorService visitorService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:visitor:create")
-    public ApiResponse create(@RequestBody Visitor visitor) {
-        return ApiResponse.success(visitorService.create(visitor));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:visitor:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        visitorService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:visitor:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        visitorService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:visitor:update")
-    public ApiResponse updateById(@RequestBody Visitor visitor) {
-        visitorService.updateById(visitor);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:visitor:query")
-    public ApiResponse<PageData<Visitor>> findPage (@RequestBody PageWrap<Visitor> pageWrap) {
-        return ApiResponse.success(visitorService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:visitor:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Visitor> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Visitor.class).export(visitorService.findPage(pageWrap).getRecords(), "璁垮淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:visitor:query")
-    public ApiResponse findById(@PathVariable Integer id) {
-        return ApiResponse.success(visitorService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java
deleted file mode 100644
index 532e499..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java
+++ /dev/null
@@ -1,124 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.model.PageData;
-import com.doumee.core.utils.Constants;
-import com.doumee.dao.business.model.Visits;
-import com.doumee.service.business.VisitsService;
-import com.doumee.service.business.impl.hksync.fhk.HkSyncVisitFromHKServiceImpl;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.doumee.api.BaseController;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "璁垮鐢宠淇℃伅琛�")
-@RestController
-@RequestMapping("/business/visits")
-public class VisitsController extends BaseController {
-
-    @Autowired
-    private VisitsService visitsService;
-    @Autowired
-    private HkSyncVisitFromHKServiceImpl hkSyncVisitFromHKService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:visits:create")
-    public ApiResponse create(@RequestBody Visits visits) {
-        return ApiResponse.success(visitsService.create(visits));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:visits:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        visitsService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:visits:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        visitsService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:visits:update")
-    public ApiResponse updateById(@RequestBody Visits visits) {
-        visitsService.updateById(visits);
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("鍙栨秷棰勭害")
-    @GetMapping("/visitCancel")
-    @RequiresPermissions("business:visits:cancel")
-    public ApiResponse visitCancel(@RequestParam Integer visitId) {
-        visitsService.visitCancel(visitId);
-        return ApiResponse.success(null);
-    }
-    @ApiOperation("閲嶆柊涓嬪彂澶辫触鐨勯绾�")
-    @GetMapping("/visitResend")
-    @RequiresPermissions("business:visits:update")
-    public ApiResponse   visitResend(@RequestParam Integer visitId) {
-        visitsService.visitResend(visitId);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁鏃ユ湡(starttime)鍚屾璁垮鏁版嵁")
-    @PostMapping("/syncByDate")
-    @RequiresPermissions("business:visits:sync")
-    public ApiResponse syncByDate(@RequestBody Visits visits) {
-        hkSyncVisitFromHKService.syncVistAppointData(visits.getStarttime());
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:visits:query")
-    public ApiResponse<PageData<Visits>> findPage (@RequestBody PageWrap<Visits> pageWrap) {
-        return ApiResponse.success(visitsService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:visits:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<Visits> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Visits.class).export(visitsService.findPage(pageWrap).getRecords(), "璁垮鐢宠淇℃伅琛�", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:visits:query")
-    public ApiResponse<Visits> findById(@PathVariable Integer id) {
-        return ApiResponse.success(visitsService.findById(id,null));
-    }
-
-    @ApiOperation("婊炵暀浜哄憳")
-    @PostMapping("/retentionPage")
-    @RequiresPermissions("business:visits:query")
-    public ApiResponse<PageData<Visits>> retentionPage (@RequestBody PageWrap<Visits> pageWrap) {
-        pageWrap.getModel().setLevelStatus(Constants.ZERO);
-        return ApiResponse.success(visitsService.retentionPage(pageWrap));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsInterfaceLogController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsInterfaceLogController.java
deleted file mode 100644
index b3df154..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsInterfaceLogController.java
+++ /dev/null
@@ -1,89 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.api.BaseController;
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.dao.business.model.WmsInterfaceLog;
-import com.doumee.service.business.WmsInterfaceLogService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
-import java.util.List;
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "WMS骞冲彴鎺ュ彛浜や簰璁板綍")
-@RestController
-@RequestMapping("/business/wmsInterfaceLog")
-public class WmsInterfaceLogController extends BaseController {
-
-    @Autowired
-    private WmsInterfaceLogService interfaceLogService;
-
-    @PreventRepeat
-    @ApiOperation("鏂板缓")
-    @PostMapping("/create")
-    @RequiresPermissions("business:interfacelog:create")
-    public ApiResponse create(@RequestBody WmsInterfaceLog interfaceLog) {
-        return ApiResponse.success(interfaceLogService.create(interfaceLog));
-    }
-
-    @ApiOperation("鏍规嵁ID鍒犻櫎")
-    @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:interfacelog:delete")
-    public ApiResponse deleteById(@PathVariable Integer id) {
-        interfaceLogService.deleteById(id);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鎵归噺鍒犻櫎")
-    @GetMapping("/delete/batch")
-    @RequiresPermissions("business:interfacelog:delete")
-    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
-        String [] idArray = ids.split(",");
-        List<Integer> idList = new ArrayList<>();
-        for (String id : idArray) {
-            idList.add(Integer.valueOf(id));
-        }
-        interfaceLogService.deleteByIdInBatch(idList);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鏍规嵁ID淇敼")
-    @PostMapping("/updateById")
-    @RequiresPermissions("business:interfacelog:update")
-    public ApiResponse updateById(@RequestBody WmsInterfaceLog interfaceLog) {
-        interfaceLogService.updateById(interfaceLog);
-        return ApiResponse.success(null);
-    }
-
-    @ApiOperation("鍒嗛〉鏌ヨ")
-    @PostMapping("/page")
-    @RequiresPermissions("business:interfacelog:query")
-    public ApiResponse<PageData<WmsInterfaceLog>> findPage (@RequestBody PageWrap<WmsInterfaceLog> pageWrap) {
-        return ApiResponse.success(interfaceLogService.findPage(pageWrap));
-    }
-
-    @ApiOperation("瀵煎嚭Excel")
-    @PostMapping("/exportExcel")
-    @RequiresPermissions("business:interfacelog:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<WmsInterfaceLog> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(WmsInterfaceLog.class).export(interfaceLogService.findPage(pageWrap).getRecords(), "涓夋柟骞冲彴鎺ュ彛浜や簰璁板綍", response);
-    }
-
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/{id}")
-    @RequiresPermissions("business:interfacelog:query")
-    public ApiResponse<WmsInterfaceLog> findById(@PathVariable Integer id) {
-        return ApiResponse.success(interfaceLogService.findById(id));
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsPushController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsPushController.java
deleted file mode 100644
index 05e12cf..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsPushController.java
+++ /dev/null
@@ -1,144 +0,0 @@
-package com.doumee.api.business;
-
-import com.alibaba.fastjson.JSONObject;
-import com.doumee.api.BaseController;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.exception.BusinessException;
-import com.doumee.core.utils.Constants;
-import com.doumee.core.wms.model.request.WmsActionNoticeRequest;
-import com.doumee.core.wms.model.request.WmsBaseRequest;
-import com.doumee.core.wms.model.request.WmsInboundNoticeRequest;
-import com.doumee.core.wms.model.request.WmsOutboundNoticeRequest;
-import com.doumee.core.wms.model.response.WmsBaseResponse;
-import com.doumee.service.business.third.WmsService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/30 15:33
- */
-@Api(tags = "WMS骞冲彴鏁版嵁鎺ㄩ�佹帴鍙�")
-@RestController
-@RequestMapping("/wms")
-@Slf4j
-public class WmsPushController extends BaseController {
-
-    @Autowired
-    private WmsService wmsService;
-
-    @PreventRepeat
-    @ApiOperation("銆怶MS銆戞帹閫佸叆搴撳崟閫氱煡浠诲姟")
-    @PostMapping("/push/inboundNotice")
-    public WmsBaseResponse inboundNotice(@RequestBody WmsBaseRequest<WmsInboundNoticeRequest> param) {
-
-        int success = Constants.ZERO;
-        WmsBaseResponse result =null;
-        try {
-             result = wmsService.inboundNotice(param);
-        }catch (BusinessException e){
-            log.error("銆怶MS銆戞帹閫佸叆搴撳崟閫氱煡浠诲姟===澶辫触锛�"+e.getMessage());
-            success = Constants.ONE;
-        }catch (Exception e){
-            log.error("銆怶MS銆戞帹閫佸叆搴撳崟閫氱煡浠诲姟===澶辫触锛�"+e.getMessage());
-            e.printStackTrace();
-            success = Constants.ONE;
-        }finally {
-            wmsService.saveInterfaceLog("/wms/push/inboundNotice", "鎺ㄩ�佸叆搴撳崟閫氱煡浠诲姟",JSONObject.toJSONString(param),
-                    success, JSONObject.toJSONString(result),Constants.ONE);
-        }
-        return result;
-    }
-
-    @PreventRepeat
-    @ApiOperation("銆怶MS銆戞帹閫佸嚭搴撳崟閫氱煡浠诲姟")
-    @PostMapping("/push/outboundNotice")
-    public WmsBaseResponse outboundNotice(@RequestBody WmsBaseRequest<WmsOutboundNoticeRequest> param) {
-        int success = Constants.ZERO;
-        WmsBaseResponse result =null;
-        try {
-              result = wmsService.outboundNotice(param);
-        }catch (BusinessException e){
-            log.error("銆怶MS銆戞帹閫佸嚭搴撳崟閫氱煡浠诲姟===澶辫触锛�"+e.getMessage());
-            success = Constants.ONE;
-        }catch (Exception e){
-            log.error("銆怶MS銆戞帹閫佸嚭搴撳崟閫氱煡浠诲姟===澶辫触锛�"+e.getMessage());
-            e.printStackTrace();
-            success = Constants.ONE;
-        }finally {
-            wmsService.saveInterfaceLog("/wms/push/outboundNotice", "銆怶MS銆戞帹閫佸嚭搴撳崟閫氱煡浠诲姟",JSONObject.toJSONString(param),success
-                    , JSONObject.toJSONString(result),Constants.ONE);
-        }
-
-        return result;
-    }
-    @PreventRepeat
-    @ApiOperation("銆怶MS銆戞帹閫佸彇娑堝叆搴撳崟閫氱煡浠诲姟")
-    @PostMapping("/push/cancelInbound")
-    public WmsBaseResponse cancelInbound(@RequestBody WmsBaseRequest<WmsActionNoticeRequest> param) {
-        int success = Constants.ZERO;
-        WmsBaseResponse result =null;
-        try {
-            result = wmsService.cancelInbound(param);
-        }catch (BusinessException e){
-            log.error("銆怶MS銆戞帹閫佸彇娑堝叆搴撳崟閫氱煡浠诲姟===澶辫触锛�"+e.getMessage());
-            success = Constants.ONE;
-        }catch (Exception e){
-            log.error("銆怶MS銆戞帹閫佸彇娑堝叆搴撳崟閫氱煡浠诲姟===澶辫触锛�"+e.getMessage());
-            e.printStackTrace();
-            success = Constants.ONE;
-        }finally {
-            wmsService.saveInterfaceLog("/wms/push/cancelInbound", "鎺ㄩ�佸彇娑堝叆搴撳崟閫氱煡浠诲姟",JSONObject.toJSONString(param),
-                    success, JSONObject.toJSONString(result),Constants.ONE);
-        }
-        return result;
-    }
-    @PreventRepeat
-    @ApiOperation("銆怶MS銆戞帹閫佸彇娑堝嚭搴撳崟閫氱煡浠诲姟")
-    @PostMapping("/push/cancelOutbound")
-    public WmsBaseResponse cancelOutbound(@RequestBody WmsBaseRequest<WmsActionNoticeRequest> param) {
-        int success = Constants.ZERO;
-        WmsBaseResponse result =null;
-        try {
-            result = wmsService.cancelOutbound(param);
-        }catch (BusinessException e){
-            log.error("銆怶MS銆戞帹閫佸彇娑堝嚭搴撳崟閫氱煡浠诲姟===澶辫触锛�"+e.getMessage());
-            success = Constants.ONE;
-        }catch (Exception e){
-            log.error("銆怶MS銆戞帹閫佸彇娑堝嚭搴撳崟閫氱煡浠诲姟===澶辫触锛�"+e.getMessage());
-            e.printStackTrace();
-            success = Constants.ONE;
-        }finally {
-            wmsService.saveInterfaceLog("/wms/push/cancelOutbound", "鎺ㄩ�佸彇娑堝嚭搴撳崟閫氱煡浠诲姟",
-                    JSONObject.toJSONString(param),  success, JSONObject.toJSONString(result),Constants.ONE);
-        }
-        return result;
-    }
-    @PreventRepeat
-    @ApiOperation("銆怶MS銆戞帹閫佸嚭鍏ュ簱浣滀笟瀹屾垚閫氱煡浠诲姟")
-    @PostMapping("/push/doneTask")
-    public WmsBaseResponse doneTask(@RequestBody WmsBaseRequest<WmsActionNoticeRequest> param) {
-        int success = Constants.ZERO;
-        WmsBaseResponse result =null;
-        try {
-            result = wmsService.doneTask(param);
-        }catch (BusinessException e){
-            log.error("銆怶MS銆戞帹閫佸嚭鍏ュ簱浣滀笟瀹屾垚閫氱煡浠诲姟===澶辫触锛�"+e.getMessage());
-            success = Constants.ONE;
-        }catch (Exception e){
-            log.error("銆怶MS銆戞帹閫佸嚭鍏ュ簱浣滀笟瀹屾垚閫氱煡浠诲姟===澶辫触锛�"+e.getMessage());
-            e.printStackTrace();
-            success = Constants.ONE;
-        }finally {
-            wmsService.saveInterfaceLog("/wms/push/doneTask", "鎺ㄩ�佸嚭鍏ュ簱浣滀笟瀹屾垚閫氱煡浠诲姟",JSONObject.toJSONString(param),
-                    success, JSONObject.toJSONString(result),Constants.ONE);
-        }
-        return result;
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CompanyCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CompanyCloudController.java
index e76ef3f..42c3b1f 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CompanyCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CompanyCloudController.java
@@ -1,6 +1,5 @@
 package com.doumee.cloud.admin;
 
-import com.baomidou.mybatisplus.annotation.TableField;
 import com.doumee.api.BaseController;
 import com.doumee.config.DataSyncConfig;
 import com.doumee.config.annotation.CloudRequiredPermission;
@@ -37,7 +36,7 @@
     @Autowired
     private CompanyService companyService;
 
-    @Autowired
+//    @Autowired
     private ERPSyncService erpSyncService;
     @Autowired
     private HkSyncOrgUserFromHKServiceImpl hkSyncOrgUserFHKService;
@@ -123,6 +122,12 @@
     public ApiResponse<List<Company>> list (@RequestBody Company company,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
         return ApiResponse.success(companyService.findList(company));
     }
+    @ApiOperation("鏂板缓鍚堝悓鎵�灞炲叕鍙哥瓫閫�")
+    @PostMapping("/listForConstract")
+    @CloudRequiredPermission("business:company:query")
+    public ApiResponse<List<Company>> listForConstract (@RequestBody Company company,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+        return ApiResponse.success(companyService.listForConstract(company));
+    }
 
 
 
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/ERPSyncCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/ERPSyncCloudController.java
index fbef94b..af2ece6 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/ERPSyncCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/ERPSyncCloudController.java
@@ -21,7 +21,7 @@
 @RestController
 @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/erpsync")
 public class ERPSyncCloudController extends BaseController {
-    @Autowired
+//    @Autowired
     private ERPSyncService erpSyncService;
 
     @PreventRepeat
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java
index 3b928b1..e5f73cb 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java
@@ -44,7 +44,7 @@
 @RestController
 @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/member")
 public class MemberCloudController extends BaseController {
-    @Autowired
+//    @Autowired
     private ERPSyncService erpSyncService;
     @Autowired
     private HkSyncOrgUserFromHKServiceImpl hkSyncOrgUserFHKService;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java
index 2e1e381..1d28bbf 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java
@@ -105,7 +105,6 @@
     @ApiModelProperty(value = "璐圭敤绫诲瀷锛�0=鍛ㄦ湡璐圭敤锛�1=涓�娆℃�ц垂鐢�")
     @TableField(exist = false)
     private Integer feeType;
-
     @ApiModelProperty(value = "鎵�灞炲叕鍙�", example = "1")
     private Integer companyId;
 
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java
index a7c167c..bc6ea4b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java
@@ -122,4 +122,15 @@
     @ApiModelProperty(value = "瓒呮湡浠诲姟鏁�")
     @TableField(exist = false)
     private Integer timeOutTaskNum;
+
+    @ApiModelProperty(value = "寮�濮嬫棩鏈燂紙鎼滅储鎴鏃ユ湡锛�")
+    @TableField(exist = false)
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date startDateSec;
+
+    @ApiModelProperty(value = "缁撴潫鏃ユ湡锛堟悳绱㈡埅姝㈡棩鏈燂級")
+    @TableField(exist = false)
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date endDateSec;
+
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTaskRecord.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTaskRecord.java
index 1cf5188..4167a7c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTaskRecord.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTaskRecord.java
@@ -35,7 +35,6 @@
 
     @ApiModelProperty(value = "鍒涘缓鏃堕棿")
     @ExcelColumn(name="鍒涘缓鏃堕棿")
-    @JsonFormat(pattern = "yyyy-MM-dd")
     private Date createDate;
 
     @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
@@ -44,7 +43,6 @@
 
     @ApiModelProperty(value = "鏇存柊鏃堕棿")
     @ExcelColumn(name="鏇存柊鏃堕棿")
-    @JsonFormat(pattern = "yyyy-MM-dd")
     private Date editDate;
 
     @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
index 52b009b..8b9b37c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
@@ -33,6 +33,7 @@
 
     @ApiModelProperty(value = "鍒涘缓鏃堕棿")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @ExcelColumn(name="涓婃姤鏃堕棿",index = 5,width = 16,dateFormat = "yyyy-MM-dd HH:mm:ss")
     private Date createDate;
 
     @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
@@ -83,7 +84,6 @@
 
     @ApiModelProperty(value = "鎻愭姤鏃堕棿")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    @ExcelColumn(name="涓婃姤鏃堕棿",index = 5,width = 16,dateFormat = "yyyy-MM-dd HH:mm:ss")
     private Date submitDate;
 
     @ApiModelProperty(value = "宸ュ崟鍒嗙被缂栫爜(鍏宠仈category锛�", example = "1")
@@ -97,7 +97,7 @@
     private String code;
 
     @ApiModelProperty(value = "澶勭悊鐘舵�� 0寰呭鐞� 1宸插垎娲� 2宸插鐞�", example = "1")
-    @ExcelColumn(name="宸ュ崟鐘舵��",index = 7,width = 10,valueMapping = "0=寰呭鐞�;1=宸插垎娲�;1=宸插鐞�;")
+    @ExcelColumn(name="宸ュ崟鐘舵��",index = 7,width = 10,valueMapping = "0=寰呭鐞�;1=宸插垎娲�;2=宸插鐞�;")
     private Integer dealStatus;
 
     @ApiModelProperty(value = "鍒嗘淳浜虹紪鐮�(鍏宠仈system_user)", example = "1")
@@ -136,9 +136,12 @@
     @TableField(exist = false)
     private String buildingName;
     @ApiModelProperty(value = "鎴挎簮鍚嶇О")
-    @ExcelColumn(name="鎴挎簮",index = 2,width = 10)
     @TableField(exist = false)
     private String roomName;
+    @ApiModelProperty(value = "鎶ヤ慨鍖哄煙")
+    @ExcelColumn(name="鎶ヤ慨鍖哄煙",index = 2,width = 10)
+    @TableField(exist = false)
+    private String areaNameInfo;
     @ApiModelProperty(value = "妤煎眰鍚嶇О")
     @TableField(exist = false)
     private String floorName;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CompanyService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CompanyService.java
index d890255..09e5135 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CompanyService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CompanyService.java
@@ -129,4 +129,6 @@
 
     Integer createFinanceCompany(Company company);
     Integer updateFinanceCompany(Company company);
+
+    List<Company>  listForConstract(Company company);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/AreasServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/AreasServiceImpl.java
index 2416bac..28835e0 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/AreasServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/AreasServiceImpl.java
@@ -102,6 +102,7 @@
         wrapper.lambda().eq(Areas::getId,areas.getId());
         Areas update = new Areas();
         update.setName(areas.getName());
+        update.setCode(areas.getCode());
         update.setSortnum(areas.getSortnum());
         areasMapper.update(update,wrapper);
         //鍒锋柊缂撳瓨鏁版嵁
@@ -326,7 +327,7 @@
        CITY_LIST=null;
        AREA_LIST = null;
        ALL_AREA_TREE = null;
-       ALL_AREA_LIST =  areasMapper.selectList(new QueryWrapper<>(a).lambda().orderByDesc(Areas::getSortnum));
+       ALL_AREA_LIST =  areasMapper.selectList(new QueryWrapper<>(a).lambda().orderByAsc(Areas::getCode));
        if(ALL_AREA_LIST!=null){
            for(Areas model : ALL_AREA_LIST){
                 if(Constants.equalsInteger(model.getType(),Constants.ZERO)){
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
index 2108dd2..f306f85 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
@@ -432,6 +432,18 @@
     }
 
     @Override
+    public  List<Company>  listForConstract(Company company) {
+        MPJLambdaWrapper<Company> queryWrapper = new MPJLambdaWrapper<>();
+        queryWrapper.selectAll(Company.class);
+        queryWrapper.like(company.getName() != null,Company::getName, company.getName());
+        queryWrapper.eq(Company::getStatus, Constants.ZERO);
+        queryWrapper.eq(Company::getType, Constants.TWO);
+        queryWrapper.eq(Company::getIsdeleted, Constants.ZERO);
+        queryWrapper.exists("select b.id from yw_account b where b.isdeleted=0 and b.company_id=t.id and b.status=0");
+        queryWrapper.orderByDesc(Company::getCreateDate);
+        return companyMapper.selectList(queryWrapper);
+    }
+    @Override
     public List<Company> findList(Company company) {
         MPJLambdaWrapper<Company> queryWrapper = new MPJLambdaWrapper<>();
         if (company.getId() != null) {
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index fb15ce1..12976d2 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -1016,6 +1016,8 @@
             throw  new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝浜哄憳淇℃伅涓嶅瓨鍦紒");
         }
        if(model.getCompanyId()!=null) {
+           member.setEditor(member.getLoginUserInfo().getId());
+           member.setEditDate(new Date());
            if(Constants.equalsInteger(member.getHeadStatus(),Constants.ONE)){
                //濡傛灉鏄彇娑堜富绠�
                companyMapper.update(null,new UpdateWrapper<Company>().lambda()
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
index 0afc0a7..d6f34b7 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
@@ -290,11 +290,13 @@
                 .eq(YwPatrolScheme::getIsdeleted,Constants.ZERO)
                 .like(StringUtils.isNotBlank(model.getTitle()),YwPatrolScheme::getTitle,model.getTitle())
                 //鏌ヨ鏈夋椂娈典氦闆嗙殑鏁版嵁
-                .apply(Objects.nonNull(model.getStartDate())&&Objects.nonNull(model.getEndDate()),
-                        " t.START_DATE <= '"+pageWrap.getModel().getEndDate()+"' and t.END_DATE >= '"+pageWrap.getModel().getStartDate()+"' "
-                )
-//                .ge(Objects.nonNull(model.getStartDate()),YwDeviceRecord::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getStartDate()))
-//                .le(Objects.nonNull(model.getEndDate()),YwDeviceRecord::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getEndDate()))
+              /*  .apply(Objects.nonNull(model.getStartDate())&&Objects.nonNull(model.getEndDate()),
+                        " t.START_DATE <= '"+pageWrap.getModel().getEndDate()+"' or t.END_DATE >= '"+pageWrap.getModel().getStartDate()+"' "
+                )*/
+                .ge( model.getStartDate()!=null,YwPatrolScheme::getStartDate, Utils.Date.getStart(pageWrap.getModel().getStartDate()))
+                .le(Objects.nonNull(model.getEndDate()),YwPatrolScheme::getStartDate, Utils.Date.getStart(pageWrap.getModel().getEndDate()))
+                .ge(Objects.nonNull(model.getStartDateSec()),YwPatrolScheme::getEndDate, Utils.Date.getStart(pageWrap.getModel().getStartDateSec()))
+                .le(Objects.nonNull(model.getEndDateSec()),YwPatrolScheme::getEndDate, Utils.Date.getStart(pageWrap.getModel().getEndDateSec()))
                 .orderByDesc(YwPatrolScheme::getCreateDate)
         ;
         IPage<YwPatrolScheme> iPage = ywPatrolSchemeMapper.selectJoinPage(page,YwPatrolScheme.class,queryWrapper);
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java
index f463fe7..087d9a3 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java
@@ -135,7 +135,33 @@
                 .orderByDesc(YwPatrolScheme::getCreateDate)
         ;
         IPage<YwPatrolTaskRecord> iPage = ywPatrolTaskRecordMapper.selectJoinPage(page,YwPatrolTaskRecord.class,queryWrapper); 
+        if(iPage!=null && iPage.getRecords()!=null){
+            for(YwPatrolTaskRecord m : iPage.getRecords()){
+                getFileListByModel(m);
+            }
+        }
         return PageData.from(iPage);
+    }
+
+    private void getFileListByModel(YwPatrolTaskRecord ywPatrolTaskRecord) {
+        //闄勪欢鏁版嵁
+        List<Multifile> multifileList = multifileMapper.selectJoinList(Multifile.class,new MPJLambdaWrapper<Multifile>()
+                .selectAll(Multifile.class)
+                .selectAs(SystemUser::getRealname,Multifile::getUserName)
+                .leftJoin(SystemUser.class,SystemUser::getId,Multifile::getCreator)
+                .eq(Multifile::getObjId,ywPatrolTaskRecord.getId())
+                .eq(Multifile::getIsdeleted,Constants.ZERO)
+                .eq(Multifile::getObjType,Constants.MultiFile.FN_PATROL_TASK_RECORD_FILE.getKey()));
+        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(multifileList)){
+            String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode()
+                    +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_PATROL).getCode();
+            for (Multifile multifile:multifileList) {
+                if(StringUtils.isNotBlank(multifile.getFileurl())){
+                    multifile.setFileurlFull(path + multifile.getFileurl());
+                }
+            }
+            ywPatrolTaskRecord.setMultifileList(multifileList);
+        }
     }
 
     @Override
@@ -253,24 +279,7 @@
         if(Objects.isNull(ywPatrolTaskRecord)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈尮閰嶅埌宸℃鐐�!");
         }
-        //闄勪欢鏁版嵁
-        List<Multifile> multifileList = multifileMapper.selectJoinList(Multifile.class,new MPJLambdaWrapper<Multifile>()
-                .selectAll(Multifile.class)
-                .selectAs(SystemUser::getRealname,Multifile::getUserName)
-                .leftJoin(SystemUser.class,SystemUser::getId,Multifile::getCreator)
-                .eq(Multifile::getObjId,ywPatrolTaskRecord.getId())
-                .eq(Multifile::getIsdeleted,Constants.ZERO)
-                .eq(Multifile::getObjType,Constants.MultiFile.FN_PATROL_TASK_RECORD_FILE.getKey()));
-        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(multifileList)){
-            String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode()
-                    +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_PATROL).getCode();
-            for (Multifile multifile:multifileList) {
-                if(StringUtils.isNotBlank(multifile.getFileurl())){
-                    multifile.setFileurlFull(path + multifile.getFileurl());
-                }
-            }
-            ywPatrolTaskRecord.setMultifileList(multifileList);
-        }
+        getFileListByModel(ywPatrolTaskRecord);
 
         return ywPatrolTaskRecord;
 
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java
index 57dc76a..84f274d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java
@@ -86,8 +86,8 @@
                 .selectAs(YwPatrolScheme::getCode,YwPatrolTask::getPlanCode)
                 .selectAs(YwPatrolScheme::getTitle,YwPatrolTask::getPlanTitle)
                 .selectAs(SystemUser::getRealname,YwPatrolTask::getUserName)
-                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and t.ISDELETED = 0  ) ",YwPatrolTask::getPatrolNum)
-                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and t.STATUS = 1 and t.ISDELETED = 0) ",YwPatrolTask::getFinishNum)
+                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and ytr.ISDELETED = 0  ) ",YwPatrolTask::getPatrolNum)
+                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and ytr.STATUS = 1 and ytr.ISDELETED = 0) ",YwPatrolTask::getFinishNum)
                 .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolTask::getDealUserId)
                 .leftJoin(YwPatrolScheme.class,YwPatrolScheme::getId,YwPatrolTask::getSchemeId)
                 .eq(YwPatrolTask::getIsdeleted, Constants.ZERO)
@@ -140,8 +140,8 @@
                 .selectAs(YwPatrolScheme::getCode,YwPatrolTask::getPlanCode)
                 .selectAs(YwPatrolScheme::getTitle,YwPatrolTask::getPlanTitle)
                 .selectAs(SystemUser::getRealname,YwPatrolTask::getUserName)
-                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and t.ISDELETED = 0  ) ",YwPatrolTask::getPatrolNum)
-                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and t.STATUS = 1 and t.ISDELETED = 0) ",YwPatrolTask::getFinishNum)
+                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and ytr.ISDELETED = 0  ) ",YwPatrolTask::getPatrolNum)
+                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and ytr.STATUS = 1 and ytr.ISDELETED = 0) ",YwPatrolTask::getFinishNum)
                 .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolTask::getDealUserId)
                 .leftJoin(YwPatrolScheme.class,YwPatrolScheme::getId,YwPatrolTask::getSchemeId)
                 .eq(YwPatrolTask::getIsdeleted, Constants.ZERO)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java
index 2e2061a..2e0587a 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java
@@ -282,6 +282,7 @@
         List<YwRoom>  ywRoomList = ywRoomMapper.selectList(new QueryWrapper<YwRoom>().lambda()
                 .eq(YwRoom::getIsdeleted,Constants.ZERO)
                 .eq(YwRoom::getStatus,Constants.ZERO)
+                .eq(YwRoom::getIsInvestment,Constants.ONE)
                 .eq(Objects.nonNull(dataDTO.getProjectId()),YwRoom::getProjectId,dataDTO.getProjectId())
                 .apply(Objects.nonNull(dataDTO)&&Objects.nonNull(dataDTO.getStartDate())&&Objects.nonNull(dataDTO.getEndDate())," id not in  (" +
                         " SELECT y2.room_id FROM  yw_contract y1 left join yw_contract_room y2 on y1.id = y2.contract_id where 1 = 1 and y1.`STATUS` in( 0,1,2) " +
@@ -291,7 +292,7 @@
                         " SELECT y2.room_id FROM  yw_contract y1 left join yw_contract_room y2 on y1.id = y2.contract_id where 1 = 1 and y1.`STATUS` = 3 " +
                         " and y1.START_DATE < '"+dataDTO.getEndDate()+" 00:00:00' and y1.BT_DATE > '"+ dataDTO.getStartDate() +"  00:00:00' " +
                         "  ) ")
-                .orderByAsc(YwRoom::getSortnum)
+                .orderByAsc(YwRoom::getRoomNum)
         );
 
         for (YwRoom data:ywRoomList) {
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java
index c8a86f3..42f163b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java
@@ -499,10 +499,28 @@
                 queryWrapper.orderByAsc(sortData.getProperty());
             }
         }
+        if(StringUtils.isNotBlank(pageWrap.getModel().getBuildingName())){
+            queryWrapper.and(rw ->{
+                rw.like(YwBuilding::getName,pageWrap.getModel().getBuildingName()).or()
+                        .like(YwRoom::getName,pageWrap.getModel().getBuildingName());
+            });
+        }
         queryWrapper.ge(Objects.nonNull(pageWrap.getModel().getQueryStartTime()), YwWorkorder::getCreateDate, pageWrap.getModel().getQueryStartTime())
                 .le(Objects.nonNull(pageWrap.getModel().getQueryEndTime()), YwWorkorder::getCreateDate, pageWrap.getModel().getQueryEndTime());
         queryWrapper.orderByDesc(YwContract::getCreateDate );
-        return PageData.from(ywWorkorderMapper.selectPage(page, queryWrapper));
+
+        PageData<YwWorkorder> result =   PageData.from(ywWorkorderMapper.selectPage(page, queryWrapper));
+        if(result!=null && result.getRecords()!=null){
+            for(YwWorkorder m : result.getRecords()){
+                if(Constants.equalsInteger(m.getAreaType(),Constants.ZERO)){
+                        //0瀹ゅ唴缁翠慨
+                    m.setAreaNameInfo(StringUtils.defaultString(m.getBuildingName(),"")+"/"+StringUtils.defaultString(m.getRoomNum(),""));
+                }else{
+                    m.setAreaNameInfo(StringUtils.defaultString(m.getBuildingName(),"")+"/"+StringUtils.defaultString(m.getFloorName(),""));
+                }
+            }
+        }
+        return result;
     }
 
     @Override
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
index 549fa40..613cd7a 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
@@ -10,16 +10,18 @@
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.erp.ErpConstants;
 import com.doumee.core.erp.ErpTool;
-import com.doumee.core.erp.model.openapi.request.erp.*;
+import com.doumee.core.erp.model.openapi.request.*;
+import com.doumee.core.erp.model.openapi.request.erp.OrgListRequest;
+import com.doumee.core.erp.model.openapi.request.erp.UserFailRequest;
+import com.doumee.core.erp.model.openapi.request.erp.UserListRequest;
+import com.doumee.core.erp.model.openapi.response.*;
 import com.doumee.core.erp.model.openapi.response.erp.ERPApiResponse;
+import com.doumee.core.erp.model.openapi.response.erp.ErpOrgListResponse;
+import com.doumee.core.erp.model.openapi.response.erp.ErpUserListResponse;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.haikang.model.HKConstants;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
-import com.doumee.core.erp.model.openapi.request.*;
-import com.doumee.core.erp.model.openapi.response.*;
-import com.doumee.core.erp.model.openapi.response.erp.ErpOrgListResponse;
-import com.doumee.core.erp.model.openapi.response.erp.ErpUserListResponse;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DESUtil;
 import com.doumee.core.utils.DateUtil;
@@ -31,8 +33,8 @@
 import com.doumee.dao.business.join.DeviceEventJoinMapper;
 import com.doumee.dao.business.join.VisitEventJoinMapper;
 import com.doumee.dao.business.model.*;
-import com.doumee.service.business.ext.ERPSyncService;
 import com.doumee.service.business.InterfaceLogService;
+import com.doumee.service.business.ext.ERPSyncService;
 import com.doumee.service.business.impl.MemberServiceImpl;
 import com.doumee.service.business.impl.hksync.ferp.HkSyncOrgUserToHKServiceImpl;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -119,7 +121,7 @@
     private WxPlatNotice wxPlatNotice;
 
     @Override
-    @PostConstruct
+//    @PostConstruct
     public  int  initHkConfig(){
         ErpConstants.approveUrl=systemDictDataBiz.queryByCode(Constants.ERP,Constants.ERP_APPROVE_URL).getCode();
         ErpConstants.orgListUrl=systemDictDataBiz.queryByCode(Constants.ERP,Constants.ERP_ORGLIST_URL).getCode();
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java
index 4c8ffca..80961fd 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java
@@ -59,7 +59,7 @@
     private MemberJoinMapper memberMapper;
     @Autowired
     private MemberMapper memberMapper1;
-    @Autowired
+//    @Autowired
     private ERPSyncService erpSyncService;
     @Autowired
     private SystemDictDataBiz systemDictDataBiz;

--
Gitblit v1.9.3