浏览代码

【修改】回款计划和回款管理统一带上Crm前缀,防止和其他模块冲突。

liuhongfeng 1 年之前
父节点
当前提交
95e9dc81c9
共有 34 个文件被更改,包括 423 次插入435 次删除
  1. 20 20
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/CrmReceivableController.java
  2. 20 20
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/CrmReceivablePlanController.java
  3. 4 3
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableBaseVO.java
  4. 1 3
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableCreateReqVO.java
  5. 2 6
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableExcelVO.java
  6. 2 2
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableExportReqVO.java
  7. 1 2
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePageReqVO.java
  8. 1 1
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanBaseVO.java
  9. 1 3
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanCreateReqVO.java
  10. 1 2
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanExcelVO.java
  11. 2 2
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanExportReqVO.java
  12. 1 1
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanPageReqVO.java
  13. 1 1
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanRespVO.java
  14. 2 2
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanUpdateReqVO.java
  15. 1 1
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableRespVO.java
  16. 2 2
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableUpdateReqVO.java
  17. 34 0
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/receivable/CrmReceivableConvert.java
  18. 34 0
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/receivable/CrmReceivablePlanConvert.java
  19. 0 34
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/receivable/ReceivableConvert.java
  20. 0 34
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/receivable/ReceivablePlanConvert.java
  21. 2 2
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/receivable/CrmReceivableDO.java
  22. 1 2
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/receivable/CrmReceivablePlanDO.java
  23. 54 0
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/receivable/CrmReceivableMapper.java
  24. 49 0
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/receivable/CrmReceivablePlanMapper.java
  25. 0 54
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/receivable/ReceivableMapper.java
  26. 0 49
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/receivable/ReceivablePlanMapper.java
  27. 8 8
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivablePlanService.java
  28. 26 27
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivablePlanServiceImpl.java
  29. 8 8
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivableService.java
  30. 29 30
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivableServiceImpl.java
  31. 1 1
      yudao-module-crm/yudao-module-crm-biz/src/main/resources/mapper/receivable/CrmReceivableMapper.xml
  32. 1 1
      yudao-module-crm/yudao-module-crm-biz/src/main/resources/mapper/receivable/CrmReceivablePlanMapper.xml
  33. 51 51
      yudao-module-crm/yudao-module-crm-biz/src/test/java/cn/iocoder/yudao/module/crm/service/receivable/CrmCrmReceivablePlanServiceImplTest.java
  34. 63 63
      yudao-module-crm/yudao-module-crm-biz/src/test/java/cn/iocoder/yudao/module/crm/service/receivable/CrmCrmReceivableServiceImplTest.java

+ 20 - 20
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/ReceivableController.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/CrmReceivableController.java

@@ -5,9 +5,9 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
 import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
 import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
-import cn.iocoder.yudao.module.crm.convert.receivable.ReceivableConvert;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivableDO;
-import cn.iocoder.yudao.module.crm.service.receivable.ReceivableService;
+import cn.iocoder.yudao.module.crm.convert.receivable.CrmReceivableConvert;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivableDO;
+import cn.iocoder.yudao.module.crm.service.receivable.CrmReceivableService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.tags.Tag;
@@ -28,23 +28,23 @@ import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.E
 @RestController
 @RequestMapping("/crm/receivable")
 @Validated
-public class ReceivableController {
+public class CrmReceivableController {
 
     @Resource
-    private ReceivableService receivableService;
+    private CrmReceivableService crmReceivableService;
 
     @PostMapping("/create")
     @Operation(summary = "创建回款管理")
     @PreAuthorize("@ss.hasPermission('crm:receivable:create')")
-    public CommonResult<Long> createReceivable(@Valid @RequestBody ReceivableCreateReqVO createReqVO) {
-        return success(receivableService.createReceivable(createReqVO));
+    public CommonResult<Long> createReceivable(@Valid @RequestBody CrmReceivableCreateReqVO createReqVO) {
+        return success(crmReceivableService.createReceivable(createReqVO));
     }
 
     @PutMapping("/update")
     @Operation(summary = "更新回款管理")
     @PreAuthorize("@ss.hasPermission('crm:receivable:update')")
-    public CommonResult<Boolean> updateReceivable(@Valid @RequestBody ReceivableUpdateReqVO updateReqVO) {
-        receivableService.updateReceivable(updateReqVO);
+    public CommonResult<Boolean> updateReceivable(@Valid @RequestBody CrmReceivableUpdateReqVO updateReqVO) {
+        crmReceivableService.updateReceivable(updateReqVO);
         return success(true);
     }
 
@@ -53,7 +53,7 @@ public class ReceivableController {
     @Parameter(name = "id", description = "编号", required = true)
     @PreAuthorize("@ss.hasPermission('crm:receivable:delete')")
     public CommonResult<Boolean> deleteReceivable(@RequestParam("id") Long id) {
-        receivableService.deleteReceivable(id);
+        crmReceivableService.deleteReceivable(id);
         return success(true);
     }
 
@@ -61,29 +61,29 @@ public class ReceivableController {
     @Operation(summary = "获得回款管理")
     @Parameter(name = "id", description = "编号", required = true, example = "1024")
     @PreAuthorize("@ss.hasPermission('crm:receivable:query')")
-    public CommonResult<ReceivableRespVO> getReceivable(@RequestParam("id") Long id) {
-        ReceivableDO receivable = receivableService.getReceivable(id);
-        return success(ReceivableConvert.INSTANCE.convert(receivable));
+    public CommonResult<CrmReceivableRespVO> getReceivable(@RequestParam("id") Long id) {
+        CrmReceivableDO receivable = crmReceivableService.getReceivable(id);
+        return success(CrmReceivableConvert.INSTANCE.convert(receivable));
     }
 
     @GetMapping("/page")
     @Operation(summary = "获得回款管理分页")
     @PreAuthorize("@ss.hasPermission('crm:receivable:query')")
-    public CommonResult<PageResult<ReceivableRespVO>> getReceivablePage(@Valid ReceivablePageReqVO pageVO) {
-        PageResult<ReceivableDO> pageResult = receivableService.getReceivablePage(pageVO);
-        return success(ReceivableConvert.INSTANCE.convertPage(pageResult));
+    public CommonResult<PageResult<CrmReceivableRespVO>> getReceivablePage(@Valid CrmReceivablePageReqVO pageVO) {
+        PageResult<CrmReceivableDO> pageResult = crmReceivableService.getReceivablePage(pageVO);
+        return success(CrmReceivableConvert.INSTANCE.convertPage(pageResult));
     }
 
     @GetMapping("/export-excel")
     @Operation(summary = "导出回款管理 Excel")
     @PreAuthorize("@ss.hasPermission('crm:receivable:export')")
     @OperateLog(type = EXPORT)
-    public void exportReceivableExcel(@Valid ReceivableExportReqVO exportReqVO,
+    public void exportReceivableExcel(@Valid CrmReceivableExportReqVO exportReqVO,
               HttpServletResponse response) throws IOException {
-        List<ReceivableDO> list = receivableService.getReceivableList(exportReqVO);
+        List<CrmReceivableDO> list = crmReceivableService.getReceivableList(exportReqVO);
         // 导出 Excel
-        List<ReceivableExcelVO> datas = ReceivableConvert.INSTANCE.convertList02(list);
-        ExcelUtils.write(response, "回款管理.xls", "数据", ReceivableExcelVO.class, datas);
+        List<CrmReceivableExcelVO> datas = CrmReceivableConvert.INSTANCE.convertList02(list);
+        ExcelUtils.write(response, "回款管理.xls", "数据", CrmReceivableExcelVO.class, datas);
     }
 
 }

+ 20 - 20
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/ReceivablePlanController.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/CrmReceivablePlanController.java

@@ -5,9 +5,9 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
 import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
 import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
-import cn.iocoder.yudao.module.crm.convert.receivable.ReceivablePlanConvert;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivablePlanDO;
-import cn.iocoder.yudao.module.crm.service.receivable.ReceivablePlanService;
+import cn.iocoder.yudao.module.crm.convert.receivable.CrmReceivablePlanConvert;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivablePlanDO;
+import cn.iocoder.yudao.module.crm.service.receivable.CrmReceivablePlanService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.tags.Tag;
@@ -28,23 +28,23 @@ import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.E
 @RestController
 @RequestMapping("/crm/receivable-plan")
 @Validated
-public class ReceivablePlanController {
+public class CrmReceivablePlanController {
 
     @Resource
-    private ReceivablePlanService receivablePlanService;
+    private CrmReceivablePlanService crmReceivablePlanService;
 
     @PostMapping("/create")
     @Operation(summary = "创建回款计划")
     @PreAuthorize("@ss.hasPermission('crm:receivable-plan:create')")
-    public CommonResult<Long> createReceivablePlan(@Valid @RequestBody ReceivablePlanCreateReqVO createReqVO) {
-        return success(receivablePlanService.createReceivablePlan(createReqVO));
+    public CommonResult<Long> createReceivablePlan(@Valid @RequestBody CrmReceivablePlanCreateReqVO createReqVO) {
+        return success(crmReceivablePlanService.createReceivablePlan(createReqVO));
     }
 
     @PutMapping("/update")
     @Operation(summary = "更新回款计划")
     @PreAuthorize("@ss.hasPermission('crm:receivable-plan:update')")
-    public CommonResult<Boolean> updateReceivablePlan(@Valid @RequestBody ReceivablePlanUpdateReqVO updateReqVO) {
-        receivablePlanService.updateReceivablePlan(updateReqVO);
+    public CommonResult<Boolean> updateReceivablePlan(@Valid @RequestBody CrmReceivablePlanUpdateReqVO updateReqVO) {
+        crmReceivablePlanService.updateReceivablePlan(updateReqVO);
         return success(true);
     }
 
@@ -53,7 +53,7 @@ public class ReceivablePlanController {
     @Parameter(name = "id", description = "编号", required = true)
     @PreAuthorize("@ss.hasPermission('crm:receivable-plan:delete')")
     public CommonResult<Boolean> deleteReceivablePlan(@RequestParam("id") Long id) {
-        receivablePlanService.deleteReceivablePlan(id);
+        crmReceivablePlanService.deleteReceivablePlan(id);
         return success(true);
     }
 
@@ -61,29 +61,29 @@ public class ReceivablePlanController {
     @Operation(summary = "获得回款计划")
     @Parameter(name = "id", description = "编号", required = true, example = "1024")
     @PreAuthorize("@ss.hasPermission('crm:receivable-plan:query')")
-    public CommonResult<ReceivablePlanRespVO> getReceivablePlan(@RequestParam("id") Long id) {
-        ReceivablePlanDO receivablePlan = receivablePlanService.getReceivablePlan(id);
-        return success(ReceivablePlanConvert.INSTANCE.convert(receivablePlan));
+    public CommonResult<CrmReceivablePlanRespVO> getReceivablePlan(@RequestParam("id") Long id) {
+        CrmReceivablePlanDO receivablePlan = crmReceivablePlanService.getReceivablePlan(id);
+        return success(CrmReceivablePlanConvert.INSTANCE.convert(receivablePlan));
     }
 
     @GetMapping("/page")
     @Operation(summary = "获得回款计划分页")
     @PreAuthorize("@ss.hasPermission('crm:receivable-plan:query')")
-    public CommonResult<PageResult<ReceivablePlanRespVO>> getReceivablePlanPage(@Valid ReceivablePlanPageReqVO pageVO) {
-        PageResult<ReceivablePlanDO> pageResult = receivablePlanService.getReceivablePlanPage(pageVO);
-        return success(ReceivablePlanConvert.INSTANCE.convertPage(pageResult));
+    public CommonResult<PageResult<CrmReceivablePlanRespVO>> getReceivablePlanPage(@Valid CrmReceivablePlanPageReqVO pageVO) {
+        PageResult<CrmReceivablePlanDO> pageResult = crmReceivablePlanService.getReceivablePlanPage(pageVO);
+        return success(CrmReceivablePlanConvert.INSTANCE.convertPage(pageResult));
     }
 
     @GetMapping("/export-excel")
     @Operation(summary = "导出回款计划 Excel")
     @PreAuthorize("@ss.hasPermission('crm:receivable-plan:export')")
     @OperateLog(type = EXPORT)
-    public void exportReceivablePlanExcel(@Valid ReceivablePlanExportReqVO exportReqVO,
+    public void exportReceivablePlanExcel(@Valid CrmReceivablePlanExportReqVO exportReqVO,
               HttpServletResponse response) throws IOException {
-        List<ReceivablePlanDO> list = receivablePlanService.getReceivablePlanList(exportReqVO);
+        List<CrmReceivablePlanDO> list = crmReceivablePlanService.getReceivablePlanList(exportReqVO);
         // 导出 Excel
-        List<ReceivablePlanExcelVO> datas = ReceivablePlanConvert.INSTANCE.convertList02(list);
-        ExcelUtils.write(response, "回款计划.xls", "数据", ReceivablePlanExcelVO.class, datas);
+        List<CrmReceivablePlanExcelVO> datas = CrmReceivablePlanConvert.INSTANCE.convertList02(list);
+        ExcelUtils.write(response, "回款计划.xls", "数据", CrmReceivablePlanExcelVO.class, datas);
     }
 
 }

+ 4 - 3
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivableBaseVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableBaseVO.java

@@ -6,8 +6,6 @@ import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 import org.springframework.format.annotation.DateTimeFormat;
 
-import javax.validation.constraints.NotNull;
-import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
 import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@@ -17,7 +15,7 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_
  * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成
  */
 @Data
-public class ReceivableBaseVO {
+public class CrmReceivableBaseVO {
 
     @Schema(description = "回款编号",requiredMode = Schema.RequiredMode.REQUIRED, example = "31177")
     private String no;
@@ -57,4 +55,7 @@ public class ReceivableBaseVO {
     @Schema(description = "备注", example = "备注")
     private String remark;
 
+    @Schema(description = "完成状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
+    private Integer status;
+
 }

+ 1 - 3
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivableCreateReqVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableCreateReqVO.java

@@ -1,14 +1,12 @@
 package cn.iocoder.yudao.module.crm.controller.admin.receivable.vo;
 
 import lombok.*;
-import java.util.*;
 import io.swagger.v3.oas.annotations.media.Schema;
-import javax.validation.constraints.*;
 
 @Schema(description = "管理后台 - CRM 回款创建 Request VO")
 @Data
 @EqualsAndHashCode(callSuper = true)
 @ToString(callSuper = true)
-public class ReceivableCreateReqVO extends ReceivableBaseVO {
+public class CrmReceivableCreateReqVO extends CrmReceivableBaseVO {
 
 }

+ 2 - 6
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivableExcelVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableExcelVO.java

@@ -1,12 +1,8 @@
 package cn.iocoder.yudao.module.crm.controller.admin.receivable.vo;
 
 import cn.iocoder.yudao.module.system.enums.DictTypeConstants;
-import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
-import java.util.*;
-import java.time.LocalDateTime;
-import java.math.BigDecimal;
-import java.time.LocalDateTime;
+
 import java.time.LocalDateTime;
 
 import com.alibaba.excel.annotation.ExcelProperty;
@@ -20,7 +16,7 @@ import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
  * @author 赤焰
  */
 @Data
-public class ReceivableExcelVO {
+public class CrmReceivableExcelVO {
 
     @ExcelProperty("ID")
     private Long id;

+ 2 - 2
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivableExportReqVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableExportReqVO.java

@@ -11,9 +11,9 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_
 /**
  * @author 赤焰
  */
-@Schema(description = "管理后台 - CRM 回款 Excel 导出 Request VO,参数和 ReceivablePageReqVO 是一致的")
+@Schema(description = "管理后台 - CRM 回款 Excel 导出 Request VO,参数和 CrmReceivablePageReqVO 是一致的")
 @Data
-public class ReceivableExportReqVO {
+public class CrmReceivableExportReqVO {
 
     @Schema(description = "回款编号")
     private String no;

+ 1 - 2
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivablePageReqVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePageReqVO.java

@@ -7,7 +7,6 @@ import lombok.EqualsAndHashCode;
 import lombok.ToString;
 import org.springframework.format.annotation.DateTimeFormat;
 
-import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
 import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@@ -16,7 +15,7 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_
 @Data
 @EqualsAndHashCode(callSuper = true)
 @ToString(callSuper = true)
-public class ReceivablePageReqVO extends PageParam {
+public class CrmReceivablePageReqVO extends PageParam {
 
     @Schema(description = "回款编号")
     private String no;

+ 1 - 1
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivablePlanBaseVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanBaseVO.java

@@ -15,7 +15,7 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_
  * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成
  */
 @Data
-public class ReceivablePlanBaseVO {
+public class CrmReceivablePlanBaseVO {
 
     @Schema(description = "期数", example = "1")
     private Integer period;

+ 1 - 3
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivablePlanCreateReqVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanCreateReqVO.java

@@ -1,14 +1,12 @@
 package cn.iocoder.yudao.module.crm.controller.admin.receivable.vo;
 
 import lombok.*;
-import java.util.*;
 import io.swagger.v3.oas.annotations.media.Schema;
-import javax.validation.constraints.*;
 
 @Schema(description = "管理后台 - CRM 回款计划创建 Request VO")
 @Data
 @EqualsAndHashCode(callSuper = true)
 @ToString(callSuper = true)
-public class ReceivablePlanCreateReqVO extends ReceivablePlanBaseVO {
+public class CrmReceivablePlanCreateReqVO extends CrmReceivablePlanBaseVO {
 
 }

+ 1 - 2
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivablePlanExcelVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanExcelVO.java

@@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.crm.controller.admin.receivable.vo;
 import cn.iocoder.yudao.module.system.enums.DictTypeConstants;
 import lombok.*;
 
-import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
 import com.alibaba.excel.annotation.ExcelProperty;
@@ -17,7 +16,7 @@ import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
  * @author 芋道源码
  */
 @Data
-public class ReceivablePlanExcelVO {
+public class CrmReceivablePlanExcelVO {
 
     @ExcelProperty("ID")
     private Long id;

+ 2 - 2
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivablePlanExportReqVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanExportReqVO.java

@@ -8,9 +8,9 @@ import org.springframework.format.annotation.DateTimeFormat;
 
 import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
 
-@Schema(description = "管理后台 - CRM 回款计划 Excel 导出 Request VO,参数和 ReceivablePlanPageReqVO 是一致的")
+@Schema(description = "管理后台 - CRM 回款计划 Excel 导出 Request VO,参数和 CrmReceivablePlanPageReqVO 是一致的")
 @Data
-public class ReceivablePlanExportReqVO {
+public class CrmReceivablePlanExportReqVO {
 
     @Schema(description = "期数")
     private Integer period;

+ 1 - 1
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivablePlanPageReqVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanPageReqVO.java

@@ -15,7 +15,7 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_
 @Data
 @EqualsAndHashCode(callSuper = true)
 @ToString(callSuper = true)
-public class ReceivablePlanPageReqVO extends PageParam {
+public class CrmReceivablePlanPageReqVO extends PageParam {
 
     @Schema(description = "完成状态", example = "2")
     private Integer status;

+ 1 - 1
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivablePlanRespVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanRespVO.java

@@ -8,7 +8,7 @@ import java.time.LocalDateTime;
 @Data
 @EqualsAndHashCode(callSuper = true)
 @ToString(callSuper = true)
-public class ReceivablePlanRespVO extends ReceivablePlanBaseVO {
+public class CrmReceivablePlanRespVO extends CrmReceivablePlanBaseVO {
 
     @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25153")
     private Long id;

+ 2 - 2
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivablePlanUpdateReqVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivablePlanUpdateReqVO.java

@@ -2,14 +2,14 @@ package cn.iocoder.yudao.module.crm.controller.admin.receivable.vo;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
-import java.util.*;
+
 import javax.validation.constraints.*;
 
 @Schema(description = "管理后台 - CRM 回款计划更新 Request VO")
 @Data
 @EqualsAndHashCode(callSuper = true)
 @ToString(callSuper = true)
-public class ReceivablePlanUpdateReqVO extends ReceivablePlanBaseVO {
+public class CrmReceivablePlanUpdateReqVO extends CrmReceivablePlanBaseVO {
 
     @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25153")
     @NotNull(message = "ID不能为空")

+ 1 - 1
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivableRespVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableRespVO.java

@@ -8,7 +8,7 @@ import java.time.LocalDateTime;
 @Data
 @EqualsAndHashCode(callSuper = true)
 @ToString(callSuper = true)
-public class ReceivableRespVO extends ReceivableBaseVO {
+public class CrmReceivableRespVO extends CrmReceivableBaseVO {
 
     @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25787")
     private Long id;

+ 2 - 2
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/ReceivableUpdateReqVO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/receivable/vo/CrmReceivableUpdateReqVO.java

@@ -2,14 +2,14 @@ package cn.iocoder.yudao.module.crm.controller.admin.receivable.vo;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
-import java.util.*;
+
 import javax.validation.constraints.*;
 
 @Schema(description = "管理后台 - CRM 回款更新 Request VO")
 @Data
 @EqualsAndHashCode(callSuper = true)
 @ToString(callSuper = true)
-public class ReceivableUpdateReqVO extends ReceivableBaseVO {
+public class CrmReceivableUpdateReqVO extends CrmReceivableBaseVO {
 
     @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25787")
     @NotNull(message = "ID不能为空")

+ 34 - 0
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/receivable/CrmReceivableConvert.java

@@ -0,0 +1,34 @@
+package cn.iocoder.yudao.module.crm.convert.receivable;
+
+import java.util.*;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivableDO;
+import org.mapstruct.Mapper;
+import org.mapstruct.factory.Mappers;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
+
+/**
+ * 回款管理 Convert
+ *
+ * @author 赤焰
+ */
+@Mapper
+public interface CrmReceivableConvert {
+
+    CrmReceivableConvert INSTANCE = Mappers.getMapper(CrmReceivableConvert.class);
+
+    CrmReceivableDO convert(CrmReceivableCreateReqVO bean);
+
+    CrmReceivableDO convert(CrmReceivableUpdateReqVO bean);
+
+    CrmReceivableRespVO convert(CrmReceivableDO bean);
+
+    List<CrmReceivableRespVO> convertList(List<CrmReceivableDO> list);
+
+    PageResult<CrmReceivableRespVO> convertPage(PageResult<CrmReceivableDO> page);
+
+    List<CrmReceivableExcelVO> convertList02(List<CrmReceivableDO> list);
+
+}

+ 34 - 0
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/receivable/CrmReceivablePlanConvert.java

@@ -0,0 +1,34 @@
+package cn.iocoder.yudao.module.crm.convert.receivable;
+
+import java.util.*;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivablePlanDO;
+import org.mapstruct.Mapper;
+import org.mapstruct.factory.Mappers;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
+
+/**
+ * 回款计划 Convert
+ *
+ * @author 芋道源码
+ */
+@Mapper
+public interface CrmReceivablePlanConvert {
+
+    CrmReceivablePlanConvert INSTANCE = Mappers.getMapper(CrmReceivablePlanConvert.class);
+
+    CrmReceivablePlanDO convert(CrmReceivablePlanCreateReqVO bean);
+
+    CrmReceivablePlanDO convert(CrmReceivablePlanUpdateReqVO bean);
+
+    CrmReceivablePlanRespVO convert(CrmReceivablePlanDO bean);
+
+    List<CrmReceivablePlanRespVO> convertList(List<CrmReceivablePlanDO> list);
+
+    PageResult<CrmReceivablePlanRespVO> convertPage(PageResult<CrmReceivablePlanDO> page);
+
+    List<CrmReceivablePlanExcelVO> convertList02(List<CrmReceivablePlanDO> list);
+
+}

+ 0 - 34
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/receivable/ReceivableConvert.java

@@ -1,34 +0,0 @@
-package cn.iocoder.yudao.module.crm.convert.receivable;
-
-import java.util.*;
-
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
-
-import org.mapstruct.Mapper;
-import org.mapstruct.factory.Mappers;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivableDO;
-
-/**
- * 回款管理 Convert
- *
- * @author 赤焰
- */
-@Mapper
-public interface ReceivableConvert {
-
-    ReceivableConvert INSTANCE = Mappers.getMapper(ReceivableConvert.class);
-
-    ReceivableDO convert(ReceivableCreateReqVO bean);
-
-    ReceivableDO convert(ReceivableUpdateReqVO bean);
-
-    ReceivableRespVO convert(ReceivableDO bean);
-
-    List<ReceivableRespVO> convertList(List<ReceivableDO> list);
-
-    PageResult<ReceivableRespVO> convertPage(PageResult<ReceivableDO> page);
-
-    List<ReceivableExcelVO> convertList02(List<ReceivableDO> list);
-
-}

+ 0 - 34
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/receivable/ReceivablePlanConvert.java

@@ -1,34 +0,0 @@
-package cn.iocoder.yudao.module.crm.convert.receivable;
-
-import java.util.*;
-
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
-
-import org.mapstruct.Mapper;
-import org.mapstruct.factory.Mappers;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivablePlanDO;
-
-/**
- * 回款计划 Convert
- *
- * @author 芋道源码
- */
-@Mapper
-public interface ReceivablePlanConvert {
-
-    ReceivablePlanConvert INSTANCE = Mappers.getMapper(ReceivablePlanConvert.class);
-
-    ReceivablePlanDO convert(ReceivablePlanCreateReqVO bean);
-
-    ReceivablePlanDO convert(ReceivablePlanUpdateReqVO bean);
-
-    ReceivablePlanRespVO convert(ReceivablePlanDO bean);
-
-    List<ReceivablePlanRespVO> convertList(List<ReceivablePlanDO> list);
-
-    PageResult<ReceivablePlanRespVO> convertPage(PageResult<ReceivablePlanDO> page);
-
-    List<ReceivablePlanExcelVO> convertList02(List<ReceivablePlanDO> list);
-
-}

+ 2 - 2
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/receivable/ReceivableDO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/receivable/CrmReceivableDO.java

@@ -21,7 +21,7 @@ import java.time.LocalDateTime;
 @Builder
 @NoArgsConstructor
 @AllArgsConstructor
-public class ReceivableDO extends BaseDO {
+public class CrmReceivableDO extends BaseDO {
 
     /**
      * ID
@@ -35,7 +35,7 @@ public class ReceivableDO extends BaseDO {
     /**
      * 回款计划
      *
-     * 对应实体 {@link cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivablePlanDO}
+     * 对应实体 {@link CrmReceivablePlanDO}
      */
     private Long planId;
     /**

+ 1 - 2
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/receivable/ReceivablePlanDO.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/receivable/CrmReceivablePlanDO.java

@@ -2,7 +2,6 @@ package cn.iocoder.yudao.module.crm.dal.dataobject.receivable;
 
 import lombok.*;
 
-import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
 import com.baomidou.mybatisplus.annotation.*;
@@ -21,7 +20,7 @@ import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
 @Builder
 @NoArgsConstructor
 @AllArgsConstructor
-public class ReceivablePlanDO extends BaseDO {
+public class CrmReceivablePlanDO extends BaseDO {
 
     /**
      * ID

+ 54 - 0
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/receivable/CrmReceivableMapper.java

@@ -0,0 +1,54 @@
+package cn.iocoder.yudao.module.crm.dal.mysql.receivable;
+
+import java.util.*;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
+import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivableDO;
+import org.apache.ibatis.annotations.Mapper;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
+
+/**
+ * 回款管理 Mapper
+ *
+ * @author 赤焰
+ */
+@Mapper
+public interface CrmReceivableMapper extends BaseMapperX<CrmReceivableDO> {
+
+    default PageResult<CrmReceivableDO> selectPage(CrmReceivablePageReqVO reqVO) {
+        return selectPage(reqVO, new LambdaQueryWrapperX<CrmReceivableDO>()
+                .eqIfPresent(CrmReceivableDO::getNo, reqVO.getNo())
+                .eqIfPresent(CrmReceivableDO::getPlanId, reqVO.getPlanId())
+                .eqIfPresent(CrmReceivableDO::getCustomerId, reqVO.getCustomerId())
+                .eqIfPresent(CrmReceivableDO::getContractId, reqVO.getContractId())
+                .eqIfPresent(CrmReceivableDO::getCheckStatus, reqVO.getCheckStatus())
+                .betweenIfPresent(CrmReceivableDO::getReturnTime, reqVO.getReturnTime())
+                .eqIfPresent(CrmReceivableDO::getReturnType, reqVO.getReturnType())
+                .eqIfPresent(CrmReceivableDO::getPrice, reqVO.getPrice())
+                .eqIfPresent(CrmReceivableDO::getOwnerUserId, reqVO.getOwnerUserId())
+                .eqIfPresent(CrmReceivableDO::getStatus, reqVO.getStatus())
+                .betweenIfPresent(CrmReceivableDO::getCreateTime, reqVO.getCreateTime())
+                .orderByDesc(CrmReceivableDO::getId));
+    }
+
+    default List<CrmReceivableDO> selectList(CrmReceivableExportReqVO reqVO) {
+        return selectList(new LambdaQueryWrapperX<CrmReceivableDO>()
+                .eqIfPresent(CrmReceivableDO::getNo, reqVO.getNo())
+                .eqIfPresent(CrmReceivableDO::getPlanId, reqVO.getPlanId())
+                .eqIfPresent(CrmReceivableDO::getCustomerId, reqVO.getCustomerId())
+                .eqIfPresent(CrmReceivableDO::getContractId, reqVO.getContractId())
+                .eqIfPresent(CrmReceivableDO::getCheckStatus, reqVO.getCheckStatus())
+                .betweenIfPresent(CrmReceivableDO::getReturnTime, reqVO.getReturnTime())
+                .eqIfPresent(CrmReceivableDO::getReturnType, reqVO.getReturnType())
+                .eqIfPresent(CrmReceivableDO::getPrice, reqVO.getPrice())
+                .eqIfPresent(CrmReceivableDO::getOwnerUserId, reqVO.getOwnerUserId())
+                .eqIfPresent(CrmReceivableDO::getBatchId, reqVO.getBatchId())
+                .eqIfPresent(CrmReceivableDO::getStatus, reqVO.getStatus())
+                .eqIfPresent(CrmReceivableDO::getRemark, reqVO.getRemark())
+                .betweenIfPresent(CrmReceivableDO::getCreateTime, reqVO.getCreateTime())
+                .orderByDesc(CrmReceivableDO::getId));
+    }
+
+}

+ 49 - 0
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/receivable/CrmReceivablePlanMapper.java

@@ -0,0 +1,49 @@
+package cn.iocoder.yudao.module.crm.dal.mysql.receivable;
+
+import java.util.*;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
+import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivablePlanDO;
+import org.apache.ibatis.annotations.Mapper;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
+
+/**
+ * 回款计划 Mapper
+ *
+ * @author 芋道源码
+ */
+@Mapper
+public interface CrmReceivablePlanMapper extends BaseMapperX<CrmReceivablePlanDO> {
+
+    default PageResult<CrmReceivablePlanDO> selectPage(CrmReceivablePlanPageReqVO reqVO) {
+        return selectPage(reqVO, new LambdaQueryWrapperX<CrmReceivablePlanDO>()
+                .eqIfPresent(CrmReceivablePlanDO::getStatus, reqVO.getStatus())
+                .eqIfPresent(CrmReceivablePlanDO::getCheckStatus, reqVO.getCheckStatus())
+                .betweenIfPresent(CrmReceivablePlanDO::getReturnTime, reqVO.getReturnTime())
+                .betweenIfPresent(CrmReceivablePlanDO::getRemindTime, reqVO.getRemindTime())
+                .eqIfPresent(CrmReceivablePlanDO::getCustomerId, reqVO.getCustomerId())
+                .eqIfPresent(CrmReceivablePlanDO::getContractId, reqVO.getContractId())
+                .eqIfPresent(CrmReceivablePlanDO::getOwnerUserId, reqVO.getOwnerUserId())
+                .betweenIfPresent(CrmReceivablePlanDO::getCreateTime, reqVO.getCreateTime())
+                .orderByDesc(CrmReceivablePlanDO::getId));
+    }
+
+    default List<CrmReceivablePlanDO> selectList(CrmReceivablePlanExportReqVO reqVO) {
+        return selectList(new LambdaQueryWrapperX<CrmReceivablePlanDO>()
+                .eqIfPresent(CrmReceivablePlanDO::getPeriod, reqVO.getPeriod())
+                .eqIfPresent(CrmReceivablePlanDO::getStatus, reqVO.getStatus())
+                .eqIfPresent(CrmReceivablePlanDO::getCheckStatus, reqVO.getCheckStatus())
+                .betweenIfPresent(CrmReceivablePlanDO::getReturnTime, reqVO.getReturnTime())
+                .eqIfPresent(CrmReceivablePlanDO::getRemindDays, reqVO.getRemindDays())
+                .betweenIfPresent(CrmReceivablePlanDO::getRemindTime, reqVO.getRemindTime())
+                .eqIfPresent(CrmReceivablePlanDO::getCustomerId, reqVO.getCustomerId())
+                .eqIfPresent(CrmReceivablePlanDO::getContractId, reqVO.getContractId())
+                .eqIfPresent(CrmReceivablePlanDO::getOwnerUserId, reqVO.getOwnerUserId())
+                .eqIfPresent(CrmReceivablePlanDO::getRemark, reqVO.getRemark())
+                .betweenIfPresent(CrmReceivablePlanDO::getCreateTime, reqVO.getCreateTime())
+                .orderByDesc(CrmReceivablePlanDO::getId));
+    }
+
+}

+ 0 - 54
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/receivable/ReceivableMapper.java

@@ -1,54 +0,0 @@
-package cn.iocoder.yudao.module.crm.dal.mysql.receivable;
-
-import java.util.*;
-
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivableDO;
-import org.apache.ibatis.annotations.Mapper;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
-
-/**
- * 回款管理 Mapper
- *
- * @author 赤焰
- */
-@Mapper
-public interface ReceivableMapper extends BaseMapperX<ReceivableDO> {
-
-    default PageResult<ReceivableDO> selectPage(ReceivablePageReqVO reqVO) {
-        return selectPage(reqVO, new LambdaQueryWrapperX<ReceivableDO>()
-                .eqIfPresent(ReceivableDO::getNo, reqVO.getNo())
-                .eqIfPresent(ReceivableDO::getPlanId, reqVO.getPlanId())
-                .eqIfPresent(ReceivableDO::getCustomerId, reqVO.getCustomerId())
-                .eqIfPresent(ReceivableDO::getContractId, reqVO.getContractId())
-                .eqIfPresent(ReceivableDO::getCheckStatus, reqVO.getCheckStatus())
-                .betweenIfPresent(ReceivableDO::getReturnTime, reqVO.getReturnTime())
-                .eqIfPresent(ReceivableDO::getReturnType, reqVO.getReturnType())
-                .eqIfPresent(ReceivableDO::getPrice, reqVO.getPrice())
-                .eqIfPresent(ReceivableDO::getOwnerUserId, reqVO.getOwnerUserId())
-                .eqIfPresent(ReceivableDO::getStatus, reqVO.getStatus())
-                .betweenIfPresent(ReceivableDO::getCreateTime, reqVO.getCreateTime())
-                .orderByDesc(ReceivableDO::getId));
-    }
-
-    default List<ReceivableDO> selectList(ReceivableExportReqVO reqVO) {
-        return selectList(new LambdaQueryWrapperX<ReceivableDO>()
-                .eqIfPresent(ReceivableDO::getNo, reqVO.getNo())
-                .eqIfPresent(ReceivableDO::getPlanId, reqVO.getPlanId())
-                .eqIfPresent(ReceivableDO::getCustomerId, reqVO.getCustomerId())
-                .eqIfPresent(ReceivableDO::getContractId, reqVO.getContractId())
-                .eqIfPresent(ReceivableDO::getCheckStatus, reqVO.getCheckStatus())
-                .betweenIfPresent(ReceivableDO::getReturnTime, reqVO.getReturnTime())
-                .eqIfPresent(ReceivableDO::getReturnType, reqVO.getReturnType())
-                .eqIfPresent(ReceivableDO::getPrice, reqVO.getPrice())
-                .eqIfPresent(ReceivableDO::getOwnerUserId, reqVO.getOwnerUserId())
-                .eqIfPresent(ReceivableDO::getBatchId, reqVO.getBatchId())
-                .eqIfPresent(ReceivableDO::getStatus, reqVO.getStatus())
-                .eqIfPresent(ReceivableDO::getRemark, reqVO.getRemark())
-                .betweenIfPresent(ReceivableDO::getCreateTime, reqVO.getCreateTime())
-                .orderByDesc(ReceivableDO::getId));
-    }
-
-}

+ 0 - 49
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/receivable/ReceivablePlanMapper.java

@@ -1,49 +0,0 @@
-package cn.iocoder.yudao.module.crm.dal.mysql.receivable;
-
-import java.util.*;
-
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivablePlanDO;
-import org.apache.ibatis.annotations.Mapper;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
-
-/**
- * 回款计划 Mapper
- *
- * @author 芋道源码
- */
-@Mapper
-public interface ReceivablePlanMapper extends BaseMapperX<ReceivablePlanDO> {
-
-    default PageResult<ReceivablePlanDO> selectPage(ReceivablePlanPageReqVO reqVO) {
-        return selectPage(reqVO, new LambdaQueryWrapperX<ReceivablePlanDO>()
-                .eqIfPresent(ReceivablePlanDO::getStatus, reqVO.getStatus())
-                .eqIfPresent(ReceivablePlanDO::getCheckStatus, reqVO.getCheckStatus())
-                .betweenIfPresent(ReceivablePlanDO::getReturnTime, reqVO.getReturnTime())
-                .betweenIfPresent(ReceivablePlanDO::getRemindTime, reqVO.getRemindTime())
-                .eqIfPresent(ReceivablePlanDO::getCustomerId, reqVO.getCustomerId())
-                .eqIfPresent(ReceivablePlanDO::getContractId, reqVO.getContractId())
-                .eqIfPresent(ReceivablePlanDO::getOwnerUserId, reqVO.getOwnerUserId())
-                .betweenIfPresent(ReceivablePlanDO::getCreateTime, reqVO.getCreateTime())
-                .orderByDesc(ReceivablePlanDO::getId));
-    }
-
-    default List<ReceivablePlanDO> selectList(ReceivablePlanExportReqVO reqVO) {
-        return selectList(new LambdaQueryWrapperX<ReceivablePlanDO>()
-                .eqIfPresent(ReceivablePlanDO::getPeriod, reqVO.getPeriod())
-                .eqIfPresent(ReceivablePlanDO::getStatus, reqVO.getStatus())
-                .eqIfPresent(ReceivablePlanDO::getCheckStatus, reqVO.getCheckStatus())
-                .betweenIfPresent(ReceivablePlanDO::getReturnTime, reqVO.getReturnTime())
-                .eqIfPresent(ReceivablePlanDO::getRemindDays, reqVO.getRemindDays())
-                .betweenIfPresent(ReceivablePlanDO::getRemindTime, reqVO.getRemindTime())
-                .eqIfPresent(ReceivablePlanDO::getCustomerId, reqVO.getCustomerId())
-                .eqIfPresent(ReceivablePlanDO::getContractId, reqVO.getContractId())
-                .eqIfPresent(ReceivablePlanDO::getOwnerUserId, reqVO.getOwnerUserId())
-                .eqIfPresent(ReceivablePlanDO::getRemark, reqVO.getRemark())
-                .betweenIfPresent(ReceivablePlanDO::getCreateTime, reqVO.getCreateTime())
-                .orderByDesc(ReceivablePlanDO::getId));
-    }
-
-}

+ 8 - 8
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/ReceivablePlanService.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivablePlanService.java

@@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.crm.service.receivable;
 import java.util.*;
 import javax.validation.*;
 import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivablePlanDO;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivablePlanDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 
 /**
@@ -11,7 +11,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
  *
  * @author 芋道源码
  */
-public interface ReceivablePlanService {
+public interface CrmReceivablePlanService {
 
     /**
      * 创建回款计划
@@ -19,14 +19,14 @@ public interface ReceivablePlanService {
      * @param createReqVO 创建信息
      * @return 编号
      */
-    Long createReceivablePlan(@Valid ReceivablePlanCreateReqVO createReqVO);
+    Long createReceivablePlan(@Valid CrmReceivablePlanCreateReqVO createReqVO);
 
     /**
      * 更新回款计划
      *
      * @param updateReqVO 更新信息
      */
-    void updateReceivablePlan(@Valid ReceivablePlanUpdateReqVO updateReqVO);
+    void updateReceivablePlan(@Valid CrmReceivablePlanUpdateReqVO updateReqVO);
 
     /**
      * 删除回款计划
@@ -41,7 +41,7 @@ public interface ReceivablePlanService {
      * @param id 编号
      * @return 回款计划
      */
-    ReceivablePlanDO getReceivablePlan(Long id);
+    CrmReceivablePlanDO getReceivablePlan(Long id);
 
     /**
      * 获得回款计划列表
@@ -49,7 +49,7 @@ public interface ReceivablePlanService {
      * @param ids 编号
      * @return 回款计划列表
      */
-    List<ReceivablePlanDO> getReceivablePlanList(Collection<Long> ids);
+    List<CrmReceivablePlanDO> getReceivablePlanList(Collection<Long> ids);
 
     /**
      * 获得回款计划分页
@@ -57,7 +57,7 @@ public interface ReceivablePlanService {
      * @param pageReqVO 分页查询
      * @return 回款计划分页
      */
-    PageResult<ReceivablePlanDO> getReceivablePlanPage(ReceivablePlanPageReqVO pageReqVO);
+    PageResult<CrmReceivablePlanDO> getReceivablePlanPage(CrmReceivablePlanPageReqVO pageReqVO);
 
     /**
      * 获得回款计划列表, 用于 Excel 导出
@@ -65,6 +65,6 @@ public interface ReceivablePlanService {
      * @param exportReqVO 查询条件
      * @return 回款计划列表
      */
-    List<ReceivablePlanDO> getReceivablePlanList(ReceivablePlanExportReqVO exportReqVO);
+    List<CrmReceivablePlanDO> getReceivablePlanList(CrmReceivablePlanExportReqVO exportReqVO);
 
 }

+ 26 - 27
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/ReceivablePlanServiceImpl.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivablePlanServiceImpl.java

@@ -5,16 +5,15 @@ import cn.hutool.core.collection.ListUtil;
 import cn.hutool.core.util.ObjectUtil;
 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivablePlanCreateReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivablePlanExportReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivablePlanPageReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivablePlanUpdateReqVO;
-import cn.iocoder.yudao.module.crm.convert.receivable.ReceivablePlanConvert;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivablePlanCreateReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivablePlanExportReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivablePlanPageReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivablePlanUpdateReqVO;
+import cn.iocoder.yudao.module.crm.convert.receivable.CrmReceivablePlanConvert;
 import cn.iocoder.yudao.module.crm.dal.dataobject.contract.ContractDO;
 import cn.iocoder.yudao.module.crm.dal.dataobject.customer.CrmCustomerDO;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivableDO;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivablePlanDO;
-import cn.iocoder.yudao.module.crm.dal.mysql.receivable.ReceivablePlanMapper;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivablePlanDO;
+import cn.iocoder.yudao.module.crm.dal.mysql.receivable.CrmReceivablePlanMapper;
 import cn.iocoder.yudao.module.crm.enums.AuditStatusEnum;
 import cn.iocoder.yudao.module.crm.service.contract.ContractService;
 import cn.iocoder.yudao.module.crm.service.customer.CrmCustomerService;
@@ -35,19 +34,19 @@ import static cn.iocoder.yudao.module.crm.enums.ErrorCodeConstants.*;
  */
 @Service
 @Validated
-public class ReceivablePlanServiceImpl implements ReceivablePlanService {
+public class CrmReceivablePlanServiceImpl implements CrmReceivablePlanService {
 
     @Resource
-    private ReceivablePlanMapper receivablePlanMapper;
+    private CrmReceivablePlanMapper crmReceivablePlanMapper;
     @Resource
     private ContractService contractService;
     @Resource
     private CrmCustomerService crmCustomerService;
 
     @Override
-    public Long createReceivablePlan(ReceivablePlanCreateReqVO createReqVO) {
+    public Long createReceivablePlan(CrmReceivablePlanCreateReqVO createReqVO) {
         // 插入
-        ReceivablePlanDO receivablePlan = ReceivablePlanConvert.INSTANCE.convert(createReqVO);
+        CrmReceivablePlanDO receivablePlan = CrmReceivablePlanConvert.INSTANCE.convert(createReqVO);
         if (ObjectUtil.isNull(receivablePlan.getStatus())){
             receivablePlan.setStatus(CommonStatusEnum.ENABLE.getStatus());
         }
@@ -57,12 +56,12 @@ public class ReceivablePlanServiceImpl implements ReceivablePlanService {
 
         checkReceivablePlan(receivablePlan);
 
-        receivablePlanMapper.insert(receivablePlan);
+        crmReceivablePlanMapper.insert(receivablePlan);
         // 返回
         return receivablePlan.getId();
     }
 
-    private void checkReceivablePlan(ReceivablePlanDO receivablePlan) {
+    private void checkReceivablePlan(CrmReceivablePlanDO receivablePlan) {
 
         if(ObjectUtil.isNull(receivablePlan.getContractId())){
             throw exception(CONTRACT_NOT_EXISTS);
@@ -81,13 +80,13 @@ public class ReceivablePlanServiceImpl implements ReceivablePlanService {
     }
 
     @Override
-    public void updateReceivablePlan(ReceivablePlanUpdateReqVO updateReqVO) {
+    public void updateReceivablePlan(CrmReceivablePlanUpdateReqVO updateReqVO) {
         // 校验存在
         validateReceivablePlanExists(updateReqVO.getId());
 
         // 更新
-        ReceivablePlanDO updateObj = ReceivablePlanConvert.INSTANCE.convert(updateReqVO);
-        receivablePlanMapper.updateById(updateObj);
+        CrmReceivablePlanDO updateObj = CrmReceivablePlanConvert.INSTANCE.convert(updateReqVO);
+        crmReceivablePlanMapper.updateById(updateObj);
     }
 
     @Override
@@ -95,36 +94,36 @@ public class ReceivablePlanServiceImpl implements ReceivablePlanService {
         // 校验存在
         validateReceivablePlanExists(id);
         // 删除
-        receivablePlanMapper.deleteById(id);
+        crmReceivablePlanMapper.deleteById(id);
     }
 
     private void validateReceivablePlanExists(Long id) {
-        if (receivablePlanMapper.selectById(id) == null) {
+        if (crmReceivablePlanMapper.selectById(id) == null) {
             throw exception(RECEIVABLE_PLAN_NOT_EXISTS);
         }
     }
 
     @Override
-    public ReceivablePlanDO getReceivablePlan(Long id) {
-        return receivablePlanMapper.selectById(id);
+    public CrmReceivablePlanDO getReceivablePlan(Long id) {
+        return crmReceivablePlanMapper.selectById(id);
     }
 
     @Override
-    public List<ReceivablePlanDO> getReceivablePlanList(Collection<Long> ids) {
+    public List<CrmReceivablePlanDO> getReceivablePlanList(Collection<Long> ids) {
         if (CollUtil.isEmpty(ids)) {
             return ListUtil.empty();
         }
-        return receivablePlanMapper.selectBatchIds(ids);
+        return crmReceivablePlanMapper.selectBatchIds(ids);
     }
 
     @Override
-    public PageResult<ReceivablePlanDO> getReceivablePlanPage(ReceivablePlanPageReqVO pageReqVO) {
-        return receivablePlanMapper.selectPage(pageReqVO);
+    public PageResult<CrmReceivablePlanDO> getReceivablePlanPage(CrmReceivablePlanPageReqVO pageReqVO) {
+        return crmReceivablePlanMapper.selectPage(pageReqVO);
     }
 
     @Override
-    public List<ReceivablePlanDO> getReceivablePlanList(ReceivablePlanExportReqVO exportReqVO) {
-        return receivablePlanMapper.selectList(exportReqVO);
+    public List<CrmReceivablePlanDO> getReceivablePlanList(CrmReceivablePlanExportReqVO exportReqVO) {
+        return crmReceivablePlanMapper.selectList(exportReqVO);
     }
 
 }

+ 8 - 8
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/ReceivableService.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivableService.java

@@ -4,7 +4,7 @@ import java.util.*;
 import javax.validation.*;
 
 import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.*;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivableDO;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivableDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 
 /**
@@ -12,7 +12,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
  *
  * @author 赤焰
  */
-public interface ReceivableService {
+public interface CrmReceivableService {
 
     /**
      * 创建回款管理
@@ -20,14 +20,14 @@ public interface ReceivableService {
      * @param createReqVO 创建信息
      * @return 编号
      */
-    Long createReceivable(@Valid ReceivableCreateReqVO createReqVO);
+    Long createReceivable(@Valid CrmReceivableCreateReqVO createReqVO);
 
     /**
      * 更新回款管理
      *
      * @param updateReqVO 更新信息
      */
-    void updateReceivable(@Valid ReceivableUpdateReqVO updateReqVO);
+    void updateReceivable(@Valid CrmReceivableUpdateReqVO updateReqVO);
 
     /**
      * 删除回款管理
@@ -42,7 +42,7 @@ public interface ReceivableService {
      * @param id 编号
      * @return 回款管理
      */
-    ReceivableDO getReceivable(Long id);
+    CrmReceivableDO getReceivable(Long id);
 
     /**
      * 获得回款管理列表
@@ -50,7 +50,7 @@ public interface ReceivableService {
      * @param ids 编号
      * @return 回款管理列表
      */
-    List<ReceivableDO> getReceivableList(Collection<Long> ids);
+    List<CrmReceivableDO> getReceivableList(Collection<Long> ids);
 
     /**
      * 获得回款管理分页
@@ -58,7 +58,7 @@ public interface ReceivableService {
      * @param pageReqVO 分页查询
      * @return 回款管理分页
      */
-    PageResult<ReceivableDO> getReceivablePage(ReceivablePageReqVO pageReqVO);
+    PageResult<CrmReceivableDO> getReceivablePage(CrmReceivablePageReqVO pageReqVO);
 
     /**
      * 获得回款管理列表, 用于 Excel 导出
@@ -66,6 +66,6 @@ public interface ReceivableService {
      * @param exportReqVO 查询条件
      * @return 回款管理列表
      */
-    List<ReceivableDO> getReceivableList(ReceivableExportReqVO exportReqVO);
+    List<CrmReceivableDO> getReceivableList(CrmReceivableExportReqVO exportReqVO);
 
 }

+ 29 - 30
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/ReceivableServiceImpl.java → yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivableServiceImpl.java

@@ -3,19 +3,18 @@ package cn.iocoder.yudao.module.crm.service.receivable;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.ListUtil;
 import cn.hutool.core.util.ObjectUtil;
-import cn.hutool.core.util.StrUtil;
 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivableCreateReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivableExportReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivablePageReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivableUpdateReqVO;
-import cn.iocoder.yudao.module.crm.convert.receivable.ReceivableConvert;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivableCreateReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivableExportReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivablePageReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivableUpdateReqVO;
+import cn.iocoder.yudao.module.crm.convert.receivable.CrmReceivableConvert;
 import cn.iocoder.yudao.module.crm.dal.dataobject.contract.ContractDO;
 import cn.iocoder.yudao.module.crm.dal.dataobject.customer.CrmCustomerDO;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivableDO;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivablePlanDO;
-import cn.iocoder.yudao.module.crm.dal.mysql.receivable.ReceivableMapper;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivableDO;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivablePlanDO;
+import cn.iocoder.yudao.module.crm.dal.mysql.receivable.CrmReceivableMapper;
 import cn.iocoder.yudao.module.crm.enums.AuditStatusEnum;
 import cn.iocoder.yudao.module.crm.service.contract.ContractService;
 import cn.iocoder.yudao.module.crm.service.customer.CrmCustomerService;
@@ -36,21 +35,21 @@ import static cn.iocoder.yudao.module.crm.enums.ErrorCodeConstants.*;
  */
 @Service
 @Validated
-public class ReceivableServiceImpl implements ReceivableService {
+public class CrmReceivableServiceImpl implements CrmReceivableService {
 
     @Resource
-    private ReceivableMapper receivableMapper;
+    private CrmReceivableMapper crmReceivableMapper;
     @Resource
     private ContractService contractService;
     @Resource
     private CrmCustomerService crmCustomerService;
     @Resource
-    private ReceivablePlanService receivablePlanService;
+    private CrmReceivablePlanService crmReceivablePlanService;
 
     @Override
-    public Long createReceivable(ReceivableCreateReqVO createReqVO) {
+    public Long createReceivable(CrmReceivableCreateReqVO createReqVO) {
         // 插入
-        ReceivableDO receivable = ReceivableConvert.INSTANCE.convert(createReqVO);
+        CrmReceivableDO receivable = CrmReceivableConvert.INSTANCE.convert(createReqVO);
         if (ObjectUtil.isNull(receivable.getStatus())){
             receivable.setStatus(CommonStatusEnum.ENABLE.getStatus());
         }
@@ -61,12 +60,12 @@ public class ReceivableServiceImpl implements ReceivableService {
         //校验
         checkReceivable(receivable);
 
-        receivableMapper.insert(receivable);
+        crmReceivableMapper.insert(receivable);
         // 返回
         return receivable.getId();
     }
 
-    private void checkReceivable(ReceivableDO receivable) {
+    private void checkReceivable(CrmReceivableDO receivable) {
 
         if(ObjectUtil.isNull(receivable.getContractId())){
             throw exception(CONTRACT_NOT_EXISTS);
@@ -82,7 +81,7 @@ public class ReceivableServiceImpl implements ReceivableService {
             throw exception(CUSTOMER_NOT_EXISTS);
         }
 
-        ReceivablePlanDO receivablePlan = receivablePlanService.getReceivablePlan(receivable.getPlanId());
+        CrmReceivablePlanDO receivablePlan = crmReceivablePlanService.getReceivablePlan(receivable.getPlanId());
         if(ObjectUtil.isNull(receivablePlan)){
             throw exception(RECEIVABLE_PLAN_NOT_EXISTS);
         }
@@ -90,13 +89,13 @@ public class ReceivableServiceImpl implements ReceivableService {
     }
 
     @Override
-    public void updateReceivable(ReceivableUpdateReqVO updateReqVO) {
+    public void updateReceivable(CrmReceivableUpdateReqVO updateReqVO) {
         // 校验存在
         validateReceivableExists(updateReqVO.getId());
 
         // 更新
-        ReceivableDO updateObj = ReceivableConvert.INSTANCE.convert(updateReqVO);
-        receivableMapper.updateById(updateObj);
+        CrmReceivableDO updateObj = CrmReceivableConvert.INSTANCE.convert(updateReqVO);
+        crmReceivableMapper.updateById(updateObj);
     }
 
     @Override
@@ -104,36 +103,36 @@ public class ReceivableServiceImpl implements ReceivableService {
         // 校验存在
         validateReceivableExists(id);
         // 删除
-        receivableMapper.deleteById(id);
+        crmReceivableMapper.deleteById(id);
     }
 
     private void validateReceivableExists(Long id) {
-        if (receivableMapper.selectById(id) == null) {
+        if (crmReceivableMapper.selectById(id) == null) {
             throw exception(RECEIVABLE_NOT_EXISTS);
         }
     }
 
     @Override
-    public ReceivableDO getReceivable(Long id) {
-        return receivableMapper.selectById(id);
+    public CrmReceivableDO getReceivable(Long id) {
+        return crmReceivableMapper.selectById(id);
     }
 
     @Override
-    public List<ReceivableDO> getReceivableList(Collection<Long> ids) {
+    public List<CrmReceivableDO> getReceivableList(Collection<Long> ids) {
         if (CollUtil.isEmpty(ids)) {
             return ListUtil.empty();
         }
-        return receivableMapper.selectBatchIds(ids);
+        return crmReceivableMapper.selectBatchIds(ids);
     }
 
     @Override
-    public PageResult<ReceivableDO> getReceivablePage(ReceivablePageReqVO pageReqVO) {
-        return receivableMapper.selectPage(pageReqVO);
+    public PageResult<CrmReceivableDO> getReceivablePage(CrmReceivablePageReqVO pageReqVO) {
+        return crmReceivableMapper.selectPage(pageReqVO);
     }
 
     @Override
-    public List<ReceivableDO> getReceivableList(ReceivableExportReqVO exportReqVO) {
-        return receivableMapper.selectList(exportReqVO);
+    public List<CrmReceivableDO> getReceivableList(CrmReceivableExportReqVO exportReqVO) {
+        return crmReceivableMapper.selectList(exportReqVO);
     }
 
 }

+ 1 - 1
yudao-module-crm/yudao-module-crm-biz/src/main/resources/mapper/receivable/ReceivableMapper.xml → yudao-module-crm/yudao-module-crm-biz/src/main/resources/mapper/receivable/CrmReceivableMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="cn.iocoder.yudao.module.crm.dal.mysql.receivable.ReceivableMapper">
+<mapper namespace="cn.iocoder.yudao.module.crm.dal.mysql.receivable.CrmReceivableMapper">
 
     <!--
         一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。

+ 1 - 1
yudao-module-crm/yudao-module-crm-biz/src/main/resources/mapper/receivable/ReceivablePlanMapper.xml → yudao-module-crm/yudao-module-crm-biz/src/main/resources/mapper/receivable/CrmReceivablePlanMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="cn.iocoder.yudao.module.crm.dal.mysql.receivable.ReceivablePlanMapper">
+<mapper namespace="cn.iocoder.yudao.module.crm.dal.mysql.receivable.CrmReceivablePlanMapper">
 
     <!--
         一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。

+ 51 - 51
yudao-module-crm/yudao-module-crm-biz/src/test/java/cn/iocoder/yudao/module/crm/service/receivable/ReceivablePlanServiceImplTest.java → yudao-module-crm/yudao-module-crm-biz/src/test/java/cn/iocoder/yudao/module/crm/service/receivable/CrmCrmReceivablePlanServiceImplTest.java

@@ -2,12 +2,12 @@ package cn.iocoder.yudao.module.crm.service.receivable;
 
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivablePlanCreateReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivablePlanExportReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivablePlanPageReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivablePlanUpdateReqVO;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivablePlanDO;
-import cn.iocoder.yudao.module.crm.dal.mysql.receivable.ReceivablePlanMapper;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivablePlanCreateReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivablePlanExportReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivablePlanPageReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivablePlanUpdateReqVO;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivablePlanDO;
+import cn.iocoder.yudao.module.crm.dal.mysql.receivable.CrmReceivablePlanMapper;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
 import org.springframework.context.annotation.Import;
@@ -26,54 +26,54 @@ import static org.junit.jupiter.api.Assertions.*;
 
 // TODO 芋艿:后续,需要补充测试用例
 /**
- * {@link ReceivablePlanServiceImpl} 的单元测试类
+ * {@link CrmReceivablePlanServiceImpl} 的单元测试类
  *
  * @author 芋道源码
  */
-@Import(ReceivablePlanServiceImpl.class)
-public class ReceivablePlanServiceImplTest extends BaseDbUnitTest {
+@Import(CrmReceivablePlanServiceImpl.class)
+public class CrmCrmReceivablePlanServiceImplTest extends BaseDbUnitTest {
 
     @Resource
-    private ReceivablePlanServiceImpl receivablePlanService;
+    private CrmReceivablePlanServiceImpl receivablePlanService;
 
     @Resource
-    private ReceivablePlanMapper receivablePlanMapper;
+    private CrmReceivablePlanMapper crmReceivablePlanMapper;
 
     @Test
     public void testCreateReceivablePlan_success() {
         // 准备参数
-        ReceivablePlanCreateReqVO reqVO = randomPojo(ReceivablePlanCreateReqVO.class);
+        CrmReceivablePlanCreateReqVO reqVO = randomPojo(CrmReceivablePlanCreateReqVO.class);
 
         // 调用
         Long receivablePlanId = receivablePlanService.createReceivablePlan(reqVO);
         // 断言
         assertNotNull(receivablePlanId);
         // 校验记录的属性是否正确
-        ReceivablePlanDO receivablePlan = receivablePlanMapper.selectById(receivablePlanId);
+        CrmReceivablePlanDO receivablePlan = crmReceivablePlanMapper.selectById(receivablePlanId);
         assertPojoEquals(reqVO, receivablePlan);
     }
 
     @Test
     public void testUpdateReceivablePlan_success() {
         // mock 数据
-        ReceivablePlanDO dbReceivablePlan = randomPojo(ReceivablePlanDO.class);
-        receivablePlanMapper.insert(dbReceivablePlan);// @Sql: 先插入出一条存在的数据
+        CrmReceivablePlanDO dbReceivablePlan = randomPojo(CrmReceivablePlanDO.class);
+        crmReceivablePlanMapper.insert(dbReceivablePlan);// @Sql: 先插入出一条存在的数据
         // 准备参数
-        ReceivablePlanUpdateReqVO reqVO = randomPojo(ReceivablePlanUpdateReqVO.class, o -> {
+        CrmReceivablePlanUpdateReqVO reqVO = randomPojo(CrmReceivablePlanUpdateReqVO.class, o -> {
             o.setId(dbReceivablePlan.getId()); // 设置更新的 ID
         });
 
         // 调用
         receivablePlanService.updateReceivablePlan(reqVO);
         // 校验是否更新正确
-        ReceivablePlanDO receivablePlan = receivablePlanMapper.selectById(reqVO.getId()); // 获取最新的
+        CrmReceivablePlanDO receivablePlan = crmReceivablePlanMapper.selectById(reqVO.getId()); // 获取最新的
         assertPojoEquals(reqVO, receivablePlan);
     }
 
     @Test
     public void testUpdateReceivablePlan_notExists() {
         // 准备参数
-        ReceivablePlanUpdateReqVO reqVO = randomPojo(ReceivablePlanUpdateReqVO.class);
+        CrmReceivablePlanUpdateReqVO reqVO = randomPojo(CrmReceivablePlanUpdateReqVO.class);
 
         // 调用, 并断言异常
         assertServiceException(() -> receivablePlanService.updateReceivablePlan(reqVO), RECEIVABLE_PLAN_NOT_EXISTS);
@@ -82,15 +82,15 @@ public class ReceivablePlanServiceImplTest extends BaseDbUnitTest {
     @Test
     public void testDeleteReceivablePlan_success() {
         // mock 数据
-        ReceivablePlanDO dbReceivablePlan = randomPojo(ReceivablePlanDO.class);
-        receivablePlanMapper.insert(dbReceivablePlan);// @Sql: 先插入出一条存在的数据
+        CrmReceivablePlanDO dbReceivablePlan = randomPojo(CrmReceivablePlanDO.class);
+        crmReceivablePlanMapper.insert(dbReceivablePlan);// @Sql: 先插入出一条存在的数据
         // 准备参数
         Long id = dbReceivablePlan.getId();
 
         // 调用
         receivablePlanService.deleteReceivablePlan(id);
        // 校验数据不存在了
-       assertNull(receivablePlanMapper.selectById(id));
+       assertNull(crmReceivablePlanMapper.selectById(id));
     }
 
     @Test
@@ -106,7 +106,7 @@ public class ReceivablePlanServiceImplTest extends BaseDbUnitTest {
     @Disabled  // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
     public void testGetReceivablePlanPage() {
        // mock 数据
-       ReceivablePlanDO dbReceivablePlan = randomPojo(ReceivablePlanDO.class, o -> { // 等会查询到
+       CrmReceivablePlanDO dbReceivablePlan = randomPojo(CrmReceivablePlanDO.class, o -> { // 等会查询到
            o.setPeriod(null);
            o.setStatus(null);
            o.setCheckStatus(null);
@@ -119,31 +119,31 @@ public class ReceivablePlanServiceImplTest extends BaseDbUnitTest {
            o.setRemark(null);
            o.setCreateTime(null);
        });
-       receivablePlanMapper.insert(dbReceivablePlan);
+       crmReceivablePlanMapper.insert(dbReceivablePlan);
        // 测试 Period 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setPeriod(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setPeriod(null)));
        // 测试 status 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setStatus(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setStatus(null)));
        // 测试 checkStatus 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCheckStatus(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCheckStatus(null)));
        // 测试 returnTime 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setReturnTime(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setReturnTime(null)));
        // 测试 remindDays 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemindDays(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemindDays(null)));
        // 测试 remindTime 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemindTime(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemindTime(null)));
        // 测试 customerId 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCustomerId(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCustomerId(null)));
        // 测试 contractId 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setContractId(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setContractId(null)));
        // 测试 ownerUserId 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setOwnerUserId(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setOwnerUserId(null)));
        // 测试 remark 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemark(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemark(null)));
        // 测试 createTime 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCreateTime(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCreateTime(null)));
        // 准备参数
-       ReceivablePlanPageReqVO reqVO = new ReceivablePlanPageReqVO();
+       CrmReceivablePlanPageReqVO reqVO = new CrmReceivablePlanPageReqVO();
        reqVO.setStatus(null);
        reqVO.setCheckStatus(null);
        reqVO.setReturnTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
@@ -154,7 +154,7 @@ public class ReceivablePlanServiceImplTest extends BaseDbUnitTest {
        reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
 
        // 调用
-       PageResult<ReceivablePlanDO> pageResult = receivablePlanService.getReceivablePlanPage(reqVO);
+       PageResult<CrmReceivablePlanDO> pageResult = receivablePlanService.getReceivablePlanPage(reqVO);
        // 断言
        assertEquals(1, pageResult.getTotal());
        assertEquals(1, pageResult.getList().size());
@@ -165,7 +165,7 @@ public class ReceivablePlanServiceImplTest extends BaseDbUnitTest {
     @Disabled  // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
     public void testGetReceivablePlanList() {
        // mock 数据
-       ReceivablePlanDO dbReceivablePlan = randomPojo(ReceivablePlanDO.class, o -> { // 等会查询到
+       CrmReceivablePlanDO dbReceivablePlan = randomPojo(CrmReceivablePlanDO.class, o -> { // 等会查询到
            o.setPeriod(null);
            o.setStatus(null);
            o.setCheckStatus(null);
@@ -178,31 +178,31 @@ public class ReceivablePlanServiceImplTest extends BaseDbUnitTest {
            o.setRemark(null);
            o.setCreateTime(null);
        });
-       receivablePlanMapper.insert(dbReceivablePlan);
+       crmReceivablePlanMapper.insert(dbReceivablePlan);
        // 测试 Period 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setPeriod(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setPeriod(null)));
        // 测试 status 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setStatus(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setStatus(null)));
        // 测试 checkStatus 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCheckStatus(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCheckStatus(null)));
        // 测试 returnTime 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setReturnTime(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setReturnTime(null)));
        // 测试 remindDays 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemindDays(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemindDays(null)));
        // 测试 remindTime 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemindTime(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemindTime(null)));
        // 测试 customerId 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCustomerId(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCustomerId(null)));
        // 测试 contractId 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setContractId(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setContractId(null)));
        // 测试 ownerUserId 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setOwnerUserId(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setOwnerUserId(null)));
        // 测试 remark 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemark(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setRemark(null)));
        // 测试 createTime 不匹配
-       receivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCreateTime(null)));
+       crmReceivablePlanMapper.insert(cloneIgnoreId(dbReceivablePlan, o -> o.setCreateTime(null)));
        // 准备参数
-       ReceivablePlanExportReqVO reqVO = new ReceivablePlanExportReqVO();
+       CrmReceivablePlanExportReqVO reqVO = new CrmReceivablePlanExportReqVO();
        reqVO.setPeriod(null);
        reqVO.setStatus(null);
        reqVO.setCheckStatus(null);
@@ -216,7 +216,7 @@ public class ReceivablePlanServiceImplTest extends BaseDbUnitTest {
        reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
 
        // 调用
-       List<ReceivablePlanDO> list = receivablePlanService.getReceivablePlanList(reqVO);
+       List<CrmReceivablePlanDO> list = receivablePlanService.getReceivablePlanList(reqVO);
        // 断言
        assertEquals(1, list.size());
        assertPojoEquals(dbReceivablePlan, list.get(0));

+ 63 - 63
yudao-module-crm/yudao-module-crm-biz/src/test/java/cn/iocoder/yudao/module/crm/service/receivable/ReceivableServiceImplTest.java → yudao-module-crm/yudao-module-crm-biz/src/test/java/cn/iocoder/yudao/module/crm/service/receivable/CrmCrmReceivableServiceImplTest.java

@@ -2,12 +2,12 @@ package cn.iocoder.yudao.module.crm.service.receivable;
 
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivableCreateReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivableExportReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivablePageReqVO;
-import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.ReceivableUpdateReqVO;
-import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.ReceivableDO;
-import cn.iocoder.yudao.module.crm.dal.mysql.receivable.ReceivableMapper;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivableCreateReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivableExportReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivablePageReqVO;
+import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.CrmReceivableUpdateReqVO;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivableDO;
+import cn.iocoder.yudao.module.crm.dal.mysql.receivable.CrmReceivableMapper;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
 import org.springframework.context.annotation.Import;
@@ -26,54 +26,54 @@ import static org.junit.jupiter.api.Assertions.*;
 
 // TODO 芋艿:等实现完,在校验下;
 /**
- * {@link ReceivableServiceImpl} 的单元测试类
+ * {@link CrmReceivableServiceImpl} 的单元测试类
  *
  * @author 赤焰
  */
-@Import(ReceivableServiceImpl.class)
-public class ReceivableServiceImplTest extends BaseDbUnitTest {
+@Import(CrmReceivableServiceImpl.class)
+public class CrmCrmReceivableServiceImplTest extends BaseDbUnitTest {
 
     @Resource
-    private ReceivableServiceImpl receivableService;
+    private CrmReceivableServiceImpl receivableService;
 
     @Resource
-    private ReceivableMapper receivableMapper;
+    private CrmReceivableMapper crmReceivableMapper;
 
     @Test
     public void testCreateReceivable_success() {
         // 准备参数
-        ReceivableCreateReqVO reqVO = randomPojo(ReceivableCreateReqVO.class);
+        CrmReceivableCreateReqVO reqVO = randomPojo(CrmReceivableCreateReqVO.class);
 
         // 调用
         Long receivableId = receivableService.createReceivable(reqVO);
         // 断言
         assertNotNull(receivableId);
         // 校验记录的属性是否正确
-        ReceivableDO receivable = receivableMapper.selectById(receivableId);
+        CrmReceivableDO receivable = crmReceivableMapper.selectById(receivableId);
         assertPojoEquals(reqVO, receivable);
     }
 
     @Test
     public void testUpdateReceivable_success() {
         // mock 数据
-        ReceivableDO dbReceivable = randomPojo(ReceivableDO.class);
-        receivableMapper.insert(dbReceivable);// @Sql: 先插入出一条存在的数据
+        CrmReceivableDO dbReceivable = randomPojo(CrmReceivableDO.class);
+        crmReceivableMapper.insert(dbReceivable);// @Sql: 先插入出一条存在的数据
         // 准备参数
-        ReceivableUpdateReqVO reqVO = randomPojo(ReceivableUpdateReqVO.class, o -> {
+        CrmReceivableUpdateReqVO reqVO = randomPojo(CrmReceivableUpdateReqVO.class, o -> {
             o.setId(dbReceivable.getId()); // 设置更新的 ID
         });
 
         // 调用
         receivableService.updateReceivable(reqVO);
         // 校验是否更新正确
-        ReceivableDO receivable = receivableMapper.selectById(reqVO.getId()); // 获取最新的
+        CrmReceivableDO receivable = crmReceivableMapper.selectById(reqVO.getId()); // 获取最新的
         assertPojoEquals(reqVO, receivable);
     }
 
     @Test
     public void testUpdateReceivable_notExists() {
         // 准备参数
-        ReceivableUpdateReqVO reqVO = randomPojo(ReceivableUpdateReqVO.class);
+        CrmReceivableUpdateReqVO reqVO = randomPojo(CrmReceivableUpdateReqVO.class);
 
         // 调用, 并断言异常
         assertServiceException(() -> receivableService.updateReceivable(reqVO), RECEIVABLE_NOT_EXISTS);
@@ -82,15 +82,15 @@ public class ReceivableServiceImplTest extends BaseDbUnitTest {
     @Test
     public void testDeleteReceivable_success() {
         // mock 数据
-        ReceivableDO dbReceivable = randomPojo(ReceivableDO.class);
-        receivableMapper.insert(dbReceivable);// @Sql: 先插入出一条存在的数据
+        CrmReceivableDO dbReceivable = randomPojo(CrmReceivableDO.class);
+        crmReceivableMapper.insert(dbReceivable);// @Sql: 先插入出一条存在的数据
         // 准备参数
         Long id = dbReceivable.getId();
 
         // 调用
         receivableService.deleteReceivable(id);
        // 校验数据不存在了
-       assertNull(receivableMapper.selectById(id));
+       assertNull(crmReceivableMapper.selectById(id));
     }
 
     @Test
@@ -106,7 +106,7 @@ public class ReceivableServiceImplTest extends BaseDbUnitTest {
     @Disabled  // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
     public void testGetReceivablePage() {
        // mock 数据
-       ReceivableDO dbReceivable = randomPojo(ReceivableDO.class, o -> { // 等会查询到
+       CrmReceivableDO dbReceivable = randomPojo(CrmReceivableDO.class, o -> { // 等会查询到
            o.setNo(null);
            o.setPlanId(null);
            o.setCustomerId(null);
@@ -125,43 +125,43 @@ public class ReceivableServiceImplTest extends BaseDbUnitTest {
            o.setRemark(null);
            o.setCreateTime(null);
        });
-       receivableMapper.insert(dbReceivable);
+       crmReceivableMapper.insert(dbReceivable);
        // 测试 no 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setNo(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setNo(null)));
        // 测试 planId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setPlanId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setPlanId(null)));
        // 测试 customerId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCustomerId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCustomerId(null)));
        // 测试 contractId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setContractId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setContractId(null)));
        // 测试 checkStatus 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCheckStatus(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCheckStatus(null)));
        // 测试 processInstanceId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setProcessInstanceId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setProcessInstanceId(null)));
        // 测试 returnTime 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setReturnTime(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setReturnTime(null)));
        // 测试 returnType 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setReturnType(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setReturnType(null)));
        // 测试 price 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setPrice(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setPrice(null)));
        // 测试 ownerUserId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setOwnerUserId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setOwnerUserId(null)));
        // 测试 batchId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setBatchId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setBatchId(null)));
        // 测试 sort 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setSort(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setSort(null)));
        // 测试 dataScope 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setDataScope(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setDataScope(null)));
        // 测试 dataScopeDeptIds 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setDataScopeDeptIds(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setDataScopeDeptIds(null)));
        // 测试 status 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setStatus(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setStatus(null)));
        // 测试 remark 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setRemark(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setRemark(null)));
        // 测试 createTime 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCreateTime(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCreateTime(null)));
        // 准备参数
-       ReceivablePageReqVO reqVO = new ReceivablePageReqVO();
+       CrmReceivablePageReqVO reqVO = new CrmReceivablePageReqVO();
        reqVO.setNo(null);
        reqVO.setPlanId(null);
        reqVO.setCustomerId(null);
@@ -175,7 +175,7 @@ public class ReceivableServiceImplTest extends BaseDbUnitTest {
        reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
 
        // 调用
-       PageResult<ReceivableDO> pageResult = receivableService.getReceivablePage(reqVO);
+       PageResult<CrmReceivableDO> pageResult = receivableService.getReceivablePage(reqVO);
        // 断言
        assertEquals(1, pageResult.getTotal());
        assertEquals(1, pageResult.getList().size());
@@ -186,7 +186,7 @@ public class ReceivableServiceImplTest extends BaseDbUnitTest {
     @Disabled  // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
     public void testGetReceivableList() {
        // mock 数据
-       ReceivableDO dbReceivable = randomPojo(ReceivableDO.class, o -> { // 等会查询到
+       CrmReceivableDO dbReceivable = randomPojo(CrmReceivableDO.class, o -> { // 等会查询到
            o.setNo(null);
            o.setPlanId(null);
            o.setCustomerId(null);
@@ -205,43 +205,43 @@ public class ReceivableServiceImplTest extends BaseDbUnitTest {
            o.setRemark(null);
            o.setCreateTime(null);
        });
-       receivableMapper.insert(dbReceivable);
+       crmReceivableMapper.insert(dbReceivable);
        // 测试 no 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setNo(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setNo(null)));
        // 测试 planId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setPlanId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setPlanId(null)));
        // 测试 customerId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCustomerId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCustomerId(null)));
        // 测试 contractId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setContractId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setContractId(null)));
        // 测试 checkStatus 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCheckStatus(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCheckStatus(null)));
        // 测试 processInstanceId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setProcessInstanceId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setProcessInstanceId(null)));
        // 测试 returnTime 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setReturnTime(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setReturnTime(null)));
        // 测试 returnType 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setReturnType(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setReturnType(null)));
        // 测试 price 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setPrice(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setPrice(null)));
        // 测试 ownerUserId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setOwnerUserId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setOwnerUserId(null)));
        // 测试 batchId 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setBatchId(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setBatchId(null)));
        // 测试 sort 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setSort(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setSort(null)));
        // 测试 dataScope 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setDataScope(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setDataScope(null)));
        // 测试 dataScopeDeptIds 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setDataScopeDeptIds(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setDataScopeDeptIds(null)));
        // 测试 status 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setStatus(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setStatus(null)));
        // 测试 remark 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setRemark(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setRemark(null)));
        // 测试 createTime 不匹配
-       receivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCreateTime(null)));
+       crmReceivableMapper.insert(cloneIgnoreId(dbReceivable, o -> o.setCreateTime(null)));
        // 准备参数
-       ReceivableExportReqVO reqVO = new ReceivableExportReqVO();
+       CrmReceivableExportReqVO reqVO = new CrmReceivableExportReqVO();
        reqVO.setNo(null);
        reqVO.setPlanId(null);
        reqVO.setCustomerId(null);
@@ -257,7 +257,7 @@ public class ReceivableServiceImplTest extends BaseDbUnitTest {
        reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
 
        // 调用
-       List<ReceivableDO> list = receivableService.getReceivableList(reqVO);
+       List<CrmReceivableDO> list = receivableService.getReceivableList(reqVO);
        // 断言
        assertEquals(1, list.size());
        assertPojoEquals(dbReceivable, list.get(0));