From 1ff3f45074f93f1d9da02c6ddfe31685b92057c3 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Sat, 29 Oct 2022 14:26:08 +0800
Subject: [PATCH] 20221021
---
src/main/resources/templates/febs/views/dapp/member.html | 15 +++++
src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java | 2
src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java | 17 +++++
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java | 2
src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java | 21 +++++++
src/main/resources/templates/febs/views/dapp/payUsdt.html | 84 ++++++++++++++++++++++++++++
src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java | 10 +++
src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java | 3 +
8 files changed, 153 insertions(+), 1 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java b/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java
index d2f20a4..d0b488f 100644
--- a/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java
+++ b/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java
@@ -193,4 +193,14 @@
Map<String, Object> data = getDataTable(dappMemberService.getChargeListInPage(memberCoinChargeEntity, request));
return new FebsResponse().success().data(data);
}
+
+ /**
+ *会员列表---拨币
+ * @return
+ */
+ @PostMapping("payUsdt")
+ @ControllerEndpoint(operation = "会员列表-确认", exceptionMessage = "操作失败")
+ public FebsResponse addCoinConfirm(@Valid DappMemberEntity memberEntity) {
+ return dappMemberService.payUsdt(memberEntity);
+ }
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java b/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
index 22e2350..799d11a 100644
--- a/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
+++ b/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
@@ -5,6 +5,8 @@
import cc.mrbird.febs.common.utils.FebsUtil;
import cc.mrbird.febs.common.utils.RedisUtils;
import cc.mrbird.febs.dapp.entity.AppVersion;
+import cc.mrbird.febs.dapp.entity.DappMemberEntity;
+import cc.mrbird.febs.dapp.mapper.DappMemberDao;
import cc.mrbird.febs.dapp.service.DappMemberService;
import lombok.RequiredArgsConstructor;
import org.apache.shiro.authz.annotation.RequiresPermissions;
@@ -28,6 +30,7 @@
private final RedisUtils redisUtils;
private final DappMemberService dappMemberService;
+ private final DappMemberDao dappMemberDao;
@GetMapping(value = "admin")
@RequiresPermissions("admin:view")
@@ -186,4 +189,18 @@
return FebsUtil.view("dapp/member-charge");
}
+ /**
+ * 会员列表-拨付
+ * @param id
+ * @param model
+ * @return
+ */
+ @GetMapping("payUsdt/{id}")
+ @RequiresPermissions("payUsdt:update")
+ public String payUsdt(@PathVariable long id, Model model) {
+ DappMemberEntity data = dappMemberDao.selectById(id);
+ model.addAttribute("dappMember", data);
+ return FebsUtil.view("dapp/payUsdt");
+ }
+
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java b/src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java
index b7657e7..009a7da 100644
--- a/src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java
+++ b/src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java
@@ -104,4 +104,7 @@
*/
@TableField(exist = false)
private String description;
+
+ @TableField(exist = false)
+ private BigDecimal coinNumber;
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java b/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
index ff3ff85..801f45d 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
@@ -96,4 +96,6 @@
FebsResponse updateAppVersion(AppVersion appVersion);
IPage<MemberCoinChargeEntity> getChargeListInPage(MemberCoinChargeEntity memberCoinChargeEntity, QueryRequest request);
+
+ FebsResponse payUsdt(DappMemberEntity memberEntity);
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
index 553393a..91f6a1c 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -981,6 +981,27 @@
return memberCoinChargeEntityIPage;
}
+ @Override
+ public FebsResponse payUsdt(DappMemberEntity memberEntity) {
+ DappMemberEntity dappMemberEntity = dappMemberDao.selectById(memberEntity.getId());
+ if(ObjectUtil.isEmpty(dappMemberEntity)){
+ return new FebsResponse().fail().message("会员信息不存在");
+ }
+ BigDecimal coinNumber = memberEntity.getCoinNumber() == null ? BigDecimal.ZERO : memberEntity.getCoinNumber();
+ if(BigDecimal.ZERO.compareTo(coinNumber) >= 0){
+ return new FebsResponse().fail().message("请输入正确的金额");
+ }
+ DappWalletCoinEntity dappWalletCoinEntity = dappWalletCoinDao.selectByMemberId(memberEntity.getId());
+ if(ObjectUtil.isEmpty(dappWalletCoinEntity)){
+ return new FebsResponse().fail().message("会员账户不存在");
+ }
+ dappWalletCoinDao.addTotalAndaddAvailableById(dappWalletCoinEntity.getId(),coinNumber);
+
+ DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = new DappAccountMoneyChangeEntity(memberEntity.getId(), coinNumber, "系统拨付", 9);
+ dappAccountMoneyChangeDao.insert(dappAccountMoneyChangeEntity);
+ return new FebsResponse().success().message("操作成功");
+ }
+
public String generateAsaToken(String token) {
RSA rsa = new RSA(null, AppContants.PUBLIC_KEY);
return rsa.encryptBase64(token + "_" + System.currentTimeMillis(), KeyType.PublicKey);
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
index 3efad30..c42167f 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -1099,7 +1099,7 @@
public BigDecimal updatePTFC(Long memberId, BigDecimal totalProfit) {
BigDecimal multiply = totalProfit.multiply(new BigDecimal(0.05));
DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = new DappAccountMoneyChangeEntity(
- memberId, multiply, "系统", 9);
+ memberId, multiply.negate(), "系统", 9);
dappAccountMoneyChangeDao.insert(dappAccountMoneyChangeEntity);
return multiply;
}
diff --git a/src/main/resources/templates/febs/views/dapp/member.html b/src/main/resources/templates/febs/views/dapp/member.html
index 4557db5..b5db59e 100644
--- a/src/main/resources/templates/febs/views/dapp/member.html
+++ b/src/main/resources/templates/febs/views/dapp/member.html
@@ -187,6 +187,17 @@
resetPassword(data.id);
});
}
+ if (layEvent === 'payUsdt') {
+ febs.modal.open('编辑', 'dappView/payUsdt/' + data.id, {
+ btn: ['提交', '取消'],
+ yes: function (index, layero) {
+ $('#payUsdt-update').find('#submit').trigger('click');
+ },
+ btn2: function () {
+ layer.closeAll();
+ }
+ });
+ }
// if (layEvent === 'accountStatus') {
// var text = "是否启用该用户?";
// if (data.accountStatus === 1) {
@@ -327,6 +338,10 @@
return ''
}
},minWidth: 180,align:'center'},
+ {title: '后台拨付',
+ templet: function (d) {
+ return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="payUsdt" shiro:hasPermission="user:update">拨付</button>'
+ },minWidth: 180,align:'center'},
]]
});
}
diff --git a/src/main/resources/templates/febs/views/dapp/payUsdt.html b/src/main/resources/templates/febs/views/dapp/payUsdt.html
new file mode 100644
index 0000000..bf1f45f
--- /dev/null
+++ b/src/main/resources/templates/febs/views/dapp/payUsdt.html
@@ -0,0 +1,84 @@
+<style>
+ #payUsdt-update {
+ padding: 20px 25px 25px 0;
+ }
+
+ #payUsdt-update .layui-treeSelect .ztree li a, .ztree li span {
+ margin: 0 0 2px 3px !important;
+ }
+ #payUsdt-update #data-permission-tree-block {
+ border: 1px solid #eee;
+ border-radius: 2px;
+ padding: 3px 0;
+ }
+ #payUsdt-update .layui-treeSelect .ztree li span.button.switch {
+ top: 1px;
+ left: 3px;
+ }
+ #payUsdt-update img{
+ max-width:100px
+ }
+
+</style>
+<div class="layui-fluid" id="payUsdt-update">
+ <form class="layui-form" action="" lay-filter="payUsdt-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="${dappMember.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="coinNumber" data-th-id="${dappMember.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="payUsdt-update-form-submit" id="submit"></button>
+ </div>
+ </form>
+</div>
+
+<script data-th-inline="javascript">
+ layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree', 'laydate'], function () {
+ var $ = layui.$,
+ febs = layui.febs,
+ layer = layui.layer,
+ formSelects = layui.formSelects,
+ treeSelect = layui.treeSelect,
+ form = layui.form,
+ laydate = layui.laydate,
+ eleTree = layui.eleTree,
+ dappMember = [[${dappMember}]],
+ $view = $('#payUsdt-update'),
+ validate = layui.validate;
+
+ form.render();
+ laydate.render({
+ elem: '#febs-form-group-date'
+ });
+
+ formSelects.render();
+
+
+ initUserValue();
+
+ function initUserValue() {
+ form.val("payUsdt-update-form", {
+ "coinNumber": dappMember.coinNumber,
+ "id": dappMember.id
+ });
+ }
+
+ form.on('submit(payUsdt-update-form-submit)', function (data) {
+ febs.post(ctx + 'member/payUsdt', data.field, function () {
+ layer.closeAll();
+ febs.alert.success('操作成功');
+ $('#febs-member').find('#reset').click();
+ });
+ return false;
+ });
+ });
+</script>
\ No newline at end of file
--
Gitblit v1.9.1