diff --git a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerBaseVO.java b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerBaseVO.java index 039cda53a..0db54fa1f 100644 --- a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerBaseVO.java +++ b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerBaseVO.java @@ -19,14 +19,16 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @Data public class CrmCustomerBaseVO { - @Schema(description = "客户名称", example = "赵六") + @Schema(description = "客户名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六") @NotEmpty(message = "客户名称不能为空") private String name; + // TODO wanwan:这个字段应该只有 RespVO 会有;创建和修改不传递; @Schema(description = "跟进状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "true") @NotNull(message = "跟进状态不能为空") private Boolean followUpStatus; + // TODO wanwan:这个字段应该只有 RespVO 会有;创建和修改不传递; @Schema(description = "锁定状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "true") @NotNull(message = "锁定状态不能为空") private Boolean lockStatus; @@ -45,6 +47,7 @@ public class CrmCustomerBaseVO { @Schema(description = "备注", example = "随便") private String remark; + // TODO wanwan:这个字段应该只有 RespVO 会有;创建和修改不传递;因为它会在“移交”里面做哈 @Schema(description = "负责人的用户编号", example = "25682") @NotNull(message = "负责人不能为空") private Long ownerUserId; @@ -55,12 +58,14 @@ public class CrmCustomerBaseVO { @Schema(description = "详细地址", example = "北京市海淀区") private String detailAddress; + // TODO @芋艿:longitude、latitude 这两个字段删除; @Schema(description = "地理位置经度", example = "116.40341") private String longitude; @Schema(description = "地理位置维度", example = "39.92409") private String latitude; + // TODO wanwan:这个字段应该只有 RespVO 会有;创建和修改不传递; @Schema(description = "最后跟进时间") @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime contactLastTime; diff --git a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerCreateReqVO.java b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerCreateReqVO.java index dae9cf212..a3ed7ef13 100644 --- a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerCreateReqVO.java +++ b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerCreateReqVO.java @@ -11,9 +11,11 @@ import lombok.ToString; @ToString(callSuper = true) public class CrmCustomerCreateReqVO extends CrmCustomerBaseVO { + // TODO @wanwan:类型应该是传递 List; 不过这个字段,默认新建的时候不传递,在“移交”功能里管理 @Schema(description = "只读权限的用户编号数组") private String roUserIds; + // TODO @wanwan:类型应该是传递 List; 不过这个字段,默认新建的时候不传递,在“移交”功能里管理 @Schema(description = "读写权限的用户编号数组") private String rwUserIds; diff --git a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerExcelVO.java b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerExcelVO.java index 6cf7cbd0f..3e37c30e7 100644 --- a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerExcelVO.java +++ b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerExcelVO.java @@ -8,7 +8,7 @@ import lombok.Data; import java.time.LocalDateTime; - +// TODO 芋艿:导出最后做,等基本确认的差不多之后; /** * 客户 Excel VO * diff --git a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerExportReqVO.java b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerExportReqVO.java index 27198ff0d..15776aa42 100644 --- a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerExportReqVO.java +++ b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerExportReqVO.java @@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.crm.controller.admin.customer.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; +// TODO 芋艿:导出最后做,等基本确认的差不多之后; @Schema(description = "管理后台 - 客户 Excel 导出 Request VO,参数和 CrmCustomerPageReqVO 是一致的") @Data public class CrmCustomerExportReqVO { diff --git a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerPageReqVO.java b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerPageReqVO.java index 3871e422d..7cb89adbc 100644 --- a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerPageReqVO.java +++ b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerPageReqVO.java @@ -18,10 +18,13 @@ public class CrmCustomerPageReqVO extends PageParam { @Schema(description = "手机", example = "18000000000") private String mobile; + // TODO @wanwan:这个字段不需要哈 @Schema(description = "电话", example = "18000000000") private String telephone; + // TODO @wanwan:这个字段不需要哈 @Schema(description = "网址", example = "https://www.baidu.com") private String website; + // TODO @芋艿:场景; } diff --git a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerUpdateReqVO.java b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerUpdateReqVO.java index a54938ea2..59d440a35 100644 --- a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerUpdateReqVO.java +++ b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerUpdateReqVO.java @@ -17,6 +17,7 @@ public class CrmCustomerUpdateReqVO extends CrmCustomerBaseVO { @NotNull(message = "编号不能为空") private Long id; + // TODO @wanwan:下面两个字段,同 CrmCustomerCreateReqVO @Schema(description = "只读权限的用户编号数组") private String roUserIds; diff --git a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/customer/CrmCustomerConvert.java b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/customer/CrmCustomerConvert.java index da683fbfb..937705d99 100644 --- a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/customer/CrmCustomerConvert.java +++ b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/customer/CrmCustomerConvert.java @@ -25,8 +25,6 @@ public interface CrmCustomerConvert { CrmCustomerRespVO convert(CrmCustomerDO bean); - List convertList(List list); - PageResult convertPage(PageResult page); List convertList02(List list); diff --git a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/clue/CrmClueDO.java b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/clue/CrmClueDO.java index 067bec65c..1c6ccd608 100644 --- a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/clue/CrmClueDO.java +++ b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/clue/CrmClueDO.java @@ -44,7 +44,8 @@ public class CrmClueDO extends BaseDO { private String name; /** * 客户 id - * 对应 {@link CrmCustomerDO#getId()} + * + * 关联 {@link CrmCustomerDO#getId()} */ private Long customerId; /** diff --git a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/customer/CrmCustomerDO.java b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/customer/CrmCustomerDO.java index d35650905..101d0dd27 100644 --- a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/customer/CrmCustomerDO.java +++ b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/customer/CrmCustomerDO.java @@ -4,11 +4,11 @@ import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; -import com.sun.xml.bind.v2.TODO; import lombok.*; import java.time.LocalDateTime; +// TODO 芋艿:调整下字段 /** * 客户 DO * @@ -35,20 +35,14 @@ public class CrmCustomerDO extends BaseDO { private String name; /** * 跟进状态 - *

- * 枚举 {@link TODO infra_boolean_string 对应的类} */ private Boolean followUpStatus; /** * 锁定状态 - *

- * 枚举 {@link TODO infra_boolean_string 对应的类} */ private Boolean lockStatus; /** * 成交状态 - *

- * 枚举 {@link TODO infra_boolean_string 对应的类} */ private Boolean dealStatus; /** @@ -71,6 +65,7 @@ public class CrmCustomerDO extends BaseDO { * 负责人的用户编号 */ private Long ownerUserId; + // TODO @wanwan:下面两个字段,使用 List,然后使用 typeHandler = LongListTypeHandler 解决持久化的问题;注意类上需要加 autoResultMap = true /** * 只读权限的用户编号数组 */ @@ -87,6 +82,7 @@ public class CrmCustomerDO extends BaseDO { * 详细地址 */ private String detailAddress; + // TODO @wanwan:下面两个字段:删除 /** * 地理位置经度 */ diff --git a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/clue/CrmClueServiceImpl.java b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/clue/CrmClueServiceImpl.java index 3389c4b26..32577dd24 100644 --- a/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/clue/CrmClueServiceImpl.java +++ b/yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/clue/CrmClueServiceImpl.java @@ -96,6 +96,7 @@ public class CrmClueServiceImpl implements CrmClueService { return clueMapper.selectList(exportReqVO); } + // TODO @wanwan:可以在 CrmClueServiceImpl 中,增加一个方法,用于校验客户是否存在;validateCustomer;然后其它方法可以调用它。不过要注意,需要把 CustomerDO 返回,因为其它模块可能要它的信息 /** * 校验客户是否存在 * diff --git a/yudao-module-crm/yudao-module-crm-biz/src/test/java/cn/iocoder/yudao/module/crm/service/customer/CrmCustomerServiceImplTest.java b/yudao-module-crm/yudao-module-crm-biz/src/test/java/cn/iocoder/yudao/module/crm/service/customer/CrmCustomerServiceImplTest.java index 2e7d17907..adce8b163 100644 --- a/yudao-module-crm/yudao-module-crm-biz/src/test/java/cn/iocoder/yudao/module/crm/service/customer/CrmCustomerServiceImplTest.java +++ b/yudao-module-crm/yudao-module-crm-biz/src/test/java/cn/iocoder/yudao/module/crm/service/customer/CrmCustomerServiceImplTest.java @@ -23,6 +23,7 @@ import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo; import static cn.iocoder.yudao.module.crm.enums.ErrorCodeConstants.CUSTOMER_NOT_EXISTS; import static org.junit.jupiter.api.Assertions.*; +// TODO 芋艿:单测后续补 /** * {@link CrmCustomerServiceImpl} 的单元测试类 *