AEAI CRM V1.6.0 升级说明,开源客户关系管理系统
1 升级说明
AEAI CRM v1.6.0版是AEAI CRM v1.5.2版客户关系管理系统的升级版本,本次版本是基于AEAI DP v3.8.0_20170228进行打包部署的,升级内容主要是针对数通畅联销售对客户拜访任务管理进行的一次全面的升级,整体的业务流程发生了重大变化,加强了每个销售人员对自己客户关系管理,每周的客户拜访任务模式。
另外,AEAI CRM根据实际应用过程中客户反馈,对相关功能进行修正,同时完善部分功能、优化用户体验。产品现已开源,下载地址:http://pan.baidu.com/s/1mgIdzGc。
2 升级内容
1. 新特性
1) 潜在客户,添加分配功能,销售人员可以分配给其他销售
2) 添加潜在客户拜访记录(填写人、填写时间、拜访时间、沟通效果、拜访类型拜访备注可选择),并显示关联我的客户的拜访记录。
3) 添加周期定义功能模块。
4) 添加我的任务功能模块。
5) 添加任务审查功能模块。
2. 功能完善
1) 潜在客户,个体资源标签删除掉、保留组织资源标签、独立显示。
2) 潜在客户,把客户进行数据隔离,只能看见自己创建的客户和分配给自己的客户(唯一查看,分配给别人后,自己就不能查看到)
3) 提供潜在客户导入功能,提供导入excel模板下载
4) 我的客户,要能看到潜在客户变成客户的潜在客户拜访记录。
5) 我的客户,删除excel导出功能。
6) 客户信息,在左侧树添加以销售人员纬度的树。
7) 客户信息,树列表项后显示分类下的客户总数。
3. 数据表调整:

4. 角色添加
|
INSERT INTO `aeaicrm`.`security_role` (`ROLE_ID`, `ROLE_CODE`, `ROLE_NAME`, `ROLE_PID`, `ROLE_DESC`, `ROLE_STATE`, `ROLE_SORT`) VALUES ('05FC4E42-2BCF-4651-BDFF-86444D055695', 'SALES_MANAGER', '销售经理', '00000000-0000-0000-00000000000000000', '', '1', '7'); INSERT INTO `aeaicrm`.`security_role` (`ROLE_ID`, `ROLE_CODE`, `ROLE_NAME`, `ROLE_PID`, `ROLE_DESC`, `ROLE_STATE`, `ROLE_SORT`) VALUES ('9C7CFCED-8479-43B6-B2FE-5CAA663C2D51', 'SALES_ASSISTANT', '销售助理', '00000000-0000-0000-00000000000000000', '', '1', '9'); |
5. 删除潜在客户个人资源,重新创建潜在客户页面
|
INSERT INTO `aeaicrm`.`sys_function` (`FUNC_ID`, `FUNC_NAME`, `FUNC_TYPE`, `MAIN_HANDLER`, `FUNC_PID`, `FUNC_STATE`, `FUNC_SORT`, `FUNC_DESC`) VALUES ('3F23DD59-DB0D-4A25-851F-39E63E3944ED', '潜在客户', 'funcnode', '2287114B-17C2-4E88-8A2F-505709ADB719', '029FB2F2-370F-46D5-A283-A22C8E49341C', '1', '2', ''); INSERT INTO `aeaicrm`.`sys_handler` (`HANLER_ID`, `HANLER_CODE`, `HANLER_TYPE`, `HANLER_URL`, `FUNC_ID`) VALUES ('2287114B-17C2-4E88-8A2F-505709ADB719', 'OrgInfoManageList', 'MAIN', NULL, '3F23DD59-DB0D-4A25-851F-39E63E3944ED'); INSERT INTO `aeaicrm`.`sys_handler` (`HANLER_ID`, `HANLER_CODE`, `HANLER_TYPE`, `HANLER_URL`, `FUNC_ID`) VALUES ('F63CF10B-C61B-448B-BA04-1D07BD6927ED', 'OrgInfoManageEdit', 'OTHER', '', '3F23DD59-DB0D-4A25-851F-39E63E3944ED'); INSERT INTO `aeaicrm`.`sys_handler` (`HANLER_ID`, `HANLER_CODE`, `HANLER_TYPE`, `HANLER_URL`, `FUNC_ID`) VALUES ('FE46C2D2-9BD5-4DEA-8A04-AAC5CA4AB1C9', 'LabelsTreeSelect', 'OTHER', '', '3F23DD59-DB0D-4A25-851F-39E63E3944ED'); INSERT INTO `aeaicrm`.`sys_operation` (`OPER_ID`, `HANLER_ID`, `OPER_CODE`, `OPER_NAME`, `OPER_ACTIONTPYE`, `OPER_SORT`) VALUES ('EDCAA320-B057-11E6-B2F9-3B17C38C739D', '2287114B-17C2-4E88-8A2F-505709ADB719', 'edit', '编辑', 'edit', '2'); INSERT INTO `aeaicrm`.`sys_operation` (`OPER_ID`, `HANLER_ID`, `OPER_CODE`, `OPER_NAME`, `OPER_ACTIONTPYE`, `OPER_SORT`) VALUES ('EDDEBE8A-B057-11E6-B2F9-3B17C38C739D', '2287114B-17C2-4E88-8A2F-505709ADB719', 'phoneCall', '电话拜访', 'phoneCall', '3'); INSERT INTO `aeaicrm`.`sys_operation` (`OPER_ID`, `HANLER_ID`, `OPER_CODE`, `OPER_NAME`, `OPER_ACTIONTPYE`, `OPER_SORT`) VALUES ('EDEA88F5-B057-11E6-B2F9-3B17C38C739D', '2287114B-17C2-4E88-8A2F-505709ADB719', 'delete', '删除', 'delete', '5'); INSERT INTO `aeaicrm`.`sys_operation` (`OPER_ID`, `HANLER_ID`, `OPER_CODE`, `OPER_NAME`, `OPER_ACTIONTPYE`, `OPER_SORT`) VALUES ('EDF62B72-B057-11E6-B2F9-3B17C38C739D', '2287114B-17C2-4E88-8A2F-505709ADB719', 'detail', '查看', 'detail', '4'); INSERT INTO `aeaicrm`.`sys_operation` (`OPER_ID`, `HANLER_ID`, `OPER_CODE`, `OPER_NAME`, `OPER_ACTIONTPYE`, `OPER_SORT`) VALUES ('EE00387B-B057-11E6-B2F9-3B17C38C739D', '2287114B-17C2-4E88-8A2F-505709ADB719', 'create', '新增', 'create', '1'); INSERT INTO `aeaicrm`.`sys_operation` (`OPER_ID`, `HANLER_ID`, `OPER_CODE`, `OPER_NAME`, `OPER_ACTIONTPYE`, `OPER_SORT`) VALUES ('74CEE600-B058-11E6-B2F9-3B17C38C739D', 'F63CF10B-C61B-448B-BA04-1D07BD6927ED', 'phoneCall', '电话拜访', 'phoneCall', '3'); INSERT INTO `aeaicrm`.`sys_operation` (`OPER_ID`, `HANLER_ID`, `OPER_CODE`, `OPER_NAME`, `OPER_ACTIONTPYE`, `OPER_SORT`) VALUES ('74E27603-B058-11E6-B2F9-3B17C38C739D', 'F63CF10B-C61B-448B-BA04-1D07BD6927ED', 'save', '保存', 'save', '2'); INSERT INTO `aeaicrm`.`sys_operation` (`OPER_ID`, `HANLER_ID`, `OPER_CODE`, `OPER_NAME`, `OPER_ACTIONTPYE`, `OPER_SORT`) VALUES ('74E97FC3-B058-11E6-B2F9-3B17C38C739D', 'F63CF10B-C61B-448B-BA04-1D07BD6927ED', 'edit', '编辑', 'edit', '1'); INSERT INTO `aeaicrm`.`sys_operation` (`OPER_ID`, `HANLER_ID`, `OPER_CODE`, `OPER_NAME`, `OPER_ACTIONTPYE`, `OPER_SORT`) VALUES ('74F0FB97-B058-11E6-B2F9-3B17C38C739D', 'F63CF10B-C61B-448B-BA04-1D07BD6927ED', 'back', '返回', 'back', '4'); |
6. 潜在客户标签编码内容整体完善修改,删除原有的潜在客户标签编码
|
INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('ORG_LABELS', '1', '无人接听', '', '1', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('ORG_LABELS', '2', '号码信息不符', '', '2', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('ORG_LABELS', '3', '空号', '', '3', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('ORG_LABELS', '4', '暂停服务', '', '4', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('ORG_LABELS', '5', '暂无需求', '', '5', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('ORG_LABELS', '6', '后续联系', '', '6', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('ORG_LABELS', '7', '态度恶劣', '', '7', '1'); |
7. 添加潜在客户来源渠道
|
INSERT INTO `aeaicrm`.`sys_codetype` (`TYPE_ID`, `TYPE_NAME`, `TYPE_GROUP`, `TYPE_DESC`, `IS_CACHED`, `IS_UNITEADMIN`, `IS_EDITABLE`, `LEGNTT_LIMIT`, `CHARACTER_LIMIT`, `EXTEND_SQL`, `SQL_BODY`, `SQL_COND`) VALUES ('ORG_SOURCES', '潜在客户来源渠道', 'app_code_define', '', 'Y', 'Y', 'Y', '', '', 'N', '', ''); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('ORG_SOURCES', 'INFO_ACQUIRE', '信息采集', '', '2', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('ORG_SOURCES', 'RECRUIT_ACQUIRE', '招聘采集', '', '3', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('ORG_SOURCES', 'WEB_SEARCH', '网络搜索', '', '1', '1'); |
8. 我的任务-状态编码
|
INSERT INTO `aeaicrm`.`sys_codetype` (`TYPE_ID`, `TYPE_NAME`, `TYPE_GROUP`, `TYPE_DESC`, `IS_CACHED`, `IS_UNITEADMIN`, `IS_EDITABLE`, `LEGNTT_LIMIT`, `CHARACTER_LIMIT`, `EXTEND_SQL`, `SQL_BODY`, `SQL_COND`) VALUES ('TASK_REVIEW_STATE', '我的任务状态', 'app_code_define', '', 'Y', 'Y', 'Y', '', '', 'N', '', ''); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('TASK_REVIEW_STATE', 'ConfirmPlan', '确认计划', '', '3', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('TASK_REVIEW_STATE', 'ConfirmSummary', '确认总结', '', '5', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('TASK_REVIEW_STATE', 'Init', '初始化', '', '1', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('TASK_REVIEW_STATE', 'SubmitPlan', '提交计划', '', '2', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('TASK_REVIEW_STATE', 'SubmitSummary', '提交总结', '', '4', '1'); |
9. 任务跟进状态 – 编码
|
INSERT INTO `aeaicrm`.`sys_codetype` (`TYPE_ID`, `TYPE_NAME`, `TYPE_GROUP`, `TYPE_DESC`, `IS_CACHED`, `IS_UNITEADMIN`, `IS_EDITABLE`, `LEGNTT_LIMIT`, `CHARACTER_LIMIT`, `EXTEND_SQL`, `SQL_BODY`, `SQL_COND`) VALUES ('TASK_FOLLOW_STATUS', '任务跟进状态', 'app_code_define', '', 'Y', 'Y', 'Y', '', '', 'N', '', ''); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('TASK_FOLLOW_STATUS', 'HaveFollowUp', '已跟进', '', '2', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('TASK_FOLLOW_STATUS', 'NoFollowUp', '未跟进', '', '1', '1'); |
10. 拜访类别 – 编码
|
INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('TASK_CLASS', 'ColdCalls', '陌生拜访', '', '1', '1'); INSERT INTO `aeaicrm`.`sys_codelist` (`TYPE_ID`, `CODE_ID`, `CODE_NAME`, `CODE_DESC`, `CODE_SORT`, `CODE_FLAG`) VALUES ('TASK_CLASS', 'FollowUp', '意向跟进', '', '2', '1'); |
11. 添加周期定义表
|
create table CRM_TASK_CYCLE ( TC_ID char(36) not null, TC_BEGIN varchar(32), TC_END varchar(32), TC_FID char(36), primary key (TC_ID) ); |
12. 添加任务计划&总结表
|
create table CRM_TASK_REVIEW ( TASK_REVIEW_ID char(36) not null, TC_ID char(36), SALE_ID char(36), TASK_REVIEW_STATE varchar(32), TASK_REVIEW_DESC text, TASK_REVIEW_VISITS_TOTAL int(11), TASK_REVIEW_STRANGE int(11), TASK_REVIEW_RETURNVISIT int(11), TASK_REVIEW_NEW_INTENCUST int(11), TASK_REVIEW_RETURNVISIT_HIST int(11), TASK_REVIEW_LOSS int(11), primary key (TASK_REVIEW_ID) ); |
13. 添加我的任务表
|
create table CRM_MY_TASKS ( TASK_ID char(36) not null, ORG_ID char(36), CUST_ID char(36), TASK_REVIEW_ID char(36), SALE_ID char(36), TASK_FOLLOW_STATE varchar(32), TASK_CLASS varchar(32), TASK_CREATE_TIME varchar(32), TASK_FINISH_TIME varchar(32), TASK_CUST_STATE varchar(32), primary key (TASK_ID) ); |
14. 添加潜在客户拜访记录表
|
create table CRM_PROCUST_VISIT ( PROCUST_VISIT_ID char(36) not null, ORG_ID char(36), PROCUST_VISIT_DATE date, PROCUST_VISIT_TYPE varchar(32), PROCUST_VISIT_REMARK varchar(1024), PROCUST_VISIT_FILL_ID char(36), PROCUST_VISIT_FILL_TIME datetime, PROCUST_VISIT_EFFECT varchar(32), PROCUST_VISIT_CUST_FOCUS varchar(32), primary key (PROCUST_VISIT_ID) ); |
3 升级步骤
- 由于本次升级内容较多,建议重新部署新版AEAI CRM系统;
- 数据表对应调整参见升级内容对应调整。
AEAI CRM V1.6.0 升级说明,开源客户关系管理系统的更多相关文章
- AEAI WM v1.6.0 升级说明,开源工作管理系统
1 升级说明 AEAI WM v1.6.0版是AEAI WM v1.5.0版工作管理系统的升级版本,本次升级的系统是基于AEAI DP 3.8.0_20170228进行打包部署的,对产品中的功能及BU ...
- AEAI CRM_v1.5.2升级说明,开源客户关系管理系统
1.升级说明 本次AEAI CRM升级内容主要是针对数通畅联推出AEAI ECP企业云联平台而升级的,其中对AEAI CRM的各模块进行扩展,同时增加了移动门户版功能及为AEAI ECP提供数据服务接 ...
- AEAI WM V1.5.0 升级说明,开源工作管理系统
1.升级说明 本次AEAI WM升级内容主要是针对数通畅联推出AEAI ECP企业云联平台而升级的,其中对AEAI WM的各模块进行扩展,同时增加了移动门户版功能及为AEAI ECP提供数据服务接口. ...
- 客户关系管理系统(CRM)的开发过程中使用到的开发工具总结
开发<客户关系管理系统(CRM)>软件过程,也就是一个标准的Winform程序的开发过程,我们可以通过这个典型的软件开发过程来了解目前的开发思路.开发理念,以及一些必要的高效率手段.本篇随 ...
- Winform开发框架之客户关系管理系统(CRM)的开发总结系列4-Tab控件页面的动态加载
在前面介绍的几篇关于CRM系统的开发随笔中,里面都整合了多个页面的功能,包括多文档界面,以及客户相关信息的页面展示,这个模块就是利用DevExpress控件的XtraTabPage控件的动态加载实现的 ...
- Winform开发框架之客户关系管理系统(CRM)的开发总结系列3-客户分类和配置管理实现
我在本系列随笔的开始,介绍了CRM系统一个重要的客户分类的展示界面,其中包含了从字典中加载分类.从已有数据中加载分类.以及分组列表中加载分类等方式的实现,以及可以动态对这些节点进行配置,实现客户分类的 ...
- Winform开发框架之客户关系管理系统(CRM)的开发总结系列2-基于框架的开发过程
在上篇随笔<Winform开发框架之客户关系管理系统(CRM)的开发总结系列1-界面功能展示>中介绍了我的整个CRM系统的概貌,本篇继续本系列的文章,介绍如何基于我的<winform ...
- Django CRM客户关系管理系统
CRM需求分析 随着信息化时代带来的科技创新,CRM客户关系管理系统带来的效益在已经成为很多企业提高竞争优势的一分部,CRM客户关系管理系统将企业管理和客户关系管理集成到统一的平台,其系统功能主要体现 ...
- CRM 客户关系管理系统
CRM(Customer Relationship Manager)客户关系管理系统 企业为提高核心竞争力,利用相应的信息技术以及互联网技术协调企业与顾客间在销售.营销和服务上的交互,从而提升其管理方 ...
随机推荐
- 【设计经验】5、Verilog对数据进行四舍五入(round)与饱和(saturation)截位
一.软件平台与硬件平台 软件平台: 操作系统:Windows 8.1 64-bit 开发套件:Vivado2015.4.2 Matlab2016a 仿真工具:Vivado自带仿真器 二.引言 在利用 ...
- 【安富莱专题教程第4期】SEGGER的J-Scope波形上位机软件,HSS模式简单易用,无需额外资源,也不需要写目标板代码
说明:1.在实际项目中,很多时候,我们需要将传感器或者ADC的数值以波形的形式显示.通常的解决办法是用串口上位机,USB接口上位机或者MDK的逻辑分析仪功能,使用这三种方式都比较繁琐.本期专题为大家讲 ...
- Tomcat线程池配置
简介 线程池作为提高程序处理数据能力的一种方案,应用非常广泛.大量的服务器都或多或少的使用到了线程池技术,不管是用Java还是C++实现,线程池都有如下的特点:线程池一般有三个重要参数: 最大线程数 ...
- python爬虫学习视频资料免费送,用起来非常666
当我们浏览网页的时候,经常会看到像下面这些好看的图片,你是否想把这些图片保存下载下来. 我们最常规的做法就是通过鼠标右键,选择另存为.但有些图片点击鼠标右键的时候并没有另存为选项,或者你可以通过截图工 ...
- limit实现的分页查询
背景:原先是一次性查询加载到前段,表格插件自动分页,最近查询的数据量越来越大,长的时候需要等好几十秒,决定自己写一个后端分页,我写的和网上大神的略有不同,不是后端写一个类封装分页的参数,每次查询都是穿 ...
- [Swift]LeetCode949. 给定数字能组成的最大时间 | Largest Time for Given Digits
Given an array of 4 digits, return the largest 24 hour time that can be made. The smallest 24 hour t ...
- 工作随笔—Java容器基础知识分享(持有对象)
1. 概述 通常,程序总是运行时才知道的根据某些条件去创建新对象.在此之前,不会知道所需对象的数量,甚至不知道确切的类型,为解决这个普遍的编程问题:需要在任意时刻和任意位置创建任意数量的对象,所以,就 ...
- 代码实现PHP web服务器下绝对路径到Web网址的转换
代码实现PHP web服务器下绝对路径到Web网址的转换 代码中用到几个系统变量或常量: 1. 路径中各目录分隔字符 DIRECTORY_SEPARATOR(常量),Windows下DIRECTORY ...
- jxa快速入门,Javascript已加入AppleScript全家桶
因为工作环境基本是以跨平台为主,所以纯mac本地化的AppleScript一直关注是不够的,前几天找资料发现AppleScript也在迅速的进步着,目前已经对Javascript做了比较好的支持--- ...
- Error: Cannot fit requested classes in a single dex file (# methods: 149346 > 65536)
引用第三方库的jar文件,都有可能会触发这个错误.解决方案如下: 参考<[Android]Cannot fit requested classes in a single dex file. T ...