From 9da6ce44374ca50046c5f4a70e02ed20e2052dff Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期二, 19 十一月 2024 18:15:33 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/funingyunwei
---
server/db/business.yw_line_point.permissions.sql | 6
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwCustomerController.java | 90
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractCloudController.java | 92
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractRoomController.java | 90
server/db/business.yw_contract_room.permissions.sql | 6
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwBuilding.java | 103
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolPointServiceImpl.java | 148
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWorkorderCloudController.java | 91
server/visits/dmvisit_service/src/main/resources/application-testYL.yml | 0
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProjectService.java | 97
server/db/business.yw_device.permissions.sql | 6
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractRoomCloudController.java | 91
server/db/business.yw_patrol_scheme.permissions.sql | 6
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java | 85
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractBillController.java | 90
server/db/business.yw_patrol_line.permissions.sql | 6
server/db/business.yw_patrol_task.permissions.sql | 6
server/db/business.yw_device_record.permissions.sql | 6
server/db/business.yw_contract_detail.permissions.sql | 6
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwDeviceController.java | 90
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceService.java | 97
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwRoomService.java | 97
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java | 203 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java | 148
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolSchemeController.java | 90
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolPointMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwBuildingServiceImpl.java | 166 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractDetailService.java | 97
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolLineServiceImpl.java | 142
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceRecordServiceImpl.java | 153 +
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwRoomMapper.java | 12
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwLinePointCloudController.java | 91
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwCustomer.java | 143
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwBuildingService.java | 97
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTask.java | 105
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolPointController.java | 90
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolTaskCloudController.java | 91
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwRoomCloudController.java | 91
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwCustomerServiceImpl.java | 197 +
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwCustomerMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwLinePointMapper.java | 12
server/db/business.yw_customer.permissions.sql | 6
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwLinePointService.java | 97
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceCloudController.java | 91
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolSchemeCloudController.java | 91
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwLinePointController.java | 90
server/db/business.yw_contract_bill.permissions.sql | 6
server/db/business.yw_building.permissions.sql | 6
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolTaskMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwProjectMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractRoomMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwLinePointServiceImpl.java | 142
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java | 153 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractRoomService.java | 97
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolPointCloudController.java | 91
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java | 161 +
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwDeviceRecordController.java | 90
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolLine.java | 70
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceRecordService.java | 97
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwCustomerCloudController.java | 91
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwDeviceMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRoomServiceImpl.java | 139
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwBuildingController.java | 90
server/db/business.yw_patrol_point.permissions.sql | 6
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwProjectController.java | 90
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolSchemeMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolPoint.java | 78
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolTaskController.java | 90
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractDetailCloudController.java | 91
server/db/business.yw_workorder.permissions.sql | 6
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractController.java | 90
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java | 91
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java | 117
server/db/business.yw_room.permissions.sql | 6
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwWorkorderService.java | 97
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractService.java | 97
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java | 107
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java | 169 +
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwBuildingMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java | 150
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwDeviceRecordMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractDetail.java | 93
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractBillService.java | 97
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractRoom.java | 66
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolTaskService.java | 97
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java | 91
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractBillMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwProject.java | 78
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolLineService.java | 97
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwCustomerService.java | 97
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwLinePoint.java | 70
server/db/business.yw_project.permissions.sql | 6
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolLineCloudController.java | 91
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java | 169 +
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwRoomController.java | 90
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolPointService.java | 97
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolLineMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java | 178 +
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolLineController.java | 90
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java | 95
server/visits/dmvisit_service/src/main/resources/application-testHS.yml.bck | 81
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java | 146
server/db/business.yw_contract.permissions.sql | 6
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceRecordCloudController.java | 91
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDeviceRecord.java | 84
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwWorkorderMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractDetailServiceImpl.java | 159 +
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractDetailController.java | 90
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractDetailMapper.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolSchemeService.java | 97
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwBuildingCloudController.java | 91
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwWorkorderController.java | 90
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java | 200 +
114 files changed, 9,035 insertions(+), 0 deletions(-)
diff --git a/server/db/business.yw_building.permissions.sql b/server/db/business.yw_building.permissions.sql
new file mode 100644
index 0000000..13963e8
--- /dev/null
+++ b/server/db/business.yw_building.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywbuilding:create', '鏂板缓杩愮淮妤煎畤淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywbuilding:delete', '鍒犻櫎杩愮淮妤煎畤淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywbuilding:update', '淇敼杩愮淮妤煎畤淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywbuilding:query', '鏌ヨ杩愮淮妤煎畤淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywbuilding:exportExcel', '瀵煎嚭杩愮淮妤煎畤淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_contract.permissions.sql b/server/db/business.yw_contract.permissions.sql
new file mode 100644
index 0000000..65d265d
--- /dev/null
+++ b/server/db/business.yw_contract.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontract:create', '鏂板缓杩愮淮鍚堝悓淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontract:delete', '鍒犻櫎杩愮淮鍚堝悓淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontract:update', '淇敼杩愮淮鍚堝悓淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontract:query', '鏌ヨ杩愮淮鍚堝悓淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontract:exportExcel', '瀵煎嚭杩愮淮鍚堝悓淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_contract_bill.permissions.sql b/server/db/business.yw_contract_bill.permissions.sql
new file mode 100644
index 0000000..3b595d6
--- /dev/null
+++ b/server/db/business.yw_contract_bill.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractbill:create', '鏂板缓杩愮淮鍚堝悓璐﹀崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractbill:delete', '鍒犻櫎杩愮淮鍚堝悓璐﹀崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractbill:update', '淇敼杩愮淮鍚堝悓璐﹀崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractbill:query', '鏌ヨ杩愮淮鍚堝悓璐﹀崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractbill:exportExcel', '瀵煎嚭杩愮淮鍚堝悓璐﹀崟淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_contract_detail.permissions.sql b/server/db/business.yw_contract_detail.permissions.sql
new file mode 100644
index 0000000..907fd7d
--- /dev/null
+++ b/server/db/business.yw_contract_detail.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractdetail:create', '鏂板缓杩愮淮鍚堝悓鏉℃淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractdetail:delete', '鍒犻櫎杩愮淮鍚堝悓鏉℃淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractdetail:update', '淇敼杩愮淮鍚堝悓鏉℃淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractdetail:query', '鏌ヨ杩愮淮鍚堝悓鏉℃淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractdetail:exportExcel', '瀵煎嚭杩愮淮鍚堝悓鏉℃淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_contract_room.permissions.sql b/server/db/business.yw_contract_room.permissions.sql
new file mode 100644
index 0000000..7f505b7
--- /dev/null
+++ b/server/db/business.yw_contract_room.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractroom:create', '鏂板缓杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractroom:delete', '鍒犻櫎杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractroom:update', '淇敼杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractroom:query', '鏌ヨ杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcontractroom:exportExcel', '瀵煎嚭杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_customer.permissions.sql b/server/db/business.yw_customer.permissions.sql
new file mode 100644
index 0000000..1cf9415
--- /dev/null
+++ b/server/db/business.yw_customer.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcustomer:create', '鏂板缓杩愮淮瀹㈡埛淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcustomer:delete', '鍒犻櫎杩愮淮瀹㈡埛淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcustomer:update', '淇敼杩愮淮瀹㈡埛淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcustomer:query', '鏌ヨ杩愮淮瀹㈡埛淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywcustomer:exportExcel', '瀵煎嚭杩愮淮瀹㈡埛淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_device.permissions.sql b/server/db/business.yw_device.permissions.sql
new file mode 100644
index 0000000..c5f64e5
--- /dev/null
+++ b/server/db/business.yw_device.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywdevice:create', '鏂板缓杩愮淮璁惧淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywdevice:delete', '鍒犻櫎杩愮淮璁惧淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywdevice:update', '淇敼杩愮淮璁惧淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywdevice:query', '鏌ヨ杩愮淮璁惧淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywdevice:exportExcel', '瀵煎嚭杩愮淮璁惧淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_device_record.permissions.sql b/server/db/business.yw_device_record.permissions.sql
new file mode 100644
index 0000000..64f778a
--- /dev/null
+++ b/server/db/business.yw_device_record.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywdevicerecord:create', '鏂板缓杩愮淮璁惧杩愮淮璁板綍琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywdevicerecord:delete', '鍒犻櫎杩愮淮璁惧杩愮淮璁板綍琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywdevicerecord:update', '淇敼杩愮淮璁惧杩愮淮璁板綍琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywdevicerecord:query', '鏌ヨ杩愮淮璁惧杩愮淮璁板綍琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywdevicerecord:exportExcel', '瀵煎嚭杩愮淮璁惧杩愮淮璁板綍琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_line_point.permissions.sql b/server/db/business.yw_line_point.permissions.sql
new file mode 100644
index 0000000..ef467d5
--- /dev/null
+++ b/server/db/business.yw_line_point.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywlinepoint:create', '鏂板缓杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywlinepoint:delete', '鍒犻櫎杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywlinepoint:update', '淇敼杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywlinepoint:query', '鏌ヨ杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywlinepoint:exportExcel', '瀵煎嚭杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_patrol_line.permissions.sql b/server/db/business.yw_patrol_line.permissions.sql
new file mode 100644
index 0000000..335174f
--- /dev/null
+++ b/server/db/business.yw_patrol_line.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolline:create', '鏂板缓杩愮淮宸℃璺嚎淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolline:delete', '鍒犻櫎杩愮淮宸℃璺嚎淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolline:update', '淇敼杩愮淮宸℃璺嚎淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolline:query', '鏌ヨ杩愮淮宸℃璺嚎淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolline:exportExcel', '瀵煎嚭杩愮淮宸℃璺嚎淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_patrol_point.permissions.sql b/server/db/business.yw_patrol_point.permissions.sql
new file mode 100644
index 0000000..eb2e823
--- /dev/null
+++ b/server/db/business.yw_patrol_point.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolpoint:create', '鏂板缓杩愮淮宸℃鐐逛俊鎭〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolpoint:delete', '鍒犻櫎杩愮淮宸℃鐐逛俊鎭〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolpoint:update', '淇敼杩愮淮宸℃鐐逛俊鎭〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolpoint:query', '鏌ヨ杩愮淮宸℃鐐逛俊鎭〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolpoint:exportExcel', '瀵煎嚭杩愮淮宸℃鐐逛俊鎭〃(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_patrol_scheme.permissions.sql b/server/db/business.yw_patrol_scheme.permissions.sql
new file mode 100644
index 0000000..326477d
--- /dev/null
+++ b/server/db/business.yw_patrol_scheme.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolscheme:create', '鏂板缓杩愮淮宸℃璁″垝淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolscheme:delete', '鍒犻櫎杩愮淮宸℃璁″垝淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolscheme:update', '淇敼杩愮淮宸℃璁″垝淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolscheme:query', '鏌ヨ杩愮淮宸℃璁″垝淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatrolscheme:exportExcel', '瀵煎嚭杩愮淮宸℃璁″垝淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_patrol_task.permissions.sql b/server/db/business.yw_patrol_task.permissions.sql
new file mode 100644
index 0000000..6b7356d
--- /dev/null
+++ b/server/db/business.yw_patrol_task.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatroltask:create', '鏂板缓杩愮淮宸℃浠诲姟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatroltask:delete', '鍒犻櫎杩愮淮宸℃浠诲姟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatroltask:update', '淇敼杩愮淮宸℃浠诲姟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatroltask:query', '鏌ヨ杩愮淮宸℃浠诲姟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywpatroltask:exportExcel', '瀵煎嚭杩愮淮宸℃浠诲姟淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_project.permissions.sql b/server/db/business.yw_project.permissions.sql
new file mode 100644
index 0000000..0812cd6
--- /dev/null
+++ b/server/db/business.yw_project.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywproject:create', '鏂板缓杩愮淮椤圭洰淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywproject:delete', '鍒犻櫎杩愮淮椤圭洰淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywproject:update', '淇敼杩愮淮椤圭洰淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywproject:query', '鏌ヨ杩愮淮椤圭洰淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywproject:exportExcel', '瀵煎嚭杩愮淮椤圭洰淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_room.permissions.sql b/server/db/business.yw_room.permissions.sql
new file mode 100644
index 0000000..77798b7
--- /dev/null
+++ b/server/db/business.yw_room.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywroom:create', '鏂板缓杩愮淮鎴挎簮淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywroom:delete', '鍒犻櫎杩愮淮鎴挎簮淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywroom:update', '淇敼杩愮淮鎴挎簮淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywroom:query', '鏌ヨ杩愮淮鎴挎簮淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywroom:exportExcel', '瀵煎嚭杩愮淮鎴挎簮淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/db/business.yw_workorder.permissions.sql b/server/db/business.yw_workorder.permissions.sql
new file mode 100644
index 0000000..a3d77e7
--- /dev/null
+++ b/server/db/business.yw_workorder.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywworkorder:create', '鏂板缓杩愮淮宸ュ崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywworkorder:delete', '鍒犻櫎杩愮淮宸ュ崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywworkorder:update', '淇敼杩愮淮宸ュ崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywworkorder:query', '鏌ヨ杩愮淮宸ュ崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywworkorder:exportExcel', '瀵煎嚭杩愮淮宸ュ崟淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwBuildingController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwBuildingController.java
new file mode 100644
index 0000000..a13b17b
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwBuildingController.java
@@ -0,0 +1,90 @@
+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.YwBuilding;
+import com.doumee.service.business.YwBuildingService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮妤煎畤淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywBuilding")
+public class YwBuildingController extends BaseController {
+
+ @Autowired
+ private YwBuildingService ywBuildingService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywbuilding:create")
+ public ApiResponse create(@RequestBody YwBuilding ywBuilding) {
+ return ApiResponse.success(ywBuildingService.create(ywBuilding));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywbuilding:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywBuildingService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywbuilding: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));
+ }
+ ywBuildingService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywbuilding:update")
+ public ApiResponse updateById(@RequestBody YwBuilding ywBuilding) {
+ ywBuildingService.updateById(ywBuilding);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywbuilding:query")
+ public ApiResponse<PageData<YwBuilding>> findPage (@RequestBody PageWrap<YwBuilding> pageWrap) {
+ return ApiResponse.success(ywBuildingService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywbuilding:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwBuilding> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwBuilding.class).export(ywBuildingService.findPage(pageWrap).getRecords(), "杩愮淮妤煎畤淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywbuilding:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywBuildingService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractBillController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractBillController.java
new file mode 100644
index 0000000..c115fc0
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractBillController.java
@@ -0,0 +1,90 @@
+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.YwContractBill;
+import com.doumee.service.business.YwContractBillService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮鍚堝悓璐﹀崟淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywContractBill")
+public class YwContractBillController extends BaseController {
+
+ @Autowired
+ private YwContractBillService ywContractBillService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywcontractbill:create")
+ public ApiResponse create(@RequestBody YwContractBill ywContractBill) {
+ return ApiResponse.success(ywContractBillService.create(ywContractBill));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywcontractbill:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywContractBillService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywcontractbill: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));
+ }
+ ywContractBillService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywcontractbill:update")
+ public ApiResponse updateById(@RequestBody YwContractBill ywContractBill) {
+ ywContractBillService.updateById(ywContractBill);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywcontractbill:query")
+ public ApiResponse<PageData<YwContractBill>> findPage (@RequestBody PageWrap<YwContractBill> pageWrap) {
+ return ApiResponse.success(ywContractBillService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywcontractbill:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwContractBill> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwContractBill.class).export(ywContractBillService.findPage(pageWrap).getRecords(), "杩愮淮鍚堝悓璐﹀崟淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywcontractbill:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywContractBillService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractController.java
new file mode 100644
index 0000000..3850869
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractController.java
@@ -0,0 +1,90 @@
+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.YwContract;
+import com.doumee.service.business.YwContractService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮鍚堝悓淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywContract")
+public class YwContractController extends BaseController {
+
+ @Autowired
+ private YwContractService ywContractService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywcontract:create")
+ public ApiResponse create(@RequestBody YwContract ywContract) {
+ return ApiResponse.success(ywContractService.create(ywContract));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywcontract:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywContractService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywcontract: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));
+ }
+ ywContractService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywcontract:update")
+ public ApiResponse updateById(@RequestBody YwContract ywContract) {
+ ywContractService.updateById(ywContract);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywcontract:query")
+ public ApiResponse<PageData<YwContract>> findPage (@RequestBody PageWrap<YwContract> pageWrap) {
+ return ApiResponse.success(ywContractService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywcontract:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwContract> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwContract.class).export(ywContractService.findPage(pageWrap).getRecords(), "杩愮淮鍚堝悓淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywcontract:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywContractService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractDetailController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractDetailController.java
new file mode 100644
index 0000000..4c1448e
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractDetailController.java
@@ -0,0 +1,90 @@
+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.YwContractDetail;
+import com.doumee.service.business.YwContractDetailService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮鍚堝悓鏉℃淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywContractDetail")
+public class YwContractDetailController extends BaseController {
+
+ @Autowired
+ private YwContractDetailService ywContractDetailService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywcontractdetail:create")
+ public ApiResponse create(@RequestBody YwContractDetail ywContractDetail) {
+ return ApiResponse.success(ywContractDetailService.create(ywContractDetail));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywcontractdetail:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywContractDetailService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywcontractdetail: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));
+ }
+ ywContractDetailService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywcontractdetail:update")
+ public ApiResponse updateById(@RequestBody YwContractDetail ywContractDetail) {
+ ywContractDetailService.updateById(ywContractDetail);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywcontractdetail:query")
+ public ApiResponse<PageData<YwContractDetail>> findPage (@RequestBody PageWrap<YwContractDetail> pageWrap) {
+ return ApiResponse.success(ywContractDetailService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywcontractdetail:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwContractDetail> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwContractDetail.class).export(ywContractDetailService.findPage(pageWrap).getRecords(), "杩愮淮鍚堝悓鏉℃淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywcontractdetail:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywContractDetailService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractRoomController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractRoomController.java
new file mode 100644
index 0000000..1a1a069
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwContractRoomController.java
@@ -0,0 +1,90 @@
+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.YwContractRoom;
+import com.doumee.service.business.YwContractRoomService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywContractRoom")
+public class YwContractRoomController extends BaseController {
+
+ @Autowired
+ private YwContractRoomService ywContractRoomService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywcontractroom:create")
+ public ApiResponse create(@RequestBody YwContractRoom ywContractRoom) {
+ return ApiResponse.success(ywContractRoomService.create(ywContractRoom));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywcontractroom:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywContractRoomService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywcontractroom: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));
+ }
+ ywContractRoomService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywcontractroom:update")
+ public ApiResponse updateById(@RequestBody YwContractRoom ywContractRoom) {
+ ywContractRoomService.updateById(ywContractRoom);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywcontractroom:query")
+ public ApiResponse<PageData<YwContractRoom>> findPage (@RequestBody PageWrap<YwContractRoom> pageWrap) {
+ return ApiResponse.success(ywContractRoomService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywcontractroom:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwContractRoom> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwContractRoom.class).export(ywContractRoomService.findPage(pageWrap).getRecords(), "杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywcontractroom:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywContractRoomService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwCustomerController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwCustomerController.java
new file mode 100644
index 0000000..303a391
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwCustomerController.java
@@ -0,0 +1,90 @@
+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.YwCustomer;
+import com.doumee.service.business.YwCustomerService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮瀹㈡埛淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywCustomer")
+public class YwCustomerController extends BaseController {
+
+ @Autowired
+ private YwCustomerService ywCustomerService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywcustomer:create")
+ public ApiResponse create(@RequestBody YwCustomer ywCustomer) {
+ return ApiResponse.success(ywCustomerService.create(ywCustomer));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywcustomer:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywCustomerService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywcustomer: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));
+ }
+ ywCustomerService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywcustomer:update")
+ public ApiResponse updateById(@RequestBody YwCustomer ywCustomer) {
+ ywCustomerService.updateById(ywCustomer);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywcustomer:query")
+ public ApiResponse<PageData<YwCustomer>> findPage (@RequestBody PageWrap<YwCustomer> pageWrap) {
+ return ApiResponse.success(ywCustomerService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywcustomer:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwCustomer> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwCustomer.class).export(ywCustomerService.findPage(pageWrap).getRecords(), "杩愮淮瀹㈡埛淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywcustomer:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywCustomerService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwDeviceController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwDeviceController.java
new file mode 100644
index 0000000..a69284a
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwDeviceController.java
@@ -0,0 +1,90 @@
+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.YwDevice;
+import com.doumee.service.business.YwDeviceService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮璁惧淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywDevice")
+public class YwDeviceController extends BaseController {
+
+ @Autowired
+ private YwDeviceService ywDeviceService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywdevice:create")
+ public ApiResponse create(@RequestBody YwDevice ywDevice) {
+ return ApiResponse.success(ywDeviceService.create(ywDevice));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywdevice:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywDeviceService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywdevice: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));
+ }
+ ywDeviceService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywdevice:update")
+ public ApiResponse updateById(@RequestBody YwDevice ywDevice) {
+ ywDeviceService.updateById(ywDevice);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywdevice:query")
+ public ApiResponse<PageData<YwDevice>> findPage (@RequestBody PageWrap<YwDevice> pageWrap) {
+ return ApiResponse.success(ywDeviceService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywdevice:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwDevice> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwDevice.class).export(ywDeviceService.findPage(pageWrap).getRecords(), "杩愮淮璁惧淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywdevice:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywDeviceService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwDeviceRecordController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwDeviceRecordController.java
new file mode 100644
index 0000000..658b47f
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwDeviceRecordController.java
@@ -0,0 +1,90 @@
+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.YwDeviceRecord;
+import com.doumee.service.business.YwDeviceRecordService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮璁惧杩愮淮璁板綍琛�")
+@RestController
+@RequestMapping("/business/ywDeviceRecord")
+public class YwDeviceRecordController extends BaseController {
+
+ @Autowired
+ private YwDeviceRecordService ywDeviceRecordService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywdevicerecord:create")
+ public ApiResponse create(@RequestBody YwDeviceRecord ywDeviceRecord) {
+ return ApiResponse.success(ywDeviceRecordService.create(ywDeviceRecord));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywdevicerecord:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywDeviceRecordService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywdevicerecord: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));
+ }
+ ywDeviceRecordService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywdevicerecord:update")
+ public ApiResponse updateById(@RequestBody YwDeviceRecord ywDeviceRecord) {
+ ywDeviceRecordService.updateById(ywDeviceRecord);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywdevicerecord:query")
+ public ApiResponse<PageData<YwDeviceRecord>> findPage (@RequestBody PageWrap<YwDeviceRecord> pageWrap) {
+ return ApiResponse.success(ywDeviceRecordService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywdevicerecord:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwDeviceRecord> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwDeviceRecord.class).export(ywDeviceRecordService.findPage(pageWrap).getRecords(), "杩愮淮璁惧杩愮淮璁板綍琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywdevicerecord:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywDeviceRecordService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwLinePointController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwLinePointController.java
new file mode 100644
index 0000000..cee630e
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwLinePointController.java
@@ -0,0 +1,90 @@
+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.YwLinePoint;
+import com.doumee.service.business.YwLinePointService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃")
+@RestController
+@RequestMapping("/business/ywLinePoint")
+public class YwLinePointController extends BaseController {
+
+ @Autowired
+ private YwLinePointService ywLinePointService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywlinepoint:create")
+ public ApiResponse create(@RequestBody YwLinePoint ywLinePoint) {
+ return ApiResponse.success(ywLinePointService.create(ywLinePoint));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywlinepoint:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywLinePointService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywlinepoint: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));
+ }
+ ywLinePointService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywlinepoint:update")
+ public ApiResponse updateById(@RequestBody YwLinePoint ywLinePoint) {
+ ywLinePointService.updateById(ywLinePoint);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywlinepoint:query")
+ public ApiResponse<PageData<YwLinePoint>> findPage (@RequestBody PageWrap<YwLinePoint> pageWrap) {
+ return ApiResponse.success(ywLinePointService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywlinepoint:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwLinePoint> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwLinePoint.class).export(ywLinePointService.findPage(pageWrap).getRecords(), "杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywlinepoint:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywLinePointService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolLineController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolLineController.java
new file mode 100644
index 0000000..70d2fab
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolLineController.java
@@ -0,0 +1,90 @@
+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.YwPatrolLine;
+import com.doumee.service.business.YwPatrolLineService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸℃璺嚎淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywPatrolLine")
+public class YwPatrolLineController extends BaseController {
+
+ @Autowired
+ private YwPatrolLineService ywPatrolLineService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywpatrolline:create")
+ public ApiResponse create(@RequestBody YwPatrolLine ywPatrolLine) {
+ return ApiResponse.success(ywPatrolLineService.create(ywPatrolLine));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywpatrolline:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywPatrolLineService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywpatrolline: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));
+ }
+ ywPatrolLineService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywpatrolline:update")
+ public ApiResponse updateById(@RequestBody YwPatrolLine ywPatrolLine) {
+ ywPatrolLineService.updateById(ywPatrolLine);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywpatrolline:query")
+ public ApiResponse<PageData<YwPatrolLine>> findPage (@RequestBody PageWrap<YwPatrolLine> pageWrap) {
+ return ApiResponse.success(ywPatrolLineService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywpatrolline:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwPatrolLine> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwPatrolLine.class).export(ywPatrolLineService.findPage(pageWrap).getRecords(), "杩愮淮宸℃璺嚎淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywpatrolline:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywPatrolLineService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolPointController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolPointController.java
new file mode 100644
index 0000000..baac6d0
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolPointController.java
@@ -0,0 +1,90 @@
+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.YwPatrolPoint;
+import com.doumee.service.business.YwPatrolPointService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸℃鐐逛俊鎭〃")
+@RestController
+@RequestMapping("/business/ywPatrolPoint")
+public class YwPatrolPointController extends BaseController {
+
+ @Autowired
+ private YwPatrolPointService ywPatrolPointService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywpatrolpoint:create")
+ public ApiResponse create(@RequestBody YwPatrolPoint ywPatrolPoint) {
+ return ApiResponse.success(ywPatrolPointService.create(ywPatrolPoint));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywpatrolpoint:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywPatrolPointService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywpatrolpoint: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));
+ }
+ ywPatrolPointService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywpatrolpoint:update")
+ public ApiResponse updateById(@RequestBody YwPatrolPoint ywPatrolPoint) {
+ ywPatrolPointService.updateById(ywPatrolPoint);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywpatrolpoint:query")
+ public ApiResponse<PageData<YwPatrolPoint>> findPage (@RequestBody PageWrap<YwPatrolPoint> pageWrap) {
+ return ApiResponse.success(ywPatrolPointService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywpatrolpoint:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwPatrolPoint> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwPatrolPoint.class).export(ywPatrolPointService.findPage(pageWrap).getRecords(), "杩愮淮宸℃鐐逛俊鎭〃", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywpatrolpoint:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywPatrolPointService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolSchemeController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolSchemeController.java
new file mode 100644
index 0000000..840efbc
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolSchemeController.java
@@ -0,0 +1,90 @@
+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.YwPatrolScheme;
+import com.doumee.service.business.YwPatrolSchemeService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸℃璁″垝淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywPatrolScheme")
+public class YwPatrolSchemeController extends BaseController {
+
+ @Autowired
+ private YwPatrolSchemeService ywPatrolSchemeService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywpatrolscheme:create")
+ public ApiResponse create(@RequestBody YwPatrolScheme ywPatrolScheme) {
+ return ApiResponse.success(ywPatrolSchemeService.create(ywPatrolScheme));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywpatrolscheme:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywPatrolSchemeService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywpatrolscheme: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));
+ }
+ ywPatrolSchemeService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywpatrolscheme:update")
+ public ApiResponse updateById(@RequestBody YwPatrolScheme ywPatrolScheme) {
+ ywPatrolSchemeService.updateById(ywPatrolScheme);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywpatrolscheme:query")
+ public ApiResponse<PageData<YwPatrolScheme>> findPage (@RequestBody PageWrap<YwPatrolScheme> pageWrap) {
+ return ApiResponse.success(ywPatrolSchemeService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywpatrolscheme:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwPatrolScheme> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwPatrolScheme.class).export(ywPatrolSchemeService.findPage(pageWrap).getRecords(), "杩愮淮宸℃璁″垝淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywpatrolscheme:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywPatrolSchemeService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolTaskController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolTaskController.java
new file mode 100644
index 0000000..527978f
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwPatrolTaskController.java
@@ -0,0 +1,90 @@
+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.YwPatrolTask;
+import com.doumee.service.business.YwPatrolTaskService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸℃浠诲姟淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywPatrolTask")
+public class YwPatrolTaskController extends BaseController {
+
+ @Autowired
+ private YwPatrolTaskService ywPatrolTaskService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywpatroltask:create")
+ public ApiResponse create(@RequestBody YwPatrolTask ywPatrolTask) {
+ return ApiResponse.success(ywPatrolTaskService.create(ywPatrolTask));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywpatroltask:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywPatrolTaskService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywpatroltask: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));
+ }
+ ywPatrolTaskService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywpatroltask:update")
+ public ApiResponse updateById(@RequestBody YwPatrolTask ywPatrolTask) {
+ ywPatrolTaskService.updateById(ywPatrolTask);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywpatroltask:query")
+ public ApiResponse<PageData<YwPatrolTask>> findPage (@RequestBody PageWrap<YwPatrolTask> pageWrap) {
+ return ApiResponse.success(ywPatrolTaskService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywpatroltask:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwPatrolTask> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwPatrolTask.class).export(ywPatrolTaskService.findPage(pageWrap).getRecords(), "杩愮淮宸℃浠诲姟淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywpatroltask:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywPatrolTaskService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwProjectController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwProjectController.java
new file mode 100644
index 0000000..08065a9
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwProjectController.java
@@ -0,0 +1,90 @@
+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.YwProject;
+import com.doumee.service.business.YwProjectService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮椤圭洰淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywProject")
+public class YwProjectController extends BaseController {
+
+ @Autowired
+ private YwProjectService ywProjectService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywproject:create")
+ public ApiResponse create(@RequestBody YwProject ywProject) {
+ return ApiResponse.success(ywProjectService.create(ywProject));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywproject:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywProjectService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywproject: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));
+ }
+ ywProjectService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywproject:update")
+ public ApiResponse updateById(@RequestBody YwProject ywProject) {
+ ywProjectService.updateById(ywProject);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywproject:query")
+ public ApiResponse<PageData<YwProject>> findPage (@RequestBody PageWrap<YwProject> pageWrap) {
+ return ApiResponse.success(ywProjectService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywproject:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwProject> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwProject.class).export(ywProjectService.findPage(pageWrap).getRecords(), "杩愮淮椤圭洰淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywproject:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywProjectService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwRoomController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwRoomController.java
new file mode 100644
index 0000000..d37d721
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwRoomController.java
@@ -0,0 +1,90 @@
+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.YwRoom;
+import com.doumee.service.business.YwRoomService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮鎴挎簮淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywRoom")
+public class YwRoomController extends BaseController {
+
+ @Autowired
+ private YwRoomService ywRoomService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywroom:create")
+ public ApiResponse create(@RequestBody YwRoom ywRoom) {
+ return ApiResponse.success(ywRoomService.create(ywRoom));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywroom:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywRoomService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywroom: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));
+ }
+ ywRoomService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywroom:update")
+ public ApiResponse updateById(@RequestBody YwRoom ywRoom) {
+ ywRoomService.updateById(ywRoom);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywroom:query")
+ public ApiResponse<PageData<YwRoom>> findPage (@RequestBody PageWrap<YwRoom> pageWrap) {
+ return ApiResponse.success(ywRoomService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywroom:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwRoom> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwRoom.class).export(ywRoomService.findPage(pageWrap).getRecords(), "杩愮淮鎴挎簮淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywroom:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywRoomService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwWorkorderController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwWorkorderController.java
new file mode 100644
index 0000000..3d41613
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/YwWorkorderController.java
@@ -0,0 +1,90 @@
+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.YwWorkorder;
+import com.doumee.service.business.YwWorkorderService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸ュ崟淇℃伅琛�")
+@RestController
+@RequestMapping("/business/ywWorkorder")
+public class YwWorkorderController extends BaseController {
+
+ @Autowired
+ private YwWorkorderService ywWorkorderService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywworkorder:create")
+ public ApiResponse create(@RequestBody YwWorkorder ywWorkorder) {
+ return ApiResponse.success(ywWorkorderService.create(ywWorkorder));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywworkorder:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ywWorkorderService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywworkorder: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));
+ }
+ ywWorkorderService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywworkorder:update")
+ public ApiResponse updateById(@RequestBody YwWorkorder ywWorkorder) {
+ ywWorkorderService.updateById(ywWorkorder);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywworkorder:query")
+ public ApiResponse<PageData<YwWorkorder>> findPage (@RequestBody PageWrap<YwWorkorder> pageWrap) {
+ return ApiResponse.success(ywWorkorderService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywworkorder:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwWorkorder> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(YwWorkorder.class).export(ywWorkorderService.findPage(pageWrap).getRecords(), "杩愮淮宸ュ崟淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywworkorder:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ywWorkorderService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwBuildingCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwBuildingCloudController.java
new file mode 100644
index 0000000..1a2b580
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwBuildingCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwBuilding;
+import com.doumee.service.business.YwBuildingService;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮妤煎畤淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywBuilding")
+public class YwBuildingCloudController extends BaseController {
+
+ @Autowired
+ private YwBuildingService ywBuildingService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:ywbuilding:create")
+ public ApiResponse create(@RequestBody YwBuilding ywBuilding,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywBuildingService.create(ywBuilding));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:ywbuilding:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywBuildingService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:ywbuilding:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywBuildingService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:ywbuilding:update")
+ public ApiResponse updateById(@RequestBody YwBuilding ywBuilding,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywBuildingService.updateById(ywBuilding);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:ywbuilding:query")
+ public ApiResponse<PageData<YwBuilding>> findPage (@RequestBody PageWrap<YwBuilding> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywBuildingService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:ywbuilding:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwBuilding> pageWrap, HttpServletResponse response ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwBuilding.class).export(ywBuildingService.findPage(pageWrap).getRecords(), "杩愮淮妤煎畤淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:ywbuilding:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywBuildingService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java
new file mode 100644
index 0000000..3fd42c7
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+import com.doumee.api.BaseController;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwContractBill;
+import com.doumee.service.business.YwContractBillService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮鍚堝悓璐﹀崟淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywContractBill")
+public class YwContractBillCloudController extends BaseController {
+
+ @Autowired
+ private YwContractBillService ywContractBillService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywcontractbill:create")
+ public ApiResponse create(@RequestBody YwContractBill ywContractBill,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractBillService.create(ywContractBill));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywcontractbill:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywContractBillService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywcontractbill:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywContractBillService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywcontractbill:update")
+ public ApiResponse updateById(@RequestBody YwContractBill ywContractBill,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywContractBillService.updateById(ywContractBill);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywcontractbill:query")
+ public ApiResponse<PageData<YwContractBill>> findPage (@RequestBody PageWrap<YwContractBill> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractBillService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywcontractbill:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwContractBill> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwContractBill.class).export(ywContractBillService.findPage(pageWrap).getRecords(), "杩愮淮鍚堝悓璐﹀崟淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywcontractbill:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractBillService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractCloudController.java
new file mode 100644
index 0000000..8241636
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractCloudController.java
@@ -0,0 +1,92 @@
+package com.doumee.cloud.admin;
+
+import com.doumee.api.BaseController;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwContract;
+import com.doumee.service.business.YwContractService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮鍚堝悓淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywContract")
+public class YwContractCloudController extends BaseController {
+
+ @Autowired
+ private YwContractService ywContractService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywcontract:create")
+ public ApiResponse create(@RequestBody YwContract ywContract,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractService.create(ywContract));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywcontract:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywContractService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywcontract:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywContractService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywcontract:update")
+ public ApiResponse updateById(@RequestBody YwContract ywContract,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywContractService.updateById(ywContract);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywcontract:query")
+ public ApiResponse<PageData<YwContract>> findPage (@RequestBody PageWrap<YwContract> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywcontract:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwContract> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwContract.class).export(ywContractService.findPage(pageWrap).getRecords(), "杩愮淮鍚堝悓淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywcontract:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractDetailCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractDetailCloudController.java
new file mode 100644
index 0000000..1710689
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractDetailCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwContractDetail;
+import com.doumee.service.business.YwContractDetailService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮鍚堝悓鏉℃淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywContractDetail")
+public class YwContractDetailCloudController extends BaseController {
+
+ @Autowired
+ private YwContractDetailService ywContractDetailService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywcontractdetail:create")
+ public ApiResponse create(@RequestBody YwContractDetail ywContractDetail,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractDetailService.create(ywContractDetail));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywcontractdetail:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywContractDetailService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywcontractdetail:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywContractDetailService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywcontractdetail:update")
+ public ApiResponse updateById(@RequestBody YwContractDetail ywContractDetail,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywContractDetailService.updateById(ywContractDetail);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywcontractdetail:query")
+ public ApiResponse<PageData<YwContractDetail>> findPage (@RequestBody PageWrap<YwContractDetail> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractDetailService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywcontractdetail:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwContractDetail> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwContractDetail.class).export(ywContractDetailService.findPage(pageWrap).getRecords(), "杩愮淮鍚堝悓鏉℃淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywcontractdetail:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractDetailService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractRoomCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractRoomCloudController.java
new file mode 100644
index 0000000..567c836
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractRoomCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwContractRoom;
+import com.doumee.service.business.YwContractRoomService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywContractRoom")
+public class YwContractRoomCloudController extends BaseController {
+
+ @Autowired
+ private YwContractRoomService ywContractRoomService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywcontractroom:create")
+ public ApiResponse create(@RequestBody YwContractRoom ywContractRoom,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractRoomService.create(ywContractRoom));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywcontractroom:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywContractRoomService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywcontractroom:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywContractRoomService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywcontractroom:update")
+ public ApiResponse updateById(@RequestBody YwContractRoom ywContractRoom,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywContractRoomService.updateById(ywContractRoom);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywcontractroom:query")
+ public ApiResponse<PageData<YwContractRoom>> findPage (@RequestBody PageWrap<YwContractRoom> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractRoomService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywcontractroom:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwContractRoom> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwContractRoom.class).export(ywContractRoomService.findPage(pageWrap).getRecords(), "杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywcontractroom:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywContractRoomService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwCustomerCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwCustomerCloudController.java
new file mode 100644
index 0000000..1560f42
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwCustomerCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwCustomer;
+import com.doumee.service.business.YwCustomerService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮瀹㈡埛淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywCustomer")
+public class YwCustomerCloudController extends BaseController {
+
+ @Autowired
+ private YwCustomerService ywCustomerService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywcustomer:create")
+ public ApiResponse create(@RequestBody YwCustomer ywCustomer,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywCustomerService.create(ywCustomer));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywcustomer:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywCustomerService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywcustomer:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywCustomerService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywcustomer:update")
+ public ApiResponse updateById(@RequestBody YwCustomer ywCustomer,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywCustomerService.updateById(ywCustomer);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywcustomer:query")
+ public ApiResponse<PageData<YwCustomer>> findPage (@RequestBody PageWrap<YwCustomer> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywCustomerService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywcustomer:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwCustomer> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwCustomer.class).export(ywCustomerService.findPage(pageWrap).getRecords(), "杩愮淮瀹㈡埛淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywcustomer:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywCustomerService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceCloudController.java
new file mode 100644
index 0000000..a181393
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwDevice;
+import com.doumee.service.business.YwDeviceService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮璁惧淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywDevice")
+public class YwDeviceCloudController extends BaseController {
+
+ @Autowired
+ private YwDeviceService ywDeviceService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywdevice:create")
+ public ApiResponse create(@RequestBody YwDevice ywDevice,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywDeviceService.create(ywDevice));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywdevice:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywDeviceService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywdevice:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywDeviceService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywdevice:update")
+ public ApiResponse updateById(@RequestBody YwDevice ywDevice,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywDeviceService.updateById(ywDevice);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywdevice:query")
+ public ApiResponse<PageData<YwDevice>> findPage (@RequestBody PageWrap<YwDevice> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywDeviceService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywdevice:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwDevice> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwDevice.class).export(ywDeviceService.findPage(pageWrap).getRecords(), "杩愮淮璁惧淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywdevice:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywDeviceService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceRecordCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceRecordCloudController.java
new file mode 100644
index 0000000..534bbcc
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceRecordCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwDeviceRecord;
+import com.doumee.service.business.YwDeviceRecordService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮璁惧杩愮淮璁板綍琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywDeviceRecord")
+public class YwDeviceRecordCloudController extends BaseController {
+
+ @Autowired
+ private YwDeviceRecordService ywDeviceRecordService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywdevicerecord:create")
+ public ApiResponse create(@RequestBody YwDeviceRecord ywDeviceRecord,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywDeviceRecordService.create(ywDeviceRecord));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywdevicerecord:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywDeviceRecordService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywdevicerecord:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywDeviceRecordService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywdevicerecord:update")
+ public ApiResponse updateById(@RequestBody YwDeviceRecord ywDeviceRecord,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywDeviceRecordService.updateById(ywDeviceRecord);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywdevicerecord:query")
+ public ApiResponse<PageData<YwDeviceRecord>> findPage (@RequestBody PageWrap<YwDeviceRecord> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywDeviceRecordService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywdevicerecord:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwDeviceRecord> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwDeviceRecord.class).export(ywDeviceRecordService.findPage(pageWrap).getRecords(), "杩愮淮璁惧杩愮淮璁板綍琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywdevicerecord:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywDeviceRecordService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwLinePointCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwLinePointCloudController.java
new file mode 100644
index 0000000..1602087
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwLinePointCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwLinePoint;
+import com.doumee.service.business.YwLinePointService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywLinePoint")
+public class YwLinePointCloudController extends BaseController {
+
+ @Autowired
+ private YwLinePointService ywLinePointService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywlinepoint:create")
+ public ApiResponse create(@RequestBody YwLinePoint ywLinePoint,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywLinePointService.create(ywLinePoint));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywlinepoint:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywLinePointService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywlinepoint:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywLinePointService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywlinepoint:update")
+ public ApiResponse updateById(@RequestBody YwLinePoint ywLinePoint,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywLinePointService.updateById(ywLinePoint);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywlinepoint:query")
+ public ApiResponse<PageData<YwLinePoint>> findPage (@RequestBody PageWrap<YwLinePoint> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywLinePointService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywlinepoint:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwLinePoint> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwLinePoint.class).export(ywLinePointService.findPage(pageWrap).getRecords(), "杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywlinepoint:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywLinePointService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolLineCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolLineCloudController.java
new file mode 100644
index 0000000..c8a6782
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolLineCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwPatrolLine;
+import com.doumee.service.business.YwPatrolLineService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸℃璺嚎淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywPatrolLine")
+public class YwPatrolLineCloudController extends BaseController {
+
+ @Autowired
+ private YwPatrolLineService ywPatrolLineService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywpatrolline:create")
+ public ApiResponse create(@RequestBody YwPatrolLine ywPatrolLine,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolLineService.create(ywPatrolLine));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywpatrolline:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywPatrolLineService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywpatrolline:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywPatrolLineService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywpatrolline:update")
+ public ApiResponse updateById(@RequestBody YwPatrolLine ywPatrolLine,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywPatrolLineService.updateById(ywPatrolLine);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywpatrolline:query")
+ public ApiResponse<PageData<YwPatrolLine>> findPage (@RequestBody PageWrap<YwPatrolLine> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolLineService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywpatrolline:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwPatrolLine> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwPatrolLine.class).export(ywPatrolLineService.findPage(pageWrap).getRecords(), "杩愮淮宸℃璺嚎淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywpatrolline:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolLineService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolPointCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolPointCloudController.java
new file mode 100644
index 0000000..60f0d75
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolPointCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwPatrolPoint;
+import com.doumee.service.business.YwPatrolPointService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸℃鐐逛俊鎭〃")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywPatrolPoint")
+public class YwPatrolPointCloudController extends BaseController {
+
+ @Autowired
+ private YwPatrolPointService ywPatrolPointService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywpatrolpoint:create")
+ public ApiResponse create(@RequestBody YwPatrolPoint ywPatrolPoint,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolPointService.create(ywPatrolPoint));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywpatrolpoint:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywPatrolPointService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywpatrolpoint:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywPatrolPointService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywpatrolpoint:update")
+ public ApiResponse updateById(@RequestBody YwPatrolPoint ywPatrolPoint,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywPatrolPointService.updateById(ywPatrolPoint);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywpatrolpoint:query")
+ public ApiResponse<PageData<YwPatrolPoint>> findPage (@RequestBody PageWrap<YwPatrolPoint> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolPointService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywpatrolpoint:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwPatrolPoint> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwPatrolPoint.class).export(ywPatrolPointService.findPage(pageWrap).getRecords(), "杩愮淮宸℃鐐逛俊鎭〃", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywpatrolpoint:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolPointService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolSchemeCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolSchemeCloudController.java
new file mode 100644
index 0000000..b5a7718
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolSchemeCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwPatrolScheme;
+import com.doumee.service.business.YwPatrolSchemeService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸℃璁″垝淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywPatrolScheme")
+public class YwPatrolSchemeCloudController extends BaseController {
+
+ @Autowired
+ private YwPatrolSchemeService ywPatrolSchemeService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywpatrolscheme:create")
+ public ApiResponse create(@RequestBody YwPatrolScheme ywPatrolScheme,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolSchemeService.create(ywPatrolScheme));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywpatrolscheme:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywPatrolSchemeService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywpatrolscheme:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywPatrolSchemeService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywpatrolscheme:update")
+ public ApiResponse updateById(@RequestBody YwPatrolScheme ywPatrolScheme,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywPatrolSchemeService.updateById(ywPatrolScheme);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywpatrolscheme:query")
+ public ApiResponse<PageData<YwPatrolScheme>> findPage (@RequestBody PageWrap<YwPatrolScheme> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolSchemeService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywpatrolscheme:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwPatrolScheme> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwPatrolScheme.class).export(ywPatrolSchemeService.findPage(pageWrap).getRecords(), "杩愮淮宸℃璁″垝淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywpatrolscheme:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolSchemeService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolTaskCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolTaskCloudController.java
new file mode 100644
index 0000000..e764b46
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolTaskCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwPatrolTask;
+import com.doumee.service.business.YwPatrolTaskService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸℃浠诲姟淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywPatrolTask")
+public class YwPatrolTaskCloudController extends BaseController {
+
+ @Autowired
+ private YwPatrolTaskService ywPatrolTaskService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywpatroltask:create")
+ public ApiResponse create(@RequestBody YwPatrolTask ywPatrolTask,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolTaskService.create(ywPatrolTask));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywpatroltask:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywPatrolTaskService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywpatroltask:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywPatrolTaskService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywpatroltask:update")
+ public ApiResponse updateById(@RequestBody YwPatrolTask ywPatrolTask,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywPatrolTaskService.updateById(ywPatrolTask);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywpatroltask:query")
+ public ApiResponse<PageData<YwPatrolTask>> findPage (@RequestBody PageWrap<YwPatrolTask> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolTaskService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywpatroltask:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwPatrolTask> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwPatrolTask.class).export(ywPatrolTaskService.findPage(pageWrap).getRecords(), "杩愮淮宸℃浠诲姟淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywpatroltask:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywPatrolTaskService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java
new file mode 100644
index 0000000..82f0eb9
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwProject;
+import com.doumee.service.business.YwProjectService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮椤圭洰淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywProject")
+public class YwProjectCloudController extends BaseController {
+
+ @Autowired
+ private YwProjectService ywProjectService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywproject:create")
+ public ApiResponse create(@RequestBody YwProject ywProject,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywProjectService.create(ywProject));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywproject:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywProjectService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywproject:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywProjectService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywproject:update")
+ public ApiResponse updateById(@RequestBody YwProject ywProject,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywProjectService.updateById(ywProject);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywproject:query")
+ public ApiResponse<PageData<YwProject>> findPage (@RequestBody PageWrap<YwProject> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywProjectService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywproject:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwProject> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwProject.class).export(ywProjectService.findPage(pageWrap).getRecords(), "杩愮淮椤圭洰淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywproject:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywProjectService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwRoomCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwRoomCloudController.java
new file mode 100644
index 0000000..7da4aaf
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwRoomCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwRoom;
+import com.doumee.service.business.YwRoomService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮鎴挎簮淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywRoom")
+public class YwRoomCloudController extends BaseController {
+
+ @Autowired
+ private YwRoomService ywRoomService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywroom:create")
+ public ApiResponse create(@RequestBody YwRoom ywRoom,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywRoomService.create(ywRoom));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywroom:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywRoomService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywroom:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywRoomService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywroom:update")
+ public ApiResponse updateById(@RequestBody YwRoom ywRoom,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywRoomService.updateById(ywRoom);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywroom:query")
+ public ApiResponse<PageData<YwRoom>> findPage (@RequestBody PageWrap<YwRoom> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywRoomService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywroom:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwRoom> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwRoom.class).export(ywRoomService.findPage(pageWrap).getRecords(), "杩愮淮鎴挎簮淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywroom:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywRoomService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWorkorderCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWorkorderCloudController.java
new file mode 100644
index 0000000..e7c0fb6
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWorkorderCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+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.core.utils.Constants;
+import com.doumee.dao.business.model.YwWorkorder;
+import com.doumee.service.business.YwWorkorderService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.doumee.config.annotation.CloudRequiredPermission;
+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/11/19 16:07
+ */
+@Api(tags = "杩愮淮宸ュ崟淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywWorkorder")
+public class YwWorkorderCloudController extends BaseController {
+
+ @Autowired
+ private YwWorkorderService ywWorkorderService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywworkorder:create")
+ public ApiResponse create(@RequestBody YwWorkorder ywWorkorder,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywWorkorderService.create(ywWorkorder));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywworkorder:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywWorkorderService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywworkorder:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywWorkorderService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywworkorder:update")
+ public ApiResponse updateById(@RequestBody YwWorkorder ywWorkorder,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywWorkorderService.updateById(ywWorkorder);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywworkorder:query")
+ public ApiResponse<PageData<YwWorkorder>> findPage (@RequestBody PageWrap<YwWorkorder> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywWorkorderService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywworkorder:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwWorkorder> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwWorkorder.class).export(ywWorkorderService.findPage(pageWrap).getRecords(), "杩愮淮宸ュ崟淇℃伅琛�", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywworkorder:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywWorkorderService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwBuildingMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwBuildingMapper.java
new file mode 100644
index 0000000..a95d0e0
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwBuildingMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwBuilding;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwBuildingMapper extends BaseMapper<YwBuilding> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractBillMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractBillMapper.java
new file mode 100644
index 0000000..c94e7e5
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractBillMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwContractBill;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwContractBillMapper extends BaseMapper<YwContractBill> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractDetailMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractDetailMapper.java
new file mode 100644
index 0000000..1511dc9
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractDetailMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwContractDetail;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwContractDetailMapper extends BaseMapper<YwContractDetail> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractMapper.java
new file mode 100644
index 0000000..8bf798a
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwContract;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwContractMapper extends BaseMapper<YwContract> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractRoomMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractRoomMapper.java
new file mode 100644
index 0000000..b1c767f
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwContractRoomMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwContractRoom;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwContractRoomMapper extends BaseMapper<YwContractRoom> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwCustomerMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwCustomerMapper.java
new file mode 100644
index 0000000..53eb1e4
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwCustomerMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwCustomer;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwCustomerMapper extends BaseMapper<YwCustomer> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwDeviceMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwDeviceMapper.java
new file mode 100644
index 0000000..80dab10
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwDeviceMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwDevice;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwDeviceMapper extends BaseMapper<YwDevice> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwDeviceRecordMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwDeviceRecordMapper.java
new file mode 100644
index 0000000..1d81018
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwDeviceRecordMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwDeviceRecord;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwDeviceRecordMapper extends BaseMapper<YwDeviceRecord> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwLinePointMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwLinePointMapper.java
new file mode 100644
index 0000000..f251c2b
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwLinePointMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwLinePoint;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwLinePointMapper extends BaseMapper<YwLinePoint> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolLineMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolLineMapper.java
new file mode 100644
index 0000000..bc9fe0d
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolLineMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwPatrolLine;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwPatrolLineMapper extends BaseMapper<YwPatrolLine> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolPointMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolPointMapper.java
new file mode 100644
index 0000000..f726c8e
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolPointMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwPatrolPoint;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwPatrolPointMapper extends BaseMapper<YwPatrolPoint> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolSchemeMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolSchemeMapper.java
new file mode 100644
index 0000000..8f80eff
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolSchemeMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwPatrolScheme;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwPatrolSchemeMapper extends BaseMapper<YwPatrolScheme> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolTaskMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolTaskMapper.java
new file mode 100644
index 0000000..688b3b8
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwPatrolTaskMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwPatrolTask;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwPatrolTaskMapper extends BaseMapper<YwPatrolTask> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwProjectMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwProjectMapper.java
new file mode 100644
index 0000000..051a985
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwProjectMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwProject;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwProjectMapper extends BaseMapper<YwProject> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwRoomMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwRoomMapper.java
new file mode 100644
index 0000000..954e93e
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwRoomMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwRoom;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwRoomMapper extends BaseMapper<YwRoom> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwWorkorderMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwWorkorderMapper.java
new file mode 100644
index 0000000..6c558e2
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/YwWorkorderMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.YwWorkorder;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwWorkorderMapper extends BaseMapper<YwWorkorder> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwBuilding.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwBuilding.java
new file mode 100644
index 0000000..4cbf1f9
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwBuilding.java
@@ -0,0 +1,103 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 杩愮淮妤煎畤淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮妤煎畤淇℃伅琛�")
+@TableName("`yw_building`")
+public class YwBuilding {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "鍚嶇О")
+ @ExcelColumn(name="鍚嶇О")
+ private String name;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤", example = "1")
+ @ExcelColumn(name="鐘舵�� 0鍚敤 1绂佺敤")
+ private Integer status;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "鍥炬爣")
+ @ExcelColumn(name="鍥炬爣")
+ private String imgurl;
+
+ @ApiModelProperty(value = "缂栧彿")
+ @ExcelColumn(name="缂栧彿")
+ private String code;
+
+ @ApiModelProperty(value = "鍦板潃")
+ @ExcelColumn(name="鍦板潃")
+ private String addr;
+
+ @ApiModelProperty(value = "闈㈢Н锛堝钩鏂圭背锛�", example = "1")
+ @ExcelColumn(name="闈㈢Н锛堝钩鏂圭背锛�")
+ private BigDecimal area;
+
+ @ApiModelProperty(value = "浜ф潈闈㈢Н锛堝钩鏂圭背锛�", example = "1")
+ @ExcelColumn(name="浜ф潈闈㈢Н锛堝钩鏂圭背锛�")
+ private BigDecimal cqArea;
+
+ @ApiModelProperty(value = "鍙闈㈢Н锛堝钩鏂圭背锛�", example = "1")
+ @ExcelColumn(name="鍙闈㈢Н锛堝钩鏂圭背锛�")
+ private BigDecimal rentArea;
+
+ @ApiModelProperty(value = "鍦颁笂灞傛暟", example = "1")
+ @ExcelColumn(name="鍦颁笂灞傛暟")
+ private Integer onFloor;
+
+ @ApiModelProperty(value = "鍦颁笅灞傛暟", example = "1")
+ @ExcelColumn(name="鍦颁笅灞傛暟")
+ private Integer underFloor;
+
+ @ApiModelProperty(value = "鎵�灞為」鐩紪鐮侊紙鍏宠仈yw_project)", example = "1")
+ @ExcelColumn(name="鎵�灞為」鐩紪鐮侊紙鍏宠仈yw_project)")
+ private Integer projectId;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java
new file mode 100644
index 0000000..023a517
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java
@@ -0,0 +1,150 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 杩愮淮鍚堝悓淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮鍚堝悓淇℃伅琛�")
+@TableName("`yw_contract`")
+public class YwContract {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0姝e父 1鎹熷潖 2鎶ュ簾", example = "1")
+ @ExcelColumn(name="鐘舵�� 0姝e父 1鎹熷潖 2鎶ュ簾")
+ private Integer status;
+
+ @ApiModelProperty(value = "绫诲瀷 0鐗╀笟绉熻祦 1鐗╀笟 2绉熻祦", example = "1")
+ @ExcelColumn(name="绫诲瀷 0鐗╀笟绉熻祦 1鐗╀笟 2绉熻祦")
+ private Integer type;
+
+ @ApiModelProperty(value = "缂栧彿", example = "1")
+ @ExcelColumn(name="缂栧彿")
+ private Integer code;
+
+ @ApiModelProperty(value = "缁忓姙浜虹紪鐮�(鍏宠仈system_user)", example = "1")
+ @ExcelColumn(name="缁忓姙浜虹紪鐮�(鍏宠仈system_user)")
+ private Integer userId;
+
+ @ApiModelProperty(value = "绛捐鏃ユ湡")
+ @ExcelColumn(name="绛捐鏃ユ湡")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date signDate;
+
+ @ApiModelProperty(value = "寮�濮嬫棩鏈�")
+ @ExcelColumn(name="寮�濮嬫棩鏈�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date startDate;
+
+ @ApiModelProperty(value = "缁撴潫鏃ユ湡")
+ @ExcelColumn(name="缁撴潫鏃ユ湡")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date endDate;
+
+ @ApiModelProperty(value = "椤圭洰缂栫爜锛堝叧鑱攜w_project)", example = "1")
+ @ExcelColumn(name="椤圭洰缂栫爜锛堝叧鑱攜w_project)")
+ private Integer projectId;
+
+ @ApiModelProperty(value = "缁撴灉鏄惁鍙栨暣 0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="缁撴灉鏄惁鍙栨暣 0鍚� 1鏄�")
+ private Integer roundedUp;
+
+ @ApiModelProperty(value = "鎵�灞炲叕鍙哥紪鐮�(鍏宠仈company)", example = "1")
+ @ExcelColumn(name="鎵�灞炲叕鍙哥紪鐮�(鍏宠仈company)")
+ private Integer companyId;
+
+ @ApiModelProperty(value = "绉熷缂栫爜(鍏宠仈yw_customer锛�", example = "1")
+ @ExcelColumn(name="绉熷缂栫爜(鍏宠仈yw_customer锛�")
+ private Integer renterId;
+
+ @ApiModelProperty(value = "鑱旂郴浜虹紪鐮侊紙鍏宠仈memebr)", example = "1")
+ @ExcelColumn(name="鑱旂郴浜虹紪鐮侊紙鍏宠仈memebr)")
+ private Integer memberId;
+
+ @ApiModelProperty(value = "绉熻祦鏉℃鎶奸噾锛堝厓锛�", example = "1")
+ @ExcelColumn(name="绉熻祦鏉℃鎶奸噾锛堝厓锛�")
+ private BigDecimal zlDeposit;
+
+ @ApiModelProperty(value = "绉熻祦鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�", example = "1")
+ @ExcelColumn(name="绉熻祦鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�")
+ private Integer zlPayType;
+
+ @ApiModelProperty(value = "绉熻祦鍏嶇鏈熷紑濮嬫棩鏈�")
+ @ExcelColumn(name="绉熻祦鍏嶇鏈熷紑濮嬫棩鏈�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date zlFreeStartDate;
+
+ @ApiModelProperty(value = "绉熻祦鍏嶇鏈熺粨鏉熸棩鏈�")
+ @ExcelColumn(name="绉熻祦鍏嶇鏈熺粨鏉熸棩鏈�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date zlFreeEndDate;
+
+ @ApiModelProperty(value = "鐗╀笟鎶奸噾锛堝厓锛�", example = "1")
+ @ExcelColumn(name="鐗╀笟鎶奸噾锛堝厓锛�")
+ private BigDecimal wyDeposit;
+
+ @ApiModelProperty(value = "鐗╀笟鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�", example = "1")
+ @ExcelColumn(name="鐗╀笟鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�")
+ private Integer wyPayType;
+
+ @ApiModelProperty(value = "鐗╀笟鍏嶇鏈熷紑濮嬫棩鏈�")
+ @ExcelColumn(name="鐗╀笟鍏嶇鏈熷紑濮嬫棩鏈�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date wyFreeStartDate;
+
+ @ApiModelProperty(value = "鐗╀笟鍏嶇鏈熺粨鏉熸棩鏈�")
+ @ExcelColumn(name="鐗╀笟鍏嶇鏈熺粨鏉熸棩鏈�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date wyFreeEndDate;
+
+ @ApiModelProperty(value = "绉熻祦鎬婚噾棰�", example = "1")
+ @ExcelColumn(name="绉熻祦鎬婚噾棰�")
+ private BigDecimal zlTotalFee;
+
+ @ApiModelProperty(value = "鐗╀笟璐规�婚噾棰�", example = "1")
+ @ExcelColumn(name="鐗╀笟璐规�婚噾棰�")
+ private BigDecimal wyTotalFee;
+
+}
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
new file mode 100644
index 0000000..2804666
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java
@@ -0,0 +1,85 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 杩愮淮鍚堝悓璐﹀崟淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮鍚堝悓璐﹀崟淇℃伅琛�")
+@TableName("`yw_contract_bill`")
+public class YwContractBill {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0鏈紑濮嬶紱1杩涜涓紱2宸插畬鎴愶紱", example = "1")
+ @ExcelColumn(name="鐘舵�� 0鏈紑濮嬶紱1杩涜涓紱2宸插畬鎴愶紱")
+ private Integer status;
+
+ @ApiModelProperty(value = "寮�濮嬫椂闂�")
+ @ExcelColumn(name="寮�濮嬫椂闂�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date startDate;
+
+ @ApiModelProperty(value = "缁撴潫鏃堕棿")
+ @ExcelColumn(name="缁撴潫鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date endDate;
+
+ @ApiModelProperty(value = "鍚堝悓鏉℃缂栫爜锛堝叧鑱攜w_contract_detail)", example = "1")
+ @ExcelColumn(name="鍚堝悓鏉℃缂栫爜锛堝叧鑱攜w_contract_detail)")
+ private Integer detailId;
+
+ @ApiModelProperty(value = "鍚堝悓缂栫爜锛堝叧鑱攜w_contract)", example = "1")
+ @ExcelColumn(name="鍚堝悓缂栫爜锛堝叧鑱攜w_contract)")
+ private Integer contractId;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "鎬婚噾棰�", example = "1")
+ @ExcelColumn(name="鎬婚噾棰�")
+ private BigDecimal totleFee;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractDetail.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractDetail.java
new file mode 100644
index 0000000..ceb3411
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractDetail.java
@@ -0,0 +1,93 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 杩愮淮鍚堝悓鏉℃淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮鍚堝悓鏉℃淇℃伅琛�")
+@TableName("`yw_contract_detail`")
+public class YwContractDetail {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0鏈紑濮� 1杩涜涓� 2宸查��璁� 3宸插畬鎴�", example = "1")
+ @ExcelColumn(name="鐘舵�� 0鏈紑濮� 1杩涜涓� 2宸查��璁� 3宸插畬鎴�")
+ private Integer status;
+
+ @ApiModelProperty(value = "寮�濮嬫椂闂�")
+ @ExcelColumn(name="寮�濮嬫椂闂�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date startDate;
+
+ @ApiModelProperty(value = "缁撴潫鏃堕棿")
+ @ExcelColumn(name="缁撴潫鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date endDate;
+
+ @ApiModelProperty(value = "鍚堝悓鍗曚环锛堝厓锛�", example = "1")
+ @ExcelColumn(name="鍚堝悓鍗曚环锛堝厓锛�")
+ private BigDecimal price;
+
+ @ApiModelProperty(value = "浠樻鍛ㄦ湡绫诲瀷 0=鍏冩瘡骞崇背澶╋紱1=鍏冩瘡骞崇背鏈堬紱2=鍏冩瘡骞崇背骞达紱3=鍏冩瘡澶╋紱4=鍏冩瘡鏈堬紱5=鍏冩瘡骞达紱6=鍏冩瘡鍦猴紱", example = "1")
+ @ExcelColumn(name="浠樻鍛ㄦ湡绫诲瀷 0=鍏冩瘡骞崇背澶╋紱1=鍏冩瘡骞崇背鏈堬紱2=鍏冩瘡骞崇背骞达紱3=鍏冩瘡澶╋紱4=鍏冩瘡鏈堬紱5=鍏冩瘡骞达紱6=鍏冩瘡鍦猴紱")
+ private Integer circleType;
+
+ @ApiModelProperty(value = "浠樻鎻愬墠澶╂暟", example = "1")
+ @ExcelColumn(name="浠樻鎻愬墠澶╂暟")
+ private Integer advanceDays;
+
+ @ApiModelProperty(value = "鍚堝悓缂栫爜锛堝叧鑱攜w_contract)", example = "1")
+ @ExcelColumn(name="鍚堝悓缂栫爜锛堝叧鑱攜w_contract)")
+ private Integer contractId;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "鎬婚噾棰�", example = "1")
+ @ExcelColumn(name="鎬婚噾棰�")
+ private BigDecimal totleFee;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractRoom.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractRoom.java
new file mode 100644
index 0000000..f83b8b8
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractRoom.java
@@ -0,0 +1,66 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛�")
+@TableName("`yw_contract_room`")
+public class YwContractRoom {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鎴挎簮缂栫爜锛堝叧鑱攜w_room)", example = "1")
+ @ExcelColumn(name="鎴挎簮缂栫爜锛堝叧鑱攜w_room)")
+ private Integer roomId;
+
+ @ApiModelProperty(value = "鍚堝悓缂栫爜锛堝叧鑱攜w_contract)", example = "1")
+ @ExcelColumn(name="鍚堝悓缂栫爜锛堝叧鑱攜w_contract)")
+ private Integer contractId;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwCustomer.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwCustomer.java
new file mode 100644
index 0000000..2aca96e
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwCustomer.java
@@ -0,0 +1,143 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 杩愮淮瀹㈡埛淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮瀹㈡埛淇℃伅琛�")
+@TableName("`yw_customer`")
+public class YwCustomer {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鎵�灞炶涓氱紪鐮侊紙鍏宠仈category)", example = "1")
+ @ExcelColumn(name="鎵�灞炶涓氱紪鐮侊紙鍏宠仈category)")
+ private Integer industryId;
+
+ @ApiModelProperty(value = "绫诲瀷 0涓汉 1浼佷笟", example = "1")
+ @ExcelColumn(name="绫诲瀷 0涓汉 1浼佷笟")
+ private Integer type;
+
+ @ApiModelProperty(value = "瀹㈡埛")
+ @ExcelColumn(name="瀹㈡埛")
+ private String name;
+
+ @ApiModelProperty(value = "鎵嬫満鍙�")
+ @ExcelColumn(name="鎵嬫満鍙�")
+ private String phone;
+
+ @ApiModelProperty(value = "韬唤璇佸彿锛堝姞瀵嗭級")
+ @ExcelColumn(name="韬唤璇佸彿锛堝姞瀵嗭級")
+ private String idcardNo;
+
+ @ApiModelProperty(value = "璇佷欢鏄剧ず淇℃伅")
+ @ExcelColumn(name="璇佷欢鏄剧ず淇℃伅")
+ private String idcardDecode;
+
+ @ApiModelProperty(value = "瀹㈡埛缂栫爜")
+ @ExcelColumn(name="瀹㈡埛缂栫爜")
+ private String code;
+
+ @ApiModelProperty(value = "鐘舵�� 0姝e父 1绂佺敤", example = "1")
+ @ExcelColumn(name="鐘舵�� 0姝e父 1绂佺敤")
+ private Integer status;
+
+ @ApiModelProperty(value = "韬唤 0鑰佹澘 1瓒呯骇绠$悊鍛�", example = "1")
+ @ExcelColumn(name="韬唤 0鑰佹澘 1瓒呯骇绠$悊鍛�")
+ private Integer highCheckor;
+
+ @ApiModelProperty(value = "鏈�杩戠櫥褰曟椂闂�")
+ @ExcelColumn(name="鏈�杩戠櫥褰曟椂闂�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date lastLoginDate;
+
+ @ApiModelProperty(value = "鐧诲綍娆℃暟", example = "1")
+ @ExcelColumn(name="鐧诲綍娆℃暟")
+ private Integer loginNum;
+
+ @ApiModelProperty(value = "绯荤粺鐧诲綍鐢ㄦ埛缂栫爜(鍏宠仈system_user)", example = "1")
+ @ExcelColumn(name="绯荤粺鐧诲綍鐢ㄦ埛缂栫爜(鍏宠仈system_user)")
+ private Integer userId;
+
+ @ApiModelProperty(value = "璇佷欢绫诲瀷 0韬唤璇� 1娓境璇佷欢 2鎶ょ収", example = "1")
+ @ExcelColumn(name="璇佷欢绫诲瀷 0韬唤璇� 1娓境璇佷欢 2鎶ょ収")
+ private Integer idcardType;
+
+ @ApiModelProperty(value = "寮�鎴烽摱琛�")
+ @ExcelColumn(name="寮�鎴烽摱琛�")
+ private String accountBank;
+
+ @ApiModelProperty(value = "璐﹀彿")
+ @ExcelColumn(name="璐﹀彿")
+ private String accountNo;
+
+ @ApiModelProperty(value = "璐︽埛鐢佃瘽")
+ @ExcelColumn(name="璐︽埛鐢佃瘽")
+ private String accountPhone;
+
+ @ApiModelProperty(value = "缁熶竴淇$敤浠g爜")
+ @ExcelColumn(name="缁熶竴淇$敤浠g爜")
+ private String creditCard;
+
+ @ApiModelProperty(value = "榛樿鍙戠エ绫诲瀷 0澧炲�肩◣鏅�氬彂绁� 1澧炲�肩◣涓撶敤鍙戠エ", example = "1")
+ @ExcelColumn(name="榛樿鍙戠エ绫诲瀷 0澧炲�肩◣鏅�氬彂绁� 1澧炲�肩◣涓撶敤鍙戠エ")
+ private Integer fpType;
+
+ @ApiModelProperty(value = "璐﹀彿娉ㄥ唽鍦板潃")
+ @ExcelColumn(name="璐﹀彿娉ㄥ唽鍦板潃")
+ private String accountAddr;
+
+ @ApiModelProperty(value = "韬唤绫诲瀷0鑰佹澘瓒呯骇绠$悊鍛�;1=浜轰簨绠$悊鍛�;2=鍛樺伐", example = "1")
+ @ExcelColumn(name="韬唤绫诲瀷0鑰佹澘瓒呯骇绠$悊鍛�;1=浜轰簨绠$悊鍛�;2=鍛樺伐")
+ private Integer identityType;
+
+ @ApiModelProperty(value = "閭")
+ @ExcelColumn(name="閭")
+ private String email;
+
+ @ApiModelProperty(value = "鑱旂郴浜虹紪鐮侊紙鍏宠仈member锛�", example = "1")
+ @ExcelColumn(name="鑱旂郴浜虹紪鐮侊紙鍏宠仈member锛�")
+ private Integer memberId;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java
new file mode 100644
index 0000000..4b19ee2
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java
@@ -0,0 +1,95 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 杩愮淮璁惧淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮璁惧淇℃伅琛�")
+@TableName("`yw_device`")
+public class YwDevice {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "鍚嶇О")
+ @ExcelColumn(name="鍚嶇О")
+ private String name;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0姝e父 1鎹熷潖 2鎶ュ簾", example = "1")
+ @ExcelColumn(name="鐘舵�� 0姝e父 1鎹熷潖 2鎶ュ簾")
+ private Integer status;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "璁惧鍨嬪彿", example = "1")
+ @ExcelColumn(name="璁惧鍨嬪彿")
+ private Integer modelNo;
+
+ @ApiModelProperty(value = "鎵�灞炲垎绫荤紪鐮侊紙绠$悊category锛�", example = "1")
+ @ExcelColumn(name="鎵�灞炲垎绫荤紪鐮侊紙绠$悊category锛�")
+ private Integer cateId;
+
+ @ApiModelProperty(value = "绠$悊鍛樼紪鐮�(鍏宠仈system_user)", example = "1")
+ @ExcelColumn(name="绠$悊鍛樼紪鐮�(鍏宠仈system_user)")
+ private Integer userId;
+
+ @ApiModelProperty(value = "渚涘簲鍟�")
+ @ExcelColumn(name="渚涘簲鍟�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date company;
+
+ @ApiModelProperty(value = "杩愮淮鍐呭")
+ @ExcelColumn(name="杩愮淮鍐呭")
+ private String content;
+
+ @ApiModelProperty(value = "缂栧彿")
+ @ExcelColumn(name="缂栧彿")
+ private String code;
+
+ @ApiModelProperty(value = "鎵�鍦ㄤ綅缃�")
+ @ExcelColumn(name="鎵�鍦ㄤ綅缃�")
+ private String addr;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDeviceRecord.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDeviceRecord.java
new file mode 100644
index 0000000..4efc99c
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDeviceRecord.java
@@ -0,0 +1,84 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 杩愮淮璁惧杩愮淮璁板綍琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮璁惧杩愮淮璁板綍琛�")
+@TableName("`yw_device_record`")
+public class YwDeviceRecord {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0姝e父 1鎹熷潖 2鎶ュ簾", example = "1")
+ @ExcelColumn(name="鐘舵�� 0姝e父 1鎹熷潖 2鎶ュ簾")
+ private Integer status;
+
+ @ApiModelProperty(value = "璁惧鍨嬪彿", example = "1")
+ @ExcelColumn(name="璁惧鍨嬪彿")
+ private Integer modelNo;
+
+ @ApiModelProperty(value = "璁惧绫荤紪鐮侊紙绠$悊yw_device锛�", example = "1")
+ @ExcelColumn(name="璁惧绫荤紪鐮侊紙绠$悊yw_device锛�")
+ private Integer deviceId;
+
+ @ApiModelProperty(value = "杩愮淮浜哄憳缂栫爜缂栫爜(鍏宠仈system_user)", example = "1")
+ @ExcelColumn(name="杩愮淮浜哄憳缂栫爜缂栫爜(鍏宠仈system_user)")
+ private Integer userId;
+
+ @ApiModelProperty(value = "渚涘簲鍟�")
+ @ExcelColumn(name="渚涘簲鍟�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date company;
+
+ @ApiModelProperty(value = "鎯呭喌璇存槑")
+ @ExcelColumn(name="鎯呭喌璇存槑")
+ private String content;
+
+ @ApiModelProperty(value = "杩愮淮鏃堕棿")
+ @ExcelColumn(name="杩愮淮鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date dealDate;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwLinePoint.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwLinePoint.java
new file mode 100644
index 0000000..0b0a311
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwLinePoint.java
@@ -0,0 +1,70 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃")
+@TableName("`yw_line_point`")
+public class YwLinePoint {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "宸℃鐐圭紪鐮�(鍏宠仈yw_patrol_line)", example = "1")
+ @ExcelColumn(name="宸℃鐐圭紪鐮�(鍏宠仈yw_patrol_line)")
+ private Integer lineId;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "宸℃鐐圭紪鐮�(鍏宠仈yw_patrol_point)", example = "1")
+ @ExcelColumn(name="宸℃鐐圭紪鐮�(鍏宠仈yw_patrol_point)")
+ private Integer pointId;
+
+ @ApiModelProperty(value = "鏄惁鎵爜鎵撳崱 0涓嶉渶瑕� 1闇�瑕�", example = "1")
+ @ExcelColumn(name="鏄惁鎵爜鎵撳崱 0涓嶉渶瑕� 1闇�瑕�")
+ private Integer needScancode;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolLine.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolLine.java
new file mode 100644
index 0000000..c598dff
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolLine.java
@@ -0,0 +1,70 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 杩愮淮宸℃璺嚎淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮宸℃璺嚎淇℃伅琛�")
+@TableName("`yw_patrol_line`")
+public class YwPatrolLine {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "鍚嶇О")
+ @ExcelColumn(name="鍚嶇О")
+ private String name;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤", example = "1")
+ @ExcelColumn(name="鐘舵�� 0鍚敤 1绂佺敤")
+ private Integer status;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "鍥炬爣")
+ @ExcelColumn(name="鍥炬爣")
+ private String imgurl;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolPoint.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolPoint.java
new file mode 100644
index 0000000..be2e4a3
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolPoint.java
@@ -0,0 +1,78 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 杩愮淮宸℃鐐逛俊鎭〃
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮宸℃鐐逛俊鎭〃")
+@TableName("`yw_patrol_point`")
+public class YwPatrolPoint {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "鍚嶇О")
+ @ExcelColumn(name="鍚嶇О")
+ private String name;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤", example = "1")
+ @ExcelColumn(name="鐘舵�� 0鍚敤 1绂佺敤")
+ private Integer status;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "鍥炬爣")
+ @ExcelColumn(name="鍥炬爣")
+ private String imgurl;
+
+ @ApiModelProperty(value = "鍖哄煙缂栫爜锛堝叧鑱攃ategory)", example = "1")
+ @ExcelColumn(name="鍖哄煙缂栫爜锛堝叧鑱攃ategory)")
+ private Integer areaId;
+
+ @ApiModelProperty(value = "鍦板潃")
+ @ExcelColumn(name="鍦板潃")
+ private String addr;
+
+}
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
new file mode 100644
index 0000000..18fa64e
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java
@@ -0,0 +1,117 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 杩愮淮宸℃璁″垝淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮宸℃璁″垝淇℃伅琛�")
+@TableName("`yw_patrol_scheme`")
+public class YwPatrolScheme {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "鏍囬")
+ @ExcelColumn(name="鏍囬")
+ private String title;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤", example = "1")
+ @ExcelColumn(name="鐘舵�� 0鍚敤 1绂佺敤")
+ private Integer status;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "宸℃鐐圭紪鐮�(鍏宠仈yw_patrol_line)", example = "1")
+ @ExcelColumn(name="宸℃鐐圭紪鐮�(鍏宠仈yw_patrol_line)")
+ private Integer lineId;
+
+ @ApiModelProperty(value = "宸℃璐熻矗浜虹紪鐮侀泦鍚堬紝澶氫釜浣跨敤鑻辨枃閫楀彿闅斿紑")
+ @ExcelColumn(name="宸℃璐熻矗浜虹紪鐮侀泦鍚堬紝澶氫釜浣跨敤鑻辨枃閫楀彿闅斿紑")
+ private String userIds;
+
+ @ApiModelProperty(value = "澶勭悊浜虹紪鐮�(鍏宠仈system_user)", example = "1")
+ @ExcelColumn(name="澶勭悊浜虹紪鐮�(鍏宠仈system_user)")
+ private Integer dealUserId;
+
+ @ApiModelProperty(value = "澶勭悊鏃堕棿")
+ @ExcelColumn(name="澶勭悊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date dealDate;
+
+ @ApiModelProperty(value = "澶勭悊澶囨敞")
+ @ExcelColumn(name="澶勭悊澶囨敞")
+ private String dealInfo;
+
+ @ApiModelProperty(value = "寰幆鍛ㄦ湡 0姣忓ぉ 1姣忓懆 2姣忓ぉ", example = "1")
+ @ExcelColumn(name="寰幆鍛ㄦ湡 0姣忓ぉ 1姣忓懆 2姣忓ぉ")
+ private Integer circleType;
+
+ @ApiModelProperty(value = "寰幆閲嶅瑙勫垯 1-31锛屽涓嫳鏂囬�楀彿闅斿紑")
+ @ExcelColumn(name="寰幆閲嶅瑙勫垯 1-31锛屽涓嫳鏂囬�楀彿闅斿紑")
+ private String circleDays;
+
+ @ApiModelProperty(value = "寮�濮嬫棩鏈�")
+ @ExcelColumn(name="寮�濮嬫棩鏈�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date startDate;
+
+ @ApiModelProperty(value = "缁撴潫鏃ユ湡")
+ @ExcelColumn(name="缁撴潫鏃ユ湡")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date endDate;
+
+ @ApiModelProperty(value = "寮�濮嬫椂闂寸偣")
+ @ExcelColumn(name="寮�濮嬫椂闂寸偣")
+ private String startTime;
+
+ @ApiModelProperty(value = "缁撴潫鏃堕棿鐐�")
+ @ExcelColumn(name="缁撴潫鏃堕棿鐐�")
+ private String endTime;
+
+ @ApiModelProperty(value = "鎵ц杩涘害 0寰呭紑濮� 1杩涜涓� 2瓒呮湡 3宸插畬鎴�", example = "1")
+ @ExcelColumn(name="鎵ц杩涘害 0寰呭紑濮� 1杩涜涓� 2瓒呮湡 3宸插畬鎴�")
+ private Integer processStatus;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTask.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTask.java
new file mode 100644
index 0000000..3e44e37
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolTask.java
@@ -0,0 +1,105 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 杩愮淮宸℃浠诲姟淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮宸℃浠诲姟淇℃伅琛�")
+@TableName("`yw_patrol_task`")
+public class YwPatrolTask {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "鏍囬")
+ @ExcelColumn(name="鏍囬")
+ private String title;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0寰呭紑濮� 1杩涜涓� 2宸茶秴鏈� 3宸插畬鎴� 4宸插彇娑�", example = "1")
+ @ExcelColumn(name="鐘舵�� 0寰呭紑濮� 1杩涜涓� 2宸茶秴鏈� 3宸插畬鎴� 4宸插彇娑�")
+ private Integer status;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "宸℃璁″垝缂栫爜(鍏宠仈yw_patrol_scheme)", example = "1")
+ @ExcelColumn(name="宸℃璁″垝缂栫爜(鍏宠仈yw_patrol_scheme)")
+ private Integer schemeId;
+
+ @ApiModelProperty(value = "宸℃鐐圭紪鐮�(鍏宠仈yw_patrol_point)", example = "1")
+ @ExcelColumn(name="宸℃鐐圭紪鐮�(鍏宠仈yw_patrol_point)")
+ private Integer pointId;
+
+ @ApiModelProperty(value = "澶勭悊浜虹紪鐮�(鍏宠仈system_user)", example = "1")
+ @ExcelColumn(name="澶勭悊浜虹紪鐮�(鍏宠仈system_user)")
+ private Integer dealUserId;
+
+ @ApiModelProperty(value = "澶勭悊鏃堕棿")
+ @ExcelColumn(name="澶勭悊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date dealDate;
+
+ @ApiModelProperty(value = "澶勭悊澶囨敞")
+ @ExcelColumn(name="澶勭悊澶囨敞")
+ private String dealInfo;
+
+ @ApiModelProperty(value = "寰幆鍛ㄦ湡 0姣忓ぉ 1姣忓懆 2姣忓ぉ", example = "1")
+ @ExcelColumn(name="寰幆鍛ㄦ湡 0姣忓ぉ 1姣忓懆 2姣忓ぉ")
+ private Integer circleType;
+
+ @ApiModelProperty(value = "寮�濮嬫棩鏈�")
+ @ExcelColumn(name="寮�濮嬫棩鏈�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date startDate;
+
+ @ApiModelProperty(value = "缁撴潫鏃ユ湡")
+ @ExcelColumn(name="缁撴潫鏃ユ湡")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date endDate;
+
+ @ApiModelProperty(value = "宸℃缁撴灉 0姝e父 1寮傚父", example = "1")
+ @ExcelColumn(name="宸℃缁撴灉 0姝e父 1寮傚父")
+ private Integer dealStatus;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwProject.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwProject.java
new file mode 100644
index 0000000..1aa031e
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwProject.java
@@ -0,0 +1,78 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 杩愮淮椤圭洰淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮椤圭洰淇℃伅琛�")
+@TableName("`yw_project`")
+public class YwProject {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "鍚嶇О")
+ @ExcelColumn(name="鍚嶇О")
+ private String name;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤", example = "1")
+ @ExcelColumn(name="鐘舵�� 0鍚敤 1绂佺敤")
+ private Integer status;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "鍥炬爣")
+ @ExcelColumn(name="鍥炬爣")
+ private String imgurl;
+
+ @ApiModelProperty(value = "鍖哄煙缂栫爜锛坅reas)", example = "1")
+ @ExcelColumn(name="鍖哄煙缂栫爜锛坅reas)")
+ private Integer areaId;
+
+ @ApiModelProperty(value = "鍦板潃")
+ @ExcelColumn(name="鍦板潃")
+ private String addr;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java
new file mode 100644
index 0000000..2d939e7
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java
@@ -0,0 +1,107 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 杩愮淮鎴挎簮淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮鎴挎簮淇℃伅琛�")
+@TableName("`yw_room`")
+public class YwRoom {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "鍚嶇О")
+ @ExcelColumn(name="鍚嶇О")
+ private String name;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤", example = "1")
+ @ExcelColumn(name="鐘舵�� 0鍚敤 1绂佺敤")
+ private Integer status;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "鍥炬爣")
+ @ExcelColumn(name="鍥炬爣")
+ private String imgurl;
+
+ @ApiModelProperty(value = "鎴块棿缂栧彿")
+ @ExcelColumn(name="鎴块棿缂栧彿")
+ private String code;
+
+ @ApiModelProperty(value = "鎴垮彿")
+ @ExcelColumn(name="鎴垮彿")
+ private String roomNum;
+
+ @ApiModelProperty(value = "鏄惁鎷涘晢 0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鎷涘晢 0鍚� 1鏄�")
+ private Integer isInvestment;
+
+ @ApiModelProperty(value = "寤虹瓚闈㈢Н锛堝钩鏂圭背锛�", example = "1")
+ @ExcelColumn(name="寤虹瓚闈㈢Н锛堝钩鏂圭背锛�")
+ private BigDecimal area;
+
+ @ApiModelProperty(value = "璁¤垂闈㈢Н锛堝钩鏂圭背锛�", example = "1")
+ @ExcelColumn(name="璁¤垂闈㈢Н锛堝钩鏂圭背锛�")
+ private BigDecimal feeArea;
+
+ @ApiModelProperty(value = "璁$闈㈢Н锛堝钩鏂圭背锛�", example = "1")
+ @ExcelColumn(name="璁$闈㈢Н锛堝钩鏂圭背锛�")
+ private BigDecimal rentArea;
+
+ @ApiModelProperty(value = "妤煎眰鏁�", example = "1")
+ @ExcelColumn(name="妤煎眰鏁�")
+ private Integer floor;
+
+ @ApiModelProperty(value = "鎵�灞為」鐩紪鐮侊紙鍏宠仈yw_project)", example = "1")
+ @ExcelColumn(name="鎵�灞為」鐩紪鐮侊紙鍏宠仈yw_project)")
+ private Integer projectId;
+
+ @ApiModelProperty(value = "鎵�灞為」鐩紪鐮侊紙鍏宠仈yw_building)", example = "1")
+ @ExcelColumn(name="鎵�灞為」鐩紪鐮侊紙鍏宠仈yw_building)")
+ private Integer buildingId;
+
+}
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
new file mode 100644
index 0000000..a7c0ca8
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
@@ -0,0 +1,146 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 杩愮淮宸ュ崟淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+@ApiModel("杩愮淮宸ュ崟淇℃伅琛�")
+@TableName("`yw_workorder`")
+public class YwWorkorder {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private Integer creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private Integer editor;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "鏍囬")
+ @ExcelColumn(name="鏍囬")
+ private String title;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤", example = "1")
+ @ExcelColumn(name="鐘舵�� 0鍚敤 1绂佺敤")
+ private Integer status;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ @ExcelColumn(name="鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "鎯呭喌璇存槑")
+ @ExcelColumn(name="鎯呭喌璇存槑")
+ private String content;
+
+ @ApiModelProperty(value = "涓婇棬鏃堕棿")
+ @ExcelColumn(name="涓婇棬鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date getDate;
+
+ @ApiModelProperty(value = "鎵�灞為」鐩紪鐮侊紙鍏宠仈yw_project)", example = "1")
+ @ExcelColumn(name="鎵�灞為」鐩紪鐮侊紙鍏宠仈yw_project)")
+ private Integer projectId;
+
+ @ApiModelProperty(value = "鎵�灞為」鐩紪鐮侊紙鍏宠仈yw_building)", example = "1")
+ @ExcelColumn(name="鎵�灞為」鐩紪鐮侊紙鍏宠仈yw_building)")
+ private Integer buildingId;
+
+ @ApiModelProperty(value = "鎵�灞炴埧闂寸紪鐮侊紙鍏宠仈yw_room)", example = "1")
+ @ExcelColumn(name="鎵�灞炴埧闂寸紪鐮侊紙鍏宠仈yw_room)")
+ private Integer roomId;
+
+ @ApiModelProperty(value = "鎻愭姤浜虹紪鐮�", example = "1")
+ @ExcelColumn(name="鎻愭姤浜虹紪鐮�")
+ private Integer userId;
+
+ @ApiModelProperty(value = "鑱旂郴鐢佃瘽")
+ @ExcelColumn(name="鑱旂郴鐢佃瘽")
+ private String phone;
+
+ @ApiModelProperty(value = "鎻愭姤鏃堕棿")
+ @ExcelColumn(name="鎻愭姤鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date submitDate;
+
+ @ApiModelProperty(value = "宸ュ崟鍒嗙被缂栫爜(鍏宠仈category锛�", example = "1")
+ @ExcelColumn(name="宸ュ崟鍒嗙被缂栫爜(鍏宠仈category锛�")
+ private Integer cateId;
+
+ @ApiModelProperty(value = "淇濅慨鍖哄煙绫诲瀷 0瀹ゅ唴缁翠慨 1鍏叡鍖哄煙", example = "1")
+ @ExcelColumn(name="淇濅慨鍖哄煙绫诲瀷 0瀹ゅ唴缁翠慨 1鍏叡鍖哄煙")
+ private Integer areaType;
+
+ @ApiModelProperty(value = "宸ュ崟缂栧彿")
+ @ExcelColumn(name="宸ュ崟缂栧彿")
+ private String code;
+
+ @ApiModelProperty(value = "澶勭悊鐘舵�� 0寰呭鐞� 1宸插垎娲� 2宸插鐞�", example = "1")
+ @ExcelColumn(name="澶勭悊鐘舵�� 0寰呭鐞� 1宸插垎娲� 2宸插鐞�")
+ private Integer dealStatus;
+
+ @ApiModelProperty(value = "鍒嗘淳浜虹紪鐮�(鍏宠仈system_user)", example = "1")
+ @ExcelColumn(name="鍒嗘淳浜虹紪鐮�(鍏宠仈system_user)")
+ private Integer dispatchUserId;
+
+ @ApiModelProperty(value = "鍒嗘淳鏃堕棿")
+ @ExcelColumn(name="鍒嗘淳鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date dispatchDate;
+
+ @ApiModelProperty(value = "鍒嗘淳澶勭悊璇存槑")
+ @ExcelColumn(name="鍒嗘淳澶勭悊璇存槑")
+ private String dispatchInfo;
+
+ @ApiModelProperty(value = "澶勭悊浜虹紪鐮�(鍏宠仈system_user)", example = "1")
+ @ExcelColumn(name="澶勭悊浜虹紪鐮�(鍏宠仈system_user)")
+ private Integer dealUserId;
+
+ @ApiModelProperty(value = "澶勭悊鏃堕棿")
+ @ExcelColumn(name="澶勭悊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date dealDate;
+
+ @ApiModelProperty(value = "澶勭悊澶囨敞")
+ @ExcelColumn(name="澶勭悊澶囨敞")
+ private String dealInfo;
+
+ @ApiModelProperty(value = "澶勭悊鏂瑰紡 0鎸囨淳鍚庡鐞� 1鐩存帴鍥炲", example = "1")
+ @ExcelColumn(name="澶勭悊鏂瑰紡 0鎸囨淳鍚庡鐞� 1鐩存帴鍥炲")
+ private Integer dealType;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwBuildingService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwBuildingService.java
new file mode 100644
index 0000000..47a9175
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwBuildingService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwBuilding;
+import java.util.List;
+
+/**
+ * 杩愮淮妤煎畤淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwBuildingService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywBuilding 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwBuilding ywBuilding);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywBuilding 瀹炰綋瀵硅薄
+ */
+ void delete(YwBuilding ywBuilding);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywBuilding 瀹炰綋瀵硅薄
+ */
+ void updateById(YwBuilding ywBuilding);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywBuildings 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwBuilding> ywBuildings);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwBuilding
+ */
+ YwBuilding findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywBuilding 瀹炰綋瀵硅薄
+ * @return YwBuilding
+ */
+ YwBuilding findOne(YwBuilding ywBuilding);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywBuilding 瀹炰綋瀵硅薄
+ * @return List<YwBuilding>
+ */
+ List<YwBuilding> findList(YwBuilding ywBuilding);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwBuilding>
+ */
+ PageData<YwBuilding> findPage(PageWrap<YwBuilding> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywBuilding 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwBuilding ywBuilding);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractBillService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractBillService.java
new file mode 100644
index 0000000..4fbdf3e
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractBillService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwContractBill;
+import java.util.List;
+
+/**
+ * 杩愮淮鍚堝悓璐﹀崟淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwContractBillService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywContractBill 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwContractBill ywContractBill);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywContractBill 瀹炰綋瀵硅薄
+ */
+ void delete(YwContractBill ywContractBill);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywContractBill 瀹炰綋瀵硅薄
+ */
+ void updateById(YwContractBill ywContractBill);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywContractBills 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwContractBill> ywContractBills);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwContractBill
+ */
+ YwContractBill findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywContractBill 瀹炰綋瀵硅薄
+ * @return YwContractBill
+ */
+ YwContractBill findOne(YwContractBill ywContractBill);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywContractBill 瀹炰綋瀵硅薄
+ * @return List<YwContractBill>
+ */
+ List<YwContractBill> findList(YwContractBill ywContractBill);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwContractBill>
+ */
+ PageData<YwContractBill> findPage(PageWrap<YwContractBill> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywContractBill 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwContractBill ywContractBill);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractDetailService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractDetailService.java
new file mode 100644
index 0000000..1b0c8f9
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractDetailService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwContractDetail;
+import java.util.List;
+
+/**
+ * 杩愮淮鍚堝悓鏉℃淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwContractDetailService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywContractDetail 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwContractDetail ywContractDetail);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywContractDetail 瀹炰綋瀵硅薄
+ */
+ void delete(YwContractDetail ywContractDetail);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywContractDetail 瀹炰綋瀵硅薄
+ */
+ void updateById(YwContractDetail ywContractDetail);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywContractDetails 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwContractDetail> ywContractDetails);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwContractDetail
+ */
+ YwContractDetail findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywContractDetail 瀹炰綋瀵硅薄
+ * @return YwContractDetail
+ */
+ YwContractDetail findOne(YwContractDetail ywContractDetail);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywContractDetail 瀹炰綋瀵硅薄
+ * @return List<YwContractDetail>
+ */
+ List<YwContractDetail> findList(YwContractDetail ywContractDetail);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwContractDetail>
+ */
+ PageData<YwContractDetail> findPage(PageWrap<YwContractDetail> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywContractDetail 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwContractDetail ywContractDetail);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractRoomService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractRoomService.java
new file mode 100644
index 0000000..a2e0b66
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractRoomService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwContractRoom;
+import java.util.List;
+
+/**
+ * 杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwContractRoomService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywContractRoom 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwContractRoom ywContractRoom);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywContractRoom 瀹炰綋瀵硅薄
+ */
+ void delete(YwContractRoom ywContractRoom);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywContractRoom 瀹炰綋瀵硅薄
+ */
+ void updateById(YwContractRoom ywContractRoom);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywContractRooms 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwContractRoom> ywContractRooms);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwContractRoom
+ */
+ YwContractRoom findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywContractRoom 瀹炰綋瀵硅薄
+ * @return YwContractRoom
+ */
+ YwContractRoom findOne(YwContractRoom ywContractRoom);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywContractRoom 瀹炰綋瀵硅薄
+ * @return List<YwContractRoom>
+ */
+ List<YwContractRoom> findList(YwContractRoom ywContractRoom);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwContractRoom>
+ */
+ PageData<YwContractRoom> findPage(PageWrap<YwContractRoom> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywContractRoom 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwContractRoom ywContractRoom);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractService.java
new file mode 100644
index 0000000..6e87661
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwContract;
+import java.util.List;
+
+/**
+ * 杩愮淮鍚堝悓淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwContractService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywContract 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwContract ywContract);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywContract 瀹炰綋瀵硅薄
+ */
+ void delete(YwContract ywContract);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywContract 瀹炰綋瀵硅薄
+ */
+ void updateById(YwContract ywContract);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywContracts 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwContract> ywContracts);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwContract
+ */
+ YwContract findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywContract 瀹炰綋瀵硅薄
+ * @return YwContract
+ */
+ YwContract findOne(YwContract ywContract);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywContract 瀹炰綋瀵硅薄
+ * @return List<YwContract>
+ */
+ List<YwContract> findList(YwContract ywContract);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwContract>
+ */
+ PageData<YwContract> findPage(PageWrap<YwContract> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywContract 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwContract ywContract);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwCustomerService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwCustomerService.java
new file mode 100644
index 0000000..6336441
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwCustomerService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwCustomer;
+import java.util.List;
+
+/**
+ * 杩愮淮瀹㈡埛淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwCustomerService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywCustomer 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwCustomer ywCustomer);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywCustomer 瀹炰綋瀵硅薄
+ */
+ void delete(YwCustomer ywCustomer);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywCustomer 瀹炰綋瀵硅薄
+ */
+ void updateById(YwCustomer ywCustomer);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywCustomers 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwCustomer> ywCustomers);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwCustomer
+ */
+ YwCustomer findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywCustomer 瀹炰綋瀵硅薄
+ * @return YwCustomer
+ */
+ YwCustomer findOne(YwCustomer ywCustomer);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywCustomer 瀹炰綋瀵硅薄
+ * @return List<YwCustomer>
+ */
+ List<YwCustomer> findList(YwCustomer ywCustomer);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwCustomer>
+ */
+ PageData<YwCustomer> findPage(PageWrap<YwCustomer> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywCustomer 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwCustomer ywCustomer);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceRecordService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceRecordService.java
new file mode 100644
index 0000000..1065b7b
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceRecordService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwDeviceRecord;
+import java.util.List;
+
+/**
+ * 杩愮淮璁惧杩愮淮璁板綍琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwDeviceRecordService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywDeviceRecord 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwDeviceRecord ywDeviceRecord);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywDeviceRecord 瀹炰綋瀵硅薄
+ */
+ void delete(YwDeviceRecord ywDeviceRecord);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywDeviceRecord 瀹炰綋瀵硅薄
+ */
+ void updateById(YwDeviceRecord ywDeviceRecord);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywDeviceRecords 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwDeviceRecord> ywDeviceRecords);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwDeviceRecord
+ */
+ YwDeviceRecord findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywDeviceRecord 瀹炰綋瀵硅薄
+ * @return YwDeviceRecord
+ */
+ YwDeviceRecord findOne(YwDeviceRecord ywDeviceRecord);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywDeviceRecord 瀹炰綋瀵硅薄
+ * @return List<YwDeviceRecord>
+ */
+ List<YwDeviceRecord> findList(YwDeviceRecord ywDeviceRecord);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwDeviceRecord>
+ */
+ PageData<YwDeviceRecord> findPage(PageWrap<YwDeviceRecord> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywDeviceRecord 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwDeviceRecord ywDeviceRecord);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceService.java
new file mode 100644
index 0000000..b7ef12e
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwDevice;
+import java.util.List;
+
+/**
+ * 杩愮淮璁惧淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwDeviceService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywDevice 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwDevice ywDevice);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywDevice 瀹炰綋瀵硅薄
+ */
+ void delete(YwDevice ywDevice);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywDevice 瀹炰綋瀵硅薄
+ */
+ void updateById(YwDevice ywDevice);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywDevices 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwDevice> ywDevices);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwDevice
+ */
+ YwDevice findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywDevice 瀹炰綋瀵硅薄
+ * @return YwDevice
+ */
+ YwDevice findOne(YwDevice ywDevice);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywDevice 瀹炰綋瀵硅薄
+ * @return List<YwDevice>
+ */
+ List<YwDevice> findList(YwDevice ywDevice);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwDevice>
+ */
+ PageData<YwDevice> findPage(PageWrap<YwDevice> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywDevice 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwDevice ywDevice);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwLinePointService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwLinePointService.java
new file mode 100644
index 0000000..e90989d
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwLinePointService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwLinePoint;
+import java.util.List;
+
+/**
+ * 杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃Service瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwLinePointService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywLinePoint 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwLinePoint ywLinePoint);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywLinePoint 瀹炰綋瀵硅薄
+ */
+ void delete(YwLinePoint ywLinePoint);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywLinePoint 瀹炰綋瀵硅薄
+ */
+ void updateById(YwLinePoint ywLinePoint);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywLinePoints 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwLinePoint> ywLinePoints);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwLinePoint
+ */
+ YwLinePoint findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywLinePoint 瀹炰綋瀵硅薄
+ * @return YwLinePoint
+ */
+ YwLinePoint findOne(YwLinePoint ywLinePoint);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywLinePoint 瀹炰綋瀵硅薄
+ * @return List<YwLinePoint>
+ */
+ List<YwLinePoint> findList(YwLinePoint ywLinePoint);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwLinePoint>
+ */
+ PageData<YwLinePoint> findPage(PageWrap<YwLinePoint> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywLinePoint 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwLinePoint ywLinePoint);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolLineService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolLineService.java
new file mode 100644
index 0000000..7e10d65
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolLineService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwPatrolLine;
+import java.util.List;
+
+/**
+ * 杩愮淮宸℃璺嚎淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwPatrolLineService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywPatrolLine 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwPatrolLine ywPatrolLine);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywPatrolLine 瀹炰綋瀵硅薄
+ */
+ void delete(YwPatrolLine ywPatrolLine);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywPatrolLine 瀹炰綋瀵硅薄
+ */
+ void updateById(YwPatrolLine ywPatrolLine);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywPatrolLines 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwPatrolLine> ywPatrolLines);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwPatrolLine
+ */
+ YwPatrolLine findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywPatrolLine 瀹炰綋瀵硅薄
+ * @return YwPatrolLine
+ */
+ YwPatrolLine findOne(YwPatrolLine ywPatrolLine);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywPatrolLine 瀹炰綋瀵硅薄
+ * @return List<YwPatrolLine>
+ */
+ List<YwPatrolLine> findList(YwPatrolLine ywPatrolLine);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwPatrolLine>
+ */
+ PageData<YwPatrolLine> findPage(PageWrap<YwPatrolLine> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywPatrolLine 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwPatrolLine ywPatrolLine);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolPointService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolPointService.java
new file mode 100644
index 0000000..e4960f2
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolPointService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwPatrolPoint;
+import java.util.List;
+
+/**
+ * 杩愮淮宸℃鐐逛俊鎭〃Service瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwPatrolPointService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywPatrolPoint 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwPatrolPoint ywPatrolPoint);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywPatrolPoint 瀹炰綋瀵硅薄
+ */
+ void delete(YwPatrolPoint ywPatrolPoint);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywPatrolPoint 瀹炰綋瀵硅薄
+ */
+ void updateById(YwPatrolPoint ywPatrolPoint);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywPatrolPoints 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwPatrolPoint> ywPatrolPoints);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwPatrolPoint
+ */
+ YwPatrolPoint findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywPatrolPoint 瀹炰綋瀵硅薄
+ * @return YwPatrolPoint
+ */
+ YwPatrolPoint findOne(YwPatrolPoint ywPatrolPoint);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywPatrolPoint 瀹炰綋瀵硅薄
+ * @return List<YwPatrolPoint>
+ */
+ List<YwPatrolPoint> findList(YwPatrolPoint ywPatrolPoint);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwPatrolPoint>
+ */
+ PageData<YwPatrolPoint> findPage(PageWrap<YwPatrolPoint> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywPatrolPoint 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwPatrolPoint ywPatrolPoint);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolSchemeService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolSchemeService.java
new file mode 100644
index 0000000..97de65d
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolSchemeService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwPatrolScheme;
+import java.util.List;
+
+/**
+ * 杩愮淮宸℃璁″垝淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwPatrolSchemeService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywPatrolScheme 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwPatrolScheme ywPatrolScheme);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywPatrolScheme 瀹炰綋瀵硅薄
+ */
+ void delete(YwPatrolScheme ywPatrolScheme);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywPatrolScheme 瀹炰綋瀵硅薄
+ */
+ void updateById(YwPatrolScheme ywPatrolScheme);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywPatrolSchemes 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwPatrolScheme> ywPatrolSchemes);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwPatrolScheme
+ */
+ YwPatrolScheme findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywPatrolScheme 瀹炰綋瀵硅薄
+ * @return YwPatrolScheme
+ */
+ YwPatrolScheme findOne(YwPatrolScheme ywPatrolScheme);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywPatrolScheme 瀹炰綋瀵硅薄
+ * @return List<YwPatrolScheme>
+ */
+ List<YwPatrolScheme> findList(YwPatrolScheme ywPatrolScheme);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwPatrolScheme>
+ */
+ PageData<YwPatrolScheme> findPage(PageWrap<YwPatrolScheme> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywPatrolScheme 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwPatrolScheme ywPatrolScheme);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolTaskService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolTaskService.java
new file mode 100644
index 0000000..6185060
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolTaskService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwPatrolTask;
+import java.util.List;
+
+/**
+ * 杩愮淮宸℃浠诲姟淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwPatrolTaskService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywPatrolTask 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwPatrolTask ywPatrolTask);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywPatrolTask 瀹炰綋瀵硅薄
+ */
+ void delete(YwPatrolTask ywPatrolTask);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywPatrolTask 瀹炰綋瀵硅薄
+ */
+ void updateById(YwPatrolTask ywPatrolTask);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywPatrolTasks 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwPatrolTask> ywPatrolTasks);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwPatrolTask
+ */
+ YwPatrolTask findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywPatrolTask 瀹炰綋瀵硅薄
+ * @return YwPatrolTask
+ */
+ YwPatrolTask findOne(YwPatrolTask ywPatrolTask);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywPatrolTask 瀹炰綋瀵硅薄
+ * @return List<YwPatrolTask>
+ */
+ List<YwPatrolTask> findList(YwPatrolTask ywPatrolTask);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwPatrolTask>
+ */
+ PageData<YwPatrolTask> findPage(PageWrap<YwPatrolTask> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywPatrolTask 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwPatrolTask ywPatrolTask);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProjectService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProjectService.java
new file mode 100644
index 0000000..649181e
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProjectService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwProject;
+import java.util.List;
+
+/**
+ * 杩愮淮椤圭洰淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwProjectService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywProject 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwProject ywProject);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywProject 瀹炰綋瀵硅薄
+ */
+ void delete(YwProject ywProject);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywProject 瀹炰綋瀵硅薄
+ */
+ void updateById(YwProject ywProject);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywProjects 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwProject> ywProjects);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwProject
+ */
+ YwProject findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywProject 瀹炰綋瀵硅薄
+ * @return YwProject
+ */
+ YwProject findOne(YwProject ywProject);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywProject 瀹炰綋瀵硅薄
+ * @return List<YwProject>
+ */
+ List<YwProject> findList(YwProject ywProject);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwProject>
+ */
+ PageData<YwProject> findPage(PageWrap<YwProject> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywProject 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwProject ywProject);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwRoomService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwRoomService.java
new file mode 100644
index 0000000..ebafd27
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwRoomService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwRoom;
+import java.util.List;
+
+/**
+ * 杩愮淮鎴挎簮淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwRoomService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywRoom 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwRoom ywRoom);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywRoom 瀹炰綋瀵硅薄
+ */
+ void delete(YwRoom ywRoom);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywRoom 瀹炰綋瀵硅薄
+ */
+ void updateById(YwRoom ywRoom);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywRooms 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwRoom> ywRooms);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwRoom
+ */
+ YwRoom findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywRoom 瀹炰綋瀵硅薄
+ * @return YwRoom
+ */
+ YwRoom findOne(YwRoom ywRoom);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywRoom 瀹炰綋瀵硅薄
+ * @return List<YwRoom>
+ */
+ List<YwRoom> findList(YwRoom ywRoom);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwRoom>
+ */
+ PageData<YwRoom> findPage(PageWrap<YwRoom> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywRoom 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwRoom ywRoom);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwWorkorderService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwWorkorderService.java
new file mode 100644
index 0000000..9e3047c
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwWorkorderService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.YwWorkorder;
+import java.util.List;
+
+/**
+ * 杩愮淮宸ュ崟淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+public interface YwWorkorderService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ywWorkorder 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(YwWorkorder ywWorkorder);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ywWorkorder 瀹炰綋瀵硅薄
+ */
+ void delete(YwWorkorder ywWorkorder);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ywWorkorder 瀹炰綋瀵硅薄
+ */
+ void updateById(YwWorkorder ywWorkorder);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ywWorkorders 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<YwWorkorder> ywWorkorders);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return YwWorkorder
+ */
+ YwWorkorder findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ywWorkorder 瀹炰綋瀵硅薄
+ * @return YwWorkorder
+ */
+ YwWorkorder findOne(YwWorkorder ywWorkorder);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ywWorkorder 瀹炰綋瀵硅薄
+ * @return List<YwWorkorder>
+ */
+ List<YwWorkorder> findList(YwWorkorder ywWorkorder);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<YwWorkorder>
+ */
+ PageData<YwWorkorder> findPage(PageWrap<YwWorkorder> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ywWorkorder 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(YwWorkorder ywWorkorder);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwBuildingServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwBuildingServiceImpl.java
new file mode 100644
index 0000000..b006830
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwBuildingServiceImpl.java
@@ -0,0 +1,166 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwBuildingMapper;
+import com.doumee.dao.business.model.YwBuilding;
+import com.doumee.service.business.YwBuildingService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮妤煎畤淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwBuildingServiceImpl implements YwBuildingService {
+
+ @Autowired
+ private YwBuildingMapper ywBuildingMapper;
+
+ @Override
+ public Integer create(YwBuilding ywBuilding) {
+ ywBuildingMapper.insert(ywBuilding);
+ return ywBuilding.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywBuildingMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwBuilding ywBuilding) {
+ UpdateWrapper<YwBuilding> deleteWrapper = new UpdateWrapper<>(ywBuilding);
+ ywBuildingMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywBuildingMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwBuilding ywBuilding) {
+ ywBuildingMapper.updateById(ywBuilding);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwBuilding> ywBuildings) {
+ if (CollectionUtils.isEmpty(ywBuildings)) {
+ return;
+ }
+ for (YwBuilding ywBuilding: ywBuildings) {
+ this.updateById(ywBuilding);
+ }
+ }
+
+ @Override
+ public YwBuilding findById(Integer id) {
+ return ywBuildingMapper.selectById(id);
+ }
+
+ @Override
+ public YwBuilding findOne(YwBuilding ywBuilding) {
+ QueryWrapper<YwBuilding> wrapper = new QueryWrapper<>(ywBuilding);
+ return ywBuildingMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwBuilding> findList(YwBuilding ywBuilding) {
+ QueryWrapper<YwBuilding> wrapper = new QueryWrapper<>(ywBuilding);
+ return ywBuildingMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwBuilding> findPage(PageWrap<YwBuilding> pageWrap) {
+ IPage<YwBuilding> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwBuilding> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwBuilding::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwBuilding::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwBuilding::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwBuilding::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getName() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getName, pageWrap.getModel().getName());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getImgurl() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getImgurl, pageWrap.getModel().getImgurl());
+ }
+ if (pageWrap.getModel().getCode() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getCode, pageWrap.getModel().getCode());
+ }
+ if (pageWrap.getModel().getAddr() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getAddr, pageWrap.getModel().getAddr());
+ }
+ if (pageWrap.getModel().getArea() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getArea, pageWrap.getModel().getArea());
+ }
+ if (pageWrap.getModel().getCqArea() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getCqArea, pageWrap.getModel().getCqArea());
+ }
+ if (pageWrap.getModel().getRentArea() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getRentArea, pageWrap.getModel().getRentArea());
+ }
+ if (pageWrap.getModel().getOnFloor() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getOnFloor, pageWrap.getModel().getOnFloor());
+ }
+ if (pageWrap.getModel().getUnderFloor() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getUnderFloor, pageWrap.getModel().getUnderFloor());
+ }
+ if (pageWrap.getModel().getProjectId() != null) {
+ queryWrapper.lambda().eq(YwBuilding::getProjectId, pageWrap.getModel().getProjectId());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywBuildingMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwBuilding ywBuilding) {
+ QueryWrapper<YwBuilding> wrapper = new QueryWrapper<>(ywBuilding);
+ return ywBuildingMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java
new file mode 100644
index 0000000..b592fdd
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java
@@ -0,0 +1,153 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwContractBillMapper;
+import com.doumee.dao.business.model.YwContractBill;
+import com.doumee.service.business.YwContractBillService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮鍚堝悓璐﹀崟淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwContractBillServiceImpl implements YwContractBillService {
+
+ @Autowired
+ private YwContractBillMapper ywContractBillMapper;
+
+ @Override
+ public Integer create(YwContractBill ywContractBill) {
+ ywContractBillMapper.insert(ywContractBill);
+ return ywContractBill.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywContractBillMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwContractBill ywContractBill) {
+ UpdateWrapper<YwContractBill> deleteWrapper = new UpdateWrapper<>(ywContractBill);
+ ywContractBillMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywContractBillMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwContractBill ywContractBill) {
+ ywContractBillMapper.updateById(ywContractBill);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwContractBill> ywContractBills) {
+ if (CollectionUtils.isEmpty(ywContractBills)) {
+ return;
+ }
+ for (YwContractBill ywContractBill: ywContractBills) {
+ this.updateById(ywContractBill);
+ }
+ }
+
+ @Override
+ public YwContractBill findById(Integer id) {
+ return ywContractBillMapper.selectById(id);
+ }
+
+ @Override
+ public YwContractBill findOne(YwContractBill ywContractBill) {
+ QueryWrapper<YwContractBill> wrapper = new QueryWrapper<>(ywContractBill);
+ return ywContractBillMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwContractBill> findList(YwContractBill ywContractBill) {
+ QueryWrapper<YwContractBill> wrapper = new QueryWrapper<>(ywContractBill);
+ return ywContractBillMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwContractBill> findPage(PageWrap<YwContractBill> pageWrap) {
+ IPage<YwContractBill> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwContractBill> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwContractBill::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwContractBill::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwContractBill::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwContractBill::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwContractBill::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwContractBill::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwContractBill::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwContractBill::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwContractBill::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwContractBill::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getStartDate() != null) {
+ queryWrapper.lambda().ge(YwContractBill::getStartDate, Utils.Date.getStart(pageWrap.getModel().getStartDate()));
+ queryWrapper.lambda().le(YwContractBill::getStartDate, Utils.Date.getEnd(pageWrap.getModel().getStartDate()));
+ }
+ if (pageWrap.getModel().getEndDate() != null) {
+ queryWrapper.lambda().ge(YwContractBill::getEndDate, Utils.Date.getStart(pageWrap.getModel().getEndDate()));
+ queryWrapper.lambda().le(YwContractBill::getEndDate, Utils.Date.getEnd(pageWrap.getModel().getEndDate()));
+ }
+ if (pageWrap.getModel().getDetailId() != null) {
+ queryWrapper.lambda().eq(YwContractBill::getDetailId, pageWrap.getModel().getDetailId());
+ }
+ if (pageWrap.getModel().getContractId() != null) {
+ queryWrapper.lambda().eq(YwContractBill::getContractId, pageWrap.getModel().getContractId());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwContractBill::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getTotleFee() != null) {
+ queryWrapper.lambda().eq(YwContractBill::getTotleFee, pageWrap.getModel().getTotleFee());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywContractBillMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwContractBill ywContractBill) {
+ QueryWrapper<YwContractBill> wrapper = new QueryWrapper<>(ywContractBill);
+ return ywContractBillMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractDetailServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractDetailServiceImpl.java
new file mode 100644
index 0000000..0b455a9
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractDetailServiceImpl.java
@@ -0,0 +1,159 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwContractDetailMapper;
+import com.doumee.dao.business.model.YwContractDetail;
+import com.doumee.service.business.YwContractDetailService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮鍚堝悓鏉℃淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwContractDetailServiceImpl implements YwContractDetailService {
+
+ @Autowired
+ private YwContractDetailMapper ywContractDetailMapper;
+
+ @Override
+ public Integer create(YwContractDetail ywContractDetail) {
+ ywContractDetailMapper.insert(ywContractDetail);
+ return ywContractDetail.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywContractDetailMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwContractDetail ywContractDetail) {
+ UpdateWrapper<YwContractDetail> deleteWrapper = new UpdateWrapper<>(ywContractDetail);
+ ywContractDetailMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywContractDetailMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwContractDetail ywContractDetail) {
+ ywContractDetailMapper.updateById(ywContractDetail);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwContractDetail> ywContractDetails) {
+ if (CollectionUtils.isEmpty(ywContractDetails)) {
+ return;
+ }
+ for (YwContractDetail ywContractDetail: ywContractDetails) {
+ this.updateById(ywContractDetail);
+ }
+ }
+
+ @Override
+ public YwContractDetail findById(Integer id) {
+ return ywContractDetailMapper.selectById(id);
+ }
+
+ @Override
+ public YwContractDetail findOne(YwContractDetail ywContractDetail) {
+ QueryWrapper<YwContractDetail> wrapper = new QueryWrapper<>(ywContractDetail);
+ return ywContractDetailMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwContractDetail> findList(YwContractDetail ywContractDetail) {
+ QueryWrapper<YwContractDetail> wrapper = new QueryWrapper<>(ywContractDetail);
+ return ywContractDetailMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwContractDetail> findPage(PageWrap<YwContractDetail> pageWrap) {
+ IPage<YwContractDetail> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwContractDetail> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwContractDetail::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwContractDetail::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwContractDetail::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwContractDetail::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getStartDate() != null) {
+ queryWrapper.lambda().ge(YwContractDetail::getStartDate, Utils.Date.getStart(pageWrap.getModel().getStartDate()));
+ queryWrapper.lambda().le(YwContractDetail::getStartDate, Utils.Date.getEnd(pageWrap.getModel().getStartDate()));
+ }
+ if (pageWrap.getModel().getEndDate() != null) {
+ queryWrapper.lambda().ge(YwContractDetail::getEndDate, Utils.Date.getStart(pageWrap.getModel().getEndDate()));
+ queryWrapper.lambda().le(YwContractDetail::getEndDate, Utils.Date.getEnd(pageWrap.getModel().getEndDate()));
+ }
+ if (pageWrap.getModel().getPrice() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getPrice, pageWrap.getModel().getPrice());
+ }
+ if (pageWrap.getModel().getCircleType() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getCircleType, pageWrap.getModel().getCircleType());
+ }
+ if (pageWrap.getModel().getAdvanceDays() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getAdvanceDays, pageWrap.getModel().getAdvanceDays());
+ }
+ if (pageWrap.getModel().getContractId() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getContractId, pageWrap.getModel().getContractId());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getTotleFee() != null) {
+ queryWrapper.lambda().eq(YwContractDetail::getTotleFee, pageWrap.getModel().getTotleFee());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywContractDetailMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwContractDetail ywContractDetail) {
+ QueryWrapper<YwContractDetail> wrapper = new QueryWrapper<>(ywContractDetail);
+ return ywContractDetailMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRoomServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRoomServiceImpl.java
new file mode 100644
index 0000000..9544c78
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRoomServiceImpl.java
@@ -0,0 +1,139 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwContractRoomMapper;
+import com.doumee.dao.business.model.YwContractRoom;
+import com.doumee.service.business.YwContractRoomService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮鍚堝悓鎴挎簮鍏宠仈淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwContractRoomServiceImpl implements YwContractRoomService {
+
+ @Autowired
+ private YwContractRoomMapper ywContractRoomMapper;
+
+ @Override
+ public Integer create(YwContractRoom ywContractRoom) {
+ ywContractRoomMapper.insert(ywContractRoom);
+ return ywContractRoom.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywContractRoomMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwContractRoom ywContractRoom) {
+ UpdateWrapper<YwContractRoom> deleteWrapper = new UpdateWrapper<>(ywContractRoom);
+ ywContractRoomMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywContractRoomMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwContractRoom ywContractRoom) {
+ ywContractRoomMapper.updateById(ywContractRoom);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwContractRoom> ywContractRooms) {
+ if (CollectionUtils.isEmpty(ywContractRooms)) {
+ return;
+ }
+ for (YwContractRoom ywContractRoom: ywContractRooms) {
+ this.updateById(ywContractRoom);
+ }
+ }
+
+ @Override
+ public YwContractRoom findById(Integer id) {
+ return ywContractRoomMapper.selectById(id);
+ }
+
+ @Override
+ public YwContractRoom findOne(YwContractRoom ywContractRoom) {
+ QueryWrapper<YwContractRoom> wrapper = new QueryWrapper<>(ywContractRoom);
+ return ywContractRoomMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwContractRoom> findList(YwContractRoom ywContractRoom) {
+ QueryWrapper<YwContractRoom> wrapper = new QueryWrapper<>(ywContractRoom);
+ return ywContractRoomMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwContractRoom> findPage(PageWrap<YwContractRoom> pageWrap) {
+ IPage<YwContractRoom> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwContractRoom> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwContractRoom::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwContractRoom::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwContractRoom::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwContractRoom::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwContractRoom::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwContractRoom::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwContractRoom::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwContractRoom::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwContractRoom::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getRoomId() != null) {
+ queryWrapper.lambda().eq(YwContractRoom::getRoomId, pageWrap.getModel().getRoomId());
+ }
+ if (pageWrap.getModel().getContractId() != null) {
+ queryWrapper.lambda().eq(YwContractRoom::getContractId, pageWrap.getModel().getContractId());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwContractRoom::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywContractRoomMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwContractRoom ywContractRoom) {
+ QueryWrapper<YwContractRoom> wrapper = new QueryWrapper<>(ywContractRoom);
+ return ywContractRoomMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java
new file mode 100644
index 0000000..bfae567
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java
@@ -0,0 +1,203 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwContractMapper;
+import com.doumee.dao.business.model.YwContract;
+import com.doumee.service.business.YwContractService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮鍚堝悓淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwContractServiceImpl implements YwContractService {
+
+ @Autowired
+ private YwContractMapper ywContractMapper;
+
+ @Override
+ public Integer create(YwContract ywContract) {
+ ywContractMapper.insert(ywContract);
+ return ywContract.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywContractMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwContract ywContract) {
+ UpdateWrapper<YwContract> deleteWrapper = new UpdateWrapper<>(ywContract);
+ ywContractMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywContractMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwContract ywContract) {
+ ywContractMapper.updateById(ywContract);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwContract> ywContracts) {
+ if (CollectionUtils.isEmpty(ywContracts)) {
+ return;
+ }
+ for (YwContract ywContract: ywContracts) {
+ this.updateById(ywContract);
+ }
+ }
+
+ @Override
+ public YwContract findById(Integer id) {
+ return ywContractMapper.selectById(id);
+ }
+
+ @Override
+ public YwContract findOne(YwContract ywContract) {
+ QueryWrapper<YwContract> wrapper = new QueryWrapper<>(ywContract);
+ return ywContractMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwContract> findList(YwContract ywContract) {
+ QueryWrapper<YwContract> wrapper = new QueryWrapper<>(ywContract);
+ return ywContractMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwContract> findPage(PageWrap<YwContract> pageWrap) {
+ IPage<YwContract> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwContract> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwContract::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwContract::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwContract::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwContract::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwContract::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwContract::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwContract::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwContract::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwContract::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwContract::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getType() != null) {
+ queryWrapper.lambda().eq(YwContract::getType, pageWrap.getModel().getType());
+ }
+ if (pageWrap.getModel().getCode() != null) {
+ queryWrapper.lambda().eq(YwContract::getCode, pageWrap.getModel().getCode());
+ }
+ if (pageWrap.getModel().getUserId() != null) {
+ queryWrapper.lambda().eq(YwContract::getUserId, pageWrap.getModel().getUserId());
+ }
+ if (pageWrap.getModel().getSignDate() != null) {
+ queryWrapper.lambda().ge(YwContract::getSignDate, Utils.Date.getStart(pageWrap.getModel().getSignDate()));
+ queryWrapper.lambda().le(YwContract::getSignDate, Utils.Date.getEnd(pageWrap.getModel().getSignDate()));
+ }
+ if (pageWrap.getModel().getStartDate() != null) {
+ queryWrapper.lambda().ge(YwContract::getStartDate, Utils.Date.getStart(pageWrap.getModel().getStartDate()));
+ queryWrapper.lambda().le(YwContract::getStartDate, Utils.Date.getEnd(pageWrap.getModel().getStartDate()));
+ }
+ if (pageWrap.getModel().getEndDate() != null) {
+ queryWrapper.lambda().ge(YwContract::getEndDate, Utils.Date.getStart(pageWrap.getModel().getEndDate()));
+ queryWrapper.lambda().le(YwContract::getEndDate, Utils.Date.getEnd(pageWrap.getModel().getEndDate()));
+ }
+ if (pageWrap.getModel().getProjectId() != null) {
+ queryWrapper.lambda().eq(YwContract::getProjectId, pageWrap.getModel().getProjectId());
+ }
+ if (pageWrap.getModel().getRoundedUp() != null) {
+ queryWrapper.lambda().eq(YwContract::getRoundedUp, pageWrap.getModel().getRoundedUp());
+ }
+ if (pageWrap.getModel().getCompanyId() != null) {
+ queryWrapper.lambda().eq(YwContract::getCompanyId, pageWrap.getModel().getCompanyId());
+ }
+ if (pageWrap.getModel().getRenterId() != null) {
+ queryWrapper.lambda().eq(YwContract::getRenterId, pageWrap.getModel().getRenterId());
+ }
+ if (pageWrap.getModel().getMemberId() != null) {
+ queryWrapper.lambda().eq(YwContract::getMemberId, pageWrap.getModel().getMemberId());
+ }
+ if (pageWrap.getModel().getZlDeposit() != null) {
+ queryWrapper.lambda().eq(YwContract::getZlDeposit, pageWrap.getModel().getZlDeposit());
+ }
+ if (pageWrap.getModel().getZlPayType() != null) {
+ queryWrapper.lambda().eq(YwContract::getZlPayType, pageWrap.getModel().getZlPayType());
+ }
+ if (pageWrap.getModel().getZlFreeStartDate() != null) {
+ queryWrapper.lambda().ge(YwContract::getZlFreeStartDate, Utils.Date.getStart(pageWrap.getModel().getZlFreeStartDate()));
+ queryWrapper.lambda().le(YwContract::getZlFreeStartDate, Utils.Date.getEnd(pageWrap.getModel().getZlFreeStartDate()));
+ }
+ if (pageWrap.getModel().getZlFreeEndDate() != null) {
+ queryWrapper.lambda().ge(YwContract::getZlFreeEndDate, Utils.Date.getStart(pageWrap.getModel().getZlFreeEndDate()));
+ queryWrapper.lambda().le(YwContract::getZlFreeEndDate, Utils.Date.getEnd(pageWrap.getModel().getZlFreeEndDate()));
+ }
+ if (pageWrap.getModel().getWyDeposit() != null) {
+ queryWrapper.lambda().eq(YwContract::getWyDeposit, pageWrap.getModel().getWyDeposit());
+ }
+ if (pageWrap.getModel().getWyPayType() != null) {
+ queryWrapper.lambda().eq(YwContract::getWyPayType, pageWrap.getModel().getWyPayType());
+ }
+ if (pageWrap.getModel().getWyFreeStartDate() != null) {
+ queryWrapper.lambda().ge(YwContract::getWyFreeStartDate, Utils.Date.getStart(pageWrap.getModel().getWyFreeStartDate()));
+ queryWrapper.lambda().le(YwContract::getWyFreeStartDate, Utils.Date.getEnd(pageWrap.getModel().getWyFreeStartDate()));
+ }
+ if (pageWrap.getModel().getWyFreeEndDate() != null) {
+ queryWrapper.lambda().ge(YwContract::getWyFreeEndDate, Utils.Date.getStart(pageWrap.getModel().getWyFreeEndDate()));
+ queryWrapper.lambda().le(YwContract::getWyFreeEndDate, Utils.Date.getEnd(pageWrap.getModel().getWyFreeEndDate()));
+ }
+ if (pageWrap.getModel().getZlTotalFee() != null) {
+ queryWrapper.lambda().eq(YwContract::getZlTotalFee, pageWrap.getModel().getZlTotalFee());
+ }
+ if (pageWrap.getModel().getWyTotalFee() != null) {
+ queryWrapper.lambda().eq(YwContract::getWyTotalFee, pageWrap.getModel().getWyTotalFee());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywContractMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwContract ywContract) {
+ QueryWrapper<YwContract> wrapper = new QueryWrapper<>(ywContract);
+ return ywContractMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwCustomerServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwCustomerServiceImpl.java
new file mode 100644
index 0000000..cc0f54b
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwCustomerServiceImpl.java
@@ -0,0 +1,197 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwCustomerMapper;
+import com.doumee.dao.business.model.YwCustomer;
+import com.doumee.service.business.YwCustomerService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮瀹㈡埛淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwCustomerServiceImpl implements YwCustomerService {
+
+ @Autowired
+ private YwCustomerMapper ywCustomerMapper;
+
+ @Override
+ public Integer create(YwCustomer ywCustomer) {
+ ywCustomerMapper.insert(ywCustomer);
+ return ywCustomer.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywCustomerMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwCustomer ywCustomer) {
+ UpdateWrapper<YwCustomer> deleteWrapper = new UpdateWrapper<>(ywCustomer);
+ ywCustomerMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywCustomerMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwCustomer ywCustomer) {
+ ywCustomerMapper.updateById(ywCustomer);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwCustomer> ywCustomers) {
+ if (CollectionUtils.isEmpty(ywCustomers)) {
+ return;
+ }
+ for (YwCustomer ywCustomer: ywCustomers) {
+ this.updateById(ywCustomer);
+ }
+ }
+
+ @Override
+ public YwCustomer findById(Integer id) {
+ return ywCustomerMapper.selectById(id);
+ }
+
+ @Override
+ public YwCustomer findOne(YwCustomer ywCustomer) {
+ QueryWrapper<YwCustomer> wrapper = new QueryWrapper<>(ywCustomer);
+ return ywCustomerMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwCustomer> findList(YwCustomer ywCustomer) {
+ QueryWrapper<YwCustomer> wrapper = new QueryWrapper<>(ywCustomer);
+ return ywCustomerMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwCustomer> findPage(PageWrap<YwCustomer> pageWrap) {
+ IPage<YwCustomer> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwCustomer> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwCustomer::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwCustomer::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwCustomer::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwCustomer::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getIndustryId() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getIndustryId, pageWrap.getModel().getIndustryId());
+ }
+ if (pageWrap.getModel().getType() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getType, pageWrap.getModel().getType());
+ }
+ if (pageWrap.getModel().getName() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getName, pageWrap.getModel().getName());
+ }
+ if (pageWrap.getModel().getPhone() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getPhone, pageWrap.getModel().getPhone());
+ }
+ if (pageWrap.getModel().getIdcardNo() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getIdcardNo, pageWrap.getModel().getIdcardNo());
+ }
+ if (pageWrap.getModel().getIdcardDecode() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getIdcardDecode, pageWrap.getModel().getIdcardDecode());
+ }
+ if (pageWrap.getModel().getCode() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getCode, pageWrap.getModel().getCode());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getHighCheckor() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getHighCheckor, pageWrap.getModel().getHighCheckor());
+ }
+ if (pageWrap.getModel().getLastLoginDate() != null) {
+ queryWrapper.lambda().ge(YwCustomer::getLastLoginDate, Utils.Date.getStart(pageWrap.getModel().getLastLoginDate()));
+ queryWrapper.lambda().le(YwCustomer::getLastLoginDate, Utils.Date.getEnd(pageWrap.getModel().getLastLoginDate()));
+ }
+ if (pageWrap.getModel().getLoginNum() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getLoginNum, pageWrap.getModel().getLoginNum());
+ }
+ if (pageWrap.getModel().getUserId() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getUserId, pageWrap.getModel().getUserId());
+ }
+ if (pageWrap.getModel().getIdcardType() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getIdcardType, pageWrap.getModel().getIdcardType());
+ }
+ if (pageWrap.getModel().getAccountBank() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getAccountBank, pageWrap.getModel().getAccountBank());
+ }
+ if (pageWrap.getModel().getAccountNo() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getAccountNo, pageWrap.getModel().getAccountNo());
+ }
+ if (pageWrap.getModel().getAccountPhone() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getAccountPhone, pageWrap.getModel().getAccountPhone());
+ }
+ if (pageWrap.getModel().getCreditCard() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getCreditCard, pageWrap.getModel().getCreditCard());
+ }
+ if (pageWrap.getModel().getFpType() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getFpType, pageWrap.getModel().getFpType());
+ }
+ if (pageWrap.getModel().getAccountAddr() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getAccountAddr, pageWrap.getModel().getAccountAddr());
+ }
+ if (pageWrap.getModel().getIdentityType() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getIdentityType, pageWrap.getModel().getIdentityType());
+ }
+ if (pageWrap.getModel().getEmail() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getEmail, pageWrap.getModel().getEmail());
+ }
+ if (pageWrap.getModel().getMemberId() != null) {
+ queryWrapper.lambda().eq(YwCustomer::getMemberId, pageWrap.getModel().getMemberId());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywCustomerMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwCustomer ywCustomer) {
+ QueryWrapper<YwCustomer> wrapper = new QueryWrapper<>(ywCustomer);
+ return ywCustomerMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceRecordServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceRecordServiceImpl.java
new file mode 100644
index 0000000..b58dbd4
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceRecordServiceImpl.java
@@ -0,0 +1,153 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwDeviceRecordMapper;
+import com.doumee.dao.business.model.YwDeviceRecord;
+import com.doumee.service.business.YwDeviceRecordService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮璁惧杩愮淮璁板綍琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwDeviceRecordServiceImpl implements YwDeviceRecordService {
+
+ @Autowired
+ private YwDeviceRecordMapper ywDeviceRecordMapper;
+
+ @Override
+ public Integer create(YwDeviceRecord ywDeviceRecord) {
+ ywDeviceRecordMapper.insert(ywDeviceRecord);
+ return ywDeviceRecord.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywDeviceRecordMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwDeviceRecord ywDeviceRecord) {
+ UpdateWrapper<YwDeviceRecord> deleteWrapper = new UpdateWrapper<>(ywDeviceRecord);
+ ywDeviceRecordMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywDeviceRecordMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwDeviceRecord ywDeviceRecord) {
+ ywDeviceRecordMapper.updateById(ywDeviceRecord);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwDeviceRecord> ywDeviceRecords) {
+ if (CollectionUtils.isEmpty(ywDeviceRecords)) {
+ return;
+ }
+ for (YwDeviceRecord ywDeviceRecord: ywDeviceRecords) {
+ this.updateById(ywDeviceRecord);
+ }
+ }
+
+ @Override
+ public YwDeviceRecord findById(Integer id) {
+ return ywDeviceRecordMapper.selectById(id);
+ }
+
+ @Override
+ public YwDeviceRecord findOne(YwDeviceRecord ywDeviceRecord) {
+ QueryWrapper<YwDeviceRecord> wrapper = new QueryWrapper<>(ywDeviceRecord);
+ return ywDeviceRecordMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwDeviceRecord> findList(YwDeviceRecord ywDeviceRecord) {
+ QueryWrapper<YwDeviceRecord> wrapper = new QueryWrapper<>(ywDeviceRecord);
+ return ywDeviceRecordMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwDeviceRecord> findPage(PageWrap<YwDeviceRecord> pageWrap) {
+ IPage<YwDeviceRecord> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwDeviceRecord> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwDeviceRecord::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwDeviceRecord::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwDeviceRecord::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwDeviceRecord::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwDeviceRecord::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwDeviceRecord::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwDeviceRecord::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwDeviceRecord::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwDeviceRecord::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwDeviceRecord::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getModelNo() != null) {
+ queryWrapper.lambda().eq(YwDeviceRecord::getModelNo, pageWrap.getModel().getModelNo());
+ }
+ if (pageWrap.getModel().getDeviceId() != null) {
+ queryWrapper.lambda().eq(YwDeviceRecord::getDeviceId, pageWrap.getModel().getDeviceId());
+ }
+ if (pageWrap.getModel().getUserId() != null) {
+ queryWrapper.lambda().eq(YwDeviceRecord::getUserId, pageWrap.getModel().getUserId());
+ }
+ if (pageWrap.getModel().getCompany() != null) {
+ queryWrapper.lambda().ge(YwDeviceRecord::getCompany, Utils.Date.getStart(pageWrap.getModel().getCompany()));
+ queryWrapper.lambda().le(YwDeviceRecord::getCompany, Utils.Date.getEnd(pageWrap.getModel().getCompany()));
+ }
+ if (pageWrap.getModel().getContent() != null) {
+ queryWrapper.lambda().eq(YwDeviceRecord::getContent, pageWrap.getModel().getContent());
+ }
+ if (pageWrap.getModel().getDealDate() != null) {
+ queryWrapper.lambda().ge(YwDeviceRecord::getDealDate, Utils.Date.getStart(pageWrap.getModel().getDealDate()));
+ queryWrapper.lambda().le(YwDeviceRecord::getDealDate, Utils.Date.getEnd(pageWrap.getModel().getDealDate()));
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywDeviceRecordMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwDeviceRecord ywDeviceRecord) {
+ QueryWrapper<YwDeviceRecord> wrapper = new QueryWrapper<>(ywDeviceRecord);
+ return ywDeviceRecordMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java
new file mode 100644
index 0000000..77e981f
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java
@@ -0,0 +1,161 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwDeviceMapper;
+import com.doumee.dao.business.model.YwDevice;
+import com.doumee.service.business.YwDeviceService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮璁惧淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwDeviceServiceImpl implements YwDeviceService {
+
+ @Autowired
+ private YwDeviceMapper ywDeviceMapper;
+
+ @Override
+ public Integer create(YwDevice ywDevice) {
+ ywDeviceMapper.insert(ywDevice);
+ return ywDevice.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywDeviceMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwDevice ywDevice) {
+ UpdateWrapper<YwDevice> deleteWrapper = new UpdateWrapper<>(ywDevice);
+ ywDeviceMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywDeviceMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwDevice ywDevice) {
+ ywDeviceMapper.updateById(ywDevice);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwDevice> ywDevices) {
+ if (CollectionUtils.isEmpty(ywDevices)) {
+ return;
+ }
+ for (YwDevice ywDevice: ywDevices) {
+ this.updateById(ywDevice);
+ }
+ }
+
+ @Override
+ public YwDevice findById(Integer id) {
+ return ywDeviceMapper.selectById(id);
+ }
+
+ @Override
+ public YwDevice findOne(YwDevice ywDevice) {
+ QueryWrapper<YwDevice> wrapper = new QueryWrapper<>(ywDevice);
+ return ywDeviceMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwDevice> findList(YwDevice ywDevice) {
+ QueryWrapper<YwDevice> wrapper = new QueryWrapper<>(ywDevice);
+ return ywDeviceMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwDevice> findPage(PageWrap<YwDevice> pageWrap) {
+ IPage<YwDevice> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwDevice> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwDevice::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwDevice::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwDevice::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwDevice::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwDevice::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwDevice::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwDevice::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwDevice::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getName() != null) {
+ queryWrapper.lambda().eq(YwDevice::getName, pageWrap.getModel().getName());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwDevice::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwDevice::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwDevice::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getModelNo() != null) {
+ queryWrapper.lambda().eq(YwDevice::getModelNo, pageWrap.getModel().getModelNo());
+ }
+ if (pageWrap.getModel().getCateId() != null) {
+ queryWrapper.lambda().eq(YwDevice::getCateId, pageWrap.getModel().getCateId());
+ }
+ if (pageWrap.getModel().getUserId() != null) {
+ queryWrapper.lambda().eq(YwDevice::getUserId, pageWrap.getModel().getUserId());
+ }
+ if (pageWrap.getModel().getCompany() != null) {
+ queryWrapper.lambda().ge(YwDevice::getCompany, Utils.Date.getStart(pageWrap.getModel().getCompany()));
+ queryWrapper.lambda().le(YwDevice::getCompany, Utils.Date.getEnd(pageWrap.getModel().getCompany()));
+ }
+ if (pageWrap.getModel().getContent() != null) {
+ queryWrapper.lambda().eq(YwDevice::getContent, pageWrap.getModel().getContent());
+ }
+ if (pageWrap.getModel().getCode() != null) {
+ queryWrapper.lambda().eq(YwDevice::getCode, pageWrap.getModel().getCode());
+ }
+ if (pageWrap.getModel().getAddr() != null) {
+ queryWrapper.lambda().eq(YwDevice::getAddr, pageWrap.getModel().getAddr());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywDeviceMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwDevice ywDevice) {
+ QueryWrapper<YwDevice> wrapper = new QueryWrapper<>(ywDevice);
+ return ywDeviceMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwLinePointServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwLinePointServiceImpl.java
new file mode 100644
index 0000000..767f255
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwLinePointServiceImpl.java
@@ -0,0 +1,142 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwLinePointMapper;
+import com.doumee.dao.business.model.YwLinePoint;
+import com.doumee.service.business.YwLinePointService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮宸℃璺嚎鍏宠仈宸℃鐐瑰叧鑱旇〃Service瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwLinePointServiceImpl implements YwLinePointService {
+
+ @Autowired
+ private YwLinePointMapper ywLinePointMapper;
+
+ @Override
+ public Integer create(YwLinePoint ywLinePoint) {
+ ywLinePointMapper.insert(ywLinePoint);
+ return ywLinePoint.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywLinePointMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwLinePoint ywLinePoint) {
+ UpdateWrapper<YwLinePoint> deleteWrapper = new UpdateWrapper<>(ywLinePoint);
+ ywLinePointMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywLinePointMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwLinePoint ywLinePoint) {
+ ywLinePointMapper.updateById(ywLinePoint);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwLinePoint> ywLinePoints) {
+ if (CollectionUtils.isEmpty(ywLinePoints)) {
+ return;
+ }
+ for (YwLinePoint ywLinePoint: ywLinePoints) {
+ this.updateById(ywLinePoint);
+ }
+ }
+
+ @Override
+ public YwLinePoint findById(Integer id) {
+ return ywLinePointMapper.selectById(id);
+ }
+
+ @Override
+ public YwLinePoint findOne(YwLinePoint ywLinePoint) {
+ QueryWrapper<YwLinePoint> wrapper = new QueryWrapper<>(ywLinePoint);
+ return ywLinePointMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwLinePoint> findList(YwLinePoint ywLinePoint) {
+ QueryWrapper<YwLinePoint> wrapper = new QueryWrapper<>(ywLinePoint);
+ return ywLinePointMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwLinePoint> findPage(PageWrap<YwLinePoint> pageWrap) {
+ IPage<YwLinePoint> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwLinePoint> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwLinePoint::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwLinePoint::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwLinePoint::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwLinePoint::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwLinePoint::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwLinePoint::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwLinePoint::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwLinePoint::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getLineId() != null) {
+ queryWrapper.lambda().eq(YwLinePoint::getLineId, pageWrap.getModel().getLineId());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwLinePoint::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwLinePoint::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getPointId() != null) {
+ queryWrapper.lambda().eq(YwLinePoint::getPointId, pageWrap.getModel().getPointId());
+ }
+ if (pageWrap.getModel().getNeedScancode() != null) {
+ queryWrapper.lambda().eq(YwLinePoint::getNeedScancode, pageWrap.getModel().getNeedScancode());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywLinePointMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwLinePoint ywLinePoint) {
+ QueryWrapper<YwLinePoint> wrapper = new QueryWrapper<>(ywLinePoint);
+ return ywLinePointMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolLineServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolLineServiceImpl.java
new file mode 100644
index 0000000..9b12603
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolLineServiceImpl.java
@@ -0,0 +1,142 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwPatrolLineMapper;
+import com.doumee.dao.business.model.YwPatrolLine;
+import com.doumee.service.business.YwPatrolLineService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮宸℃璺嚎淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwPatrolLineServiceImpl implements YwPatrolLineService {
+
+ @Autowired
+ private YwPatrolLineMapper ywPatrolLineMapper;
+
+ @Override
+ public Integer create(YwPatrolLine ywPatrolLine) {
+ ywPatrolLineMapper.insert(ywPatrolLine);
+ return ywPatrolLine.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywPatrolLineMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwPatrolLine ywPatrolLine) {
+ UpdateWrapper<YwPatrolLine> deleteWrapper = new UpdateWrapper<>(ywPatrolLine);
+ ywPatrolLineMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywPatrolLineMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwPatrolLine ywPatrolLine) {
+ ywPatrolLineMapper.updateById(ywPatrolLine);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwPatrolLine> ywPatrolLines) {
+ if (CollectionUtils.isEmpty(ywPatrolLines)) {
+ return;
+ }
+ for (YwPatrolLine ywPatrolLine: ywPatrolLines) {
+ this.updateById(ywPatrolLine);
+ }
+ }
+
+ @Override
+ public YwPatrolLine findById(Integer id) {
+ return ywPatrolLineMapper.selectById(id);
+ }
+
+ @Override
+ public YwPatrolLine findOne(YwPatrolLine ywPatrolLine) {
+ QueryWrapper<YwPatrolLine> wrapper = new QueryWrapper<>(ywPatrolLine);
+ return ywPatrolLineMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwPatrolLine> findList(YwPatrolLine ywPatrolLine) {
+ QueryWrapper<YwPatrolLine> wrapper = new QueryWrapper<>(ywPatrolLine);
+ return ywPatrolLineMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwPatrolLine> findPage(PageWrap<YwPatrolLine> pageWrap) {
+ IPage<YwPatrolLine> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwPatrolLine> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwPatrolLine::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwPatrolLine::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolLine::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwPatrolLine::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwPatrolLine::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolLine::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwPatrolLine::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwPatrolLine::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getName() != null) {
+ queryWrapper.lambda().eq(YwPatrolLine::getName, pageWrap.getModel().getName());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwPatrolLine::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwPatrolLine::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwPatrolLine::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getImgurl() != null) {
+ queryWrapper.lambda().eq(YwPatrolLine::getImgurl, pageWrap.getModel().getImgurl());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywPatrolLineMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwPatrolLine ywPatrolLine) {
+ QueryWrapper<YwPatrolLine> wrapper = new QueryWrapper<>(ywPatrolLine);
+ return ywPatrolLineMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolPointServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolPointServiceImpl.java
new file mode 100644
index 0000000..5174aaf
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolPointServiceImpl.java
@@ -0,0 +1,148 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwPatrolPointMapper;
+import com.doumee.dao.business.model.YwPatrolPoint;
+import com.doumee.service.business.YwPatrolPointService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮宸℃鐐逛俊鎭〃Service瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwPatrolPointServiceImpl implements YwPatrolPointService {
+
+ @Autowired
+ private YwPatrolPointMapper ywPatrolPointMapper;
+
+ @Override
+ public Integer create(YwPatrolPoint ywPatrolPoint) {
+ ywPatrolPointMapper.insert(ywPatrolPoint);
+ return ywPatrolPoint.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywPatrolPointMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwPatrolPoint ywPatrolPoint) {
+ UpdateWrapper<YwPatrolPoint> deleteWrapper = new UpdateWrapper<>(ywPatrolPoint);
+ ywPatrolPointMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywPatrolPointMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwPatrolPoint ywPatrolPoint) {
+ ywPatrolPointMapper.updateById(ywPatrolPoint);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwPatrolPoint> ywPatrolPoints) {
+ if (CollectionUtils.isEmpty(ywPatrolPoints)) {
+ return;
+ }
+ for (YwPatrolPoint ywPatrolPoint: ywPatrolPoints) {
+ this.updateById(ywPatrolPoint);
+ }
+ }
+
+ @Override
+ public YwPatrolPoint findById(Integer id) {
+ return ywPatrolPointMapper.selectById(id);
+ }
+
+ @Override
+ public YwPatrolPoint findOne(YwPatrolPoint ywPatrolPoint) {
+ QueryWrapper<YwPatrolPoint> wrapper = new QueryWrapper<>(ywPatrolPoint);
+ return ywPatrolPointMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwPatrolPoint> findList(YwPatrolPoint ywPatrolPoint) {
+ QueryWrapper<YwPatrolPoint> wrapper = new QueryWrapper<>(ywPatrolPoint);
+ return ywPatrolPointMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwPatrolPoint> findPage(PageWrap<YwPatrolPoint> pageWrap) {
+ IPage<YwPatrolPoint> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwPatrolPoint> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwPatrolPoint::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwPatrolPoint::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolPoint::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwPatrolPoint::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwPatrolPoint::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolPoint::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwPatrolPoint::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwPatrolPoint::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getName() != null) {
+ queryWrapper.lambda().eq(YwPatrolPoint::getName, pageWrap.getModel().getName());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwPatrolPoint::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwPatrolPoint::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwPatrolPoint::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getImgurl() != null) {
+ queryWrapper.lambda().eq(YwPatrolPoint::getImgurl, pageWrap.getModel().getImgurl());
+ }
+ if (pageWrap.getModel().getAreaId() != null) {
+ queryWrapper.lambda().eq(YwPatrolPoint::getAreaId, pageWrap.getModel().getAreaId());
+ }
+ if (pageWrap.getModel().getAddr() != null) {
+ queryWrapper.lambda().eq(YwPatrolPoint::getAddr, pageWrap.getModel().getAddr());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywPatrolPointMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwPatrolPoint ywPatrolPoint) {
+ QueryWrapper<YwPatrolPoint> wrapper = new QueryWrapper<>(ywPatrolPoint);
+ return ywPatrolPointMapper.selectCount(wrapper);
+ }
+}
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
new file mode 100644
index 0000000..2b4e432
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
@@ -0,0 +1,178 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwPatrolSchemeMapper;
+import com.doumee.dao.business.model.YwPatrolScheme;
+import com.doumee.service.business.YwPatrolSchemeService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮宸℃璁″垝淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwPatrolSchemeServiceImpl implements YwPatrolSchemeService {
+
+ @Autowired
+ private YwPatrolSchemeMapper ywPatrolSchemeMapper;
+
+ @Override
+ public Integer create(YwPatrolScheme ywPatrolScheme) {
+ ywPatrolSchemeMapper.insert(ywPatrolScheme);
+ return ywPatrolScheme.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywPatrolSchemeMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwPatrolScheme ywPatrolScheme) {
+ UpdateWrapper<YwPatrolScheme> deleteWrapper = new UpdateWrapper<>(ywPatrolScheme);
+ ywPatrolSchemeMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywPatrolSchemeMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwPatrolScheme ywPatrolScheme) {
+ ywPatrolSchemeMapper.updateById(ywPatrolScheme);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwPatrolScheme> ywPatrolSchemes) {
+ if (CollectionUtils.isEmpty(ywPatrolSchemes)) {
+ return;
+ }
+ for (YwPatrolScheme ywPatrolScheme: ywPatrolSchemes) {
+ this.updateById(ywPatrolScheme);
+ }
+ }
+
+ @Override
+ public YwPatrolScheme findById(Integer id) {
+ return ywPatrolSchemeMapper.selectById(id);
+ }
+
+ @Override
+ public YwPatrolScheme findOne(YwPatrolScheme ywPatrolScheme) {
+ QueryWrapper<YwPatrolScheme> wrapper = new QueryWrapper<>(ywPatrolScheme);
+ return ywPatrolSchemeMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwPatrolScheme> findList(YwPatrolScheme ywPatrolScheme) {
+ QueryWrapper<YwPatrolScheme> wrapper = new QueryWrapper<>(ywPatrolScheme);
+ return ywPatrolSchemeMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwPatrolScheme> findPage(PageWrap<YwPatrolScheme> pageWrap) {
+ IPage<YwPatrolScheme> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwPatrolScheme> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolScheme::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwPatrolScheme::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolScheme::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwPatrolScheme::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getTitle() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getTitle, pageWrap.getModel().getTitle());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getLineId() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getLineId, pageWrap.getModel().getLineId());
+ }
+ if (pageWrap.getModel().getUserIds() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getUserIds, pageWrap.getModel().getUserIds());
+ }
+ if (pageWrap.getModel().getDealUserId() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getDealUserId, pageWrap.getModel().getDealUserId());
+ }
+ if (pageWrap.getModel().getDealDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolScheme::getDealDate, Utils.Date.getStart(pageWrap.getModel().getDealDate()));
+ queryWrapper.lambda().le(YwPatrolScheme::getDealDate, Utils.Date.getEnd(pageWrap.getModel().getDealDate()));
+ }
+ if (pageWrap.getModel().getDealInfo() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getDealInfo, pageWrap.getModel().getDealInfo());
+ }
+ if (pageWrap.getModel().getCircleType() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getCircleType, pageWrap.getModel().getCircleType());
+ }
+ if (pageWrap.getModel().getCircleDays() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getCircleDays, pageWrap.getModel().getCircleDays());
+ }
+ if (pageWrap.getModel().getStartDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolScheme::getStartDate, Utils.Date.getStart(pageWrap.getModel().getStartDate()));
+ queryWrapper.lambda().le(YwPatrolScheme::getStartDate, Utils.Date.getEnd(pageWrap.getModel().getStartDate()));
+ }
+ if (pageWrap.getModel().getEndDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolScheme::getEndDate, Utils.Date.getStart(pageWrap.getModel().getEndDate()));
+ queryWrapper.lambda().le(YwPatrolScheme::getEndDate, Utils.Date.getEnd(pageWrap.getModel().getEndDate()));
+ }
+ if (pageWrap.getModel().getStartTime() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getStartTime, pageWrap.getModel().getStartTime());
+ }
+ if (pageWrap.getModel().getEndTime() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getEndTime, pageWrap.getModel().getEndTime());
+ }
+ if (pageWrap.getModel().getProcessStatus() != null) {
+ queryWrapper.lambda().eq(YwPatrolScheme::getProcessStatus, pageWrap.getModel().getProcessStatus());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywPatrolSchemeMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwPatrolScheme ywPatrolScheme) {
+ QueryWrapper<YwPatrolScheme> wrapper = new QueryWrapper<>(ywPatrolScheme);
+ return ywPatrolSchemeMapper.selectCount(wrapper);
+ }
+}
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
new file mode 100644
index 0000000..20307e3
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java
@@ -0,0 +1,169 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwPatrolTaskMapper;
+import com.doumee.dao.business.model.YwPatrolTask;
+import com.doumee.service.business.YwPatrolTaskService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮宸℃浠诲姟淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwPatrolTaskServiceImpl implements YwPatrolTaskService {
+
+ @Autowired
+ private YwPatrolTaskMapper ywPatrolTaskMapper;
+
+ @Override
+ public Integer create(YwPatrolTask ywPatrolTask) {
+ ywPatrolTaskMapper.insert(ywPatrolTask);
+ return ywPatrolTask.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywPatrolTaskMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwPatrolTask ywPatrolTask) {
+ UpdateWrapper<YwPatrolTask> deleteWrapper = new UpdateWrapper<>(ywPatrolTask);
+ ywPatrolTaskMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywPatrolTaskMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwPatrolTask ywPatrolTask) {
+ ywPatrolTaskMapper.updateById(ywPatrolTask);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwPatrolTask> ywPatrolTasks) {
+ if (CollectionUtils.isEmpty(ywPatrolTasks)) {
+ return;
+ }
+ for (YwPatrolTask ywPatrolTask: ywPatrolTasks) {
+ this.updateById(ywPatrolTask);
+ }
+ }
+
+ @Override
+ public YwPatrolTask findById(Integer id) {
+ return ywPatrolTaskMapper.selectById(id);
+ }
+
+ @Override
+ public YwPatrolTask findOne(YwPatrolTask ywPatrolTask) {
+ QueryWrapper<YwPatrolTask> wrapper = new QueryWrapper<>(ywPatrolTask);
+ return ywPatrolTaskMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwPatrolTask> findList(YwPatrolTask ywPatrolTask) {
+ QueryWrapper<YwPatrolTask> wrapper = new QueryWrapper<>(ywPatrolTask);
+ return ywPatrolTaskMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwPatrolTask> findPage(PageWrap<YwPatrolTask> pageWrap) {
+ IPage<YwPatrolTask> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwPatrolTask> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolTask::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwPatrolTask::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolTask::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwPatrolTask::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getTitle() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getTitle, pageWrap.getModel().getTitle());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getSchemeId() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getSchemeId, pageWrap.getModel().getSchemeId());
+ }
+ if (pageWrap.getModel().getPointId() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getPointId, pageWrap.getModel().getPointId());
+ }
+ if (pageWrap.getModel().getDealUserId() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getDealUserId, pageWrap.getModel().getDealUserId());
+ }
+ if (pageWrap.getModel().getDealDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolTask::getDealDate, Utils.Date.getStart(pageWrap.getModel().getDealDate()));
+ queryWrapper.lambda().le(YwPatrolTask::getDealDate, Utils.Date.getEnd(pageWrap.getModel().getDealDate()));
+ }
+ if (pageWrap.getModel().getDealInfo() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getDealInfo, pageWrap.getModel().getDealInfo());
+ }
+ if (pageWrap.getModel().getCircleType() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getCircleType, pageWrap.getModel().getCircleType());
+ }
+ if (pageWrap.getModel().getStartDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolTask::getStartDate, Utils.Date.getStart(pageWrap.getModel().getStartDate()));
+ queryWrapper.lambda().le(YwPatrolTask::getStartDate, Utils.Date.getEnd(pageWrap.getModel().getStartDate()));
+ }
+ if (pageWrap.getModel().getEndDate() != null) {
+ queryWrapper.lambda().ge(YwPatrolTask::getEndDate, Utils.Date.getStart(pageWrap.getModel().getEndDate()));
+ queryWrapper.lambda().le(YwPatrolTask::getEndDate, Utils.Date.getEnd(pageWrap.getModel().getEndDate()));
+ }
+ if (pageWrap.getModel().getDealStatus() != null) {
+ queryWrapper.lambda().eq(YwPatrolTask::getDealStatus, pageWrap.getModel().getDealStatus());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywPatrolTaskMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwPatrolTask ywPatrolTask) {
+ QueryWrapper<YwPatrolTask> wrapper = new QueryWrapper<>(ywPatrolTask);
+ return ywPatrolTaskMapper.selectCount(wrapper);
+ }
+}
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
new file mode 100644
index 0000000..808d9b1
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java
@@ -0,0 +1,148 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwProjectMapper;
+import com.doumee.dao.business.model.YwProject;
+import com.doumee.service.business.YwProjectService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮椤圭洰淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwProjectServiceImpl implements YwProjectService {
+
+ @Autowired
+ private YwProjectMapper ywProjectMapper;
+
+ @Override
+ public Integer create(YwProject ywProject) {
+ ywProjectMapper.insert(ywProject);
+ return ywProject.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywProjectMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwProject ywProject) {
+ UpdateWrapper<YwProject> deleteWrapper = new UpdateWrapper<>(ywProject);
+ ywProjectMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywProjectMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwProject ywProject) {
+ ywProjectMapper.updateById(ywProject);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwProject> ywProjects) {
+ if (CollectionUtils.isEmpty(ywProjects)) {
+ return;
+ }
+ for (YwProject ywProject: ywProjects) {
+ this.updateById(ywProject);
+ }
+ }
+
+ @Override
+ public YwProject findById(Integer id) {
+ return ywProjectMapper.selectById(id);
+ }
+
+ @Override
+ public YwProject findOne(YwProject ywProject) {
+ QueryWrapper<YwProject> wrapper = new QueryWrapper<>(ywProject);
+ return ywProjectMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwProject> findList(YwProject ywProject) {
+ QueryWrapper<YwProject> wrapper = new QueryWrapper<>(ywProject);
+ return ywProjectMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwProject> findPage(PageWrap<YwProject> pageWrap) {
+ IPage<YwProject> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwProject> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwProject::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwProject::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwProject::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwProject::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwProject::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwProject::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwProject::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwProject::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getName() != null) {
+ queryWrapper.lambda().eq(YwProject::getName, pageWrap.getModel().getName());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwProject::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwProject::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwProject::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getImgurl() != null) {
+ queryWrapper.lambda().eq(YwProject::getImgurl, pageWrap.getModel().getImgurl());
+ }
+ if (pageWrap.getModel().getAreaId() != null) {
+ queryWrapper.lambda().eq(YwProject::getAreaId, pageWrap.getModel().getAreaId());
+ }
+ if (pageWrap.getModel().getAddr() != null) {
+ queryWrapper.lambda().eq(YwProject::getAddr, pageWrap.getModel().getAddr());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywProjectMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwProject ywProject) {
+ QueryWrapper<YwProject> wrapper = new QueryWrapper<>(ywProject);
+ return ywProjectMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java
new file mode 100644
index 0000000..29fa036
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java
@@ -0,0 +1,169 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwRoomMapper;
+import com.doumee.dao.business.model.YwRoom;
+import com.doumee.service.business.YwRoomService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮鎴挎簮淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwRoomServiceImpl implements YwRoomService {
+
+ @Autowired
+ private YwRoomMapper ywRoomMapper;
+
+ @Override
+ public Integer create(YwRoom ywRoom) {
+ ywRoomMapper.insert(ywRoom);
+ return ywRoom.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywRoomMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwRoom ywRoom) {
+ UpdateWrapper<YwRoom> deleteWrapper = new UpdateWrapper<>(ywRoom);
+ ywRoomMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywRoomMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwRoom ywRoom) {
+ ywRoomMapper.updateById(ywRoom);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwRoom> ywRooms) {
+ if (CollectionUtils.isEmpty(ywRooms)) {
+ return;
+ }
+ for (YwRoom ywRoom: ywRooms) {
+ this.updateById(ywRoom);
+ }
+ }
+
+ @Override
+ public YwRoom findById(Integer id) {
+ return ywRoomMapper.selectById(id);
+ }
+
+ @Override
+ public YwRoom findOne(YwRoom ywRoom) {
+ QueryWrapper<YwRoom> wrapper = new QueryWrapper<>(ywRoom);
+ return ywRoomMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwRoom> findList(YwRoom ywRoom) {
+ QueryWrapper<YwRoom> wrapper = new QueryWrapper<>(ywRoom);
+ return ywRoomMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwRoom> findPage(PageWrap<YwRoom> pageWrap) {
+ IPage<YwRoom> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwRoom> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwRoom::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwRoom::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwRoom::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwRoom::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwRoom::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwRoom::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwRoom::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwRoom::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getName() != null) {
+ queryWrapper.lambda().eq(YwRoom::getName, pageWrap.getModel().getName());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwRoom::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwRoom::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwRoom::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getImgurl() != null) {
+ queryWrapper.lambda().eq(YwRoom::getImgurl, pageWrap.getModel().getImgurl());
+ }
+ if (pageWrap.getModel().getCode() != null) {
+ queryWrapper.lambda().eq(YwRoom::getCode, pageWrap.getModel().getCode());
+ }
+ if (pageWrap.getModel().getRoomNum() != null) {
+ queryWrapper.lambda().eq(YwRoom::getRoomNum, pageWrap.getModel().getRoomNum());
+ }
+ if (pageWrap.getModel().getIsInvestment() != null) {
+ queryWrapper.lambda().eq(YwRoom::getIsInvestment, pageWrap.getModel().getIsInvestment());
+ }
+ if (pageWrap.getModel().getArea() != null) {
+ queryWrapper.lambda().eq(YwRoom::getArea, pageWrap.getModel().getArea());
+ }
+ if (pageWrap.getModel().getFeeArea() != null) {
+ queryWrapper.lambda().eq(YwRoom::getFeeArea, pageWrap.getModel().getFeeArea());
+ }
+ if (pageWrap.getModel().getRentArea() != null) {
+ queryWrapper.lambda().eq(YwRoom::getRentArea, pageWrap.getModel().getRentArea());
+ }
+ if (pageWrap.getModel().getFloor() != null) {
+ queryWrapper.lambda().eq(YwRoom::getFloor, pageWrap.getModel().getFloor());
+ }
+ if (pageWrap.getModel().getProjectId() != null) {
+ queryWrapper.lambda().eq(YwRoom::getProjectId, pageWrap.getModel().getProjectId());
+ }
+ if (pageWrap.getModel().getBuildingId() != null) {
+ queryWrapper.lambda().eq(YwRoom::getBuildingId, pageWrap.getModel().getBuildingId());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywRoomMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwRoom ywRoom) {
+ QueryWrapper<YwRoom> wrapper = new QueryWrapper<>(ywRoom);
+ return ywRoomMapper.selectCount(wrapper);
+ }
+}
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
new file mode 100644
index 0000000..0223ac9
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java
@@ -0,0 +1,200 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwWorkorderMapper;
+import com.doumee.dao.business.model.YwWorkorder;
+import com.doumee.service.business.YwWorkorderService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 杩愮淮宸ュ崟淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Service
+public class YwWorkorderServiceImpl implements YwWorkorderService {
+
+ @Autowired
+ private YwWorkorderMapper ywWorkorderMapper;
+
+ @Override
+ public Integer create(YwWorkorder ywWorkorder) {
+ ywWorkorderMapper.insert(ywWorkorder);
+ return ywWorkorder.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ywWorkorderMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(YwWorkorder ywWorkorder) {
+ UpdateWrapper<YwWorkorder> deleteWrapper = new UpdateWrapper<>(ywWorkorder);
+ ywWorkorderMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ywWorkorderMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(YwWorkorder ywWorkorder) {
+ ywWorkorderMapper.updateById(ywWorkorder);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<YwWorkorder> ywWorkorders) {
+ if (CollectionUtils.isEmpty(ywWorkorders)) {
+ return;
+ }
+ for (YwWorkorder ywWorkorder: ywWorkorders) {
+ this.updateById(ywWorkorder);
+ }
+ }
+
+ @Override
+ public YwWorkorder findById(Integer id) {
+ return ywWorkorderMapper.selectById(id);
+ }
+
+ @Override
+ public YwWorkorder findOne(YwWorkorder ywWorkorder) {
+ QueryWrapper<YwWorkorder> wrapper = new QueryWrapper<>(ywWorkorder);
+ return ywWorkorderMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<YwWorkorder> findList(YwWorkorder ywWorkorder) {
+ QueryWrapper<YwWorkorder> wrapper = new QueryWrapper<>(ywWorkorder);
+ return ywWorkorderMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<YwWorkorder> findPage(PageWrap<YwWorkorder> pageWrap) {
+ IPage<YwWorkorder> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<YwWorkorder> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getCreator() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getCreateDate() != null) {
+ queryWrapper.lambda().ge(YwWorkorder::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.lambda().le(YwWorkorder::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ }
+ if (pageWrap.getModel().getEditor() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getEditor, pageWrap.getModel().getEditor());
+ }
+ if (pageWrap.getModel().getEditDate() != null) {
+ queryWrapper.lambda().ge(YwWorkorder::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.lambda().le(YwWorkorder::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ }
+ if (pageWrap.getModel().getIsdeleted() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ }
+ if (pageWrap.getModel().getTitle() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getTitle, pageWrap.getModel().getTitle());
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getStatus() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getStatus, pageWrap.getModel().getStatus());
+ }
+ if (pageWrap.getModel().getSortnum() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getSortnum, pageWrap.getModel().getSortnum());
+ }
+ if (pageWrap.getModel().getContent() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getContent, pageWrap.getModel().getContent());
+ }
+ if (pageWrap.getModel().getGetDate() != null) {
+ queryWrapper.lambda().ge(YwWorkorder::getGetDate, Utils.Date.getStart(pageWrap.getModel().getGetDate()));
+ queryWrapper.lambda().le(YwWorkorder::getGetDate, Utils.Date.getEnd(pageWrap.getModel().getGetDate()));
+ }
+ if (pageWrap.getModel().getProjectId() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getProjectId, pageWrap.getModel().getProjectId());
+ }
+ if (pageWrap.getModel().getBuildingId() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getBuildingId, pageWrap.getModel().getBuildingId());
+ }
+ if (pageWrap.getModel().getRoomId() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getRoomId, pageWrap.getModel().getRoomId());
+ }
+ if (pageWrap.getModel().getUserId() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getUserId, pageWrap.getModel().getUserId());
+ }
+ if (pageWrap.getModel().getPhone() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getPhone, pageWrap.getModel().getPhone());
+ }
+ if (pageWrap.getModel().getSubmitDate() != null) {
+ queryWrapper.lambda().ge(YwWorkorder::getSubmitDate, Utils.Date.getStart(pageWrap.getModel().getSubmitDate()));
+ queryWrapper.lambda().le(YwWorkorder::getSubmitDate, Utils.Date.getEnd(pageWrap.getModel().getSubmitDate()));
+ }
+ if (pageWrap.getModel().getCateId() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getCateId, pageWrap.getModel().getCateId());
+ }
+ if (pageWrap.getModel().getAreaType() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getAreaType, pageWrap.getModel().getAreaType());
+ }
+ if (pageWrap.getModel().getCode() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getCode, pageWrap.getModel().getCode());
+ }
+ if (pageWrap.getModel().getDealStatus() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getDealStatus, pageWrap.getModel().getDealStatus());
+ }
+ if (pageWrap.getModel().getDispatchUserId() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getDispatchUserId, pageWrap.getModel().getDispatchUserId());
+ }
+ if (pageWrap.getModel().getDispatchDate() != null) {
+ queryWrapper.lambda().ge(YwWorkorder::getDispatchDate, Utils.Date.getStart(pageWrap.getModel().getDispatchDate()));
+ queryWrapper.lambda().le(YwWorkorder::getDispatchDate, Utils.Date.getEnd(pageWrap.getModel().getDispatchDate()));
+ }
+ if (pageWrap.getModel().getDispatchInfo() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getDispatchInfo, pageWrap.getModel().getDispatchInfo());
+ }
+ if (pageWrap.getModel().getDealUserId() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getDealUserId, pageWrap.getModel().getDealUserId());
+ }
+ if (pageWrap.getModel().getDealDate() != null) {
+ queryWrapper.lambda().ge(YwWorkorder::getDealDate, Utils.Date.getStart(pageWrap.getModel().getDealDate()));
+ queryWrapper.lambda().le(YwWorkorder::getDealDate, Utils.Date.getEnd(pageWrap.getModel().getDealDate()));
+ }
+ if (pageWrap.getModel().getDealInfo() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getDealInfo, pageWrap.getModel().getDealInfo());
+ }
+ if (pageWrap.getModel().getDealType() != null) {
+ queryWrapper.lambda().eq(YwWorkorder::getDealType, pageWrap.getModel().getDealType());
+ }
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ywWorkorderMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(YwWorkorder ywWorkorder) {
+ QueryWrapper<YwWorkorder> wrapper = new QueryWrapper<>(ywWorkorder);
+ return ywWorkorderMapper.selectCount(wrapper);
+ }
+}
diff --git a/server/visits/dmvisit_service/src/main/resources/application-testHS.yml.bck b/server/visits/dmvisit_service/src/main/resources/application-testHS.yml.bck
new file mode 100644
index 0000000..2680b48
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/resources/application-testHS.yml.bck
@@ -0,0 +1,81 @@
+spring:
+ # 鏁版嵁婧愰厤缃�
+ datasource:
+ url: jdbc:mysql://10.10.99.63:3306/visit?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
+ username: root
+ password: HS!20240227
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ type: com.alibaba.druid.pool.DruidDataSource
+ redis:
+ # database: 0
+ host: 127.0.0.1
+ port: 6379
+ password: huasun618
+ timeout: 5000 # 杩炴帴姹犱腑鐨勬渶灏忕┖闂茶繛鎺�
+ jackson:
+ time-zone: GMT+8
+ date-format: yyyy-MM-dd HH:mm:ss
+
+#rocketmq:
+# namesrvAddr: rmq-cn-pe335rcnn06.cn-shanghai.rmq.aliyuncs.com:8080
+# groupId: GID-wakatest
+# topic: waka-test
+# username: 4derRb4Sw5EkqUMI
+# password: v50N97wf4av8Q8I4
+
+knife4j:
+ enable: true
+ basic:
+ enable: true
+ username: admin
+ password: 111111
+
+debug_model: true
+
+# Swagger閰嶇疆
+swagger:
+ host: dmtest.ahapp.net
+ title: ${project.name}鎺ュ彛鏂囨。
+ description: ${project.name}鎺ュ彛鏂囨。
+ enabled: true
+ context-path: /erp_interface
+ # 绂佺敤swagger鏃剁殑閲嶅畾鍚戝湴鍧�
+ redirect-uri: /
+
+########################鍚屾鏁版嵁妯″紡 ########################
+data-sync:
+ org-user-data-origin: 1 #缁勭粐鏁版嵁 0鑷缓 2浠ユ捣搴蜂负涓� 1鍗庢櫉ERP绯荤粺
+ visitor-data-origin: 1 #璁垮鏁版嵁 0鑷缓 2浠ユ捣搴蜂负涓� 1鍗庢櫉ERP绯荤粺
+ need-deal-img: true #鏄惁闇�瑕佸鐞嗗浘鐗囨暟鎹�
+
+########################寰俊鏀粯鐩稿叧閰嶇疆########################
+wx:
+ pay:
+ appId: wxfab6da18632e28de
+ appSecret: 4ee3b22afa90287834319fc3c1635271
+ mchId: 1229817002
+ mchKey: u4TSNtv0wFP7WRfnxBgijYOtRhS9FvlM
+ notifyUrl: https://dmtest.ahapp.net/smartmeeting_interface/web/api/wxPayNotify
+ keyPath: /usr/local/apiclient_cert.p12
+
+tencent:
+ map:
+ remoteHost: https://apis.map.qq.com
+ appKey: 3AYBZ-I5R3V-2BVP3-UWBDQ-ETBM5-B2BBQ
+
+
+des_pwd: 123456SDFKDJF
+
+## MQTT##
+mqtt:
+ host: tcp://192.168.10.198:1883
+ userName: root
+ passWord: 123456
+ qos: 1
+ clientId: ClientId_local #ClientId_local蹇呴』鍞竴 姣斿浣犲凡缁忓畾浜嗗彨ABC 閭d綘灏变竴鐩村彨ABC 鍏朵粬鍦版柟灏变笉瑕佷娇鐢ˋBC浜�
+ timeout: 10
+ keepalive: 20
+ topic1: A/pick/warn/# #绗﹀彿鏄唬琛ㄦ暣涓獁arn涓嬮潰鐨勫叏閮ㄥ瓙涓婚 娌℃湁鐞嗚В鐨勮瘽 鍙互鐧惧害浠旂粏鐞嗚В涓�涓�
+ topic2: A/cmd/resp
+ topic3: ABCF
+ topic4: ABCH
diff --git a/server/visits/dmvisit_service/src/main/resources/application-testYL.yml b/server/visits/dmvisit_service/src/main/resources/application-testYL.yml
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/resources/application-testYL.yml
--
Gitblit v1.9.3