From e83cce7cc2bb41d3118c6682dedb55b1df622296 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Thu, 23 Nov 2023 15:13:07 +0800
Subject: [PATCH] 新增小区,物业相关表基础接口

---
 src/main/java/org/springblade/common/node/TreeLongNode.java                                          |   32 
 src/main/java/org/springblade/common/utils/NodeTreeUtil.java                                         |   41 
 src/main/java/org/springblade/modules/property/vo/PropertyCompanyDistrictVO.java                     |   35 
 src/main/java/org/springblade/modules/district/dto/DistrictDTO.java                                  |   34 
 src/main/java/org/springblade/modules/district/controller/DistrictController.java                    |  126 ++
 src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.java                              |    4 
 src/main/java/org/springblade/modules/system/mapper/RegionMapper.java                                |    9 
 src/main/java/org/springblade/modules/property/wrapper/PropertyCompanyDistrictWrapper.java           |   50 +
 src/main/java/org/springblade/modules/property/controller/PropertyDistrictUserController.java        |  126 ++
 src/main/java/org/springblade/modules/property/vo/PropertyDistrictUserVO.java                        |   35 
 src/main/java/org/springblade/modules/property/entity/PropertyDistrictUserEntity.java                |   54 +
 src/main/java/org/springblade/modules/place/mapper/PlaceMapper.java                                  |    4 
 src/main/java/org/springblade/modules/property/controller/PropertyCapitalApplyController.java        |  126 ++
 src/main/java/org/springblade/modules/property/service/impl/PropertyCapitalApplyServiceImpl.java     |   42 
 src/main/java/org/springblade/modules/district/service/IDistrictService.java                         |   43 
 src/main/java/org/springblade/modules/system/service/impl/RegionServiceImpl.java                     |   13 
 src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java                   |    4 
 src/main/java/org/springblade/modules/property/mapper/PropertyCompanyMapper.xml                      |   28 
 src/main/java/org/springblade/modules/property/service/IPropertyCapitalApplyService.java             |   42 
 src/main/java/org/springblade/modules/district/mapper/DistrictMapper.java                            |   43 
 src/main/java/org/springblade/modules/district/entity/DistrictEntity.java                            |  136 ++
 src/main/java/org/springblade/modules/district/service/impl/DistrictServiceImpl.java                 |   43 
 src/main/java/org/springblade/modules/property/mapper/PropertyDistrictUserMapper.xml                 |   19 
 src/main/java/org/springblade/modules/property/vo/PropertyCapitalApplyVO.java                        |   35 
 src/main/java/org/springblade/modules/property/dto/PropertyCompanyDTO.java                           |   34 
 src/main/java/org/springblade/modules/property/entity/PropertyCapitalApplyEntity.java                |  117 ++
 src/main/java/org/springblade/modules/property/dto/PropertyDistrictUserDTO.java                      |   34 
 src/main/java/org/springblade/modules/property/mapper/PropertyCompanyMapper.java                     |   43 
 src/main/java/org/springblade/modules/property/mapper/PropertyCompanyDistrictMapper.xml              |   32 
 src/main/java/org/springblade/modules/district/mapper/DistrictMapper.xml                             |   28 
 src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml                               |    2 
 src/main/java/org/springblade/common/node/TreeStringNode.java                                        |    5 
 src/main/java/org/springblade/modules/property/mapper/PropertyDistrictUserMapper.java                |   43 
 src/main/java/org/springblade/modules/district/wrapper/DistrictWrapper.java                          |   50 +
 src/main/java/org/springblade/modules/property/service/impl/PropertyDistrictUserServiceImpl.java     |   42 
 src/main/java/org/springblade/modules/property/mapper/PropertyCapitalApplyMapper.java                |   43 
 src/main/java/org/springblade/modules/property/service/IPropertyDistrictUserService.java             |   42 
 src/main/java/org/springblade/modules/property/wrapper/PropertyDistrictUserWrapper.java              |   50 +
 src/main/java/org/springblade/modules/property/service/IPropertyCompanyDistrictService.java          |   42 
 src/main/java/org/springblade/modules/property/vo/PropertyCompanyVO.java                             |   35 
 src/main/java/org/springblade/modules/property/wrapper/PropertyCompanyWrapper.java                   |   50 +
 src/main/java/org/springblade/modules/property/controller/PropertyCompanyController.java             |  126 ++
 src/main/java/org/springblade/modules/property/dto/PropertyCompanyDistrictDTO.java                   |   34 
 src/main/java/org/springblade/modules/property/dto/PropertyCapitalApplyDTO.java                      |   34 
 src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyDistrictServiceImpl.java  |   42 
 src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml             |   12 
 src/main/java/org/springblade/modules/place/service/IPlaceService.java                               |    5 
 src/main/java/org/springblade/modules/label/mapper/LabelMapper.java                                  |    1 
 src/main/java/org/springblade/modules/property/service/IPropertyCompanyService.java                  |   42 
 src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyServiceImpl.java          |   42 
 src/main/java/org/springblade/modules/district/vo/DistrictVO.java                                    |   35 
 src/main/java/org/springblade/modules/property/mapper/PropertyCompanyDistrictMapper.java             |   43 
 src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java                       |    5 
 src/main/java/org/springblade/modules/system/service/IRegionService.java                             |    8 
 src/main/java/org/springblade/modules/property/mapper/PropertyCapitalApplyMapper.xml                 |   36 
 src/main/java/org/springblade/modules/property/entity/PropertyCompanyDistrictEntity.java             |   95 ++
 src/main/java/org/springblade/modules/system/controller/RegionController.java                        |   11 
 src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml                                   |    2 
 src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java            |   25 
 src/main/java/org/springblade/modules/house/service/IHouseholdService.java                           |    4 
 src/main/java/org/springblade/modules/system/mapper/RegionMapper.xml                                 |   20 
 src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java |   43 
 src/main/java/org/springblade/modules/property/controller/PropertyCompanyDistrictController.java     |  126 ++
 src/main/java/org/springblade/modules/property/entity/PropertyCompanyEntity.java                     |   75 +
 src/main/java/org/springblade/modules/property/wrapper/PropertyCapitalApplyWrapper.java              |   50 +
 65 files changed, 2,645 insertions(+), 87 deletions(-)

diff --git a/src/main/java/org/springblade/common/node/TreeNode.java b/src/main/java/org/springblade/common/node/TreeLongNode.java
similarity index 61%
copy from src/main/java/org/springblade/common/node/TreeNode.java
copy to src/main/java/org/springblade/common/node/TreeLongNode.java
index 8d96d04..6cb770e 100644
--- a/src/main/java/org/springblade/common/node/TreeNode.java
+++ b/src/main/java/org/springblade/common/node/TreeLongNode.java
@@ -3,8 +3,8 @@
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
-import io.swagger.annotations.ApiModel;
 import lombok.Data;
+import sun.rmi.runtime.Log;
 
 import java.io.Serializable;
 import java.util.ArrayList;
@@ -16,7 +16,7 @@
  * @author zhongrj
  */
 @Data
-public class TreeNode implements Serializable {
+public class TreeLongNode implements Serializable {
 
 	private static final long serialVersionUID = 1L;
 
@@ -24,46 +24,28 @@
 	 * 主键ID
 	 */
 	@JsonSerialize(using = ToStringSerializer.class)
-	private String id;
+	private Long id;
 
 	/**
 	 * 名称
 	 */
 	private String name;
 
-	private String neiName;
-
 	/**
-	 * 门牌类型
+	 * 排序
 	 */
-	private String doorplateType;
-
-	/**
-	 * 地址等级
-	 */
-	private Integer addressLevel;
-
-	/**
-	 * 房屋编码
-	 */
-	private String houseCode;
-
-
-	/**
-	 * 地址类型 1:小区  2:非小区  3:街路巷 4:商超
-	 */
-	private Integer addressType;
+	private Integer sort;
 
 	/**
 	 * 父节点ID
 	 */
 	@JsonSerialize(using = ToStringSerializer.class)
-	private String parentId;
+	private Long parentId;
 
 	/**
 	 * 子孙节点
 	 */
-	private List<TreeNode> children = new ArrayList<>();
+	private List<TreeLongNode> children = new ArrayList<>();
 
 	/**
 	 * 是否有子孙节点
diff --git a/src/main/java/org/springblade/common/node/TreeNode.java b/src/main/java/org/springblade/common/node/TreeStringNode.java
similarity index 88%
rename from src/main/java/org/springblade/common/node/TreeNode.java
rename to src/main/java/org/springblade/common/node/TreeStringNode.java
index 8d96d04..7c25182 100644
--- a/src/main/java/org/springblade/common/node/TreeNode.java
+++ b/src/main/java/org/springblade/common/node/TreeStringNode.java
@@ -3,7 +3,6 @@
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
-import io.swagger.annotations.ApiModel;
 import lombok.Data;
 
 import java.io.Serializable;
@@ -16,7 +15,7 @@
  * @author zhongrj
  */
 @Data
-public class TreeNode implements Serializable {
+public class TreeStringNode implements Serializable {
 
 	private static final long serialVersionUID = 1L;
 
@@ -63,7 +62,7 @@
 	/**
 	 * 子孙节点
 	 */
-	private List<TreeNode> children = new ArrayList<>();
+	private List<TreeStringNode> children = new ArrayList<>();
 
 	/**
 	 * 是否有子孙节点
diff --git a/src/main/java/org/springblade/common/utils/NodeTreeUtil.java b/src/main/java/org/springblade/common/utils/NodeTreeUtil.java
index 88d8860..f616629 100644
--- a/src/main/java/org/springblade/common/utils/NodeTreeUtil.java
+++ b/src/main/java/org/springblade/common/utils/NodeTreeUtil.java
@@ -1,7 +1,8 @@
 package org.springblade.common.utils;
 
 import org.springblade.common.node.TreeIntegerNode;
-import org.springblade.common.node.TreeNode;
+import org.springblade.common.node.TreeLongNode;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.modules.doorplateAddress.vo.DoorplateAddressVOTree;
 import org.springblade.modules.house.vo.HouseTree;
 
@@ -40,6 +41,44 @@
 	 * @param treeMap
 	 * @return
 	 */
+	public static List<TreeLongNode> getLongNodeTree(Map<Long, TreeLongNode> treeMap){
+		List<TreeLongNode> tree = new ArrayList<>();
+		if (treeMap.size() > 1) {
+			treeMap.forEach((id, treeNode) -> {
+				if (treeMap.containsKey(treeNode.getParentId())) {
+					treeMap.get(treeNode.getParentId()).getChildren().add(treeNode);
+				} else {
+					tree.add(treeNode);
+				}
+			});
+		}
+		return tree;
+	}
+
+	/**
+	 * 树转换
+	 * @param treeMap
+	 * @return
+	 */
+	public static List<TreeStringNode> getStringNodeTree(Map<String, TreeStringNode> treeMap){
+		List<TreeStringNode> tree = new ArrayList<>();
+		if (treeMap.size() > 1) {
+			treeMap.forEach((id, treeNode) -> {
+				if (treeMap.containsKey(treeNode.getParentId())) {
+					treeMap.get(treeNode.getParentId()).getChildren().add(treeNode);
+				} else {
+					tree.add(treeNode);
+				}
+			});
+		}
+		return tree;
+	}
+
+	/**
+	 * 树转换
+	 * @param treeMap
+	 * @return
+	 */
 	public static List<DoorplateAddressVOTree> getAddressNodeTree(Map<String, DoorplateAddressVOTree> treeMap){
 		List<DoorplateAddressVOTree> tree = new ArrayList<>();
 		if (treeMap.size() > 1) {
diff --git a/src/main/java/org/springblade/modules/district/controller/DistrictController.java b/src/main/java/org/springblade/modules/district/controller/DistrictController.java
new file mode 100644
index 0000000..7b97932
--- /dev/null
+++ b/src/main/java/org/springblade/modules/district/controller/DistrictController.java
@@ -0,0 +1,126 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.district.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.district.entity.DistrictEntity;
+import org.springblade.modules.district.vo.DistrictVO;
+import org.springblade.modules.district.wrapper.DistrictWrapper;
+import org.springblade.modules.district.service.IDistrictService;
+import org.springblade.core.boot.ctrl.BladeController;
+
+/**
+ * 小区表 控制器
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("blade-district/district")
+@Api(value = "小区表", tags = "小区表接口")
+public class DistrictController{
+
+	private final IDistrictService districtService;
+
+	/**
+	 * 小区表 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "详情", notes = "传入district")
+	public R<DistrictVO> detail(DistrictEntity district) {
+		DistrictEntity detail = districtService.getOne(Condition.getQueryWrapper(district));
+		return R.data(DistrictWrapper.build().entityVO(detail));
+	}
+	/**
+	 * 小区表 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "分页", notes = "传入district")
+	public R<IPage<DistrictVO>> list(DistrictEntity district, Query query) {
+		IPage<DistrictEntity> pages = districtService.page(Condition.getPage(query), Condition.getQueryWrapper(district));
+		return R.data(DistrictWrapper.build().pageVO(pages));
+	}
+
+	/**
+	 * 小区表 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入district")
+	public R<IPage<DistrictVO>> page(DistrictVO district, Query query) {
+		IPage<DistrictVO> pages = districtService.selectDistrictPage(Condition.getPage(query), district);
+		return R.data(pages);
+	}
+
+	/**
+	 * 小区表 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "新增", notes = "传入district")
+	public R save(@Valid @RequestBody DistrictEntity district) {
+		return R.status(districtService.save(district));
+	}
+
+	/**
+	 * 小区表 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@ApiOperation(value = "修改", notes = "传入district")
+	public R update(@Valid @RequestBody DistrictEntity district) {
+		return R.status(districtService.updateById(district));
+	}
+
+	/**
+	 * 小区表 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@ApiOperation(value = "新增或修改", notes = "传入district")
+	public R submit(@Valid @RequestBody DistrictEntity district) {
+		return R.status(districtService.saveOrUpdate(district));
+	}
+
+	/**
+	 * 小区表 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@ApiOperation(value = "逻辑删除", notes = "传入ids")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(districtService.removeByIds(Func.toLongList(ids)));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/district/dto/DistrictDTO.java b/src/main/java/org/springblade/modules/district/dto/DistrictDTO.java
new file mode 100644
index 0000000..f626849
--- /dev/null
+++ b/src/main/java/org/springblade/modules/district/dto/DistrictDTO.java
@@ -0,0 +1,34 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.district.dto;
+
+import org.springblade.modules.district.entity.DistrictEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 小区表 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class DistrictDTO extends DistrictEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/district/entity/DistrictEntity.java b/src/main/java/org/springblade/modules/district/entity/DistrictEntity.java
new file mode 100644
index 0000000..1bdde69
--- /dev/null
+++ b/src/main/java/org/springblade/modules/district/entity/DistrictEntity.java
@@ -0,0 +1,136 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.district.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+import org.springframework.format.annotation.DateTimeFormat;
+
+/**
+ * 小区表 实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@TableName("jczz_district")
+@ApiModel(value = "District对象", description = "小区表")
+public class DistrictEntity implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+	/**
+	 * 主键
+	 */
+	@JsonSerialize(using = ToStringSerializer.class)
+	@ApiModelProperty("主键id")
+	@TableId(value = "id", type = IdType.ASSIGN_UUID)
+	private String id;
+
+	/**
+	 * 小区编号
+	 */
+	@ApiModelProperty(value = "小区编号")
+	private String aoiCode;
+	/**
+	 * 社区编号
+	 */
+	@ApiModelProperty(value = "社区编号")
+	private String communityCode;
+	/**
+	 * 小区名称
+	 */
+	@ApiModelProperty(value = "小区名称")
+	private String name;
+
+	/**
+	 * 小区图片url
+	 */
+	@ApiModelProperty(value = "小区图片url")
+	private String picUrl;
+
+	/**
+	 * 地址
+	 */
+	@ApiModelProperty(value = "地址")
+	private String address;
+	/**
+	 * 中心坐标-经度
+	 */
+	@ApiModelProperty(value = "中心坐标-经度")
+	private String lng;
+	/**
+	 * 中心坐标-纬度
+	 */
+	@ApiModelProperty(value = "中心坐标-纬度")
+	private String lat;
+	/**
+	 * 简介
+	 */
+	@ApiModelProperty(value = "简介")
+	private String remark;
+
+	/**
+	 * 创建人
+	 */
+	@JsonSerialize(using = ToStringSerializer.class)
+	@ApiModelProperty("创建人")
+	private String createUser;
+
+	/**
+	 * 创建时间
+	 */
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@ApiModelProperty("创建时间")
+	private Date createTime;
+
+	/**
+	 * 更新人
+	 */
+	@JsonSerialize(using = ToStringSerializer.class)
+	@ApiModelProperty("更新人")
+	private String updateUser;
+
+	/**
+	 * 更新时间
+	 */
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@ApiModelProperty("更新时间")
+	private Date updateTime;
+
+	/**
+	 * 是否删除
+	 */
+	@TableLogic
+	@ApiModelProperty("是否已删除 0:否  1:是")
+	private Integer isDeleted;
+
+}
diff --git a/src/main/java/org/springblade/modules/district/mapper/DistrictMapper.java b/src/main/java/org/springblade/modules/district/mapper/DistrictMapper.java
new file mode 100644
index 0000000..5ffcd26
--- /dev/null
+++ b/src/main/java/org/springblade/modules/district/mapper/DistrictMapper.java
@@ -0,0 +1,43 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.district.mapper;
+
+import org.springblade.modules.district.entity.DistrictEntity;
+import org.springblade.modules.district.vo.DistrictVO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.List;
+
+/**
+ * 小区表 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public interface DistrictMapper extends BaseMapper<DistrictEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param district
+	 * @return
+	 */
+	List<DistrictVO> selectDistrictPage(IPage page, DistrictVO district);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/district/mapper/DistrictMapper.xml b/src/main/java/org/springblade/modules/district/mapper/DistrictMapper.xml
new file mode 100644
index 0000000..91b1c83
--- /dev/null
+++ b/src/main/java/org/springblade/modules/district/mapper/DistrictMapper.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.district.mapper.DistrictMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="districtResultMap" type="org.springblade.modules.district.entity.DistrictEntity">
+        <result column="id" property="id"/>
+        <result column="aoi_cdoe" property="aoiCdoe"/>
+        <result column="community_code" property="communityCode"/>
+        <result column="name" property="name"/>
+        <result column="address" property="address"/>
+        <result column="lng" property="lng"/>
+        <result column="lat" property="lat"/>
+        <result column="remark" property="remark"/>
+        <result column="create_user" property="createUser"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="is_deleted" property="isDeleted"/>
+    </resultMap>
+
+
+    <select id="selectDistrictPage" resultMap="districtResultMap">
+        select * from jczz_district where is_deleted = 0
+    </select>
+
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/district/service/IDistrictService.java b/src/main/java/org/springblade/modules/district/service/IDistrictService.java
new file mode 100644
index 0000000..88a43fc
--- /dev/null
+++ b/src/main/java/org/springblade/modules/district/service/IDistrictService.java
@@ -0,0 +1,43 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.district.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.modules.district.entity.DistrictEntity;
+import org.springblade.modules.district.vo.DistrictVO;
+import org.springblade.core.mp.base.BaseService;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 小区表 服务类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public interface IDistrictService extends IService<DistrictEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param district
+	 * @return
+	 */
+	IPage<DistrictVO> selectDistrictPage(IPage<DistrictVO> page, DistrictVO district);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/district/service/impl/DistrictServiceImpl.java b/src/main/java/org/springblade/modules/district/service/impl/DistrictServiceImpl.java
new file mode 100644
index 0000000..24d2178
--- /dev/null
+++ b/src/main/java/org/springblade/modules/district/service/impl/DistrictServiceImpl.java
@@ -0,0 +1,43 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.district.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.modules.district.entity.DistrictEntity;
+import org.springblade.modules.district.vo.DistrictVO;
+import org.springblade.modules.district.mapper.DistrictMapper;
+import org.springblade.modules.district.service.IDistrictService;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 小区表 服务实现类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Service
+public class DistrictServiceImpl extends ServiceImpl<DistrictMapper, DistrictEntity> implements IDistrictService {
+
+	@Override
+	public IPage<DistrictVO> selectDistrictPage(IPage<DistrictVO> page, DistrictVO district) {
+		return page.setRecords(baseMapper.selectDistrictPage(page, district));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/district/vo/DistrictVO.java b/src/main/java/org/springblade/modules/district/vo/DistrictVO.java
new file mode 100644
index 0000000..73c1ea2
--- /dev/null
+++ b/src/main/java/org/springblade/modules/district/vo/DistrictVO.java
@@ -0,0 +1,35 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.district.vo;
+
+import org.springblade.modules.district.entity.DistrictEntity;
+import org.springblade.core.tool.node.INode;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 小区表 视图实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class DistrictVO extends DistrictEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/district/wrapper/DistrictWrapper.java b/src/main/java/org/springblade/modules/district/wrapper/DistrictWrapper.java
new file mode 100644
index 0000000..7b53ad9
--- /dev/null
+++ b/src/main/java/org/springblade/modules/district/wrapper/DistrictWrapper.java
@@ -0,0 +1,50 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.district.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.district.entity.DistrictEntity;
+import org.springblade.modules.district.vo.DistrictVO;
+import java.util.Objects;
+
+/**
+ * 小区表 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public class DistrictWrapper extends BaseEntityWrapper<DistrictEntity, DistrictVO>  {
+
+	public static DistrictWrapper build() {
+		return new DistrictWrapper();
+ 	}
+
+	@Override
+	public DistrictVO entityVO(DistrictEntity district) {
+		DistrictVO districtVO = Objects.requireNonNull(BeanUtil.copy(district, DistrictVO.class));
+
+		//User createUser = UserCache.getUser(district.getCreateUser());
+		//User updateUser = UserCache.getUser(district.getUpdateUser());
+		//districtVO.setCreateUserName(createUser.getName());
+		//districtVO.setUpdateUserName(updateUser.getName());
+
+		return districtVO;
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java
index 1a29119..3afad58 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java
+++ b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java
@@ -19,10 +19,9 @@
 import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import liquibase.pro.packaged.P;
 import org.apache.ibatis.annotations.MapKey;
 import org.apache.ibatis.annotations.Param;
-import org.springblade.common.node.TreeNode;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.modules.doorplateAddress.entity.DoorplateAddressEntity;
 import org.springblade.modules.doorplateAddress.vo.DoorplateAddressVOTree;
 import org.springblade.modules.doorplateAddress.vo.DoorplateAddressVO;
@@ -55,15 +54,15 @@
 	 * 查询街道数据
 	 * @return
 	 */
-    List<TreeNode> getRegionListByGroupTwon(@Param("houseParam") HouseParam houseParam,
-											@Param("list") List<String> list);
+    List<TreeStringNode> getRegionListByGroupTwon(@Param("houseParam") HouseParam houseParam,
+                                                  @Param("list") List<String> list);
 
 	/**
 	 * 查询社区数据
 	 * @return
 	 */
-    List<TreeNode> getRegionListByGroupNei(@Param("houseParam") HouseParam houseParam,
-										   @Param("list") List<String> list);
+    List<TreeStringNode> getRegionListByGroupNei(@Param("houseParam") HouseParam houseParam,
+                                                 @Param("list") List<String> list);
 
 	/**
 	 * 根据社区名称查询小区集合
@@ -71,8 +70,8 @@
 	 * @param list
 	 * @return
 	 */
-    List<TreeNode> getDistrictList(@Param("houseParam") HouseParam houseParam,
-								   @Param("list") List<String> list);
+    List<TreeStringNode> getDistrictList(@Param("houseParam") HouseParam houseParam,
+                                         @Param("list") List<String> list);
 
 	/**
 	 * 根据社区名称查询楼栋集合
@@ -80,8 +79,8 @@
 	 * @param list
 	 * @return
 	 */
-	List<TreeNode> getBuildingList(@Param("houseParam") HouseParam houseParam,
-								   @Param("list") List<String> list);
+	List<TreeStringNode> getBuildingList(@Param("houseParam") HouseParam houseParam,
+                                         @Param("list") List<String> list);
 
 	/**
 	 *  查询户室及住户相关信息,单元中包含住户
@@ -116,8 +115,8 @@
 	 * @param list
 	 * @return
 	 */
-	List<TreeNode> getStreetRuList(@Param("houseParam") HouseParam houseParam,
-								   @Param("list") List<String> list);
+	List<TreeStringNode> getStreetRuList(@Param("houseParam") HouseParam houseParam,
+                                         @Param("list") List<String> list);
 
 	/**
 	 * 根据街路巷编号查询街路巷门牌名称集合
@@ -170,7 +169,7 @@
 	 * @param houseParam
 	 * @return
 	 */
-	List<TreeNode> getPlaceRelList(@Param("houseParam") HouseParam houseParam);
+	List<TreeStringNode> getPlaceRelList(@Param("houseParam") HouseParam houseParam);
 
 	/**
 	 * 查询商超详情集合
diff --git a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
index b010522..c54eeb4 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
+++ b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
@@ -40,7 +40,7 @@
 
 
     <!--查询区域数据-街道-->
-    <select id="getRegionListByGroupTwon" resultType="org.springblade.common.node.TreeNode" >
+    <select id="getRegionListByGroupTwon" resultType="org.springblade.common.node.TreeStringNode" >
         select town_street_code as id,town_street_name as name from jczz_doorplate_address
         where 1=1
         <if test="houseParam.userId!=null and houseParam.userId!='' and houseParam.userId=='1726859808689696770'">
@@ -51,7 +51,7 @@
     </select>
 
     <!--查询区域数据-社区-->
-    <select id="getRegionListByGroupNei" resultType="org.springblade.common.node.TreeNode" >
+    <select id="getRegionListByGroupNei" resultType="org.springblade.common.node.TreeStringNode" >
         select nei_code as id,nei_name as name,town_street_code as parentId from jczz_doorplate_address
         where 1=1
         <if test="houseParam.userId!=null and houseParam.userId!='' and houseParam.userId=='1726859808689696770'">
@@ -62,7 +62,7 @@
     </select>
 
     <!--根据社区名称查询小区集合-->
-    <select id="getDistrictList" resultType="org.springblade.common.node.TreeNode" >
+    <select id="getDistrictList" resultType="org.springblade.common.node.TreeStringNode" >
         select aoi_code as id,aoi_name as name,1 as addressType from jczz_doorplate_address
         where 1=1
         and aoi_name !=''
@@ -120,7 +120,7 @@
     </select>
 
     <!--根据小区名称查询楼栋/商铺集合-->
-    <select id="getBuildingList" resultType="org.springblade.common.node.TreeNode" >
+    <select id="getBuildingList" resultType="org.springblade.common.node.TreeStringNode" >
         (
             select building_code as id,ifnull(building_name,'1栋') as name,1 as addressType from jczz_doorplate_address
             where 1=1
@@ -217,7 +217,7 @@
     </select>
 
     <!--根据社区查询街路巷集合-->
-    <select id="getStreetRuList" resultType="org.springblade.common.node.TreeNode" >
+    <select id="getStreetRuList" resultType="org.springblade.common.node.TreeStringNode" >
         select street_ru_code as id,street_ru_name as name,3 as addressType from jczz_doorplate_address
         where 1=1
         and aoi_code is null
@@ -346,7 +346,7 @@
     </select>
 
     <!--查询商超-->
-    <select id="getPlaceRelList" resultType="org.springblade.common.node.TreeNode">
+    <select id="getPlaceRelList" resultType="org.springblade.common.node.TreeStringNode">
         select building_name as id,building_name as name,4 as addressType from jczz_place_rel jpl
         join jczz_place jp on jpl.place_id = jp.id and jp.is_deleted = 0
         where jpl.is_deleted = 0
diff --git a/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java b/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
index 97f77d7..2957ec3 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
+++ b/src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
@@ -20,11 +20,10 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.qiniu.util.Auth;
 import liquibase.repackaged.org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.util.Strings;
 import org.springblade.common.constant.DictConstant;
-import org.springblade.common.node.TreeNode;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.common.utils.NodeTreeUtil;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.modules.doorplateAddress.entity.DoorplateAddressEntity;
@@ -98,18 +97,18 @@
 				stringList = gridService.getAddressCodeListByUserId(AuthUtil.getUserId());
 			}
 		}
-		List<TreeNode> list = new ArrayList<>();
+		List<TreeStringNode> list = new ArrayList<>();
 		if (null!=type) {
 			// 如果是网格管理员,系统管理员
 			if (type==1){
 				// 查询街道
-				List<TreeNode> townList = baseMapper.getRegionListByGroupTwon(houseParam,stringList);
+				List<TreeStringNode> townList = baseMapper.getRegionListByGroupTwon(houseParam,stringList);
 				// 查询社区
-				List<TreeNode> neiList = baseMapper.getRegionListByGroupNei(houseParam,stringList);
+				List<TreeStringNode> neiList = baseMapper.getRegionListByGroupNei(houseParam,stringList);
 				// 遍历
-				for (TreeNode treeNode : townList) {
+				for (TreeStringNode treeNode : townList) {
 					// 遍历
-					for (TreeNode node : neiList) {
+					for (TreeStringNode node : neiList) {
 						if (treeNode.getId().equals(node.getParentId())){
 							node.setHasChildren(false);
 							treeNode.getChildren().add(node);
@@ -132,10 +131,10 @@
 	 * @param list
 	 * @return
 	 */
-	private Object getInhabitantInfo(List<TreeNode> list) {
+	private Object getInhabitantInfo(List<TreeStringNode> list) {
 		// 查询房屋集合信息
-		List<TreeNode> houseNodeList = householdService.selectHouseNodeList(AuthUtil.getUserId());
-		for (TreeNode treeNode : houseNodeList) {
+		List<TreeStringNode> houseNodeList = householdService.selectHouseNodeList(AuthUtil.getUserId());
+		for (TreeStringNode treeNode : houseNodeList) {
 			// 判断房屋类型类型
 			if (DictConstant.SMALL_DOORPLATE.equals(treeNode.getDoorplateType())  ||
 				(DictConstant.centre_DOORPLATE.equals(treeNode.getDoorplateType()) &&
@@ -146,8 +145,8 @@
 			}
 		}
 		// 查询场所集合信息
-		List<TreeNode> placeNodeList = placeService.selectPlaceNodeList(AuthUtil.getUserId());
-		for (TreeNode treeNode : placeNodeList) {
+		List<TreeStringNode> placeNodeList = placeService.selectPlaceNodeList(AuthUtil.getUserId());
+		for (TreeStringNode treeNode : placeNodeList) {
 			treeNode.setAddressType(2);
 //			if (DictConstant.SMALL_DOORPLATE.equals(treeNode.getDoorplateType()) ||
 //				(DictConstant.centre_DOORPLATE.equals(treeNode.getDoorplateType()) &&
@@ -159,13 +158,13 @@
 		}
 		if (houseNodeList.size() > 0 && placeNodeList.size() > 0) {
 			// 合并
-			TreeNode houseNode = new TreeNode();
+			TreeStringNode houseNode = new TreeStringNode();
 			houseNode.setName("房屋");
 			houseNode.setId("1");
 			houseNode.setHasChildren(true);
 			houseNode.setChildren(houseNodeList);
 
-			TreeNode placeNode = new TreeNode();
+			TreeStringNode placeNode = new TreeStringNode();
 			placeNode.setName("场所");
 			placeNode.setId("2");
 			placeNode.setHasChildren(true);
@@ -193,7 +192,7 @@
 	 */
 	@Override
 	public Object getHousesList(HouseParam houseParam) {
-		List<TreeNode> list = new ArrayList<>();
+		List<TreeStringNode> list = new ArrayList<>();
 		Map<String, Object> map = new HashMap<>(2);
 		// 获取网格员对应的地址编号集合
 		List<String> stringList = getHouseCodeList(houseParam);
@@ -298,7 +297,7 @@
 			// 获取网格员对应的网格信息
 			getGridInfoByGridman(houseParam);
 			// 查询商超
-			List<TreeNode> list = baseMapper.getPlaceRelList(houseParam);
+			List<TreeStringNode> list = baseMapper.getPlaceRelList(houseParam);
 			map.put("aoiList", new ArrayList<>());
 			map.put("shopList", list);
 			// 返回
@@ -307,15 +306,15 @@
 			List<String> stringList = getHouseCodeList(houseParam);
 			// 判断 code 长度,如果 code 长度大于 12 则为小区查楼栋/商铺,否则则按社区查街路巷
 			if (houseParam.getCode().length() > 12) {
-				List<TreeNode> aoiList = new ArrayList<>();
-				List<TreeNode> shopList = new ArrayList<>();
+				List<TreeStringNode> aoiList = new ArrayList<>();
+				List<TreeStringNode> shopList = new ArrayList<>();
 				// 根据社区名称查询楼栋或者商铺的集合
 
-				List<TreeNode> list = baseMapper.getBuildingList(houseParam, stringList);
+				List<TreeStringNode> list = baseMapper.getBuildingList(houseParam, stringList);
 				// 排序  StringUtils.getDigits(X.getName()) 取出数字排序
-				List<TreeNode> sortList = list.stream().sorted(Comparator.comparing(X -> StringUtils.getDigits(X.getName()))).collect(Collectors.toList());
+				List<TreeStringNode> sortList = list.stream().sorted(Comparator.comparing(X -> StringUtils.getDigits(X.getName()))).collect(Collectors.toList());
 				if (list.size() > 0) {
-					for (TreeNode treeNode : sortList) {
+					for (TreeStringNode treeNode : sortList) {
 						if (treeNode.getAddressType() == 1) {
 							aoiList.add(treeNode);
 						}
@@ -330,7 +329,7 @@
 				return map;
 			} else {
 				// 查询街路巷
-				List<TreeNode> list = baseMapper.getStreetRuList(houseParam, stringList);
+				List<TreeStringNode> list = baseMapper.getStreetRuList(houseParam, stringList);
 				map.put("aoiList", new ArrayList<>());
 				map.put("shopList", list);
 				// 返回
diff --git a/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.java b/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.java
index f929bb2..c53dea1 100644
--- a/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.java
+++ b/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.java
@@ -17,7 +17,7 @@
 package org.springblade.modules.house.mapper;
 
 import org.apache.ibatis.annotations.Param;
-import org.springblade.common.node.TreeNode;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.modules.house.entity.HouseholdEntity;
 import org.springblade.modules.house.vo.HouseholdVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -49,7 +49,7 @@
 	 * @param userId
 	 * @return
 	 */
-    List<TreeNode> selectHouseNodeList(@Param("userId") Long userId);
+    List<TreeStringNode> selectHouseNodeList(@Param("userId") Long userId);
 
 	/**
 	 * 查询房屋人员情况
diff --git a/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml b/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml
index 9bbca9d..5643286 100644
--- a/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml
+++ b/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml
@@ -117,7 +117,7 @@
     </select>
 
     <!--查询房屋集合信息-->
-    <select id="selectHouseNodeList" resultType="org.springblade.common.node.TreeNode" >
+    <select id="selectHouseNodeList" resultType="org.springblade.common.node.TreeStringNode" >
         select jh.house_code    as id,
                jh.house_code    as houseCode,
                jda.address_name as name,
diff --git a/src/main/java/org/springblade/modules/house/service/IHouseholdService.java b/src/main/java/org/springblade/modules/house/service/IHouseholdService.java
index 4ece666..b9be750 100644
--- a/src/main/java/org/springblade/modules/house/service/IHouseholdService.java
+++ b/src/main/java/org/springblade/modules/house/service/IHouseholdService.java
@@ -17,7 +17,7 @@
 package org.springblade.modules.house.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
-import org.springblade.common.node.TreeNode;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.modules.house.entity.HouseholdEntity;
 import org.springblade.modules.house.vo.HouseholdVO;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -47,7 +47,7 @@
 	 * @param userId
 	 * @return
 	 */
-    List<TreeNode> selectHouseNodeList(Long userId);
+    List<TreeStringNode> selectHouseNodeList(Long userId);
 
 	/**
 	 * 查询房屋人员情况
diff --git a/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java b/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java
index b1222cc..701ca8d 100644
--- a/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java
+++ b/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java
@@ -17,7 +17,7 @@
 package org.springblade.modules.house.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springblade.common.node.TreeNode;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.modules.house.entity.HouseholdEntity;
@@ -59,7 +59,7 @@
 	 * @return
 	 */
 	@Override
-	public List<TreeNode> selectHouseNodeList(Long userId) {
+	public List<TreeStringNode> selectHouseNodeList(Long userId) {
 		return baseMapper.selectHouseNodeList(userId);
 	}
 
diff --git a/src/main/java/org/springblade/modules/label/mapper/LabelMapper.java b/src/main/java/org/springblade/modules/label/mapper/LabelMapper.java
index 5a27ad7..dfd46f0 100644
--- a/src/main/java/org/springblade/modules/label/mapper/LabelMapper.java
+++ b/src/main/java/org/springblade/modules/label/mapper/LabelMapper.java
@@ -19,7 +19,6 @@
 import org.apache.ibatis.annotations.MapKey;
 import org.apache.ibatis.annotations.Param;
 import org.springblade.common.node.TreeIntegerNode;
-import org.springblade.common.node.TreeNode;
 import org.springblade.modules.label.entity.LabelEntity;
 import org.springblade.modules.label.vo.LabelVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
diff --git a/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.java b/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.java
index fa1eef2..ef733f1 100644
--- a/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.java
+++ b/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.java
@@ -17,7 +17,7 @@
 package org.springblade.modules.place.mapper;
 
 import org.apache.ibatis.annotations.Param;
-import org.springblade.common.node.TreeNode;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.modules.place.entity.PlaceEntity;
 import org.springblade.modules.place.excel.PlaceAndRelExcel;
 import org.springblade.modules.place.vo.PlaceVO;
@@ -50,7 +50,7 @@
 	 * @param userId
 	 * @return
 	 */
-    List<TreeNode> selectPlaceNodeList(@Param("userId") String userId);
+    List<TreeStringNode> selectPlaceNodeList(@Param("userId") String userId);
 
 	/**
 	 * 插入用户标签
diff --git a/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml b/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
index 68ecfb1..3479e55 100644
--- a/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
+++ b/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
@@ -69,7 +69,7 @@
     </select>
 
     <!--查询场所集合信息-->
-    <select id="selectPlaceNodeList" resultType="org.springblade.common.node.TreeNode" >
+    <select id="selectPlaceNodeList" resultType="org.springblade.common.node.TreeStringNode" >
         select jp.id,
                jp.house_code      houseCode,
                jp.place_name as   name,
diff --git a/src/main/java/org/springblade/modules/place/service/IPlaceService.java b/src/main/java/org/springblade/modules/place/service/IPlaceService.java
index e58114d..3557c96 100644
--- a/src/main/java/org/springblade/modules/place/service/IPlaceService.java
+++ b/src/main/java/org/springblade/modules/place/service/IPlaceService.java
@@ -17,12 +17,11 @@
 package org.springblade.modules.place.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
-import org.springblade.common.node.TreeNode;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.modules.place.entity.PlaceEntity;
 import org.springblade.modules.place.excel.PlaceAndRelExcel;
 import org.springblade.modules.place.excel.PlaceExcel;
 import org.springblade.modules.place.vo.PlaceVO;
-import org.springblade.core.mp.base.BaseService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 
 import java.util.List;
@@ -49,7 +48,7 @@
 	 * @param userId
 	 * @return
 	 */
-    List<TreeNode> selectPlaceNodeList(Long userId);
+    List<TreeStringNode> selectPlaceNodeList(Long userId);
 
 	/**
 	 * 场所信息自定义新增
diff --git a/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java b/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
index d340b03..ab844dc 100644
--- a/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
+++ b/src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
@@ -18,9 +18,8 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import lombok.AllArgsConstructor;
 import org.apache.logging.log4j.util.Strings;
-import org.springblade.common.node.TreeNode;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.modules.doorplateAddress.entity.DoorplateAddressEntity;
@@ -101,7 +100,7 @@
 	 * @return
 	 */
 	@Override
-	public List<TreeNode> selectPlaceNodeList(Long userId) {
+	public List<TreeStringNode> selectPlaceNodeList(Long userId) {
 		return baseMapper.selectPlaceNodeList(userId.toString());
 	}
 
diff --git a/src/main/java/org/springblade/modules/property/controller/PropertyCapitalApplyController.java b/src/main/java/org/springblade/modules/property/controller/PropertyCapitalApplyController.java
new file mode 100644
index 0000000..a2f6bd4
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/controller/PropertyCapitalApplyController.java
@@ -0,0 +1,126 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.property.entity.PropertyCapitalApplyEntity;
+import org.springblade.modules.property.vo.PropertyCapitalApplyVO;
+import org.springblade.modules.property.wrapper.PropertyCapitalApplyWrapper;
+import org.springblade.modules.property.service.IPropertyCapitalApplyService;
+import org.springblade.core.boot.ctrl.BladeController;
+
+/**
+ * 物业维修资金申请表 控制器
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("blade-propertyCapitalApply/propertyCapitalApply")
+@Api(value = "物业维修资金申请表", tags = "物业维修资金申请表接口")
+public class PropertyCapitalApplyController extends BladeController {
+
+	private final IPropertyCapitalApplyService propertyCapitalApplyService;
+
+	/**
+	 * 物业维修资金申请表 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "详情", notes = "传入propertyCapitalApply")
+	public R<PropertyCapitalApplyVO> detail(PropertyCapitalApplyEntity propertyCapitalApply) {
+		PropertyCapitalApplyEntity detail = propertyCapitalApplyService.getOne(Condition.getQueryWrapper(propertyCapitalApply));
+		return R.data(PropertyCapitalApplyWrapper.build().entityVO(detail));
+	}
+	/**
+	 * 物业维修资金申请表 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "分页", notes = "传入propertyCapitalApply")
+	public R<IPage<PropertyCapitalApplyVO>> list(PropertyCapitalApplyEntity propertyCapitalApply, Query query) {
+		IPage<PropertyCapitalApplyEntity> pages = propertyCapitalApplyService.page(Condition.getPage(query), Condition.getQueryWrapper(propertyCapitalApply));
+		return R.data(PropertyCapitalApplyWrapper.build().pageVO(pages));
+	}
+
+	/**
+	 * 物业维修资金申请表 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入propertyCapitalApply")
+	public R<IPage<PropertyCapitalApplyVO>> page(PropertyCapitalApplyVO propertyCapitalApply, Query query) {
+		IPage<PropertyCapitalApplyVO> pages = propertyCapitalApplyService.selectPropertyCapitalApplyPage(Condition.getPage(query), propertyCapitalApply);
+		return R.data(pages);
+	}
+
+	/**
+	 * 物业维修资金申请表 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "新增", notes = "传入propertyCapitalApply")
+	public R save(@Valid @RequestBody PropertyCapitalApplyEntity propertyCapitalApply) {
+		return R.status(propertyCapitalApplyService.save(propertyCapitalApply));
+	}
+
+	/**
+	 * 物业维修资金申请表 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@ApiOperation(value = "修改", notes = "传入propertyCapitalApply")
+	public R update(@Valid @RequestBody PropertyCapitalApplyEntity propertyCapitalApply) {
+		return R.status(propertyCapitalApplyService.updateById(propertyCapitalApply));
+	}
+
+	/**
+	 * 物业维修资金申请表 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@ApiOperation(value = "新增或修改", notes = "传入propertyCapitalApply")
+	public R submit(@Valid @RequestBody PropertyCapitalApplyEntity propertyCapitalApply) {
+		return R.status(propertyCapitalApplyService.saveOrUpdate(propertyCapitalApply));
+	}
+
+	/**
+	 * 物业维修资金申请表 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@ApiOperation(value = "逻辑删除", notes = "传入ids")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(propertyCapitalApplyService.deleteLogic(Func.toLongList(ids)));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/controller/PropertyCompanyController.java b/src/main/java/org/springblade/modules/property/controller/PropertyCompanyController.java
new file mode 100644
index 0000000..e9a28d6
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/controller/PropertyCompanyController.java
@@ -0,0 +1,126 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.property.entity.PropertyCompanyEntity;
+import org.springblade.modules.property.vo.PropertyCompanyVO;
+import org.springblade.modules.property.wrapper.PropertyCompanyWrapper;
+import org.springblade.modules.property.service.IPropertyCompanyService;
+import org.springblade.core.boot.ctrl.BladeController;
+
+/**
+ * 物业公司 控制器
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("blade-propertyCompany/propertyCompany")
+@Api(value = "物业公司", tags = "物业公司接口")
+public class PropertyCompanyController extends BladeController {
+
+	private final IPropertyCompanyService propertyCompanyService;
+
+	/**
+	 * 物业公司 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "详情", notes = "传入propertyCompany")
+	public R<PropertyCompanyVO> detail(PropertyCompanyEntity propertyCompany) {
+		PropertyCompanyEntity detail = propertyCompanyService.getOne(Condition.getQueryWrapper(propertyCompany));
+		return R.data(PropertyCompanyWrapper.build().entityVO(detail));
+	}
+	/**
+	 * 物业公司 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "分页", notes = "传入propertyCompany")
+	public R<IPage<PropertyCompanyVO>> list(PropertyCompanyEntity propertyCompany, Query query) {
+		IPage<PropertyCompanyEntity> pages = propertyCompanyService.page(Condition.getPage(query), Condition.getQueryWrapper(propertyCompany));
+		return R.data(PropertyCompanyWrapper.build().pageVO(pages));
+	}
+
+	/**
+	 * 物业公司 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入propertyCompany")
+	public R<IPage<PropertyCompanyVO>> page(PropertyCompanyVO propertyCompany, Query query) {
+		IPage<PropertyCompanyVO> pages = propertyCompanyService.selectPropertyCompanyPage(Condition.getPage(query), propertyCompany);
+		return R.data(pages);
+	}
+
+	/**
+	 * 物业公司 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "新增", notes = "传入propertyCompany")
+	public R save(@Valid @RequestBody PropertyCompanyEntity propertyCompany) {
+		return R.status(propertyCompanyService.save(propertyCompany));
+	}
+
+	/**
+	 * 物业公司 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@ApiOperation(value = "修改", notes = "传入propertyCompany")
+	public R update(@Valid @RequestBody PropertyCompanyEntity propertyCompany) {
+		return R.status(propertyCompanyService.updateById(propertyCompany));
+	}
+
+	/**
+	 * 物业公司 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@ApiOperation(value = "新增或修改", notes = "传入propertyCompany")
+	public R submit(@Valid @RequestBody PropertyCompanyEntity propertyCompany) {
+		return R.status(propertyCompanyService.saveOrUpdate(propertyCompany));
+	}
+
+	/**
+	 * 物业公司 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@ApiOperation(value = "逻辑删除", notes = "传入ids")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(propertyCompanyService.deleteLogic(Func.toLongList(ids)));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/controller/PropertyCompanyDistrictController.java b/src/main/java/org/springblade/modules/property/controller/PropertyCompanyDistrictController.java
new file mode 100644
index 0000000..8b785b8
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/controller/PropertyCompanyDistrictController.java
@@ -0,0 +1,126 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.property.entity.PropertyCompanyDistrictEntity;
+import org.springblade.modules.property.vo.PropertyCompanyDistrictVO;
+import org.springblade.modules.property.wrapper.PropertyCompanyDistrictWrapper;
+import org.springblade.modules.property.service.IPropertyCompanyDistrictService;
+import org.springblade.core.boot.ctrl.BladeController;
+
+/**
+ * 物业派驻小区表 控制器
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("blade-propertyCompanyDistrict/propertyCompanyDistrict")
+@Api(value = "物业派驻小区表", tags = "物业派驻小区表接口")
+public class PropertyCompanyDistrictController extends BladeController {
+
+	private final IPropertyCompanyDistrictService propertyCompanyDistrictService;
+
+	/**
+	 * 物业派驻小区表 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "详情", notes = "传入propertyCompanyDistrict")
+	public R<PropertyCompanyDistrictVO> detail(PropertyCompanyDistrictEntity propertyCompanyDistrict) {
+		PropertyCompanyDistrictEntity detail = propertyCompanyDistrictService.getOne(Condition.getQueryWrapper(propertyCompanyDistrict));
+		return R.data(PropertyCompanyDistrictWrapper.build().entityVO(detail));
+	}
+	/**
+	 * 物业派驻小区表 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "分页", notes = "传入propertyCompanyDistrict")
+	public R<IPage<PropertyCompanyDistrictVO>> list(PropertyCompanyDistrictEntity propertyCompanyDistrict, Query query) {
+		IPage<PropertyCompanyDistrictEntity> pages = propertyCompanyDistrictService.page(Condition.getPage(query), Condition.getQueryWrapper(propertyCompanyDistrict));
+		return R.data(PropertyCompanyDistrictWrapper.build().pageVO(pages));
+	}
+
+	/**
+	 * 物业派驻小区表 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入propertyCompanyDistrict")
+	public R<IPage<PropertyCompanyDistrictVO>> page(PropertyCompanyDistrictVO propertyCompanyDistrict, Query query) {
+		IPage<PropertyCompanyDistrictVO> pages = propertyCompanyDistrictService.selectPropertyCompanyDistrictPage(Condition.getPage(query), propertyCompanyDistrict);
+		return R.data(pages);
+	}
+
+	/**
+	 * 物业派驻小区表 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "新增", notes = "传入propertyCompanyDistrict")
+	public R save(@Valid @RequestBody PropertyCompanyDistrictEntity propertyCompanyDistrict) {
+		return R.status(propertyCompanyDistrictService.save(propertyCompanyDistrict));
+	}
+
+	/**
+	 * 物业派驻小区表 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@ApiOperation(value = "修改", notes = "传入propertyCompanyDistrict")
+	public R update(@Valid @RequestBody PropertyCompanyDistrictEntity propertyCompanyDistrict) {
+		return R.status(propertyCompanyDistrictService.updateById(propertyCompanyDistrict));
+	}
+
+	/**
+	 * 物业派驻小区表 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@ApiOperation(value = "新增或修改", notes = "传入propertyCompanyDistrict")
+	public R submit(@Valid @RequestBody PropertyCompanyDistrictEntity propertyCompanyDistrict) {
+		return R.status(propertyCompanyDistrictService.saveOrUpdate(propertyCompanyDistrict));
+	}
+
+	/**
+	 * 物业派驻小区表 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@ApiOperation(value = "逻辑删除", notes = "传入ids")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(propertyCompanyDistrictService.deleteLogic(Func.toLongList(ids)));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/controller/PropertyDistrictUserController.java b/src/main/java/org/springblade/modules/property/controller/PropertyDistrictUserController.java
new file mode 100644
index 0000000..e9e3d4b
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/controller/PropertyDistrictUserController.java
@@ -0,0 +1,126 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.property.entity.PropertyDistrictUserEntity;
+import org.springblade.modules.property.vo.PropertyDistrictUserVO;
+import org.springblade.modules.property.wrapper.PropertyDistrictUserWrapper;
+import org.springblade.modules.property.service.IPropertyDistrictUserService;
+import org.springblade.core.boot.ctrl.BladeController;
+
+/**
+ * 物业公司人员派驻小区关联表 控制器
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("blade-propertyDistrictUser/propertyDistrictUser")
+@Api(value = "物业公司人员派驻小区关联表", tags = "物业公司人员派驻小区关联表接口")
+public class PropertyDistrictUserController extends BladeController {
+
+	private final IPropertyDistrictUserService propertyDistrictUserService;
+
+	/**
+	 * 物业公司人员派驻小区关联表 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "详情", notes = "传入propertyDistrictUser")
+	public R<PropertyDistrictUserVO> detail(PropertyDistrictUserEntity propertyDistrictUser) {
+		PropertyDistrictUserEntity detail = propertyDistrictUserService.getOne(Condition.getQueryWrapper(propertyDistrictUser));
+		return R.data(PropertyDistrictUserWrapper.build().entityVO(detail));
+	}
+	/**
+	 * 物业公司人员派驻小区关联表 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "分页", notes = "传入propertyDistrictUser")
+	public R<IPage<PropertyDistrictUserVO>> list(PropertyDistrictUserEntity propertyDistrictUser, Query query) {
+		IPage<PropertyDistrictUserEntity> pages = propertyDistrictUserService.page(Condition.getPage(query), Condition.getQueryWrapper(propertyDistrictUser));
+		return R.data(PropertyDistrictUserWrapper.build().pageVO(pages));
+	}
+
+	/**
+	 * 物业公司人员派驻小区关联表 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入propertyDistrictUser")
+	public R<IPage<PropertyDistrictUserVO>> page(PropertyDistrictUserVO propertyDistrictUser, Query query) {
+		IPage<PropertyDistrictUserVO> pages = propertyDistrictUserService.selectPropertyDistrictUserPage(Condition.getPage(query), propertyDistrictUser);
+		return R.data(pages);
+	}
+
+	/**
+	 * 物业公司人员派驻小区关联表 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "新增", notes = "传入propertyDistrictUser")
+	public R save(@Valid @RequestBody PropertyDistrictUserEntity propertyDistrictUser) {
+		return R.status(propertyDistrictUserService.save(propertyDistrictUser));
+	}
+
+	/**
+	 * 物业公司人员派驻小区关联表 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@ApiOperation(value = "修改", notes = "传入propertyDistrictUser")
+	public R update(@Valid @RequestBody PropertyDistrictUserEntity propertyDistrictUser) {
+		return R.status(propertyDistrictUserService.updateById(propertyDistrictUser));
+	}
+
+	/**
+	 * 物业公司人员派驻小区关联表 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@ApiOperation(value = "新增或修改", notes = "传入propertyDistrictUser")
+	public R submit(@Valid @RequestBody PropertyDistrictUserEntity propertyDistrictUser) {
+		return R.status(propertyDistrictUserService.saveOrUpdate(propertyDistrictUser));
+	}
+
+	/**
+	 * 物业公司人员派驻小区关联表 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@ApiOperation(value = "逻辑删除", notes = "传入ids")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(propertyDistrictUserService.deleteLogic(Func.toLongList(ids)));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/dto/PropertyCapitalApplyDTO.java b/src/main/java/org/springblade/modules/property/dto/PropertyCapitalApplyDTO.java
new file mode 100644
index 0000000..bd544ab
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/dto/PropertyCapitalApplyDTO.java
@@ -0,0 +1,34 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.dto;
+
+import org.springblade.modules.property.entity.PropertyCapitalApplyEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 物业维修资金申请表 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class PropertyCapitalApplyDTO extends PropertyCapitalApplyEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/dto/PropertyCompanyDTO.java b/src/main/java/org/springblade/modules/property/dto/PropertyCompanyDTO.java
new file mode 100644
index 0000000..db0e826
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/dto/PropertyCompanyDTO.java
@@ -0,0 +1,34 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.dto;
+
+import org.springblade.modules.property.entity.PropertyCompanyEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 物业公司 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class PropertyCompanyDTO extends PropertyCompanyEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/dto/PropertyCompanyDistrictDTO.java b/src/main/java/org/springblade/modules/property/dto/PropertyCompanyDistrictDTO.java
new file mode 100644
index 0000000..fb5415e
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/dto/PropertyCompanyDistrictDTO.java
@@ -0,0 +1,34 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.dto;
+
+import org.springblade.modules.property.entity.PropertyCompanyDistrictEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 物业派驻小区表 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class PropertyCompanyDistrictDTO extends PropertyCompanyDistrictEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/dto/PropertyDistrictUserDTO.java b/src/main/java/org/springblade/modules/property/dto/PropertyDistrictUserDTO.java
new file mode 100644
index 0000000..0c89fc8
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/dto/PropertyDistrictUserDTO.java
@@ -0,0 +1,34 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.dto;
+
+import org.springblade.modules.property.entity.PropertyDistrictUserEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 物业公司人员派驻小区关联表 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class PropertyDistrictUserDTO extends PropertyDistrictUserEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/entity/PropertyCapitalApplyEntity.java b/src/main/java/org/springblade/modules/property/entity/PropertyCapitalApplyEntity.java
new file mode 100644
index 0000000..d1cd38c
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/entity/PropertyCapitalApplyEntity.java
@@ -0,0 +1,117 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.math.BigDecimal;
+import java.util.Date;
+
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+/**
+ * 物业维修资金申请表 实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@TableName("jczz_property_capital_apply")
+@ApiModel(value = "PropertyCapitalApply对象", description = "物业维修资金申请表")
+@EqualsAndHashCode(callSuper = true)
+public class PropertyCapitalApplyEntity extends TenantEntity {
+
+	/**
+	 * 物业公司id
+	 */
+	@ApiModelProperty(value = "物业公司id")
+	private Integer propertyCompanyId;
+	/**
+	 * 小区id
+	 */
+	@ApiModelProperty(value = "小区id")
+	private String districtId;
+	/**
+	 * 资金申请项目名称
+	 */
+	@ApiModelProperty(value = "资金申请项目名称")
+	private String name;
+	/**
+	 * 联系人姓名
+	 */
+	@ApiModelProperty(value = "联系人姓名")
+	private String linkman;
+	/**
+	 * 联系人电话
+	 */
+	@ApiModelProperty(value = "联系人电话")
+	private String linkPhone;
+	/**
+	 * 分摊方式
+	 */
+	@ApiModelProperty(value = "分摊方式")
+	private Integer allocationWay;
+	/**
+	 * 预算总金额
+	 */
+	@ApiModelProperty(value = "预算总金额")
+	private BigDecimal budgetAmount;
+	/**
+	 * 实际总金额
+	 */
+	@ApiModelProperty(value = "实际总金额")
+	private BigDecimal actualAmount;
+	/**
+	 * 自筹金额
+	 */
+	@ApiModelProperty(value = "自筹金额")
+	private BigDecimal selfAmount;
+	/**
+	 * 预算应拨付金额
+	 */
+	@ApiModelProperty(value = "预算应拨付金额")
+	private BigDecimal budgetAppropriateAmount;
+	/**
+	 * 预计开工时间
+	 */
+	@ApiModelProperty(value = "预计开工时间")
+	private Date runTime;
+	/**
+	 * 预计竣工时间
+	 */
+	@ApiModelProperty(value = "预计竣工时间")
+	private Date completedTime;
+	/**
+	 * 项目摘要
+	 */
+	@ApiModelProperty(value = "项目摘要")
+	private String projectDigest;
+	/**
+	 * 项目描述
+	 */
+	@ApiModelProperty(value = "项目描述")
+	private String projectDescribe;
+	/**
+	 * 施工方案附件urls
+	 */
+	@ApiModelProperty(value = "施工方案附件urls")
+	private String constructionSchemeUrls;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/entity/PropertyCompanyDistrictEntity.java b/src/main/java/org/springblade/modules/property/entity/PropertyCompanyDistrictEntity.java
new file mode 100644
index 0000000..db05842
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/entity/PropertyCompanyDistrictEntity.java
@@ -0,0 +1,95 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.util.Date;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+/**
+ * 物业派驻小区表 实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@TableName("jczz_property_company_district")
+@ApiModel(value = "PropertyCompanyDistrict对象", description = "物业派驻小区表")
+@EqualsAndHashCode(callSuper = true)
+public class PropertyCompanyDistrictEntity extends TenantEntity {
+
+	/**
+	 * 物业公司id
+	 */
+	@ApiModelProperty(value = "物业公司id")
+	private Integer propertyCompanyId;
+	/**
+	 * 小区id
+	 */
+	@ApiModelProperty(value = "小区id")
+	private String districtId;
+	/**
+	 * 负责人姓名
+	 */
+	@ApiModelProperty(value = "负责人姓名")
+	private String principal;
+	/**
+	 * 负责人电话
+	 */
+	@ApiModelProperty(value = "负责人电话")
+	private String principalPhone;
+	/**
+	 * 服务人数
+	 */
+	@ApiModelProperty(value = "服务人数")
+	private Integer serverNum;
+	/**
+	 * 管家数量
+	 */
+	@ApiModelProperty(value = "管家数量")
+	private Integer butlerNum;
+	/**
+	 * 满意度
+	 */
+	@ApiModelProperty(value = "满意度")
+	private Integer satisfaction;
+	/**
+	 * 物业阶段
+	 */
+	@ApiModelProperty(value = "物业阶段")
+	private Integer propertyStage;
+	/**
+	 * 合同开始时间
+	 */
+	@ApiModelProperty(value = "合同开始时间")
+	private Date startTime;
+	/**
+	 * 合同结束时间
+	 */
+	@ApiModelProperty(value = "合同结束时间")
+	private Date endTime;
+	/**
+	 * 简介
+	 */
+	@ApiModelProperty(value = "简介")
+	private String remark;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/entity/PropertyCompanyEntity.java b/src/main/java/org/springblade/modules/property/entity/PropertyCompanyEntity.java
new file mode 100644
index 0000000..369ddca
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/entity/PropertyCompanyEntity.java
@@ -0,0 +1,75 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.util.Date;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+/**
+ * 物业公司 实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@TableName("jczz_property_company")
+@ApiModel(value = "PropertyCompany对象", description = "物业公司")
+@EqualsAndHashCode(callSuper = true)
+public class PropertyCompanyEntity extends TenantEntity {
+
+	/**
+	 * 物业公司名称
+	 */
+	@ApiModelProperty(value = "物业公司名称")
+	private String name;
+	/**
+	 * 地址
+	 */
+	@ApiModelProperty(value = "地址")
+	private String address;
+	/**
+	 * 社会信用代码
+	 */
+	@ApiModelProperty(value = "社会信用代码")
+	private String socialCreditCode;
+	/**
+	 * 省编号
+	 */
+	@ApiModelProperty(value = "省编号")
+	private String provinceCode;
+	/**
+	 * 市编号
+	 */
+	@ApiModelProperty(value = "市编号")
+	private String cityCode;
+	/**
+	 * 区县编号
+	 */
+	@ApiModelProperty(value = "区县编号")
+	private String countyCode;
+	/**
+	 * 简介
+	 */
+	@ApiModelProperty(value = "简介")
+	private String remark;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/entity/PropertyDistrictUserEntity.java b/src/main/java/org/springblade/modules/property/entity/PropertyDistrictUserEntity.java
new file mode 100644
index 0000000..01752ac
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/entity/PropertyDistrictUserEntity.java
@@ -0,0 +1,54 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+/**
+ * 物业公司人员派驻小区关联表 实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@TableName("jczz_property_district_user")
+@ApiModel(value = "PropertyDistrictUser对象", description = "物业公司人员派驻小区关联表")
+@EqualsAndHashCode(callSuper = true)
+public class PropertyDistrictUserEntity extends TenantEntity {
+
+	/**
+	 * 物业公司id
+	 */
+	@ApiModelProperty(value = "物业公司id")
+	private Integer propertyCompanyId;
+	/**
+	 * 小区id
+	 */
+	@ApiModelProperty(value = "小区id")
+	private String districtId;
+	/**
+	 * 用户id
+	 */
+	@ApiModelProperty(value = "用户id")
+	private Long userId;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/mapper/PropertyCapitalApplyMapper.java b/src/main/java/org/springblade/modules/property/mapper/PropertyCapitalApplyMapper.java
new file mode 100644
index 0000000..b5758b4
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/mapper/PropertyCapitalApplyMapper.java
@@ -0,0 +1,43 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.mapper;
+
+import org.springblade.modules.property.entity.PropertyCapitalApplyEntity;
+import org.springblade.modules.property.vo.PropertyCapitalApplyVO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.List;
+
+/**
+ * 物业维修资金申请表 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public interface PropertyCapitalApplyMapper extends BaseMapper<PropertyCapitalApplyEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param propertyCapitalApply
+	 * @return
+	 */
+	List<PropertyCapitalApplyVO> selectPropertyCapitalApplyPage(IPage page, PropertyCapitalApplyVO propertyCapitalApply);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/mapper/PropertyCapitalApplyMapper.xml b/src/main/java/org/springblade/modules/property/mapper/PropertyCapitalApplyMapper.xml
new file mode 100644
index 0000000..fc6d2e0
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/mapper/PropertyCapitalApplyMapper.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.property.mapper.PropertyCapitalApplyMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="propertyCapitalApplyResultMap" type="org.springblade.modules.property.entity.PropertyCapitalApplyEntity">
+        <result column="id" property="id"/>
+        <result column="property_company_id" property="propertyCompanyId"/>
+        <result column="district_id" property="districtId"/>
+        <result column="name" property="name"/>
+        <result column="linkman" property="linkman"/>
+        <result column="link_phone" property="linkPhone"/>
+        <result column="allocation_way" property="allocationWay"/>
+        <result column="budget_amount" property="budgetAmount"/>
+        <result column="actual_amount" property="actualAmount"/>
+        <result column="self_amount" property="selfAmount"/>
+        <result column="budget_appropriate_amount" property="budgetAppropriateAmount"/>
+        <result column="run_time" property="runTime"/>
+        <result column="completed_time" property="completedTime"/>
+        <result column="project_digest" property="projectDigest"/>
+        <result column="project_describe" property="projectDescribe"/>
+        <result column="construction_scheme_urls" property="constructionSchemeUrls"/>
+        <result column="create_user" property="createUser"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="is_deleted" property="isDeleted"/>
+    </resultMap>
+
+
+    <select id="selectPropertyCapitalApplyPage" resultMap="propertyCapitalApplyResultMap">
+        select * from jczz_property_capital_apply where is_deleted = 0
+    </select>
+
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyDistrictMapper.java b/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyDistrictMapper.java
new file mode 100644
index 0000000..a315ee5
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyDistrictMapper.java
@@ -0,0 +1,43 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.mapper;
+
+import org.springblade.modules.property.entity.PropertyCompanyDistrictEntity;
+import org.springblade.modules.property.vo.PropertyCompanyDistrictVO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.List;
+
+/**
+ * 物业派驻小区表 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public interface PropertyCompanyDistrictMapper extends BaseMapper<PropertyCompanyDistrictEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param propertyCompanyDistrict
+	 * @return
+	 */
+	List<PropertyCompanyDistrictVO> selectPropertyCompanyDistrictPage(IPage page, PropertyCompanyDistrictVO propertyCompanyDistrict);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyDistrictMapper.xml b/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyDistrictMapper.xml
new file mode 100644
index 0000000..64f27bc
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyDistrictMapper.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.property.mapper.PropertyCompanyDistrictMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="propertyCompanyDistrictResultMap" type="org.springblade.modules.property.entity.PropertyCompanyDistrictEntity">
+        <result column="id" property="id"/>
+        <result column="property_company_id" property="propertyCompanyId"/>
+        <result column="district_id" property="districtId"/>
+        <result column="principal" property="principal"/>
+        <result column="principal_phone" property="principalPhone"/>
+        <result column="server_num" property="serverNum"/>
+        <result column="butler_num" property="butlerNum"/>
+        <result column="satisfaction" property="satisfaction"/>
+        <result column="property_stage" property="propertyStage"/>
+        <result column="start_time" property="startTime"/>
+        <result column="end_time" property="endTime"/>
+        <result column="remark" property="remark"/>
+        <result column="create_user" property="createUser"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="is_deleted" property="isDeleted"/>
+    </resultMap>
+
+
+    <select id="selectPropertyCompanyDistrictPage" resultMap="propertyCompanyDistrictResultMap">
+        select * from jczz_property_company_district where is_deleted = 0
+    </select>
+
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyMapper.java b/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyMapper.java
new file mode 100644
index 0000000..bfab8a3
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyMapper.java
@@ -0,0 +1,43 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.mapper;
+
+import org.springblade.modules.property.entity.PropertyCompanyEntity;
+import org.springblade.modules.property.vo.PropertyCompanyVO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.List;
+
+/**
+ * 物业公司 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public interface PropertyCompanyMapper extends BaseMapper<PropertyCompanyEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param propertyCompany
+	 * @return
+	 */
+	List<PropertyCompanyVO> selectPropertyCompanyPage(IPage page, PropertyCompanyVO propertyCompany);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyMapper.xml b/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyMapper.xml
new file mode 100644
index 0000000..756ead4
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/mapper/PropertyCompanyMapper.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.property.mapper.PropertyCompanyMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="propertyCompanyResultMap" type="org.springblade.modules.property.entity.PropertyCompanyEntity">
+        <result column="id" property="id"/>
+        <result column="name" property="name"/>
+        <result column="address" property="address"/>
+        <result column="social_credit_code" property="socialCreditCode"/>
+        <result column="province_code" property="provinceCode"/>
+        <result column="city_code" property="cityCode"/>
+        <result column="county_code" property="countyCode"/>
+        <result column="remark" property="remark"/>
+        <result column="create_user" property="createUser"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="is_deleted" property="isDeleted"/>
+    </resultMap>
+
+
+    <select id="selectPropertyCompanyPage" resultMap="propertyCompanyResultMap">
+        select * from jczz_property_company where is_deleted = 0
+    </select>
+
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/property/mapper/PropertyDistrictUserMapper.java b/src/main/java/org/springblade/modules/property/mapper/PropertyDistrictUserMapper.java
new file mode 100644
index 0000000..6aaeff5
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/mapper/PropertyDistrictUserMapper.java
@@ -0,0 +1,43 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.mapper;
+
+import org.springblade.modules.property.entity.PropertyDistrictUserEntity;
+import org.springblade.modules.property.vo.PropertyDistrictUserVO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.List;
+
+/**
+ * 物业公司人员派驻小区关联表 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public interface PropertyDistrictUserMapper extends BaseMapper<PropertyDistrictUserEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param propertyDistrictUser
+	 * @return
+	 */
+	List<PropertyDistrictUserVO> selectPropertyDistrictUserPage(IPage page, PropertyDistrictUserVO propertyDistrictUser);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/mapper/PropertyDistrictUserMapper.xml b/src/main/java/org/springblade/modules/property/mapper/PropertyDistrictUserMapper.xml
new file mode 100644
index 0000000..3867e4b
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/mapper/PropertyDistrictUserMapper.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.property.mapper.PropertyDistrictUserMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="propertyDistrictUserResultMap" type="org.springblade.modules.property.entity.PropertyDistrictUserEntity">
+        <result column="id" property="id"/>
+        <result column="property_company_id" property="propertyCompanyId"/>
+        <result column="district_id" property="districtId"/>
+        <result column="user_id" property="userId"/>
+    </resultMap>
+
+
+    <select id="selectPropertyDistrictUserPage" resultMap="propertyDistrictUserResultMap">
+        select * from jczz_property_district_user where is_deleted = 0
+    </select>
+
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/property/service/IPropertyCapitalApplyService.java b/src/main/java/org/springblade/modules/property/service/IPropertyCapitalApplyService.java
new file mode 100644
index 0000000..c718d46
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/service/IPropertyCapitalApplyService.java
@@ -0,0 +1,42 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.service;
+
+import org.springblade.modules.property.entity.PropertyCapitalApplyEntity;
+import org.springblade.modules.property.vo.PropertyCapitalApplyVO;
+import org.springblade.core.mp.base.BaseService;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 物业维修资金申请表 服务类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public interface IPropertyCapitalApplyService extends BaseService<PropertyCapitalApplyEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param propertyCapitalApply
+	 * @return
+	 */
+	IPage<PropertyCapitalApplyVO> selectPropertyCapitalApplyPage(IPage<PropertyCapitalApplyVO> page, PropertyCapitalApplyVO propertyCapitalApply);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/service/IPropertyCompanyDistrictService.java b/src/main/java/org/springblade/modules/property/service/IPropertyCompanyDistrictService.java
new file mode 100644
index 0000000..22bdeb4
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/service/IPropertyCompanyDistrictService.java
@@ -0,0 +1,42 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.service;
+
+import org.springblade.modules.property.entity.PropertyCompanyDistrictEntity;
+import org.springblade.modules.property.vo.PropertyCompanyDistrictVO;
+import org.springblade.core.mp.base.BaseService;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 物业派驻小区表 服务类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public interface IPropertyCompanyDistrictService extends BaseService<PropertyCompanyDistrictEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param propertyCompanyDistrict
+	 * @return
+	 */
+	IPage<PropertyCompanyDistrictVO> selectPropertyCompanyDistrictPage(IPage<PropertyCompanyDistrictVO> page, PropertyCompanyDistrictVO propertyCompanyDistrict);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/service/IPropertyCompanyService.java b/src/main/java/org/springblade/modules/property/service/IPropertyCompanyService.java
new file mode 100644
index 0000000..bd2b48c
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/service/IPropertyCompanyService.java
@@ -0,0 +1,42 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.service;
+
+import org.springblade.modules.property.entity.PropertyCompanyEntity;
+import org.springblade.modules.property.vo.PropertyCompanyVO;
+import org.springblade.core.mp.base.BaseService;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 物业公司 服务类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public interface IPropertyCompanyService extends BaseService<PropertyCompanyEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param propertyCompany
+	 * @return
+	 */
+	IPage<PropertyCompanyVO> selectPropertyCompanyPage(IPage<PropertyCompanyVO> page, PropertyCompanyVO propertyCompany);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/service/IPropertyDistrictUserService.java b/src/main/java/org/springblade/modules/property/service/IPropertyDistrictUserService.java
new file mode 100644
index 0000000..8079365
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/service/IPropertyDistrictUserService.java
@@ -0,0 +1,42 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.service;
+
+import org.springblade.modules.property.entity.PropertyDistrictUserEntity;
+import org.springblade.modules.property.vo.PropertyDistrictUserVO;
+import org.springblade.core.mp.base.BaseService;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 物业公司人员派驻小区关联表 服务类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public interface IPropertyDistrictUserService extends BaseService<PropertyDistrictUserEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param propertyDistrictUser
+	 * @return
+	 */
+	IPage<PropertyDistrictUserVO> selectPropertyDistrictUserPage(IPage<PropertyDistrictUserVO> page, PropertyDistrictUserVO propertyDistrictUser);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/service/impl/PropertyCapitalApplyServiceImpl.java b/src/main/java/org/springblade/modules/property/service/impl/PropertyCapitalApplyServiceImpl.java
new file mode 100644
index 0000000..0e45c85
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/service/impl/PropertyCapitalApplyServiceImpl.java
@@ -0,0 +1,42 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.service.impl;
+
+import org.springblade.modules.property.entity.PropertyCapitalApplyEntity;
+import org.springblade.modules.property.vo.PropertyCapitalApplyVO;
+import org.springblade.modules.property.mapper.PropertyCapitalApplyMapper;
+import org.springblade.modules.property.service.IPropertyCapitalApplyService;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 物业维修资金申请表 服务实现类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Service
+public class PropertyCapitalApplyServiceImpl extends BaseServiceImpl<PropertyCapitalApplyMapper, PropertyCapitalApplyEntity> implements IPropertyCapitalApplyService {
+
+	@Override
+	public IPage<PropertyCapitalApplyVO> selectPropertyCapitalApplyPage(IPage<PropertyCapitalApplyVO> page, PropertyCapitalApplyVO propertyCapitalApply) {
+		return page.setRecords(baseMapper.selectPropertyCapitalApplyPage(page, propertyCapitalApply));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyDistrictServiceImpl.java b/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyDistrictServiceImpl.java
new file mode 100644
index 0000000..5a320a1
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyDistrictServiceImpl.java
@@ -0,0 +1,42 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.service.impl;
+
+import org.springblade.modules.property.entity.PropertyCompanyDistrictEntity;
+import org.springblade.modules.property.vo.PropertyCompanyDistrictVO;
+import org.springblade.modules.property.mapper.PropertyCompanyDistrictMapper;
+import org.springblade.modules.property.service.IPropertyCompanyDistrictService;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 物业派驻小区表 服务实现类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Service
+public class PropertyCompanyDistrictServiceImpl extends BaseServiceImpl<PropertyCompanyDistrictMapper, PropertyCompanyDistrictEntity> implements IPropertyCompanyDistrictService {
+
+	@Override
+	public IPage<PropertyCompanyDistrictVO> selectPropertyCompanyDistrictPage(IPage<PropertyCompanyDistrictVO> page, PropertyCompanyDistrictVO propertyCompanyDistrict) {
+		return page.setRecords(baseMapper.selectPropertyCompanyDistrictPage(page, propertyCompanyDistrict));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyServiceImpl.java b/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyServiceImpl.java
new file mode 100644
index 0000000..a4c3f9e
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyServiceImpl.java
@@ -0,0 +1,42 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.service.impl;
+
+import org.springblade.modules.property.entity.PropertyCompanyEntity;
+import org.springblade.modules.property.vo.PropertyCompanyVO;
+import org.springblade.modules.property.mapper.PropertyCompanyMapper;
+import org.springblade.modules.property.service.IPropertyCompanyService;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 物业公司 服务实现类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Service
+public class PropertyCompanyServiceImpl extends BaseServiceImpl<PropertyCompanyMapper, PropertyCompanyEntity> implements IPropertyCompanyService {
+
+	@Override
+	public IPage<PropertyCompanyVO> selectPropertyCompanyPage(IPage<PropertyCompanyVO> page, PropertyCompanyVO propertyCompany) {
+		return page.setRecords(baseMapper.selectPropertyCompanyPage(page, propertyCompany));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/service/impl/PropertyDistrictUserServiceImpl.java b/src/main/java/org/springblade/modules/property/service/impl/PropertyDistrictUserServiceImpl.java
new file mode 100644
index 0000000..ff7aa12
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/service/impl/PropertyDistrictUserServiceImpl.java
@@ -0,0 +1,42 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.service.impl;
+
+import org.springblade.modules.property.entity.PropertyDistrictUserEntity;
+import org.springblade.modules.property.vo.PropertyDistrictUserVO;
+import org.springblade.modules.property.mapper.PropertyDistrictUserMapper;
+import org.springblade.modules.property.service.IPropertyDistrictUserService;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 物业公司人员派驻小区关联表 服务实现类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Service
+public class PropertyDistrictUserServiceImpl extends BaseServiceImpl<PropertyDistrictUserMapper, PropertyDistrictUserEntity> implements IPropertyDistrictUserService {
+
+	@Override
+	public IPage<PropertyDistrictUserVO> selectPropertyDistrictUserPage(IPage<PropertyDistrictUserVO> page, PropertyDistrictUserVO propertyDistrictUser) {
+		return page.setRecords(baseMapper.selectPropertyDistrictUserPage(page, propertyDistrictUser));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/vo/PropertyCapitalApplyVO.java b/src/main/java/org/springblade/modules/property/vo/PropertyCapitalApplyVO.java
new file mode 100644
index 0000000..dcad9ce
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/vo/PropertyCapitalApplyVO.java
@@ -0,0 +1,35 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.vo;
+
+import org.springblade.modules.property.entity.PropertyCapitalApplyEntity;
+import org.springblade.core.tool.node.INode;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 物业维修资金申请表 视图实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class PropertyCapitalApplyVO extends PropertyCapitalApplyEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/vo/PropertyCompanyDistrictVO.java b/src/main/java/org/springblade/modules/property/vo/PropertyCompanyDistrictVO.java
new file mode 100644
index 0000000..0d865bf
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/vo/PropertyCompanyDistrictVO.java
@@ -0,0 +1,35 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.vo;
+
+import org.springblade.modules.property.entity.PropertyCompanyDistrictEntity;
+import org.springblade.core.tool.node.INode;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 物业派驻小区表 视图实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class PropertyCompanyDistrictVO extends PropertyCompanyDistrictEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/vo/PropertyCompanyVO.java b/src/main/java/org/springblade/modules/property/vo/PropertyCompanyVO.java
new file mode 100644
index 0000000..7628d33
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/vo/PropertyCompanyVO.java
@@ -0,0 +1,35 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.vo;
+
+import org.springblade.modules.property.entity.PropertyCompanyEntity;
+import org.springblade.core.tool.node.INode;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 物业公司 视图实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class PropertyCompanyVO extends PropertyCompanyEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/vo/PropertyDistrictUserVO.java b/src/main/java/org/springblade/modules/property/vo/PropertyDistrictUserVO.java
new file mode 100644
index 0000000..5e5610f
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/vo/PropertyDistrictUserVO.java
@@ -0,0 +1,35 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.vo;
+
+import org.springblade.modules.property.entity.PropertyDistrictUserEntity;
+import org.springblade.core.tool.node.INode;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 物业公司人员派驻小区关联表 视图实体类
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class PropertyDistrictUserVO extends PropertyDistrictUserEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/property/wrapper/PropertyCapitalApplyWrapper.java b/src/main/java/org/springblade/modules/property/wrapper/PropertyCapitalApplyWrapper.java
new file mode 100644
index 0000000..c7d9728
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/wrapper/PropertyCapitalApplyWrapper.java
@@ -0,0 +1,50 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.property.entity.PropertyCapitalApplyEntity;
+import org.springblade.modules.property.vo.PropertyCapitalApplyVO;
+import java.util.Objects;
+
+/**
+ * 物业维修资金申请表 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public class PropertyCapitalApplyWrapper extends BaseEntityWrapper<PropertyCapitalApplyEntity, PropertyCapitalApplyVO>  {
+
+	public static PropertyCapitalApplyWrapper build() {
+		return new PropertyCapitalApplyWrapper();
+ 	}
+
+	@Override
+	public PropertyCapitalApplyVO entityVO(PropertyCapitalApplyEntity propertyCapitalApply) {
+		PropertyCapitalApplyVO propertyCapitalApplyVO = Objects.requireNonNull(BeanUtil.copy(propertyCapitalApply, PropertyCapitalApplyVO.class));
+
+		//User createUser = UserCache.getUser(propertyCapitalApply.getCreateUser());
+		//User updateUser = UserCache.getUser(propertyCapitalApply.getUpdateUser());
+		//propertyCapitalApplyVO.setCreateUserName(createUser.getName());
+		//propertyCapitalApplyVO.setUpdateUserName(updateUser.getName());
+
+		return propertyCapitalApplyVO;
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/wrapper/PropertyCompanyDistrictWrapper.java b/src/main/java/org/springblade/modules/property/wrapper/PropertyCompanyDistrictWrapper.java
new file mode 100644
index 0000000..d821be8
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/wrapper/PropertyCompanyDistrictWrapper.java
@@ -0,0 +1,50 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.property.entity.PropertyCompanyDistrictEntity;
+import org.springblade.modules.property.vo.PropertyCompanyDistrictVO;
+import java.util.Objects;
+
+/**
+ * 物业派驻小区表 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public class PropertyCompanyDistrictWrapper extends BaseEntityWrapper<PropertyCompanyDistrictEntity, PropertyCompanyDistrictVO>  {
+
+	public static PropertyCompanyDistrictWrapper build() {
+		return new PropertyCompanyDistrictWrapper();
+ 	}
+
+	@Override
+	public PropertyCompanyDistrictVO entityVO(PropertyCompanyDistrictEntity propertyCompanyDistrict) {
+		PropertyCompanyDistrictVO propertyCompanyDistrictVO = Objects.requireNonNull(BeanUtil.copy(propertyCompanyDistrict, PropertyCompanyDistrictVO.class));
+
+		//User createUser = UserCache.getUser(propertyCompanyDistrict.getCreateUser());
+		//User updateUser = UserCache.getUser(propertyCompanyDistrict.getUpdateUser());
+		//propertyCompanyDistrictVO.setCreateUserName(createUser.getName());
+		//propertyCompanyDistrictVO.setUpdateUserName(updateUser.getName());
+
+		return propertyCompanyDistrictVO;
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/wrapper/PropertyCompanyWrapper.java b/src/main/java/org/springblade/modules/property/wrapper/PropertyCompanyWrapper.java
new file mode 100644
index 0000000..8019f25
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/wrapper/PropertyCompanyWrapper.java
@@ -0,0 +1,50 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.property.entity.PropertyCompanyEntity;
+import org.springblade.modules.property.vo.PropertyCompanyVO;
+import java.util.Objects;
+
+/**
+ * 物业公司 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public class PropertyCompanyWrapper extends BaseEntityWrapper<PropertyCompanyEntity, PropertyCompanyVO>  {
+
+	public static PropertyCompanyWrapper build() {
+		return new PropertyCompanyWrapper();
+ 	}
+
+	@Override
+	public PropertyCompanyVO entityVO(PropertyCompanyEntity propertyCompany) {
+		PropertyCompanyVO propertyCompanyVO = Objects.requireNonNull(BeanUtil.copy(propertyCompany, PropertyCompanyVO.class));
+
+		//User createUser = UserCache.getUser(propertyCompany.getCreateUser());
+		//User updateUser = UserCache.getUser(propertyCompany.getUpdateUser());
+		//propertyCompanyVO.setCreateUserName(createUser.getName());
+		//propertyCompanyVO.setUpdateUserName(updateUser.getName());
+
+		return propertyCompanyVO;
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/property/wrapper/PropertyDistrictUserWrapper.java b/src/main/java/org/springblade/modules/property/wrapper/PropertyDistrictUserWrapper.java
new file mode 100644
index 0000000..1eaaa71
--- /dev/null
+++ b/src/main/java/org/springblade/modules/property/wrapper/PropertyDistrictUserWrapper.java
@@ -0,0 +1,50 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.property.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.property.entity.PropertyDistrictUserEntity;
+import org.springblade.modules.property.vo.PropertyDistrictUserVO;
+import java.util.Objects;
+
+/**
+ * 物业公司人员派驻小区关联表 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2023-11-23
+ */
+public class PropertyDistrictUserWrapper extends BaseEntityWrapper<PropertyDistrictUserEntity, PropertyDistrictUserVO>  {
+
+	public static PropertyDistrictUserWrapper build() {
+		return new PropertyDistrictUserWrapper();
+ 	}
+
+	@Override
+	public PropertyDistrictUserVO entityVO(PropertyDistrictUserEntity propertyDistrictUser) {
+		PropertyDistrictUserVO propertyDistrictUserVO = Objects.requireNonNull(BeanUtil.copy(propertyDistrictUser, PropertyDistrictUserVO.class));
+
+		//User createUser = UserCache.getUser(propertyDistrictUser.getCreateUser());
+		//User updateUser = UserCache.getUser(propertyDistrictUser.getUpdateUser());
+		//propertyDistrictUserVO.setCreateUserName(createUser.getName());
+		//propertyDistrictUserVO.setUpdateUserName(updateUser.getName());
+
+		return propertyDistrictUserVO;
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/system/controller/RegionController.java b/src/main/java/org/springblade/modules/system/controller/RegionController.java
index cc96841..d975204 100644
--- a/src/main/java/org/springblade/modules/system/controller/RegionController.java
+++ b/src/main/java/org/springblade/modules/system/controller/RegionController.java
@@ -113,6 +113,17 @@
 	}
 
 	/**
+	 * 树列表
+	 * @param parentCode
+	 * @return
+	 */
+	@GetMapping("/tree")
+	@ApiOperation(value = "树列表", notes = "传入menu")
+	public R getTree(String parentCode) {
+		return R.data(regionService.getTree(parentCode));
+	}
+
+	/**
 	 * 新增 行政区划表
 	 */
 	@PostMapping("/save")
diff --git a/src/main/java/org/springblade/modules/system/mapper/RegionMapper.java b/src/main/java/org/springblade/modules/system/mapper/RegionMapper.java
index 91d0c8f..2afc454 100644
--- a/src/main/java/org/springblade/modules/system/mapper/RegionMapper.java
+++ b/src/main/java/org/springblade/modules/system/mapper/RegionMapper.java
@@ -18,7 +18,9 @@
 
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.MapKey;
 import org.apache.ibatis.annotations.Param;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.modules.system.entity.Region;
 import org.springblade.modules.system.excel.RegionExcel;
 import org.springblade.modules.system.vo.RegionVO;
@@ -59,4 +61,11 @@
 	 */
 	List<RegionExcel> exportRegion(@Param("ew") Wrapper<Region> queryWrapper);
 
+	/**
+	 * 树列表
+	 * @param parentCode
+	 * @return
+	 */
+	@MapKey(value = "id")
+    Map<String, TreeStringNode> getTreeList(@Param("parentCode") String parentCode);
 }
diff --git a/src/main/java/org/springblade/modules/system/mapper/RegionMapper.xml b/src/main/java/org/springblade/modules/system/mapper/RegionMapper.xml
index 3b7ff9c..f7c96a2 100644
--- a/src/main/java/org/springblade/modules/system/mapper/RegionMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/RegionMapper.xml
@@ -102,4 +102,24 @@
         SELECT * FROM blade_region ${ew.customSqlSegment}
     </select>
 
+    <!--根据父编号查询所有的下级-->
+    <select id="getTreeList" resultType="org.springblade.common.node.TreeStringNode">
+        SELECT
+            br.code as id,br.parent_code as parentId,br.name as name
+        FROM
+            (
+            SELECT
+                @ids AS ids,
+                ( SELECT @ids := GROUP_CONCAT( code ) FROM blade_region WHERE FIND_IN_SET( parent_code, @ids ) ) AS cids
+            FROM
+                blade_region
+            WHERE
+                @ids IS NOT NULL
+                AND @ids := #{parentCode}
+            ) id,
+            blade_region br
+        WHERE
+            FIND_IN_SET(br.parent_code,ids)
+    </select>
+
 </mapper>
diff --git a/src/main/java/org/springblade/modules/system/service/IRegionService.java b/src/main/java/org/springblade/modules/system/service/IRegionService.java
index a427540..af578a8 100644
--- a/src/main/java/org/springblade/modules/system/service/IRegionService.java
+++ b/src/main/java/org/springblade/modules/system/service/IRegionService.java
@@ -18,6 +18,8 @@
 
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.common.node.TreeLongNode;
+import org.springblade.common.node.TreeStringNode;
 import org.springblade.modules.system.entity.Region;
 import org.springblade.modules.system.excel.RegionExcel;
 import org.springblade.modules.system.vo.RegionVO;
@@ -83,4 +85,10 @@
 	 */
 	List<RegionExcel> exportRegion(Wrapper<Region> queryWrapper);
 
+	/**
+	 * 树列表
+	 * @param parentCode
+	 * @return
+	 */
+	List<TreeStringNode> getTree(String parentCode);
 }
diff --git a/src/main/java/org/springblade/modules/system/service/impl/RegionServiceImpl.java b/src/main/java/org/springblade/modules/system/service/impl/RegionServiceImpl.java
index dcfc5cf..29f0e11 100644
--- a/src/main/java/org/springblade/modules/system/service/impl/RegionServiceImpl.java
+++ b/src/main/java/org/springblade/modules/system/service/impl/RegionServiceImpl.java
@@ -19,6 +19,9 @@
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.common.node.TreeLongNode;
+import org.springblade.common.node.TreeStringNode;
+import org.springblade.common.utils.NodeTreeUtil;
 import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.Func;
@@ -116,4 +119,14 @@
 	public List<RegionExcel> exportRegion(Wrapper<Region> queryWrapper) {
 		return baseMapper.exportRegion(queryWrapper);
 	}
+
+	/**
+	 * 树列表
+	 * @param parentCode
+	 * @return
+	 */
+	@Override
+	public List<TreeStringNode> getTree(String parentCode) {
+		return NodeTreeUtil.getStringNodeTree(baseMapper.getTreeList(parentCode));
+	}
 }

--
Gitblit v1.9.3