crm--业务点详细概述
一.CRM简介:(为什么开发CRM)
此项目主要供自己的公司使用,原来因为公司人员较少,人员管理考勤等都用excel保存。但是现在因为公司人员,以及部门增多,为了方便管理 ,供销售人员使用内部系统更方便。
二.此项目实现的主要功能:
1.列表页面:
-添加,编辑,删除
-客户的单条导入和批量导入
-关键字搜索
-actions定制
-组合搜索
-分页(组件)
2.为销售自动分配订单,并发送通知(短信,微信,叮叮)
3.每天定时跟新或筛选超时客户,并列为公共资源
4.抢单
5.学生考勤
6.记录每个学生的成绩,并用图表(hightchart)动态显示
7.权限管理(组件)
三.此项目中有多少张数据库表?
department-部门表 userinfo-员工表 course-课程表 school-校区表 classlist-班级表
customer-客户表 customerdistribution-客户分配表 salerank-销售权重和数量表
consultrecord-客户跟进记录表 PaymentRecord-缴费记录 Student-学生表 courserecord-上课记录表 studyrecord-学习记录详细表
crm数据库(13张表)
menu-菜单组 group-权限组 permission-权限表 user-用户表 role-角色表
rbac数据库(5张表)
四.业务概述
1.客户信息:
(1)客户信息中有公共客户,自己的客户。而公共客户属于新录入的客户和在规定的时间中某个业务人员没有完成的。假如:规定在3天业务人员和客户没有进行跟进或者是在15天没有完成这个订单并且没有报名,那么这个客户就会属于公共资源,那么就是当前时间减去15天它如果大于你接单的时间或者当前时间减去3天它大于最后的跟进的时间,那么他就属于公共客户资源(通过Q对象把这个条件构造出来),这客户你就在无权去访问。
(2)我的客户就是在自己这里成单或者是在这15天自己跟进的客户,而在这期间在创建一个客户分配表,分配表中包括它的状态,接单时间,以及客户的ID和课程顾问的ID。生成一条记录。如果新来一个客户,那么设计一个定时任务,这个定时就好每天在规定的时间的让这个脚本跑一次,那么这个数据它会在每天定时更新,它具体的功能是:执行py文件:操作两张表,查找客户表,找到它的公共资源,查找分配表中的数据,并更新状态(3天/15天)。而在事实定时有两种方案:一是:可以通过原生的SQL写,也可以通过django也可以写(必须把定时任务和django放在一起使用,)当前用户所有的客户具体实现:创建一个url,首先在session中获取当前用户登录的ID,根据当前用户登录的ID去表中获取他自己的数据(custmers=models.CustomerDistribution.objects.filter(user_id=current_user_id).order_by('status'))把正在跟进的排在前面已成单的放在最后面
(3)在新建的选出没有报名的客户,在没有报名的客户后面加上抢单这个功能,获取当前用户的ID,把客户表中的客户修改,并把接单时间修改成当前时间,把跟进时间也改成当前时间,把原来的课程顾问改为现在跟进的课程顾问,把这些修改的数据更新到数据库中(更新时注意,原顾问不是自己,状态是没报名15天没有成单的,才可以跟新)。在分配表中创建一条数据。
2.自动抢单:
(1) 单条录入:先创建一个url,首先get看到一个页面,(用modelform写一个页面),客户表中新增数据:一获取改分配的课程顾问的id,以及当前的时间,客户分配表新增数据,获取新创建的客户的ID,顾问的ID。该分配的 课程顾问:就是按照权重以及按照分配表的的排序来分配,用迭代器来实现,数据库必须存在每个人的权重,在数据中在创建一个销售权重表表中有个数以及权重。先创建一个文件,在这个文件中写一个静态字段(静态字段包括user,iter_users,reset_status),下来就是跟中权重在数据库中来去符合的数据(数据就是销售)把数据库中拿到的数据跟新到静态字段中的user中,iter_users是生成迭代器的。
3.学生业务
共有三张表:学生表,上课记录表,班级表
学习记录:
为什么要用初始化:这样做起来方便,批量初始一些数据。
单个的初始化学生:
刚开始设置学生上课记录的初始化功能,在上课记录这张表中拿到班级的ID来找到这个班级所有的学生,循环这个班的所有学生,这样就可以拿到每一个学生,为每一个学生生成每一天的学习记录。这样就是对每一个学生进行了上课的初始化。
批量初始化操作:
设置一个action(可以有返回值),在上课记录这张表中拿到这个上课记录的对象。循环拿到每一个上课记录,为一个学生创建学习记录(在创建学习记录是在学生学习记录表中
查看这个学生是否有学习记录如果有,就不让他创建,如果没有就让他创建),
考勤管理:
上课时有多少人,把学生罗列出来。设置action(action里面有缺勤,迟到,早退,签到,请假),以缺勤来说,默认是签到,拿到id,把拿到的数据更新
4.微信提醒
目的:让员工关注公司的推送消息公众号,并绑定个人用户(用于以后的消息提醒)
第一步:扫码关注服务号
第二部:扫码绑定个人账户,扫码的同时,个人的openid会自动录入到数据库中
在用户表中,获取到用户的openid,就能发送微信消息
class UserInfo(models.Model):
openid = models.CharField(verbose_name='微信唯一ID', max_length=64, null=True, blank=True)
....
crm--业务点详细概述的更多相关文章
- 一、Microsoft Dynamics CRM 4.0 SDK概述
Chapter 1. Microsoft Dynamics CRM 4.0 SDK Overview(SDK概述) You are probably reading this book because ...
- python 全栈开发,Day117(popup,Model类的继承,crm业务开发)
昨日内容回顾 第一部分:权限相关 1. 权限基本流程 用户登录成功后获取权限信息,将[权限和菜单]信息写入到session. 以后用户在来访问,在中间件中进行权限校验. 为了提升用户体验友好度,在后台 ...
- CRM【第三篇】: crm业务
1. 项目背景 crm系统是某某教育公司正在使用的项目,系统主要为 销售部.运营部.教质部门提供管理平台,随着公司规模的扩展,对公司员工的业务信息量化以及信息化建设越来越重要. crm系统为不同角色的 ...
- HBase详细概述
原文地址:https://blog.csdn.net/u010270403/article/details/51648462 本文首先简单介绍了HBase,然后重点讲述了HBase的高并发和实时处理数 ...
- CRM 业务
1. 创建CRM项目 引入插件 创建数据库 from django.db import models from django.db import models class Department(mod ...
- Zookeeper执行原理的详细概述
文章作者:Holy Null,来源:http://holynull.leanote.com/post/Zookeeper,非常感谢作者提供如此优秀的原创文章,作者通过俩个月的努力将<Hadoop ...
- crm业务流程图(精简版)
网址:https://www.processon.com/view/link/5e0be839e4b0aef94cbcee28#map如果链接失效,请及时反馈(在评论区评论),博主会及时更新
- FA_固定资产六大业务增加、修改、报废、在建、折旧、盘点概述(概念)
2014-06-04 Created By BaoXinjian
- crm项目-业务实现
############### crm业务 ############### """ 校区管理,部门管理,课程管理, 这三个都比较简单 1,只需要展示校区名称,这是 ...
随机推荐
- 小型云服务器搭建GitLab遇到的坑
云服务商:腾讯云,搞活动买的 3年800块钱,和同时一人一台 配置:1C.1G.50G 用三年,挺划算的 项目中以前一直使用SVN作为代码版本控制,秉着程序员做到老学到老的精神,想尝试一下先进的GIT ...
- android最佳实践的建议(翻译自android-best-practices)
Best practices in Android development Use Gradle and its recommended project structure 使用Gradle和其推荐的 ...
- I/O的控制方式——查询,中断,dma(转)
早期,I/O串行,查询方式.发展,I/O并行,两种方式其一是中断方式,其二是dma方式,使得外部设备能直接与主存储器信息交换,减轻了cpu的工作量.技术继续发展,出现通道结构,实质上为高性能的dma控 ...
- 使用Fiddler调试线上JS代码
在下面的命令框输入“select script”回车来筛选js请求 将HTTP请求重定向到本地的文件,进行web调试.这种调试方式不需要发布到线上再验证,避免了修改不成功.对用户造成影响的风险 左边一 ...
- Visual Studio 2010自动添加头部注释信息
在日常的开发中我们经常需要为我们的类库添加注释和版权等信息,这样我们就需要每次去拷贝粘贴同样的文字,为了减少这种重复性的工作,我们可以把这些信息保存在Visual Studio 2010类库模版文件里 ...
- 关于JSON日期格式显示及My97日期控件
1.My97日期控件.显示不同的日期格式,可以调整"dateFmt“的参数来配置: 详细DEMO:http://www.my97.net/demo/index.htm <p>日期 ...
- jQuery实现的浮动层div浏览器居中显示效果
本文实例讲述了jQuery实现的浮动层div浏览器居中显示效果.分享给大家供大家参考,具体如下: 1.在页面的head中引入jQuery <script type="text/java ...
- python入门(五):面向对象
面向对象术语 类(Class): 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例. 类变量:类变量在整个实例化的对象中是公用的.类变量定义在类中且 ...
- leveldb学习笔记
LevelDB由 Jeff Dean和Sanjay Ghemawat开发. LevelDb是能够处理十亿级别规模Key-Value型数据持久性存储的C++ 程序库. 特别如下: 1.LevelDb是一 ...
- c++调用python函数时,使用PyArray_SimpleNewFromData(nd, dims, typenum, data)函数时出现内存错误的问题
示例程序: int main(int argc, char *argv[]){ PyObject *pName, *pModule, *pDict, *pFunc, *pValue, *pArgs,* ...