CRM项目-模块二

1.营销管理表结构分析

针对企业中客户的质询需求所建立的信息录入功能,方便销售人员进行后续的客户需求跟踪与联系,提高企业客户购买产品的几率。

对于系统录入每条营销机会记录,系统会分配对应的销售人员与对应的客户进行详细了解,从而提高客户开发计划的成功几率。对应到营销机会管理模块功能上。即:营销机会数据的录入,分配,修改,删除与查询等基本操作。

t_cus_dev_plan--->t_sale_chance

2.营销机会管理功能实现

(1)准备工作

*1.生成代码

通过 mybatis-generator 生成代码。能够生成 JavaBean对象、mapper 映射文件以及 mapper 接口。

*2.IDEA创建MYSQL链接

(2)营销机会数据查询

*1.页面效果展示

*2.后端代码实现

layui 框架通过表格展示后端表数据,数据格式见官网测试数据地址。

SaleChanceQuery.java

在 crm 包下创建 query 包,新建 SaleChanceQuery.java 查询类,设置对应的查询条件

SaleChanceMapper.xml(设置SQL)

SaleChanceMapper.java(接口定义)

 

SaleChanceService.java

 

SaleChanceController.java

时间格式化:在 SaleChance 实体类中的时间字段上添加注解,用来格式化时间

 

*3.前端核心代码

页面模板 : 在 resources/views/saleChance 目录创建 sale_chance.ftl 模块文件,模板内容如下 (模板依赖的 layui文件由 common.ftl 文件提供),layui 表格数据展示模板文件实现参考该地址。

 sale_chance.ftl

 

 

页面入口:SaleChanceController 后台设置对应的接口

 核心 JS:public/js/saleChance 目录下创建 sale.chance.js 文件,初始化 layui 表格数据,layui 表格数据展示模板文件实现参考该地址。

sale.chance.js

 

 

多条件查询:

表格数据展示成功后,接下来考虑添加多条件查询点击事件,这里使用 layui 表格 reload 重载基础方法实现,点击这里参考官网介绍。

sale_chance.ftl

 sale.chance.js 添加搜索点击事件

 3.营销机会数据添加

(1)后端代码实现

实现思路:

营销机会数据添加
* 1.参数校验
customerName:非空
linkMan:非空
linkPhone:非空 11位手机号
* 2.设置相关参数默认值
state:默认未分配 如果选择分配人 state 为已分配
assignTime:如果 如果选择分配人 时间为当前系统时间
devResult:默认未开发 如果选择分配人devResult为开发中 0-未开发 1-开发中 2-开发成功
*3-开发失败
isValid:默认有效数据(1-有效 0-无效)
createDate updateDate:默认当前系统时间
*4.执行添加 判断结果

(2)前端核心代码

*1.views/saleChance 目录下添加 add_update.ftl 页面模板

*2.工具栏事件:sale_chance.ftl

*3.监听头部工具栏事件:sale_chancel.js

 

*4.核心 JS

js/saleChance 目录下添加 add.update.js 文件,完成机会数据添加与更新表单提交操作。监听submit提交

 *6.关闭弹出层

给按钮设置 id 属性值,通过 id 绑定点击事件:add_update.ftl

add.update.js

 

4.营销机会数据更新

1.后端代码实现

(1)实现思路:

营销机会数据更新
* 1.参数校验
id:记录必须存在
customerName:非空
linkMan:非空
linkPhone:非空,11位手机号
* 2. 设置相关参数值3.4.1.2. 核心代码
updateDate:系统当前时间
原始记录 未分配 修改后改为已分配(由分配人决定)
state 0->1
assginTime 系统当前时间
devResult 0-->1
原始记录 已分配 修改后 为未分配
state 1-->0
assignTime 待定 null
devResult 1-->0
* 3.执行更新 判断结果

(2)核心代码:

SaleChanceService.java

 

方法调用:这里机会数据更新与添加操作实现代码共用,修改原有的添加方法。

SaleChanceController.java

 

(3)前端核心代码

*1.表格行事件:

sale_chance.ftl

sale.chance.js

 

openAddOrUpdateSaleChanceDialog方法参考数据添加操作

add_update.ftl

在页面中通过EL表达式获取作用域中的数据。

添加隐藏域,存放营销机会的ID

设置营销机会的ID

核心 JS

修改操作的 JS 与添加操作的可共用,通过隐藏域中存放的营销机会ID,来判断当前的操作行为。

加载下拉框

UserMapper.java

 UserMapper.xml 

 

UserService.java

 UserController.java

 add_update.ftl:设置营销人员的ID

add.update.js 

显示指派人

1. 修改查询的SQL语句 ( SaleChanceMapper.xml )

2. JavaBean中添加属性字段 ( SaleChance.java )

5.营销机会数据删除

(1)设置sql,id="deleteBatch"

(2)接口定义

在 BaseMapper 中定义了删除的方法,无须在 SaleChanceMapper 类中再定义

(3)业务层SaleChanceService.java中增加营销机会删除代码,方法名字为deleteSaleChance

删除数据调用BaseMapper中的删除方法deleteBatch

(4)控制层SaleChanceController.java中添加@RequestMapping("delete")注解

(5)前端核心代码

工具栏事件:

sale_chance.ftl

sale_chancel.js

 

表格行事件:

sale.chance.ftl

sale.chance.js

 

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值