张延森 2 jaren geleden
bovenliggende
commit
7d94f45a84

+ 11
- 0
src/main/java/com/yunzhi/marketing/borker/controller/BorkerController.java Bestand weergeven

59
         return ResponseBean.success(result);
59
         return ResponseBean.success(result);
60
     }
60
     }
61
 
61
 
62
+    @RequestMapping(value="/wx/borker/rank",method= RequestMethod.GET)
63
+    @ApiOperation(value="小程序端经纪人榜单", notes = "小程序端经纪人榜单", httpMethod = "GET", response = ResponseBean.class)
64
+    public ResponseBean getWxBorkerRank(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
65
+                                        @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
66
+                                       @ApiParam(value = "榜单类型", allowableValues = "person,money") @RequestParam(value ="rankType") String rankType,
67
+                                        HttpServletRequest request) throws Exception {
68
+        IPage<BorkerSummery> page = new Page<>(pageNum, pageSize);
69
+        IPage<BorkerSummery> result = iTaPersonService.getWxBorkerRankPage(page, rankType);
70
+        return ResponseBean.success(result);
71
+    }
72
+
62
 
73
 
63
     @RequestMapping(value="/wx/bindBorker",method= RequestMethod.PUT)
74
     @RequestMapping(value="/wx/bindBorker",method= RequestMethod.PUT)
64
     @ApiOperation(value="成为经纪人", notes = "成为经纪人", httpMethod = "PUT", response = ResponseBean.class)
75
     @ApiOperation(value="成为经纪人", notes = "成为经纪人", httpMethod = "PUT", response = ResponseBean.class)

+ 3
- 0
src/main/java/com/yunzhi/marketing/borker/vo/BorkerSummery.java Bestand weergeven

41
     @TableField(exist = false)
41
     @TableField(exist = false)
42
     @ApiModelProperty("经纪人数")
42
     @ApiModelProperty("经纪人数")
43
     Integer borkerNum;
43
     Integer borkerNum;
44
+
45
+    @ApiModelProperty("总佣金")
46
+    private Integer totalCommission;
44
 }
47
 }

+ 2
- 0
src/main/java/com/yunzhi/marketing/mapper/TaPersonMapper.java Bestand weergeven

278
     IPage<BorkerSummery> getWxBorkerPage(IPage<BorkerSummery> page,
278
     IPage<BorkerSummery> getWxBorkerPage(IPage<BorkerSummery> page,
279
                                          @Param("personType") String personType,
279
                                          @Param("personType") String personType,
280
                                          @Param("recommendAgent") String recommendAgent);
280
                                          @Param("recommendAgent") String recommendAgent);
281
+
282
+    IPage<BorkerSummery> getWxBorkerRankPage(IPage<BorkerSummery> page, @Param("personType") String personBorker, @Param("recommendAgent") String rankType);
281
 }
283
 }

+ 2
- 0
src/main/java/com/yunzhi/marketing/service/ITaPersonService.java Bestand weergeven

136
     IPage<BorkerVO> getBorkerPage(IPage<BorkerVO> page, String name, String phone, String recommendPersonName, String sortOrder, String sortField);
136
     IPage<BorkerVO> getBorkerPage(IPage<BorkerVO> page, String name, String phone, String recommendPersonName, String sortOrder, String sortField);
137
 
137
 
138
     IPage<BorkerSummery> getWxBorkerPage(IPage<BorkerSummery> page, String personId);
138
     IPage<BorkerSummery> getWxBorkerPage(IPage<BorkerSummery> page, String personId);
139
+
140
+    IPage<BorkerSummery> getWxBorkerRankPage(IPage<BorkerSummery> page, String rankType);
139
 }
141
 }

+ 5
- 0
src/main/java/com/yunzhi/marketing/service/impl/TaPersonServiceImpl.java Bestand weergeven

1356
     public IPage<BorkerSummery> getWxBorkerPage(IPage<BorkerSummery> page, String personId) {
1356
     public IPage<BorkerSummery> getWxBorkerPage(IPage<BorkerSummery> page, String personId) {
1357
         return baseMapper.getWxBorkerPage(page, CommConstant.PERSON_BORKER, personId);
1357
         return baseMapper.getWxBorkerPage(page, CommConstant.PERSON_BORKER, personId);
1358
     }
1358
     }
1359
+
1360
+    @Override
1361
+    public IPage<BorkerSummery> getWxBorkerRankPage(IPage<BorkerSummery> page, String rankType) {
1362
+        return baseMapper.getWxBorkerRankPage(page, CommConstant.PERSON_BORKER, rankType);
1363
+    }
1359
 }
1364
 }

+ 40
- 0
src/main/resources/mapper/TaPersonMapper.xml Bestand weergeven

732
         ORDER BY
732
         ORDER BY
733
             t.create_date DESC
733
             t.create_date DESC
734
     </select>
734
     </select>
735
+    <select id="getWxBorkerRankPage" resultType="com.yunzhi.marketing.borker.vo.BorkerSummery">
736
+        SELECT
737
+            t.*,
738
+            s.customer_num,
739
+            m.borker_num
740
+        FROM
741
+            ta_person t
742
+                LEFT JOIN (
743
+                SELECT
744
+                    a.recommend_person,
745
+                    count( 1 ) AS customer_num
746
+                FROM
747
+                    xlk_channel_customer a
748
+                WHERE
749
+                    a.recommend_person_type = #{personType}
750
+                  AND a.`status` = 2
751
+                GROUP BY
752
+                    a.recommend_person
753
+            ) s ON s.recommend_person = t.person_id
754
+                LEFT JOIN (
755
+                SELECT
756
+                    a.recommend_agent,
757
+                    count( 1 ) AS borker_num
758
+                FROM
759
+                    ta_person a
760
+                WHERE
761
+                    a.person_type = #{personType}
762
+                  AND a.`status` > - 1
763
+            ) m ON m.recommend_agent = t.person_id
764
+        WHERE t.person_type = #{personType}
765
+          AND t.`status` &gt; -1
766
+        <if test="rankType == 'person'">
767
+            ORDER BY
768
+            m.borker_num DESC
769
+        </if>
770
+        <if test="rankType == 'money'">
771
+            ORDER BY
772
+            t.total_commission DESC
773
+        </if>
774
+    </select>
735
 
775
 
736
     <insert id="savePersonPosition" parameterType="com.yunzhi.marketing.entity.TaPersonPositon">
776
     <insert id="savePersonPosition" parameterType="com.yunzhi.marketing.entity.TaPersonPositon">
737
         insert into ta_person_position
777
         insert into ta_person_position