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.entity.DappMemberEntity; import cc.mrbird.febs.dapp.entity.DappSystemProfit; import cc.mrbird.febs.dapp.entity.DataDictionaryCustom; import cc.mrbird.febs.dapp.enumerate.DataDictionaryEnum; import cc.mrbird.febs.dapp.mapper.DappMemberDao; import cc.mrbird.febs.dapp.mapper.DappSystemProfitDao; import cc.mrbird.febs.dapp.mapper.DataDictionaryCustomMapper; import cc.mrbird.febs.dapp.service.DappMemberService; import cc.mrbird.febs.dapp.vo.AdminAgentLevelSetInfoVo; import cc.mrbird.febs.dapp.vo.AdminSystemFeeVo; import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.checkerframework.checker.units.qual.A; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; 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 * @date 2022-03-21 **/ @Controller("dappView") @RequestMapping(FebsConstant.VIEW_PREFIX + "dappView") @RequiredArgsConstructor public class ViewController { private final RedisUtils redisUtils; private final DataDictionaryCustomMapper dataDictionaryCustomMapper; private final DappSystemProfitDao dappSystemProfitDao; private final DappMemberDao dappMemberDao; @GetMapping(value = "admin") @RequiresPermissions("admin:view") public String user() { return FebsUtil.view("dapp/user"); } @GetMapping(value = "admin/add") @RequiresPermissions("admin:add") public String addUser() { return FebsUtil.view("dapp/userAdd"); } @GetMapping(value = "admin/update") @RequiresPermissions("admin:update") public String updateUser() { return FebsUtil.view("dapp/userUpdate"); } @GetMapping(value = "admin/simulate") @RequiresPermissions("admin:simulate") public String simulate() { return FebsUtil.view("dapp/simulate-data"); } @GetMapping(value = "admin/simulateResult/{batch}") public String simulateResult(@PathVariable("batch") String batch, Model model) { String url = "https://birdworld.vip/index.html?isDev=true&batchNo=" + batch; model.addAttribute("url", url); return FebsUtil.view("dapp/simulate-result"); } @GetMapping("member") @RequiresPermissions("member:view") public String member() { return FebsUtil.view("dapp/member"); } @GetMapping("memberWithdraw") @RequiresPermissions("withdraw:view") public String memberWithdraw() { return FebsUtil.view("dapp/member-withdraw"); } @GetMapping("walletCoin") @RequiresPermissions("walletCoin:view") public String walletCoin() { return FebsUtil.view("dapp/member-wallet-coin"); } @GetMapping("walletMine") @RequiresPermissions("walletMine:view") public String walletMine() { return FebsUtil.view("dapp/member-wallet-mine"); } @GetMapping("moneyChange") @RequiresPermissions("moneyChange:view") public String moneyChange() { return FebsUtil.view("dapp/money-change-flow"); } @GetMapping("transfer") @RequiresPermissions("transfer:view") public String transfer() { return FebsUtil.view("dapp/member-transter"); } @GetMapping(value = "ratio") @RequiresPermissions("ratio:view") public String returnRatio() { return FebsUtil.view("dapp/return-ratio"); } @GetMapping(value = "agentReturn") @RequiresPermissions("agentReturn:view") public String agentReturn() { 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"); } //费率设置 @GetMapping(value = "systemFeeSet") @RequiresPermissions("fee:setting:view") public String systemFeeSet(Model model) { AdminSystemFeeVo adminSystemFeeVo = new AdminSystemFeeVo(); DataDictionaryCustom rebateDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.REBATE_PERCENT.getType(), DataDictionaryEnum.REBATE_PERCENT.getCode()); if (ObjectUtil.isNotEmpty(rebateDic)) { String value = rebateDic.getValue() == null ? "0" : rebateDic.getValue(); adminSystemFeeVo.setRebatePercent(value); } DataDictionaryCustom memberFeeDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.MEMBER_FEE.getType(), DataDictionaryEnum.MEMBER_FEE.getCode()); if (ObjectUtil.isNotEmpty(memberFeeDic)) { String value = memberFeeDic.getValue() == null ? "0" : memberFeeDic.getValue(); adminSystemFeeVo.setMemberFee(value); } DataDictionaryCustom serviceFeeDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WITHDRAW_SERVICE_FEE.getType(), DataDictionaryEnum.WITHDRAW_SERVICE_FEE.getCode()); if (ObjectUtil.isNotEmpty(serviceFeeDic)) { String value = serviceFeeDic.getValue() == null ? "0" : serviceFeeDic.getValue(); adminSystemFeeVo.setServiceFee(value); } DataDictionaryCustom symbolPrice = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.SYMBOL_PRICE.getType(), DataDictionaryEnum.SYMBOL_PRICE.getCode()); if (ObjectUtil.isNotEmpty(symbolPrice)) { String value = symbolPrice.getValue() == null ? "0" : symbolPrice.getValue(); adminSystemFeeVo.setSymbolPrice(value); } DataDictionaryCustom directProfitDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( DataDictionaryEnum.DIRECT_PROFIT.getType(), DataDictionaryEnum.DIRECT_PROFIT.getCode()); if (ObjectUtil.isNotEmpty(directProfitDic)) { String value = directProfitDic.getValue() == null ? "0" : directProfitDic.getValue(); adminSystemFeeVo.setDirectProfit(value); } model.addAttribute("systemFee", adminSystemFeeVo); return FebsUtil.view("dapp/system-fee-set"); } /** * 动能列表 * @return */ @GetMapping(value = "systemProfit") @RequiresPermissions("systemProfit:view") public String systemProfit() { return FebsUtil.view("dapp/system-profit"); } public static long systemProfitId; /** * 动能列表-流水详情 * @param id * @param model * @return */ @GetMapping("/systemProfitFlow/{id}") @RequiresPermissions("systemProfitFlow:view") public String systemProfitFlow(@PathVariable long id, Model model) { systemProfitId = id; return FebsUtil.view("dapp/system-profit-flow"); } public static long teamInfoMemberId; /** * 用户列表-团队详情 * @param id * @param model * @return */ @GetMapping("/teamInfo/{id}") @RequiresPermissions("teamInfo:view") public String teamInfo(@PathVariable long id, Model model) { teamInfoMemberId = id; return FebsUtil.view("dapp/member-teamInfo"); } public static long memberNodeInfoMemberId; /** * 用户列表-购买记录 * @param id * @param model * @return */ @GetMapping("/memberNodeInfo/{id}") @RequiresPermissions("memberNodeInfo:view") public String memberNodeInfo(@PathVariable long id, Model model) { memberNodeInfoMemberId = id; return FebsUtil.view("dapp/member-node-Info"); } /** * 代理级别-设置代理 * @param id * @param model * @return */ @GetMapping("agentLevel/{id}") @RequiresPermissions("agentLevel:view") public String agentLevelSet(@PathVariable long id, Model model) { DappMemberEntity dappMemberEntity = dappMemberDao.selectById(id); AdminAgentLevelSetInfoVo data = new AdminAgentLevelSetInfoVo(); data.setId(id); model.addAttribute("agentLevelSet", data); return FebsUtil.view("dapp/member-agent-level"); } }