From 62caaece670b9ca7b61fd8bc8e2aaef2b1707417 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 29 Jun 2020 18:54:07 +0800
Subject: [PATCH] 20200629 代码提交
---
src/main/java/com/xcong/excoin/modules/member/dto/MemberDetailConfirmDto.java | 3
src/main/java/com/xcong/excoin/modules/member/mapper/MemberMapper.java | 37 +++
src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java | 19
src/main/resources/mapper/modules/MemberCoinWithdrawMapper.xml | 3
src/main/resources/mapper/modules/MemberMapper.xml | 286 +++++++++++++++++++++++
src/main/java/com/xcong/excoin/modules/member/vo/MemberDataInfoVo.java | 45 +++
/dev/null | 24 --
src/main/resources/templates/febs/views/modules/member/withdrawCoin.html | 56 +--
src/main/java/com/xcong/excoin/modules/member/controller/ViewController.java | 10
src/main/java/com/xcong/excoin/modules/member/service/IMemberService.java | 4
src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java | 74 +++++
src/main/resources/templates/febs/views/modules/member/memberDataInfo.html | 89 ++++--
src/main/resources/templates/febs/views/modules/member/extractUsdt.html | 6
src/main/java/com/xcong/excoin/modules/member/dto/MemberDataInfoDto.java | 5
src/main/resources/templates/febs/views/modules/member/memberDetail.html | 7
15 files changed, 556 insertions(+), 112 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/member/controller/DataInfoController.java b/src/main/java/com/xcong/excoin/modules/member/controller/DataInfoController.java
deleted file mode 100644
index 782aa0b..0000000
--- a/src/main/java/com/xcong/excoin/modules/member/controller/DataInfoController.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.xcong.excoin.modules.member.controller;
-
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.xcong.excoin.common.controller.BaseController;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-/**
- * todo 数据关联性
- * @author Administrator
- *
- */
-@Slf4j
-@Validated
-@RestController
-@RequiredArgsConstructor
-@RequestMapping(value = "/dataInfo")
-public class DataInfoController extends BaseController {
-
-}
diff --git a/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java b/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java
index be7967d..786df94 100644
--- a/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java
+++ b/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java
@@ -4,6 +4,7 @@
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.MemberDataInfoDto;
import com.xcong.excoin.modules.member.dto.MemberDetailConfirmDto;
import com.xcong.excoin.modules.member.entity.MemberCoinChargeEntity;
import com.xcong.excoin.modules.member.entity.MemberCoinWithdrawEntity;
@@ -126,14 +127,6 @@
*/
@GetMapping("memberWithdrawCoin")
public FebsResponse memberWithdrawCoin(MemberCoinWithdrawEntity memberCoinWithdrawEntity, QueryRequest request) {
- String isInside = memberCoinWithdrawEntity.getIsInside();
- if(!"".equals(isInside) && isInside != null) {
- if("1".equals(isInside)) {
- memberCoinWithdrawEntity.setIsInside("Y");
- }else {
- memberCoinWithdrawEntity.setIsInside("N");
- }
- }
Map<String, Object> data = getDataTable(memberService.findmemberWithdrawCoinListInPage(memberCoinWithdrawEntity, request));
return new FebsResponse().success().data(data);
}
@@ -158,4 +151,14 @@
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);
+ }
+
+
}
diff --git a/src/main/java/com/xcong/excoin/modules/member/controller/ViewController.java b/src/main/java/com/xcong/excoin/modules/member/controller/ViewController.java
index d665654..9329991 100644
--- a/src/main/java/com/xcong/excoin/modules/member/controller/ViewController.java
+++ b/src/main/java/com/xcong/excoin/modules/member/controller/ViewController.java
@@ -29,11 +29,13 @@
private final IMemberService memberService;
- @GetMapping("memberDataInfo/{id}")
+ /**
+ * 基础数据
+ * @return
+ */
+ @GetMapping("memberDataInfo")
@RequiresPermissions("memberDataInfo:view")
- public String memberDataInfo(@PathVariable long id, Model model) {
- List<MemberCoinChargeEntity> data = memberService.selectMemberDataInfoById(id);
- model.addAttribute("memberCoinChargeEntity", data);
+ public String memberDataInfo() {
return FebsUtil.view("modules/member/memberDataInfo");
}
diff --git a/src/main/java/com/xcong/excoin/modules/member/dto/MemberDataInfoDto.java b/src/main/java/com/xcong/excoin/modules/member/dto/MemberDataInfoDto.java
new file mode 100644
index 0000000..866b000
--- /dev/null
+++ b/src/main/java/com/xcong/excoin/modules/member/dto/MemberDataInfoDto.java
@@ -0,0 +1,5 @@
+package com.xcong.excoin.modules.member.dto;
+
+public class MemberDataInfoDto {
+
+}
diff --git a/src/main/java/com/xcong/excoin/modules/member/dto/MemberDetailConfirmDto.java b/src/main/java/com/xcong/excoin/modules/member/dto/MemberDetailConfirmDto.java
index a6b52b5..441b62b 100644
--- a/src/main/java/com/xcong/excoin/modules/member/dto/MemberDetailConfirmDto.java
+++ b/src/main/java/com/xcong/excoin/modules/member/dto/MemberDetailConfirmDto.java
@@ -10,4 +10,7 @@
@NotNull(message = "ID不能为空")
private Long id;
+ @NotNull(message = "ID不能为空")
+ private int isok;
+
}
diff --git a/src/main/java/com/xcong/excoin/modules/member/mapper/MemberMapper.java b/src/main/java/com/xcong/excoin/modules/member/mapper/MemberMapper.java
index 7d4cdb7..30f4b47 100644
--- a/src/main/java/com/xcong/excoin/modules/member/mapper/MemberMapper.java
+++ b/src/main/java/com/xcong/excoin/modules/member/mapper/MemberMapper.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xcong.excoin.modules.member.entity.MemberEntity;
+import com.xcong.excoin.modules.member.vo.MemberDataInfoVo;
import com.xcong.excoin.modules.trademanage.vo.MemberAccountInfoVo;
import org.apache.ibatis.annotations.Param;
@@ -15,11 +16,47 @@
public interface MemberMapper extends BaseMapper<MemberEntity> {
IPage<MemberEntity> selectMemberListInPage(Page<MemberEntity> page, @Param("record") MemberEntity memberEntity);
+
+ IPage<MemberDataInfoVo> selectMemberDataInfoDtoListInPage(Page<MemberEntity> page, @Param("record") MemberEntity memberEntity);
IPage<MemberAccountInfoVo> findMemberAccountInfoListInPage(Page<MemberEntity> page, @Param("record")MemberEntity memberEntity);
String selectAgentForAccount(long memberId);
String selectTradeSetting();
+
+ String selectMemberDataInfoCount();
+
+ String selectTotalAmountUsdtBForBasicRealData();
+
+ String selectTotalAmountUsdtSForBasicRealData();
+
+ String selectTotalAmountUsdtCZForBasicRealData();
+
+ String selectTotalAmountUsdtTXForBasicRealData();
+
+ String selectReturnMoneyForBasicRealData();
+
+ String selectClosingpriceForBasicRealData();
+
+ String selectSellClosingpriceForBasicRealData();
+
+ String selectRewardratioForBasicRealData();
+
+ String selectZCYHForBasicRealData();
+
+ String selectSFCCForBasicRealData();
+
+ String selectBBZHForBasicRealData();
+
+ String selectHYZHForBasicRealData();
+
+ String selectprepriceForBasicRealData();
+
+ String selectBBZCForBasicRealData();
+
+ String selectHYZCForBasicRealData();
+
+ String selectDLZCForBasicRealData();
}
diff --git a/src/main/java/com/xcong/excoin/modules/member/service/IMemberService.java b/src/main/java/com/xcong/excoin/modules/member/service/IMemberService.java
index 8f943e7..44f6018 100644
--- a/src/main/java/com/xcong/excoin/modules/member/service/IMemberService.java
+++ b/src/main/java/com/xcong/excoin/modules/member/service/IMemberService.java
@@ -9,6 +9,7 @@
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.member.dto.MemberDataInfoDto;
import com.xcong.excoin.modules.member.dto.MemberDetailConfirmDto;
import com.xcong.excoin.modules.member.entity.MemberCoinChargeEntity;
import com.xcong.excoin.modules.member.entity.MemberCoinWithdrawEntity;
@@ -17,6 +18,7 @@
import com.xcong.excoin.modules.member.vo.MemberAuthenticationVo;
import com.xcong.excoin.modules.member.vo.MemberCoinChargeVo;
import com.xcong.excoin.modules.member.vo.MemberCoinWithdrawVo;
+import com.xcong.excoin.modules.member.vo.MemberDataInfoVo;
import com.xcong.excoin.modules.member.vo.MemberQuickBuySaleVo;
import com.xcong.excoin.modules.member.vo.MemberQuickSaleVo;
@@ -53,4 +55,6 @@
List<MemberCoinChargeEntity> selectMemberDataInfoById(long id);
+ IPage<MemberDataInfoVo> findMemberDataInfoDtoListInPage(MemberEntity memberEntity, QueryRequest request);
+
}
diff --git a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
index d40d4dd..df88faf 100644
--- a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
@@ -26,6 +26,7 @@
import com.xcong.excoin.modules.member.vo.MemberAuthenticationVo;
import com.xcong.excoin.modules.member.vo.MemberCoinChargeVo;
import com.xcong.excoin.modules.member.vo.MemberCoinWithdrawVo;
+import com.xcong.excoin.modules.member.vo.MemberDataInfoVo;
import com.xcong.excoin.modules.member.vo.MemberQuickBuySaleVo;
import com.xcong.excoin.modules.member.vo.MemberQuickSaleVo;
@@ -419,11 +420,14 @@
if(!MemberEntity.CERTIFY_STATUS_ING.equals(certifyStatus)) {
return new FebsResponse().fail().message("只有【待审核】状态才能提交!");
}
-
MemberAuthenticationVo memberAuthenticationEntity = memberAuthenticationMapper.findMemberAuthenticationByMemberId(id);
- selectById.setCertifyStatus(MemberEntity.CERTIFY_STATUS_Y);
- selectById.setIdcardNo(memberAuthenticationEntity.getIdcardNo());
+ if(memberDetailConfirmDto.getIsok() == 1) {
+ selectById.setCertifyStatus(MemberEntity.CERTIFY_STATUS_Y);
+ }else {
+ selectById.setCertifyStatus(MemberEntity.CERTIFY_STATUS_N);
+ }
+ selectById.setIdcardNo(memberAuthenticationEntity.getIdcardNo());
memberMapper.updateById(selectById);
return new FebsResponse().success();
}
@@ -433,8 +437,68 @@
Map<String, Object> columnMap = new HashMap<>();
columnMap.put("member_id", id);
List<MemberCoinChargeEntity> selectByMap = memberCoinChargeMapper.selectByMap(columnMap);
- // TODO Auto-generated method stub
- return null;
+ return selectByMap;
+ }
+
+ @Override
+ public IPage<MemberDataInfoVo> findMemberDataInfoDtoListInPage(MemberEntity memberEntity,
+ QueryRequest request) {
+ Page<MemberEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
+ IPage<MemberDataInfoVo> selectMemberListInPage = memberMapper.selectMemberDataInfoDtoListInPage(page, memberEntity);
+ //USDT充币总额+USDT提币总额
+ String totalAmountUsdtB = memberMapper.selectTotalAmountUsdtBForBasicRealData();
+ String totalAmountUsdtS = memberMapper.selectTotalAmountUsdtSForBasicRealData();
+ //USDT充值总额+USDT提现总额
+ String totalAmountUsdtCZ = memberMapper.selectTotalAmountUsdtCZForBasicRealData();
+ String totalAmountUsdtTX = memberMapper.selectTotalAmountUsdtTXForBasicRealData();
+ //佣金
+ String returnMoneyByMid = memberMapper.selectReturnMoneyForBasicRealData();
+ //开仓手续费总额
+ String closingpriceByMid = memberMapper.selectClosingpriceForBasicRealData();
+ //平仓总手续费
+ String sellClosingpriceByMid = memberMapper.selectSellClosingpriceForBasicRealData();
+ //总盈亏
+ String rewardratioByMid = memberMapper.selectRewardratioForBasicRealData();
+ //持仓人数
+ String notNullNumber = memberMapper.selectSFCCForBasicRealData();
+ //币币账户不为空的人数
+ String walletNumber = memberMapper.selectBBZHForBasicRealData();
+ //合约账户不为空的人数
+ String walletCoinNumber = memberMapper.selectHYZHForBasicRealData();
+ //持仓手续费
+ String doingPrice = memberMapper.selectprepriceForBasicRealData();
+
+ //账户金额
+ String walletNum = memberMapper.selectBBZCForBasicRealData();
+ String walletCoinNum = memberMapper.selectHYZCForBasicRealData();
+ String agentNum = memberMapper.selectDLZCForBasicRealData();
+
+ double platformProfitAndLoss = 0 ;
+ platformProfitAndLoss = platformProfitAndLoss + (totalAmountUsdtB == null ? 0 : Double.parseDouble(totalAmountUsdtB));
+ platformProfitAndLoss = platformProfitAndLoss + (totalAmountUsdtCZ == null ? 0 : Double.parseDouble(totalAmountUsdtCZ));
+ platformProfitAndLoss = platformProfitAndLoss - (totalAmountUsdtS == null ? 0 : Double.parseDouble(totalAmountUsdtS));
+ platformProfitAndLoss = platformProfitAndLoss - (totalAmountUsdtTX == null ? 0 : Double.parseDouble(totalAmountUsdtTX));
+ List<MemberDataInfoVo> records = selectMemberListInPage.getRecords();
+ for(MemberDataInfoVo memberDataInfoVo : records) {
+ memberDataInfoVo.setChargeUsdt(totalAmountUsdtCZ == null ? 0 : Double.parseDouble(totalAmountUsdtCZ));
+ memberDataInfoVo.setAppealUsdt(totalAmountUsdtTX == null ? 0 : Double.parseDouble(totalAmountUsdtTX));
+ memberDataInfoVo.setChargeCoin(totalAmountUsdtB == null ? 0 : Double.parseDouble(totalAmountUsdtB));
+ memberDataInfoVo.setAppealCoin(totalAmountUsdtS == null ? 0 : Double.parseDouble(totalAmountUsdtS));
+ memberDataInfoVo.setClosingPrice(closingpriceByMid == null ? "0" : closingpriceByMid);
+ memberDataInfoVo.setSellClosingPrice(sellClosingpriceByMid == null ? "0" : sellClosingpriceByMid);
+ memberDataInfoVo.setFee(returnMoneyByMid == null ? "0" : returnMoneyByMid);
+ memberDataInfoVo.setYingkui(rewardratioByMid == null ? "0" : rewardratioByMid);
+ memberDataInfoVo.setNotNullNumber(notNullNumber == null ? "0" : notNullNumber);
+ memberDataInfoVo.setWalletNumber(walletNumber == null ? "0" : walletNumber);
+ memberDataInfoVo.setWalletCoinNumber(walletCoinNumber == null ? "0" : walletCoinNumber);
+ memberDataInfoVo.setPlatformProfitAndLoss(platformProfitAndLoss == 0 ? "0" : platformProfitAndLoss+"");
+ memberDataInfoVo.setDoingPrice(doingPrice == null ? "0" : doingPrice);
+ memberDataInfoVo.setWalletNum(walletNum == null ? "0" : walletNum);
+ memberDataInfoVo.setWalletCoinNum(walletCoinNum == null ? "0" : walletCoinNum);
+ memberDataInfoVo.setAgentNum(agentNum == null ? "0" : agentNum);
+ }
+ selectMemberListInPage.setTotal(1);
+ return selectMemberListInPage;
}
}
diff --git a/src/main/java/com/xcong/excoin/modules/member/vo/MemberDataInfoVo.java b/src/main/java/com/xcong/excoin/modules/member/vo/MemberDataInfoVo.java
new file mode 100644
index 0000000..5d4a129
--- /dev/null
+++ b/src/main/java/com/xcong/excoin/modules/member/vo/MemberDataInfoVo.java
@@ -0,0 +1,45 @@
+package com.xcong.excoin.modules.member.vo;
+
+import lombok.Data;
+@Data
+public class MemberDataInfoVo {
+
+ private int memberCount;//注册人数
+ private String notNullNumber;//持仓人数
+
+ private String walletNumber;//币币账户不为空的人数
+ private String walletCoinNumber;//合约账户不为空的人数
+ private String platformProfitAndLoss;//平台总盈亏
+
+ private String walletNum;//币币余额
+ private String walletCoinNum;//合约余额
+ private String agentNum;//代理账户余额
+
+ private double avalableCoin;//币币可用
+
+ private double totalCoin;//总资产
+
+ private double avalableContract;//合约可用
+
+ private double totalContract;//合约总
+
+ private double chargeUsdt;//充值USDT
+
+ private double appealUsdt;//提现USDT
+
+ private double chargeCoin;//充币
+
+ private double appealCoin;//提币
+
+ private String fee;//佣金
+
+ private String closingPrice;//开仓费
+
+ private String sellClosingPrice;//平仓费
+
+ private String doingPrice;//持仓费
+
+ private String yingkui;
+
+
+}
diff --git a/src/main/resources/mapper/modules/MemberCoinWithdrawMapper.xml b/src/main/resources/mapper/modules/MemberCoinWithdrawMapper.xml
index 1bc3418..8782239 100644
--- a/src/main/resources/mapper/modules/MemberCoinWithdrawMapper.xml
+++ b/src/main/resources/mapper/modules/MemberCoinWithdrawMapper.xml
@@ -19,7 +19,8 @@
and s.status= #{record.status}
</if>
</if>
- </where>
+ </where>
+ order by s.create_time desc
</select>
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/modules/MemberMapper.xml b/src/main/resources/mapper/modules/MemberMapper.xml
index 0e7783d..9ee4ce5 100644
--- a/src/main/resources/mapper/modules/MemberMapper.xml
+++ b/src/main/resources/mapper/modules/MemberMapper.xml
@@ -61,5 +61,289 @@
<select id="selectTradeSetting" resultType="java.lang.String">
select profit_param from platform_trade_setting
</select>
-
+
+ <select id="selectMemberDataInfoDtoListInPage" resultType="com.xcong.excoin.modules.member.vo.MemberDataInfoVo">
+ select COUNT(m.id) as memberCount from member m
+ </select>
+
+ <select id="selectTotalAmountUsdtBForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(a.amount),'0') as amount
+ FROM
+ member_coin_charge a
+ WHERE
+ a.symbol = 'USDT'
+ AND a.member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+ <select id="selectTotalAmountUsdtSForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(a.amount),'0') as amount
+ FROM
+ member_coin_withdraw a
+ WHERE
+ a. STATUS = 2
+ AND a.is_inside = 'N'
+ AND a.member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+
+ <select id="selectTotalAmountUsdtCZForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(amount_usdt),'0')
+ FROM
+ member_quick_buy_sale
+ WHERE
+ order_type = 'B'
+ AND order_status = 3
+ AND member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+ <select id="selectTotalAmountUsdtTXForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(amount_usdt),'0')
+ FROM
+ member_quick_buy_sale
+ WHERE
+ order_type = 'S'
+ AND order_status = 2
+ AND member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+ <select id="selectReturnMoneyForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(s.amount),'0')
+ FROM
+ member_account_money_change s
+ WHERE
+ s.type = 3
+ AND s.content LIKE '%佣金入账%'
+ AND s. STATUS = '1'
+ AND s.member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+ <select id="selectClosingpriceForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(a.opening_fee_amount),'0')
+ FROM
+ contract_order a
+ WHERE
+ a.closing_type IN (2, 3)
+ and a.order_status = '1'
+ AND a.member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+ <select id="selectSellClosingpriceForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(a.closing_fee_amount),'0')
+ FROM
+ contract_order a
+ WHERE
+ a.closing_type IN (4, 5, 6, 7, 8, 9)
+ and a.order_status = '1'
+ AND a.member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+ <select id="selectRewardratioForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(a.reward_amount),'0')
+ FROM
+ contract_order a
+ WHERE
+ a.closing_type IN (4, 5, 6, 7, 8, 9)
+ and a.order_status = '1'
+ AND a.member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ AND a.member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ )
+ </select>
+ <select id="selectSFCCForBasicRealData" resultType="java.lang.String">
+ SELECT
+ COUNT(b.id)
+ FROM
+ (
+ SELECT
+ a.id
+ FROM
+ contract_order a
+ WHERE
+ a. closing_type IN (2, 3)
+ AND a.member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ GROUP BY
+ a.member_id
+ ) b
+ </select>
+ <select id="selectBBZHForBasicRealData" resultType="java.lang.String">
+ SELECT
+ COUNT(a.id)
+ FROM
+ member_wallet_coin a
+ WHERE
+ a.wallet_code = 'USDT'
+ AND a.available_balance > 1
+ AND a.member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+ <select id="selectHYZHForBasicRealData" resultType="java.lang.String">
+ SELECT
+ COUNT(a.id)
+ FROM
+ member_wallet_contract a
+ WHERE
+ a.wallet_code = 'USDT'
+ AND a.total_balance > 1
+ AND a.member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+ <select id="selectprepriceForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(a.hold_amount),'0')
+ FROM
+ contract_order a
+ WHERE
+ a.member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+ <select id="selectBBZCForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(available_balance),'0')
+ FROM
+ member_wallet_coin
+ WHERE
+ wallet_code = 'USDT'
+ AND member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+ <select id="selectHYZCForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(total_balance),'0')
+ FROM
+ member_wallet_contract
+ WHERE
+ member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+ <select id="selectDLZCForBasicRealData" resultType="java.lang.String">
+ SELECT
+ IFNULL(SUM(total_balance),'0')
+ FROM
+ member_wallet_agent
+ WHERE
+ member_id NOT IN (
+ SELECT
+ id
+ FROM
+ member
+ WHERE
+ account_type = '1'
+ AND account_status = '1'
+ )
+ </select>
+
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/templates/febs/views/modules/member/extractUsdt.html b/src/main/resources/templates/febs/views/modules/member/extractUsdt.html
index 3d4a5a9..dcc6bec 100644
--- a/src/main/resources/templates/febs/views/modules/member/extractUsdt.html
+++ b/src/main/resources/templates/febs/views/modules/member/extractUsdt.html
@@ -17,7 +17,7 @@
<div class="layui-input-inline">
<select name="orderStatus">
<option value="0"></option>
- <option value="1">待审核</option>
+ <option value="1">待付款</option>
<option value="2">已付款</option>
<option value="3">已审核</option>
<option value="4">撤单</option>
@@ -51,7 +51,7 @@
<script type="text/html" id="order-Status">
{{#
var orderStatus = {
- 1: {title: '待审核' , color: 'gray'},
+ 1: {title: '待付款' , color: 'gray'},
2: {title: '已付款' , color: 'red'},
3: {title: '已审核' , color: 'green'},
4: {title: '撤单' , color: 'gray'},
@@ -183,7 +183,7 @@
{field: 'bank', title: '所属银行', minWidth: 150,align:'center'},
{title: '操作',
templet: function (d) {
- if (d.orderStatus === 2) {
+ if (d.orderStatus === 1) {
return '<a lay-event="confirm" shiro:hasPermission="user:delete">付款</a>'
+'<i class="layui-icon febs-edit-area febs-blue"></i>'
+'<a lay-event="cancel" shiro:hasPermission="user:delete">拒绝</a>'
diff --git a/src/main/resources/templates/febs/views/modules/member/memberDataInfo.html b/src/main/resources/templates/febs/views/modules/member/memberDataInfo.html
index b367d9a..8889780 100644
--- a/src/main/resources/templates/febs/views/modules/member/memberDataInfo.html
+++ b/src/main/resources/templates/febs/views/modules/member/memberDataInfo.html
@@ -1,65 +1,90 @@
-<div class="layui-fluid layui-anim febs-anim" id="febs-user" lay-title="用户详细信息">
+<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">
+ </form>
<table lay-filter="userTable" lay-data="{id: 'userTable'}"></table>
</div>
</div>
</div>
</div>
</div>
-<!-- 表格字段状态格式化 start -->
-<script type="text/html" id="status">
- {{#
- var status = {
- 1: {title: '已到账' , color: 'green'},
- 0: {title: '已到账' },
- 2: {title: '已到账' },
- 3: {title: '已到账' },
- 4: {title: '已到账' }
- }[d.status];
- }}
- <span class="layui-badge febs-tag-{{status.color}}">{{ status.title }}</span>
+<!-- 表格操作栏 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>
</script>
-
-<!-- 表格字段状态格式化 start -->
-
<!-- 表格操作栏 end -->
<script data-th-inline="none" type="text/javascript">
// 引入组件并初始化
- layui.use(['jquery', 'form', 'table', 'febs'], function () {
+ layui.use(['dropdown', 'jquery', 'laydate', 'form', 'table', 'febs'], function () {
var $ = layui.jquery,
+ laydate = layui.laydate,
febs = layui.febs,
form = layui.form,
table = layui.table,
+ dropdown = layui.dropdown,
$view = $('#febs-user'),
- tableIns;
+ $reset = $view.find('#reset'),
+ $add = $view.find('#add'),
+ $searchForm = $view.find('form'),
+ sortObject = {field: 'title', type: null},
+ tableIns
+ ;
form.render();
+
// 表格初始化
initTable();
-
+
+ // 刷新按钮
+ $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: 'userTable',
- url: ctx + 'member/memberApplyCoin',
- totalRow: true,
+ url: ctx + 'member/memberDataInfo',
cols: [[
- {field: 'phone', title: '手机号码111111', 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'},
- {title: '状态', templet: '#status', minWidth: 100,align:'center'}
+ {field: 'memberCount', title: '注册用户数', minWidth: 120,align:'center'},
+ {field: 'notNullNumber', title: '持仓用户数', minWidth: 120,align:'center'},
+ {field: 'walletNumber', title: '币币账户有余额个数', minWidth: 200,align:'center'},
+ {field: 'walletNum', title: '币币账户余额', minWidth: 200,align:'center'},
+ {field: 'walletCoinNumber', title: '合约账户有余额个数', minWidth: 200,align:'center'},
+ {field: 'agentNum', title: '合约账户余额', minWidth: 200,align:'center'},
+ {field: 'platformProfitAndLoss', title: '平台剩余USDT',
+ templet: function (d) {
+ if (d.platformProfitAndLoss > '0') {
+ return '<span style="color:green;">'+d.platformProfitAndLoss+'</span>'
+ } else {
+ return '<span style="color:red;">'+d.platformProfitAndLoss+'</span>'
+ }
+ }, minWidth: 200,align:'center'},
+ {field: 'chargeCoin', title: '充币', minWidth: 200,align:'center'},
+ {field: 'appealCoin', title: '提币', minWidth: 200,align:'center'},
+ {field: 'chargeUsdt', title: 'usdt充值', minWidth: 200,align:'center'},
+ {field: 'appealUsdt', title: 'usdt提现', minWidth: 200,align:'center'},
+ {field: 'fee', title: '佣金', minWidth: 200,align:'center'},
+ {field: 'closingPrice', title: '开仓手续费', minWidth: 200,align:'center'},
+ {field: 'sellClosingPrice', title: '平仓手续费', minWidth: 200,align:'center'},
+ {field: 'doingPrice', title: '持仓手续费', minWidth: 200,align:'center'},
+ {field: 'yingkui', title: '订单盈亏',
+ templet: function (d) {
+ if (d.yingkui > '0') {
+ return '<span style="color:green;">'+d.yingkui+'</span>'
+ } else {
+ return '<span style="color:red;">'+d.yingkui+'</span>'
+ }
+ }, minWidth: 200,align:'center'}
]]
});
}
-
})
</script>
\ No newline at end of file
diff --git a/src/main/resources/templates/febs/views/modules/member/memberDetail.html b/src/main/resources/templates/febs/views/modules/member/memberDetail.html
index b11605a..2e2c478 100644
--- a/src/main/resources/templates/febs/views/modules/member/memberDetail.html
+++ b/src/main/resources/templates/febs/views/modules/member/memberDetail.html
@@ -78,6 +78,13 @@
<img alt="头像" data-th-src="${member.idcardImageInHand}">
</div>
</div>
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">是否同意:</label>
+ <div class="layui-input-block">
+ <input type="radio" name="isok" value="1" title="同意">
+ <input type="radio" name="isok" value="0" title="拒绝" checked="">
+ </div>
+ </div>
<div class="layui-form-item febs-hide">
<button class="layui-btn" lay-submit="" lay-filter="user-update-form-submit" id="submit"></button>
</div>
diff --git a/src/main/resources/templates/febs/views/modules/member/withdrawCoin.html b/src/main/resources/templates/febs/views/modules/member/withdrawCoin.html
index 7ce324c..e0fdc2f 100644
--- a/src/main/resources/templates/febs/views/modules/member/withdrawCoin.html
+++ b/src/main/resources/templates/febs/views/modules/member/withdrawCoin.html
@@ -28,8 +28,8 @@
<div class="layui-input-inline">
<select name="isInsideOption">
<option value=""></option>
- <option value="1">是</option>
- <option value="0">否</option>
+ <option value="Y">是</option>
+ <option value="N">否</option>
</select>
</div>
</div>
@@ -51,29 +51,6 @@
</div>
</div>
</div>
-<!-- 表格字段状态格式化 start -->
-<script type="text/html" id="isInside">
- {{#
- var isInside = {
- Y: {title: '是' , color: 'red'},
- N: {title: '否' , color: 'green'},
- }[d.isInside];
- }}
- <span class="layui-badge febs-tag-{{isInside.color}}">{{ isInside.title }}</span>
-</script>
-<script type="text/html" id="status">
- {{#
- var status = {
- 1: {title: '等待审核' , color: 'blue'},
- 2: {title: '同意', color: 'green'},
- 3: {title: '拒绝' , color: 'red'}
- }[d.status];
- }}
- <span class="layui-badge febs-tag-{{status.color}}">{{ status.title }}</span>
-</script>
-
-<!-- 表格字段状态格式化 start -->
-
<!-- 表格操作栏 start -->
<script type="text/html" id="user-option">
<span shiro:lacksPermission="user:view,user:update,user:delete">
@@ -129,11 +106,6 @@
cancelUsers(data.id);
});
}
- if (layEvent === 'see') {
- febs.modal.open( '用户详细信息', 'modules/member/memberDataInfo/' + data.id, {
- maxmin: true,
- });
- }
});
function confirmUsers(id) {
@@ -174,18 +146,34 @@
{field: 'email', title: '邮箱', minWidth: 200,align:'left'},
{field: 'inviteId', title: '邀请码UID',
templet: function (d) {
- return '<a lay-event="see" shiro:hasPermission="user:delete">'+d.inviteId+'</a>'
+ return '<a lay-event="see">'+d.inviteId+'</a>'
}, minWidth: 80,align:'center'},
{field: 'symbol', title: '币种', minWidth: 100,align:'center'},
{field: 'amount', title: '提币数量', minWidth: 120,align:'center' ,totalRow: true},
{field: 'address', title: '提币地址', minWidth: 300,align:'center'},
{field: 'feeAmount', title: '提币手续费', minWidth: 100,align:'center', totalRow: true},
{field: 'createTime', title: '提币时间', minWidth: 180,align:'center'},
- {title: '内部转账', templet: '#isInside', minWidth: 100,align:'center'},
- {title: '状态', templet: '#status', minWidth: 100,align:'center'},
+ {field: 'isInside', title: '内部转账',
+ templet: function (d) {
+ if (d.isInside === 'Y') {
+ return '<span style="color:red;">是</span>'
+ } else {
+ return '<span style="color:green;">否</span>'
+ }
+ },minWidth: 100,align:'center'},
+ {field: 'status', title: '状态',
+ templet: function (d) {
+ if (d.status === 1) {
+ return '<span style="color:blue;"> 等待审核 </span>'
+ } else if (d.status === 2) {
+ return '<span style="color:green;">同意 </span>'
+ } else {
+ return '<span style="color:red;">拒绝</span>'
+ }
+ },minWidth: 100,align:'center'},
{title: '操作',
templet: function (d) {
- if (d.orderStatus === 1) {
+ if (d.status === 1) {
return '<a lay-event="confirm" shiro:hasPermission="user:delete">确认</a>'
+'<i class="layui-icon febs-edit-area febs-blue"></i>'
+'<a lay-event="cancel" shiro:hasPermission="user:delete">拒绝</a>'
--
Gitblit v1.9.1