feat: 更新分期方案初始化脚本,匹配最新表结构

- 更新表名和字段名为小写格式
- 修正字段类型以匹配实体类定义
- 新增缺失字段:scheme_type, down_payment_ratio等
- 添加索引优化查询性能
- 完善表和字段注释
This commit is contained in:
Admin
2025-09-11 18:42:41 +08:00
parent 9f5a484689
commit aca5fb0a44
1165 changed files with 497 additions and 900 deletions

View File

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.dromara</groupId>
<artifactId>LCXiaoguan-modules</artifactId>
<version>${revision}</version>
</parent>
<artifactId>LCXiaoguan-businessdata</artifactId>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>LCXiaoguan-common-idempotent</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>LCXiaoguan-common-log</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>LCXiaoguan-common-web</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>LCXiaoguan-common-mybatis</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>LCXiaoguan-common-excel</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>LCXiaoguan-common-tenant</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,17 @@
package org.dromara;
//TIP 要<b>运行</b>代码,请按 <shortcut actionId="Run"/> 或
// 点击装订区域中的 <icon src="AllIcons.Actions.Execute"/> 图标。
public class Main {
public static void main(String[] args) {
//TIP 当文本光标位于高亮显示的文本处时按 <shortcut actionId="ShowIntentionActions"/>
// 查看 IntelliJ IDEA 建议如何修正。
System.out.printf("Hello and welcome!");
for (int i = 1; i <= 5; i++) {
//TIP 按 <shortcut actionId="Debug"/> 开始调试代码。我们已经设置了一个 <icon src="AllIcons.Debugger.Db_set_breakpoint"/> 断点
// 但您始终可以通过按 <shortcut actionId="ToggleLineBreakpoint"/> 添加更多断点。
System.out.println("i = " + i);
}
}
}

View File

@ -0,0 +1,105 @@
package org.dromara.system.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.system.domain.vo.TBusinessunitVo;
import org.dromara.system.domain.bo.TBusinessunitBo;
import org.dromara.system.service.ITBusinessunitService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 公司
*
* @author Lion Li
* @date 2025-09-09
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/system/businessunit")
public class TBusinessunitController extends BaseController {
private final ITBusinessunitService tBusinessunitService;
/**
* 查询公司列表
*/
@SaCheckPermission("system:businessunit:list")
@GetMapping("/list")
public TableDataInfo<TBusinessunitVo> list(TBusinessunitBo bo, PageQuery pageQuery) {
return tBusinessunitService.queryPageList(bo, pageQuery);
}
/**
* 导出公司列表
*/
@SaCheckPermission("system:businessunit:export")
@Log(title = "公司", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TBusinessunitBo bo, HttpServletResponse response) {
List<TBusinessunitVo> list = tBusinessunitService.queryList(bo);
ExcelUtil.exportExcel(list, "公司", TBusinessunitVo.class, response);
}
/**
* 获取公司详细信息
*
* @param id 主键
*/
@SaCheckPermission("system:businessunit:query")
@GetMapping("/{id}")
public R<TBusinessunitVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(tBusinessunitService.queryById(id));
}
/**
* 新增公司
*/
@SaCheckPermission("system:businessunit:add")
@Log(title = "公司", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TBusinessunitBo bo) {
return toAjax(tBusinessunitService.insertByBo(bo));
}
/**
* 修改公司
*/
@SaCheckPermission("system:businessunit:edit")
@Log(title = "公司", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TBusinessunitBo bo) {
return toAjax(tBusinessunitService.updateByBo(bo));
}
/**
* 删除公司
*
* @param ids 主键串
*/
@SaCheckPermission("system:businessunit:remove")
@Log(title = "公司", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(tBusinessunitService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,105 @@
package org.dromara.system.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.system.domain.vo.TPaymentDetailsVo;
import org.dromara.system.domain.bo.TPaymentDetailsBo;
import org.dromara.system.service.ITPaymentDetailsService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 付款明细
*
* @author Lion Li
* @date 2025-09-10
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/system/paymentDetails")
public class TPaymentDetailsController extends BaseController {
private final ITPaymentDetailsService tPaymentDetailsService;
/**
* 查询付款明细列表
*/
@SaCheckPermission("system:paymentDetails:list")
@GetMapping("/list")
public TableDataInfo<TPaymentDetailsVo> list(TPaymentDetailsBo bo, PageQuery pageQuery) {
return tPaymentDetailsService.queryPageList(bo, pageQuery);
}
/**
* 导出付款明细列表
*/
@SaCheckPermission("system:paymentDetails:export")
@Log(title = "付款明细", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TPaymentDetailsBo bo, HttpServletResponse response) {
List<TPaymentDetailsVo> list = tPaymentDetailsService.queryList(bo);
ExcelUtil.exportExcel(list, "付款明细", TPaymentDetailsVo.class, response);
}
/**
* 获取付款明细详细信息
*
* @param id 主键
*/
@SaCheckPermission("system:paymentDetails:query")
@GetMapping("/{id}")
public R<TPaymentDetailsVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(tPaymentDetailsService.queryById(id));
}
/**
* 新增付款明细
*/
@SaCheckPermission("system:paymentDetails:add")
@Log(title = "付款明细", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TPaymentDetailsBo bo) {
return toAjax(tPaymentDetailsService.insertByBo(bo));
}
/**
* 修改付款明细
*/
@SaCheckPermission("system:paymentDetails:edit")
@Log(title = "付款明细", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TPaymentDetailsBo bo) {
return toAjax(tPaymentDetailsService.updateByBo(bo));
}
/**
* 删除付款明细
*
* @param ids 主键串
*/
@SaCheckPermission("system:paymentDetails:remove")
@Log(title = "付款明细", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(tPaymentDetailsService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,106 @@
package org.dromara.system.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.system.domain.vo.TPeriodicpolicyVo;
import org.dromara.system.domain.bo.TPeriodicpolicyBo;
import org.dromara.system.service.ITPeriodicpolicyService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 分期方案
*
* @author Lion Li
* @date 2025-09-10
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/system/periodicpolicy")
public class TPeriodicpolicyController extends BaseController {
private final ITPeriodicpolicyService tPeriodicpolicyService;
/**
* 查询分期方案列表
*/
@SaCheckPermission("system:periodicpolicy:list")
@GetMapping("/list")
public TableDataInfo<TPeriodicpolicyVo> list(TPeriodicpolicyBo bo, PageQuery pageQuery) {
return tPeriodicpolicyService.queryPageList(bo, pageQuery);
}
/**
* 导出分期方案列表
*/
@SaCheckPermission("system:periodicpolicy:export")
@Log(title = "分期方案", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TPeriodicpolicyBo bo, HttpServletResponse response) {
List<TPeriodicpolicyVo> list = tPeriodicpolicyService.queryList(bo);
ExcelUtil.exportExcel(list, "分期方案", TPeriodicpolicyVo.class, response);
}
/**
* 获取分期方案详细信息
*
* @param id 主键
*/
@SaCheckPermission("system:periodicpolicy:query")
@GetMapping("/{id}")
public R<TPeriodicpolicyVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(tPeriodicpolicyService.queryById(id));
}
/**
* 新增分期方案
*/
@SaCheckPermission("system:periodicpolicy:add")
@Log(title = "分期方案", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<String> add(@Validated(AddGroup.class) @RequestBody TPeriodicpolicyBo bo) {
String id = tPeriodicpolicyService.insertByBo(bo);
return R.ok(id);
}
/**
* 修改分期方案
*/
@SaCheckPermission("system:periodicpolicy:edit")
@Log(title = "分期方案", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TPeriodicpolicyBo bo) {
return toAjax(tPeriodicpolicyService.updateByBo(bo));
}
/**
* 删除分期方案
*
* @param ids 主键串
*/
@SaCheckPermission("system:periodicpolicy:remove")
@Log(title = "分期方案", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(tPeriodicpolicyService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,117 @@
package org.dromara.system.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.WebDataBinder;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.system.domain.vo.TPolicyVo;
import org.dromara.system.domain.bo.TPolicyBo;
import org.dromara.system.service.ITPolicyService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.springframework.beans.propertyeditors.CustomNumberEditor;
/**
* 分期政策
*
* @author Lion Li
* @date 2025-09-10
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/system/policy")
public class TPolicyController extends BaseController {
private final ITPolicyService tPolicyService;
/**
* 自定义数据绑定器处理Long类型转换
*/
@InitBinder
public void initBinder(WebDataBinder binder) {
// 注册自定义的Long类型转换器
binder.registerCustomEditor(Long.class, new CustomNumberEditor(Long.class, true));
}
/**
* 查询分期政策列表
*/
@SaCheckPermission("system:policy:list")
@GetMapping("/list")
public TableDataInfo<TPolicyVo> list(@ModelAttribute TPolicyBo bo, PageQuery pageQuery) {
return tPolicyService.queryPageList(bo, pageQuery);
}
/**
* 导出分期政策列表
*/
@SaCheckPermission("system:policy:export")
@Log(title = "分期政策", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TPolicyBo bo, HttpServletResponse response) {
List<TPolicyVo> list = tPolicyService.queryList(bo);
ExcelUtil.exportExcel(list, "分期政策", TPolicyVo.class, response);
}
/**
* 获取分期政策详细信息
*
* @param id 主键
*/
@SaCheckPermission("system:policy:query")
@GetMapping("/{id}")
public R<TPolicyVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(tPolicyService.queryById(id));
}
/**
* 新增分期政策
*/
@SaCheckPermission("system:policy:add")
@Log(title = "分期政策", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TPolicyBo bo) {
return toAjax(tPolicyService.insertByBo(bo));
}
/**
* 修改分期政策
*/
@SaCheckPermission("system:policy:edit")
@Log(title = "分期政策", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TPolicyBo bo) {
return toAjax(tPolicyService.updateByBo(bo));
}
/**
* 删除分期政策
*
* @param ids 主键串
*/
@SaCheckPermission("system:policy:remove")
@Log(title = "分期政策", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(tPolicyService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,105 @@
package org.dromara.system.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.system.domain.vo.TProjectVo;
import org.dromara.system.domain.bo.TProjectBo;
import org.dromara.system.service.ITProjectService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 项目
*
* @author Lion Li
* @date 2025-09-09
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/system/project")
public class TProjectController extends BaseController {
private final ITProjectService tProjectService;
/**
* 查询项目列表
*/
@SaCheckPermission("system:project:list")
@GetMapping("/list")
public TableDataInfo<TProjectVo> list(TProjectBo bo, PageQuery pageQuery) {
return tProjectService.queryPageList(bo, pageQuery);
}
/**
* 导出项目列表
*/
@SaCheckPermission("system:project:export")
@Log(title = "项目", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TProjectBo bo, HttpServletResponse response) {
List<TProjectVo> list = tProjectService.queryList(bo);
ExcelUtil.exportExcel(list, "项目", TProjectVo.class, response);
}
/**
* 获取项目详细信息
*
* @param id 主键
*/
@SaCheckPermission("system:project:query")
@GetMapping("/{id}")
public R<TProjectVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(tProjectService.queryById(id));
}
/**
* 新增项目
*/
@SaCheckPermission("system:project:add")
@Log(title = "项目", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TProjectBo bo) {
return toAjax(tProjectService.insertByBo(bo));
}
/**
* 修改项目
*/
@SaCheckPermission("system:project:edit")
@Log(title = "项目", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TProjectBo bo) {
return toAjax(tProjectService.updateByBo(bo));
}
/**
* 删除项目
*
* @param ids 主键串
*/
@SaCheckPermission("system:project:remove")
@Log(title = "项目", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(tProjectService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,105 @@
package org.dromara.system.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.system.domain.vo.TRoomVo;
import org.dromara.system.domain.bo.TRoomBo;
import org.dromara.system.service.ITRoomService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 房间
*
* @author Lion Li
* @date 2025-09-09
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/system/room")
public class TRoomController extends BaseController {
private final ITRoomService tRoomService;
/**
* 查询房间列表
*/
@SaCheckPermission("system:room:list")
@GetMapping("/list")
public TableDataInfo<TRoomVo> list(TRoomBo bo, PageQuery pageQuery) {
return tRoomService.queryPageList(bo, pageQuery);
}
/**
* 导出房间列表
*/
@SaCheckPermission("system:room:export")
@Log(title = "房间", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TRoomBo bo, HttpServletResponse response) {
List<TRoomVo> list = tRoomService.queryList(bo);
ExcelUtil.exportExcel(list, "房间", TRoomVo.class, response);
}
/**
* 获取房间详细信息
*
* @param id 主键
*/
@SaCheckPermission("system:room:query")
@GetMapping("/{id}")
public R<TRoomVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable String id) {
return R.ok(tRoomService.queryById(id));
}
/**
* 新增房间
*/
@SaCheckPermission("system:room:add")
@Log(title = "房间", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TRoomBo bo) {
return toAjax(tRoomService.insertByBo(bo));
}
/**
* 修改房间
*/
@SaCheckPermission("system:room:edit")
@Log(title = "房间", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TRoomBo bo) {
return toAjax(tRoomService.updateByBo(bo));
}
/**
* 删除房间
*
* @param ids 主键串
*/
@SaCheckPermission("system:room:remove")
@Log(title = "房间", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable String[] ids) {
return toAjax(tRoomService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,62 @@
package org.dromara.system.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 公司对象 t_businessunit
*
* @author Lion Li
* @date 2025-09-09
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("t_businessunit")
public class TBusinessunit extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private String id;
/**
* 公司名称
*/
private String buname;
/**
* 公司GUID
*/
private String buguid;
/**
* 层级编码
*/
private String hierarchicalcode;
/**
* 父级GUID
*/
private String parentguid;
/**
* 是否末级
*/
private Long ifend;
/**
* 删除标志0存在 1删除
*/
@TableLogic
private Long delFlag;
}

View File

@ -0,0 +1,144 @@
package org.dromara.system.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
/**
* 付款明细对象 t_payment_details
*
* @author Lion Li
* @date 2025-09-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("t_payment_details")
public class TPaymentDetails extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private String id;
/**
* 政策主键ID
*/
private String policyid;
/**
* 政策名称
*/
private String policyName;
/**
* 楼栋名称
*/
private String buildingName;
/**
* 生效日期
*/
private Date effectiveDate;
/**
* 可使用房源(套数)
*/
private Long availableUnits;
/**
* 创建人Id
*/
private String creatorid;
/**
* 创建人
*/
private String creator;
/**
* 备注
*/
private String remark;
/**
* 类别
*/
private String category;
/**
* 付款时间(如“小订/认购签署日期”)
*/
private String paymentTime;
/**
* 几天内
*/
private Long daysWithin;
/**
* 几个月内
*/
private Long monthsWithin;
/**
* 款项类型(如“非贷款类房款”)
*/
private String paymentType;
/**
* 款项名称(如“定金”)
*/
private String itemName;
/**
* 比例保留4位小数
*/
private Long ratio;
/**
* 币种(如“合同币种”)
*/
private String currency;
/**
* 分期
*/
private Long installment;
/**
* 金额保留2位小数
*/
private Long amount;
/**
* 是否扣除定金1为是0为否
*/
private Long deductDeposit;
/**
* 创建时间
*/
private Date createdAt;
/**
* 更新时间
*/
private Date updatedAt;
/**
* 删除标志0存在 1删除
*/
@TableLogic
private Long delFlag;
}

View File

@ -0,0 +1,89 @@
package org.dromara.system.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
/**
* 分期方案对象 t_periodicpolicy
*
* @author Lion Li
* @date 2025-09-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("t_periodicpolicy")
public class TPeriodicpolicy extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private String id;
/**
* 方案名称
*/
private String schemeName;
/**
* 填报说明
*/
private String fillingInstruction;
/**
* 生效日期
*/
private Date effectiveDate;
/**
* 失效日期
*/
private Date invalidDate;
/**
* 创建人
*/
private String creator;
/**
* 创建日期
*/
private Date createDate;
/**
* 分期GUID
*/
private String projguids;
/**
* 分期名称
*/
private String projnames;
/**
* 审批状态
*/
private String approvestatus;
/**
* 分期方案类型
*/
private String schemeType;
/**
* 删除标志0存在 1删除
*/
@TableLogic
private Long delFlag;
}

View File

@ -0,0 +1,112 @@
package org.dromara.system.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.math.BigDecimal;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
/**
* 分期政策对象 t_policy
*
* @author Lion Li
* @date 2025-09-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("t_policy")
public class TPolicy extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private String id;
/**
* 分期方案主键ID
*/
@TableField("periodicPolicyId")
private String periodicPolicyId;
/**
* 政策名称
*/
private String policyName;
/**
* 楼栋名称
*/
private String buildingNames;
/**
* 楼栋Id
*/
private String buildingIds;
/**
* 生效日期
*/
private Date effectiveDate;
/**
* 失效日期
*/
private Date expirationDate;
/**
* 可使用房源(套数)
*/
private Long usableHousesCount;
/**
* 创建人
*/
private String creator;
/**
* 创建日期
*/
private Date createDate;
/**
* 备注
*/
private String remarks;
/**
* 说明
*/
private String description;
/**
* 类别
*/
private String category;
/**
* 付款方式类型
*/
private String paymentType;
/**
* 首付比例
*/
@TableField("downPaymentRatio")
private BigDecimal downPaymentRatio;
/**
* 删除标志0存在 1删除
*/
@TableLogic
private Long delFlag;
}

View File

@ -0,0 +1,67 @@
package org.dromara.system.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 项目对象 t_project
*
* @author Lion Li
* @date 2025-09-09
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("t_project")
public class TProject extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private String id;
/**
* 项目名称
*/
private String projname;
/**
* 项目GUID
*/
private String projguid;
/**
* 公司GUID
*/
private String buguid;
/**
* 层级编码
*/
private String hierarchicalcode;
/**
* 父级GUID
*/
private String parentguid;
/**
* 是否末级
*/
private Long ifend;
/**
* 删除标志0存在 1删除
*/
@TableLogic
private Long delFlag;
}

View File

@ -0,0 +1,52 @@
package org.dromara.system.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 房间对象 t_room
*
* @author Lion Li
* @date 2025-09-09
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("t_room")
public class TRoom extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private String id;
/**
* 房间名称
*/
private String name;
/**
* 房间GUID
*/
private String roomguid;
/**
* 项目GUID
*/
private String projguid;
/**
* 删除标志0存在 1删除
*/
@TableLogic
private Long delFlag;
}

View File

@ -0,0 +1,56 @@
package org.dromara.system.domain.bo;
import org.dromara.system.domain.TBusinessunit;
import org.dromara.common.tenant.core.TenantEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 公司业务对象 t_businessunit
*
* @author Lion Li
* @date 2025-09-09
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TBusinessunit.class, reverseConvertGenerate = false)
public class TBusinessunitBo extends TenantEntity {
/**
*
*/
private String id;
/**
* 公司名称
*/
private String buname;
/**
* 公司GUID
*/
private String buguid;
/**
* 层级编码
*/
private String hierarchicalcode;
/**
* 父级GUID
*/
@NotBlank(message = "父级GUID不能为空", groups = { AddGroup.class, EditGroup.class })
private String parentguid;
/**
* 是否末级
*/
@NotNull(message = "是否末级不能为空", groups = { AddGroup.class, EditGroup.class })
private Long ifend;
}

View File

@ -0,0 +1,136 @@
package org.dromara.system.domain.bo;
import org.dromara.system.domain.TPaymentDetails;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 付款明细业务对象 t_payment_details
*
* @author Lion Li
* @date 2025-09-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TPaymentDetails.class, reverseConvertGenerate = false)
public class TPaymentDetailsBo extends BaseEntity {
/**
*
*/
private String id;
/**
* 政策主键ID
*/
private String policyid;
/**
* 政策名称
*/
private String policyName;
/**
* 楼栋名称
*/
private String buildingName;
/**
* 生效日期
*/
private Date effectiveDate;
/**
* 可使用房源(套数)
*/
private Long availableUnits;
/**
* 创建人Id
*/
private String creatorid;
/**
* 创建人
*/
private String creator;
/**
* 备注
*/
private String remark;
/**
* 类别
*/
private String category;
/**
* 付款时间(如“小订/认购签署日期”)
*/
private String paymentTime;
/**
* 几天内
*/
private Long daysWithin;
/**
* 几个月内
*/
private Long monthsWithin;
/**
* 款项类型(如“非贷款类房款”)
*/
private String paymentType;
/**
* 款项名称(如“定金”)
*/
private String itemName;
/**
* 比例保留4位小数
*/
private Long ratio;
/**
* 币种(如“合同币种”)
*/
private String currency;
/**
* 分期
*/
private Long installment;
/**
* 金额保留2位小数
*/
private Long amount;
/**
* 是否扣除定金1为是0为否
*/
private Long deductDeposit;
/**
* 创建时间
*/
private Date createdAt;
/**
* 更新时间
*/
private Date updatedAt;
}

View File

@ -0,0 +1,80 @@
package org.dromara.system.domain.bo;
import org.dromara.system.domain.TPeriodicpolicy;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 分期方案业务对象 t_periodicpolicy
*
* @author Lion Li
* @date 2025-09-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TPeriodicpolicy.class, reverseConvertGenerate = false)
public class TPeriodicpolicyBo extends BaseEntity {
/**
*
*/
private String id;
/**
* 方案名称
*/
private String schemeName;
/**
* 填报说明
*/
private String fillingInstruction;
/**
* 生效日期
*/
private Date effectiveDate;
/**
* 失效日期
*/
private Date invalidDate;
/**
* 创建人
*/
private String creator;
/**
* 创建日期
*/
private Date createDate;
/**
* 分期GUID
*/
private String projguids;
/**
* 分期名称
*/
private String projnames;
/**
* 审批状态
*/
private String approvestatus;
/**
* 分期方案类型
*/
private String schemeType;
}

View File

@ -0,0 +1,152 @@
package org.dromara.system.domain.bo;
import org.dromara.system.domain.TPolicy;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import java.math.BigDecimal;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* 分期政策业务对象 t_policy
*
* @author Lion Li
* @date 2025-09-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TPolicy.class, reverseConvertGenerate = false)
public class TPolicyBo extends BaseEntity {
/**
*
*/
private String id;
/**
* 分期方案主键ID
*/
private String periodicPolicyId;
/**
* 设置分期方案主键ID支持字符串类型
*/
public void setPeriodicPolicyId(String periodicPolicyId) {
this.periodicPolicyId = periodicPolicyId;
}
/**
* 设置分期方案主键ID支持数字类型转换为字符串
*/
public void setPeriodicPolicyId(Long periodicPolicyId) {
if (periodicPolicyId != null) {
this.periodicPolicyId = periodicPolicyId.toString();
}
}
/**
* 设置分期方案主键ID支持整数类型转换为字符串
*/
public void setPeriodicPolicyId(Integer periodicPolicyId) {
if (periodicPolicyId != null) {
this.periodicPolicyId = periodicPolicyId.toString();
}
}
/**
* 政策名称
*/
private String policyName;
/**
* 楼栋名称
*/
private String buildingNames;
/**
* 楼栋Id
*/
private String buildingIds;
/**
* 生效日期
*/
private Date effectiveDate;
/**
* 失效日期
*/
private Date expirationDate;
/**
* 可使用房源(套数)
*/
private Long usableHousesCount;
/**
* 设置可使用房源套数支持字符串到Long的转换
*/
public void setUsableHousesCount(String usableHousesCount) {
if (usableHousesCount != null && !usableHousesCount.trim().isEmpty()) {
this.usableHousesCount = Long.valueOf(usableHousesCount);
}
}
/**
* 设置可使用房源套数(支持数字类型)
*/
public void setUsableHousesCount(Long usableHousesCount) {
this.usableHousesCount = usableHousesCount;
}
/**
* 设置可使用房源套数(支持整数类型)
*/
public void setUsableHousesCount(Integer usableHousesCount) {
if (usableHousesCount != null) {
this.usableHousesCount = usableHousesCount.longValue();
}
}
/**
* 创建人
*/
private String creator;
/**
* 创建日期
*/
private Date createDate;
/**
* 备注
*/
private String remarks;
/**
* 说明
*/
private String description;
/**
* 类别
*/
private String category;
/**
* 付款方式类型
*/
private String paymentType;
/**
* 首付比例
*/
private BigDecimal downPaymentRatio;
}

View File

@ -0,0 +1,61 @@
package org.dromara.system.domain.bo;
import org.dromara.system.domain.TProject;
import org.dromara.common.tenant.core.TenantEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 项目业务对象 t_project
*
* @author Lion Li
* @date 2025-09-09
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TProject.class, reverseConvertGenerate = false)
public class TProjectBo extends TenantEntity {
/**
*
*/
private String id;
/**
* 项目名称
*/
private String projname;
/**
* 项目GUID
*/
private String projguid;
/**
* 公司GUID
*/
private String buguid;
/**
* 层级编码
*/
private String hierarchicalcode;
/**
* 父级GUID
*/
@NotBlank(message = "父级GUID不能为空", groups = { AddGroup.class, EditGroup.class })
private String parentguid;
/**
* 是否末级
*/
@NotNull(message = "是否末级不能为空", groups = { AddGroup.class, EditGroup.class })
private Long ifend;
}

View File

@ -0,0 +1,44 @@
package org.dromara.system.domain.bo;
import org.dromara.system.domain.TRoom;
import org.dromara.common.tenant.core.TenantEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 房间业务对象 t_room
*
* @author Lion Li
* @date 2025-09-09
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TRoom.class, reverseConvertGenerate = false)
public class TRoomBo extends TenantEntity {
/**
*
*/
private String id;
/**
* 房间名称
*/
private String name;
/**
* 房间GUID
*/
private String roomguid;
/**
* 项目GUID
*/
private String projguid;
}

View File

@ -0,0 +1,68 @@
package org.dromara.system.domain.vo;
import org.dromara.system.domain.TBusinessunit;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 公司视图对象 t_businessunit
*
* @author Lion Li
* @date 2025-09-09
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = TBusinessunit.class)
public class TBusinessunitVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@ExcelProperty(value = "")
private String id;
/**
* 公司名称
*/
@ExcelProperty(value = "公司名称")
private String buname;
/**
* 公司GUID
*/
@ExcelProperty(value = "公司GUID")
private String buguid;
/**
* 层级编码
*/
@ExcelProperty(value = "层级编码")
private String hierarchicalcode;
/**
* 父级GUID
*/
@ExcelProperty(value = "父级GUID")
private String parentguid;
/**
* 是否末级
*/
@ExcelProperty(value = "是否末级")
private Long ifend;
}

View File

@ -0,0 +1,174 @@
package org.dromara.system.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.system.domain.TPaymentDetails;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 付款明细视图对象 t_payment_details
*
* @author Lion Li
* @date 2025-09-10
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = TPaymentDetails.class)
public class TPaymentDetailsVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@ExcelProperty(value = "")
private String id;
/**
* 政策主键ID
*/
@ExcelProperty(value = "政策主键ID")
private String policyid;
/**
* 政策名称
*/
@ExcelProperty(value = "政策名称")
private String policyName;
/**
* 楼栋名称
*/
@ExcelProperty(value = "楼栋名称")
private String buildingName;
/**
* 生效日期
*/
@ExcelProperty(value = "生效日期")
private Date effectiveDate;
/**
* 可使用房源(套数)
*/
@ExcelProperty(value = "可使用房源", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "套=数")
private Long availableUnits;
/**
* 创建人Id
*/
@ExcelProperty(value = "创建人Id")
private String creatorid;
/**
* 创建人
*/
@ExcelProperty(value = "创建人")
private String creator;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
/**
* 类别
*/
@ExcelProperty(value = "类别")
private String category;
/**
* 付款时间(如“小订/认购签署日期”)
*/
@ExcelProperty(value = "付款时间", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "如=“小订/认购签署日期”")
private String paymentTime;
/**
* 几天内
*/
@ExcelProperty(value = "几天内")
private Long daysWithin;
/**
* 几个月内
*/
@ExcelProperty(value = "几个月内")
private Long monthsWithin;
/**
* 款项类型(如“非贷款类房款”)
*/
@ExcelProperty(value = "款项类型", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "如=“非贷款类房款”")
private String paymentType;
/**
* 款项名称(如“定金”)
*/
@ExcelProperty(value = "款项名称", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "如=“定金”")
private String itemName;
/**
* 比例保留4位小数
*/
@ExcelProperty(value = "比例", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "保=留4位小数")
private Long ratio;
/**
* 币种(如“合同币种”)
*/
@ExcelProperty(value = "币种", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "如=“合同币种”")
private String currency;
/**
* 分期
*/
@ExcelProperty(value = "分期")
private Long installment;
/**
* 金额保留2位小数
*/
@ExcelProperty(value = "金额", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "保=留2位小数")
private Long amount;
/**
* 是否扣除定金1为是0为否
*/
@ExcelProperty(value = "是否扣除定金", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "1=为是0为否")
private Long deductDeposit;
/**
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createdAt;
/**
* 更新时间
*/
@ExcelProperty(value = "更新时间")
private Date updatedAt;
}

View File

@ -0,0 +1,100 @@
package org.dromara.system.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.system.domain.TPeriodicpolicy;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 分期方案视图对象 t_periodicpolicy
*
* @author Lion Li
* @date 2025-09-10
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = TPeriodicpolicy.class)
public class TPeriodicpolicyVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@ExcelProperty(value = "")
private String id;
/**
* 方案名称
*/
@ExcelProperty(value = "方案名称")
private String schemeName;
/**
* 填报说明
*/
@ExcelProperty(value = "填报说明")
private String fillingInstruction;
/**
* 生效日期
*/
@ExcelProperty(value = "生效日期")
private Date effectiveDate;
/**
* 失效日期
*/
@ExcelProperty(value = "失效日期")
private Date invalidDate;
/**
* 创建人
*/
@ExcelProperty(value = "创建人")
private String creator;
/**
* 创建日期
*/
@ExcelProperty(value = "创建日期")
private Date createDate;
/**
* 分期GUID
*/
@ExcelProperty(value = "分期GUID")
private String projguids;
/**
* 分期名称
*/
@ExcelProperty(value = "分期名称")
private String projnames;
/**
* 审批状态
*/
@ExcelProperty(value = "审批状态")
private String approvestatus;
/**
* 分期方案类型
*/
@ExcelProperty(value = "分期方案类型")
private String schemeType;
}

View File

@ -0,0 +1,126 @@
package org.dromara.system.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.system.domain.TPolicy;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.math.BigDecimal;
/**
* 分期政策视图对象 t_policy
*
* @author Lion Li
* @date 2025-09-10
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = TPolicy.class)
public class TPolicyVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@ExcelProperty(value = "")
private String id;
/**
* 分期方案主键ID
*/
@ExcelProperty(value = "分期方案主键ID")
private Long periodicpolicyid;
/**
* 政策名称
*/
@ExcelProperty(value = "政策名称")
private String policyName;
/**
* 楼栋名称
*/
@ExcelProperty(value = "楼栋名称")
private String buildingNames;
/**
* 楼栋Id
*/
@ExcelProperty(value = "楼栋Id")
private String buildingIds;
/**
* 生效日期
*/
@ExcelProperty(value = "生效日期")
private Date effectiveDate;
/**
* 失效日期
*/
@ExcelProperty(value = "失效日期")
private Date expirationDate;
/**
* 可使用房源(套数)
*/
@ExcelProperty(value = "可使用房源", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "套=数")
private Long usableHousesCount;
/**
* 创建人
*/
@ExcelProperty(value = "创建人")
private String creator;
/**
* 创建日期
*/
@ExcelProperty(value = "创建日期")
private Date createDate;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remarks;
/**
* 说明
*/
@ExcelProperty(value = "说明")
private String description;
/**
* 类别
*/
@ExcelProperty(value = "类别")
private String category;
/**
* 付款方式类型
*/
@ExcelProperty(value = "付款方式类型")
private String paymentType;
/**
* 首付比例
*/
@ExcelProperty(value = "首付比例")
private BigDecimal downPaymentRatio;
}

View File

@ -0,0 +1,74 @@
package org.dromara.system.domain.vo;
import org.dromara.system.domain.TProject;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 项目视图对象 t_project
*
* @author Lion Li
* @date 2025-09-09
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = TProject.class)
public class TProjectVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@ExcelProperty(value = "")
private String id;
/**
* 项目名称
*/
@ExcelProperty(value = "项目名称")
private String projname;
/**
* 项目GUID
*/
@ExcelProperty(value = "项目GUID")
private String projguid;
/**
* 公司GUID
*/
@ExcelProperty(value = "公司GUID")
private String buguid;
/**
* 层级编码
*/
@ExcelProperty(value = "层级编码")
private String hierarchicalcode;
/**
* 父级GUID
*/
@ExcelProperty(value = "父级GUID")
private String parentguid;
/**
* 是否末级
*/
@ExcelProperty(value = "是否末级")
private Long ifend;
}

View File

@ -0,0 +1,56 @@
package org.dromara.system.domain.vo;
import org.dromara.system.domain.TRoom;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 房间视图对象 t_room
*
* @author Lion Li
* @date 2025-09-09
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = TRoom.class)
public class TRoomVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@ExcelProperty(value = "")
private String id;
/**
* 房间名称
*/
@ExcelProperty(value = "房间名称")
private String name;
/**
* 房间GUID
*/
@ExcelProperty(value = "房间GUID")
private String roomguid;
/**
* 项目GUID
*/
@ExcelProperty(value = "项目GUID")
private String projguid;
}

View File

@ -0,0 +1,15 @@
package org.dromara.system.mapper;
import org.dromara.system.domain.TBusinessunit;
import org.dromara.system.domain.vo.TBusinessunitVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 公司Mapper接口
*
* @author Lion Li
* @date 2025-09-09
*/
public interface TBusinessunitMapper extends BaseMapperPlus<TBusinessunit, TBusinessunitVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.system.mapper;
import org.dromara.system.domain.TPaymentDetails;
import org.dromara.system.domain.vo.TPaymentDetailsVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 付款明细Mapper接口
*
* @author Lion Li
* @date 2025-09-10
*/
public interface TPaymentDetailsMapper extends BaseMapperPlus<TPaymentDetails, TPaymentDetailsVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.system.mapper;
import org.dromara.system.domain.TPeriodicpolicy;
import org.dromara.system.domain.vo.TPeriodicpolicyVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 分期方案Mapper接口
*
* @author Lion Li
* @date 2025-09-10
*/
public interface TPeriodicpolicyMapper extends BaseMapperPlus<TPeriodicpolicy, TPeriodicpolicyVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.system.mapper;
import org.dromara.system.domain.TPolicy;
import org.dromara.system.domain.vo.TPolicyVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 分期政策Mapper接口
*
* @author Lion Li
* @date 2025-09-10
*/
public interface TPolicyMapper extends BaseMapperPlus<TPolicy, TPolicyVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.system.mapper;
import org.dromara.system.domain.TProject;
import org.dromara.system.domain.vo.TProjectVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 项目Mapper接口
*
* @author Lion Li
* @date 2025-09-09
*/
public interface TProjectMapper extends BaseMapperPlus<TProject, TProjectVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.system.mapper;
import org.dromara.system.domain.TRoom;
import org.dromara.system.domain.vo.TRoomVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 房间Mapper接口
*
* @author Lion Li
* @date 2025-09-09
*/
public interface TRoomMapper extends BaseMapperPlus<TRoom, TRoomVo> {
}

View File

@ -0,0 +1,68 @@
package org.dromara.system.service;
import org.dromara.system.domain.vo.TBusinessunitVo;
import org.dromara.system.domain.bo.TBusinessunitBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* 公司Service接口
*
* @author Lion Li
* @date 2025-09-09
*/
public interface ITBusinessunitService {
/**
* 查询公司
*
* @param id 主键
* @return 公司
*/
TBusinessunitVo queryById(String id);
/**
* 分页查询公司列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 公司分页列表
*/
TableDataInfo<TBusinessunitVo> queryPageList(TBusinessunitBo bo, PageQuery pageQuery);
/**
* 查询符合条件的公司列表
*
* @param bo 查询条件
* @return 公司列表
*/
List<TBusinessunitVo> queryList(TBusinessunitBo bo);
/**
* 新增公司
*
* @param bo 公司
* @return 是否新增成功
*/
Boolean insertByBo(TBusinessunitBo bo);
/**
* 修改公司
*
* @param bo 公司
* @return 是否修改成功
*/
Boolean updateByBo(TBusinessunitBo bo);
/**
* 校验并批量删除公司信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
}

View File

@ -0,0 +1,68 @@
package org.dromara.system.service;
import org.dromara.system.domain.vo.TPaymentDetailsVo;
import org.dromara.system.domain.bo.TPaymentDetailsBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* 付款明细Service接口
*
* @author Lion Li
* @date 2025-09-10
*/
public interface ITPaymentDetailsService {
/**
* 查询付款明细
*
* @param id 主键
* @return 付款明细
*/
TPaymentDetailsVo queryById(String id);
/**
* 分页查询付款明细列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 付款明细分页列表
*/
TableDataInfo<TPaymentDetailsVo> queryPageList(TPaymentDetailsBo bo, PageQuery pageQuery);
/**
* 查询符合条件的付款明细列表
*
* @param bo 查询条件
* @return 付款明细列表
*/
List<TPaymentDetailsVo> queryList(TPaymentDetailsBo bo);
/**
* 新增付款明细
*
* @param bo 付款明细
* @return 是否新增成功
*/
Boolean insertByBo(TPaymentDetailsBo bo);
/**
* 修改付款明细
*
* @param bo 付款明细
* @return 是否修改成功
*/
Boolean updateByBo(TPaymentDetailsBo bo);
/**
* 校验并批量删除付款明细信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
}

View File

@ -0,0 +1,68 @@
package org.dromara.system.service;
import org.dromara.system.domain.vo.TPeriodicpolicyVo;
import org.dromara.system.domain.bo.TPeriodicpolicyBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* 分期方案Service接口
*
* @author Lion Li
* @date 2025-09-10
*/
public interface ITPeriodicpolicyService {
/**
* 查询分期方案
*
* @param id 主键
* @return 分期方案
*/
TPeriodicpolicyVo queryById(String id);
/**
* 分页查询分期方案列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 分期方案分页列表
*/
TableDataInfo<TPeriodicpolicyVo> queryPageList(TPeriodicpolicyBo bo, PageQuery pageQuery);
/**
* 查询符合条件的分期方案列表
*
* @param bo 查询条件
* @return 分期方案列表
*/
List<TPeriodicpolicyVo> queryList(TPeriodicpolicyBo bo);
/**
* 新增分期方案
*
* @param bo 分期方案
* @return 新增的方案ID
*/
String insertByBo(TPeriodicpolicyBo bo);
/**
* 修改分期方案
*
* @param bo 分期方案
* @return 是否修改成功
*/
Boolean updateByBo(TPeriodicpolicyBo bo);
/**
* 校验并批量删除分期方案信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
}

View File

@ -0,0 +1,68 @@
package org.dromara.system.service;
import org.dromara.system.domain.vo.TPolicyVo;
import org.dromara.system.domain.bo.TPolicyBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* 分期政策Service接口
*
* @author Lion Li
* @date 2025-09-10
*/
public interface ITPolicyService {
/**
* 查询分期政策
*
* @param id 主键
* @return 分期政策
*/
TPolicyVo queryById(String id);
/**
* 分页查询分期政策列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 分期政策分页列表
*/
TableDataInfo<TPolicyVo> queryPageList(TPolicyBo bo, PageQuery pageQuery);
/**
* 查询符合条件的分期政策列表
*
* @param bo 查询条件
* @return 分期政策列表
*/
List<TPolicyVo> queryList(TPolicyBo bo);
/**
* 新增分期政策
*
* @param bo 分期政策
* @return 是否新增成功
*/
Boolean insertByBo(TPolicyBo bo);
/**
* 修改分期政策
*
* @param bo 分期政策
* @return 是否修改成功
*/
Boolean updateByBo(TPolicyBo bo);
/**
* 校验并批量删除分期政策信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
}

View File

@ -0,0 +1,68 @@
package org.dromara.system.service;
import org.dromara.system.domain.vo.TProjectVo;
import org.dromara.system.domain.bo.TProjectBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* 项目Service接口
*
* @author Lion Li
* @date 2025-09-09
*/
public interface ITProjectService {
/**
* 查询项目
*
* @param id 主键
* @return 项目
*/
TProjectVo queryById(String id);
/**
* 分页查询项目列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目分页列表
*/
TableDataInfo<TProjectVo> queryPageList(TProjectBo bo, PageQuery pageQuery);
/**
* 查询符合条件的项目列表
*
* @param bo 查询条件
* @return 项目列表
*/
List<TProjectVo> queryList(TProjectBo bo);
/**
* 新增项目
*
* @param bo 项目
* @return 是否新增成功
*/
Boolean insertByBo(TProjectBo bo);
/**
* 修改项目
*
* @param bo 项目
* @return 是否修改成功
*/
Boolean updateByBo(TProjectBo bo);
/**
* 校验并批量删除项目信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
}

View File

@ -0,0 +1,68 @@
package org.dromara.system.service;
import org.dromara.system.domain.vo.TRoomVo;
import org.dromara.system.domain.bo.TRoomBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* 房间Service接口
*
* @author Lion Li
* @date 2025-09-09
*/
public interface ITRoomService {
/**
* 查询房间
*
* @param id 主键
* @return 房间
*/
TRoomVo queryById(String id);
/**
* 分页查询房间列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 房间分页列表
*/
TableDataInfo<TRoomVo> queryPageList(TRoomBo bo, PageQuery pageQuery);
/**
* 查询符合条件的房间列表
*
* @param bo 查询条件
* @return 房间列表
*/
List<TRoomVo> queryList(TRoomBo bo);
/**
* 新增房间
*
* @param bo 房间
* @return 是否新增成功
*/
Boolean insertByBo(TRoomBo bo);
/**
* 修改房间
*
* @param bo 房间
* @return 是否修改成功
*/
Boolean updateByBo(TRoomBo bo);
/**
* 校验并批量删除房间信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
}

View File

@ -0,0 +1,136 @@
package org.dromara.system.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.dromara.system.domain.bo.TBusinessunitBo;
import org.dromara.system.domain.vo.TBusinessunitVo;
import org.dromara.system.domain.TBusinessunit;
import org.dromara.system.mapper.TBusinessunitMapper;
import org.dromara.system.service.ITBusinessunitService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 公司Service业务层处理
*
* @author Lion Li
* @date 2025-09-09
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class TBusinessunitServiceImpl implements ITBusinessunitService {
private final TBusinessunitMapper baseMapper;
/**
* 查询公司
*
* @param id 主键
* @return 公司
*/
@Override
public TBusinessunitVo queryById(String id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询公司列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 公司分页列表
*/
@Override
public TableDataInfo<TBusinessunitVo> queryPageList(TBusinessunitBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<TBusinessunit> lqw = buildQueryWrapper(bo);
Page<TBusinessunitVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的公司列表
*
* @param bo 查询条件
* @return 公司列表
*/
@Override
public List<TBusinessunitVo> queryList(TBusinessunitBo bo) {
LambdaQueryWrapper<TBusinessunit> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<TBusinessunit> buildQueryWrapper(TBusinessunitBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<TBusinessunit> lqw = Wrappers.lambdaQuery();
lqw.orderByAsc(TBusinessunit::getId);
lqw.like(StringUtils.isNotBlank(bo.getBuname()), TBusinessunit::getBuname, bo.getBuname());
lqw.eq(StringUtils.isNotBlank(bo.getBuguid()), TBusinessunit::getBuguid, bo.getBuguid());
lqw.eq(StringUtils.isNotBlank(bo.getHierarchicalcode()), TBusinessunit::getHierarchicalcode, bo.getHierarchicalcode());
lqw.eq(StringUtils.isNotBlank(bo.getParentguid()), TBusinessunit::getParentguid, bo.getParentguid());
lqw.eq(bo.getIfend() != null, TBusinessunit::getIfend, bo.getIfend());
return lqw;
}
/**
* 新增公司
*
* @param bo 公司
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(TBusinessunitBo bo) {
TBusinessunit add = MapstructUtils.convert(bo, TBusinessunit.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改公司
*
* @param bo 公司
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(TBusinessunitBo bo) {
TBusinessunit update = MapstructUtils.convert(bo, TBusinessunit.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(TBusinessunit entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除公司信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,151 @@
package org.dromara.system.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.dromara.system.domain.bo.TPaymentDetailsBo;
import org.dromara.system.domain.vo.TPaymentDetailsVo;
import org.dromara.system.domain.TPaymentDetails;
import org.dromara.system.mapper.TPaymentDetailsMapper;
import org.dromara.system.service.ITPaymentDetailsService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 付款明细Service业务层处理
*
* @author Lion Li
* @date 2025-09-10
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class TPaymentDetailsServiceImpl implements ITPaymentDetailsService {
private final TPaymentDetailsMapper baseMapper;
/**
* 查询付款明细
*
* @param id 主键
* @return 付款明细
*/
@Override
public TPaymentDetailsVo queryById(String id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询付款明细列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 付款明细分页列表
*/
@Override
public TableDataInfo<TPaymentDetailsVo> queryPageList(TPaymentDetailsBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<TPaymentDetails> lqw = buildQueryWrapper(bo);
Page<TPaymentDetailsVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的付款明细列表
*
* @param bo 查询条件
* @return 付款明细列表
*/
@Override
public List<TPaymentDetailsVo> queryList(TPaymentDetailsBo bo) {
LambdaQueryWrapper<TPaymentDetails> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<TPaymentDetails> buildQueryWrapper(TPaymentDetailsBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<TPaymentDetails> lqw = Wrappers.lambdaQuery();
lqw.orderByAsc(TPaymentDetails::getId);
lqw.eq(bo.getPolicyid() != null, TPaymentDetails::getPolicyid, bo.getPolicyid());
lqw.like(StringUtils.isNotBlank(bo.getPolicyName()), TPaymentDetails::getPolicyName, bo.getPolicyName());
lqw.like(StringUtils.isNotBlank(bo.getBuildingName()), TPaymentDetails::getBuildingName, bo.getBuildingName());
lqw.eq(bo.getEffectiveDate() != null, TPaymentDetails::getEffectiveDate, bo.getEffectiveDate());
lqw.eq(bo.getAvailableUnits() != null, TPaymentDetails::getAvailableUnits, bo.getAvailableUnits());
lqw.eq(StringUtils.isNotBlank(bo.getCreatorid()), TPaymentDetails::getCreatorid, bo.getCreatorid());
lqw.eq(StringUtils.isNotBlank(bo.getCreator()), TPaymentDetails::getCreator, bo.getCreator());
lqw.eq(StringUtils.isNotBlank(bo.getCategory()), TPaymentDetails::getCategory, bo.getCategory());
lqw.eq(StringUtils.isNotBlank(bo.getPaymentTime()), TPaymentDetails::getPaymentTime, bo.getPaymentTime());
lqw.eq(bo.getDaysWithin() != null, TPaymentDetails::getDaysWithin, bo.getDaysWithin());
lqw.eq(bo.getMonthsWithin() != null, TPaymentDetails::getMonthsWithin, bo.getMonthsWithin());
lqw.eq(StringUtils.isNotBlank(bo.getPaymentType()), TPaymentDetails::getPaymentType, bo.getPaymentType());
lqw.like(StringUtils.isNotBlank(bo.getItemName()), TPaymentDetails::getItemName, bo.getItemName());
lqw.eq(bo.getRatio() != null, TPaymentDetails::getRatio, bo.getRatio());
lqw.eq(StringUtils.isNotBlank(bo.getCurrency()), TPaymentDetails::getCurrency, bo.getCurrency());
lqw.eq(bo.getInstallment() != null, TPaymentDetails::getInstallment, bo.getInstallment());
lqw.eq(bo.getAmount() != null, TPaymentDetails::getAmount, bo.getAmount());
lqw.eq(bo.getDeductDeposit() != null, TPaymentDetails::getDeductDeposit, bo.getDeductDeposit());
lqw.eq(bo.getCreatedAt() != null, TPaymentDetails::getCreatedAt, bo.getCreatedAt());
lqw.eq(bo.getUpdatedAt() != null, TPaymentDetails::getUpdatedAt, bo.getUpdatedAt());
return lqw;
}
/**
* 新增付款明细
*
* @param bo 付款明细
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(TPaymentDetailsBo bo) {
TPaymentDetails add = MapstructUtils.convert(bo, TPaymentDetails.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改付款明细
*
* @param bo 付款明细
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(TPaymentDetailsBo bo) {
TPaymentDetails update = MapstructUtils.convert(bo, TPaymentDetails.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(TPaymentDetails entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除付款明细信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,140 @@
package org.dromara.system.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.dromara.system.domain.bo.TPeriodicpolicyBo;
import org.dromara.system.domain.vo.TPeriodicpolicyVo;
import org.dromara.system.domain.TPeriodicpolicy;
import org.dromara.system.mapper.TPeriodicpolicyMapper;
import org.dromara.system.service.ITPeriodicpolicyService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 分期方案Service业务层处理
*
* @author Lion Li
* @date 2025-09-10
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class TPeriodicpolicyServiceImpl implements ITPeriodicpolicyService {
private final TPeriodicpolicyMapper baseMapper;
/**
* 查询分期方案
*
* @param id 主键
* @return 分期方案
*/
@Override
public TPeriodicpolicyVo queryById(String id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询分期方案列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 分期方案分页列表
*/
@Override
public TableDataInfo<TPeriodicpolicyVo> queryPageList(TPeriodicpolicyBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<TPeriodicpolicy> lqw = buildQueryWrapper(bo);
Page<TPeriodicpolicyVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的分期方案列表
*
* @param bo 查询条件
* @return 分期方案列表
*/
@Override
public List<TPeriodicpolicyVo> queryList(TPeriodicpolicyBo bo) {
LambdaQueryWrapper<TPeriodicpolicy> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<TPeriodicpolicy> buildQueryWrapper(TPeriodicpolicyBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<TPeriodicpolicy> lqw = Wrappers.lambdaQuery();
lqw.orderByAsc(TPeriodicpolicy::getId);
lqw.like(StringUtils.isNotBlank(bo.getSchemeName()), TPeriodicpolicy::getSchemeName, bo.getSchemeName());
lqw.eq(StringUtils.isNotBlank(bo.getFillingInstruction()), TPeriodicpolicy::getFillingInstruction, bo.getFillingInstruction());
lqw.eq(bo.getEffectiveDate() != null, TPeriodicpolicy::getEffectiveDate, bo.getEffectiveDate());
lqw.eq(bo.getInvalidDate() != null, TPeriodicpolicy::getInvalidDate, bo.getInvalidDate());
lqw.eq(StringUtils.isNotBlank(bo.getCreator()), TPeriodicpolicy::getCreator, bo.getCreator());
lqw.eq(bo.getCreateDate() != null, TPeriodicpolicy::getCreateDate, bo.getCreateDate());
lqw.eq(StringUtils.isNotBlank(bo.getProjguids()), TPeriodicpolicy::getProjguids, bo.getProjguids());
lqw.eq(StringUtils.isNotBlank(bo.getProjnames()), TPeriodicpolicy::getProjnames, bo.getProjnames());
lqw.eq(StringUtils.isNotBlank(bo.getApprovestatus()), TPeriodicpolicy::getApprovestatus, bo.getApprovestatus());
lqw.eq(StringUtils.isNotBlank(bo.getSchemeType()), TPeriodicpolicy::getSchemeType, bo.getSchemeType());
return lqw;
}
/**
* 新增分期方案
*
* @param bo 分期方案
* @return 是否新增成功
*/
@Override
public String insertByBo(TPeriodicpolicyBo bo) {
TPeriodicpolicy add = MapstructUtils.convert(bo, TPeriodicpolicy.class);
validEntityBeforeSave(add);
baseMapper.insert(add);
bo.setId(add.getId());
log.info("新增分期方案成功ID: {}", add.getId());
return add.getId();
}
/**
* 修改分期方案
*
* @param bo 分期方案
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(TPeriodicpolicyBo bo) {
TPeriodicpolicy update = MapstructUtils.convert(bo, TPeriodicpolicy.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(TPeriodicpolicy entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除分期方案信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,145 @@
package org.dromara.system.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.dromara.system.domain.bo.TPolicyBo;
import org.dromara.system.domain.vo.TPolicyVo;
import org.dromara.system.domain.TPolicy;
import org.dromara.system.mapper.TPolicyMapper;
import org.dromara.system.service.ITPolicyService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 分期政策Service业务层处理
*
* @author Lion Li
* @date 2025-09-10
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class TPolicyServiceImpl implements ITPolicyService {
private final TPolicyMapper baseMapper;
/**
* 查询分期政策
*
* @param id 主键
* @return 分期政策
*/
@Override
public TPolicyVo queryById(String id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询分期政策列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 分期政策分页列表
*/
@Override
public TableDataInfo<TPolicyVo> queryPageList(TPolicyBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<TPolicy> lqw = buildQueryWrapper(bo);
Page<TPolicyVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的分期政策列表
*
* @param bo 查询条件
* @return 分期政策列表
*/
@Override
public List<TPolicyVo> queryList(TPolicyBo bo) {
LambdaQueryWrapper<TPolicy> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<TPolicy> buildQueryWrapper(TPolicyBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<TPolicy> lqw = Wrappers.lambdaQuery();
lqw.orderByAsc(TPolicy::getId);
lqw.eq(bo.getPeriodicPolicyId() != null, TPolicy::getPeriodicPolicyId, bo.getPeriodicPolicyId());
lqw.like(StringUtils.isNotBlank(bo.getPolicyName()), TPolicy::getPolicyName, bo.getPolicyName());
lqw.eq(StringUtils.isNotBlank(bo.getBuildingNames()), TPolicy::getBuildingNames, bo.getBuildingNames());
lqw.eq(StringUtils.isNotBlank(bo.getBuildingIds()), TPolicy::getBuildingIds, bo.getBuildingIds());
lqw.eq(bo.getEffectiveDate() != null, TPolicy::getEffectiveDate, bo.getEffectiveDate());
lqw.eq(bo.getExpirationDate() != null, TPolicy::getExpirationDate, bo.getExpirationDate());
lqw.eq(bo.getUsableHousesCount() != null, TPolicy::getUsableHousesCount, bo.getUsableHousesCount());
lqw.eq(StringUtils.isNotBlank(bo.getCreator()), TPolicy::getCreator, bo.getCreator());
lqw.eq(bo.getCreateDate() != null, TPolicy::getCreateDate, bo.getCreateDate());
lqw.eq(StringUtils.isNotBlank(bo.getRemarks()), TPolicy::getRemarks, bo.getRemarks());
lqw.eq(StringUtils.isNotBlank(bo.getDescription()), TPolicy::getDescription, bo.getDescription());
lqw.eq(StringUtils.isNotBlank(bo.getCategory()), TPolicy::getCategory, bo.getCategory());
lqw.eq(StringUtils.isNotBlank(bo.getPaymentType()), TPolicy::getPaymentType, bo.getPaymentType());
lqw.eq(bo.getDownPaymentRatio() != null, TPolicy::getDownPaymentRatio, bo.getDownPaymentRatio());
return lqw;
}
/**
* 新增分期政策
*
* @param bo 分期政策
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(TPolicyBo bo) {
TPolicy add = MapstructUtils.convert(bo, TPolicy.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改分期政策
*
* @param bo 分期政策
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(TPolicyBo bo) {
TPolicy update = MapstructUtils.convert(bo, TPolicy.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(TPolicy entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除分期政策信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,137 @@
package org.dromara.system.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.dromara.system.domain.bo.TProjectBo;
import org.dromara.system.domain.vo.TProjectVo;
import org.dromara.system.domain.TProject;
import org.dromara.system.mapper.TProjectMapper;
import org.dromara.system.service.ITProjectService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 项目Service业务层处理
*
* @author Lion Li
* @date 2025-09-09
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class TProjectServiceImpl implements ITProjectService {
private final TProjectMapper baseMapper;
/**
* 查询项目
*
* @param id 主键
* @return 项目
*/
@Override
public TProjectVo queryById(String id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询项目列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目分页列表
*/
@Override
public TableDataInfo<TProjectVo> queryPageList(TProjectBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<TProject> lqw = buildQueryWrapper(bo);
Page<TProjectVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的项目列表
*
* @param bo 查询条件
* @return 项目列表
*/
@Override
public List<TProjectVo> queryList(TProjectBo bo) {
LambdaQueryWrapper<TProject> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<TProject> buildQueryWrapper(TProjectBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<TProject> lqw = Wrappers.lambdaQuery();
lqw.orderByAsc(TProject::getId);
lqw.like(StringUtils.isNotBlank(bo.getProjname()), TProject::getProjname, bo.getProjname());
lqw.eq(StringUtils.isNotBlank(bo.getProjguid()), TProject::getProjguid, bo.getProjguid());
lqw.eq(StringUtils.isNotBlank(bo.getBuguid()), TProject::getBuguid, bo.getBuguid());
lqw.eq(StringUtils.isNotBlank(bo.getHierarchicalcode()), TProject::getHierarchicalcode, bo.getHierarchicalcode());
lqw.eq(StringUtils.isNotBlank(bo.getParentguid()), TProject::getParentguid, bo.getParentguid());
lqw.eq(bo.getIfend() != null, TProject::getIfend, bo.getIfend());
return lqw;
}
/**
* 新增项目
*
* @param bo 项目
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(TProjectBo bo) {
TProject add = MapstructUtils.convert(bo, TProject.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改项目
*
* @param bo 项目
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(TProjectBo bo) {
TProject update = MapstructUtils.convert(bo, TProject.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(TProject entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除项目信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,134 @@
package org.dromara.system.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.dromara.system.domain.bo.TRoomBo;
import org.dromara.system.domain.vo.TRoomVo;
import org.dromara.system.domain.TRoom;
import org.dromara.system.mapper.TRoomMapper;
import org.dromara.system.service.ITRoomService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 房间Service业务层处理
*
* @author Lion Li
* @date 2025-09-09
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class TRoomServiceImpl implements ITRoomService {
private final TRoomMapper baseMapper;
/**
* 查询房间
*
* @param id 主键
* @return 房间
*/
@Override
public TRoomVo queryById(String id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询房间列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 房间分页列表
*/
@Override
public TableDataInfo<TRoomVo> queryPageList(TRoomBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<TRoom> lqw = buildQueryWrapper(bo);
Page<TRoomVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的房间列表
*
* @param bo 查询条件
* @return 房间列表
*/
@Override
public List<TRoomVo> queryList(TRoomBo bo) {
LambdaQueryWrapper<TRoom> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<TRoom> buildQueryWrapper(TRoomBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<TRoom> lqw = Wrappers.lambdaQuery();
lqw.orderByAsc(TRoom::getId);
lqw.like(StringUtils.isNotBlank(bo.getName()), TRoom::getName, bo.getName());
lqw.eq(StringUtils.isNotBlank(bo.getRoomguid()), TRoom::getRoomguid, bo.getRoomguid());
lqw.eq(StringUtils.isNotBlank(bo.getProjguid()), TRoom::getProjguid, bo.getProjguid());
return lqw;
}
/**
* 新增房间
*
* @param bo 房间
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(TRoomBo bo) {
TRoom add = MapstructUtils.convert(bo, TRoom.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改房间
*
* @param bo 房间
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(TRoomBo bo) {
TRoom update = MapstructUtils.convert(bo, TRoom.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(TRoom entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除房间信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,7 @@
<?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.dromara.system.mapper.TBusinessunitMapper">
</mapper>

View File

@ -0,0 +1,7 @@
<?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.dromara.system.mapper.TPaymentDetailsMapper">
</mapper>

View File

@ -0,0 +1,7 @@
<?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.dromara.system.mapper.TPeriodicpolicyMapper">
</mapper>

View File

@ -0,0 +1,7 @@
<?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.dromara.system.mapper.TPolicyMapper">
</mapper>

View File

@ -0,0 +1,7 @@
<?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.dromara.system.mapper.TProjectMapper">
</mapper>

View File

@ -0,0 +1,7 @@
<?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.dromara.system.mapper.TRoomMapper">
</mapper>