栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java项目:springboot crm客户关系管理系统

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java项目:springboot crm客户关系管理系统

作者主页:夜未央5788

 简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

CRM-智能办公 项目介绍

- 本应用是一个客户关系管理系统,主要包括五大模块,分别是营销管理,客户管理,服务管理,统计报表和系统管理,为客户关系管理提供简单的数据管理与分析

- 技术选型方面,该项目是一个`SpringBoot`的单体应用,项目使用`SpringBoot2`框架快速开发,数据访问层使用`Mybatis`框架,页面渲染引擎使用`Freemarker`,页面样式使用`Layui`,日志方面选用的是`logback`,统计报表部分使用的是`ECharts`,数据库使用的Mysql 8.0版本;

安装教程

1.  在mysql(默认为mysql8)中创建名为`crm`的数据库,并执行源码根目录的`crm.sql`脚本生成数据库表以及数据
2.  将项目源码导入idea中,指定项目的jdk版本为jdk8或以上,并标记为maven项目,下载所需依赖
3.  修改`application.yml`中针对于数据库的配置(主要是数据库名和数据库密码)
4.  修改logback.xml中,第4行,日志文件的存储地址,改为自己的路径;

5.  启动项目测试是否正常,默认启动地址首页为`http://localhost:1212/crm`,默认数据库中的管理员为`admin`,密码为`123456`,可在登录系统之后自行修改用户密码

运行截图

代码相关 客户信息管理控制器
@Controller
@RequestMapping("/customer")
public class CustomerController extends BaseController {

    @Autowired
    private CustomerService customerService;

    @Autowired
    private ResultInfo resultInfo;

    
    @GetMapping("/customer")
    public String customer() {
        return "customer/customer";
    }

    
    @GetMapping("/toAddAndUpdatePage")
    public String toAddAndUpdatePage(@Nullable Integer id, Model model) {
        if (id != null) {
            // 修改
            // 获取客户信息
            Customer customer = customerService.selectByPrimaryKey(id);
            AssertUtil.isTrue(customer == null, "获取客户信息失败");
            model.addAttribute("customer", customer);
        }
        return "customer/addAndUpdate";
    }

    
    @GetMapping("/customerList")
    @ResponseBody
    public Map findCustomers(@Nullable CustomerQuery customerQuery) {
        return customerService.findCustomers(customerQuery);
    }

    
    @PostMapping("/addCustomer")
    @ResponseBody
    public ResultInfo addCustomer(Customer customer) {
        customerService.addCustomer(customer);
        resultInfo.setAll(200, "添加客户信息成功", null);
        return resultInfo;
    }

    
    @PostMapping("/updateCustomer")
    @ResponseBody
    public ResultInfo updateCustomer(Customer customer) {
        customerService.updateCustomer(customer);
        resultInfo.setAll(200, "更新客户信息成功", null);
        return resultInfo;
    }

    
    @PostMapping("/deleteCustomer")
    @ResponseBody
    public ResultInfo deleteCustomer(@RequestParam("ids") Integer[] ids) {
        customerService.deleteCustomerByIds(ids);
        resultInfo.setAll(200, "删除客户信息成功", null);
        return resultInfo;
    }

    
    @GetMapping("/getLevels")
    @ResponseBody
    public List findLevels() {
        return customerService.findLevels();
    }

    
    @GetMapping("/toCustomerOrderPage")
    public String toCustomerOrderPage(@RequestParam("customerId") Integer customerId,Model model) {
        // 校验参数
        AssertUtil.isTrue(customerId == null, "客户id不能为空");
        // 封装客户信息
        Customer customer = customerService.selectByPrimaryKey(customerId);
        AssertUtil.isTrue(customer == null, "查询客户信息失败");
        model.addAttribute("customer", customer);
        return "customerOrder/customerOrder";
    }

}
字典管理控制器
@Controller
@RequestMapping("/dic")
public class DataDicController extends BaseController {

    @Autowired
    private DataDicService dataDicService;

    @Autowired
    private ResultInfo resultInfo;

    @GetMapping("/toDicPage")
    public String toDicPage() {
        return "dic/dic";
    }

    @GetMapping("/selectAllDic")
    @ResponseBody
    public Map selectAllDic(DicQuery dicQuery) {
        return dataDicService.selectAllDic(dicQuery);
    }

    @PostMapping("/addDic")
    @ResponseBody
    public ResultInfo addDic(DataDic dataDic) {
        dataDicService.addDic(dataDic);
        resultInfo.setAll(200, "字典数据新增成功", null);
        return resultInfo;
    }

    @PostMapping("/updateDic")
    @ResponseBody
    public ResultInfo updateDic(DataDic dataDic) {
        dataDicService.updateDic(dataDic);
        resultInfo.setAll(200, "字典数据修改成功", null);
        return resultInfo;
    }

    @PostMapping("/deleteDicById")
    @ResponseBody
    public ResultInfo deleteDicById(@RequestParam("id") Integer id) {
        dataDicService.deleteDicById(id);
        resultInfo.setAll(200, "字典数据删除成功", null);
        return resultInfo;
    }

    @GetMapping("/toAddAndUpdatePage")
    public String toAddAndUpdate(@Nullable Integer id, Model model) {
        // 修改
        if (id != null) {
            model.addAttribute("dic", dataDicService.selectDataDicById(id));
        }
        // 新增
        return "dic/addAndUpdate";
    }

}
订单详情管理控制器
@Controller
@RequestMapping("/orderDetail")
public class OrderDetailController extends BaseController {

    @Autowired
    private OrderDetailService orderDetailService;

    @Autowired
    private CustomerOrderService customerOrderService;

    
    @GetMapping("/orderDetailList")
    @ResponseBody
    public Map findOrderDetailByOrderId(OrderDetailQuery orderDetailQuery) {
        return orderDetailService.findOrderDetailByOrderId(orderDetailQuery);
    }

    
    @GetMapping("/toOrderDetailPage")
    public String toOrderDetailPage(@RequestParam("id") Integer id, Model model) {
        // 查询订单信息
        model.addAttribute("customer", customerOrderService.findCustomerOrderById(id));
        model.addAttribute("sum", orderDetailService.findSum(id));
        return "customerOrder/orderDetail";
    }

}

如果也想学习本系统,下面领取。回复:029springboot

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1024382.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号