CRM:新增跟进记录表

This commit is contained in:
YunaiV
2024-01-03 20:56:28 +08:00
parent 2e7c3e09a9
commit f8f5e525be
5 changed files with 87 additions and 3 deletions

View File

@ -43,6 +43,7 @@ public class CrmCustomerLimitConfigController {
@Resource
private AdminUserApi adminUserApi;
// TODO @puhui999可以把 vo 改下哈
@PostMapping("/create")
@Operation(summary = "创建客户限制配置")
@PreAuthorize("@ss.hasPermission('crm:customer-limit-config:create')")

View File

@ -26,6 +26,7 @@ public class CrmCustomerPoolConfigController {
@Resource
private CrmCustomerPoolConfigService customerPoolConfigService;
// TODO @puhui999可以把 vo 改下哈
@GetMapping("/get")
@Operation(summary = "获取客户公海规则设置")
@PreAuthorize("@ss.hasPermission('crm:customer-pool-config:query')")

View File

@ -16,9 +16,9 @@ import java.util.Objects;
@ToString(callSuper = true)
public class CrmCustomerPoolConfigSaveReqVO extends CrmCustomerPoolConfigBaseVO {
// TODO @wanwanAssertTrue 必须 is 开头哈;注意需要 json 忽略下,避免被序列化;
// TODO @puhui999AssertTrue 必须 is 开头哈;注意需要 json 忽略下,避免被序列化;
@AssertTrue(message = "客户公海规则设置不正确")
// TODO @wanwan:这个方法,是不是拆成 2 个,一个校验 contactExpireDays、一个校验 dealExpireDays
// TODO @puhui999:这个方法,是不是拆成 2 个,一个校验 contactExpireDays、一个校验 dealExpireDays
public boolean poolEnableValid() {
if (!BooleanUtil.isTrue(getEnabled())) {
return true;
@ -27,7 +27,7 @@ public class CrmCustomerPoolConfigSaveReqVO extends CrmCustomerPoolConfigBaseVO
}
@AssertTrue(message = "客户公海规则设置不正确")
// TODO @wanwan:这个方法,是不是改成 isNotifyDaysValid() 更好点?本质校验的是 notifyDays 是否为空
// TODO @puhui999:这个方法,是不是改成 isNotifyDaysValid() 更好点?本质校验的是 notifyDays 是否为空
public boolean notifyEnableValid() {
if (!BooleanUtil.isTrue(getNotifyEnabled())) {
return true;

View File

@ -115,6 +115,7 @@ public class CrmCustomerDO extends BaseDO {
* 最后跟进时间
*/
private LocalDateTime contactLastTime;
// TODO @puhui999增加一个字段 contactLastContent最后跟进内容
/**
* 下次联系时间
*/

View File

@ -0,0 +1,81 @@
package cn.iocoder.yudao.module.crm.dal.dataobject.followup;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.module.crm.dal.dataobject.business.CrmBusinessDO;
import cn.iocoder.yudao.module.crm.dal.dataobject.contact.CrmContactDO;
import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
import java.time.LocalDateTime;
import java.util.List;
// TODO @puhui999界面做成一个 list 列表,字段是 id、跟进人、跟进方式、跟进时间、跟进内容、下次联系时间、关联联系人、关联商机
// TODO @puhui999界面记录时弹窗表单字段是跟进方式、跟进内容、下次联系时间、关联联系人、关联商机其中关联联系人、关联商机要做成对应的组件列。
/**
* 跟进记录 DO
*
* 用于记录客户、联系人的每一次跟进
*
* @author 芋道源码
*/
@TableName(value = "crm_follow_up_record")
@KeySequence("crm_follow_up_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class CrmFollowUpRecordDO extends BaseDO {
/**
* 编号
*/
@TableId
private Long id;
/**
* 数据类型
*
* 枚举 {@link CrmBizTypeEnum}
*/
private Integer bizType;
/**
* 数据编号
*
* 关联 {@link CrmBizTypeEnum} 对应模块 DO 的 id 字段
*/
private Long bizId;
/**
* 跟进类型
*
* TODO @puhui999可以搞个数据字典打电话、发短信、上门拜访、微信、邮箱、QQ
*/
private Integer type;
/**
* 跟进内容
*/
private String content;
/**
* 下次联系时间
*/
private LocalDateTime nextTime;
/**
* 关联的商机编号数组
*
* 关联 {@link CrmBusinessDO#getId()}
*/
private List<Long> businessIds;
/**
* 关联的联系人编号数组
*
* 关联 {@link CrmContactDO#getId()}
*/
private List<Long> contactIds;
}