资讯动态

SpringBoot CRM 客户管理:把客户档案、跟进记录和业务协作连起来

发布时间:2026/11/6 6:42:38 来源:尧图企业网站定制
SpringBoot CRM 客户管理把客户档案、跟进记录和业务协作连起来销售同事临时请假客户来问方案改得怎么样。接手的人打开客户表能查到公司名称却还得翻聊天记录才能弄清上次和谁谈过、答应什么时候再联系、手上的合同是哪一份。好的客户详情页应该能让同事接着往下做。打开一份档案先看最近发生了什么再查联系人、商机和合同最后确认自己能操作到哪一步。以 RuoYi Office 的 SpringBoot 和 Vue3 实现为例沿着一次交接可以顺着页面找到三条实现路径。跟进历史与档案摘要分别保存关联列表按客户编号查询负责人转移时再处理选中的业务记录。文中的系统图来自既有演示资料贯穿用的客户和沟通内容是教学示例。从客户详情开始把信息落在对应的位置假设有一条教学客户“星桥设备”。采购负责确认预算信息部负责验证接口两个人都在参与同一个项目。销售建档后可以把两个人分别登记在「联系人」页签后续沟通再选择其中一人。交接时接手的同事可以知道谁确认预算、谁在等接口说明。客户详情顶部汇总客户级别、成交状态和负责人。下面保留「基本信息」「联系人」「跟进记录」「商机」「合同」「回款」「团队成员」等入口。基本信息适合放相对稳定的资料。沟通进展要进入跟进历史采购意向进入商机签署和收款分别由合同及回款记录承接。Vue3 详情页拿到当前的customerId后把它传给这些组件。联系人列表按客户编号加载从客户详情新建联系人时表单也会带入这个编号。后端创建联系人前校验关联数据插入联系人后还会为这条联系人记录创建负责人权限。这里的关键是用编号保存关系。即使两条客户档案名称相同联系人和合同仍可以通过各自的客户编号定位。客户改名时关联记录也可以继续按编号查找。前端选客户时展示名称便于辨认实际提交的值应是 ID。数据关系示意。联系人和合同按客户编号关联跟进与权限还要携带业务类型。从字段上看关联列表与跟进和权限使用的定位方式不同。业务记录关联依据页面里的作用联系人、商机、合同customerId围绕当前客户查询独立记录客户跟进bizTypebizId为当前客户保存和查询沟通历史团队数据权限bizTypebizIduserId标识某位用户对该业务记录的权限级别后两类使用业务类型是因为客户、联系人和合同的 ID 各自在自己的表里编号。只传一个数字无法知道它指的是哪种业务对象。写一次跟进历史和待办线索各归各位给“星桥设备”写第一条跟进可以用这样的内容“信息部希望先核对单点登录接口周四下午带接口说明复聊。”在客户详情的「写跟进」里选沟通方式、填写内容和下次联系时间再关联信息部的联系人。有明确商机时也可以在跟进中选择对应商机。历史演示画面。表格展示跟进时间、内容、下次联系时间以及关联联系人和商机。为什么写完还要更新客户档案历史用来回查经过档案摘要用来快速判断下一步。如果每次打开客户列表都临时翻查所有沟通记录列表查询和排序会更复杂。提交走管理端的POST /crm/follow-up-record/create由服务按请求中的业务类型和编号检查写权限。当前实现先写一条跟进记录再按主业务类型更新摘要。客户类型的分支如下其他业务类型分支在此省略。CrmFollowUpRecordDOrecordBeanUtils.toBean(createReqVO,CrmFollowUpRecordDO.class);crmFollowUpRecordMapper.insert(record);if(ObjUtil.equal(CrmBizTypeEnum.CRM_CUSTOMER.getType(),record.getBizType())){customerService.updateCustomerFollowUp(record.getBizId(),record.getNextTime(),record.getContent());}updateCustomerFollowUp会设置已跟进标记、最近跟进内容、最近跟进时间与下次联系时间。最近跟进时间取服务端写入时刻下次联系时间来自这次填写的计划。把这两个时间分开交接时就能同时看出“上次什么时候联系”和“下次什么时候联系”。如果同一条跟进还选了联系人或商机当前实现会进一步调用对应服务更新其下次联系时间。这一步有各自对象的写权限要求能给客户写跟进的用户仍需满足所选联系人和商机的写权限要求。跟进正文仍由主业务记录承载不能仅凭关联就期待在每个对象的跟进历史里看到一份副本。按服务调用顺序绘制。关联联系人或商机时分别进入对应的时间更新路径。这个设计有个值得联调的细节。当前createFollowUpRecord方法先插入历史再更新主对象和选中的关联对象方法上没有统一事务注解。仅从这段代码无法确认一次提交中的所有写入都能共同回滚。隔离环境可以用一个可写客户和一个只读商机测试遇到后续权限错误时分别回查历史和摘要再决定失败提示和重试行为。另外删除跟进的服务路径只删除所选记录未在该方法中重算客户摘要。如果业务要求删除最后一条记录后恢复上一条摘要应单独验收这一规则。它直接影响后来接手的人是否会把旧摘要当成最新沟通。合同页签怎样找到这家客户的单据对“星桥设备”来说“想先看方案”“合同已审核”“有一笔款待回”分别来自商机、合同和回款对象。客户详情把入口放在一起方便业务人员在同一个上下文查看这些进度。以合同页签为例客户详情传入当前客户 ID列表使用按客户分页的接口。从该页签新增合同时表单也会预带客户 ID。服务端先按客户执行读权限判断再调用 Mapper 做按客户编号过滤的分页查询。CrmPermission(bizTypeCrmBizTypeEnum.CRM_CUSTOMER,bizId#pageReqVO.customerId,levelCrmPermissionLevelEnum.READ)publicPageResultCrmContractDOgetContractPageByCustomerId(CrmContractPageReqVOpageReqVO){returncontractMapper.selectPageByCustomerId(pageReqVO);}具体看GET /crm/contract/page-by-customer。控制器要求提供customerId查询以CrmContractDO::getCustomerId作为等值条件。即使合同标题一样也能按所属客户区分。回款页签则将同一个客户编号分别传给回款计划组件和回款记录组件页面上有了分开核对计划与记录的入口。历史销售合同详情画面。可见所属客户、商机和签约人字段以及合同状态和回款金额。该图来自单独的合同演示素材。开发联调时可以给两个同名教学客户分别挂一张合同从各自档案打开合同页签核对请求里的编号与合同记录的customerId。列表筛选、直接打开合同详情和操作合同是不同入口验收时要分别核对使用的权限。合同审批和回款处理仍由相应业务流程推进。联调时可把回款页签的计划日期和实际回款记录分开核对避免拿一条计划判断款项是否已经到账。交接客户时分开核对负责人和团队成员客户需要换人接手时通常有两种工作。第一种是邀请售前同事加入团队保留销售负责人。第二种是把客户交给新负责人再决定原负责人是否保留协作权限。团队页签把成员和权限级别放在同一张表便于交接前逐项核对。历史演示画面。权限级别列标明了该客户的负责人。客户详情根据团队权限决定部分按钮是否显示。比如「修改」检查写权限「转移」使用负责人判断。后端也按业务记录判定权限。客户读取、跟进创建、负责人转移对应的服务方法分别要求READ、WRITE和OWNER。隐藏按钮适合引导操作接口层的检查负责限制请求。转移服务先校验新负责人的客户上限再交接客户权限并更新客户的负责人字段和成为负责人的时间。原负责人可以按请求保留选定的权限级别否则移除原权限记录。需要一并转移其他业务时服务按选中的类别处理。if(reqVO.getToBizTypes().contains(CrmBizTypeEnum.CRM_CONTRACT.getType())){ListCrmContractDOcontractListcontractService.getContractListByCustomerIdOwnerUserId(reqVO.getId(),userId);contractList.forEach(item-contractService.transferContract(newCrmContractTransferReqVO(item.getId(),reqVO.getNewOwnerUserId(),reqVO.getOldOwnerPermissionLevel()),userId));}以合同为例查询条件里同时包含客户 ID 和当前操作人的负责人 ID再逐条转移查到的合同。一个直接的验收场景是给教学客户准备两张合同分别由当前负责人和另一位同事负责。交接时勾选合同回查两张合同各自的负责人确认范围与选择一致。联系人和商机也有对应分支可以按相同方法核对。公海用于处理暂时无人负责的客户。领取时会校验客户归属、锁定、成交状态和领取人的持有上限再更新负责人、创建负责人权限并记录归属变化。它与已有负责人直接转交客户是两条操作路径关联联系人等对象的后续处理要分别按对应入口确认。用一次交接验证这份档案能不能接着用在隔离环境里准备一条教学客户、两位联系人、一条商机和一张合同。用负责人账号保存第一条跟进再保存一条改了联系时间的跟进。刷新后历史里应能分别找到两次沟通。基本信息和列表用来核对最近内容与下次联系时间应以第二次保存的数据为准。权限核对可以用三个普通测试账号。先让负责人在团队页签添加只读成员然后分别走下面的路径。账号操作核对点当前负责人保存跟进并回看客户历史新增档案摘要随提交更新只读团队成员查看客户详情并尝试提交跟进查阅和写入是两个权限判断无授权的普通用户打开同一客户的详情和合同列表分别观察两个入口的服务端响应最后把客户转给新负责人重新打开同一客户编号。先查原来的两次沟通和下次联系时间再打开所选合同核对负责人。若原负责人被保留为只读成员再用其账号打开档案确认移交后的权限与约定一致。这套步骤用于独立环境联调。交接能否完成最终看新负责人能否在同一份档案上找到沟通对象、确认约定时间、打开相关单据然后继续写下下一条跟进。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑