微搭低代码MBA培训管理系统12——线索分配与审核

目录

前情回顾与本节目标

在上一讲中,我们完成了渠道管理模块的开发,包括渠道合伙人管理、渠道端工作台搭建、登录鉴权和线索报备功能。当渠道合伙人报备线索后,这些线索需要由管理员进行审核和分配。

本节我们将实现线索分配与审核功能,确保渠道报备的线索能够及时、合理地分配给销售团队。

本节核心目标:

  1. 扩展客户表字段:增加线索分配审核状态字段。
  2. 渠道线索报备优化:在渠道端报备时自动绑定渠道信息。
  3. 管理员线索分配模块:创建专门的线索分配页面。
  4. 线索分配功能:实现管理员分配线索给销售的功能。

第一步:扩展客户表字段

1.1 增加分配审核字段

MBA_Customers 表中增加以下字段:

字段名称 字段标识 数据类型 说明
分配状态 assign_status 数字 1=待分配,2=已分配,3=已拒绝
分配人 assign_by 关联关系 关联 Users 表(分配线索的管理员)
分配时间 assign_at 日期时间 记录分配时间
处理意见 assign_remark 多行文本 管理员分配或拒绝时的处理意见

第二步:渠道端线索报备优化

2.1 渠道信息自动绑定

在渠道端线索报备时,需要自动绑定当前渠道的信息。选中线索报备的表单,给渠道来源绑定选中值

绑定全局变量currentChannel的数据标识

设置分配状态的选中值,设置为1


第三步:管理员线索分配模块

3.1 创建线索分配页面

在管理员端创建专门的线索分配页面,用于审核和分配渠道报备的线索。

3.2 搭建页面布局

点击创建页面,输入"线索分配",选择管理员布局。

切换到页面设计,配置导航菜单

3.3 配置数据表格

添加数据表格组件,数据模型选择客户表

3.4 配置操作列

将表格的操作列的按钮改为分配销售

给按钮配置点击事件,打开弹窗,传入当前所在行的数据标识


第四步:线索分配功能实现

4.1 分配销售功能

4.1.1 创建分配弹窗

选中页面组件,添加弹窗组件

里边添加表单容器,表单场景选择查看,去掉和审核相关的字段

数据标识配置为弹窗的入参

继续添加表单容器,场景选择新增,只保留审核相关的字段

当前负责人我们需要筛选只是销售岗位的人员,创建一个内置数据查询,查询销售岗位信息

然后配置当前负责人的数据筛选,根据岗位信息进行过滤

4.1.2 编写分配方法

javascript 复制代码
export default async function assignLead({ event, data }) {
  try {
    $w.utils.showLoading({ title: '分配中...' });

    const leadId = data.target;
    const selectedSales = $w.select1.value;
    const currentUser = $w.app.dataset.state.currentUser;

    if (!selectedSales) {
      $w.utils.showToast({
        title: '请选择销售',
        icon: 'error'
      });
      return;
    }

    // 更新线索状态
    await $w.cloud.callDataSource({
      dataSourceName: 'MBA_Customers',
      methodName: 'wedaUpdateV2',
      params: {
        filter: { where: { _id: { $eq: leadId } } },
        data: {
          owner_id: { _id: selectedSales },
          assign_status: "2", // 已分配
          assign_by: { _id: currentUser._id },
          assign_at: Date.now()
        }
      }
    });

    $w.utils.showToast({
      title: '线索分配成功',
      icon: 'success'
    });

    // 关闭弹窗
    $w.modal1.close({});

    // 刷新表格
    $w.table1.refresh();

  } catch (error) {
    console.error('分配失败:', error);
    $w.utils.showToast({
      title: '分配失败,请稍后重试',
      icon: 'error'
    });
  } finally {
    $w.utils.hideLoading();
  }
}

给分配按钮配置点击事件,调用方法,传入入参

4.2 拒绝线索功能

4.2.1 编写拒绝方法

javascript 复制代码
export default async function rejectLead({ event, data }) {
  try {
    $w.utils.showLoading({ title: '处理中...' });

    const leadId = data.target;
    const rejectReason = $w.input19.value;
    const currentUser = $w.app.dataset.state.currentUser;

    if (!rejectReason) {
      $w.utils.showToast({
        title: '请输入拒绝原因',
        icon: 'error'
      });
      return;
    }

    // 更新线索状态
    await $w.cloud.callDataSource({
      dataSourceName: 'MBA_Customers',
      methodName: 'wedaUpdateV2',
      params: {
        filter: { where: { _id: { $eq: leadId } } },
        data: {
          assign_status: "3", // 已拒绝
          assign_by: { _id: currentUser._id },
          assign_at: Date.now(),
          assign_remark: rejectReason
        }
      }
    });

    $w.utils.showToast({
      title: '线索已拒绝',
      icon: 'success'
    });

    // 关闭弹窗
    $w.modal1.close({});

    // 刷新表格
    $w.table1.refresh();

  } catch (error) {
    console.error('拒绝失败:', error);
    $w.utils.showToast({
      title: '操作失败,请稍后重试',
      icon: 'error'
    });
  } finally {
    $w.utils.hideLoading();
  }
}

给拒绝按钮配置点击事件,调用方法,传入入参


最终效果

管理员登录,可以查看需要分配的线索

点击分配线索,执行相应的操作即可

总结

本节我们完成了线索分配与审核功能的开发:

  1. 扩展客户表字段 :增加了 assign_statusassign_byassign_at 字段,用于跟踪线索的分配状态。

  2. 渠道线索报备优化:渠道端报备时自动绑定渠道信息,并设置初始分配状态为"待分配"。

  3. 管理员线索分配模块:创建了专门的线索分配页面,显示待分配的渠道线索。

  4. 线索分配功能:实现了管理员分配线索给销售的功能,以及拒绝线索的功能。

下一步,当线索分配给销售后,销售如何跟进线索?如何记录跟进内容?下一讲,我们将进入【线索跟进与管理】的开发!

相关推荐
API开发平台3 小时前
开源 API 开发平台 4.2.0 发布
低代码·开源
低代码布道师6 小时前
微搭低代码MBA培训管理系统实战10——线索管理
低代码
工业甲酰苯胺6 小时前
制造业数字化转型:低代码核心系统技术解析与落地实践
人工智能·深度学习·低代码
廋到被风吹走6 小时前
持续学习方向 低代码/平台工程
学习·低代码
树上有只程序猿7 小时前
OpenClaw“技术债”还不起,低代码才是长期主义
低代码·aigc·openai
JEECG官方11 小时前
Mac Studio M4 通过 vLLM 部署本地大模型,对接 Jeecg-AI
低代码·llm·aigc
得物技术13 小时前
AI编程能力边界探索:基于 Claude Code 的 Spec Coding 项目实战|得物技术
低代码·ai编程·claude
BPM_宏天低代码1 天前
低代码平台的测试策略:自动化测试体系搭建
低代码·单元测试
低代码布道师1 天前
微搭低代码MBA培训管理系统实战09——页面级权限过滤与无权限拦截
低代码