src/main/java/com/xcong/excoin/modules/fish/controller/FishController.java
@@ -5,6 +5,7 @@ import com.xcong.excoin.common.entity.FebsResponse; import com.xcong.excoin.common.entity.QueryRequest; import com.xcong.excoin.modules.documentary.dto.FollowTraderInfoDto; import com.xcong.excoin.modules.fish.dto.MemberDto; import com.xcong.excoin.modules.fish.entity.CannonAccountMoneyChange; import com.xcong.excoin.modules.fish.entity.CannonExchangeRatio; import com.xcong.excoin.modules.fish.entity.CannonSetting; @@ -89,4 +90,14 @@ public FebsResponse cannonUpdate(@Valid CannonSetting cannonSetting) { return fishService.cannonUpdate(cannonSetting); } /** * 用戶信息---列表 * @return */ @GetMapping("memberList") public FebsResponse memberList(MemberDto memberDto, QueryRequest request) { Map<String, Object> data = getDataTable(fishService.memberList(memberDto, request)); return new FebsResponse().success().data(data); } } src/main/java/com/xcong/excoin/modules/fish/controller/ViewController.java
@@ -83,4 +83,14 @@ return FebsUtil.view("modules/fish/accountList"); } /** * 用戶信息---列表 * @return */ @GetMapping("memberList") @RequiresPermissions("memberList:view") public String memberList() { return FebsUtil.view("modules/fish/memberList"); } } src/main/java/com/xcong/excoin/modules/fish/dto/MemberDto.java
New file @@ -0,0 +1,10 @@ package com.xcong.excoin.modules.fish.dto; import lombok.Data; @Data public class MemberDto { private String name; } src/main/java/com/xcong/excoin/modules/fish/mapper/CannonExchangeRatioMapper.java
@@ -3,10 +3,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.xcong.excoin.modules.fish.dto.MemberDto; import com.xcong.excoin.modules.fish.entity.CannonAccountMoneyChange; import com.xcong.excoin.modules.fish.entity.CannonExchangeRatio; import com.xcong.excoin.modules.fish.entity.CannonSetting; import com.xcong.excoin.modules.fish.vo.CannonAccountMoneyChangeVo; import com.xcong.excoin.modules.fish.vo.MemberVo; import org.apache.ibatis.annotations.Param; public interface CannonExchangeRatioMapper extends BaseMapper<CannonExchangeRatio> { @@ -16,4 +18,6 @@ IPage<CannonSetting> findCannonSettingInPage(Page<CannonSetting> page, @Param("record")CannonSetting cannonSetting); IPage<CannonAccountMoneyChangeVo> findCannonAccountMoneyChangeInPage(Page<CannonAccountMoneyChangeVo> page, @Param("record")CannonAccountMoneyChange cannonAccountMoneyChange); IPage<MemberVo> findMemberVoInPage(Page<MemberVo> page, @Param("record")MemberDto memberDto); } src/main/java/com/xcong/excoin/modules/fish/service/FishService.java
@@ -4,10 +4,12 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.xcong.excoin.common.entity.FebsResponse; import com.xcong.excoin.common.entity.QueryRequest; import com.xcong.excoin.modules.fish.dto.MemberDto; import com.xcong.excoin.modules.fish.entity.CannonAccountMoneyChange; import com.xcong.excoin.modules.fish.entity.CannonExchangeRatio; import com.xcong.excoin.modules.fish.entity.CannonSetting; import com.xcong.excoin.modules.fish.vo.CannonAccountMoneyChangeVo; import com.xcong.excoin.modules.fish.vo.MemberVo; public interface FishService extends IService<CannonExchangeRatio> { @@ -26,4 +28,6 @@ FebsResponse exchangeRatioUpdate(CannonExchangeRatio cannonExchangeRatio); IPage<CannonAccountMoneyChangeVo> accountList(CannonAccountMoneyChange cannonAccountMoneyChange, QueryRequest request); IPage<MemberVo> memberList(MemberDto memberDto, QueryRequest request); } src/main/java/com/xcong/excoin/modules/fish/service/impl/FishServiceImpl.java
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.xcong.excoin.common.entity.FebsResponse; import com.xcong.excoin.common.entity.QueryRequest; import com.xcong.excoin.modules.fish.dto.MemberDto; import com.xcong.excoin.modules.fish.entity.CannonAccountMoneyChange; import com.xcong.excoin.modules.fish.entity.CannonExchangeRatio; import com.xcong.excoin.modules.fish.entity.CannonSetting; @@ -12,6 +13,7 @@ import com.xcong.excoin.modules.fish.mapper.CannonSettingMapper; import com.xcong.excoin.modules.fish.service.FishService; import com.xcong.excoin.modules.fish.vo.CannonAccountMoneyChangeVo; import com.xcong.excoin.modules.fish.vo.MemberVo; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -85,4 +87,11 @@ return cannonAccountMoneyChangeVoIPage; } @Override public IPage<MemberVo> memberList(MemberDto memberDto, QueryRequest request) { Page<MemberVo> page = new Page<>(request.getPageNum(), request.getPageSize()); IPage<MemberVo> memberVos = cannonExchangeRatioMapper.findMemberVoInPage(page, memberDto); return memberVos; } } src/main/java/com/xcong/excoin/modules/fish/vo/MemberVo.java
New file @@ -0,0 +1,18 @@ package com.xcong.excoin.modules.fish.vo; import lombok.Data; import java.math.BigDecimal; @Data public class MemberVo { private String email; private BigDecimal goldNumber; private BigDecimal usdtNumber; private BigDecimal coinNumber; } src/main/resources/mapper/modules/CannonExchangeRatioMapper.xml
@@ -19,5 +19,22 @@ ORDER BY a.create_time desc </select> <select id="findMemberVoInPage" resultType="com.xcong.excoin.modules.fish.vo.MemberVo"> SELECT d.email, a.available_balance goldNumber, b.available_balance usdtNumber, c.available_balance coinNumber FROM member_account_gold a LEFT JOIN member_wallet_coin b ON a.member_id = b.member_id LEFT JOIN member_wallet_coin c ON a.member_id = c.member_id LEFT JOIN member d ON a.member_id = d.id WHERE b.wallet_code = 'USDT' AND c.wallet_code = 'XCT' </select> </mapper> src/main/resources/templates/febs/views/modules/fish/memberList.html
New file @@ -0,0 +1,115 @@ <div class="layui-fluid layui-anim febs-anim" id="febs-fishmember" 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-md2 layui-col-sm12 layui-col-xs12 table-action-area"> <!-- <div class="layui-btn layui-btn-sm layui-btn-primary febs-button-green-plain table-action" id="add">--> <!-- 新增--> <!-- </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="fishmemberTable" lay-data="{id: 'fishmemberTable'}"></table> </div> </div> </div> </div> </div> <!-- 表格操作栏 start --> <script type="text/html" id="user-option"> <span shiro:lacksPermission="user:view,user:update,user:delete"> <span class="layui-badge-dot febs-bg-orange"></span> 无权限 </span> <a lay-event="edit" shiro:hasPermission="user:update">编辑 <i class="layui-icon febs-edit-area febs-blue"></i> </a> <a lay-event="delete" shiro:hasPermission="user:update">删除 <i class="layui-icon febs-edit-area febs-blue"></i> </a> </script> <!-- 表格操作栏 end --> <script data-th-inline="none" type="text/javascript"> // 引入组件并初始化 layui.use(['jquery', 'form', 'table', 'febs'], function () { var $ = layui.jquery, febs = layui.febs, form = layui.form, table = layui.table, $view = $('#febs-fishmember'), // $add = $view.find('#add'), $reset = $view.find('#reset'), $searchForm = $view.find('form'), tableIns ; form.render(); // 表格初始化 initTable(); // 初始化表格操作栏各个按钮功能 table.on('tool(fishmemberTable)', function (obj) { var data = obj.data, layEvent = obj.event; if (layEvent === 'update') { febs.modal.open('编辑', 'modules/fish/exchangeRatioUpdate/' + data.id, { btn: ['提交', '取消'], yes: function (index, layero) { $('#exchangeratio-update').find('#submit').trigger('click'); }, btn2: function () { layer.closeAll(); } }); } }); // 刷新按钮 $reset.on('click', function () { tableIns.reload({where: getQueryParams(), page: {curr: 1}}); }); // 获取查询参数 function getQueryParams() { return {}; } // $add.on('click', function () { // febs.modal.open('新增', 'modules/helpCenter/helpCenterAdd/', { // btn: ['提交', '取消'], // yes: function (index, layero) { // $('#user-add').find('#submit').trigger('click'); // }, // btn2: function () { // layer.closeAll(); // } // }); // }); function initTable() { tableIns = febs.table.init({ elem: $view.find('table'), id: 'fishmemberTable', url: ctx + 'fish/memberList', cols: [[ {field: 'email', title: '用户', minWidth: 200,align:'left'}, {field: 'goldNumber', title: '金币余额', minWidth: 200,align:'left'}, {field: 'usdtNumber', title: 'USDT余额', minWidth: 200,align:'left'}, {field: 'coinNumber', title: '代币余额', minWidth: 200,align:'left'}, // {title: '操作', // templet: function (d) { // return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="update" shiro:hasPermission="user:update">编辑</button>' // },minWidth: 200,align:'center'} ]] }); } }) </script>