

为了避免浪费客户资源,CRM系统基本带有无跟进客户自动退回公海的功能,下面讲解一下如何简单的实现该功能。
1、客户表,存储客户信息,这里为了方便,直接在数据库添加几条公海客户数据。
字段说明:
状态:字符型,仅有“公海客户”和“跟进客户”两种值
最后跟进日期:日期型,标记该客户最后跟进日期
2、跟进表,存储跟进记录。
字段说明:
客户:关联型(关联客户表),标记是哪个客户的跟进记录
跟进日期:标记跟进的日期
分配公海客户功能
1、步骤1:选择公海客户,状态字段设为“公海客户”,过滤掉“跟进客户”。
2、步骤2:填写分配信息。
1) 关联获取步骤1的客户,
2) 状态设为“跟进客户”,
3) 最后跟进日期设为当前时间,
4) 跟进人设为必填。
到此分配客户功能已实现,将功能发布即可。
添加跟进记录功能
1、步骤1:选择跟进客户。将跟进人设为“当前用户”。
2、步骤2:新增跟进信息。
3、填写跟进信息
1) 客户设为步骤1选择的客户
2) 跟进内容设为长文本填写
3) 跟进日期设为系统当前时间
4、步骤3:更新客户的最后跟进日期,设为系统当前时间。注意将本步骤隐藏。
到此添加跟进记录的功能已实现,将功能发布即可。
7天无跟进退回公海功能
此功能直接用编程实现
async function runProcess($model = model, $plugin = plugin, $params) {
//七天前
let date = new Date(new Date().getTime() - 7 * 24 * 60 * 60 * 1000);//七天前的时间对象
let YY = date.getFullYear();
let MM = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1);
let DD = (date.getDate() + 1 <= 10 ? '0' + date.getDate() : date.getDate());
let beforeSevenDayStr = YY + "-" + MM + "-" + DD;//年-月-日
/**
* 获取所有7天未跟进跟进客户
* 注意,data.queryData 最大支持100条数据,
* 用户可以根据查询的数据量等于100判断还有未跟进的客户,进行循环查询。
*/
let entity = "601bb00f75d5d14aeac3d4ff";//客户表entity
let custList = await $plugin.data.queryData(entity, {
"601bb0299089024ae9e7b347": "跟进客户",//状态
"601bb03a9089024ae9e7b348": { $lt: beforeSevenDayStr },//最后跟进日期小于七天前
});
// 遍历所有7天未跟进客户
custList.forEach(cust => {
// 放弃客户进入公海
$plugin.data.updateData(entity, cust._id, {
"601bb0299089024ae9e7b347": "公海客户",//状态设为公海客户
"601bb09c9089024ae9e7b34d": "",//清除跟进人
});
});
}
设置定时任务,每天12点执行“7天无跟进退回公海功能”