14 files modified
2 files added
| | |
| | | @Getter |
| | | public enum DataDictionaryEnum { |
| | | //充值金额 |
| | | WITHDRAW_AMOUNT("WITHDRAW_AMOUNT","WITHDRAW_AMOUNT"), |
| | | //充值金额 |
| | | CHARGE_AMOUNT("CHARGE_AMOUNT","CHARGE_AMOUNT"), |
| | | //充值地址 |
| | | CHARGE_ADDRESS("CHARGE_ADDRESS","CHARGE_ADDRESS"), |
| | |
| | | import cc.mrbird.febs.common.utils.excl.ResponseHeadUtil; |
| | | import cc.mrbird.febs.mall.dto.*; |
| | | import cc.mrbird.febs.mall.entity.*; |
| | | import cc.mrbird.febs.mall.mapper.MallMemberAmountMapper; |
| | | import cc.mrbird.febs.mall.mapper.MallMemberChargeMapper; |
| | | import cc.mrbird.febs.mall.mapper.MallMemberMapper; |
| | | import cc.mrbird.febs.mall.mapper.MallMemberWalletMapper; |
| | | import cc.mrbird.febs.mall.mapper.*; |
| | | import cc.mrbird.febs.mall.service.IAdminMallMemberService; |
| | | import cc.mrbird.febs.mall.service.IApiMallMemberService; |
| | | import cc.mrbird.febs.mall.service.IMallMoneyFlowService; |
| | |
| | | private final IApiMallMemberService apiMallMemberService; |
| | | private final MallMemberChargeMapper mallMemberChargeMapper; |
| | | private final IMallMoneyFlowService mallMoneyFlowService; |
| | | private final MallMemberWithdrawMapper mallMemberWithdrawMapper; |
| | | |
| | | |
| | | @GetMapping("confirmOrder") |
| | |
| | | return new FebsResponse().success(); |
| | | } |
| | | |
| | | @GetMapping("confirmCancelWithdraw") |
| | | @ControllerEndpoint(operation = "批量提现取消", exceptionMessage = "操作失败") |
| | | public FebsResponse confirmCancelWithdraw(MemberChargrDto memberChargrDto){ |
| | | String orderIds = memberChargrDto.getOrderIds(); |
| | | List<String> ids = StrUtil.splitTrim(orderIds, ","); |
| | | for(String id : ids){ |
| | | long orderId = Long.parseLong(id); |
| | | MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(orderId); |
| | | if(1 != mallMemberWithdraw.getStatus()){ |
| | | continue; |
| | | } |
| | | mallMemberWithdraw.setStatus(3); |
| | | mallMemberWithdrawMapper.updateById(mallMemberWithdraw); |
| | | |
| | | MallMemberAmount mallMemberAmount = mallMemberAmountMapper.selectByMemberId(mallMemberWithdraw.getMemberId()); |
| | | mallMemberAmount.setFcmCntAva(mallMemberAmount.getFcmCntAva().add(mallMemberWithdraw.getAmount())); |
| | | mallMemberAmountMapper.updateFcmCntAvaById(mallMemberAmount); |
| | | } |
| | | return new FebsResponse().success(); |
| | | } |
| | | |
| | | |
| | | @GetMapping("confirmWithdraw") |
| | | @ControllerEndpoint(operation = "批量同意", exceptionMessage = "操作失败") |
| | | public FebsResponse confirmWithdraw(MemberChargrDto memberChargrDto){ |
| | | String orderIds = memberChargrDto.getOrderIds(); |
| | | List<String> ids = StrUtil.splitTrim(orderIds, ","); |
| | | for(String id : ids){ |
| | | long orderId = Long.parseLong(id); |
| | | MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(orderId); |
| | | if(1 != mallMemberWithdraw.getStatus()){ |
| | | continue; |
| | | } |
| | | mallMemberWithdraw.setStatus(2); |
| | | mallMemberWithdrawMapper.updateById(mallMemberWithdraw); |
| | | |
| | | String orderNo = MallUtils.getOrderNum("BF"); |
| | | mallMoneyFlowService.addMoneyFlow( |
| | | mallMemberWithdraw.getMemberId(), |
| | | mallMemberWithdraw.getAmount(), |
| | | MoneyFlowTypeNewEnum.FCM_INSIDE_OUT.getValue(), |
| | | orderNo, |
| | | mallMemberWithdraw.getId(), |
| | | FlowTypeNewEnum.FCM_COIN.getValue(), |
| | | MoneyFlowTypeNewEnum.FCM_INSIDE_OUT.getDescrition()); |
| | | } |
| | | return new FebsResponse().success(); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 充值列表 |
| | |
| | | return new FebsResponse().success().data(data); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 提现列表 |
| | | */ |
| | | @GetMapping("memberWithDrawList") |
| | | public FebsResponse memberWithDrawList(MoneyChargeListDto moneyChargeListDto, QueryRequest request) { |
| | | Map<String, Object> data = getDataTable(mallMemberService.memberWithDrawList(moneyChargeListDto, request)); |
| | | return new FebsResponse().success().data(data); |
| | | } |
| | | |
| | | /** |
| | | * 平台账单 |
| | | * |
| | |
| | | return memberService.chargeBalance(apiChargeBalanceDto); |
| | | } |
| | | |
| | | @ApiOperation(value = "FCM-提现") |
| | | @PostMapping(value = "/withdrawalBalance") |
| | | public FebsResponse withdrawalBalance(@RequestBody @Validated WithdrawalBalanceDto withdrawalBalanceDto) { |
| | | mallMemberWithdrawService.withdrawalBalance(withdrawalBalanceDto); |
| | | return new FebsResponse().success().message("提交成功"); |
| | | } |
| | | |
| | | |
| | | @ApiOperation(value = "FCM-推出登录", notes = "FCM-推出登录") |
| | | @PostMapping(value = "/logout") |
| | |
| | | public static long idFromScoreAchieveRelease; |
| | | |
| | | /** |
| | | * 体现列表 |
| | | * @return |
| | | */ |
| | | @GetMapping("memberWithdrawList") |
| | | @RequiresPermissions("memberWithdrawList:view") |
| | | public String memberWithdrawList() { |
| | | return FebsUtil.view("modules/mallMember/memberWithdrawList"); |
| | | } |
| | | |
| | | /** |
| | | * 充值列表 |
| | | * @return |
| | | */ |
New file |
| | |
| | | package cc.mrbird.febs.mall.dto; |
| | | |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import javax.validation.constraints.Min; |
| | | import javax.validation.constraints.NotBlank; |
| | | import javax.validation.constraints.NotNull; |
| | | import java.math.BigDecimal; |
| | | |
| | | @Data |
| | | @ApiModel(value = "WithdrawalBalanceDto", description = "提现接收参数类") |
| | | public class WithdrawalBalanceDto { |
| | | |
| | | |
| | | @Min(0) |
| | | @NotNull(message = "参数不能为空") |
| | | @ApiModelProperty(value = "金额") |
| | | private BigDecimal amount; |
| | | |
| | | @NotBlank(message = "参数不能为空") |
| | | @ApiModelProperty(value = "交易密码") |
| | | private String tradePwd; |
| | | |
| | | @NotBlank(message = "地址不能为空") |
| | | @ApiModelProperty(value = "地址") |
| | | private String address; |
| | | } |
| | |
| | | */ |
| | | @TableField(exist = false) |
| | | private String agreeType; |
| | | |
| | | @TableField(exist = false) |
| | | private String accountLogin; |
| | | } |
| | |
| | | import cc.mrbird.febs.mall.entity.AppVersion; |
| | | import cc.mrbird.febs.mall.entity.MallMember; |
| | | import cc.mrbird.febs.mall.entity.MallMemberCharge; |
| | | import cc.mrbird.febs.mall.entity.MallMemberWithdraw; |
| | | import cc.mrbird.febs.mall.vo.*; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | |
| | | MallMemberVo getMallmemberAmountByMemberId(@Param("memberId")long id); |
| | | |
| | | IPage<MallMemberCharge> getMemberChargeListInPage(Page<MallMemberCharge> page, @Param("record")MoneyChargeListDto moneyChargeListDto); |
| | | |
| | | IPage<MallMemberWithdraw> getMemberWithDrawListInPage(Page<MallMemberWithdraw> page, @Param("record")MoneyChargeListDto moneyChargeListDto); |
| | | } |
| | |
| | | MallMemberVo getMallmemberAmountByMemberId(long id); |
| | | |
| | | IPage<MallMemberCharge> memberChargeList(MoneyChargeListDto moneyChargeListDto, QueryRequest request); |
| | | |
| | | IPage<MallMemberWithdraw> memberWithDrawList(MoneyChargeListDto moneyChargeListDto, QueryRequest request); |
| | | } |
| | |
| | | package cc.mrbird.febs.mall.service; |
| | | |
| | | import cc.mrbird.febs.mall.dto.WithdrawalBalanceDto; |
| | | import cc.mrbird.febs.mall.dto.WithdrawalDto; |
| | | import cc.mrbird.febs.mall.entity.MallMemberWithdraw; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | |
| | | public interface IMallMemberWithdrawService extends IService<MallMemberWithdraw> { |
| | | |
| | | void withdrawal(WithdrawalDto withdrawalDto); |
| | | |
| | | void withdrawalBalance(WithdrawalBalanceDto withdrawalBalanceDto); |
| | | } |
| | |
| | | return mallMemberChargeIPage; |
| | | } |
| | | |
| | | @Override |
| | | public IPage<MallMemberWithdraw> memberWithDrawList(MoneyChargeListDto moneyChargeListDto, QueryRequest request) { |
| | | Page<MallMemberWithdraw> page = new Page<>(request.getPageNum(), request.getPageSize()); |
| | | IPage<MallMemberWithdraw> mallMemberWithdrawIPage = mallMemberMapper.getMemberWithDrawListInPage(page, moneyChargeListDto); |
| | | return mallMemberWithdrawIPage; |
| | | } |
| | | |
| | | private String refererIds(String parentId) { |
| | | boolean flag = false; |
| | | if (StrUtil.isBlank(parentId)) { |
| | |
| | | DataDictionaryEnum.CHARGE_ADDRESS.getCode() |
| | | ); |
| | | mallMemberVo.setChargeAddress(chargeAddressDic.getValue()); |
| | | |
| | | DataDictionaryCustom withdrawAmountDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( |
| | | DataDictionaryEnum.WITHDRAW_AMOUNT.getType(), |
| | | DataDictionaryEnum.WITHDRAW_AMOUNT.getCode() |
| | | ); |
| | | BigDecimal withdrawAmount = new BigDecimal(withdrawAmountDic.getValue()).setScale(2, BigDecimal.ROUND_DOWN); |
| | | mallMemberVo.setWithdrawAmount(withdrawAmount); |
| | | return new FebsResponse().success().data(mallMemberVo); |
| | | } |
| | | |
| | |
| | | import cc.mrbird.febs.common.utils.AppContants; |
| | | import cc.mrbird.febs.common.utils.LoginUserUtil; |
| | | import cc.mrbird.febs.common.utils.MallUtils; |
| | | import cc.mrbird.febs.mall.dto.WithdrawalBalanceDto; |
| | | import cc.mrbird.febs.mall.dto.WithdrawalDto; |
| | | import cc.mrbird.febs.mall.entity.*; |
| | | import cc.mrbird.febs.mall.mapper.*; |
| | |
| | | private final MallMemberPaymentMapper mallMemberPaymentMapper; |
| | | private final DataDictionaryCustomMapper dataDictionaryCustomMapper; |
| | | private final MallMemberBankMapper mallMemberBankMapper; |
| | | private final MallMemberAmountMapper mallMemberAmountMapper; |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | |
| | | |
| | | mallMemberService.addMoneyFlow(memberId, withdrawalDto.getAmount().negate(), MoneyFlowTypeEnum.WITHDRAWAL.getValue(), orderNo, null, null, null, 1, FlowTypeEnum.BALANCE.getValue()); |
| | | } |
| | | |
| | | @Override |
| | | public void withdrawalBalance(WithdrawalBalanceDto withdrawalBalanceDto) { |
| | | Long memberId = LoginUserUtil.getLoginUser().getId(); |
| | | MallMember mallMember = mallMemberService.getById(memberId); |
| | | if (StrUtil.isBlank(mallMember.getTradePassword())) { |
| | | throw new FebsException("未设置支付密码"); |
| | | } |
| | | if (!mallMember.getTradePassword().equals(SecureUtil.md5(withdrawalBalanceDto.getTradePwd()))) { |
| | | throw new FebsException("支付密码错误"); |
| | | } |
| | | |
| | | DataDictionaryCustom withdrawAmountDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( |
| | | DataDictionaryEnum.WITHDRAW_AMOUNT.getType(), |
| | | DataDictionaryEnum.WITHDRAW_AMOUNT.getCode() |
| | | ); |
| | | BigDecimal amount = withdrawalBalanceDto.getAmount(); |
| | | BigDecimal withdrawAmount = new BigDecimal(withdrawAmountDic.getValue()).setScale(2, BigDecimal.ROUND_DOWN); |
| | | if(withdrawAmount.compareTo(amount) > 0){ |
| | | throw new FebsException("至少为"+withdrawAmount); |
| | | } |
| | | |
| | | MallMemberAmount mallMemberAmount = mallMemberAmountMapper.selectByMemberId(memberId); |
| | | mallMemberAmount.setFcmCntAva(mallMemberAmount.getFcmCntAva().subtract(amount)); |
| | | mallMemberAmountMapper.updateFcmCntAvaById(mallMemberAmount); |
| | | |
| | | String orderNo = MallUtils.getOrderNum("W"); |
| | | MallMemberWithdraw withdraw = new MallMemberWithdraw(); |
| | | withdraw.setWithdrawNo(orderNo); |
| | | withdraw.setMemberId(memberId); |
| | | withdraw.setAmount(amount.negate()); |
| | | withdraw.setStatus(1); |
| | | withdraw.setAmountFee(BigDecimal.ZERO); |
| | | withdraw.setRemark(withdrawalBalanceDto.getAddress()); |
| | | this.baseMapper.insert(withdraw); |
| | | |
| | | } |
| | | } |
| | |
| | | private String insideNFTPercent; |
| | | @ApiModelProperty(value = "充值地址") |
| | | private String chargeAddress; |
| | | @ApiModelProperty(value = "最小提现金额") |
| | | private BigDecimal withdrawAmount; |
| | | |
| | | } |
| | |
| | | b.account_login accountLogin |
| | | from mall_member_charge a |
| | | left join mall_member b on a.member_id = b.id |
| | | left join mall_member_payment c on a.member_id = c.member_id |
| | | <where> |
| | | <if test="record.accountLogin!=null and record.accountLogin!=''"> |
| | | and b.account_login like concat('%', #{record.accountLogin},'%') |
| | |
| | | </where> |
| | | order by a.CREATED_TIME desc |
| | | </select> |
| | | |
| | | <select id="getMemberWithDrawListInPage" resultType="cc.mrbird.febs.mall.entity.MallMemberWithdraw"> |
| | | select |
| | | a.*, |
| | | b.account_login accountLogin |
| | | from mall_member_withdraw a |
| | | left join mall_member b on a.member_id = b.id |
| | | <where> |
| | | <if test="record.accountLogin!=null and record.accountLogin!=''"> |
| | | and b.account_login like concat('%', #{record.accountLogin},'%') |
| | | </if> |
| | | <if test="record.address!=null and record.address!=''"> |
| | | and a.remark like concat('%', #{record.address},'%') |
| | | </if> |
| | | <if test="record.status!=null"> |
| | | and a.status = #{record.status} |
| | | </if> |
| | | </where> |
| | | order by a.CREATED_TIME desc |
| | | </select> |
| | | </mapper> |
| | |
| | | <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="withdraw-table-form"> |
| | | <form class="layui-form layui-table-form" lay-filter="charge-table-form"> |
| | | <div class="layui-row"> |
| | | <div class="layui-col-md10"> |
| | | <div class="layui-form-item"> |
| | |
| | | height: auto !important; |
| | | } |
| | | </style> |
| | | <script type="text/html" id="withdraw-status"> |
| | | <script type="text/html" id="charge-status"> |
| | | {{# |
| | | var state = { |
| | | 1: {title: '进行中'}, |
| | |
| | | |
| | | <script type="text/html" id="tableToolBarOrder"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" lay-event="confirmOrder">提现确认</button> |
| | | <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" lay-event="confirmCancel">提现取消</button> |
| | | <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" lay-event="confirmOrder">确认</button> |
| | | <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" lay-event="confirmCancel">取消</button> |
| | | </div> |
| | | </script> |
| | | |
| | |
| | | let ids = ""; |
| | | let totalAmount = 0; |
| | | for(let i = 0;i < data.length;i++){ |
| | | if(data[i].status != 1){ |
| | | if(data[i].state != 1){ |
| | | febs.alert.warn('请选择审核中的记录'); |
| | | return; |
| | | }else{ |
| | |
| | | return; |
| | | } |
| | | |
| | | febs.modal.confirm('USDT提现', '总额为:'+totalAmount, function () { |
| | | febs.modal.confirm('充值', '总额为:'+totalAmount, function () { |
| | | confirmOrder(ids); |
| | | }); |
| | | } |
| | |
| | | let ids = ""; |
| | | let totalAmount = 0; |
| | | for(let i = 0;i < data.length;i++){ |
| | | if(data[i].status != 1){ |
| | | if(data[i].state != 1){ |
| | | febs.alert.warn('请选择审核中的记录'); |
| | | return; |
| | | }else{ |
| | |
| | | return; |
| | | } |
| | | |
| | | febs.modal.confirm('提现取消', '总额为:'+totalAmount, function () { |
| | | febs.modal.confirm('取消', '总额为:'+totalAmount, function () { |
| | | confirmCancel(ids); |
| | | }); |
| | | } |
| | |
| | | {type: 'checkbox', fixed: 'left'}, |
| | | {field: 'accountLogin', title: '账户', minWidth: 180}, |
| | | {field: 'address', title: '地址', minWidth: 180}, |
| | | {field: 'amount', title: '金额(USDT)', minWidth: 130}, |
| | | {title: '提现状态', templet: '#withdraw-status'}, |
| | | {field: 'amount', title: '金额', minWidth: 130}, |
| | | {title: '提现状态', templet: '#charge-status'}, |
| | | {field: 'createdTime', title: '创建时间', minWidth: 180}, |
| | | ]] |
| | | }); |
New file |
| | |
| | | <div class="layui-fluid layui-anim febs-anim" id="febs-member-withdraw" 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="withdraw-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" name="accountLogin" autocomplete="off" placeholder="登录账户" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="address" autocomplete="off" placeholder="地址" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label layui-form-label-sm">状态</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="status"> |
| | | <option value=""></option> |
| | | <option value="1">进行中</option> |
| | | <option value="2">成功</option> |
| | | <option value="3">失败</option> |
| | | </select> |
| | | </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"></i> |
| | | </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="memberWithdrawTable" lay-data="{id: 'memberWithdrawTable'}"></table> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <style> |
| | | .layui-table-cell { |
| | | height: auto !important; |
| | | } |
| | | </style> |
| | | <script type="text/html" id="withdraw-status"> |
| | | {{# |
| | | var status = { |
| | | 1: {title: '进行中'}, |
| | | 2: {title: '成功'}, |
| | | 3: {title: '失败'} |
| | | }[d.status]; |
| | | }} |
| | | <span>{{ status.title }}</span> |
| | | </script> |
| | | |
| | | <script type="text/html" id="tableToolBarWithdraw"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" lay-event="confirmWithdraw">同意提现</button> |
| | | <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" lay-event="confirmCancelWithdraw">拒绝提现</button> |
| | | </div> |
| | | </script> |
| | | |
| | | |
| | | <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, |
| | | dropdown = layui.dropdown, |
| | | $view = $('#febs-member-withdraw'), |
| | | $query = $view.find('#query'), |
| | | $reset = $view.find('#reset'), |
| | | $searchForm = $view.find('form'), |
| | | sortObject = {field: 'createTime', type: null}, |
| | | tableIns; |
| | | |
| | | form.render(); |
| | | |
| | | initWithDrawTable(); |
| | | |
| | | table.on('toolbar(memberWithdrawTable)', function(obj){ |
| | | var event = obj.event; |
| | | var id = obj.config.id; |
| | | var checkStatus = table.checkStatus(id); |
| | | if(event === 'confirmWithdraw'){ |
| | | var data = checkStatus.data; |
| | | let ids = ""; |
| | | let totalAmount = 0; |
| | | for(let i = 0;i < data.length;i++){ |
| | | if(data[i].status != 1){ |
| | | febs.alert.warn('请选择审核中的记录'); |
| | | return; |
| | | }else{ |
| | | ids = ids + data[i].id+","; |
| | | totalAmount = totalAmount + data[i].amount; |
| | | } |
| | | } |
| | | if(ids == null || ids == ""){ |
| | | febs.alert.warn('请选择审核中的记录'); |
| | | return; |
| | | } |
| | | |
| | | febs.modal.confirm('同意', '总额为:'+totalAmount, function () { |
| | | confirmWithdraw(ids); |
| | | }); |
| | | } |
| | | if(event === 'confirmCancelWithdraw'){ |
| | | var data = checkStatus.data; |
| | | let ids = ""; |
| | | let totalAmount = 0; |
| | | for(let i = 0;i < data.length;i++){ |
| | | if(data[i].status != 1){ |
| | | febs.alert.warn('请选择审核中的记录'); |
| | | return; |
| | | }else{ |
| | | ids = ids + data[i].id+","; |
| | | totalAmount = totalAmount + data[i].amount; |
| | | } |
| | | } |
| | | if(ids == null || ids == ""){ |
| | | febs.alert.warn('请选择审核中的记录'); |
| | | return; |
| | | } |
| | | |
| | | febs.modal.confirm('拒绝', '总额为:'+totalAmount, function () { |
| | | confirmCancelWithdraw(ids); |
| | | }); |
| | | } |
| | | }); |
| | | function confirmWithdraw(ids) { |
| | | febs.get(ctx + 'admin/mallMember/confirmWithdraw?&orderIds='+ids, null, function () { |
| | | febs.alert.success('操作成功'); |
| | | $query.click(); |
| | | |
| | | }); |
| | | } |
| | | function confirmCancelWithdraw(ids) { |
| | | febs.get(ctx + 'admin/mallMember/confirmCancelWithdraw?&orderIds='+ids, null, function () { |
| | | febs.alert.success('操作成功'); |
| | | $query.click(); |
| | | |
| | | }); |
| | | } |
| | | |
| | | table.on('sort(memberWithdrawTable)', function (obj) { |
| | | sortObject = obj; |
| | | tableIns.reload({ |
| | | initSort: obj, |
| | | where: $.extend(getQueryParams(), { |
| | | field: obj.field, |
| | | order: obj.type |
| | | }) |
| | | }); |
| | | }); |
| | | |
| | | $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(); |
| | | tableIns.reload({where: getQueryParams(), page: {curr: 1}, initSort: sortObject}); |
| | | }); |
| | | |
| | | function initWithDrawTable() { |
| | | tableIns = febs.table.init({ |
| | | elem: $view.find('table'), |
| | | id: 'memberWithdrawTable', |
| | | url: ctx + 'admin/mallMember/memberWithDrawList', |
| | | toolbar: '#tableToolBarWithdraw', |
| | | cols: [[ |
| | | {type: 'checkbox', fixed: 'left'}, |
| | | {field: 'accountLogin', title: '账户', minWidth: 180}, |
| | | {field: 'remark', title: '地址', minWidth: 180}, |
| | | {field: 'amount', title: '金额', minWidth: 130}, |
| | | {title: '提现状态', templet: '#withdraw-status'}, |
| | | {field: 'createdTime', title: '创建时间', minWidth: 180}, |
| | | ]] |
| | | }); |
| | | } |
| | | |
| | | function getQueryParams() { |
| | | return { |
| | | accountLogin: $searchForm.find('input[name="accountLogin"]').val().trim(), |
| | | address: $searchForm.find('input[name="address"]').val().trim(), |
| | | status: $searchForm.find("select[name='status']").val(), |
| | | invalidate_ie_cache: new Date() |
| | | }; |
| | | } |
| | | |
| | | function changeStatus(url) { |
| | | febs.post(ctx + url, null, function () { |
| | | febs.alert.success('设置成功'); |
| | | $query.click(); |
| | | }); |
| | | } |
| | | }) |
| | | </script> |