From 27c794a7d53992efb8ba6ee2be12c58e10766f89 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Tue, 07 Jul 2020 22:09:36 +0800 Subject: [PATCH] 20200707 代码提交 --- src/main/java/com/xcong/excoin/modules/member/entity/MemberEntity.java | 4 + src/main/java/com/xcong/excoin/modules/member/controller/ViewController.java | 8 ++ src/main/resources/templates/febs/views/modules/member/member.html | 19 ++++ src/main/java/com/xcong/excoin/modules/member/service/IMemberService.java | 2 src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java | 49 ++++++++++++ src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java | 11 ++ src/main/resources/templates/febs/views/modules/member/addCoin.html | 100 +++++++++++++++++++++++++ 7 files changed, 189 insertions(+), 4 deletions(-) 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 c1a018b..44d250a 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,7 +4,6 @@ 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.AgentFriendRelationEntity; import com.xcong.excoin.modules.member.entity.MemberCoinChargeEntity; @@ -41,6 +40,16 @@ private final IMemberService memberService; /** + *会员列表---拨币 + * @return + */ + @PostMapping("addCoinConfirm") + @ControllerEndpoint(operation = "交易设置---确认", exceptionMessage = "设置失败") + public FebsResponse addCoinConfirm(@Valid MemberEntity memberEntity) { + return memberService.addCoinConfirm(memberEntity); + } + + /** * 代理关系---列表 * @return */ 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 a88a9c9..b501da7 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 @@ -27,6 +27,14 @@ private final IMemberService memberService; + @GetMapping("addCoin/{id}") + @RequiresPermissions("addCoin:update") + public String addCoin(@PathVariable long id, Model model) { + MemberEntity data = memberService.selectMemberByid(id); + model.addAttribute("member", data); + return FebsUtil.view("modules/member/addCoin"); + } + /** * 代理关系 * @return diff --git a/src/main/java/com/xcong/excoin/modules/member/entity/MemberEntity.java b/src/main/java/com/xcong/excoin/modules/member/entity/MemberEntity.java index 4afca0c..03fc7df 100644 --- a/src/main/java/com/xcong/excoin/modules/member/entity/MemberEntity.java +++ b/src/main/java/com/xcong/excoin/modules/member/entity/MemberEntity.java @@ -6,6 +6,7 @@ import com.xcong.excoin.common.entity.BaseEntity; import lombok.Data; +import java.math.BigDecimal; import java.util.Date; /** @@ -146,6 +147,9 @@ @TableField(exist = false) private String account; + + @TableField(exist = false) + private BigDecimal coinNumber; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @TableField(exist = false) 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 8e966b0..fc6b27d 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 @@ -63,4 +63,6 @@ IPage<AgentFriendRelationEntity> findAgentInfoListInPage(AgentFriendRelationEntity agentFriendRelationEntity, QueryRequest request); + FebsResponse addCoinConfirm(@Valid MemberEntity memberEntity); + } 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 66030ec..3b89c26 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 @@ -586,4 +586,53 @@ return new FebsResponse().data(selectByMap); } + + @Override + public FebsResponse addCoinConfirm(@Valid MemberEntity memberEntity) { + + Long memberId = memberEntity.getId(); + String walletCode = "USDT"; + BigDecimal amountUsdt = memberEntity.getCoinNumber(); + + MemberEntity selectById = this.baseMapper.selectById(memberId); + if(ObjectUtils.isEmpty(selectById)) { + return new FebsResponse().message("用户已不存在"); + } + //获取币币钱包 + MemberWalletCoinEntity memberWalletCoinEntity = memberWalletCoinMapper.findWalletCoinByMemberIdAndWalletCode(memberId,walletCode); + BigDecimal availableBalance = memberWalletCoinEntity.getAvailableBalance(); + BigDecimal totalBalance = memberWalletCoinEntity.getTotalBalance(); + + memberWalletCoinEntity.setAvailableBalance(availableBalance.add(amountUsdt)); + memberWalletCoinEntity.setTotalBalance(totalBalance.add(amountUsdt)); + // 更新 + memberWalletCoinMapper.updateById(memberWalletCoinEntity); + + //添加币币资金划转历史记录 + MemberAccountMoneyChangeEntity memberAccountMoneyChangeEntity = new MemberAccountMoneyChangeEntity(); + memberAccountMoneyChangeEntity.setContent("转入币币账户"); + memberAccountMoneyChangeEntity.setMemberId(memberId); + memberAccountMoneyChangeEntity.setAmount(amountUsdt); + memberAccountMoneyChangeEntity.setStatus(MemberAccountMoneyChangeEntity.STATUS_SUCCESS_INTEGER); + memberAccountMoneyChangeEntity.setSymbol("USDT"); + memberAccountMoneyChangeEntity.setType(MemberAccountMoneyChangeEntity.TYPE_WALLET_COIN); + memberAccountMoneyChangeEntity.setCreateBy(selectById.getCreateBy()); + memberAccountMoneyChangeEntity.setCreateTime(new Date()); + memberAccountMoneyChangeEntity.setUpdateBy(selectById.getCreateBy()); + memberAccountMoneyChangeEntity.setUpdateTime(new Date()); + + memberAccountMoneyChangeMapper.insert(memberAccountMoneyChangeEntity); + /** + * todo + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm"); + String chargeTime = format.format(memberQuickBuySaleEntity.getChargeTime()); // 将当前时间袼式化为指定的格式 + String usdt = memberQuickBuySaleEntity.getAmountUsdt()+"USDT"; + //发送短信提醒 + String smsContent = "【Excoin】尊敬的用户您好!您于"+chargeTime+"充值"+usdt+"已成功到账,请您及时查收!订单号为:"+memberChargeUsdt.getOrderCode()+"。"; + SmsUtils.hxSmsSend(member.getPhone(), smsContent); + + */ + return new FebsResponse().success(); + } + } diff --git a/src/main/resources/templates/febs/views/modules/member/addCoin.html b/src/main/resources/templates/febs/views/modules/member/addCoin.html new file mode 100644 index 0000000..1d258a6 --- /dev/null +++ b/src/main/resources/templates/febs/views/modules/member/addCoin.html @@ -0,0 +1,100 @@ +<style> + #user-update { + padding: 20px 25px 25px 0; + } + + #user-update .layui-treeSelect .ztree li a, .ztree li span { + margin: 0 0 2px 3px !important; + } + #user-update #data-permission-tree-block { + border: 1px solid #eee; + border-radius: 2px; + padding: 3px 0; + } + #user-add .layui-treeSelect .ztree li span.button.switch { + top: 1px; + left: 3px; + } + +</style> +<div class="layui-fluid" id="user-update"> + <form class="layui-form" action="" lay-filter="user-update-form"> + <div class="layui-form-item febs-hide"> + <label class="layui-form-label febs-form-item-require">用户id:</label> + <div class="layui-input-block"> + <input type="text" name="id" data-th-value="${member.id}"> + </div> + </div> + <div class="layui-form-item"> + <label class="layui-form-label febs-form-item-require">电话:</label> + <div class="layui-input-block"> + <input type="text" name="phone" minlength="4" maxlength="10" data-th-id="${member.phone}" lay-verify="range|phone" + autocomplete="off" class="layui-input" readonly> + </div> + </div> + <div class="layui-form-item"> + <label class="layui-form-label febs-form-item-require">邮箱:</label> + <div class="layui-input-block"> + <input type="text" name="email" minlength="4" maxlength="10" data-th-id="${member.email}" lay-verify="range|email" + autocomplete="off" class="layui-input" readonly> + </div> + </div> + <div class="layui-form-item"> + <label class="layui-form-label febs-form-item-require">邀请码:</label> + <div class="layui-input-block"> + <input type="text" name="inviteId" minlength="4" maxlength="10" data-th-id="${member.inviteId}" lay-verify="range|inviteId" + autocomplete="off" class="layui-input" readonly> + </div> + </div> + <div class="layui-form-item"> + <label class="layui-form-label febs-form-item-require">充币金额:</label> + <div class="layui-input-block"> + <input type="text" name="coinNumber" minlength="4" maxlength="10" data-th-id="${member.coinNumber}" lay-verify="range|coinNumber" + autocomplete="off" class="layui-input" > + </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> + </form> +</div> + +<script data-th-inline="javascript"> + layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree'], function () { + var $ = layui.$, + febs = layui.febs, + layer = layui.layer, + formSelects = layui.formSelects, + treeSelect = layui.treeSelect, + form = layui.form, + eleTree = layui.eleTree, + member = [[${member}]], + $view = $('#user-update'), + validate = layui.validate, + _deptTree; + + form.render(); + + initUserValue(); + + formSelects.render(); + + function initUserValue() { + form.val("user-update-form", { + "phone": member.phone, + "email": member.email, + "coinNumber": member.coinNumber, + "inviteId": member.inviteId + }); + } + + form.on('submit(user-update-form-submit)', function (data) { + febs.post(ctx + 'member/addCoinConfirm', data.field, function () { + layer.closeAll(); + febs.alert.success('拨币成功'); + $('#febs-user').find('#reset').click(); + }); + return false; + }); + }); +</script> \ No newline at end of file diff --git a/src/main/resources/templates/febs/views/modules/member/member.html b/src/main/resources/templates/febs/views/modules/member/member.html index 6eaf04f..b6c9071 100644 --- a/src/main/resources/templates/febs/views/modules/member/member.html +++ b/src/main/resources/templates/febs/views/modules/member/member.html @@ -81,6 +81,17 @@ maxmin: true, }); } + if (layEvent === 'addCoin') { + febs.modal.open( '拨币', 'modules/member/addCoin/' + data.id, { + btn: ['提交', '取消'], + yes: function (index, layero) { + $('#user-update').find('#submit').trigger('click'); + }, + btn2: function () { + layer.closeAll(); + } + }); + } }); @@ -110,9 +121,9 @@ {field: 'accountType', title: '账号类型', templet: function (d) { if (d.accountType === 2) { - return '<span style="color:green;">正常账号</span>' + return '<span style="color:green;">测试账号</span>' } else if (d.accountType === 1) { - return '<span style="color:red;">测试账号</span>' + return '<span style="color:red;">正常账号</span>' }else{ return '' } @@ -146,11 +157,13 @@ templet: function (d) { if (d.certifyStatus === 1) { return '<a lay-event="edit" shiro:hasPermission="user:update">确认</a>' + +'<a lay-event="addCoin" shiro:hasPermission="user:update">拨币</a>' }else if(d.certifyStatus === 2){ return '<a lay-event="see" shiro:hasPermission="user:update">' +'<i class="layui-icon febs-edit-area febs-blue"></i></a>' + +'<a lay-event="addCoin" shiro:hasPermission="user:update">拨币</a>' }else { - return '' + return +'<a lay-event="addCoin" shiro:hasPermission="user:update">拨币</a>' } },minWidth: 200,align:'center'} ]] -- Gitblit v1.9.1