From 0a12bc6ec7148ae33596e9de142027ec379c7835 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Tue, 09 Apr 2024 10:11:50 +0800 Subject: [PATCH] Merge branch 'blnka' into blnka-vip --- src/main/java/cc/mrbird/febs/vip/service/IMallVipBenefitsService.java | 5 src/main/resources/mapper/modules/MallVipBenefitsRecordMapper.xml | 35 +++++ src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java | 21 +++ src/main/resources/mapper/modules/MallMemberMapper.xml | 3 src/main/java/cc/mrbird/febs/vip/mapper/MallVipBenefitsRecordMapper.java | 5 src/main/resources/templates/febs/views/modules/mallMember/memberBenefitsList.html | 207 +++++++++++++++++++++++++++++ src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html | 29 ++-- src/main/java/cc/mrbird/febs/mall/entity/MallMember.java | 4 src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java | 7 + src/main/java/cc/mrbird/febs/vip/controller/AdminMallVipBenefitsController.java | 1 src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java | 34 ++++ src/main/resources/mapper/modules/MallVipConfigMapper.xml | 7 + src/main/java/cc/mrbird/febs/vip/entity/MallVipBenefitsRecord.java | 38 +++++ 13 files changed, 381 insertions(+), 15 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java index 3bf4415..86be4d2 100644 --- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java +++ b/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(); + } } diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java index da1829f..156b641 100644 --- a/src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java +++ b/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"); + } + } diff --git a/src/main/java/cc/mrbird/febs/mall/entity/MallMember.java b/src/main/java/cc/mrbird/febs/mall/entity/MallMember.java index f23b060..3a9cb20 100644 --- a/src/main/java/cc/mrbird/febs/mall/entity/MallMember.java +++ b/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; diff --git a/src/main/java/cc/mrbird/febs/vip/controller/AdminMallVipBenefitsController.java b/src/main/java/cc/mrbird/febs/vip/controller/AdminMallVipBenefitsController.java index c4fa3ad..6e4c92e 100644 --- a/src/main/java/cc/mrbird/febs/vip/controller/AdminMallVipBenefitsController.java +++ b/src/main/java/cc/mrbird/febs/vip/controller/AdminMallVipBenefitsController.java @@ -62,4 +62,5 @@ mallVipBenefitsService.switchBenefitsShow(id); return new FebsResponse().success().data("设置成功"); } + } diff --git a/src/main/java/cc/mrbird/febs/vip/entity/MallVipBenefitsRecord.java b/src/main/java/cc/mrbird/febs/vip/entity/MallVipBenefitsRecord.java index 7f3f1ff..8543b94 100644 --- a/src/main/java/cc/mrbird/febs/vip/entity/MallVipBenefitsRecord.java +++ b/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; } diff --git a/src/main/java/cc/mrbird/febs/vip/mapper/MallVipBenefitsRecordMapper.java b/src/main/java/cc/mrbird/febs/vip/mapper/MallVipBenefitsRecordMapper.java index 149aea4..9d99130 100644 --- a/src/main/java/cc/mrbird/febs/vip/mapper/MallVipBenefitsRecordMapper.java +++ b/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); } diff --git a/src/main/java/cc/mrbird/febs/vip/service/IMallVipBenefitsService.java b/src/main/java/cc/mrbird/febs/vip/service/IMallVipBenefitsService.java index 764ea68..38123c4 100644 --- a/src/main/java/cc/mrbird/febs/vip/service/IMallVipBenefitsService.java +++ b/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); } diff --git a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java b/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java index 60447a8..d4b1453 100644 --- a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java +++ b/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<>(); - map.put("benefit", benefits.get(0)); + 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); + } } diff --git a/src/main/resources/mapper/modules/MallMemberMapper.xml b/src/main/resources/mapper/modules/MallMemberMapper.xml index 37a2332..91ea9a7 100644 --- a/src/main/resources/mapper/modules/MallMemberMapper.xml +++ b/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> diff --git a/src/main/resources/mapper/modules/MallVipBenefitsRecordMapper.xml b/src/main/resources/mapper/modules/MallVipBenefitsRecordMapper.xml new file mode 100644 index 0000000..da01bcf --- /dev/null +++ b/src/main/resources/mapper/modules/MallVipBenefitsRecordMapper.xml @@ -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') <= 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') <= date_format(#{record.receiveEndTime}, '%Y-%m-%d') + </if> + </where> + </select> + +</mapper> \ No newline at end of file diff --git a/src/main/resources/mapper/modules/MallVipConfigMapper.xml b/src/main/resources/mapper/modules/MallVipConfigMapper.xml index 6d9609d..a5a4069 100644 --- a/src/main/resources/mapper/modules/MallVipConfigMapper.xml +++ b/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 diff --git a/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html b/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html index f2b2154..2c07876 100644 --- a/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html +++ b/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(), }; } diff --git a/src/main/resources/templates/febs/views/modules/mallMember/memberBenefitsList.html b/src/main/resources/templates/febs/views/modules/mallMember/memberBenefitsList.html new file mode 100644 index 0000000..41b5ab6 --- /dev/null +++ b/src/main/resources/templates/febs/views/modules/mallMember/memberBenefitsList.html @@ -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"></i> + </div> + <div class="layui-btn layui-btn-sm layui-btn-primary febs-button-green-plain table-action" id="reset"> + <i class="layui-icon"></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> \ No newline at end of file -- Gitblit v1.9.1