微搭低代码MBA培训管理系统实战10——线索管理

目录

前情回顾与本节目标

在上一讲中,我们完成了页面级的权限校验功能,为系统加上了严密的"安全锁"。但作为一个完整的 MBA 培训 CRM 系统,客户资源的科学获取与高效流转才是创造业绩的核心。

本节我们将从业务的最前端------线索录入讲起,彻底打通"线索获取 -> 分配 -> 认领 -> 淘汰回收"的全生命周期闭环。

本节核心目标:

  1. 构建线索多渠道矩阵:设计销售自录、市场获客、渠道报备三种不同的录入机制。
  2. 实现线索管理:给管理员提供线索录入的功能。

第一步:线索流转全生命周期设计(业务核心)

在写代码之前,我们必须先理清线索在系统中的"一生"。

根据我们的业务需求,线索的来源和去向被严格分为以下三条核心链路:

  1. 链路 A:销售自录(私海模式)
  • 场景:销售人员通过自己的人脉、地推获取的客户。
  • 流向 :录入时,系统自动将 owner_id(负责人)绑定为该销售本人,线索直接进入个人的"私海",开始计算跟进保护期。
  1. 链路 B:市场采集(公海抢单模式)
  • 场景:通过小程序预约、官网表单、线下活动(市场部)收集到的野生线索。
  • 流向 :录入时,owner_id 为空,直接掉入"公海池"。全体销售可见,谁手快谁"认领"(抢单)进入自己的私海。
  1. 链路 C:渠道报备(主管分配模式)
  • 场景:外部代理商或合作渠道提交的意向名单。
  • 流向 :录入时,owner_id 同样为空,但被打上"渠道"标签。这类高优线索进入"待分配池",由销售主管根据业务员的负载情况,手动指派给特定的销售。

一旦线索进入销售的"私海"(有了 owner_id),公海回收引擎(云函数)就会开启倒计时。超过规定时间不跟进,就会被无情地踢回"公海池"。


第二步:核心数据模型设计

为了支撑上述三条链路,我们的 MBA_Customers(客户表)需要具备以下核心字段:

字段名称 字段标识 数据类型 说明
姓名 name 单行文本 客户真实姓名
手机号 phone 电话 唯一标识,去重关键
公司 company 单行文本 公司名称
职位 position 单行文本 职位信息
行业 industry 单行文本 行业信息
来源 source 枚举 转介绍,渠道介绍,自开拓
当前负责人 owner_id 关联关系 关联 Users 表。为空时表示在公海池中
生命周期状态 status 枚举 线索 / 准客户 / 成交客户 / 学员 / 校友
客户等级 level 枚举 A / B / C / D
最后跟进时间 last_contact 日期时间 判定公海回收超时的唯一依据
客户标签 tags 数组 可以录入多个标签

第三步:实现管理员的线索管理

有了表之后,我们先实现管理员录入线索的功能。

3.1 搭建页面布局

点击创建页面的图标,输入线索管理,选择管理员布局

切换到布局设计,添加菜单,选择线索管理页面

回到页面设计,添加布局组件,修改标题,改为线索管理

继续添加数据表格组件

选择客户表,勾选功能场景

配置筛选条件

选择表单容器,修改布局为双列布局

打开字段的必填标识

3.2 校验手机号唯一

配置好提交表单后,我们需要加一个自定义的校验规则。当用户输入手机号,提交的时候我们要校验手机号是否唯一,如果不唯一提示错误信息。在代码区增加一个自定义方法

bash 复制代码
export default async function({event, data}) {

  
    const phone = $w.inputPhone2.value;
    
    // 手机号格式简单验证
    if (!/^1[3-9]\d{9}$/.test(phone)) {
      $w.utils.showToast({ 
        title: '手机号格式不正确', 
        icon: 'error' 
      });
      return false;
    }
    
    // 检查手机号是否已存在
    const checkResult = await $w.cloud.callDataSource({
      dataSourceName: 'MBA_Customers',
      methodName: 'wedaGetRecordsV2',
      params: {
        filter: {
          where: { 
            phone: { $eq: phone } 
          }
        },
        select: { _id: true }
      }
    });
    
    if (checkResult.records && checkResult.records.length > 0) {
      throw Error(
        "该手机号已存在,请检查后重试"
      )
    }
    
  
}

然后在新增方法之前调用我们的校验方法

校验失败时候提示错误信息

最终效果

管理录入线索

如果录入重复的手机号,提示报错信息


总结

本节我们介绍了线索管理的功能搭建,设计了数据表,搭建了页面布局。在实际业务中我们还考虑了手机号是否重复的问题,增加了前端校验功能,下一篇,我们介绍渠道管理以及线索报备功能,敬请期待。

相关推荐
2501_9127840815 小时前
跨境多语种页面适配方案:低代码SaaS落地实测
低代码
Jeking21715 小时前
实战案例|快捷键盘组件在仓库 PDA 入库表单中的落地应用
低代码·动态表单·表单设计·表单引擎·unione cloud
Jeking2171 天前
低代码平台 unione form editor 功能组件 —— 快捷键盘组件
低代码·动态表单·表单设计·表单引擎·unione cloud
lianyinghhh2 天前
FlowGame 从零上手:开源 AI 工作流编排框架与 Vue 3 接入实战
python·低代码·开源·vue·rag·flowgame·ai工作流编排
搭贝2 天前
如何用低代码平台搭建企业级合同审查系统——搭贝实战
低代码
踩着两条虫2 天前
VTJ.PRO v2.4.0 多人协作与 AI 批量识图实战评测
vue.js·人工智能·低代码·figma
token-go3 天前
Means:基于 .NET 10 打造的开源自部署 S3 兼容对象存储服务
低代码·.net·rxjava
数睿数据无代码开发3 天前
smardaten 地图能力全解析:让地理数据“跃然图上“
低代码
踩着两条虫3 天前
开源 AI 低代码平台 VTJ.PRO 双版本齐发:核心引擎 v0.17.1 与在线平台 v2.4.1 正式上线,强化团队协作与 AI 资产管理
前端·人工智能·低代码·架构·开源
搭贝4 天前
低代码+AI赋能文化传媒财务结算:搭贝平台技术架构与实战解析
人工智能·低代码·架构