新增费用功能
This commit is contained in:
@@ -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.CostCarChargeVo;
|
||||
import org.dromara.property.domain.bo.CostCarChargeBo;
|
||||
import org.dromara.property.service.ICostCarChargeService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 费用-车辆收费
|
||||
* 前端访问路由地址为:/property/carCharge
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/carCharge")
|
||||
public class CostCarChargeController extends BaseController {
|
||||
|
||||
private final ICostCarChargeService costCarChargeService;
|
||||
|
||||
/**
|
||||
* 查询费用-车辆收费列表
|
||||
*/
|
||||
@SaCheckPermission("property:carCharge:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CostCarChargeVo> list(CostCarChargeBo bo, PageQuery pageQuery) {
|
||||
return costCarChargeService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出费用-车辆收费列表
|
||||
*/
|
||||
@SaCheckPermission("property:carCharge:export")
|
||||
@Log(title = "费用-车辆收费", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CostCarChargeBo bo, HttpServletResponse response) {
|
||||
List<CostCarChargeVo> list = costCarChargeService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "费用-车辆收费", CostCarChargeVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取费用-车辆收费详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("property:carCharge:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CostCarChargeVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(costCarChargeService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增费用-车辆收费
|
||||
*/
|
||||
@SaCheckPermission("property:carCharge:add")
|
||||
@Log(title = "费用-车辆收费", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody CostCarChargeBo bo) {
|
||||
return toAjax(costCarChargeService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改费用-车辆收费
|
||||
*/
|
||||
@SaCheckPermission("property:carCharge:edit")
|
||||
@Log(title = "费用-车辆收费", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody CostCarChargeBo bo) {
|
||||
return toAjax(costCarChargeService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除费用-车辆收费
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("property:carCharge:remove")
|
||||
@Log(title = "费用-车辆收费", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(costCarChargeService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
}
|
@@ -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.CostHouseChargeVo;
|
||||
import org.dromara.property.domain.bo.CostHouseChargeBo;
|
||||
import org.dromara.property.service.ICostHouseChargeService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 房屋收费
|
||||
* 前端访问路由地址为:/property/houseCharge
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/houseCharge")
|
||||
public class CostHouseChargeController extends BaseController {
|
||||
|
||||
private final ICostHouseChargeService costHouseChargeService;
|
||||
|
||||
/**
|
||||
* 查询房屋收费列表
|
||||
*/
|
||||
@SaCheckPermission("property:houseCharge:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CostHouseChargeVo> list(CostHouseChargeBo bo, PageQuery pageQuery) {
|
||||
return costHouseChargeService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出房屋收费列表
|
||||
*/
|
||||
@SaCheckPermission("property:houseCharge:export")
|
||||
@Log(title = "房屋收费", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CostHouseChargeBo bo, HttpServletResponse response) {
|
||||
List<CostHouseChargeVo> list = costHouseChargeService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "房屋收费", CostHouseChargeVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取房屋收费详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("property:houseCharge:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CostHouseChargeVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(costHouseChargeService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增房屋收费
|
||||
*/
|
||||
@SaCheckPermission("property:houseCharge:add")
|
||||
@Log(title = "房屋收费", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody CostHouseChargeBo bo) {
|
||||
return toAjax(costHouseChargeService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改房屋收费
|
||||
*/
|
||||
@SaCheckPermission("property:houseCharge:edit")
|
||||
@Log(title = "房屋收费", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody CostHouseChargeBo bo) {
|
||||
return toAjax(costHouseChargeService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除房屋收费
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("property:houseCharge:remove")
|
||||
@Log(title = "房屋收费", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(costHouseChargeService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
}
|
@@ -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.CostItemsVo;
|
||||
import org.dromara.property.domain.bo.CostItemsBo;
|
||||
import org.dromara.property.service.ICostItemsService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 费用项设置
|
||||
* 前端访问路由地址为:/property/costItems
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/costItems")
|
||||
public class CostItemsController extends BaseController {
|
||||
|
||||
private final ICostItemsService costItemsService;
|
||||
|
||||
/**
|
||||
* 查询费用项设置列表
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CostItemsVo> list(CostItemsBo bo, PageQuery pageQuery) {
|
||||
return costItemsService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出费用项设置列表
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:export")
|
||||
@Log(title = "费用项设置", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CostItemsBo bo, HttpServletResponse response) {
|
||||
List<CostItemsVo> list = costItemsService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "费用项设置", CostItemsVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取费用项设置详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CostItemsVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(costItemsService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增费用项设置
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:add")
|
||||
@Log(title = "费用项设置", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody CostItemsBo bo) {
|
||||
return toAjax(costItemsService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改费用项设置
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:edit")
|
||||
@Log(title = "费用项设置", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody CostItemsBo bo) {
|
||||
return toAjax(costItemsService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除费用项设置
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:remove")
|
||||
@Log(title = "费用项设置", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(costItemsService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
}
|
@@ -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.CostMeterTypeVo;
|
||||
import org.dromara.property.domain.bo.CostMeterTypeBo;
|
||||
import org.dromara.property.service.ICostMeterTypeService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 抄表类型
|
||||
* 前端访问路由地址为:/property/meterReadingType
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/meterReadingType")
|
||||
public class CostMeterTypeController extends BaseController {
|
||||
|
||||
private final ICostMeterTypeService costMeterTypeService;
|
||||
|
||||
/**
|
||||
* 查询抄表类型列表
|
||||
*/
|
||||
@SaCheckPermission("property:meterReadingType:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CostMeterTypeVo> list(CostMeterTypeBo bo, PageQuery pageQuery) {
|
||||
return costMeterTypeService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出抄表类型列表
|
||||
*/
|
||||
@SaCheckPermission("property:meterReadingType:export")
|
||||
@Log(title = "抄表类型", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CostMeterTypeBo bo, HttpServletResponse response) {
|
||||
List<CostMeterTypeVo> list = costMeterTypeService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "抄表类型", CostMeterTypeVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取抄表类型详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("property:meterReadingType:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CostMeterTypeVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(costMeterTypeService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增抄表类型
|
||||
*/
|
||||
@SaCheckPermission("property:meterReadingType:add")
|
||||
@Log(title = "抄表类型", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody CostMeterTypeBo bo) {
|
||||
return toAjax(costMeterTypeService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改抄表类型
|
||||
*/
|
||||
@SaCheckPermission("property:meterReadingType:edit")
|
||||
@Log(title = "抄表类型", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody CostMeterTypeBo bo) {
|
||||
return toAjax(costMeterTypeService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除抄表类型
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("property:meterReadingType:remove")
|
||||
@Log(title = "抄表类型", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(costMeterTypeService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
}
|
@@ -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.CostMeterWaterVo;
|
||||
import org.dromara.property.domain.bo.CostMeterWaterBo;
|
||||
import org.dromara.property.service.ICostMeterWaterService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 费用-水电抄
|
||||
* 前端访问路由地址为:/system/meterWater
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/meterWater")
|
||||
public class CostMeterWaterController extends BaseController {
|
||||
|
||||
private final ICostMeterWaterService costMeterWaterService;
|
||||
|
||||
/**
|
||||
* 查询费用-水电抄列表
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CostMeterWaterVo> list(CostMeterWaterBo bo, PageQuery pageQuery) {
|
||||
return costMeterWaterService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出费用-水电抄列表
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:export")
|
||||
@Log(title = "费用-水电抄", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CostMeterWaterBo bo, HttpServletResponse response) {
|
||||
List<CostMeterWaterVo> list = costMeterWaterService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "费用-水电抄", CostMeterWaterVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取费用-水电抄详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CostMeterWaterVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(costMeterWaterService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增费用-水电抄
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:add")
|
||||
@Log(title = "费用-水电抄", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody CostMeterWaterBo bo) {
|
||||
return toAjax(costMeterWaterService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改费用-水电抄
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:edit")
|
||||
@Log(title = "费用-水电抄", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody CostMeterWaterBo bo) {
|
||||
return toAjax(costMeterWaterService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除费用-水电抄
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:remove")
|
||||
@Log(title = "费用-水电抄", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(costMeterWaterService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
}
|
@@ -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.dromara.property.domain.bo.CostPayFeeAuditBo;
|
||||
import org.dromara.property.domain.vo.CostPayFeeAuditVo;
|
||||
import org.dromara.property.service.ICostPayFeeAuditService;
|
||||
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.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 费用-缴费审核
|
||||
* 前端访问路由地址为:/system/payFeeAudit
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/payFeeAudit")
|
||||
public class CostPayFeeAuditController extends BaseController {
|
||||
|
||||
private final ICostPayFeeAuditService costPayFeeAuditService;
|
||||
|
||||
/**
|
||||
* 查询费用-缴费审核列表
|
||||
*/
|
||||
@SaCheckPermission("system:payFeeAudit:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CostPayFeeAuditVo> list(CostPayFeeAuditBo bo, PageQuery pageQuery) {
|
||||
return costPayFeeAuditService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出费用-缴费审核列表
|
||||
*/
|
||||
@SaCheckPermission("system:payFeeAudit:export")
|
||||
@Log(title = "费用-缴费审核", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CostPayFeeAuditBo bo, HttpServletResponse response) {
|
||||
List<CostPayFeeAuditVo> list = costPayFeeAuditService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "费用-缴费审核", CostPayFeeAuditVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取费用-缴费审核详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("system:payFeeAudit:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CostPayFeeAuditVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(costPayFeeAuditService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增费用-缴费审核
|
||||
*/
|
||||
@SaCheckPermission("system:payFeeAudit:add")
|
||||
@Log(title = "费用-缴费审核", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody CostPayFeeAuditBo bo) {
|
||||
return toAjax(costPayFeeAuditService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改费用-缴费审核
|
||||
*/
|
||||
@SaCheckPermission("system:payFeeAudit:edit")
|
||||
@Log(title = "费用-缴费审核", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody CostPayFeeAuditBo bo) {
|
||||
return toAjax(costPayFeeAuditService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除费用-缴费审核
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("system:payFeeAudit:remove")
|
||||
@Log(title = "费用-缴费审核", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(costPayFeeAuditService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
}
|
@@ -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.dromara.property.domain.bo.CostReturnPayFeeBo;
|
||||
import org.dromara.property.domain.vo.CostReturnPayFeeVo;
|
||||
import org.dromara.property.service.ICostReturnPayFeeService;
|
||||
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.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 费用-抄类型
|
||||
* 前端访问路由地址为:/system/returnPayFee
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/returnPayFee")
|
||||
public class CostReturnPayFeeController extends BaseController {
|
||||
|
||||
private final ICostReturnPayFeeService costReturnPayFeeService;
|
||||
|
||||
/**
|
||||
* 查询费用-抄类型列表
|
||||
*/
|
||||
@SaCheckPermission("system:returnPayFee:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CostReturnPayFeeVo> list(CostReturnPayFeeBo bo, PageQuery pageQuery) {
|
||||
return costReturnPayFeeService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出费用-抄类型列表
|
||||
*/
|
||||
@SaCheckPermission("system:returnPayFee:export")
|
||||
@Log(title = "费用-抄类型", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CostReturnPayFeeBo bo, HttpServletResponse response) {
|
||||
List<CostReturnPayFeeVo> list = costReturnPayFeeService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "费用-抄类型", CostReturnPayFeeVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取费用-抄类型详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("system:returnPayFee:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CostReturnPayFeeVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(costReturnPayFeeService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增费用-抄类型
|
||||
*/
|
||||
@SaCheckPermission("system:returnPayFee:add")
|
||||
@Log(title = "费用-抄类型", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody CostReturnPayFeeBo bo) {
|
||||
return toAjax(costReturnPayFeeService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改费用-抄类型
|
||||
*/
|
||||
@SaCheckPermission("system:returnPayFee:edit")
|
||||
@Log(title = "费用-抄类型", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody CostReturnPayFeeBo bo) {
|
||||
return toAjax(costReturnPayFeeService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除费用-抄类型
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("system:returnPayFee:remove")
|
||||
@Log(title = "费用-抄类型", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(costReturnPayFeeService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
}
|
@@ -6,6 +6,7 @@ import lombok.RequiredArgsConstructor;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.*;
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import org.dromara.property.domain.vo.MachineDetailVo;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
@@ -64,7 +65,7 @@ public class MachineController extends BaseController {
|
||||
*/
|
||||
@SaCheckPermission("property:machine:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<MachineVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
public R<MachineDetailVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(machineService.queryById(id));
|
||||
}
|
||||
|
@@ -0,0 +1,82 @@
|
||||
package org.dromara.property.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.io.Serial;
|
||||
|
||||
/**
|
||||
* 费用-车辆收费对象 cost_car_charge
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("cost_car_charge")
|
||||
public class CostCarCharge extends TenantEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 车牌号
|
||||
*/
|
||||
private String carNumber;
|
||||
|
||||
/**
|
||||
* 业主
|
||||
*/
|
||||
private Long personId;
|
||||
|
||||
/**
|
||||
* 楼层
|
||||
*/
|
||||
private Long floorId;
|
||||
|
||||
/**
|
||||
* 车位
|
||||
*/
|
||||
private String location;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 收费项目
|
||||
*/
|
||||
private Long costItemsId;
|
||||
|
||||
/**
|
||||
* 计费开始时间
|
||||
*/
|
||||
private Date starTime;
|
||||
|
||||
/**
|
||||
* 计费结束时间
|
||||
*/
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,83 @@
|
||||
package org.dromara.property.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;
|
||||
|
||||
/**
|
||||
* 房屋收费对象 cost_house_charge
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("cost_house_charge")
|
||||
public class CostHouseCharge extends TenantEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 房屋
|
||||
*/
|
||||
private Long roomId;
|
||||
|
||||
/**
|
||||
* 收费项目
|
||||
*/
|
||||
private Long costItemsId;
|
||||
|
||||
/**
|
||||
* 支付方式
|
||||
*/
|
||||
private String payType;
|
||||
|
||||
/**
|
||||
* 支付周期
|
||||
*/
|
||||
private String chargeCycle;
|
||||
|
||||
/**
|
||||
* 应收金额
|
||||
*/
|
||||
private Long amountReceivable;
|
||||
|
||||
/**
|
||||
* 计费开始时间
|
||||
*/
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 计费结束时间
|
||||
*/
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,96 @@
|
||||
package org.dromara.property.domain;
|
||||
|
||||
import org.dromara.common.tenant.core.TenantEntity;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 费用项设置对象 costItemSetting
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("costItemSetting")
|
||||
public class CostItems extends TenantEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 费用类型
|
||||
*/
|
||||
private String costType;
|
||||
|
||||
/**
|
||||
* 收费项目
|
||||
*/
|
||||
private String chargeItem;
|
||||
|
||||
/**
|
||||
* 费用标识
|
||||
*/
|
||||
private String costMark;
|
||||
|
||||
/**
|
||||
* 付费类型
|
||||
*/
|
||||
private String paymentType;
|
||||
|
||||
/**
|
||||
* 缴费周期(月)
|
||||
*/
|
||||
private Long chargeCycle;
|
||||
|
||||
/**
|
||||
* 是否手机缴费
|
||||
*/
|
||||
private String isMobilePay;
|
||||
|
||||
/**
|
||||
* 进位方式
|
||||
*/
|
||||
private String roundingMode;
|
||||
|
||||
/**
|
||||
* 保留小数
|
||||
*/
|
||||
private String currencyDecimals;
|
||||
|
||||
/**
|
||||
* 启用状态
|
||||
*/
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 计算公式
|
||||
*/
|
||||
private String formula;
|
||||
|
||||
/**
|
||||
* 计费单价
|
||||
*/
|
||||
private Long unitPrice;
|
||||
|
||||
/**
|
||||
* 附加费
|
||||
*/
|
||||
private Long surcharge;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,51 @@
|
||||
package org.dromara.property.domain;
|
||||
|
||||
import org.dromara.common.tenant.core.TenantEntity;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 抄表类型对象 meterReadingType
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("meterReadingType")
|
||||
public class CostMeterType extends TenantEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 抄表类型
|
||||
*/
|
||||
private String meterType;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,79 @@
|
||||
package org.dromara.property.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;
|
||||
|
||||
/**
|
||||
* 费用-水电抄对象 cost_meter_water
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("cost_meter_water")
|
||||
public class CostMeterWater extends TenantEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 费用类型id
|
||||
*/
|
||||
private Long itemId;
|
||||
|
||||
/**
|
||||
* 抄表类型id
|
||||
*/
|
||||
private Long meterTypeId;
|
||||
|
||||
/**
|
||||
* 对象名称
|
||||
*/
|
||||
private String objName;
|
||||
|
||||
/**
|
||||
* 本期度数
|
||||
*/
|
||||
private String curDegrees;
|
||||
|
||||
/**
|
||||
* 上期度数
|
||||
*/
|
||||
private String preDegrees;
|
||||
|
||||
/**
|
||||
* 上期读表时间
|
||||
|
||||
*/
|
||||
private Date preReadingTime;
|
||||
|
||||
/**
|
||||
* 本期读表时间
|
||||
*/
|
||||
private Date curReadingTime;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,84 @@
|
||||
package org.dromara.property.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.io.Serial;
|
||||
|
||||
/**
|
||||
* 费用-缴费审核对象 cost_pay_fee_audit
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("cost_pay_fee_audit")
|
||||
public class CostPayFeeAudit extends TenantEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 房屋收费id
|
||||
*/
|
||||
private Long houseChargeId;
|
||||
|
||||
/**
|
||||
* 费用项目id
|
||||
*/
|
||||
private Long itemId;
|
||||
|
||||
/**
|
||||
* 缴费开始时间
|
||||
*/
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 缴费结束时间
|
||||
*/
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 实付金额
|
||||
*/
|
||||
private String receivedAmount;
|
||||
|
||||
/**
|
||||
* 应收金额
|
||||
*/
|
||||
private Long receivableAmount;
|
||||
|
||||
/**
|
||||
* 缴费时间
|
||||
|
||||
|
||||
*/
|
||||
private Date payTime;
|
||||
|
||||
/**
|
||||
* 审核状态
|
||||
*/
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,83 @@
|
||||
package org.dromara.property.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;
|
||||
|
||||
/**
|
||||
* 费用-抄类型对象 cost_return_pay_fee
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("cost_return_pay_fee")
|
||||
public class CostReturnPayFee extends TenantEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 退款单号
|
||||
*/
|
||||
private String returnNo;
|
||||
|
||||
/**
|
||||
* 支付单号
|
||||
*/
|
||||
private String payNo;
|
||||
|
||||
/**
|
||||
* 退款原因
|
||||
*/
|
||||
private String reason;
|
||||
|
||||
/**
|
||||
* 费用类型id
|
||||
*/
|
||||
private Long itemId;
|
||||
|
||||
/**
|
||||
* 业主id
|
||||
*/
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 支付金额
|
||||
*/
|
||||
private Long payAcount;
|
||||
|
||||
/**
|
||||
* 支付时间
|
||||
*/
|
||||
private Date payTime;
|
||||
|
||||
/**
|
||||
* 退费状态
|
||||
*/
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -4,6 +4,8 @@ import org.dromara.common.tenant.core.TenantEntity;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
@@ -57,7 +59,7 @@ public class Machine extends TenantEntity {
|
||||
/**
|
||||
* 采购价格
|
||||
*/
|
||||
private Long purchasePrice;
|
||||
private BigDecimal purchasePrice;
|
||||
|
||||
/**
|
||||
* 启用时间
|
||||
|
@@ -0,0 +1,84 @@
|
||||
package org.dromara.property.domain.bo;
|
||||
|
||||
import org.dromara.property.domain.CostCarCharge;
|
||||
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;
|
||||
|
||||
/**
|
||||
* 费用-车辆收费业务对象 cost_car_charge
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = CostCarCharge.class, reverseConvertGenerate = false)
|
||||
public class CostCarChargeBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 车牌号
|
||||
*/
|
||||
@NotBlank(message = "车牌号不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String carNumber;
|
||||
|
||||
/**
|
||||
* 业主
|
||||
*/
|
||||
private Long personId;
|
||||
|
||||
/**
|
||||
* 楼层
|
||||
*/
|
||||
@NotNull(message = "楼层不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long floorId;
|
||||
|
||||
/**
|
||||
* 车位
|
||||
*/
|
||||
private String location;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 收费项目
|
||||
*/
|
||||
private Long costItemsId;
|
||||
|
||||
/**
|
||||
* 计费开始时间
|
||||
*/
|
||||
private Date starTime;
|
||||
|
||||
/**
|
||||
* 计费结束时间
|
||||
*/
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,84 @@
|
||||
package org.dromara.property.domain.bo;
|
||||
|
||||
import org.dromara.property.domain.CostHouseCharge;
|
||||
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;
|
||||
|
||||
/**
|
||||
* 房屋收费业务对象 cost_house_charge
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = CostHouseCharge.class, reverseConvertGenerate = false)
|
||||
public class CostHouseChargeBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 房屋
|
||||
*/
|
||||
@NotNull(message = "房屋不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long roomId;
|
||||
|
||||
/**
|
||||
* 收费项目
|
||||
*/
|
||||
@NotNull(message = "收费项目不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long costItemsId;
|
||||
|
||||
/**
|
||||
* 支付方式
|
||||
*/
|
||||
private String payType;
|
||||
|
||||
/**
|
||||
* 支付周期
|
||||
*/
|
||||
private String chargeCycle;
|
||||
|
||||
/**
|
||||
* 应收金额
|
||||
*/
|
||||
private Long amountReceivable;
|
||||
|
||||
/**
|
||||
* 计费开始时间
|
||||
*/
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 计费结束时间
|
||||
*/
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,99 @@
|
||||
package org.dromara.property.domain.bo;
|
||||
|
||||
import org.dromara.property.domain.CostItems;
|
||||
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.*;
|
||||
|
||||
/**
|
||||
* 费用项设置业务对象 costItemSetting
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = CostItems.class, reverseConvertGenerate = false)
|
||||
public class CostItemsBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 费用类型
|
||||
*/
|
||||
@NotBlank(message = "费用类型不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String costType;
|
||||
|
||||
/**
|
||||
* 收费项目
|
||||
*/
|
||||
@NotBlank(message = "收费项目不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String chargeItem;
|
||||
|
||||
/**
|
||||
* 费用标识
|
||||
*/
|
||||
@NotBlank(message = "费用标识不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String costMark;
|
||||
|
||||
/**
|
||||
* 付费类型
|
||||
*/
|
||||
@NotBlank(message = "付费类型不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String paymentType;
|
||||
|
||||
/**
|
||||
* 缴费周期(月)
|
||||
*/
|
||||
private Long chargeCycle;
|
||||
|
||||
/**
|
||||
* 是否手机缴费
|
||||
*/
|
||||
private String isMobilePay;
|
||||
|
||||
/**
|
||||
* 进位方式
|
||||
*/
|
||||
private String roundingMode;
|
||||
|
||||
/**
|
||||
* 保留小数
|
||||
*/
|
||||
private String currencyDecimals;
|
||||
|
||||
/**
|
||||
* 启用状态
|
||||
*/
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 计算公式
|
||||
*/
|
||||
private String formula;
|
||||
|
||||
/**
|
||||
* 计费单价
|
||||
*/
|
||||
private Long unitPrice;
|
||||
|
||||
/**
|
||||
* 附加费
|
||||
*/
|
||||
private Long surcharge;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,52 @@
|
||||
package org.dromara.property.domain.bo;
|
||||
|
||||
import org.dromara.property.domain.CostMeterType;
|
||||
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.*;
|
||||
|
||||
/**
|
||||
* 抄表类型业务对象 meterReadingType
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = CostMeterType.class, reverseConvertGenerate = false)
|
||||
public class CostMeterTypeBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 抄表类型
|
||||
*/
|
||||
@NotBlank(message = "抄表类型不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String meterType;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
@NotBlank(message = "名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,86 @@
|
||||
package org.dromara.property.domain.bo;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
import org.dromara.property.domain.CostMeterWater;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 费用-水电抄业务对象 cost_meter_water
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = CostMeterWater.class, reverseConvertGenerate = false)
|
||||
public class CostMeterWaterBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 费用类型id
|
||||
*/
|
||||
@NotNull(message = "费用类型id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long itemId;
|
||||
|
||||
/**
|
||||
* 抄表类型id
|
||||
*/
|
||||
@NotNull(message = "抄表类型id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long meterTypeId;
|
||||
|
||||
/**
|
||||
* 对象名称
|
||||
*/
|
||||
@NotBlank(message = "对象名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String objName;
|
||||
|
||||
/**
|
||||
* 本期度数
|
||||
*/
|
||||
@NotBlank(message = "本期度数不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String curDegrees;
|
||||
|
||||
/**
|
||||
* 上期度数
|
||||
*/
|
||||
@NotBlank(message = "上期度数不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String preDegrees;
|
||||
|
||||
/**
|
||||
* 上期读表时间
|
||||
|
||||
*/
|
||||
@NotNull(message = "上期读表时间不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Date preReadingTime;
|
||||
|
||||
/**
|
||||
* 本期读表时间
|
||||
*/
|
||||
@NotNull(message = "本期读表时间不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Date curReadingTime;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,92 @@
|
||||
package org.dromara.property.domain.bo;
|
||||
|
||||
|
||||
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 org.dromara.property.domain.CostPayFeeAudit;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 费用-缴费审核业务对象 cost_pay_fee_audit
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = CostPayFeeAudit.class, reverseConvertGenerate = false)
|
||||
public class CostPayFeeAuditBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 房屋收费id
|
||||
*/
|
||||
@NotNull(message = "房屋收费id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long houseChargeId;
|
||||
|
||||
/**
|
||||
* 费用项目id
|
||||
*/
|
||||
@NotNull(message = "费用项目id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long itemId;
|
||||
|
||||
/**
|
||||
* 缴费开始时间
|
||||
*/
|
||||
@NotNull(message = "缴费开始时间不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 缴费结束时间
|
||||
*/
|
||||
@NotNull(message = "缴费结束时间不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 实付金额
|
||||
*/
|
||||
private String receivedAmount;
|
||||
|
||||
/**
|
||||
* 应收金额
|
||||
*/
|
||||
@NotNull(message = "应收金额不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long receivableAmount;
|
||||
|
||||
/**
|
||||
* 缴费时间
|
||||
|
||||
|
||||
*/
|
||||
@NotNull(message = "缴费时间不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Date payTime;
|
||||
|
||||
/**
|
||||
* 审核状态
|
||||
*/
|
||||
@NotBlank(message = "审核状态不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,87 @@
|
||||
package org.dromara.property.domain.bo;
|
||||
|
||||
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 org.dromara.property.domain.CostReturnPayFee;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 费用-抄类型业务对象 cost_return_pay_fee
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = CostReturnPayFee.class, reverseConvertGenerate = false)
|
||||
public class CostReturnPayFeeBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 退款单号
|
||||
*/
|
||||
@NotBlank(message = "退款单号不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String returnNo;
|
||||
|
||||
/**
|
||||
* 支付单号
|
||||
*/
|
||||
private String payNo;
|
||||
|
||||
/**
|
||||
* 退款原因
|
||||
*/
|
||||
@NotBlank(message = "退款原因不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String reason;
|
||||
|
||||
/**
|
||||
* 费用类型id
|
||||
*/
|
||||
@NotNull(message = "费用类型id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long itemId;
|
||||
|
||||
/**
|
||||
* 业主id
|
||||
*/
|
||||
@NotNull(message = "业主id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 支付金额
|
||||
*/
|
||||
private Long payAcount;
|
||||
|
||||
/**
|
||||
* 支付时间
|
||||
*/
|
||||
@NotNull(message = "支付时间不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Date payTime;
|
||||
|
||||
/**
|
||||
* 退费状态
|
||||
*/
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -8,6 +8,8 @@ import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
@@ -61,7 +63,7 @@ public class MachineBo extends BaseEntity {
|
||||
* 采购价格
|
||||
*/
|
||||
@NotNull(message = "采购价格不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long purchasePrice;
|
||||
private BigDecimal purchasePrice;
|
||||
|
||||
/**
|
||||
* 启用时间
|
||||
|
@@ -0,0 +1,101 @@
|
||||
package org.dromara.property.domain.vo;
|
||||
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import org.dromara.property.domain.CostCarCharge;
|
||||
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;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 费用-车辆收费视图对象 cost_car_charge
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = CostCarCharge.class)
|
||||
public class CostCarChargeVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 车牌号
|
||||
*/
|
||||
@ExcelProperty(value = "车牌号")
|
||||
private String carNumber;
|
||||
|
||||
/**
|
||||
* 业主
|
||||
*/
|
||||
@ExcelProperty(value = "业主")
|
||||
private Long personId;
|
||||
|
||||
/**
|
||||
* 楼层
|
||||
*/
|
||||
@ExcelProperty(value = "楼层")
|
||||
private Long floorId;
|
||||
|
||||
/**
|
||||
* 车位
|
||||
*/
|
||||
@ExcelProperty(value = "车位")
|
||||
private String location;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
@ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(dictType = "wy_cszt")
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 收费项目
|
||||
*/
|
||||
@ExcelProperty(value = "收费项目")
|
||||
private Long costItemsId;
|
||||
|
||||
/**
|
||||
* 计费开始时间
|
||||
*/
|
||||
@ExcelProperty(value = "计费开始时间")
|
||||
private Date starTime;
|
||||
|
||||
/**
|
||||
* 计费结束时间
|
||||
*/
|
||||
@ExcelProperty(value = "计费结束时间")
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
@ExcelProperty(value = "说明")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
@ExcelProperty(value = "搜索值")
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,100 @@
|
||||
package org.dromara.property.domain.vo;
|
||||
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import org.dromara.property.domain.CostHouseCharge;
|
||||
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;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 房屋收费视图对象 cost_house_charge
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = CostHouseCharge.class)
|
||||
public class CostHouseChargeVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 房屋
|
||||
*/
|
||||
@ExcelProperty(value = "房屋")
|
||||
private Long roomId;
|
||||
|
||||
/**
|
||||
* 收费项目
|
||||
*/
|
||||
@ExcelProperty(value = "收费项目")
|
||||
private Long costItemsId;
|
||||
|
||||
/**
|
||||
* 支付方式
|
||||
*/
|
||||
@ExcelProperty(value = "支付方式")
|
||||
private String payType;
|
||||
|
||||
/**
|
||||
* 支付周期
|
||||
*/
|
||||
@ExcelProperty(value = "支付周期")
|
||||
private String chargeCycle;
|
||||
|
||||
/**
|
||||
* 应收金额
|
||||
*/
|
||||
@ExcelProperty(value = "应收金额")
|
||||
private Long amountReceivable;
|
||||
|
||||
/**
|
||||
* 计费开始时间
|
||||
*/
|
||||
@ExcelProperty(value = "计费开始时间")
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 计费结束时间
|
||||
*/
|
||||
@ExcelProperty(value = "计费结束时间")
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
@ExcelProperty(value = "状态")
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
@ExcelProperty(value = "说明")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
@ExcelProperty(value = "搜索值")
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,118 @@
|
||||
package org.dromara.property.domain.vo;
|
||||
|
||||
import org.dromara.property.domain.CostItems;
|
||||
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;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 费用项设置视图对象 costItemSetting
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = CostItems.class)
|
||||
public class CostItemsVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 费用类型
|
||||
*/
|
||||
@ExcelProperty(value = "费用类型", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(dictType = "pro_expense_type")
|
||||
private String costType;
|
||||
|
||||
/**
|
||||
* 收费项目
|
||||
*/
|
||||
@ExcelProperty(value = "收费项目")
|
||||
private String chargeItem;
|
||||
|
||||
/**
|
||||
* 费用标识
|
||||
*/
|
||||
@ExcelProperty(value = "费用标识")
|
||||
private String costMark;
|
||||
|
||||
/**
|
||||
* 付费类型
|
||||
*/
|
||||
@ExcelProperty(value = "付费类型")
|
||||
private String paymentType;
|
||||
|
||||
/**
|
||||
* 缴费周期(月)
|
||||
*/
|
||||
@ExcelProperty(value = "缴费周期", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "月=")
|
||||
private Long chargeCycle;
|
||||
|
||||
/**
|
||||
* 是否手机缴费
|
||||
*/
|
||||
@ExcelProperty(value = "是否手机缴费")
|
||||
private String isMobilePay;
|
||||
|
||||
/**
|
||||
* 进位方式
|
||||
*/
|
||||
@ExcelProperty(value = "进位方式")
|
||||
private String roundingMode;
|
||||
|
||||
/**
|
||||
* 保留小数
|
||||
*/
|
||||
@ExcelProperty(value = "保留小数")
|
||||
private String currencyDecimals;
|
||||
|
||||
/**
|
||||
* 启用状态
|
||||
*/
|
||||
@ExcelProperty(value = "启用状态")
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 计算公式
|
||||
*/
|
||||
@ExcelProperty(value = "计算公式")
|
||||
private String formula;
|
||||
|
||||
/**
|
||||
* 计费单价
|
||||
*/
|
||||
@ExcelProperty(value = "计费单价")
|
||||
private Long unitPrice;
|
||||
|
||||
/**
|
||||
* 附加费
|
||||
*/
|
||||
@ExcelProperty(value = "附加费")
|
||||
private Long surcharge;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
@ExcelProperty(value = "搜索值")
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,62 @@
|
||||
package org.dromara.property.domain.vo;
|
||||
|
||||
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import cn.idev.excel.annotation.ExcelProperty;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.dromara.common.excel.annotation.ExcelDictFormat;
|
||||
import org.dromara.common.excel.convert.ExcelDictConvert;
|
||||
import org.dromara.property.domain.CostMeterType;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 抄表类型视图对象 meterReadingType
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = CostMeterType.class)
|
||||
public class CostMeterTypeVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 抄表类型
|
||||
*/
|
||||
@ExcelProperty(value = "抄表类型", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(dictType = "meter_reading_type")
|
||||
private String meterType;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
@ExcelProperty(value = "名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
@ExcelProperty(value = "说明")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
@ExcelProperty(value = "搜索值")
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,91 @@
|
||||
package org.dromara.property.domain.vo;
|
||||
|
||||
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import cn.idev.excel.annotation.ExcelProperty;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.dromara.property.domain.CostMeterWater;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 费用-水电抄视图对象 cost_meter_water
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = CostMeterWater.class)
|
||||
public class CostMeterWaterVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 费用类型id
|
||||
*/
|
||||
@ExcelProperty(value = "费用类型id")
|
||||
private Long itemId;
|
||||
|
||||
/**
|
||||
* 抄表类型id
|
||||
*/
|
||||
@ExcelProperty(value = "抄表类型id")
|
||||
private Long meterTypeId;
|
||||
|
||||
/**
|
||||
* 对象名称
|
||||
*/
|
||||
@ExcelProperty(value = "对象名称")
|
||||
private String objName;
|
||||
|
||||
/**
|
||||
* 本期度数
|
||||
*/
|
||||
@ExcelProperty(value = "本期度数")
|
||||
private String curDegrees;
|
||||
|
||||
/**
|
||||
* 上期度数
|
||||
*/
|
||||
@ExcelProperty(value = "上期度数")
|
||||
private String preDegrees;
|
||||
|
||||
/**
|
||||
* 上期读表时间
|
||||
|
||||
*/
|
||||
@ExcelProperty(value = "上期读表时间")
|
||||
private Date preReadingTime;
|
||||
|
||||
/**
|
||||
* 本期读表时间
|
||||
*/
|
||||
@ExcelProperty(value = "本期读表时间")
|
||||
private Date curReadingTime;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
@ExcelProperty(value = "搜索值")
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,98 @@
|
||||
package org.dromara.property.domain.vo;
|
||||
|
||||
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import cn.idev.excel.annotation.ExcelProperty;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.dromara.property.domain.CostPayFeeAudit;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 费用-缴费审核视图对象 cost_pay_fee_audit
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = CostPayFeeAudit.class)
|
||||
public class CostPayFeeAuditVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 房屋收费id
|
||||
*/
|
||||
@ExcelProperty(value = "房屋收费id")
|
||||
private Long houseChargeId;
|
||||
|
||||
/**
|
||||
* 费用项目id
|
||||
*/
|
||||
@ExcelProperty(value = "费用项目id")
|
||||
private Long itemId;
|
||||
|
||||
/**
|
||||
* 缴费开始时间
|
||||
*/
|
||||
@ExcelProperty(value = "缴费开始时间")
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 缴费结束时间
|
||||
*/
|
||||
@ExcelProperty(value = "缴费结束时间")
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 实付金额
|
||||
*/
|
||||
@ExcelProperty(value = "实付金额")
|
||||
private String receivedAmount;
|
||||
|
||||
/**
|
||||
* 应收金额
|
||||
*/
|
||||
@ExcelProperty(value = "应收金额")
|
||||
private Long receivableAmount;
|
||||
|
||||
/**
|
||||
* 缴费时间
|
||||
|
||||
|
||||
*/
|
||||
@ExcelProperty(value = "缴费时间")
|
||||
private Date payTime;
|
||||
|
||||
/**
|
||||
* 审核状态
|
||||
*/
|
||||
@ExcelProperty(value = "审核状态")
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
@ExcelProperty(value = "搜索值")
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,96 @@
|
||||
package org.dromara.property.domain.vo;
|
||||
|
||||
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import cn.idev.excel.annotation.ExcelProperty;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.dromara.property.domain.CostReturnPayFee;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 费用-抄类型视图对象 cost_return_pay_fee
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = CostReturnPayFee.class)
|
||||
public class CostReturnPayFeeVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 退款单号
|
||||
*/
|
||||
@ExcelProperty(value = "退款单号")
|
||||
private String returnNo;
|
||||
|
||||
/**
|
||||
* 支付单号
|
||||
*/
|
||||
@ExcelProperty(value = "支付单号")
|
||||
private String payNo;
|
||||
|
||||
/**
|
||||
* 退款原因
|
||||
*/
|
||||
@ExcelProperty(value = "退款原因")
|
||||
private String reason;
|
||||
|
||||
/**
|
||||
* 费用类型id
|
||||
*/
|
||||
@ExcelProperty(value = "费用类型id")
|
||||
private Long itemId;
|
||||
|
||||
/**
|
||||
* 业主id
|
||||
*/
|
||||
@ExcelProperty(value = "业主id")
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 支付金额
|
||||
*/
|
||||
@ExcelProperty(value = "支付金额")
|
||||
private Long payAcount;
|
||||
|
||||
/**
|
||||
* 支付时间
|
||||
*/
|
||||
@ExcelProperty(value = "支付时间")
|
||||
private Date payTime;
|
||||
|
||||
/**
|
||||
* 退费状态
|
||||
*/
|
||||
@ExcelProperty(value = "退费状态")
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
@ExcelProperty(value = "说明")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
@ExcelProperty(value = "搜索值")
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,126 @@
|
||||
package org.dromara.property.domain.vo;
|
||||
|
||||
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import cn.idev.excel.annotation.ExcelProperty;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.dromara.common.excel.annotation.ExcelDictFormat;
|
||||
import org.dromara.common.excel.convert.ExcelDictConvert;
|
||||
import org.dromara.property.domain.Machine;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
/**
|
||||
* 设备列表视图对象 machine
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-16
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = Machine.class)
|
||||
public class MachineDetailVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
@ExcelProperty(value = "设备名称")
|
||||
private String machineName;
|
||||
|
||||
/**
|
||||
* 设备编码
|
||||
*/
|
||||
@ExcelProperty(value = "设备编码")
|
||||
private String machineCode;
|
||||
|
||||
/**
|
||||
* 设备品牌
|
||||
*/
|
||||
@ExcelProperty(value = "设备品牌")
|
||||
private String machineBrand;
|
||||
|
||||
/**
|
||||
* 设备类型
|
||||
*/
|
||||
@ExcelProperty(value = "设备类型")
|
||||
private Long machineTypeId;
|
||||
/**
|
||||
* 设备类型名称
|
||||
*/
|
||||
@ExcelProperty(value = "设备类型名称")
|
||||
private String machineTypeName;
|
||||
|
||||
/**
|
||||
* 位置详情
|
||||
*/
|
||||
@ExcelProperty(value = "位置详情")
|
||||
private Long locationId;
|
||||
/**
|
||||
* 位置详情名称
|
||||
*/
|
||||
@ExcelProperty(value = "位置详情名称")
|
||||
private String locationName;
|
||||
|
||||
/**
|
||||
* 采购价格
|
||||
*/
|
||||
@ExcelProperty(value = "采购价格")
|
||||
private BigDecimal purchasePrice;
|
||||
|
||||
/**
|
||||
* 启用时间
|
||||
*/
|
||||
@ExcelProperty(value = "启用时间")
|
||||
private Date activationTime;
|
||||
|
||||
/**
|
||||
* 保修截至时间
|
||||
*/
|
||||
@ExcelProperty(value = "保修截至时间")
|
||||
private Date deadline;
|
||||
|
||||
/**
|
||||
* 使用年限(年)
|
||||
*/
|
||||
@ExcelProperty(value = "使用年限", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "年=")
|
||||
private Long serviceLife;
|
||||
|
||||
/**
|
||||
* 保修周期
|
||||
*/
|
||||
@ExcelProperty(value = "保修周期")
|
||||
private String maintenanceCycle;
|
||||
|
||||
/**
|
||||
* 使用状态
|
||||
*/
|
||||
@ExcelProperty(value = "使用状态")
|
||||
private String state;
|
||||
|
||||
/**
|
||||
* 责任人
|
||||
*/
|
||||
@ExcelProperty(value = "责任人")
|
||||
private Long personId;
|
||||
/**
|
||||
* 责任人名称
|
||||
*/
|
||||
@ExcelProperty(value = "责任人名称")
|
||||
private String personName;
|
||||
|
||||
|
||||
}
|
@@ -39,7 +39,10 @@ public class MachineMaintainTaskDetailVo implements Serializable {
|
||||
*/
|
||||
@ExcelProperty(value = "任务id")
|
||||
private Long taskId;
|
||||
|
||||
/**
|
||||
* 任务编号
|
||||
*/
|
||||
private String maintainTaskNo;
|
||||
/**
|
||||
* 位置编号
|
||||
*/
|
||||
|
@@ -1,5 +1,6 @@
|
||||
package org.dromara.property.domain.vo;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import org.dromara.property.domain.Machine;
|
||||
@@ -70,7 +71,7 @@ public class MachineVo implements Serializable {
|
||||
* 采购价格
|
||||
*/
|
||||
@ExcelProperty(value = "采购价格")
|
||||
private Long purchasePrice;
|
||||
private BigDecimal purchasePrice;
|
||||
|
||||
/**
|
||||
* 启用时间
|
||||
|
@@ -0,0 +1,17 @@
|
||||
package org.dromara.property.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.dromara.property.domain.CostCarCharge;
|
||||
import org.dromara.property.domain.vo.CostCarChargeVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 费用-车辆收费Mapper接口
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Mapper
|
||||
public interface CostCarChargeMapper extends BaseMapperPlus<CostCarCharge, CostCarChargeVo> {
|
||||
|
||||
}
|
@@ -0,0 +1,17 @@
|
||||
package org.dromara.property.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.dromara.property.domain.CostHouseCharge;
|
||||
import org.dromara.property.domain.vo.CostHouseChargeVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 房屋收费Mapper接口
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Mapper
|
||||
public interface CostHouseChargeMapper extends BaseMapperPlus<CostHouseCharge, CostHouseChargeVo> {
|
||||
|
||||
}
|
@@ -0,0 +1,17 @@
|
||||
package org.dromara.property.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.dromara.property.domain.CostItems;
|
||||
import org.dromara.property.domain.vo.CostItemsVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 费用项设置Mapper接口
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Mapper
|
||||
public interface CostItemsMapper extends BaseMapperPlus<CostItems, CostItemsVo> {
|
||||
|
||||
}
|
@@ -0,0 +1,17 @@
|
||||
package org.dromara.property.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.dromara.property.domain.CostMeterType;
|
||||
import org.dromara.property.domain.vo.CostMeterTypeVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 抄表类型Mapper接口
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Mapper
|
||||
public interface CostMeterTypeMapper extends BaseMapperPlus<CostMeterType, CostMeterTypeVo> {
|
||||
|
||||
}
|
@@ -0,0 +1,17 @@
|
||||
package org.dromara.property.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.dromara.property.domain.CostMeterWater;
|
||||
import org.dromara.property.domain.vo.CostMeterWaterVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 费用-水电抄Mapper接口
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Mapper
|
||||
public interface CostMeterWaterMapper extends BaseMapperPlus<CostMeterWater, CostMeterWaterVo> {
|
||||
|
||||
}
|
@@ -0,0 +1,17 @@
|
||||
package org.dromara.property.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.dromara.property.domain.CostPayFeeAudit;
|
||||
import org.dromara.property.domain.vo.CostPayFeeAuditVo;
|
||||
|
||||
/**
|
||||
* 费用-缴费审核Mapper接口
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Mapper
|
||||
public interface CostPayFeeAuditMapper extends BaseMapperPlus<CostPayFeeAudit, CostPayFeeAuditVo> {
|
||||
|
||||
}
|
@@ -0,0 +1,16 @@
|
||||
package org.dromara.property.mapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.dromara.property.domain.CostReturnPayFee;
|
||||
import org.dromara.property.domain.vo.CostReturnPayFeeVo;
|
||||
|
||||
/**
|
||||
* 费用-抄类型Mapper接口
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Mapper
|
||||
public interface CostReturnPayFeeMapper extends BaseMapperPlus<CostReturnPayFee, CostReturnPayFeeVo> {
|
||||
|
||||
}
|
@@ -1,5 +1,6 @@
|
||||
package org.dromara.property.mapper;
|
||||
|
||||
import com.github.yulichang.base.MPJBaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.dromara.property.domain.MachineMaintainTaskDetail;
|
||||
import org.dromara.property.domain.vo.MachineMaintainTaskDetailVo;
|
||||
@@ -13,6 +14,6 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
* @date 2025-07-16
|
||||
*/
|
||||
@Mapper
|
||||
public interface MachineMaintainTaskDetailMapper extends BaseMapperPlus<MachineMaintainTaskDetail, MachineMaintainTaskDetailVo> {
|
||||
public interface MachineMaintainTaskDetailMapper extends MPJBaseMapper<MachineMaintainTaskDetail> {
|
||||
|
||||
}
|
||||
|
@@ -1,5 +1,6 @@
|
||||
package org.dromara.property.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.dromara.property.domain.Machine;
|
||||
import org.dromara.property.domain.vo.MachineVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
@@ -10,6 +11,7 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
* @author mocheng
|
||||
* @date 2025-07-16
|
||||
*/
|
||||
public interface MachineMapper extends BaseMapperPlus<Machine, MachineVo> {
|
||||
@Mapper
|
||||
public interface MachineMapper extends BaseMapperPlus<Machine, MachineVo> {
|
||||
|
||||
}
|
||||
|
@@ -0,0 +1,69 @@
|
||||
package org.dromara.property.service;
|
||||
|
||||
import org.dromara.property.domain.CostCarCharge;
|
||||
import org.dromara.property.domain.vo.CostCarChargeVo;
|
||||
import org.dromara.property.domain.bo.CostCarChargeBo;
|
||||
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-07-17
|
||||
*/
|
||||
public interface ICostCarChargeService {
|
||||
|
||||
/**
|
||||
* 查询费用-车辆收费
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 费用-车辆收费
|
||||
*/
|
||||
CostCarChargeVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询费用-车辆收费列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 费用-车辆收费分页列表
|
||||
*/
|
||||
TableDataInfo<CostCarChargeVo> queryPageList(CostCarChargeBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的费用-车辆收费列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 费用-车辆收费列表
|
||||
*/
|
||||
List<CostCarChargeVo> queryList(CostCarChargeBo bo);
|
||||
|
||||
/**
|
||||
* 新增费用-车辆收费
|
||||
*
|
||||
* @param bo 费用-车辆收费
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(CostCarChargeBo bo);
|
||||
|
||||
/**
|
||||
* 修改费用-车辆收费
|
||||
*
|
||||
* @param bo 费用-车辆收费
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(CostCarChargeBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除费用-车辆收费信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
@@ -0,0 +1,69 @@
|
||||
package org.dromara.property.service;
|
||||
|
||||
import org.dromara.property.domain.CostHouseCharge;
|
||||
import org.dromara.property.domain.vo.CostHouseChargeVo;
|
||||
import org.dromara.property.domain.bo.CostHouseChargeBo;
|
||||
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-07-17
|
||||
*/
|
||||
public interface ICostHouseChargeService {
|
||||
|
||||
/**
|
||||
* 查询房屋收费
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 房屋收费
|
||||
*/
|
||||
CostHouseChargeVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询房屋收费列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 房屋收费分页列表
|
||||
*/
|
||||
TableDataInfo<CostHouseChargeVo> queryPageList(CostHouseChargeBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的房屋收费列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 房屋收费列表
|
||||
*/
|
||||
List<CostHouseChargeVo> queryList(CostHouseChargeBo bo);
|
||||
|
||||
/**
|
||||
* 新增房屋收费
|
||||
*
|
||||
* @param bo 房屋收费
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(CostHouseChargeBo bo);
|
||||
|
||||
/**
|
||||
* 修改房屋收费
|
||||
*
|
||||
* @param bo 房屋收费
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(CostHouseChargeBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除房屋收费信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
@@ -0,0 +1,67 @@
|
||||
package org.dromara.property.service;
|
||||
import org.dromara.property.domain.vo.CostItemsVo;
|
||||
import org.dromara.property.domain.bo.CostItemsBo;
|
||||
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-07-17
|
||||
*/
|
||||
public interface ICostItemsService {
|
||||
|
||||
/**
|
||||
* 查询费用项设置
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 费用项设置
|
||||
*/
|
||||
CostItemsVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询费用项设置列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 费用项设置分页列表
|
||||
*/
|
||||
TableDataInfo<CostItemsVo> queryPageList(CostItemsBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的费用项设置列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 费用项设置列表
|
||||
*/
|
||||
List<CostItemsVo> queryList(CostItemsBo bo);
|
||||
|
||||
/**
|
||||
* 新增费用项设置
|
||||
*
|
||||
* @param bo 费用项设置
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(CostItemsBo bo);
|
||||
|
||||
/**
|
||||
* 修改费用项设置
|
||||
*
|
||||
* @param bo 费用项设置
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(CostItemsBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除费用项设置信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
@@ -0,0 +1,69 @@
|
||||
package org.dromara.property.service;
|
||||
|
||||
import org.dromara.property.domain.CostMeterType;
|
||||
import org.dromara.property.domain.vo.CostMeterTypeVo;
|
||||
import org.dromara.property.domain.bo.CostMeterTypeBo;
|
||||
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-07-17
|
||||
*/
|
||||
public interface ICostMeterTypeService {
|
||||
|
||||
/**
|
||||
* 查询抄表类型
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 抄表类型
|
||||
*/
|
||||
CostMeterTypeVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询抄表类型列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 抄表类型分页列表
|
||||
*/
|
||||
TableDataInfo<CostMeterTypeVo> queryPageList(CostMeterTypeBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的抄表类型列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 抄表类型列表
|
||||
*/
|
||||
List<CostMeterTypeVo> queryList(CostMeterTypeBo bo);
|
||||
|
||||
/**
|
||||
* 新增抄表类型
|
||||
*
|
||||
* @param bo 抄表类型
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(CostMeterTypeBo bo);
|
||||
|
||||
/**
|
||||
* 修改抄表类型
|
||||
*
|
||||
* @param bo 抄表类型
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(CostMeterTypeBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除抄表类型信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
@@ -0,0 +1,69 @@
|
||||
package org.dromara.property.service;
|
||||
|
||||
import org.dromara.property.domain.CostMeterWater;
|
||||
import org.dromara.property.domain.vo.CostMeterWaterVo;
|
||||
import org.dromara.property.domain.bo.CostMeterWaterBo;
|
||||
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-07-17
|
||||
*/
|
||||
public interface ICostMeterWaterService {
|
||||
|
||||
/**
|
||||
* 查询费用-水电抄
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 费用-水电抄
|
||||
*/
|
||||
CostMeterWaterVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询费用-水电抄列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 费用-水电抄分页列表
|
||||
*/
|
||||
TableDataInfo<CostMeterWaterVo> queryPageList(CostMeterWaterBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的费用-水电抄列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 费用-水电抄列表
|
||||
*/
|
||||
List<CostMeterWaterVo> queryList(CostMeterWaterBo bo);
|
||||
|
||||
/**
|
||||
* 新增费用-水电抄
|
||||
*
|
||||
* @param bo 费用-水电抄
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(CostMeterWaterBo bo);
|
||||
|
||||
/**
|
||||
* 修改费用-水电抄
|
||||
*
|
||||
* @param bo 费用-水电抄
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(CostMeterWaterBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除费用-水电抄信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
@@ -0,0 +1,67 @@
|
||||
package org.dromara.property.service;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.property.domain.bo.CostPayFeeAuditBo;
|
||||
import org.dromara.property.domain.vo.CostPayFeeAuditVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 费用-缴费审核Service接口
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
public interface ICostPayFeeAuditService {
|
||||
|
||||
/**
|
||||
* 查询费用-缴费审核
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 费用-缴费审核
|
||||
*/
|
||||
CostPayFeeAuditVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询费用-缴费审核列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 费用-缴费审核分页列表
|
||||
*/
|
||||
TableDataInfo<CostPayFeeAuditVo> queryPageList(CostPayFeeAuditBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的费用-缴费审核列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 费用-缴费审核列表
|
||||
*/
|
||||
List<CostPayFeeAuditVo> queryList(CostPayFeeAuditBo bo);
|
||||
|
||||
/**
|
||||
* 新增费用-缴费审核
|
||||
*
|
||||
* @param bo 费用-缴费审核
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(CostPayFeeAuditBo bo);
|
||||
|
||||
/**
|
||||
* 修改费用-缴费审核
|
||||
*
|
||||
* @param bo 费用-缴费审核
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(CostPayFeeAuditBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除费用-缴费审核信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
@@ -0,0 +1,68 @@
|
||||
package org.dromara.property.service;
|
||||
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.property.domain.bo.CostReturnPayFeeBo;
|
||||
import org.dromara.property.domain.vo.CostReturnPayFeeVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 费用-抄类型Service接口
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
public interface ICostReturnPayFeeService {
|
||||
|
||||
/**
|
||||
* 查询费用-抄类型
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 费用-抄类型
|
||||
*/
|
||||
CostReturnPayFeeVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询费用-抄类型列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 费用-抄类型分页列表
|
||||
*/
|
||||
TableDataInfo<CostReturnPayFeeVo> queryPageList(CostReturnPayFeeBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的费用-抄类型列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 费用-抄类型列表
|
||||
*/
|
||||
List<CostReturnPayFeeVo> queryList(CostReturnPayFeeBo bo);
|
||||
|
||||
/**
|
||||
* 新增费用-抄类型
|
||||
*
|
||||
* @param bo 费用-抄类型
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(CostReturnPayFeeBo bo);
|
||||
|
||||
/**
|
||||
* 修改费用-抄类型
|
||||
*
|
||||
* @param bo 费用-抄类型
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(CostReturnPayFeeBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除费用-抄类型信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
@@ -1,6 +1,7 @@
|
||||
package org.dromara.property.service;
|
||||
|
||||
import org.dromara.property.domain.Machine;
|
||||
import org.dromara.property.domain.vo.MachineDetailVo;
|
||||
import org.dromara.property.domain.vo.MachineVo;
|
||||
import org.dromara.property.domain.bo.MachineBo;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
@@ -23,7 +24,7 @@ public interface IMachineService {
|
||||
* @param id 主键
|
||||
* @return 设备列表
|
||||
*/
|
||||
MachineVo queryById(Long id);
|
||||
MachineDetailVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询设备列表列表
|
||||
|
@@ -0,0 +1,140 @@
|
||||
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.CostCarChargeBo;
|
||||
import org.dromara.property.domain.vo.CostCarChargeVo;
|
||||
import org.dromara.property.domain.CostCarCharge;
|
||||
import org.dromara.property.mapper.CostCarChargeMapper;
|
||||
import org.dromara.property.service.ICostCarChargeService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 费用-车辆收费Service业务层处理
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class CostCarChargeServiceImpl implements ICostCarChargeService {
|
||||
|
||||
private final CostCarChargeMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询费用-车辆收费
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 费用-车辆收费
|
||||
*/
|
||||
@Override
|
||||
public CostCarChargeVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询费用-车辆收费列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 费用-车辆收费分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<CostCarChargeVo> queryPageList(CostCarChargeBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<CostCarCharge> lqw = buildQueryWrapper(bo);
|
||||
Page<CostCarChargeVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的费用-车辆收费列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 费用-车辆收费列表
|
||||
*/
|
||||
@Override
|
||||
public List<CostCarChargeVo> queryList(CostCarChargeBo bo) {
|
||||
LambdaQueryWrapper<CostCarCharge> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<CostCarCharge> buildQueryWrapper(CostCarChargeBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<CostCarCharge> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByAsc(CostCarCharge::getId);
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getCarNumber()), CostCarCharge::getCarNumber, bo.getCarNumber());
|
||||
lqw.eq(bo.getPersonId() != null, CostCarCharge::getPersonId, bo.getPersonId());
|
||||
lqw.eq(bo.getFloorId() != null, CostCarCharge::getFloorId, bo.getFloorId());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getLocation()), CostCarCharge::getLocation, bo.getLocation());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getState()), CostCarCharge::getState, bo.getState());
|
||||
lqw.eq(bo.getCostItemsId() != null, CostCarCharge::getCostItemsId, bo.getCostItemsId());
|
||||
lqw.eq(bo.getStarTime() != null, CostCarCharge::getStarTime, bo.getStarTime());
|
||||
lqw.eq(bo.getEndTime() != null, CostCarCharge::getEndTime, bo.getEndTime());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSearchValue()), CostCarCharge::getSearchValue, bo.getSearchValue());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增费用-车辆收费
|
||||
*
|
||||
* @param bo 费用-车辆收费
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(CostCarChargeBo bo) {
|
||||
CostCarCharge add = MapstructUtils.convert(bo, CostCarCharge.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改费用-车辆收费
|
||||
*
|
||||
* @param bo 费用-车辆收费
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(CostCarChargeBo bo) {
|
||||
CostCarCharge update = MapstructUtils.convert(bo, CostCarCharge.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(CostCarCharge entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除费用-车辆收费信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
@@ -0,0 +1,140 @@
|
||||
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.CostHouseChargeBo;
|
||||
import org.dromara.property.domain.vo.CostHouseChargeVo;
|
||||
import org.dromara.property.domain.CostHouseCharge;
|
||||
import org.dromara.property.mapper.CostHouseChargeMapper;
|
||||
import org.dromara.property.service.ICostHouseChargeService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 房屋收费Service业务层处理
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class CostHouseChargeServiceImpl implements ICostHouseChargeService {
|
||||
|
||||
private final CostHouseChargeMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询房屋收费
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 房屋收费
|
||||
*/
|
||||
@Override
|
||||
public CostHouseChargeVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询房屋收费列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 房屋收费分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<CostHouseChargeVo> queryPageList(CostHouseChargeBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<CostHouseCharge> lqw = buildQueryWrapper(bo);
|
||||
Page<CostHouseChargeVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的房屋收费列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 房屋收费列表
|
||||
*/
|
||||
@Override
|
||||
public List<CostHouseChargeVo> queryList(CostHouseChargeBo bo) {
|
||||
LambdaQueryWrapper<CostHouseCharge> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<CostHouseCharge> buildQueryWrapper(CostHouseChargeBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<CostHouseCharge> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByAsc(CostHouseCharge::getId);
|
||||
lqw.eq(bo.getRoomId() != null, CostHouseCharge::getRoomId, bo.getRoomId());
|
||||
lqw.eq(bo.getCostItemsId() != null, CostHouseCharge::getCostItemsId, bo.getCostItemsId());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getPayType()), CostHouseCharge::getPayType, bo.getPayType());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getChargeCycle()), CostHouseCharge::getChargeCycle, bo.getChargeCycle());
|
||||
lqw.eq(bo.getAmountReceivable() != null, CostHouseCharge::getAmountReceivable, bo.getAmountReceivable());
|
||||
lqw.eq(bo.getStartTime() != null, CostHouseCharge::getStartTime, bo.getStartTime());
|
||||
lqw.eq(bo.getEndTime() != null, CostHouseCharge::getEndTime, bo.getEndTime());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getState()), CostHouseCharge::getState, bo.getState());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSearchValue()), CostHouseCharge::getSearchValue, bo.getSearchValue());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增房屋收费
|
||||
*
|
||||
* @param bo 房屋收费
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(CostHouseChargeBo bo) {
|
||||
CostHouseCharge add = MapstructUtils.convert(bo, CostHouseCharge.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改房屋收费
|
||||
*
|
||||
* @param bo 房屋收费
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(CostHouseChargeBo bo) {
|
||||
CostHouseCharge update = MapstructUtils.convert(bo, CostHouseCharge.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(CostHouseCharge entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除房屋收费信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
@@ -0,0 +1,144 @@
|
||||
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.CostItemsBo;
|
||||
import org.dromara.property.domain.vo.CostItemsVo;
|
||||
import org.dromara.property.domain.CostItems;
|
||||
import org.dromara.property.mapper.CostItemsMapper;
|
||||
import org.dromara.property.service.ICostItemsService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 费用项设置Service业务层处理
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class CostItemsServiceImpl implements ICostItemsService {
|
||||
|
||||
private final CostItemsMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询费用项设置
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 费用项设置
|
||||
*/
|
||||
@Override
|
||||
public CostItemsVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询费用项设置列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 费用项设置分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<CostItemsVo> queryPageList(CostItemsBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<CostItems> lqw = buildQueryWrapper(bo);
|
||||
Page<CostItemsVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的费用项设置列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 费用项设置列表
|
||||
*/
|
||||
@Override
|
||||
public List<CostItemsVo> queryList(CostItemsBo bo) {
|
||||
LambdaQueryWrapper<CostItems> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<CostItems> buildQueryWrapper(CostItemsBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<CostItems> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByAsc(CostItems::getId);
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getCostType()), CostItems::getCostType, bo.getCostType());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getChargeItem()), CostItems::getChargeItem, bo.getChargeItem());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getCostMark()), CostItems::getCostMark, bo.getCostMark());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getPaymentType()), CostItems::getPaymentType, bo.getPaymentType());
|
||||
lqw.eq(bo.getChargeCycle() != null, CostItems::getChargeCycle, bo.getChargeCycle());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getIsMobilePay()), CostItems::getIsMobilePay, bo.getIsMobilePay());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getRoundingMode()), CostItems::getRoundingMode, bo.getRoundingMode());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getCurrencyDecimals()), CostItems::getCurrencyDecimals, bo.getCurrencyDecimals());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getState()), CostItems::getState, bo.getState());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getFormula()), CostItems::getFormula, bo.getFormula());
|
||||
lqw.eq(bo.getUnitPrice() != null, CostItems::getUnitPrice, bo.getUnitPrice());
|
||||
lqw.eq(bo.getSurcharge() != null, CostItems::getSurcharge, bo.getSurcharge());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSearchValue()), CostItems::getSearchValue, bo.getSearchValue());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增费用项设置
|
||||
*
|
||||
* @param bo 费用项设置
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(CostItemsBo bo) {
|
||||
CostItems add = MapstructUtils.convert(bo, CostItems.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改费用项设置
|
||||
*
|
||||
* @param bo 费用项设置
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(CostItemsBo bo) {
|
||||
CostItems update = MapstructUtils.convert(bo, CostItems.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(CostItems entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除费用项设置信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
@@ -0,0 +1,134 @@
|
||||
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.CostMeterTypeBo;
|
||||
import org.dromara.property.domain.vo.CostMeterTypeVo;
|
||||
import org.dromara.property.domain.CostMeterType;
|
||||
import org.dromara.property.mapper.CostMeterTypeMapper;
|
||||
import org.dromara.property.service.ICostMeterTypeService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 抄表类型Service业务层处理
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class CostMeterTypeServiceImpl implements ICostMeterTypeService {
|
||||
|
||||
private final CostMeterTypeMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询抄表类型
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 抄表类型
|
||||
*/
|
||||
@Override
|
||||
public CostMeterTypeVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询抄表类型列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 抄表类型分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<CostMeterTypeVo> queryPageList(CostMeterTypeBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<CostMeterType> lqw = buildQueryWrapper(bo);
|
||||
Page<CostMeterTypeVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的抄表类型列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 抄表类型列表
|
||||
*/
|
||||
@Override
|
||||
public List<CostMeterTypeVo> queryList(CostMeterTypeBo bo) {
|
||||
LambdaQueryWrapper<CostMeterType> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<CostMeterType> buildQueryWrapper(CostMeterTypeBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<CostMeterType> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByAsc(CostMeterType::getId);
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getMeterType()), CostMeterType::getMeterType, bo.getMeterType());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getName()), CostMeterType::getName, bo.getName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSearchValue()), CostMeterType::getSearchValue, bo.getSearchValue());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增抄表类型
|
||||
*
|
||||
* @param bo 抄表类型
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(CostMeterTypeBo bo) {
|
||||
CostMeterType add = MapstructUtils.convert(bo, CostMeterType.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改抄表类型
|
||||
*
|
||||
* @param bo 抄表类型
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(CostMeterTypeBo bo) {
|
||||
CostMeterType update = MapstructUtils.convert(bo, CostMeterType.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(CostMeterType entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除抄表类型信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
@@ -0,0 +1,139 @@
|
||||
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.CostMeterWaterBo;
|
||||
import org.dromara.property.domain.vo.CostMeterWaterVo;
|
||||
import org.dromara.property.domain.CostMeterWater;
|
||||
import org.dromara.property.mapper.CostMeterWaterMapper;
|
||||
import org.dromara.property.service.ICostMeterWaterService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 费用-水电抄Service业务层处理
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class CostMeterWaterServiceImpl implements ICostMeterWaterService {
|
||||
|
||||
private final CostMeterWaterMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询费用-水电抄
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 费用-水电抄
|
||||
*/
|
||||
@Override
|
||||
public CostMeterWaterVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询费用-水电抄列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 费用-水电抄分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<CostMeterWaterVo> queryPageList(CostMeterWaterBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<CostMeterWater> lqw = buildQueryWrapper(bo);
|
||||
Page<CostMeterWaterVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的费用-水电抄列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 费用-水电抄列表
|
||||
*/
|
||||
@Override
|
||||
public List<CostMeterWaterVo> queryList(CostMeterWaterBo bo) {
|
||||
LambdaQueryWrapper<CostMeterWater> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<CostMeterWater> buildQueryWrapper(CostMeterWaterBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<CostMeterWater> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByAsc(CostMeterWater::getId);
|
||||
lqw.eq(bo.getItemId() != null, CostMeterWater::getItemId, bo.getItemId());
|
||||
lqw.eq(bo.getMeterTypeId() != null, CostMeterWater::getMeterTypeId, bo.getMeterTypeId());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getObjName()), CostMeterWater::getObjName, bo.getObjName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getCurDegrees()), CostMeterWater::getCurDegrees, bo.getCurDegrees());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getPreDegrees()), CostMeterWater::getPreDegrees, bo.getPreDegrees());
|
||||
lqw.eq(bo.getPreReadingTime() != null, CostMeterWater::getPreReadingTime, bo.getPreReadingTime());
|
||||
lqw.eq(bo.getCurReadingTime() != null, CostMeterWater::getCurReadingTime, bo.getCurReadingTime());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSearchValue()), CostMeterWater::getSearchValue, bo.getSearchValue());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增费用-水电抄
|
||||
*
|
||||
* @param bo 费用-水电抄
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(CostMeterWaterBo bo) {
|
||||
CostMeterWater add = MapstructUtils.convert(bo, CostMeterWater.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改费用-水电抄
|
||||
*
|
||||
* @param bo 费用-水电抄
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(CostMeterWaterBo bo) {
|
||||
CostMeterWater update = MapstructUtils.convert(bo, CostMeterWater.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(CostMeterWater entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除费用-水电抄信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
@@ -0,0 +1,140 @@
|
||||
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.dromara.property.domain.CostPayFeeAudit;
|
||||
import org.dromara.property.domain.bo.CostPayFeeAuditBo;
|
||||
import org.dromara.property.domain.vo.CostPayFeeAuditVo;
|
||||
import org.dromara.property.mapper.CostPayFeeAuditMapper;
|
||||
import org.dromara.property.service.ICostPayFeeAuditService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 费用-缴费审核Service业务层处理
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class CostPayFeeAuditServiceImpl implements ICostPayFeeAuditService {
|
||||
|
||||
private final CostPayFeeAuditMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询费用-缴费审核
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 费用-缴费审核
|
||||
*/
|
||||
@Override
|
||||
public CostPayFeeAuditVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询费用-缴费审核列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 费用-缴费审核分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<CostPayFeeAuditVo> queryPageList(CostPayFeeAuditBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<CostPayFeeAudit> lqw = buildQueryWrapper(bo);
|
||||
Page<CostPayFeeAuditVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的费用-缴费审核列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 费用-缴费审核列表
|
||||
*/
|
||||
@Override
|
||||
public List<CostPayFeeAuditVo> queryList(CostPayFeeAuditBo bo) {
|
||||
LambdaQueryWrapper<CostPayFeeAudit> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<CostPayFeeAudit> buildQueryWrapper(CostPayFeeAuditBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<CostPayFeeAudit> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByAsc(CostPayFeeAudit::getId);
|
||||
lqw.eq(bo.getHouseChargeId() != null, CostPayFeeAudit::getHouseChargeId, bo.getHouseChargeId());
|
||||
lqw.eq(bo.getItemId() != null, CostPayFeeAudit::getItemId, bo.getItemId());
|
||||
lqw.eq(bo.getStartTime() != null, CostPayFeeAudit::getStartTime, bo.getStartTime());
|
||||
lqw.eq(bo.getEndTime() != null, CostPayFeeAudit::getEndTime, bo.getEndTime());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getReceivedAmount()), CostPayFeeAudit::getReceivedAmount, bo.getReceivedAmount());
|
||||
lqw.eq(bo.getReceivableAmount() != null, CostPayFeeAudit::getReceivableAmount, bo.getReceivableAmount());
|
||||
lqw.eq(bo.getPayTime() != null, CostPayFeeAudit::getPayTime, bo.getPayTime());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getState()), CostPayFeeAudit::getState, bo.getState());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSearchValue()), CostPayFeeAudit::getSearchValue, bo.getSearchValue());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增费用-缴费审核
|
||||
*
|
||||
* @param bo 费用-缴费审核
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(CostPayFeeAuditBo bo) {
|
||||
CostPayFeeAudit add = MapstructUtils.convert(bo, CostPayFeeAudit.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改费用-缴费审核
|
||||
*
|
||||
* @param bo 费用-缴费审核
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(CostPayFeeAuditBo bo) {
|
||||
CostPayFeeAudit update = MapstructUtils.convert(bo, CostPayFeeAudit.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(CostPayFeeAudit entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除费用-缴费审核信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
@@ -0,0 +1,140 @@
|
||||
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.dromara.property.domain.CostReturnPayFee;
|
||||
import org.dromara.property.domain.bo.CostReturnPayFeeBo;
|
||||
import org.dromara.property.domain.vo.CostReturnPayFeeVo;
|
||||
import org.dromara.property.mapper.CostReturnPayFeeMapper;
|
||||
import org.dromara.property.service.ICostReturnPayFeeService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 费用-抄类型Service业务层处理
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class CostReturnPayFeeServiceImpl implements ICostReturnPayFeeService {
|
||||
|
||||
private final CostReturnPayFeeMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询费用-抄类型
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 费用-抄类型
|
||||
*/
|
||||
@Override
|
||||
public CostReturnPayFeeVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询费用-抄类型列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 费用-抄类型分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<CostReturnPayFeeVo> queryPageList(CostReturnPayFeeBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<CostReturnPayFee> lqw = buildQueryWrapper(bo);
|
||||
Page<CostReturnPayFeeVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的费用-抄类型列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 费用-抄类型列表
|
||||
*/
|
||||
@Override
|
||||
public List<CostReturnPayFeeVo> queryList(CostReturnPayFeeBo bo) {
|
||||
LambdaQueryWrapper<CostReturnPayFee> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<CostReturnPayFee> buildQueryWrapper(CostReturnPayFeeBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<CostReturnPayFee> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByAsc(CostReturnPayFee::getId);
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getReturnNo()), CostReturnPayFee::getReturnNo, bo.getReturnNo());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getPayNo()), CostReturnPayFee::getPayNo, bo.getPayNo());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getReason()), CostReturnPayFee::getReason, bo.getReason());
|
||||
lqw.eq(bo.getItemId() != null, CostReturnPayFee::getItemId, bo.getItemId());
|
||||
lqw.eq(bo.getUserId() != null, CostReturnPayFee::getUserId, bo.getUserId());
|
||||
lqw.eq(bo.getPayAcount() != null, CostReturnPayFee::getPayAcount, bo.getPayAcount());
|
||||
lqw.eq(bo.getPayTime() != null, CostReturnPayFee::getPayTime, bo.getPayTime());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getState()), CostReturnPayFee::getState, bo.getState());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSearchValue()), CostReturnPayFee::getSearchValue, bo.getSearchValue());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增费用-抄类型
|
||||
*
|
||||
* @param bo 费用-抄类型
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(CostReturnPayFeeBo bo) {
|
||||
CostReturnPayFee add = MapstructUtils.convert(bo, CostReturnPayFee.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改费用-抄类型
|
||||
*
|
||||
* @param bo 费用-抄类型
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(CostReturnPayFeeBo bo) {
|
||||
CostReturnPayFee update = MapstructUtils.convert(bo, CostReturnPayFee.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(CostReturnPayFee entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除费用-抄类型信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
@@ -54,22 +54,58 @@ public class MachineLocationServiceImpl implements IMachineLocationService {
|
||||
public MachineLocationDetailVo queryById(Long id) {
|
||||
MachineLocationVo machineLocationVo = baseMapper.selectVoById(id);
|
||||
MachineLocationDetailVo machineLocationDetailVo = BeanUtil.copyProperties(machineLocationVo, MachineLocationDetailVo.class);
|
||||
Long locationObjId = Long.valueOf(machineLocationDetailVo.getLocationObjId());
|
||||
Long locationObjId = machineLocationDetailVo.getLocationObjId();
|
||||
if (locationObjId == null) {
|
||||
return machineLocationDetailVo;
|
||||
}
|
||||
switch (machineLocationDetailVo.getLocationType()) {
|
||||
case "0":
|
||||
machineLocationDetailVo.setLocationObjName(tbCommunityMapper.selectVoById(locationObjId).getCommunityName());
|
||||
var community = tbCommunityMapper.selectVoById(locationObjId);
|
||||
if (community != null && StringUtils.isNotBlank(community.getCommunityName())) {
|
||||
machineLocationDetailVo.setLocationObjName(community.getCommunityName());
|
||||
} else {
|
||||
machineLocationDetailVo.setLocationObjName(null);
|
||||
}
|
||||
break;
|
||||
case "1":
|
||||
machineLocationDetailVo.setLocationObjName(tbBuildingMapper.selectVoById(locationObjId).getBuildingName());
|
||||
var building = tbBuildingMapper.selectVoById(locationObjId);
|
||||
if (building != null && StringUtils.isNotBlank(building.getBuildingName())) {
|
||||
machineLocationDetailVo.setLocationObjName(building.getBuildingName());
|
||||
} else {
|
||||
machineLocationDetailVo.setLocationObjName(null);
|
||||
}
|
||||
break;
|
||||
case "2":
|
||||
machineLocationDetailVo.setLocationObjName(tbUnitMapper.selectVoById(locationObjId).getUnitName());
|
||||
var unit = tbUnitMapper.selectVoById(locationObjId);
|
||||
if (unit != null && StringUtils.isNotBlank(unit.getUnitName())) {
|
||||
machineLocationDetailVo.setLocationObjName(unit.getUnitName());
|
||||
} else {
|
||||
machineLocationDetailVo.setLocationObjName(null);
|
||||
}
|
||||
break;
|
||||
case "3":
|
||||
machineLocationDetailVo.setLocationObjName(tbFloorMapper.selectVoById(locationObjId).getFloorName());
|
||||
var floor = tbFloorMapper.selectVoById(locationObjId);
|
||||
if (floor != null && StringUtils.isNotBlank(floor.getFloorName())) {
|
||||
machineLocationDetailVo.setLocationObjName(floor.getFloorName());
|
||||
} else {
|
||||
machineLocationDetailVo.setLocationObjName(null);
|
||||
}
|
||||
break;
|
||||
case "4":
|
||||
machineLocationDetailVo.setLocationObjName(tbRoomMapper.selectVoById(locationObjId).getRoomNumber());
|
||||
var room = tbRoomMapper.selectVoById(locationObjId);
|
||||
if (room != null && StringUtils.isNotBlank(room.getRoomNumber())) {
|
||||
machineLocationDetailVo.setLocationObjName(room.getRoomNumber());
|
||||
} else {
|
||||
machineLocationDetailVo.setLocationObjName(null);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
machineLocationDetailVo.setLocationObjName(null);
|
||||
}
|
||||
return machineLocationDetailVo;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询设备位置列表
|
||||
*
|
||||
|
@@ -1,5 +1,9 @@
|
||||
package org.dromara.property.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.github.yulichang.query.MPJLambdaQueryWrapper;
|
||||
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||
import org.dromara.common.core.utils.MapstructUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
@@ -9,6 +13,7 @@ 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.dromara.property.domain.MachineMaintainTask;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.dromara.property.domain.bo.MachineMaintainTaskDetailBo;
|
||||
import org.dromara.property.domain.vo.MachineMaintainTaskDetailVo;
|
||||
@@ -41,7 +46,9 @@ public class MachineMaintainTaskDetailServiceImpl implements IMachineMaintainTas
|
||||
*/
|
||||
@Override
|
||||
public MachineMaintainTaskDetailVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
MachineMaintainTaskDetail machineMaintainTaskDetail = baseMapper.selectById(id);
|
||||
MachineMaintainTaskDetailVo machineMaintainTaskDetailVo = BeanUtil.copyProperties(machineMaintainTaskDetail, MachineMaintainTaskDetailVo.class);
|
||||
return machineMaintainTaskDetailVo;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -53,9 +60,10 @@ public class MachineMaintainTaskDetailServiceImpl implements IMachineMaintainTas
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<MachineMaintainTaskDetailVo> queryPageList(MachineMaintainTaskDetailBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<MachineMaintainTaskDetail> lqw = buildQueryWrapper(bo);
|
||||
Page<MachineMaintainTaskDetailVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
MPJLambdaWrapper<MachineMaintainTaskDetail> lqw = buildQueryWrapper(bo);
|
||||
IPage<MachineMaintainTaskDetailVo> result = baseMapper.selectJoinPage(pageQuery.build(),MachineMaintainTaskDetailVo.class, lqw);
|
||||
return TableDataInfo.build(result);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -66,21 +74,22 @@ public class MachineMaintainTaskDetailServiceImpl implements IMachineMaintainTas
|
||||
*/
|
||||
@Override
|
||||
public List<MachineMaintainTaskDetailVo> queryList(MachineMaintainTaskDetailBo bo) {
|
||||
LambdaQueryWrapper<MachineMaintainTaskDetail> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
MPJLambdaWrapper<MachineMaintainTaskDetail> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectJoinList(MachineMaintainTaskDetailVo.class, lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<MachineMaintainTaskDetail> buildQueryWrapper(MachineMaintainTaskDetailBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<MachineMaintainTaskDetail> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByAsc(MachineMaintainTaskDetail::getId);
|
||||
lqw.eq(bo.getTaskId() != null, MachineMaintainTaskDetail::getTaskId, bo.getTaskId());
|
||||
lqw.eq(bo.getMachineId() != null, MachineMaintainTaskDetail::getMachineId, bo.getMachineId());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSendFlag()), MachineMaintainTaskDetail::getSendFlag, bo.getSendFlag());
|
||||
lqw.eq(bo.getSortNumber() != null, MachineMaintainTaskDetail::getSortNumber, bo.getSortNumber());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getState()), MachineMaintainTaskDetail::getState, bo.getState());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSearchValue()), MachineMaintainTaskDetail::getSearchValue, bo.getSearchValue());
|
||||
return lqw;
|
||||
private MPJLambdaWrapper<MachineMaintainTaskDetail> buildQueryWrapper(MachineMaintainTaskDetailBo bo) {
|
||||
return new MPJLambdaWrapper<MachineMaintainTaskDetail>()
|
||||
.orderByAsc(MachineMaintainTaskDetail::getId)
|
||||
.eq(bo.getTaskId() != null, MachineMaintainTaskDetail::getTaskId, bo.getTaskId())
|
||||
.eq(bo.getMachineId() != null, MachineMaintainTaskDetail::getMachineId, bo.getMachineId())
|
||||
.eq(StringUtils.isNotBlank(bo.getSendFlag()), MachineMaintainTaskDetail::getSendFlag, bo.getSendFlag())
|
||||
.eq(bo.getSortNumber() != null, MachineMaintainTaskDetail::getSortNumber, bo.getSortNumber())
|
||||
.eq(StringUtils.isNotBlank(bo.getState()), MachineMaintainTaskDetail::getState, bo.getState())
|
||||
.eq(StringUtils.isNotBlank(bo.getSearchValue()), MachineMaintainTaskDetail::getSearchValue, bo.getSearchValue())
|
||||
.selectAll(MachineMaintainTaskDetail.class)
|
||||
.select(MachineMaintainTask::getMaintainTaskNo)
|
||||
.leftJoin(MachineMaintainTask.class, MachineMaintainTask::getId, MachineMaintainTaskDetail::getTaskId);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -93,7 +102,7 @@ public class MachineMaintainTaskDetailServiceImpl implements IMachineMaintainTas
|
||||
public Boolean insertByBo(MachineMaintainTaskDetailBo bo) {
|
||||
MachineMaintainTaskDetail add = MapstructUtils.convert(bo, MachineMaintainTaskDetail.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
boolean flag = this.insertByBo(bo);
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
@@ -110,7 +119,7 @@ public class MachineMaintainTaskDetailServiceImpl implements IMachineMaintainTas
|
||||
public Boolean updateByBo(MachineMaintainTaskDetailBo bo) {
|
||||
MachineMaintainTaskDetail update = MapstructUtils.convert(bo, MachineMaintainTaskDetail.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
return baseMapper.updateById(update)>0;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -1,5 +1,7 @@
|
||||
package org.dromara.property.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import org.dromara.common.core.utils.MapstructUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
@@ -9,9 +11,13 @@ 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.dromara.property.domain.MachineType;
|
||||
import org.dromara.property.domain.vo.*;
|
||||
import org.dromara.property.mapper.MachineLocationMapper;
|
||||
import org.dromara.property.mapper.MachineTypeMapper;
|
||||
import org.dromara.property.mapper.ResidentPersonMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.dromara.property.domain.bo.MachineBo;
|
||||
import org.dromara.property.domain.vo.MachineVo;
|
||||
import org.dromara.property.domain.Machine;
|
||||
import org.dromara.property.mapper.MachineMapper;
|
||||
import org.dromara.property.service.IMachineService;
|
||||
@@ -32,6 +38,9 @@ import java.util.Collection;
|
||||
public class MachineServiceImpl implements IMachineService {
|
||||
|
||||
private final MachineMapper baseMapper;
|
||||
private final MachineTypeMapper machineTypeMapper;
|
||||
private final ResidentPersonMapper residentPersonMapper;
|
||||
private final MachineLocationMapper machineLocationMapper;
|
||||
|
||||
/**
|
||||
* 查询设备列表
|
||||
@@ -40,8 +49,16 @@ public class MachineServiceImpl implements IMachineService {
|
||||
* @return 设备列表
|
||||
*/
|
||||
@Override
|
||||
public MachineVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
public MachineDetailVo queryById(Long id){
|
||||
MachineVo machineVo = baseMapper.selectVoById(id);
|
||||
MachineDetailVo machineDetailVo = BeanUtil.copyProperties(machineVo, MachineDetailVo.class);
|
||||
MachineTypeVo machineTypeVo = machineTypeMapper.selectVoById(machineDetailVo.getMachineTypeId());
|
||||
machineDetailVo.setMachineTypeName(machineTypeVo.getMachineTypeName());
|
||||
ResidentPersonVo residentPersonVo = residentPersonMapper.selectVoById(machineVo.getPersonId());
|
||||
machineDetailVo.setPersonName(ObjectUtil.isNotEmpty(residentPersonVo) ? residentPersonVo.getUserName() : null);
|
||||
MachineLocationVo machineLocationVo = machineLocationMapper.selectVoById(machineVo.getLocationId());
|
||||
machineDetailVo.setLocationName(ObjectUtil.isNotEmpty(machineLocationVo)? machineLocationVo.getLocationName():null);
|
||||
return machineDetailVo;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -1,4 +1,3 @@
|
||||
|
||||
package org.dromara.property.tasks;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
@@ -18,13 +17,19 @@ import org.dromara.property.mapper.InspectionPlanStaffMapper;
|
||||
import org.dromara.property.mapper.InspectionTaskMapper;
|
||||
import org.dromara.property.mapper.ResidentPersonMapper;
|
||||
import org.dromara.property.service.IInspectionPlanService;
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalTime;
|
||||
import java.time.ZoneId;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.stream.Collectors;
|
||||
@@ -36,22 +41,22 @@ import static org.dromara.common.mybatis.core.mapper.BaseMapperPlus.log;
|
||||
* @Date:2025/7/11 15:28
|
||||
* @Description: 巡检任务定时处理器
|
||||
**/
|
||||
//@Component
|
||||
//@RequiredArgsConstructor
|
||||
@Validated
|
||||
@Component
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/task")
|
||||
//@Validated
|
||||
//@RequiredArgsConstructor
|
||||
//@RestController
|
||||
//@RequestMapping("/inspectionPlanTask")
|
||||
public class InspectionTasks {
|
||||
|
||||
private final IInspectionPlanService inspectionPlanService;
|
||||
private final InspectionPlanStaffMapper inspectionPlanStaffMapper;
|
||||
private final InspectionTaskMapper inspectionTaskMapper;
|
||||
private final ResidentPersonMapper residentPersonMapper;
|
||||
|
||||
// 通过巡检计划定时生成巡检任务
|
||||
//@Scheduled(cron = "0 0 2 * * ?")
|
||||
//@PostConstruct
|
||||
@GetMapping("/taskId")
|
||||
@Scheduled(cron = "0 0 2 * * ?")
|
||||
//@GetMapping("/taskId")
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void doInspectionPianTask() {
|
||||
// 查询所有启用状态的巡检计划
|
||||
@@ -64,11 +69,15 @@ public class InspectionTasks {
|
||||
}
|
||||
// 处理每个巡检计划
|
||||
inspectionPlanVoList.forEach(plan -> {
|
||||
LambdaQueryWrapper<InspectionTask>inspectionTaskWrapper = new LambdaQueryWrapper<>();
|
||||
inspectionTaskWrapper.eq(InspectionTask::getInspectionPlanId,plan.getId());
|
||||
inspectionTaskWrapper.eq(InspectionTask::getInspectionPlanId,plan.getId());
|
||||
// 获取今天的起始时间
|
||||
LocalDateTime todayStart = LocalDateTime.now().with(LocalTime.MIN);
|
||||
// 获取今天的结束时间
|
||||
LocalDateTime todayEnd = LocalDateTime.now().with(LocalTime.MAX);
|
||||
LambdaQueryWrapper<InspectionTask> inspectionTaskWrapper = new LambdaQueryWrapper<>();
|
||||
inspectionTaskWrapper.eq(InspectionTask::getInspectionPlanId, plan.getId());
|
||||
inspectionTaskWrapper.between(InspectionTask::getCreateTime, Date.from(todayStart.atZone(ZoneId.systemDefault()).toInstant()), Date.from(todayEnd.atZone(ZoneId.systemDefault()).toInstant()));
|
||||
boolean exists = inspectionTaskMapper.exists(inspectionTaskWrapper);
|
||||
if(!exists){
|
||||
if (!exists) {
|
||||
// 根据不同的巡检周期执行相应处理
|
||||
switch (plan.getInspectionPlanPeriod()) {
|
||||
case "1":
|
||||
@@ -96,12 +105,10 @@ public class InspectionTasks {
|
||||
*/
|
||||
private void handleMonthlyDailyPlan(InspectionPlanVo plan) {
|
||||
LambdaQueryWrapper<InspectionPlanStaff> staffQueryWrapper = Wrappers.lambdaQuery();
|
||||
staffQueryWrapper .eq(InspectionPlanStaff::getInspectionPlanId, plan.getId());
|
||||
staffQueryWrapper.eq(InspectionPlanStaff::getInspectionPlanId, plan.getId());
|
||||
//查询该计划巡查人员
|
||||
List<InspectionPlanStaffVo> inspectionPlanStaffVos = inspectionPlanStaffMapper.selectVoList(staffQueryWrapper);
|
||||
List<Long> userIdList = inspectionPlanStaffVos.stream().map(vo -> vo.getUserId())
|
||||
.distinct()
|
||||
.collect(Collectors.toList());
|
||||
List<Long> userIdList = inspectionPlanStaffVos.stream().map(vo -> vo.getUserId()).distinct().collect(Collectors.toList());
|
||||
List<ResidentPersonVo> residentPersonVoList = residentPersonMapper.selectVoByIds(userIdList);
|
||||
// 使用Optional安全处理可能为null的对象
|
||||
Optional.ofNullable(plan).ifPresent(p -> {
|
||||
@@ -110,35 +117,32 @@ public class InspectionTasks {
|
||||
DateTime endDate = DateUtil.date(plan.getEndDate());
|
||||
String day = DateUtil.today().split("-")[2];
|
||||
List<String> inspectionDayList = Arrays.asList(p.getInspectionDay().split(","));
|
||||
if(DateUtil.isIn(today, startDate, endDate)&&inspectionDayList.contains(day)){
|
||||
if (DateUtil.isIn(today, startDate, endDate) && inspectionDayList.contains(day)) {
|
||||
InspectionTask task = new InspectionTask();
|
||||
task.setInspectionPlanId(p.getId());
|
||||
task.setTaskType(plan.getSignType());
|
||||
task.setPlanInsTime(startDate+"~"+p.getEndTime());
|
||||
task.setPlanInsTime(startDate + "~" + p.getEndTime());
|
||||
task.setTenantId(plan.getTenantId());
|
||||
task.setStatus("0");
|
||||
if (CollectionUtil.isNotEmpty(inspectionPlanStaffVos)) {
|
||||
String userIds = residentPersonVoList.stream()
|
||||
.map(vo -> vo.getId().toString())
|
||||
.collect(Collectors.joining(","));
|
||||
String userIds = residentPersonVoList.stream().map(vo -> vo.getId().toString()).collect(Collectors.joining(","));
|
||||
|
||||
String userNames = residentPersonVoList.stream()
|
||||
.map(vo -> vo.getUserName())
|
||||
.collect(Collectors.joining(","));
|
||||
task.setPlanUserId(ObjectUtil.isNotEmpty(userIds)?userIds:"");
|
||||
task.setPlanUserName(ObjectUtil.isNotEmpty(userNames)?userNames:"");
|
||||
String userNames = residentPersonVoList.stream().map(vo -> vo.getUserName()).collect(Collectors.joining(","));
|
||||
task.setPlanUserId(ObjectUtil.isNotEmpty(userIds) ? userIds : "");
|
||||
task.setPlanUserName(ObjectUtil.isNotEmpty(userNames) ? userNames : "");
|
||||
}
|
||||
inspectionTaskMapper.insert(task);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理按周的巡检计划
|
||||
* @param plan 巡检计划信息
|
||||
*/
|
||||
private void handleWeeklyDailyPlan(InspectionPlanVo plan) {
|
||||
LambdaQueryWrapper<InspectionPlanStaff> staffQueryWrapper = Wrappers.lambdaQuery();
|
||||
staffQueryWrapper .eq(InspectionPlanStaff::getInspectionPlanId, plan.getId());
|
||||
staffQueryWrapper.eq(InspectionPlanStaff::getInspectionPlanId, plan.getId());
|
||||
//查询该计划巡查人员
|
||||
List<InspectionPlanStaffVo> inspectionPlanStaffVos = inspectionPlanStaffMapper.selectVoList(staffQueryWrapper);
|
||||
// 使用Optional安全处理可能为null的对象
|
||||
@@ -148,22 +152,18 @@ public class InspectionTasks {
|
||||
DateTime endDate = DateUtil.date(plan.getEndDate());
|
||||
String week = String.valueOf(DateUtil.dayOfWeek(DateUtil.date()));
|
||||
List<String> inspectionWorkdayList = Arrays.asList(p.getInspectionWorkday().split(","));
|
||||
if(DateUtil.isIn(today, startDate, endDate)&&inspectionWorkdayList.contains(week)) {
|
||||
if (DateUtil.isIn(today, startDate, endDate) && inspectionWorkdayList.contains(week)) {
|
||||
InspectionTask task = new InspectionTask();
|
||||
task.setInspectionPlanId(p.getId());
|
||||
task.setInspectionPlanId(p.getId());
|
||||
task.setTaskType(plan.getSignType());
|
||||
task.setPlanInsTime(startDate+"~"+p.getEndTime());
|
||||
task.setPlanInsTime(startDate + "~" + p.getEndTime());
|
||||
task.setTenantId(plan.getTenantId());
|
||||
task.setStatus("0");
|
||||
if (CollectionUtil.isNotEmpty(inspectionPlanStaffVos)) {
|
||||
String userIds = inspectionPlanStaffVos.stream()
|
||||
.map(vo -> vo.getUserId().toString())
|
||||
.collect(Collectors.joining(","));
|
||||
String userIds = inspectionPlanStaffVos.stream().map(vo -> vo.getUserId().toString()).collect(Collectors.joining(","));
|
||||
|
||||
String userNames = inspectionPlanStaffVos.stream()
|
||||
.map(InspectionPlanStaffVo::getUserName)
|
||||
.collect(Collectors.joining(","));
|
||||
String userNames = inspectionPlanStaffVos.stream().map(InspectionPlanStaffVo::getUserName).collect(Collectors.joining(","));
|
||||
|
||||
task.setPlanUserId(userIds);
|
||||
task.setPlanUserName(userNames);
|
||||
|
@@ -0,0 +1,153 @@
|
||||
package org.dromara.property.tasks;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.RandomUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.property.domain.MachineMaintainPlanStaff;
|
||||
import org.dromara.property.domain.MachineMaintainTask;
|
||||
import org.dromara.property.domain.bo.MachineMaintainPlanBo;
|
||||
import org.dromara.property.domain.vo.MachineMaintainPlanStaffVo;
|
||||
import org.dromara.property.domain.vo.MachineMaintainPlanVo;
|
||||
import org.dromara.property.domain.vo.ResidentPersonVo;
|
||||
import org.dromara.property.mapper.MachineMaintainPlanStaffMapper;
|
||||
import org.dromara.property.mapper.MachineMaintainTaskMapper;
|
||||
import org.dromara.property.mapper.ResidentPersonMapper;
|
||||
import org.dromara.property.service.IMachineMaintainPlanService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalTime;
|
||||
import java.time.ZoneId;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static org.dromara.common.mybatis.core.mapper.BaseMapperPlus.log;
|
||||
|
||||
/**
|
||||
* @Author:yuyongle
|
||||
* @Date:2025/7/17 09:25
|
||||
* @Description:
|
||||
**/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/machineTask")
|
||||
public class MachineTasks {
|
||||
private final IMachineMaintainPlanService machineMaintainPlanService;
|
||||
private final MachineMaintainTaskMapper machineMaintainTaskMapper;
|
||||
private final MachineMaintainPlanStaffMapper machineMaintainPlanStaffMapper;
|
||||
private final ResidentPersonMapper residentPersonMapper;
|
||||
|
||||
@GetMapping("/taskId")
|
||||
public void doMachineMaintainPianTask() {
|
||||
// 查询所有启用状态的巡检计划
|
||||
MachineMaintainPlanBo machineMaintainPlanBo= new MachineMaintainPlanBo();
|
||||
machineMaintainPlanBo.setState("0");
|
||||
List<MachineMaintainPlanVo> machineMaintainPlanVoList = machineMaintainPlanService.queryList(machineMaintainPlanBo);
|
||||
// 如果没有有效计划,直接返回
|
||||
if (ObjectUtil.isEmpty(machineMaintainPlanVoList)) {
|
||||
return;
|
||||
}
|
||||
machineMaintainPlanVoList.stream().forEach(plan->{
|
||||
// 获取今天的起始时间
|
||||
LocalDateTime todayStart = LocalDateTime.now().with(LocalTime.MIN);
|
||||
// 获取今天的结束时间
|
||||
LocalDateTime todayEnd = LocalDateTime.now().with(LocalTime.MAX);
|
||||
LambdaQueryWrapper<MachineMaintainTask> machineMaintainPianWrapper = new LambdaQueryWrapper<>();
|
||||
machineMaintainPianWrapper.eq(MachineMaintainTask::getMaintainPlanId, plan.getId());
|
||||
machineMaintainPianWrapper.between(MachineMaintainTask::getCreateTime, Date.from(todayStart.atZone(ZoneId.systemDefault()).toInstant()), Date.from(todayEnd.atZone(ZoneId.systemDefault()).toInstant()));
|
||||
boolean exists = machineMaintainTaskMapper .exists(machineMaintainPianWrapper);
|
||||
if(!exists){
|
||||
// 根据不同的巡检周期执行相应处理
|
||||
switch (plan.getPlanPeriod()) {
|
||||
case "1":
|
||||
// 处理按月/天的巡检计划
|
||||
handleMonthlyDailyPlan(plan);
|
||||
break;
|
||||
|
||||
case "2":
|
||||
// 处理按固定天的设备保养计划
|
||||
handleDaylyDailyPlan(plan);
|
||||
break;
|
||||
default:
|
||||
// 对于未知的巡检周期类型,记录警告日志
|
||||
log.warn("未知类型");
|
||||
break;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理按月/天的巡检计划
|
||||
* @param plan 巡检计划信息
|
||||
*/
|
||||
private void handleMonthlyDailyPlan(MachineMaintainPlanVo plan) {
|
||||
LambdaQueryWrapper<MachineMaintainPlanStaff> staffQueryWrapper = Wrappers.lambdaQuery();
|
||||
staffQueryWrapper.eq(MachineMaintainPlanStaff::getMaintainPlanId, plan.getId());
|
||||
//查询该计划巡查人员
|
||||
List<MachineMaintainPlanStaffVo> machineMaintainPlanStaffs = machineMaintainPlanStaffMapper.selectVoList(staffQueryWrapper);
|
||||
List<Long> userIdList = machineMaintainPlanStaffs.stream().map(vo -> vo.getUserId()).distinct().collect(Collectors.toList());
|
||||
List<ResidentPersonVo> residentPersonVoList = residentPersonMapper.selectVoByIds(userIdList);
|
||||
// 使用Optional安全处理可能为null的对象
|
||||
Optional.ofNullable(plan).ifPresent(p -> {
|
||||
DateTime today = DateUtil.date();
|
||||
DateTime startDate = DateUtil.date(plan.getStartDate());
|
||||
DateTime endDate = DateUtil.date(plan.getEndDate());
|
||||
String day = DateUtil.today().split("-")[2];
|
||||
List<String> inspectionDayList = Arrays.asList(p.getMaintainDay().split(","));
|
||||
if (DateUtil.isIn(today, startDate, endDate) && inspectionDayList.contains(day)) {
|
||||
MachineMaintainTask task = new MachineMaintainTask();
|
||||
task.setMaintainPlanId(p.getId());
|
||||
task.setMaintainTaskNo(RandomUtil.randomString(6));
|
||||
if (CollectionUtil.isNotEmpty(machineMaintainPlanStaffs )) {
|
||||
String userIds = residentPersonVoList.stream().map(vo -> vo.getId().toString()).collect(Collectors.joining(","));
|
||||
task.setPlanUserId(ObjectUtil.isNotEmpty(userIds) ? userIds : "");
|
||||
}
|
||||
machineMaintainTaskMapper.insert(task);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理按固定天的巡检计划
|
||||
* @param plan 巡检计划信息
|
||||
*/
|
||||
private void handleDaylyDailyPlan(MachineMaintainPlanVo plan) {
|
||||
LambdaQueryWrapper<MachineMaintainPlanStaff> staffQueryWrapper = Wrappers.lambdaQuery();
|
||||
staffQueryWrapper.eq(MachineMaintainPlanStaff::getMaintainPlanId, plan.getId());
|
||||
//查询该计划巡查人员
|
||||
List<MachineMaintainPlanStaffVo> machineMaintainPlanStaffs = machineMaintainPlanStaffMapper.selectVoList(staffQueryWrapper);
|
||||
List<Long> userIdList = machineMaintainPlanStaffs.stream().map(vo -> vo.getUserId()).distinct().collect(Collectors.toList());
|
||||
List<ResidentPersonVo> residentPersonVoList = residentPersonMapper.selectVoByIds(userIdList);
|
||||
// 使用Optional安全处理可能为null的对象
|
||||
Optional.ofNullable(plan).ifPresent(p -> {
|
||||
DateTime today = DateUtil.date();
|
||||
int day = today.dayOfMonth();
|
||||
DateTime startDate = DateUtil.date(plan.getStartDate());
|
||||
DateTime endDate = DateUtil.date(plan.getEndDate());
|
||||
List<String> inspectionWorkdayList = Arrays.asList(p.getMaintainEveryday().split(","));
|
||||
if (DateUtil.isIn(today, startDate, endDate) && inspectionWorkdayList.contains(day)) {
|
||||
MachineMaintainTask task = new MachineMaintainTask();
|
||||
task.setMaintainPlanId(p.getId());
|
||||
task.setMaintainTaskNo(RandomUtil.randomString(6));
|
||||
if (CollectionUtil.isNotEmpty(machineMaintainPlanStaffs )) {
|
||||
String userIds = residentPersonVoList.stream().map(vo -> vo.getId().toString()).collect(Collectors.joining(","));
|
||||
task.setPlanUserId(ObjectUtil.isNotEmpty(userIds) ? userIds : "");
|
||||
}
|
||||
machineMaintainTaskMapper.insert(task);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user