xiaoyong931011
2020-07-19 56c23e675277b127cf4a2d014434ddbcba75e827
20200719  代码提交
1 files added
6 files modified
559 ■■■■■ changed files
src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java 398 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/controller/ViewController.java 10 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/mapper/MemberCoinChargeMapper.java 3 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/service/IMemberService.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java 9 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MemberCoinChargeMapper.xml 16 ●●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/modules/member/applyCoinAlone.html 121 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java
@@ -1,195 +1,203 @@
package com.xcong.excoin.modules.member.controller;
import com.xcong.excoin.common.annotation.ControllerEndpoint;
import com.xcong.excoin.common.controller.BaseController;
import com.xcong.excoin.common.entity.FebsResponse;
import com.xcong.excoin.common.entity.QueryRequest;
import com.xcong.excoin.modules.member.dto.MemberDetailConfirmDto;
import com.xcong.excoin.modules.member.entity.AgentFriendRelationEntity;
import com.xcong.excoin.modules.member.entity.MemberCoinChargeEntity;
import com.xcong.excoin.modules.member.entity.MemberCoinWithdrawEntity;
import com.xcong.excoin.modules.member.entity.MemberEntity;
import com.xcong.excoin.modules.member.entity.MemberQuickBuySaleEntity;
import com.xcong.excoin.modules.member.service.IMemberService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
/**
 * @author wzy
 * @date 2020-06-10
 **/
@Slf4j
@Validated
@RestController
@RequiredArgsConstructor
@RequestMapping(value = "/member")
public class MemberController extends BaseController {
    private final IMemberService memberService;
    /**
     *会员列表---拨币
     * @return
     */
    @PostMapping("addCoinConfirm")
    @ControllerEndpoint(operation = "交易设置---确认", exceptionMessage = "设置失败")
    public FebsResponse addCoinConfirm(@Valid MemberEntity memberEntity) {
        return memberService.addCoinConfirm(memberEntity);
    }
    /**
     * 代理关系---列表
     * @return
     */
    @GetMapping("agentInfoList")
    public FebsResponse agentInfoList(AgentFriendRelationEntity agentFriendRelationEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findAgentInfoListInPage(agentFriendRelationEntity, request));
        return new FebsResponse().success().data(data);
    }
    @GetMapping("getList")
    public FebsResponse getList(MemberEntity member, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findMemberListInPage(member, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 实名认证---确认
     * @return
     */
    @PostMapping("memberDetailConfirm")
    @ControllerEndpoint(operation = "实名认证---确认", exceptionMessage = "认证失败")
    public FebsResponse memberDetailConfirm(@Valid MemberDetailConfirmDto memberDetailConfirmDto) {
        return memberService.memberDetailConfirm(memberDetailConfirmDto);
    }
    /**
     * 会员USDT充值---列表
     */
    @GetMapping("memberChargeUsdt")
    public FebsResponse memberChargeUsdt(MemberQuickBuySaleEntity memberQuickBuySaleEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findmemberQuickBuySaleListInPage(memberQuickBuySaleEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 会员USDT充值---确认
     * @return
     */
    @GetMapping("memberChargeUsdtConfirm/{id}")
    @ControllerEndpoint(operation = "会员USDT充值---确认", exceptionMessage = "划转失败")
    public FebsResponse memberChargeUsdtConfirm(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberChargeUsdtConfirm(id);
    }
    /**
     * 会员USDT充值---取消
     * @return
     */
    @GetMapping("memberChargeUsdtCancel/{id}")
    @ControllerEndpoint(operation = "会员USDT充值---取消", exceptionMessage = "取消失败")
    public FebsResponse memberChargeUsdtCancel(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberChargeUsdtCancel(id);
    }
    /**
     * 会员USDT提现---列表
     */
    @GetMapping("memberExtractUsdt")
    public FebsResponse memberExtractUsdt(MemberQuickBuySaleEntity memberQuickBuySaleEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findmemberQuickSaleListInPage(memberQuickBuySaleEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 会员USDT提现---确认
     * @return
     */
    @GetMapping("memberExtractUsdtConfirm/{id}")
    @ControllerEndpoint(operation = "会员USDT提现---确认", exceptionMessage = "划转失败")
    public FebsResponse memberExtractUsdtConfirm(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberExtractUsdtConfirm(id);
    }
    /**
     * 会员USDT提现---取消
     * @return
     */
    @GetMapping("memberExtractUsdtCancel/{id}")
    @ControllerEndpoint(operation = "会员USDT提现---取消", exceptionMessage = "取消失败")
    public FebsResponse memberExtractUsdtCancel(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberExtractUsdtCancel(id);
    }
    /**
     * 充币记录---列表
     */
    @GetMapping("memberApplyCoin")
    public FebsResponse memberApplyCoin(MemberCoinChargeEntity memberCoinChargeEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findMemberApplyCoinListInPage(memberCoinChargeEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 提币记录---列表
     */
    @GetMapping("memberWithdrawCoin")
    public FebsResponse memberWithdrawCoin(MemberCoinWithdrawEntity memberCoinWithdrawEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findmemberWithdrawCoinListInPage(memberCoinWithdrawEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 提币记录---确认
     * @return
     */
    @GetMapping("memberWithdrawCoinConfirm/{id}")
    @ControllerEndpoint(operation = "提币记录---确认", exceptionMessage = "划转失败")
    public FebsResponse memberWithdrawCoinConfirm(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberWithdrawCoinConfirm(id);
    }
    /**
     * 提币记录---取消
     * @return
     */
    @GetMapping("memberWithdrawCoinCancel/{id}")
    @ControllerEndpoint(operation = "提币记录---取消", exceptionMessage = "取消失败")
    public FebsResponse memberWithdrawCoinCancel(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberWithdrawCoinCancel(id);
    }
    /**
     * 平台详细信息---列表
     */
    @GetMapping("memberDataInfo")
    public FebsResponse memberDataInfo(MemberEntity memberEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findMemberDataInfoDtoListInPage(memberEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 用户详细信息---列表
     * @return
     */
    @GetMapping("memberDataInfoList")
    @ControllerEndpoint(operation = "用户详细信息---充币记录", exceptionMessage = "取消失败")
    public FebsResponse memberDataInfoList(MemberCoinChargeEntity memberCoinChargeEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findMemberApplyCoinListInPage(memberCoinChargeEntity, request));
        return new FebsResponse().success().data(data);
    }
}
package com.xcong.excoin.modules.member.controller;
import com.xcong.excoin.common.annotation.ControllerEndpoint;
import com.xcong.excoin.common.controller.BaseController;
import com.xcong.excoin.common.entity.FebsResponse;
import com.xcong.excoin.common.entity.QueryRequest;
import com.xcong.excoin.modules.member.dto.MemberDetailConfirmDto;
import com.xcong.excoin.modules.member.entity.AgentFriendRelationEntity;
import com.xcong.excoin.modules.member.entity.MemberCoinChargeEntity;
import com.xcong.excoin.modules.member.entity.MemberCoinWithdrawEntity;
import com.xcong.excoin.modules.member.entity.MemberEntity;
import com.xcong.excoin.modules.member.entity.MemberQuickBuySaleEntity;
import com.xcong.excoin.modules.member.service.IMemberService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
/**
 * @author wzy
 * @date 2020-06-10
 **/
@Slf4j
@Validated
@RestController
@RequiredArgsConstructor
@RequestMapping(value = "/member")
public class MemberController extends BaseController {
    private final IMemberService memberService;
    /**
     *会员列表---拨币
     * @return
     */
    @PostMapping("addCoinConfirm")
    @ControllerEndpoint(operation = "交易设置---确认", exceptionMessage = "设置失败")
    public FebsResponse addCoinConfirm(@Valid MemberEntity memberEntity) {
        return memberService.addCoinConfirm(memberEntity);
    }
    /**
     * 代理关系---列表
     * @return
     */
    @GetMapping("agentInfoList")
    public FebsResponse agentInfoList(AgentFriendRelationEntity agentFriendRelationEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findAgentInfoListInPage(agentFriendRelationEntity, request));
        return new FebsResponse().success().data(data);
    }
    @GetMapping("getList")
    public FebsResponse getList(MemberEntity member, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findMemberListInPage(member, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 实名认证---确认
     * @return
     */
    @PostMapping("memberDetailConfirm")
    @ControllerEndpoint(operation = "实名认证---确认", exceptionMessage = "认证失败")
    public FebsResponse memberDetailConfirm(@Valid MemberDetailConfirmDto memberDetailConfirmDto) {
        return memberService.memberDetailConfirm(memberDetailConfirmDto);
    }
    /**
     * 会员USDT充值---列表
     */
    @GetMapping("memberChargeUsdt")
    public FebsResponse memberChargeUsdt(MemberQuickBuySaleEntity memberQuickBuySaleEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findmemberQuickBuySaleListInPage(memberQuickBuySaleEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 会员USDT充值---确认
     * @return
     */
    @GetMapping("memberChargeUsdtConfirm/{id}")
    @ControllerEndpoint(operation = "会员USDT充值---确认", exceptionMessage = "划转失败")
    public FebsResponse memberChargeUsdtConfirm(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberChargeUsdtConfirm(id);
    }
    /**
     * 会员USDT充值---取消
     * @return
     */
    @GetMapping("memberChargeUsdtCancel/{id}")
    @ControllerEndpoint(operation = "会员USDT充值---取消", exceptionMessage = "取消失败")
    public FebsResponse memberChargeUsdtCancel(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberChargeUsdtCancel(id);
    }
    /**
     * 会员USDT提现---列表
     */
    @GetMapping("memberExtractUsdt")
    public FebsResponse memberExtractUsdt(MemberQuickBuySaleEntity memberQuickBuySaleEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findmemberQuickSaleListInPage(memberQuickBuySaleEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 会员USDT提现---确认
     * @return
     */
    @GetMapping("memberExtractUsdtConfirm/{id}")
    @ControllerEndpoint(operation = "会员USDT提现---确认", exceptionMessage = "划转失败")
    public FebsResponse memberExtractUsdtConfirm(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberExtractUsdtConfirm(id);
    }
    /**
     * 会员USDT提现---取消
     * @return
     */
    @GetMapping("memberExtractUsdtCancel/{id}")
    @ControllerEndpoint(operation = "会员USDT提现---取消", exceptionMessage = "取消失败")
    public FebsResponse memberExtractUsdtCancel(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberExtractUsdtCancel(id);
    }
    /**
     * 充币记录---列表
     */
    @GetMapping("memberApplyCoin")
    public FebsResponse memberApplyCoin(MemberCoinChargeEntity memberCoinChargeEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findMemberApplyCoinListInPage(memberCoinChargeEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 充币记录---列表alone
     */
    @GetMapping("memberApplyCoinAlone")
    public FebsResponse memberApplyCoinAlone(MemberCoinChargeEntity memberCoinChargeEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findmemberApplyCoinAloneInPage(memberCoinChargeEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 提币记录---列表
     */
    @GetMapping("memberWithdrawCoin")
    public FebsResponse memberWithdrawCoin(MemberCoinWithdrawEntity memberCoinWithdrawEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findmemberWithdrawCoinListInPage(memberCoinWithdrawEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 提币记录---确认
     * @return
     */
    @GetMapping("memberWithdrawCoinConfirm/{id}")
    @ControllerEndpoint(operation = "提币记录---确认", exceptionMessage = "划转失败")
    public FebsResponse memberWithdrawCoinConfirm(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberWithdrawCoinConfirm(id);
    }
    /**
     * 提币记录---取消
     * @return
     */
    @GetMapping("memberWithdrawCoinCancel/{id}")
    @ControllerEndpoint(operation = "提币记录---取消", exceptionMessage = "取消失败")
    public FebsResponse memberWithdrawCoinCancel(@NotNull(message = "{required}") @PathVariable Long id) {
        return memberService.memberWithdrawCoinCancel(id);
    }
    /**
     * 平台详细信息---列表
     */
    @GetMapping("memberDataInfo")
    public FebsResponse memberDataInfo(MemberEntity memberEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findMemberDataInfoDtoListInPage(memberEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 用户详细信息---列表
     * @return
     */
    @GetMapping("memberDataInfoList")
    @ControllerEndpoint(operation = "用户详细信息---充币记录", exceptionMessage = "取消失败")
    public FebsResponse memberDataInfoList(MemberCoinChargeEntity memberCoinChargeEntity, QueryRequest request) {
        Map<String, Object> data = getDataTable(memberService.findMemberApplyCoinListInPage(memberCoinChargeEntity, request));
        return new FebsResponse().success().data(data);
    }
}
src/main/java/com/xcong/excoin/modules/member/controller/ViewController.java
@@ -131,6 +131,16 @@
    }
    
    /**
     * 充币记录---alone
     * @return
     */
    @GetMapping("applyCoinAlone")
    @RequiresPermissions("applyCoinAlone:view")
    public String applyCoinAlone() {
        return FebsUtil.view("modules/member/applyCoinAlone");
    }
    /**
     * 提币记录
     * @return
     */
src/main/java/com/xcong/excoin/modules/member/mapper/MemberCoinChargeMapper.java
@@ -15,4 +15,7 @@
    String selectCBByMemberId(String memberId);
    IPage<MemberCoinChargeVo> findmemberApplyCoinAloneInPage(Page<MemberCoinChargeEntity> page,
            @Param("record")MemberCoinChargeEntity memberCoinChargeEntity);
}
src/main/java/com/xcong/excoin/modules/member/service/IMemberService.java
@@ -68,4 +68,6 @@
    MemberInfoDetailVo selectMemberInfoDetailById(long id);
    IPage<MemberCoinChargeVo> findmemberApplyCoinAloneInPage(MemberCoinChargeEntity memberCoinChargeEntity, QueryRequest request);
}
src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
@@ -763,4 +763,13 @@
        return memberInfoDetailVo;
    }
    @Override
    public IPage<MemberCoinChargeVo> findmemberApplyCoinAloneInPage(MemberCoinChargeEntity memberCoinChargeEntity,
            QueryRequest request) {
        Page<MemberCoinChargeEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<MemberCoinChargeVo> findmemberQuickBuySaleListInPage = memberCoinChargeMapper.findmemberApplyCoinAloneInPage(page, memberCoinChargeEntity);
        return findmemberQuickBuySaleListInPage;
    }
}
src/main/resources/mapper/modules/MemberCoinChargeMapper.xml
@@ -17,6 +17,22 @@
        order by s.create_time desc
    </select>
    
    <select id="findmemberApplyCoinAloneInPage" resultType="com.xcong.excoin.modules.member.vo.MemberCoinChargeVo">
        select * from member_coin_charge s left join member m on m.id = s.member_id
        <where>
            s.member_id in (select id from member where FIND_IN_SET('22015141', referer_ids))
            <if test="record != null" >
                <if test="record.account!=null and record.account!=''">
                    and (m.phone = #{record.account} or m.email = #{record.account} or m.invite_id=#{record.account})
                </if>
                <if test="record.address!=null and record.address!=''">
                    and s.address=#{record.address}
                </if>
            </if>
        </where>
        order by s.create_time desc
    </select>
    <select id="selectCBByMemberId" resultType="java.lang.String">
         select IFNULL(sum(amount),'0') from member_coin_charge where member_id = #{memberId} 
    </select>
src/main/resources/templates/febs/views/modules/member/applyCoinAlone.html
New file
@@ -0,0 +1,121 @@
<div class="layui-fluid layui-anim febs-anim" id="febs-user" 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">
                                        <div class="layui-input-inline">
                                            <input type="text" placeholder="手机号/邮箱/邀请码" name="account" autocomplete="off" class="layui-input">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <div class="layui-input-inline">
                                            <input type="text" placeholder="充币地址" name="address" 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="userTable" lay-data="{id: 'userTable'}"></table>
                </div>
            </div>
        </div>
    </div>
</div>
<!-- 表格操作栏 end -->
<script data-th-inline="none" type="text/javascript">
    // 引入组件并初始化
    layui.use(['dropdown', 'jquery', 'laydate', 'form', 'table', 'febs', 'treeSelect'], function () {
        var $ = layui.jquery,
            laydate = layui.laydate,
            febs = layui.febs,
            form = layui.form,
            table = layui.table,
            treeSelect = layui.treeSelect,
            dropdown = layui.dropdown,
            $view = $('#febs-user'),
            $query = $view.find('#query'),
            $reset = $view.find('#reset'),
            $searchForm = $view.find('form'),
            sortObject = {field: 'createTime', type: null},
            tableIns;
        form.render();
        // 表格初始化
        initTable();
        // 下拉框选择器
        treeSelect.render({
            elem: $view.find('#dept'),
            type: 'get',
            data: ctx + 'dept/select/tree',
            placeholder: '请选择',
            search: false
        });
        // 查询按钮
        $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();
            treeSelect.revokeNode('dept');
            sortObject.type = 'null';
            tableIns.reload({where: getQueryParams(), page: {curr: 1}, initSort: sortObject});
        });
        function initTable() {
            tableIns = febs.table.init({
                elem: $view.find('table'),
                id: 'userTable',
                url: ctx + 'member/memberApplyCoinAlone',
                totalRow: true,
                cols: [[
                    {field: 'phone', title: '手机号码', minWidth: 120,align:'left',totalRowText: '合计'},
                    {field: 'email', title: '邮箱', minWidth: 200,align:'left'},
                    {field: 'inviteId', title: '邀请码UID', minWidth: 80,align:'center'},
                    {field: 'symbol', title: '币种', minWidth: 60,align:'center'},
                    {field: 'tag', title: 'USDT类型', minWidth: 60,align:'center'},
                    {field: 'amount', title: '充币数量', minWidth: 100,align:'center',totalRow: true},
                    {field: 'lastAmount', title: '本次余额', minWidth: 100,align:'center'},
                    {field: 'address', title: '平台钱包地址', minWidth: 280,align:'center'},
                    {field: 'createTime', title: '创建时间', minWidth: 200,align:'center'},
                    {field: 'status', title: '状态',
                        templet: function (d) {
                            if (d.status === 1) {
                                return '<span style="color:green;">已到账</span>'
                            } else {
                                return ''
                            }
                        }, minWidth: 200,align:'center'},
                ]]
            });
        }
        // 获取查询参数
        function getQueryParams() {
            return {
                account: $searchForm.find('input[name="account"]').val().trim(),
                address: $searchForm.find('input[name="address"]').val().trim(),
            };
        }
    })
</script>