1、绿植租赁订单
Some checks are pending
Gitea Actions Demo / Explore-Gitea-Actions (push) Waiting to run

2、绿植租赁收费
3、绿植租赁订单养护
This commit is contained in:
dev_ljl 2025-06-30 17:21:30 +08:00
parent 75cc08fa99
commit 86503753bb
25 changed files with 2064 additions and 0 deletions

View File

@ -0,0 +1,106 @@
package org.dromara.property.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.property.domain.vo.PlantsOrderChargeVo;
import org.dromara.property.domain.bo.PlantsOrderChargeBo;
import org.dromara.property.service.IPlantsOrderChargeService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 绿植租赁-订单收费
* 前端访问路由地址为:/property/orderCharge
*
* @author mocheng
* @date 2025-06-30
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/orderCharge")
public class PlantsOrderChargeController extends BaseController {
private final IPlantsOrderChargeService plantsOrderChargeService;
/**
* 查询绿植租赁-订单收费列表
*/
@SaCheckPermission("property:orderCharge:list")
@GetMapping("/list")
public TableDataInfo<PlantsOrderChargeVo> list(PlantsOrderChargeBo bo, PageQuery pageQuery) {
return plantsOrderChargeService.queryPageList(bo, pageQuery);
}
/**
* 导出绿植租赁-订单收费列表
*/
@SaCheckPermission("property:orderCharge:export")
@Log(title = "绿植租赁-订单收费", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(PlantsOrderChargeBo bo, HttpServletResponse response) {
List<PlantsOrderChargeVo> list = plantsOrderChargeService.queryList(bo);
ExcelUtil.exportExcel(list, "绿植租赁-订单收费", PlantsOrderChargeVo.class, response);
}
/**
* 获取绿植租赁-订单收费详细信息
*
* @param id 主键
*/
@SaCheckPermission("property:orderCharge:query")
@GetMapping("/{id}")
public R<PlantsOrderChargeVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable("id") Long id) {
return R.ok(plantsOrderChargeService.queryById(id));
}
/**
* 新增绿植租赁-订单收费
*/
@SaCheckPermission("property:orderCharge:add")
@Log(title = "绿植租赁-订单收费", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody PlantsOrderChargeBo bo) {
return toAjax(plantsOrderChargeService.insertByBo(bo));
}
/**
* 修改绿植租赁-订单收费
*/
@SaCheckPermission("property:orderCharge:edit")
@Log(title = "绿植租赁-订单收费", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody PlantsOrderChargeBo bo) {
return toAjax(plantsOrderChargeService.updateByBo(bo));
}
/**
* 删除绿植租赁-订单收费
*
* @param ids 主键串
*/
@SaCheckPermission("property:orderCharge:remove")
@Log(title = "绿植租赁-订单收费", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable("ids") Long[] ids) {
return toAjax(plantsOrderChargeService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,106 @@
package org.dromara.property.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.property.domain.vo.PlantsOrderMaintainVo;
import org.dromara.property.domain.bo.PlantsOrderMaintainBo;
import org.dromara.property.service.IPlantsOrderMaintainService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 绿植租赁-订单养护管理
* 前端访问路由地址为:/property/orderMaintain
*
* @author mocheng
* @date 2025-06-30
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/orderMaintain")
public class PlantsOrderMaintainController extends BaseController {
private final IPlantsOrderMaintainService plantsOrderMaintainService;
/**
* 查询绿植租赁-订单养护管理列表
*/
@SaCheckPermission("property:orderMaintain:list")
@GetMapping("/list")
public TableDataInfo<PlantsOrderMaintainVo> list(PlantsOrderMaintainBo bo, PageQuery pageQuery) {
return plantsOrderMaintainService.queryPageList(bo, pageQuery);
}
/**
* 导出绿植租赁-订单养护管理列表
*/
@SaCheckPermission("property:orderMaintain:export")
@Log(title = "绿植租赁-订单养护管理", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(PlantsOrderMaintainBo bo, HttpServletResponse response) {
List<PlantsOrderMaintainVo> list = plantsOrderMaintainService.queryList(bo);
ExcelUtil.exportExcel(list, "绿植租赁-订单养护管理", PlantsOrderMaintainVo.class, response);
}
/**
* 获取绿植租赁-订单养护管理详细信息
*
* @param id 主键
*/
@SaCheckPermission("property:orderMaintain:query")
@GetMapping("/{id}")
public R<PlantsOrderMaintainVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable("id") Long id) {
return R.ok(plantsOrderMaintainService.queryById(id));
}
/**
* 新增绿植租赁-订单养护管理
*/
@SaCheckPermission("property:orderMaintain:add")
@Log(title = "绿植租赁-订单养护管理", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody PlantsOrderMaintainBo bo) {
return toAjax(plantsOrderMaintainService.insertByBo(bo));
}
/**
* 修改绿植租赁-订单养护管理
*/
@SaCheckPermission("property:orderMaintain:edit")
@Log(title = "绿植租赁-订单养护管理", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody PlantsOrderMaintainBo bo) {
return toAjax(plantsOrderMaintainService.updateByBo(bo));
}
/**
* 删除绿植租赁-订单养护管理
*
* @param ids 主键串
*/
@SaCheckPermission("property:orderMaintain:remove")
@Log(title = "绿植租赁-订单养护管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable("ids") Long[] ids) {
return toAjax(plantsOrderMaintainService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,106 @@
package org.dromara.property.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.property.domain.vo.PlantsRentalOrderVo;
import org.dromara.property.domain.bo.PlantsRentalOrderBo;
import org.dromara.property.service.IPlantsRentalOrderService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 绿植租赁-订单管理
* 前端访问路由地址为:/property/rentalOrder
*
* @author mocheng
* @date 2025-06-30
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/rentalOrder")
public class PlantsRentalOrderController extends BaseController {
private final IPlantsRentalOrderService plantsRentalOrderService;
/**
* 查询绿植租赁-订单管理列表
*/
@SaCheckPermission("property:rentalOrder:list")
@GetMapping("/list")
public TableDataInfo<PlantsRentalOrderVo> list(PlantsRentalOrderBo bo, PageQuery pageQuery) {
return plantsRentalOrderService.queryPageList(bo, pageQuery);
}
/**
* 导出绿植租赁-订单管理列表
*/
@SaCheckPermission("property:rentalOrder:export")
@Log(title = "绿植租赁-订单管理", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(PlantsRentalOrderBo bo, HttpServletResponse response) {
List<PlantsRentalOrderVo> list = plantsRentalOrderService.queryList(bo);
ExcelUtil.exportExcel(list, "绿植租赁-订单管理", PlantsRentalOrderVo.class, response);
}
/**
* 获取绿植租赁-订单管理详细信息
*
* @param id 主键
*/
@SaCheckPermission("property:rentalOrder:query")
@GetMapping("/{id}")
public R<PlantsRentalOrderVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable("id") Long id) {
return R.ok(plantsRentalOrderService.queryById(id));
}
/**
* 新增绿植租赁-订单管理
*/
@SaCheckPermission("property:rentalOrder:add")
@Log(title = "绿植租赁-订单管理", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody PlantsRentalOrderBo bo) {
return toAjax(plantsRentalOrderService.insertByBo(bo));
}
/**
* 修改绿植租赁-订单管理
*/
@SaCheckPermission("property:rentalOrder:edit")
@Log(title = "绿植租赁-订单管理", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody PlantsRentalOrderBo bo) {
return toAjax(plantsRentalOrderService.updateByBo(bo));
}
/**
* 删除绿植租赁-订单管理
*
* @param ids 主键串
*/
@SaCheckPermission("property:rentalOrder:remove")
@Log(title = "绿植租赁-订单管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable("ids") Long[] ids) {
return toAjax(plantsRentalOrderService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,93 @@
package org.dromara.property.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
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;
/**
* 绿植租赁-订单收费对象 plants_order_charge
*
* @author mocheng
* @date 2025-06-30
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("plants_order_charge")
public class PlantsOrderCharge extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@TableId(value = "id")
private Long id;
/**
* 订单id
*/
private Long orderId;
/**
* 租赁人id系统用户
*/
private Long userId;
/**
* 租赁人名称
*/
private String userName;
/**
* 租金
*/
private Long rent;
/**
* 押金
*/
private Long deposit;
/**
* 违约金
*/
private Long penalty;
/**
* 总金额
*/
private Long totalAmount;
/**
* 收费日期
*/
private Date chargeDate;
/**
* 支付方式
*/
private Long paymentMethod;
/**
* 开票状态
*/
private Long invoiceStatus;
/**
* 发票类型
*/
private Long invoiceType;
/**
* 收费状态
*/
private Long chargeStatus;
}

View File

@ -0,0 +1,108 @@
package org.dromara.property.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
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;
/**
* 绿植租赁-订单养护管理对象 plants_order_maintain
*
* @author mocheng
* @date 2025-06-30
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("plants_order_maintain")
public class PlantsOrderMaintain extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@TableId(value = "id")
private Long id;
/**
* 养护名称
*/
private String maintainName;
/**
* 小区id
*/
private Long communityId;
/**
* 建筑id
*/
private Long buildingId;
/**
* 楼层id
*/
private Long floorId;
/**
* 服务类型
*/
private Long serveType;
/**
* 养护周期类型
*/
private Long periodType;
/**
* 养护周期频次
*/
private Long periodFrequency;
/**
* 订单id
*/
private Long orderId;
/**
* 计划执行时间
*/
private Date startTime;
/**
* 计划完成时间
*/
private Date endTime;
/**
* 巡检结果
*/
private Long inspectResult;
/**
* 处理措施
*/
private String measure;
/**
* 客户评分
*/
private Long customerScore;
/**
* 客户反馈
*/
private String customerAdvice;
/**
* 处理状态
*/
private Long state;
}

View File

@ -0,0 +1,108 @@
package org.dromara.property.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
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;
/**
* 绿植租赁-订单管理对象 plants_rental_order
*
* @author mocheng
* @date 2025-06-30
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("plants_rental_order")
public class PlantsRentalOrder extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@TableId(value = "id")
private Long id;
/**
* 订单号
*/
private String orderNo;
/**
* 客户名称
*/
private String customerName;
/**
* 客户类型
*/
private Long customerType;
/**
* 租赁周期
*/
private Long rentalPeriod;
/**
* 租赁开始时间
*/
private Date startTime;
/**
* 租赁结束时间
*/
private Date endTime;
/**
* 应付总额
*/
private Long totalAmount;
/**
* 租赁方式
*/
private Long rentalType;
/**
* 租赁方案id
*/
private Long planId;
/**
* 绿植产品id
*/
private Long productId;
/**
* 租赁产品数量
*/
private Long productNum;
/**
* 支付状态
*/
private Long paymentStatus;
/**
* 是否续租
*/
private Long isRelet;
/**
* 合同状态
*/
private Long contractStatus;
/**
* 签署时间
*/
private Date signTime;
}

View File

@ -0,0 +1,103 @@
package org.dromara.property.domain.bo;
import org.dromara.property.domain.PlantsOrderCharge;
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;
/**
* 绿植租赁-订单收费业务对象 plants_order_charge
*
* @author mocheng
* @date 2025-06-30
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = PlantsOrderCharge.class, reverseConvertGenerate = false)
public class PlantsOrderChargeBo extends BaseEntity {
/**
* 主键
*/
private Long id;
/**
* 订单id
*/
@NotNull(message = "订单id不能为空", groups = { AddGroup.class, EditGroup.class })
private Long orderId;
/**
* 租赁人id系统用户
*/
@NotNull(message = "租赁人id系统用户不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 租赁人名称
*/
@NotBlank(message = "租赁人名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String userName;
/**
* 租金
*/
@NotNull(message = "租金不能为空", groups = { AddGroup.class, EditGroup.class })
private Long rent;
/**
* 押金
*/
@NotNull(message = "押金不能为空", groups = { AddGroup.class, EditGroup.class })
private Long deposit;
/**
* 违约金
*/
@NotNull(message = "违约金不能为空", groups = { AddGroup.class, EditGroup.class })
private Long penalty;
/**
* 总金额
*/
@NotNull(message = "总金额不能为空", groups = { AddGroup.class, EditGroup.class })
private Long totalAmount;
/**
* 收费日期
*/
@NotNull(message = "收费日期不能为空", groups = { AddGroup.class, EditGroup.class })
private Date chargeDate;
/**
* 支付方式
*/
@NotNull(message = "支付方式不能为空", groups = { AddGroup.class, EditGroup.class })
private Long paymentMethod;
/**
* 开票状态
*/
@NotNull(message = "开票状态不能为空", groups = { AddGroup.class, EditGroup.class })
private Long invoiceStatus;
/**
* 发票类型
*/
@NotNull(message = "发票类型不能为空", groups = { AddGroup.class, EditGroup.class })
private Long invoiceType;
/**
* 收费状态
*/
@NotNull(message = "收费状态不能为空", groups = { AddGroup.class, EditGroup.class })
private Long chargeStatus;
}

View File

@ -0,0 +1,116 @@
package org.dromara.property.domain.bo;
import org.dromara.property.domain.PlantsOrderMaintain;
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;
/**
* 绿植租赁-订单养护管理业务对象 plants_order_maintain
*
* @author mocheng
* @date 2025-06-30
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = PlantsOrderMaintain.class, reverseConvertGenerate = false)
public class PlantsOrderMaintainBo extends BaseEntity {
/**
* 主键
*/
private Long id;
/**
* 养护名称
*/
@NotBlank(message = "养护名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String maintainName;
/**
* 小区id
*/
@NotNull(message = "小区id不能为空", groups = { AddGroup.class, EditGroup.class })
private Long communityId;
/**
* 建筑id
*/
@NotNull(message = "建筑id不能为空", groups = { AddGroup.class, EditGroup.class })
private Long buildingId;
/**
* 楼层id
*/
@NotNull(message = "楼层id不能为空", groups = { AddGroup.class, EditGroup.class })
private Long floorId;
/**
* 服务类型
*/
@NotNull(message = "服务类型不能为空", groups = { AddGroup.class, EditGroup.class })
private Long serveType;
/**
* 养护周期类型
*/
@NotNull(message = "养护周期类型不能为空", groups = { AddGroup.class, EditGroup.class })
private Long periodType;
/**
* 养护周期频次
*/
@NotNull(message = "养护周期频次不能为空", groups = { AddGroup.class, EditGroup.class })
private Long periodFrequency;
/**
* 订单id
*/
@NotNull(message = "订单id不能为空", groups = { AddGroup.class, EditGroup.class })
private Long orderId;
/**
* 计划执行时间
*/
@NotNull(message = "计划执行时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Date startTime;
/**
* 计划完成时间
*/
@NotNull(message = "计划完成时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Date endTime;
/**
* 巡检结果
*/
private Long inspectResult;
/**
* 处理措施
*/
private String measure;
/**
* 客户评分
*/
private Long customerScore;
/**
* 客户反馈
*/
private String customerAdvice;
/**
* 处理状态
*/
private Long state;
}

View File

@ -0,0 +1,115 @@
package org.dromara.property.domain.bo;
import org.dromara.property.domain.PlantsRentalOrder;
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;
/**
* 绿植租赁-订单管理业务对象 plants_rental_order
*
* @author mocheng
* @date 2025-06-30
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = PlantsRentalOrder.class, reverseConvertGenerate = false)
public class PlantsRentalOrderBo extends BaseEntity {
/**
* 主键
*/
private Long id;
/**
* 订单号
*/
@NotBlank(message = "订单号不能为空", groups = { AddGroup.class, EditGroup.class })
private String orderNo;
/**
* 客户名称
*/
@NotBlank(message = "客户名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String customerName;
/**
* 客户类型
*/
@NotNull(message = "客户类型不能为空", groups = { AddGroup.class, EditGroup.class })
private Long customerType;
/**
* 租赁周期
*/
@NotNull(message = "租赁周期不能为空", groups = { AddGroup.class, EditGroup.class })
private Long rentalPeriod;
/**
* 租赁开始时间
*/
@NotNull(message = "租赁开始时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Date startTime;
/**
* 租赁结束时间
*/
@NotNull(message = "租赁结束时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Date endTime;
/**
* 应付总额
*/
@NotNull(message = "应付总额不能为空", groups = { AddGroup.class, EditGroup.class })
private Long totalAmount;
/**
* 租赁方式
*/
@NotNull(message = "租赁方式不能为空", groups = { AddGroup.class, EditGroup.class })
private Long rentalType;
/**
* 租赁方案id
*/
private Long planId;
/**
* 绿植产品id
*/
private Long productId;
/**
* 租赁产品数量
*/
private Long productNum;
/**
* 支付状态
*/
@NotNull(message = "支付状态不能为空", groups = { AddGroup.class, EditGroup.class })
private Long paymentStatus;
/**
* 是否续租
*/
private Long isRelet;
/**
* 合同状态
*/
private Long contractStatus;
/**
* 签署时间
*/
private Date signTime;
}

View File

@ -0,0 +1,116 @@
package org.dromara.property.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.property.domain.PlantsOrderCharge;
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;
/**
* 绿植租赁-订单收费视图对象 plants_order_charge
*
* @author mocheng
* @date 2025-06-30
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = PlantsOrderCharge.class)
public class PlantsOrderChargeVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ExcelProperty(value = "主键")
private Long id;
/**
* 订单id
*/
@ExcelProperty(value = "订单id")
private Long orderId;
/**
* 租赁人id系统用户
*/
@ExcelProperty(value = "租赁人id", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "系=统用户")
private Long userId;
/**
* 租赁人名称
*/
@ExcelProperty(value = "租赁人名称")
private String userName;
/**
* 租金
*/
@ExcelProperty(value = "租金")
private Long rent;
/**
* 押金
*/
@ExcelProperty(value = "押金")
private Long deposit;
/**
* 违约金
*/
@ExcelProperty(value = "违约金")
private Long penalty;
/**
* 总金额
*/
@ExcelProperty(value = "总金额")
private Long totalAmount;
/**
* 收费日期
*/
@ExcelProperty(value = "收费日期")
private Date chargeDate;
/**
* 支付方式
*/
@ExcelProperty(value = "支付方式", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "pro_payment_method")
private Long paymentMethod;
/**
* 开票状态
*/
@ExcelProperty(value = "开票状态", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "pro_invoice_status")
private Long invoiceStatus;
/**
* 发票类型
*/
@ExcelProperty(value = "发票类型")
private Long invoiceType;
/**
* 收费状态
*/
@ExcelProperty(value = "收费状态", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "pro_charging_status")
private Long chargeStatus;
}

View File

@ -0,0 +1,131 @@
package org.dromara.property.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.property.domain.PlantsOrderMaintain;
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;
/**
* 绿植租赁-订单养护管理视图对象 plants_order_maintain
*
* @author mocheng
* @date 2025-06-30
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = PlantsOrderMaintain.class)
public class PlantsOrderMaintainVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ExcelProperty(value = "主键")
private Long id;
/**
* 养护名称
*/
@ExcelProperty(value = "养护名称")
private String maintainName;
/**
* 小区id
*/
@ExcelProperty(value = "小区id")
private Long communityId;
/**
* 建筑id
*/
@ExcelProperty(value = "建筑id")
private Long buildingId;
/**
* 楼层id
*/
@ExcelProperty(value = "楼层id")
private Long floorId;
/**
* 服务类型
*/
@ExcelProperty(value = "服务类型")
private Long serveType;
/**
* 养护周期类型
*/
@ExcelProperty(value = "养护周期类型", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "wy_time_unit")
private Long periodType;
/**
* 养护周期频次
*/
@ExcelProperty(value = "养护周期频次")
private Long periodFrequency;
/**
* 订单id
*/
@ExcelProperty(value = "订单id")
private Long orderId;
/**
* 计划执行时间
*/
@ExcelProperty(value = "计划执行时间")
private Date startTime;
/**
* 计划完成时间
*/
@ExcelProperty(value = "计划完成时间")
private Date endTime;
/**
* 巡检结果
*/
@ExcelProperty(value = "巡检结果")
private Long inspectResult;
/**
* 处理措施
*/
@ExcelProperty(value = "处理措施")
private String measure;
/**
* 客户评分
*/
@ExcelProperty(value = "客户评分")
private Long customerScore;
/**
* 客户反馈
*/
@ExcelProperty(value = "客户反馈")
private String customerAdvice;
/**
* 处理状态
*/
@ExcelProperty(value = "处理状态")
private Long state;
}

View File

@ -0,0 +1,132 @@
package org.dromara.property.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.property.domain.PlantsRentalOrder;
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;
/**
* 绿植租赁-订单管理视图对象 plants_rental_order
*
* @author mocheng
* @date 2025-06-30
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = PlantsRentalOrder.class)
public class PlantsRentalOrderVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ExcelProperty(value = "主键")
private Long id;
/**
* 订单号
*/
@ExcelProperty(value = "订单号")
private String orderNo;
/**
* 客户名称
*/
@ExcelProperty(value = "客户名称")
private String customerName;
/**
* 客户类型
*/
@ExcelProperty(value = "客户类型", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "wy_khlx")
private Long customerType;
/**
* 租赁周期
*/
@ExcelProperty(value = "租赁周期", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "wy_time_unit")
private Long rentalPeriod;
/**
* 租赁开始时间
*/
@ExcelProperty(value = "租赁开始时间")
private Date startTime;
/**
* 租赁结束时间
*/
@ExcelProperty(value = "租赁结束时间")
private Date endTime;
/**
* 应付总额
*/
@ExcelProperty(value = "应付总额")
private Long totalAmount;
/**
* 租赁方式
*/
@ExcelProperty(value = "租赁方式")
private Long rentalType;
/**
* 租赁方案id
*/
@ExcelProperty(value = "租赁方案id")
private Long planId;
/**
* 绿植产品id
*/
@ExcelProperty(value = "绿植产品id")
private Long productId;
/**
* 租赁产品数量
*/
@ExcelProperty(value = "租赁产品数量")
private Long productNum;
/**
* 支付状态
*/
@ExcelProperty(value = "支付状态")
private Long paymentStatus;
/**
* 是否续租
*/
@ExcelProperty(value = "是否续租")
private Long isRelet;
/**
* 合同状态
*/
@ExcelProperty(value = "合同状态")
private Long contractStatus;
/**
* 签署时间
*/
@ExcelProperty(value = "签署时间")
private Date signTime;
}

View File

@ -1,6 +1,9 @@
package org.dromara.property.domain.vo;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.property.domain.TbVisitorManagement;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
@ -116,5 +119,18 @@ public class TbVisitorManagementVo implements Serializable {
@ExcelDictFormat(dictType = "wy_appointment_tatus")
private Long serveStatus;
/**
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
/**
* 更新时间
*/
@ExcelProperty(value = "更新时间")
private Date updateTime;
}

View File

@ -0,0 +1,15 @@
package org.dromara.property.mapper;
import org.dromara.property.domain.PlantsOrderCharge;
import org.dromara.property.domain.vo.PlantsOrderChargeVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 绿植租赁-订单收费Mapper接口
*
* @author mocheng
* @date 2025-06-30
*/
public interface PlantsOrderChargeMapper extends BaseMapperPlus<PlantsOrderCharge, PlantsOrderChargeVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.property.mapper;
import org.dromara.property.domain.PlantsOrderMaintain;
import org.dromara.property.domain.vo.PlantsOrderMaintainVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 绿植租赁-订单养护管理Mapper接口
*
* @author mocheng
* @date 2025-06-30
*/
public interface PlantsOrderMaintainMapper extends BaseMapperPlus<PlantsOrderMaintain, PlantsOrderMaintainVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.property.mapper;
import org.dromara.property.domain.PlantsRentalOrder;
import org.dromara.property.domain.vo.PlantsRentalOrderVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 绿植租赁-订单管理Mapper接口
*
* @author mocheng
* @date 2025-06-30
*/
public interface PlantsRentalOrderMapper extends BaseMapperPlus<PlantsRentalOrder, PlantsRentalOrderVo> {
}

View File

@ -0,0 +1,69 @@
package org.dromara.property.service;
import org.dromara.property.domain.PlantsOrderCharge;
import org.dromara.property.domain.vo.PlantsOrderChargeVo;
import org.dromara.property.domain.bo.PlantsOrderChargeBo;
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 mocheng
* @date 2025-06-30
*/
public interface IPlantsOrderChargeService {
/**
* 查询绿植租赁-订单收费
*
* @param id 主键
* @return 绿植租赁-订单收费
*/
PlantsOrderChargeVo queryById(Long id);
/**
* 分页查询绿植租赁-订单收费列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 绿植租赁-订单收费分页列表
*/
TableDataInfo<PlantsOrderChargeVo> queryPageList(PlantsOrderChargeBo bo, PageQuery pageQuery);
/**
* 查询符合条件的绿植租赁-订单收费列表
*
* @param bo 查询条件
* @return 绿植租赁-订单收费列表
*/
List<PlantsOrderChargeVo> queryList(PlantsOrderChargeBo bo);
/**
* 新增绿植租赁-订单收费
*
* @param bo 绿植租赁-订单收费
* @return 是否新增成功
*/
Boolean insertByBo(PlantsOrderChargeBo bo);
/**
* 修改绿植租赁-订单收费
*
* @param bo 绿植租赁-订单收费
* @return 是否修改成功
*/
Boolean updateByBo(PlantsOrderChargeBo bo);
/**
* 校验并批量删除绿植租赁-订单收费信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,69 @@
package org.dromara.property.service;
import org.dromara.property.domain.PlantsOrderMaintain;
import org.dromara.property.domain.vo.PlantsOrderMaintainVo;
import org.dromara.property.domain.bo.PlantsOrderMaintainBo;
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 mocheng
* @date 2025-06-30
*/
public interface IPlantsOrderMaintainService {
/**
* 查询绿植租赁-订单养护管理
*
* @param id 主键
* @return 绿植租赁-订单养护管理
*/
PlantsOrderMaintainVo queryById(Long id);
/**
* 分页查询绿植租赁-订单养护管理列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 绿植租赁-订单养护管理分页列表
*/
TableDataInfo<PlantsOrderMaintainVo> queryPageList(PlantsOrderMaintainBo bo, PageQuery pageQuery);
/**
* 查询符合条件的绿植租赁-订单养护管理列表
*
* @param bo 查询条件
* @return 绿植租赁-订单养护管理列表
*/
List<PlantsOrderMaintainVo> queryList(PlantsOrderMaintainBo bo);
/**
* 新增绿植租赁-订单养护管理
*
* @param bo 绿植租赁-订单养护管理
* @return 是否新增成功
*/
Boolean insertByBo(PlantsOrderMaintainBo bo);
/**
* 修改绿植租赁-订单养护管理
*
* @param bo 绿植租赁-订单养护管理
* @return 是否修改成功
*/
Boolean updateByBo(PlantsOrderMaintainBo bo);
/**
* 校验并批量删除绿植租赁-订单养护管理信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,69 @@
package org.dromara.property.service;
import org.dromara.property.domain.PlantsRentalOrder;
import org.dromara.property.domain.vo.PlantsRentalOrderVo;
import org.dromara.property.domain.bo.PlantsRentalOrderBo;
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 mocheng
* @date 2025-06-30
*/
public interface IPlantsRentalOrderService {
/**
* 查询绿植租赁-订单管理
*
* @param id 主键
* @return 绿植租赁-订单管理
*/
PlantsRentalOrderVo queryById(Long id);
/**
* 分页查询绿植租赁-订单管理列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 绿植租赁-订单管理分页列表
*/
TableDataInfo<PlantsRentalOrderVo> queryPageList(PlantsRentalOrderBo bo, PageQuery pageQuery);
/**
* 查询符合条件的绿植租赁-订单管理列表
*
* @param bo 查询条件
* @return 绿植租赁-订单管理列表
*/
List<PlantsRentalOrderVo> queryList(PlantsRentalOrderBo bo);
/**
* 新增绿植租赁-订单管理
*
* @param bo 绿植租赁-订单管理
* @return 是否新增成功
*/
Boolean insertByBo(PlantsRentalOrderBo bo);
/**
* 修改绿植租赁-订单管理
*
* @param bo 绿植租赁-订单管理
* @return 是否修改成功
*/
Boolean updateByBo(PlantsRentalOrderBo bo);
/**
* 校验并批量删除绿植租赁-订单管理信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,143 @@
package org.dromara.property.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.property.domain.bo.PlantsOrderChargeBo;
import org.dromara.property.domain.vo.PlantsOrderChargeVo;
import org.dromara.property.domain.PlantsOrderCharge;
import org.dromara.property.mapper.PlantsOrderChargeMapper;
import org.dromara.property.service.IPlantsOrderChargeService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 绿植租赁-订单收费Service业务层处理
*
* @author mocheng
* @date 2025-06-30
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class PlantsOrderChargeServiceImpl implements IPlantsOrderChargeService {
private final PlantsOrderChargeMapper baseMapper;
/**
* 查询绿植租赁-订单收费
*
* @param id 主键
* @return 绿植租赁-订单收费
*/
@Override
public PlantsOrderChargeVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询绿植租赁-订单收费列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 绿植租赁-订单收费分页列表
*/
@Override
public TableDataInfo<PlantsOrderChargeVo> queryPageList(PlantsOrderChargeBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<PlantsOrderCharge> lqw = buildQueryWrapper(bo);
Page<PlantsOrderChargeVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的绿植租赁-订单收费列表
*
* @param bo 查询条件
* @return 绿植租赁-订单收费列表
*/
@Override
public List<PlantsOrderChargeVo> queryList(PlantsOrderChargeBo bo) {
LambdaQueryWrapper<PlantsOrderCharge> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<PlantsOrderCharge> buildQueryWrapper(PlantsOrderChargeBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<PlantsOrderCharge> lqw = Wrappers.lambdaQuery();
lqw.orderByAsc(PlantsOrderCharge::getId);
lqw.eq(bo.getOrderId() != null, PlantsOrderCharge::getOrderId, bo.getOrderId());
lqw.eq(bo.getUserId() != null, PlantsOrderCharge::getUserId, bo.getUserId());
lqw.like(StringUtils.isNotBlank(bo.getUserName()), PlantsOrderCharge::getUserName, bo.getUserName());
lqw.eq(bo.getRent() != null, PlantsOrderCharge::getRent, bo.getRent());
lqw.eq(bo.getDeposit() != null, PlantsOrderCharge::getDeposit, bo.getDeposit());
lqw.eq(bo.getPenalty() != null, PlantsOrderCharge::getPenalty, bo.getPenalty());
lqw.eq(bo.getTotalAmount() != null, PlantsOrderCharge::getTotalAmount, bo.getTotalAmount());
lqw.eq(bo.getChargeDate() != null, PlantsOrderCharge::getChargeDate, bo.getChargeDate());
lqw.eq(bo.getPaymentMethod() != null, PlantsOrderCharge::getPaymentMethod, bo.getPaymentMethod());
lqw.eq(bo.getInvoiceStatus() != null, PlantsOrderCharge::getInvoiceStatus, bo.getInvoiceStatus());
lqw.eq(bo.getInvoiceType() != null, PlantsOrderCharge::getInvoiceType, bo.getInvoiceType());
lqw.eq(bo.getChargeStatus() != null, PlantsOrderCharge::getChargeStatus, bo.getChargeStatus());
return lqw;
}
/**
* 新增绿植租赁-订单收费
*
* @param bo 绿植租赁-订单收费
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(PlantsOrderChargeBo bo) {
PlantsOrderCharge add = MapstructUtils.convert(bo, PlantsOrderCharge.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改绿植租赁-订单收费
*
* @param bo 绿植租赁-订单收费
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(PlantsOrderChargeBo bo) {
PlantsOrderCharge update = MapstructUtils.convert(bo, PlantsOrderCharge.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(PlantsOrderCharge entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除绿植租赁-订单收费信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,146 @@
package org.dromara.property.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.property.domain.bo.PlantsOrderMaintainBo;
import org.dromara.property.domain.vo.PlantsOrderMaintainVo;
import org.dromara.property.domain.PlantsOrderMaintain;
import org.dromara.property.mapper.PlantsOrderMaintainMapper;
import org.dromara.property.service.IPlantsOrderMaintainService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 绿植租赁-订单养护管理Service业务层处理
*
* @author mocheng
* @date 2025-06-30
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class PlantsOrderMaintainServiceImpl implements IPlantsOrderMaintainService {
private final PlantsOrderMaintainMapper baseMapper;
/**
* 查询绿植租赁-订单养护管理
*
* @param id 主键
* @return 绿植租赁-订单养护管理
*/
@Override
public PlantsOrderMaintainVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询绿植租赁-订单养护管理列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 绿植租赁-订单养护管理分页列表
*/
@Override
public TableDataInfo<PlantsOrderMaintainVo> queryPageList(PlantsOrderMaintainBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<PlantsOrderMaintain> lqw = buildQueryWrapper(bo);
Page<PlantsOrderMaintainVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的绿植租赁-订单养护管理列表
*
* @param bo 查询条件
* @return 绿植租赁-订单养护管理列表
*/
@Override
public List<PlantsOrderMaintainVo> queryList(PlantsOrderMaintainBo bo) {
LambdaQueryWrapper<PlantsOrderMaintain> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<PlantsOrderMaintain> buildQueryWrapper(PlantsOrderMaintainBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<PlantsOrderMaintain> lqw = Wrappers.lambdaQuery();
lqw.orderByAsc(PlantsOrderMaintain::getId);
lqw.like(StringUtils.isNotBlank(bo.getMaintainName()), PlantsOrderMaintain::getMaintainName, bo.getMaintainName());
lqw.eq(bo.getCommunityId() != null, PlantsOrderMaintain::getCommunityId, bo.getCommunityId());
lqw.eq(bo.getBuildingId() != null, PlantsOrderMaintain::getBuildingId, bo.getBuildingId());
lqw.eq(bo.getFloorId() != null, PlantsOrderMaintain::getFloorId, bo.getFloorId());
lqw.eq(bo.getServeType() != null, PlantsOrderMaintain::getServeType, bo.getServeType());
lqw.eq(bo.getPeriodType() != null, PlantsOrderMaintain::getPeriodType, bo.getPeriodType());
lqw.eq(bo.getPeriodFrequency() != null, PlantsOrderMaintain::getPeriodFrequency, bo.getPeriodFrequency());
lqw.eq(bo.getOrderId() != null, PlantsOrderMaintain::getOrderId, bo.getOrderId());
lqw.eq(bo.getStartTime() != null, PlantsOrderMaintain::getStartTime, bo.getStartTime());
lqw.eq(bo.getEndTime() != null, PlantsOrderMaintain::getEndTime, bo.getEndTime());
lqw.eq(bo.getInspectResult() != null, PlantsOrderMaintain::getInspectResult, bo.getInspectResult());
lqw.eq(StringUtils.isNotBlank(bo.getMeasure()), PlantsOrderMaintain::getMeasure, bo.getMeasure());
lqw.eq(bo.getCustomerScore() != null, PlantsOrderMaintain::getCustomerScore, bo.getCustomerScore());
lqw.eq(StringUtils.isNotBlank(bo.getCustomerAdvice()), PlantsOrderMaintain::getCustomerAdvice, bo.getCustomerAdvice());
lqw.eq(bo.getState() != null, PlantsOrderMaintain::getState, bo.getState());
return lqw;
}
/**
* 新增绿植租赁-订单养护管理
*
* @param bo 绿植租赁-订单养护管理
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(PlantsOrderMaintainBo bo) {
PlantsOrderMaintain add = MapstructUtils.convert(bo, PlantsOrderMaintain.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改绿植租赁-订单养护管理
*
* @param bo 绿植租赁-订单养护管理
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(PlantsOrderMaintainBo bo) {
PlantsOrderMaintain update = MapstructUtils.convert(bo, PlantsOrderMaintain.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(PlantsOrderMaintain entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除绿植租赁-订单养护管理信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,146 @@
package org.dromara.property.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.property.domain.bo.PlantsRentalOrderBo;
import org.dromara.property.domain.vo.PlantsRentalOrderVo;
import org.dromara.property.domain.PlantsRentalOrder;
import org.dromara.property.mapper.PlantsRentalOrderMapper;
import org.dromara.property.service.IPlantsRentalOrderService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 绿植租赁-订单管理Service业务层处理
*
* @author mocheng
* @date 2025-06-30
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class PlantsRentalOrderServiceImpl implements IPlantsRentalOrderService {
private final PlantsRentalOrderMapper baseMapper;
/**
* 查询绿植租赁-订单管理
*
* @param id 主键
* @return 绿植租赁-订单管理
*/
@Override
public PlantsRentalOrderVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询绿植租赁-订单管理列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 绿植租赁-订单管理分页列表
*/
@Override
public TableDataInfo<PlantsRentalOrderVo> queryPageList(PlantsRentalOrderBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<PlantsRentalOrder> lqw = buildQueryWrapper(bo);
Page<PlantsRentalOrderVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的绿植租赁-订单管理列表
*
* @param bo 查询条件
* @return 绿植租赁-订单管理列表
*/
@Override
public List<PlantsRentalOrderVo> queryList(PlantsRentalOrderBo bo) {
LambdaQueryWrapper<PlantsRentalOrder> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<PlantsRentalOrder> buildQueryWrapper(PlantsRentalOrderBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<PlantsRentalOrder> lqw = Wrappers.lambdaQuery();
lqw.orderByAsc(PlantsRentalOrder::getId);
lqw.eq(StringUtils.isNotBlank(bo.getOrderNo()), PlantsRentalOrder::getOrderNo, bo.getOrderNo());
lqw.like(StringUtils.isNotBlank(bo.getCustomerName()), PlantsRentalOrder::getCustomerName, bo.getCustomerName());
lqw.eq(bo.getCustomerType() != null, PlantsRentalOrder::getCustomerType, bo.getCustomerType());
lqw.eq(bo.getRentalPeriod() != null, PlantsRentalOrder::getRentalPeriod, bo.getRentalPeriod());
lqw.eq(bo.getStartTime() != null, PlantsRentalOrder::getStartTime, bo.getStartTime());
lqw.eq(bo.getEndTime() != null, PlantsRentalOrder::getEndTime, bo.getEndTime());
lqw.eq(bo.getTotalAmount() != null, PlantsRentalOrder::getTotalAmount, bo.getTotalAmount());
lqw.eq(bo.getRentalType() != null, PlantsRentalOrder::getRentalType, bo.getRentalType());
lqw.eq(bo.getPlanId() != null, PlantsRentalOrder::getPlanId, bo.getPlanId());
lqw.eq(bo.getProductId() != null, PlantsRentalOrder::getProductId, bo.getProductId());
lqw.eq(bo.getProductNum() != null, PlantsRentalOrder::getProductNum, bo.getProductNum());
lqw.eq(bo.getPaymentStatus() != null, PlantsRentalOrder::getPaymentStatus, bo.getPaymentStatus());
lqw.eq(bo.getIsRelet() != null, PlantsRentalOrder::getIsRelet, bo.getIsRelet());
lqw.eq(bo.getContractStatus() != null, PlantsRentalOrder::getContractStatus, bo.getContractStatus());
lqw.eq(bo.getSignTime() != null, PlantsRentalOrder::getSignTime, bo.getSignTime());
return lqw;
}
/**
* 新增绿植租赁-订单管理
*
* @param bo 绿植租赁-订单管理
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(PlantsRentalOrderBo bo) {
PlantsRentalOrder add = MapstructUtils.convert(bo, PlantsRentalOrder.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改绿植租赁-订单管理
*
* @param bo 绿植租赁-订单管理
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(PlantsRentalOrderBo bo) {
PlantsRentalOrder update = MapstructUtils.convert(bo, PlantsRentalOrder.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(PlantsRentalOrder entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除绿植租赁-订单管理信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> 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.property.mapper.PlantsOrderChargeMapper">
</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.property.mapper.PlantsOrderMaintainMapper">
</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.property.mapper.PlantsRentalOrderMapper">
</mapper>