fix
Helius
2024-04-09 55b04444be6cb77225babb6554f8554c79b1c4c9
fix
2 files added
11 files modified
394 ■■■■■ changed files
src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java 21 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java 7 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/entity/MallMember.java 4 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/vip/controller/AdminMallVipBenefitsController.java 1 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/vip/entity/MallVipBenefitsRecord.java 38 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/vip/mapper/MallVipBenefitsRecordMapper.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/vip/service/IMallVipBenefitsService.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java 32 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MallMemberMapper.xml 3 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MallVipBenefitsRecordMapper.xml 35 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MallVipConfigMapper.xml 7 ●●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html 29 ●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/modules/mallMember/memberBenefitsList.html 207 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
@@ -9,6 +9,9 @@
import cc.mrbird.febs.mall.service.IAdminMallMemberService;
import cc.mrbird.febs.mall.service.IApiMallMemberService;
import cc.mrbird.febs.mall.vo.*;
import cc.mrbird.febs.vip.entity.MallVipBenefitsRecord;
import cc.mrbird.febs.vip.mapper.MallVipBenefitsRecordMapper;
import cc.mrbird.febs.vip.service.IMallVipBenefitsService;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
@@ -33,6 +36,8 @@
    private final IAdminMallMemberService mallMemberService;
    private final IApiMallMemberService apiMallMemberService;
    private final IMallVipBenefitsService mallVipBenefitsService;
    private final MallVipBenefitsRecordMapper mallVipBenefitsRecordMapper;
    /**
     * 平台账单
@@ -619,4 +624,20 @@
    public FebsResponse addMemberCoupon(@Valid MallMember mallmember) {
        return mallMemberService.addMemberCoupon(mallmember);
    }
    @GetMapping(value = "/findMemberBenefitsInPage")
    public FebsResponse findMemberBenefitsInPage(MallVipBenefitsRecord record, QueryRequest request) {
        Map<String, Object> data = getDataTable(mallVipBenefitsService.findVipBenefitsInPage(record, request));
        return new FebsResponse().success().data(data);
    }
    @PostMapping(value = "/sendGift/{id}")
    public FebsResponse sendGift(@PathVariable("id") Long id) {
        MallVipBenefitsRecord record = new MallVipBenefitsRecord();
        record.setId(id);
        record.setStatus(1);
        mallVipBenefitsRecordMapper.updateById(record);
        return new FebsResponse().success();
    }
}
src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java
@@ -420,4 +420,11 @@
        return FebsUtil.view("modules/mallMember/member-coupon-select");
    }
    @GetMapping("memberBenefitsList")
    @RequiresPermissions("memberBenefitsList:view")
    public String memberBenefitsList() {
        return FebsUtil.view("modules/mallMember/memberBenefitsList");
    }
}
src/main/java/cc/mrbird/febs/mall/entity/MallMember.java
@@ -5,7 +5,9 @@
import cc.mrbird.febs.common.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.util.Date;
@@ -167,6 +169,8 @@
    @TableField(exist = false)
    private Long couponId;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date birthday;
    private String realName;
src/main/java/cc/mrbird/febs/vip/controller/AdminMallVipBenefitsController.java
@@ -62,4 +62,5 @@
        mallVipBenefitsService.switchBenefitsShow(id);
        return new FebsResponse().success().data("设置成功");
    }
}
src/main/java/cc/mrbird/febs/vip/entity/MallVipBenefitsRecord.java
@@ -1,14 +1,28 @@
package cc.mrbird.febs.vip.entity;
import cc.mrbird.febs.common.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
@TableName(value = "mall_vip_benefits_record")
public class MallVipBenefitsRecord extends BaseEntity {
    @TableField(exist = false)
    private String memberName;
    @TableField(exist = false)
    private String memberPhone;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @TableField(exist = false)
    private Date birthday;
    private Long memberId ;
    /** 权益名称 */
@@ -20,9 +34,33 @@
    /** 领取数量 */
    private Integer receiveCnt ;
    /** 领取时间 */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date receiveTime ;
    /** 领取类型;2-商品 3-优惠券 */
    private Integer receiveType ;
    /** 领取ID */
    private Long receiveId ;
    private Integer status;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @TableField(exist = false)
    private Date birthdayStart;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @TableField(exist = false)
    private Date birthdayEnd;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @TableField(exist = false)
    private Date receiveStartTime;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @TableField(exist = false)
    private Date receiveEndTime;
}
src/main/java/cc/mrbird/febs/vip/mapper/MallVipBenefitsRecordMapper.java
@@ -2,6 +2,11 @@
import cc.mrbird.febs.vip.entity.MallVipBenefitsRecord;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
public interface MallVipBenefitsRecordMapper extends BaseMapper<MallVipBenefitsRecord> {
    IPage<MallVipBenefitsRecord> selectMemberBenefitsRecordInPage(@Param("record") MallVipBenefitsRecord record, Page<MallVipBenefitsRecord> page);
}
src/main/java/cc/mrbird/febs/vip/service/IMallVipBenefitsService.java
@@ -1,7 +1,10 @@
package cc.mrbird.febs.vip.service;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.mall.entity.MallMember;
import cc.mrbird.febs.mall.vo.MallDataVo;
import cc.mrbird.febs.vip.entity.MallVipBenefits;
import cc.mrbird.febs.vip.entity.MallVipBenefitsRecord;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
@@ -24,4 +27,6 @@
    void switchBenefitsShow(Long id);
    Map<String, Object> birthdayEvent();
    IPage<MallVipBenefitsRecord> findVipBenefitsInPage(MallVipBenefitsRecord record, QueryRequest request);
}
src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java
@@ -314,8 +314,40 @@
            return new HashMap<>();
        }
        List<String> ids = new ArrayList<>();
        benefits.forEach(item -> {
            ids.addAll(item.getDetails().stream().filter(detail -> detail.getLinkType() == 2 || detail.getLinkType() == 3).map(MallVipBenefitsDetails::getContent).collect(Collectors.toList()));
        });
        LambdaQueryWrapper<MallVipBenefitsRecord> recordQuery = new LambdaQueryWrapper<>();
        recordQuery.eq(MallVipBenefitsRecord::getReceiveId, ids)
                .ge(MallVipBenefitsRecord::getReceiveTime, DateUtil.beginOfDay(new Date()))
                .le(MallVipBenefitsRecord::getReceiveTime, DateUtil.endOfDay(new Date()));
        List<MallVipBenefitsRecord> hasRecieveList = mallVipBenefitsRecordMapper.selectList(recordQuery);
        Map<String, Object> map = new HashMap<>();
        if (CollUtil.isEmpty(hasRecieveList)) {
        map.put("benefit", benefits.get(0));
        return map;
    }
        List<Long> hasIds = hasRecieveList.stream().map(MallVipBenefitsRecord::getReceiveId).collect(Collectors.toList());
        List<MallVipBenefits> collect1 = benefits.stream().peek(item -> {
            List<MallVipBenefitsDetails> collect = item.getDetails().stream().filter(detail -> hasIds.contains(Long.parseLong(detail.getContent()))).collect(Collectors.toList());
            item.setDetails(collect);
        }).filter(item -> CollUtil.isNotEmpty(item.getDetails())).collect(Collectors.toList());
        if (CollUtil.isEmpty(collect1)) {
            return map;
        }
        map.put("benefit", collect1.get(0));
        return map;
    }
    @Override
    public IPage<MallVipBenefitsRecord> findVipBenefitsInPage(MallVipBenefitsRecord record, QueryRequest request) {
        Page<MallVipBenefitsRecord> page = new Page<>(request.getPageNum(), request.getPageSize());
        return mallVipBenefitsRecordMapper.selectMemberBenefitsRecordInPage(record, page);
    }
}
src/main/resources/mapper/modules/MallMemberMapper.xml
@@ -11,6 +11,9 @@
        left join mall_vip_config vipConfig on m.level = vipConfig.code
        <where>
            <if test="record != null" >
                <if test="record.birthday!=null">
                    and m.birthday = #{record.birthday}
                </if>
                <if test="record.name!=null and record.name!=''">
                    and m.name like concat('%',  #{record.name},'%')
                </if>
src/main/resources/mapper/modules/MallVipBenefitsRecordMapper.xml
New file
@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cc.mrbird.febs.vip.mapper.MallVipBenefitsRecordMapper">
    <select id="selectMemberBenefitsRecordInPage" resultType="cc.mrbird.febs.vip.entity.MallVipBenefitsRecord">
        select
            mallMember.name memberName
            ,mallMember.phone memberPhone
            ,record.*
        from mall_vip_benefits_record record
            inner join mall_member mallMember on record.member_id = mallMember.ID
        <where>
            1=1
            <if test="record.memberPhone != null and record.memberPhone != ''">
                and mallMember.phone = #{record.memberPhone}
            </if>
            <if test="record.status != null">
                and record.status = #{record.status}
            </if>
            <if test="record.birthdayStart != null">
                and date_format(mallMember.birthday, '%Y-%m-%d') >= date_format(#{record.birthdayStart}, '%Y-%m-%d')
            </if>
            <if test="record.birthdayEnd != null">
                and date_format(mallMember.birthday, '%Y-%m-%d') &lt;= date_format(#{record.birthdayEnd}, '%Y-%m-%d')
            </if>
            <if test="record.receiveStartTime != null">
                and date_format(mallMember.receiveTime, '%Y-%m-%d') >= date_format(#{record.receiveStartTime}, '%Y-%m-%d')
            </if>
            <if test="record.receiveEndTime != null">
                and date_format(mallMember.receiveTime, '%Y-%m-%d') &lt;= date_format(#{record.receiveEndTime}, '%Y-%m-%d')
            </if>
        </where>
    </select>
</mapper>
src/main/resources/mapper/modules/MallVipConfigMapper.xml
@@ -26,6 +26,9 @@
            <collection property="details" ofType="cc.mrbird.febs.vip.entity.MallVipBenefitsDetails">
                <id property="id" column="d_id" />
                <id property="content" column="d_content" />
                <id property="linkType" column="d_link_type" />
                <id property="isClick" column="d_is_click" />
            </collection>
        </collection>
    </resultMap>
@@ -58,6 +61,10 @@
             ,benefits.score_multiple
             ,benefits.gain_type
             ,benefits.type c_type
             ,details.id d_id
             ,details.content d_content
             ,details.link_type d_link_type
             ,details.is_click d_is_click
        from mall_vip_config config
                 inner join mall_vip_config_benefits configBenefits on config.id=configBenefits.config_id
                 inner join mall_vip_benefits benefits on configBenefits.benefits_id=benefits.id
src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html
@@ -29,19 +29,13 @@
                                            </select>
                                        </div>
                                    </div>
<!--                                    <div class="layui-inline">-->
<!--                                        <label class="layui-form-label layui-form-label-sm">会员类型</label>-->
<!--                                        <div class="layui-input-inline">-->
<!--                                            <select name="level">-->
<!--                                                <option value="">请选择</option>-->
<!--                                                <option value="FIRST_LEVEL">普通会员</option>-->
<!--                                                <option value="SECOND_LEVEL">一星</option>-->
<!--                                                <option value="THIRD_LEVEL">二星</option>-->
<!--                                                <option value="FOUR_LEVEL">三星</option>-->
<!--                                                <option value="FIFTH_LEVEL">四星</option>-->
<!--                                            </select>-->
<!--                                        </div>-->
<!--                                    </div>-->
                                    <div class="layui-inline">
                                        <label class="layui-form-label layui-form-label-sm">会员生日</label>
                                        <div class="layui-input-inline">
                                            <input type="text" name="birthday" id="febs-member-benefits-list-birthday-start" lay-verify="date"
                                                   placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input">
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div class="layui-col-md2 layui-col-sm12 layui-col-xs12 table-action-area">
@@ -118,7 +112,7 @@
<!-- 表格操作栏 end -->
<script data-th-inline="none" type="text/javascript">
    // 引入组件并初始化
    layui.use([ 'jquery', 'form', 'table', 'febs'], function () {
    layui.use([ 'jquery', 'form', 'table', 'febs', 'laydate'], function () {
        var $ = layui.jquery,
            febs = layui.febs,
            form = layui.form,
@@ -128,9 +122,14 @@
            $reset = $view.find('#reset'),
            $searchForm = $view.find('form'),
            sortObject = {field: 'phone', type: null},
            laydate = layui.laydate,
            tableIns;
        form.render();
        laydate.render({
            elem: '#febs-member-benefits-list-birthday-start'
        });
        // 表格初始化
        initTable();
@@ -286,6 +285,7 @@
                    {type: 'checkbox'},
                    {field: 'phone', title: '手机号码', minWidth: 150,align:'left'},
                    {field: 'name', title: '用户昵称', minWidth: 100,align:'left'},
                    {field: 'birthday', title: '会员生日', minWidth: 100,align:'left'},
                    {field: 'inviteId', title: '邀请码', minWidth: 100,align:'left'},
                    {field: 'balance', title: '余额', minWidth: 100,align:'left'},
                    // {field: 'score', title: '赠送积分', minWidth: 100,align:'left'},
@@ -477,6 +477,7 @@
                name: $searchForm.find('input[name="name"]').val().trim(),
                account: $searchForm.find('input[name="account"]').val().trim(),
                level: $searchForm.find("select[name='level']").val(),
                birthday: $searchForm.find("input[name='birthday']").val(),
                // level: $searchForm.find("select[name='level']").val(),
            };
        }
src/main/resources/templates/febs/views/modules/mallMember/memberBenefitsList.html
New file
@@ -0,0 +1,207 @@
<div class="layui-fluid layui-anim febs-anim" id="febs-member-benefits-list" lay-title="权益领取列表">
    <div class="layui-row febs-container">
        <div class="layui-col-md12">
            <div class="layui-card">
                <div class="layui-card-body febs-table-full">
                    <form class="layui-form layui-table-form" lay-filter="user-table-form">
                        <div class="layui-row">
                            <div class="layui-col-md10">
                                <div class="layui-form-item">
<!--                                    <div class="layui-inline">-->
<!--                                        <label class="layui-form-label layui-form-label-sm">用户昵称</label>-->
<!--                                        <div class="layui-input-inline">-->
<!--                                            <input type="text" placeholder="用户昵称" name="memberName" autocomplete="off" class="layui-input">-->
<!--                                        </div>-->
<!--                                    </div>-->
                                    <div class="layui-inline">
                                        <label class="layui-form-label layui-form-label-sm">手机号码</label>
                                        <div class="layui-input-inline">
                                            <input type="text" placeholder="手机号码" name="memberPhone" autocomplete="off" class="layui-input">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label layui-form-label-sm">是否赠送</label>
                                        <div class="layui-input-inline">
                                            <select name="status">
                                                <option value="">请选择</option>
                                                <option value="1">已赠送</option>
                                                <option value="2">未赠送</option>
                                            </select>
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label layui-form-label-sm">会员生日</label>
                                        <div class="layui-input-inline">
                                            <input type="text" name="birthdayStart" id="febs-member-benefits-list-birthday-start" lay-verify="date"
                                                   placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input">
                                        </div>
                                        <div class="layui-input-inline">
                                            <input type="text" name="birthdayEnd" id="febs-member-benefits-list-birthday-end" lay-verify="date"
                                                   placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label layui-form-label-sm">领取时间</label>
                                        <div class="layui-input-inline">
                                            <input type="text" name="receiveStartTime" id="febs-member-benefits-list-start" lay-verify="date"
                                                   placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input">
                                        </div>
                                        <div class="layui-input-inline">
                                            <input type="text" name="receiveEndTime" id="febs-member-benefits-list-end" lay-verify="date"
                                                   placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input">
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div class="layui-col-md2 layui-col-sm12 layui-col-xs12 table-action-area">
                                <div class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain table-action" id="query">
                                    <i class="layui-icon">&#xe848;</i>
                                </div>
                                <div class="layui-btn layui-btn-sm layui-btn-primary febs-button-green-plain table-action" id="reset">
                                    <i class="layui-icon">&#xe79b;</i>
                                </div>
                            </div>
                        </div>
                    </form>
                    <table lay-filter="memberBenefitsTable" lay-data="{id: 'memberBenefitsTable'}"></table>
                </div>
            </div>
        </div>
    </div>
</div>
<!-- 表格操作栏 end -->
<script data-th-inline="none" type="text/javascript">
    // 引入组件并初始化
    layui.use([ 'jquery', 'form', 'table', 'febs','laydate'], function () {
        var $ = layui.jquery,
            febs = layui.febs,
            form = layui.form,
            table = layui.table,
            $view = $('#febs-member-benefits-list'),
            $query = $view.find('#query'),
            $reset = $view.find('#reset'),
            $searchForm = $view.find('form'),
            sortObject = {field: '', type: null},
            laydate = layui.laydate,
            tableIns;
        //日期范围
        laydate.render({
            elem: '#febs-member-benefits-list-start'
        });
        laydate.render({
            elem: '#febs-member-benefits-list-end'
        });
        laydate.render({
            elem: '#febs-member-benefits-list-birthday-start'
        });
        laydate.render({
            elem: '#febs-member-benefits-list-birthday-end'
        });
        form.render();
        // 表格初始化
        initTable();
        // 初始化表格操作栏各个按钮功能
        table.on('tool(memberBenefitsTable)', function (obj) {
            var data = obj.data,
                layEvent = obj.event;
            if (layEvent === 'sendGift') {
                febs.post(ctx + 'admin/mallMember/sendGift/' + data.id, null, function () {
                    febs.alert.success('操作成功');
                    $query.click();
                });
            }
        });
        // 查询按钮
        $query.on('click', function () {
            var params = $.extend(getQueryParams(), {field: sortObject.field, order: sortObject.type});
            tableIns.reload({where: params, page: {curr: 1}});
        });
        // 刷新按钮
        $reset.on('click', function () {
            $searchForm[0].reset();
            sortObject.type = 'null';
            tableIns.reload({where: getQueryParams(), page: {curr: 1}, initSort: sortObject});
        });
        function initTable() {
            tableIns = febs.table.init({
                elem: $view.find('table'),
                id: 'memberBenefitsTable',
                url: ctx + 'admin/mallMember/findMemberBenefitsInPage',
                totalRow : true,
                cols: [[
                    {field: 'memberName', title: '会员名称', minWidth: 100,align:'left'},
                    {field: 'memberPhone', title: '手机号码', minWidth: 150,align:'left'},
                    {field: 'benefitsName', title: '权益', minWidth: 150,align:'left'},
                    {field: 'benefitsType', title: '权益类型',
                        templet: function (d) {
                            if (d.benefitsType === 1) {
                                return '<span>会员日</span>'
                            } else if (d.benefitsType === 2) {
                                return '<span>生日</span>'
                            } else {
                                return '<span>其他</span>'
                            }
                        }, minWidth: 80,align:'center'},
                    {field: 'receiveName', title: '领取名称', minWidth: 150,align:'left'},
                    {field: 'receiveCnt', title: '领取数量', minWidth: 50,align:'left'},
                    {field: 'receiveTime', title: '领取时间', minWidth: 200,align:'left'},
                    {field: 'receiveType', title: '领取类型',
                        templet: function (d) {
                            if (d.receiveType === 2) {
                                return '商品';
                            } else if(d.receiveType === 3) {
                                return '优惠券'
                            } else {
                                return '-';
                            }
                        }, minWidth: 80,align:'center'},
                    {field: 'receiveType', title: '赠送状态',
                        templet: function (d) {
                            if (d.status === 1) {
                                return '已赠送';
                            } else if(d.status === 2) {
                                return '未赠送'
                            } else {
                                return '-';
                            }
                        }, minWidth: 80,align:'center'},
                    {title: '操作',
                        templet: function (d) {
                            if (d.receiveType == 2 && d.status == 2) {
                                return  ''
                                    +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="sendGift">赠送</button>'
                            } else {
                                return ''
                            }
                        },minWidth: 100,align:'center'}
                ]]
            });
        }
        // 获取查询参数
        function getQueryParams() {
            return {
                receiveStartTime: $searchForm.find('input[name="receiveStartTime"]').val().trim(),
                receiveEndTime: $searchForm.find('input[name="receiveEndTime"]').val().trim(),
                birthdayStart: $searchForm.find('input[name="birthdayStart"]').val().trim(),
                birthdayEnd: $searchForm.find('input[name="birthdayEnd"]').val().trim(),
                // memberName: $searchForm.find('input[name="memberName"]').val().trim(),
                memberPhone: $searchForm.find('input[name="memberPhone"]').val().trim(),
                status: $searchForm.find("select[name='status']").val(),
            };
        }
    })
</script>