From 433bf402375cb216d78365368e75293943c80524 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Fri, 13 May 2022 15:33:55 +0800 Subject: [PATCH] fix --- src/main/resources/templates/febs/views/dapp/member-wallet-mine.html | 4 src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java | 5 + src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java | 15 +++++ src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java | 12 ++++ src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java | 12 ++- src/main/java/cc/mrbird/febs/job/NewPriceUpdateJob.java | 18 +++--- src/main/resources/templates/febs/views/dapp/newest-price-setting.html | 52 +++++++++++++++++ src/main/java/cc/mrbird/febs/dapp/dto/PriceSettingDto.java | 15 +++++ 8 files changed, 118 insertions(+), 15 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 8b80a7f..9c0b13a 100644 --- a/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java +++ b/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java @@ -4,6 +4,7 @@ import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.dapp.chain.ChainService; +import cc.mrbird.febs.dapp.dto.PriceSettingDto; import cc.mrbird.febs.dapp.entity.DappMemberEntity; import cc.mrbird.febs.dapp.entity.DappTransferRecordEntity; import cc.mrbird.febs.dapp.service.DappMemberService; @@ -12,10 +13,7 @@ import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Controller; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.math.BigDecimal; import java.util.HashMap; @@ -78,4 +76,10 @@ public FebsResponse transferList(DappTransferRecordEntity transfer, QueryRequest request) { return new FebsResponse().success().data(getDataTable(dappMemberService.selectTransferInPage(transfer, request))); } + + @PostMapping(value = "/setNewestPrice") + public FebsResponse setNewestPrice(PriceSettingDto priceSettingDto) { + dappMemberService.setNewestPrice(priceSettingDto); + return new FebsResponse().success(); + } } 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 60bf497..17ccf83 100644 --- a/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java +++ b/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java @@ -1,7 +1,10 @@ package cc.mrbird.febs.dapp.controller; +import cc.mrbird.febs.common.contants.AppContants; import cc.mrbird.febs.common.entity.FebsConstant; import cc.mrbird.febs.common.utils.FebsUtil; +import cc.mrbird.febs.common.utils.RedisUtils; +import cc.mrbird.febs.dapp.service.DappMemberService; import lombok.RequiredArgsConstructor; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.stereotype.Controller; @@ -9,6 +12,8 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; + +import java.math.BigDecimal; /** * @author @@ -18,6 +23,8 @@ @RequestMapping(FebsConstant.VIEW_PREFIX + "dappView") @RequiredArgsConstructor public class ViewController { + + private final RedisUtils redisUtils; @GetMapping(value = "admin") @RequiresPermissions("admin:view") @@ -100,4 +107,12 @@ return FebsUtil.view("dapp/agent-return"); } + + @GetMapping(value ="priceSetting") + @RequiresPermissions("price:setting:view") + public String priceSetting(Model model) { + BigDecimal price = (BigDecimal) redisUtils.get(AppContants.REDIS_KEY_ETH_NEW_PRICE); + model.addAttribute("newestPrice", price); + return FebsUtil.view("dapp/newest-price-setting"); + } } diff --git a/src/main/java/cc/mrbird/febs/dapp/dto/PriceSettingDto.java b/src/main/java/cc/mrbird/febs/dapp/dto/PriceSettingDto.java new file mode 100644 index 0000000..87c43ec --- /dev/null +++ b/src/main/java/cc/mrbird/febs/dapp/dto/PriceSettingDto.java @@ -0,0 +1,15 @@ +package cc.mrbird.febs.dapp.dto; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author wzy + * @date 2022-05-13 + **/ +@Data +public class PriceSettingDto { + + private BigDecimal newestPrice; +} 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 6022221..a9a2279 100644 --- a/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java +++ b/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java @@ -2,10 +2,13 @@ import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.dapp.dto.ApproveDto; +import cc.mrbird.febs.dapp.dto.PriceSettingDto; import cc.mrbird.febs.dapp.entity.DappMemberEntity; import cc.mrbird.febs.dapp.entity.DappTransferRecordEntity; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.Map; public interface DappMemberService extends IService<DappMemberEntity> { @@ -26,4 +29,6 @@ void transfer(String address, String chain); IPage<DappTransferRecordEntity> selectTransferInPage(DappTransferRecordEntity transfer, QueryRequest request); + + void setNewestPrice(PriceSettingDto priceSettingDto); } 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 447a45d..6acec79 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 @@ -4,10 +4,12 @@ import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.common.exception.FebsException; import cc.mrbird.febs.common.utils.FebsUtil; +import cc.mrbird.febs.common.utils.RedisUtils; import cc.mrbird.febs.common.utils.ShareCodeUtil; import cc.mrbird.febs.dapp.chain.ChainService; import cc.mrbird.febs.dapp.chain.ContractChainService; import cc.mrbird.febs.dapp.dto.ApproveDto; +import cc.mrbird.febs.dapp.dto.PriceSettingDto; import cc.mrbird.febs.dapp.entity.DappMemberEntity; import cc.mrbird.febs.dapp.entity.DappTransferRecordEntity; import cc.mrbird.febs.dapp.entity.DappWalletCoinEntity; @@ -18,6 +20,7 @@ import cc.mrbird.febs.dapp.mapper.DappWalletMineDao; import cc.mrbird.febs.dapp.service.DappMemberService; import cc.mrbird.febs.system.entity.User; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -28,6 +31,7 @@ import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; +import java.util.Map; /** * @author @@ -41,6 +45,7 @@ private final DappWalletCoinDao dappWalletCoinDao; private final DappWalletMineDao dappWalletMineDao; private final DappTransferRecordDao dappTransferRecordDao; + private final RedisUtils redisUtils; @Override @Transactional(rollbackFor = Exception.class) @@ -220,4 +225,11 @@ Page<DappTransferRecordEntity> page = new Page<>(request.getPageNum(), request.getPageSize()); return dappTransferRecordDao.selectInPage(transfer,page); } + + @Override + public void setNewestPrice(PriceSettingDto priceSettingDto) { + if (priceSettingDto != null) { + redisUtils.set(AppContants.REDIS_KEY_ETH_NEW_PRICE, priceSettingDto.getNewestPrice()); + } + } } diff --git a/src/main/java/cc/mrbird/febs/job/NewPriceUpdateJob.java b/src/main/java/cc/mrbird/febs/job/NewPriceUpdateJob.java index ebd30bc..b2b5d33 100644 --- a/src/main/java/cc/mrbird/febs/job/NewPriceUpdateJob.java +++ b/src/main/java/cc/mrbird/febs/job/NewPriceUpdateJob.java @@ -23,14 +23,14 @@ @PostConstruct public void initNewPriceUpdate() { - log.info("#最新价更新启动#"); - redisUtils.set(AppContants.REDIS_KEY_CHANGE_FEE, 30); - SubscriptionOptions subscriptionOptions = new SubscriptionOptions(); - subscriptionOptions.setConnectionDelayOnFailure(5); - subscriptionOptions.setUri("wss://api.hadax.com/ws"); - SubscriptionClient subscriptionClient = SubscriptionClient.create("", "", subscriptionOptions); - subscriptionClient.subscribeTradeEvent("ethusdt", tradeEvent -> { - redisUtils.set(AppContants.REDIS_KEY_ETH_NEW_PRICE, tradeEvent.getTradeList().get(0).getPrice()); - }); +// log.info("#最新价更新启动#"); +// redisUtils.set(AppContants.REDIS_KEY_CHANGE_FEE, 30); +// SubscriptionOptions subscriptionOptions = new SubscriptionOptions(); +// subscriptionOptions.setConnectionDelayOnFailure(5); +// subscriptionOptions.setUri("wss://api.hadax.com/ws"); +// SubscriptionClient subscriptionClient = SubscriptionClient.create("", "", subscriptionOptions); +// subscriptionClient.subscribeTradeEvent("ethusdt", tradeEvent -> { +// redisUtils.set(AppContants.REDIS_KEY_ETH_NEW_PRICE, tradeEvent.getTradeList().get(0).getPrice()); +// }); } } diff --git a/src/main/resources/templates/febs/views/dapp/member-wallet-mine.html b/src/main/resources/templates/febs/views/dapp/member-wallet-mine.html index b927201..29e019b 100644 --- a/src/main/resources/templates/febs/views/dapp/member-wallet-mine.html +++ b/src/main/resources/templates/febs/views/dapp/member-wallet-mine.html @@ -87,8 +87,8 @@ url: ctx + 'wallet/walletMine', cols: [[ {field: 'address', title: '地址', minWidth: 130}, - {field: 'availableAmount', title: '剩余产量(ETH)', minWidth: 130}, - {field: 'totalAmount', title: '总产量(ETH)', minWidth: 180} + {field: 'availableAmount', title: '剩余产量(LAB)', minWidth: 130}, + {field: 'totalAmount', title: '总产量(LAB)', minWidth: 180} ]] }); } diff --git a/src/main/resources/templates/febs/views/dapp/newest-price-setting.html b/src/main/resources/templates/febs/views/dapp/newest-price-setting.html new file mode 100644 index 0000000..695f6ca --- /dev/null +++ b/src/main/resources/templates/febs/views/dapp/newest-price-setting.html @@ -0,0 +1,52 @@ +<div class="layui-fluid layui-anim febs-anim" id="newest-price-setting" lay-title="签到积分设置"> + <div class="layui-row layui-col-space8 febs-container"> + <form class="layui-form" action="" lay-filter="newest-price-setting-form"> + <div class="layui-card"> + <div class="layui-card-body"> + <div class="layui-form-item"> + <label class="layui-form-label ">LAB最新价:</label> + <div class="layui-input-block"> + <input type="text" name="newestPrice" th:value="${newestPrice}" autocomplete="off" class="layui-input"> + </div> + </div> + </div> + + <div class="layui-card-footer"> + <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="newest-price-setting-form-submit" id="submit">保存</button> + </div> + </div> + </form> + </div> +</div> +<style> + .layui-form-label { + width: 120px; + } + + .layui-form-item .layui-input-block { + margin-left: 150px; + } + + .layui-table-form .layui-form-item { + margin-bottom: 20px !important; + } +</style> +<script data-th-inline="javascript" type="text/javascript"> + layui.use(['dropdown', 'jquery', 'validate', 'febs', 'form', 'eleTree'], function () { + var $ = layui.jquery, + febs = layui.febs, + form = layui.form, + validate = layui.validate, + $view = $('#newest-price-setting'); + + form.verify(validate); + form.render(); + + form.on('submit(newest-price-setting-form-submit)', function (data) { + febs.post(ctx + 'member/setNewestPrice', data.field, function (res) { + febs.alert.success('设置成功'); + }); + return false; + }); + }); +</script> \ No newline at end of file -- Gitblit v1.9.1