好好编程-物流项目18【客户管理-查询客户】

2.创建V_Customer视图

SELECT t1.customer_id

,t1.customer_name

,t1.address

,t1.c_sex

,t1.email

,t1.base_id

,t1.id_card

,t1.mobile_phone

,t1.order_id

,t1.remark

,t1.user_id

,t2.user_name

,t2.real_name

,t3.base_name

from t_customer t1

left join t_user t2

on t1.user_id = t2.user_id

left join t_basicdata t3

on t1.base_id = t3.base_id

通过视图将对应的业务员姓名和常用区间信息查询了出来,便于展示数据

3.CustomerDto创建

在这里插入图片描述

package com.bobo.dto;

import com.bobo.pojo.Customer;

/**

  • 客户的数据传输对象

  • @author 波波烤鸭

  • dengpbs@163.com

*/

public class CustomerDto extends BasePage{

private Customer customer;

// 业务员

private String salesMan;

// 常用区间

private String interval;

public Customer getCustomer() {

return customer;

}

public void setCustomer(Customer customer) {

this.customer = customer;

}

public String getSalesMan() {

return salesMan;

}

public void setSalesMan(String salesMan) {

this.salesMan = salesMan;

}

public String getInterval() {

return interval;

}

public void setInterval(String interval) {

this.interval = interval;

}

}

4.CustomerMapper.xml

select

t1.customer_id

,t1.customer_name

,t1.address

,t1.c_sex

,t1.email

,t1.base_id

,t1.id_card

,t1.mobile_phone

,t1.order_id

,t1.remark

,t1.user_id

,t1.user_name

,t1.real_name

,t1.base_name

from v_customer t1

user_id = #{userId}

5.CustomerMapper.java

List queryView(Customer record);

6.service层

接口

/**

  • 分页查询

  • @param dto

  • @return

*/

public PageInfo queryPage(CustomerDto dto,User user);

实现

/**

  • 当前用户如果是 业务员 只能查看所属的客户

  • 如果是 操作员 或者 管理员 能查看所有的客户

*/

@Override

public PageInfo queryPage(CustomerDto dto,User user) {

PageHelper.startPage(dto.getPageNum(), dto.getPageSize());

// 获取角色信息

List list = userService.queryRoleByUserId(user.getUserId());

boolean flag = false;

if(list != null && list.size() > 0){

for (Role role : list) {

if(Constant.ROLE_ADMIN.equals(role.getRoleName())

|| Constant.ROLE_OPERATOR.equals(role.getRoleName())){

// 拥有操作员或者管理员的身份,查询所有的客户信息

flag = true;

break;

}

}

}

// 业务员 限制查询

Customer customer = new Customer();

if(flag == false){

customer.setUserId(user.getUserId());

}

List customers = customerMapper.queryView(customer);

return new PageInfo<>(customers);

}

7.控制器

@RequestMapping(“/query”)

public String query(CustomerDto dto,Model model){

// 获取登录用户信息

User user = (User) SecurityUtils.getSubject().getPrincipal();

System.out.println(“—>”+user.getUserId());

PageInfo list = customerService.queryPage(dto,user);

model.addAttribute(Constant.PAGE_MODEL, list);

return “customer/customer”;

}

8.Customer.jsp

在这里插入图片描述

<%@ page language=“java” contentType=“text/html; charset=UTF-8”

pageEncoding=“UTF-8”%>

<%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c”%>

无标题文档

位置:

    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

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

    抵扣说明:

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

    余额充值