From 43a51277c91dba52922379bdf8bf81622303ceaa Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 29 Nov 2021 10:36:14 +0800
Subject: [PATCH] 20211126  fish

---
 src/main/java/com/xcong/excoin/modules/fish/controller/FishController.java        |   11 ++
 src/main/resources/mapper/modules/CannonExchangeRatioMapper.xml                   |   17 ++++
 src/main/java/com/xcong/excoin/modules/fish/controller/ViewController.java        |   10 ++
 src/main/java/com/xcong/excoin/modules/fish/mapper/CannonExchangeRatioMapper.java |    4 +
 src/main/resources/templates/febs/views/modules/fish/memberList.html              |  115 ++++++++++++++++++++++++++++
 src/main/java/com/xcong/excoin/modules/fish/dto/MemberDto.java                    |   10 ++
 src/main/java/com/xcong/excoin/modules/fish/service/FishService.java              |    4 +
 src/main/java/com/xcong/excoin/modules/fish/service/impl/FishServiceImpl.java     |    9 ++
 src/main/java/com/xcong/excoin/modules/fish/vo/MemberVo.java                      |   18 ++++
 9 files changed, 198 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/fish/controller/FishController.java b/src/main/java/com/xcong/excoin/modules/fish/controller/FishController.java
index 49e04f3..7e43ffb 100644
--- a/src/main/java/com/xcong/excoin/modules/fish/controller/FishController.java
+++ b/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);
+    }
 }
diff --git a/src/main/java/com/xcong/excoin/modules/fish/controller/ViewController.java b/src/main/java/com/xcong/excoin/modules/fish/controller/ViewController.java
index 1a077be..a793636 100644
--- a/src/main/java/com/xcong/excoin/modules/fish/controller/ViewController.java
+++ b/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");
+    }
+
 }
diff --git a/src/main/java/com/xcong/excoin/modules/fish/dto/MemberDto.java b/src/main/java/com/xcong/excoin/modules/fish/dto/MemberDto.java
new file mode 100644
index 0000000..661be9b
--- /dev/null
+++ b/src/main/java/com/xcong/excoin/modules/fish/dto/MemberDto.java
@@ -0,0 +1,10 @@
+package com.xcong.excoin.modules.fish.dto;
+
+import lombok.Data;
+
+@Data
+public class MemberDto {
+
+    private String name;
+
+}
diff --git a/src/main/java/com/xcong/excoin/modules/fish/mapper/CannonExchangeRatioMapper.java b/src/main/java/com/xcong/excoin/modules/fish/mapper/CannonExchangeRatioMapper.java
index 66e2ad9..74549a5 100644
--- a/src/main/java/com/xcong/excoin/modules/fish/mapper/CannonExchangeRatioMapper.java
+++ b/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);
 }
diff --git a/src/main/java/com/xcong/excoin/modules/fish/service/FishService.java b/src/main/java/com/xcong/excoin/modules/fish/service/FishService.java
index 54855ed..c12b360 100644
--- a/src/main/java/com/xcong/excoin/modules/fish/service/FishService.java
+++ b/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);
 }
diff --git a/src/main/java/com/xcong/excoin/modules/fish/service/impl/FishServiceImpl.java b/src/main/java/com/xcong/excoin/modules/fish/service/impl/FishServiceImpl.java
index eee3c49..efab384 100644
--- a/src/main/java/com/xcong/excoin/modules/fish/service/impl/FishServiceImpl.java
+++ b/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;
+    }
+
 }
diff --git a/src/main/java/com/xcong/excoin/modules/fish/vo/MemberVo.java b/src/main/java/com/xcong/excoin/modules/fish/vo/MemberVo.java
new file mode 100644
index 0000000..d111032
--- /dev/null
+++ b/src/main/java/com/xcong/excoin/modules/fish/vo/MemberVo.java
@@ -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;
+
+}
diff --git a/src/main/resources/mapper/modules/CannonExchangeRatioMapper.xml b/src/main/resources/mapper/modules/CannonExchangeRatioMapper.xml
index f9bad3d..c0152f9 100644
--- a/src/main/resources/mapper/modules/CannonExchangeRatioMapper.xml
+++ b/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>
\ No newline at end of file
diff --git a/src/main/resources/templates/febs/views/modules/fish/memberList.html b/src/main/resources/templates/febs/views/modules/fish/memberList.html
new file mode 100644
index 0000000..e124625
--- /dev/null
+++ b/src/main/resources/templates/febs/views/modules/fish/memberList.html
@@ -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">&#xe79b;</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>
\ No newline at end of file

--
Gitblit v1.9.1