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

网友投稿 655 2022-05-30

客户管理

查询客户

客户操作规则

业务员只能查看属于自己的客户,操作员和管理员可以查看所有的客户。

1.常量

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

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

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; } }

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

4.CustomerMapper.xml

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

5.CustomerMapper.java

List queryView(Customer record);

1

6.service层

接口

/** * 分页查询 * @param dto * @return */ public PageInfo queryPage(CustomerDto dto,User user);

1

2

3

4

5

6

实现

/** * 当前用户如果是 业务员 只能查看所属的客户 * 如果是 操作员 或者 管理员 能查看所有的客户 */ @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); }

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

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"; }

1

2

3

4

5

6

7

8

9

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"%> 无标题文档

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

9.访问测试

业务员访问

管理员访问

完成~~

智慧物流

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SAP UI渲染模式:客户端渲染 VS 服务器端渲染
下一篇:Spring依赖注入的三种方式(好的 坏的和丑的)
相关文章