1 files deleted
12 files modified
2 files added
| | |
| | | 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; |
| | |
| | | */ |
| | | @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); |
| | | } |
| | |
| | | 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); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | |
| | | 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"); |
| | | } |
| | | |
New file |
| | |
| | | package com.xcong.excoin.modules.member.dto;
|
| | |
|
| | | public class MemberDataInfoDto {
|
| | |
|
| | | }
|
| | |
| | | @NotNull(message = "ID不能为空")
|
| | | private Long id;
|
| | |
|
| | | @NotNull(message = "ID不能为空")
|
| | | private int isok;
|
| | | |
| | | }
|
| | |
| | | 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; |
| | |
| | | |
| | | 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(); |
| | | |
| | | } |
| | |
| | | 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; |
| | |
| | | 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; |
| | | |
| | |
| | | |
| | | List<MemberCoinChargeEntity> selectMemberDataInfoById(long id); |
| | | |
| | | IPage<MemberDataInfoVo> findMemberDataInfoDtoListInPage(MemberEntity memberEntity, QueryRequest request); |
| | | |
| | | } |
| | |
| | | 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; |
| | | |
| | |
| | | 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(); |
| | | } |
| | |
| | | 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; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | 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;
|
| | |
|
| | |
|
| | | }
|
| | |
| | | </if>
|
| | | </if>
|
| | | </where>
|
| | | order by s.create_time desc |
| | | </select>
|
| | |
|
| | | </mapper> |
| | |
| | | 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> |
| | |
| | | <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>
|
| | |
| | | <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'},
|
| | |
| | | {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>'
|
| | |
| | | <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> |
| | |
| | | <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>
|
| | |
| | | <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>
|
| | |
| | | </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">
|
| | |
| | | cancelUsers(data.id);
|
| | | });
|
| | | }
|
| | | if (layEvent === 'see') {
|
| | | febs.modal.open( '用户详细信息', 'modules/member/memberDataInfo/' + data.id, {
|
| | | maxmin: true,
|
| | | });
|
| | | }
|
| | | });
|
| | |
|
| | | function confirmUsers(id) {
|
| | |
| | | {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>'
|