瀏覽代碼

渠道管理

dingxin 5 年之前
父節點
當前提交
1d40a2f289

+ 30
- 8
src/main/java/com/huiju/estateagents/controller/TaChannelController.java 查看文件

@@ -6,10 +6,15 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
6 6
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
7 7
 import com.huiju.estateagents.base.BaseController;
8 8
 import com.huiju.estateagents.base.ResponseBean;
9
+
10
+import com.huiju.estateagents.common.JWTUtils;
11
+import com.huiju.estateagents.common.StringUtils;
9 12
 import com.huiju.estateagents.entity.TaChannel;
10 13
 import com.huiju.estateagents.entity.TaPerson;
14
+import com.huiju.estateagents.mapper.TaChannelMapper;
11 15
 import com.huiju.estateagents.service.ITaPersonService;
12 16
 import com.huiju.estateagents.service.TaChannelService;
17
+import org.apache.http.HttpRequest;
13 18
 import org.slf4j.Logger;
14 19
 import org.slf4j.LoggerFactory;
15 20
 import org.springframework.beans.factory.annotation.Autowired;
@@ -21,6 +26,10 @@ import org.springframework.web.bind.annotation.RequestParam;
21 26
 import org.springframework.web.bind.annotation.ResponseBody;
22 27
 import org.springframework.web.bind.annotation.RestController;
23 28
 
29
+import javax.servlet.http.HttpServletRequest;
30
+import java.util.HashMap;
31
+import java.util.List;
32
+
24 33
 
25 34
 /**
26 35
  * <p>
@@ -42,6 +51,9 @@ public class TaChannelController extends BaseController {
42 51
     @Autowired
43 52
     public ITaPersonService taPersonService;
44 53
 
54
+    @Autowired
55
+    public TaChannelMapper taChannelMapper;
56
+
45 57
 
46 58
     /**
47 59
      * 分页查询列表
@@ -51,16 +63,25 @@ public class TaChannelController extends BaseController {
51 63
      */
52 64
     @RequestMapping(value="/admin/channel",method= RequestMethod.GET)
53 65
     public ResponseBean channelList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
54
-                                    @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize){
66
+                                    @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
67
+                                    @RequestParam(value ="channelId",required = false) Integer channelId,
68
+                                    HttpServletRequest request){
55 69
         ResponseBean responseBean = new ResponseBean();
70
+        String orgid = JWTUtils.getSubject(request);
56 71
         try {
57 72
             //使用分页插件
58 73
 		    IPage<TaChannel> pg = new Page<>(pageNum, pageSize);
59 74
             QueryWrapper<TaChannel> queryWrapper = new QueryWrapper<>();
75
+            queryWrapper.eq(null != channelId, "channel_id", channelId);
60 76
             queryWrapper.orderByDesc("create_date");
61 77
 
62 78
             IPage<TaChannel> result = taChannelService.page(pg, queryWrapper);
63
-            responseBean.addSuccess(result);
79
+          HashMap hashMap  = new HashMap<>();
80
+            hashMap.put("result",result);
81
+            // 下拉列表的数据 all
82
+            List<TaChannel> taChannelList = taChannelMapper.selectChannelList();
83
+            hashMap.put("channelNmae",taChannelList);
84
+            responseBean.addSuccess(hashMap);
64 85
         }catch (Exception e){
65 86
             e.printStackTrace();
66 87
             logger.error("channelList -=- {}",e.toString());
@@ -74,10 +95,13 @@ public class TaChannelController extends BaseController {
74 95
      * @param channel 实体对象
75 96
      * @return
76 97
      */
77
-    @RequestMapping(value="/channel",method= RequestMethod.POST)
98
+    @RequestMapping(value="/admin/channel",method= RequestMethod.POST)
78 99
     public ResponseBean channelAdd(@RequestBody TaChannel channel){
79 100
         ResponseBean responseBean = new ResponseBean();
80 101
         try {
102
+            // 生成6位数的渠道码
103
+            int channelCode= taChannelMapper.channelCode();
104
+            channel.setChannelCode(String.valueOf(channelCode));
81 105
             if (taChannelService.save(channel)){
82 106
                 responseBean.addSuccess(channel);
83 107
             }else {
@@ -157,13 +181,11 @@ public class TaChannelController extends BaseController {
157 181
     /**
158 182
      * 渠道管理下的经纪人
159 183
      */
160
-    @RequestMapping(value="/channel/broker",method= RequestMethod.GET)
161
-    public  ResponseBean channelBrokerList(@RequestBody String  Param,
184
+    @RequestMapping(value="/admin/channel/broker",method= RequestMethod.GET)
185
+    public  ResponseBean channelBrokerList(@RequestParam(value="name",required = false) String name,
186
+                                           @RequestParam(value="phone",required = false) String phone,
162 187
                                            @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
163 188
                                            @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize){
164
-        JSONObject jSONObject = JSONObject.parseObject(Param);
165
-        String name = jSONObject.getString("name");
166
-        String phone = jSONObject.getString("phone");
167 189
         ResponseBean taPerson =  taPersonService.channelBrokerList(name,phone,pageNum,pageSize);
168 190
         return taPerson;
169 191
     }

+ 0
- 1
src/main/java/com/huiju/estateagents/controller/TaChannelPersonController.java 查看文件

@@ -51,7 +51,6 @@ public class TaChannelPersonController extends BaseController {
51 51
             //使用分页插件
52 52
 		    IPage<TaChannelPerson> pg = new Page<>(pageNum, pageSize);
53 53
             QueryWrapper<TaChannelPerson> queryWrapper = new QueryWrapper<>();
54
-            queryWrapper.eq("channel_name",channelName);
55 54
             queryWrapper.orderByDesc("create_date");
56 55
 
57 56
             IPage<TaChannelPerson> result = iChannelPersonService.page(pg, queryWrapper);

+ 3
- 0
src/main/java/com/huiju/estateagents/entity/TaPerson.java 查看文件

@@ -234,4 +234,7 @@ public class TaPerson implements Serializable {
234 234
 
235 235
     @TableField(exist = false)
236 236
     private Integer isSave;
237
+
238
+    @TableField(exist = false)
239
+    private int recommendCount;
237 240
 }

+ 13
- 0
src/main/java/com/huiju/estateagents/mapper/TaChannelMapper.java 查看文件

@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 4
 import com.huiju.estateagents.entity.TaChannel;
5 5
 import org.apache.ibatis.annotations.Mapper;
6 6
 
7
+import java.util.List;
8
+
7 9
 /**
8 10
  * <p>
9 11
  *   Mapper 接口
@@ -15,4 +17,15 @@ import org.apache.ibatis.annotations.Mapper;
15 17
 @Mapper
16 18
 public interface TaChannelMapper extends BaseMapper<TaChannel> {
17 19
 
20
+    /**
21
+     * 渠道码
22
+     * @return
23
+     */
24
+    int channelCode();
25
+
26
+    /**
27
+     * 渠道页面下拉列表的所有数据
28
+     * @return
29
+     */
30
+    List<TaChannel> selectChannelList();
18 31
 }

+ 24
- 0
src/main/resources/mapper/TaChannelMapper.xml 查看文件

@@ -2,4 +2,28 @@
2 2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 3
 <mapper namespace="com.huiju.estateagents.mapper.TaChannelMapper">
4 4
 
5
+    <select id="channelCode" resultType="int">
6
+        drop FUNCTION if exists roundNum;
7
+        create function roundNum() returns int
8
+        begin
9
+        declare x int default 1;
10
+        declare y int default 0;
11
+        declare a int default 20;
12
+        declare b int default 1;
13
+        while (b <![CDATA[ < a ]]> ) do
14
+        set x = (select (select FLOOR(100000 + RAND()*900000))  as num);
15
+        set y = (select count(1) from ta_channel where channel_code = x);
16
+        if y = 0
17
+        then return x;
18
+        END IF;
19
+        set b = b + 1;
20
+        end while;
21
+        return 0;
22
+        end;
23
+        select roundNum();
24
+    </select>
25
+    
26
+    <select id="selectChannelList" resultType="com.huiju.estateagents.entity.TaChannel">
27
+        select * from ta_channel ;
28
+    </select>
5 29
 </mapper>

+ 9
- 1
src/main/resources/mapper/TaPersonMapper.xml 查看文件

@@ -490,7 +490,14 @@ FROM
490 490
     </select>
491 491
 
492 492
     <select id="channelBrokerList" resultType="com.huiju.estateagents.entity.TaPerson">
493
-        select * from ta_person
493
+        select
494
+        p.avatarurl,
495
+        p.name,
496
+        p.tel,
497
+        p.sex,
498
+        COUNT(rc.person_id) as recommendCount
499
+        from ta_person p
500
+        LEFT JOIN ta_recommend_customer rc ON p.person_id = rc.person_id and rc.report_recommend_status = 1
494 501
         <where>
495 502
         <if test="name !=null and name !=''">
496 503
             and name = #{name}
@@ -500,6 +507,7 @@ FROM
500 507
         </if>
501 508
         and person_type = 'estate agent'
502 509
         </where>
510
+        GROUP BY p.person_id
503 511
     </select>
504 512
 
505 513
 </mapper>