fix
Hentua
2023-06-15 1d0d712b4f2b489e020cbf23eaf20e386eee1561
fix
6 files modified
36 ■■■■ changed files
src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/entity/MallMember.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/vo/AdminTeamListVo.java 2 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MallMemberMapper.xml 8 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MallMoneyFlowMapper.xml 2 ●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/modules/mallMember/teamList.html 17 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java
@@ -384,9 +384,10 @@
        return FebsUtil.view("modules/mallMember/teamList");
    }
    @GetMapping("teamList/{inviteId}")
    public String teamListByInviteId(@PathVariable String inviteId, Model model) {
    @GetMapping("teamList/{type}/{inviteId}")
    public String teamListByInviteId(@PathVariable(value = "inviteId") String inviteId, @PathVariable("type") Integer type, Model model) {
        model.addAttribute("refererId", inviteId);
        model.addAttribute("type", type);
        return FebsUtil.view("modules/mallMember/teamList");
    }
src/main/java/cc/mrbird/febs/mall/entity/MallMember.java
@@ -183,4 +183,6 @@
        return null;
    }
    private Integer type;
}
src/main/java/cc/mrbird/febs/mall/vo/AdminTeamListVo.java
@@ -17,6 +17,8 @@
    private Integer directCnt;
    private Integer teamCnt;
    private BigDecimal teamOrderAmount;
    private BigDecimal teamProfitAmount;
src/main/resources/mapper/modules/MallMemberMapper.xml
@@ -515,7 +515,8 @@
             ,memberInfo.phone
            ,memberInfo.name
            ,memberInfo.invite_id inviteId
             ,(select count(1) from mall_member a where a.referrer_id=memberInfo.invite_id) directCnt
            ,(select count(1) from mall_member a where a.referrer_id=memberInfo.invite_id) directCnt
            ,(select count(1) from mall_member a where find_in_set(memberInfo.invite_id, a.referrer_ids)) teamCnt
             ,ifnull(sum(orderInfo.amount), 0) teamOrderAmount
             ,ifnull((select sum(b.amount) from mall_money_flow b where memberInfo.id=b.member_id and  b.flow_type = 1 and b.type in (1,2,3,4,5,7)),0) selfProfitAmount
        from mall_member memberInfo
@@ -527,9 +528,12 @@
                <if test="record.query != null and record.query != ''">
                    and (memberInfo.invite_id=#{record.query} or memberInfo.phone=#{record.query} or instr(memberInfo.name, #{record.query}))
                </if>
                <if test="record.referrerId != null and record.referrerId != ''">
                <if test="record.referrerId != null and record.referrerId != '' and record.type == 1">
                    and memberInfo.referrer_id = #{record.referrerId}
                </if>
                <if test="record.referrerId != null and record.referrerId != '' and record.type == 2">
                    and find_in_set(#{record.referrerId}, memberInfo.referrer_ids)
                </if>
            </if>
        </where>
        group by memberInfo.id
src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
@@ -69,7 +69,7 @@
                    and a.flow_type like concat('%',  #{record.flowType},'%')
                </if>
                <if test="record.referrerId!=null and record.referrerId!=''">
                    and b.referrer_id = #{record.referrerId}
                    and find_in_set(#{record.referrerId}, b.referrer_ids)
                </if>
                <if test="record.inviteId!=null and record.inviteId!=''">
                    and b.invite_id = #{record.inviteId}
src/main/resources/templates/febs/views/modules/mallMember/teamList.html
@@ -18,6 +18,12 @@
                                            <input type="text" placeholder="" name="refererId" autocomplete="off" data-th-value="${refererId}" class="layui-input">
                                        </div>
                                    </div>
                                    <div class="layui-inline febs-hide">
                                        <label class="layui-form-label">上级邀请码:</label>
                                        <div class="layui-input-inline">
                                            <input type="text" placeholder="" name="type" autocomplete="off" data-th-value="${type}" class="layui-input">
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div class="layui-col-md2 layui-col-sm12 layui-col-xs12 table-action-area">
@@ -46,7 +52,10 @@
</script>
<script type="text/html" id="directCntTemplate">
    <a lay-href="/modules/mallMember/teamList/{{d.inviteId}}" target="_blank">{{d.directCnt}}</a>
    <a lay-href="/modules/mallMember/teamList/1/{{d.inviteId}}" target="_blank">{{d.directCnt}}</a>
</script>
<script type="text/html" id="teamCntTemplate">
    <a lay-href="/modules/mallMember/teamList/2/{{d.inviteId}}" target="_blank">{{d.teamCnt}}</a>
</script>
<script type="text/html" id="teamMoneyFlow">
    <a lay-href="/modules/mallMember/moneyFlowList?refererId={{d.inviteId}}" target="_blank">{{d.teamProfitAmount}}</a>
@@ -106,15 +115,17 @@
        });
        function initTable() {
            var type = $searchForm.find('input[name="type"]').val().trim(),
            tableIns = febs.table.init({
                elem: $view.find('table'),
                id: 'teamListTable',
                url: ctx + 'admin/mallMember/teamList?referrerId=' + refererId,
                url: ctx + 'admin/mallMember/teamList?referrerId=' + refererId + "&type=" + type,
                where : getQueryParams,
                cols: [[
                    {field: 'name', title: '会员名称', minWidth: 100},
                    {field: 'phone', title: '会员账号', minWidth: 100},
                    {field: 'directCnt', title: '直推数量', templet:"#directCntTemplate", minWidth: 100},
                    {field: 'directCnt', title: '直推人数', templet:"#directCntTemplate", minWidth: 100},
                    {field: 'teamCnt', title: '团队人数', templet:"#teamCntTemplate", minWidth: 100},
                    {field: 'selfProfitAmount', title: '会员收益', templet:"#selfMoneyFlow", minWidth: 100},
                    {field: 'teamOrderAmount', title: '团队订单金额', minWidth: 100},
                    {field: 'teamProfitAmount', title: '团队收益', templet:"#teamMoneyFlow", minWidth: 100},