当前位置: 首页 > news >正文

SpringBoot+XXL-Job 客户公海自动回收设计:双计时规则、锁定豁免、领取上限如何闭环

SpringBoot+XXL-Job 客户公海自动回收设计:双计时规则、锁定豁免、领取上限如何闭环

🌐演示地址:http://ruoyioffice.com | 📦源码1·GitHub:ruoyi-office | 📦源码2·GitCode:ruoyi-office | 📦源码3·Gitee:ruoyi-office | 💬微信:17156169080(备注「RuoYi Office」)

CRM 有公海菜单不等于能盘活客户。真正难的是:按什么规则掉进公海、谁豁免、入池后权限怎么清、领回来计时怎么重新起算、会不会一人囤光池子。本文按 RuoYi Office 源码,把自动回收闭环从配置讲到 XXL-Job,再到领取上限。

▲ 新风格全景(深色双钟):成交超时 / 跟进超时 OR 触发 → Job 入池清权 → 领取重建 OWNER → 上限门禁

引言:公海不是垃圾桶,是「计时 + 清权 + 再分配」

相对《CRM 客户管理》讲建档与跟进全景,本文只钉四个问题:

问题系统答法
何时该掉公海?双计时 OR:成交超时跟进超时
谁不能掉?已锁定、已成交
掉进去发生什么?owner=null、联系人联动、删 OWNER 权限
领出来要注意什么?重置ownerTime、重建 OWNER、校验领取上限

一、配置:公海开关与双计时

公海配置表核心字段:

字段含义
enabled是否启用自动入池
dealExpireDays未成交放入公海天数(自ownerTime
contactExpireDays未跟进放入公海天数
notifyEnabled/notifyDays是否提前提醒及天数

▲ 系统配置里维护双超时与提醒;未启用则 Job 直接返回 0

计时基准是ownerTime(成为负责人的时间),不是客户创建时间——领取/分配后重新起算,避免「刚领就被规则误伤」。


二、候选查询:双钟 OR + 豁免

CrmCustomerMapper.selectListByAutoPool

query.gt(CrmCustomerDO::getOwnerUserId,0);// 仍有负责人query.eq(lockStatus,false).eq(dealStatus,false);// 未锁定 + 未成交query.and(q->{// 成交超时:ownerTime < now - dealExpireDaysq.lt(ownerTime,dealExpireTime)// 或 跟进超时:ownerTime 超时 且 (末次跟进超时 或 为空).or(w->w.lt(ownerTime,contactExpireTime).and(p->p.lt(contactLastTime,contactExpireTime).or().isNull(contactLastTime)));});

读法:

  1. 成交钟:挂名很久仍未成交 → 回收
  2. 跟进钟:归属超时且很久没跟(或从未跟)→ 回收
  3. 两钟OR:满足任一即可入候选
  4. 锁定 / 成交 → 整单豁免,保护重点客户与已赢单

三、Job:定时入池,失败不拖死整批

@XxlJob("customerAutoPutPoolJob")@TenantJobpublicStringexecute(){intcount=customerService.autoPutCustomerPool();returnString.format("掉入公海客户 %s 个",count);}

autoPutCustomerPool:配置未启用则 0;否则逐个putCustomerPool,单条异常只打日志,继续处理其余——避免一个脏数据卡死全租户回收。

putCustomerPool三件事:

1. updateOwnerUserId(id, null) // 客户无负责人 2. contact.ownerUserId = null // 联系人联动(与领取对称) 3. deletePermission(CUSTOMER, OWNER) // 清数据权限,别人才能从公海看见/领取

注意:删权限放在联系人更新之后,否则可能因客户权限已空导致联系人操作失败。

▲ 入池后的公海列表:无负责人客户在此待领取/分配

▲ 对照:仍有负责人的客户在「我的客户」;ownerTime 是公海计时起点


四、领取 / 分配:重建 OWNER 与上限

receiveCustomer(ids, ownerUserId, isReceive)

  1. 校验客户存在、目标用户存在
  2. 校验当前无负责人、未锁定、成交状态允许
  3. validateCustomerExceedOwnerLimit——防止一人把公海囤光
  4. 批量写ownerUserId+ownerTime = now
  5. 批量创建CrmPermissionLevelEnum.OWNER
  6. 操作日志区分「自行领取」与「管理员分配」
updateCustomers.add(newCrmCustomerDO().setId(id).setOwnerUserId(ownerUserId).setOwnerTime(LocalDateTime.now()));createPermissions.add(...OWNER...);

▲ 领取/拥有上限与公海回收配套:回收释放资源,上限防止再被垄断


五、和客户总览文的边界

重心
客户管理一体化建档、跟进、权限、公海「是什么」
本文自动怎么掉、权限怎么清、领取怎么起算、上限怎么卡

线索转客户、商机回款链不在此展开。


六、推荐体验路径

在线演示:http://ruoyioffice.com/web/(账号admin/admin123

  1. 打开客户公海配置,确认双超时与启用开关。
  2. 公海客户列表与我的客户对照。
  3. 打开客户限制配置,理解领取上限。
  4. (运维)在任务平台查看customerAutoPutPoolJob执行记录。

源码仓库:GitHub | GitCode | Gitee


常见问题(FAQ)

刚领取会不会马上又掉进公海?

领取会重置ownerTime。只要跟进/成交在超时天数内发生,就不会立刻再满足候选条件。

为什么要清 OWNER 权限而不只是改 ownerUserId?

CRM 列表常靠数据权限过滤;只改字段不清权限,会出现「名上没人、权限仍在」或「别人领不到」的脏状态。

锁定客户谁来决定?

业务上对重点客户点锁定;自动 Job 直接lockStatus=false才入选,保护战略客户。

没有 XXL-Job 能跑吗?

Job 注解挂在 XXL-Job;也可用等价定时调度调同一autoPutCustomerPool()方法,业务逻辑在 Service。


结语

公海自动回收的本质是双计时规则 + 豁免 + 清权入池 + 领取重建计时 + 上限防囤。配好看天数只是第一步;权限与ownerTime对称处理,池子才真能转起来。

你们公海是手工扔,还是已经按跟进天数自动掉?有没有遇过「掉了公海但别人仍看不到」?欢迎评论区交流。


💡想要体验 RuoYi Office 的强大功能?

🌐在线演示:http://ruoyioffice.com/web/(账号 admin / admin123)

📦源码仓库:GitHub | GitCode | Gitee

💬技术咨询:添加微信17156169080,备注「RuoYi Office」

如果觉得不错,请给个 Star 支持一下!

http://www.cnnetsun.cn/news/3914364.html

相关文章:

  • 一年砸下110亿美元,比红杉还凶:美国政府成了AI圈最猛的投资人
  • 东营建设信息网站深度解析:揭秘本地工程招投标、资质查询与行业资讯的一站式服务平台
  • Docker容器化RAG系统:从基础到生产部署
  • Windows远程桌面多用户破解终极指南:RDPWrap配置文件全解析
  • 网站建设培训资料全面解析从零基础到独立建站实战攻略
  • XCOM模组管理困境的架构级解决方案:AML启动器技术深度解析
  • MySQL 5.5升级到5.7:数据迁移完整指南
  • DisplayCAL Python 3:免费开源的终极显示器色彩校准完整指南
  • Simulink电感矩阵奇异值问题:诊断、解决与预防指南
  • SpaceX与NVIDIA联手:星载AI计算的技术原理、挑战与开发实践
  • UE5项目架构升级:组件化开发与Gameplay框架实战指南
  • ComfyUI-WanVideoWrapper:如何用可视化节点系统重塑AI视频创作体验?
  • 深圳微网站建设ydgcm专业定制方案与数字化转型实战解析
  • FPGA按键消抖:从物理抖动到稳定数字信号的硬件实现方案
  • 找一家靠谱的漳州正规网站建设公司真的这么难吗?深度解析避坑指南与选择策略
  • 3分钟掌握纯真IP数据库:每天自动更新的qqwry.dat使用指南
  • Ender-3 3D打印机实战指南:从开源设计到个性化改造的完整解决方案
  • 终极指南:3步免费在PC上畅玩Switch游戏的完整方案
  • GetQzonehistory:5步轻松备份QQ空间完整历史记忆的终极指南
  • 3步掌握AWS云实践者认证:开源学习资源与完整备考指南
  • 遗留代码现代化改造:重构、适配与策略模式实战指南
  • 从聊天到执行:AI交互范式变革与Agent实战指南
  • 全球五千万开发者遭威胁:VS Code、Cursor、Google Antigravity 曝出致命 RCE 漏洞
  • 手把手教你进行中国建设银行网站查询:从零基础到精通的实用指南
  • 100+云资源免费获取:learning-cloud项目核心功能与使用技巧全解析
  • 深入解析php网站建设文献综述:从技术演进到实战应用的全面指南
  • OpenRGB终极指南:如何用一个免费开源软件统一控制所有RGB设备?
  • Malinois与传统方法对比:为什么这款工具能将CRE预测准确率提升40%?
  • 快手视频下载终极指南:3步轻松获取无水印高清内容
  • 微信批量消息发送工具:5分钟掌握Windows端高效群发技巧