From a8a697f24469493980dac7c715272ef90015435c Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Sat, 28 May 2022 16:18:49 +0800 Subject: [PATCH] 20220528 --- src/main/java/cc/mrbird/febs/mall/service/ISystemService.java | 4 + src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java | 20 +++++ src/main/java/cc/mrbird/febs/mall/service/ICommonService.java | 2 src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java | 3 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 11 ++ src/main/java/cc/mrbird/febs/mall/controller/AdminSystemController.java | 11 ++ src/main/java/cc/mrbird/febs/mall/service/impl/SystemServiceImpl.java | 6 + src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java | 9 ++ src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java | 4 src/main/resources/templates/febs/views/modules/system/cashOutSetting.html | 89 ++++++++++++++++++++++ src/main/java/cc/mrbird/febs/common/configure/WebMvcConfigure.java | 1 src/main/java/cc/mrbird/febs/mall/dto/CashOutSettingDto.java | 23 +++++ src/main/java/cc/mrbird/febs/mall/vo/CashOutSettingVo.java | 23 +++++ 13 files changed, 204 insertions(+), 2 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/common/configure/WebMvcConfigure.java b/src/main/java/cc/mrbird/febs/common/configure/WebMvcConfigure.java index 1f90dab..bde2591 100644 --- a/src/main/java/cc/mrbird/febs/common/configure/WebMvcConfigure.java +++ b/src/main/java/cc/mrbird/febs/common/configure/WebMvcConfigure.java @@ -23,5 +23,6 @@ registration.excludePathPatterns("/api/goods/**"); registration.excludePathPatterns("/api/pay/**"); registration.excludePathPatterns("/api/news/**"); + registration.excludePathPatterns("/api/member/cashOutSetting"); } } diff --git a/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java b/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java index 9914870..6f4806f 100644 --- a/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java +++ b/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java @@ -12,12 +12,12 @@ INDRECT_BONUS("BONUS_TYPE", "INDRECT_BONUS"), AGENT_BONUS("BONUS_TYPE", "AGENT_BONUS"), THANKFUL_BONUS("BONUS_TYPE", "THANKFUL_BONUS"), - //积分中奖概率 WIN_SCORE("WIN_PROBABILITY", "WIN_SCORE"), //佣金中奖概率 WIN_CASH("WIN_PROBABILITY", "WIN_CASH"), - RANK_BONUS("BONUS_TYPE", "RANK_BONUS"); + RANK_BONUS("BONUS_TYPE", "RANK_BONUS"), + CASHOUT_SETTING("CASHOUT_SET", "CASHOUT_SETTING"); private String type; diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminSystemController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminSystemController.java index 39725ab..03153f4 100644 --- a/src/main/java/cc/mrbird/febs/mall/controller/AdminSystemController.java +++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminSystemController.java @@ -1,6 +1,9 @@ package cc.mrbird.febs.mall.controller; import cc.mrbird.febs.common.entity.FebsResponse; +import cc.mrbird.febs.common.enumerates.DataDictionaryEnum; +import cc.mrbird.febs.mall.dto.CashOutSettingDto; +import cc.mrbird.febs.mall.service.ICommonService; import cc.mrbird.febs.mall.service.ISystemService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -23,9 +26,17 @@ @Autowired private ISystemService systemService; + private final ICommonService commonService; + @PostMapping(value = "/bonusSystemSetting") public FebsResponse bonusSystemSetting(@RequestBody Map<String, Object> map) { systemService.bonusSystemSetting(map); return new FebsResponse().success().message("设置成功"); } + + @PostMapping(value = "/cashOutSetting") + public FebsResponse cashOutSetting(CashOutSettingDto cashOutSettingDto) { + commonService.addDataDic(DataDictionaryEnum.CASHOUT_SETTING.getType(), DataDictionaryEnum.CASHOUT_SETTING.getCode(), cashOutSettingDto, "提现设置"); + return new FebsResponse().success(); + } } diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java index 3d5afc2..ede4051 100644 --- a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java +++ b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java @@ -94,6 +94,15 @@ return new FebsResponse().success().message("转账成功"); } + @ApiOperation(value = "提现规则", notes = "提现规则") + @ApiResponses({ + @ApiResponse(code = 200, message = "success", response = CashOutSettingVo.class) + }) + @GetMapping(value = "/cashOutSetting") + public FebsResponse cashOutSetting() { + return new FebsResponse().success().data(memberService.cashOutSetting()); + } + @ApiOperation(value = "提现") @PostMapping(value = "/withdrawal") public FebsResponse withdrawal(@RequestBody @Validated WithdrawalDto withdrawalDto) { diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java b/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java index 3bc234b..aee528c 100644 --- a/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java +++ b/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java @@ -1,9 +1,17 @@ package cc.mrbird.febs.mall.controller; import cc.mrbird.febs.common.entity.FebsConstant; +import cc.mrbird.febs.common.enumerates.DataDictionaryEnum; import cc.mrbird.febs.common.utils.FebsUtil; +import cc.mrbird.febs.mall.dto.CashOutSettingDto; +import cc.mrbird.febs.mall.dto.ScoreSettingDto; +import cc.mrbird.febs.mall.entity.DataDictionaryCustom; +import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper; +import com.alibaba.fastjson.JSONObject; import lombok.RequiredArgsConstructor; +import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -13,8 +21,20 @@ @RequiredArgsConstructor public class ViewSystemController { + private final DataDictionaryCustomMapper dataDictionaryCustomMapper; + @GetMapping("profitSetting") public String profitSetting() { return FebsUtil.view("modules/system/profitSetting"); } + + @GetMapping("cashOutSetting") + @RequiresPermissions("cashOutSetting:update") + public String cashOutSetting(Model model) { + DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.CASHOUT_SETTING.getType(), DataDictionaryEnum.CASHOUT_SETTING.getCode()); + if (dic != null) { + model.addAttribute("cashout", JSONObject.parseObject(dic.getValue(), CashOutSettingDto.class)); + } + return FebsUtil.view("modules/system/cashOutSetting"); + } } diff --git a/src/main/java/cc/mrbird/febs/mall/dto/CashOutSettingDto.java b/src/main/java/cc/mrbird/febs/mall/dto/CashOutSettingDto.java new file mode 100644 index 0000000..49dd2d8 --- /dev/null +++ b/src/main/java/cc/mrbird/febs/mall/dto/CashOutSettingDto.java @@ -0,0 +1,23 @@ +package cc.mrbird.febs.mall.dto; + +import lombok.Data; +import java.math.BigDecimal; + +/** + * + * + * {"minCashOut":100,"allCashOut":5000,"serviceFee":0.3,"workingDays":1} + * + * + */ +@Data +public class CashOutSettingDto { + //每次提现最小金额 + private BigDecimal minCashOut; + //金额每日累计上限 + private BigDecimal allCashOut; + //提现手续费率 + private BigDecimal serviceFee; + //提现时间 1:工作日 2:每一天 + private Integer workingDays; +} diff --git a/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java b/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java index 333e65f..fe1c8c1 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java +++ b/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java @@ -5,6 +5,7 @@ import cc.mrbird.febs.mall.entity.MallMember; import cc.mrbird.febs.mall.entity.MallMemberPayment; import cc.mrbird.febs.mall.entity.MallShopApply; +import cc.mrbird.febs.mall.vo.CashOutSettingVo; import cc.mrbird.febs.mall.vo.MyCommissionVo; import cc.mrbird.febs.mall.vo.MyTeamVo; import com.baomidou.mybatisplus.extension.service.IService; @@ -58,4 +59,6 @@ MallShopApply findNewestApply(); void addRegisterAppeal(RegisterAppealDto registerAppeal); + + CashOutSettingVo cashOutSetting(); } diff --git a/src/main/java/cc/mrbird/febs/mall/service/ICommonService.java b/src/main/java/cc/mrbird/febs/mall/service/ICommonService.java index 508e71e..74df42d 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/ICommonService.java +++ b/src/main/java/cc/mrbird/febs/mall/service/ICommonService.java @@ -2,6 +2,7 @@ import cc.mrbird.febs.mall.entity.AppVersion; import cc.mrbird.febs.mall.entity.DataDictionaryCustom; +import cc.mrbird.febs.mall.vo.CashOutSettingVo; import java.util.List; @@ -17,4 +18,5 @@ List<AppVersion> findAppVersion(); void addDataDic(String type, String key, Object value, String description); + } diff --git a/src/main/java/cc/mrbird/febs/mall/service/ISystemService.java b/src/main/java/cc/mrbird/febs/mall/service/ISystemService.java index 60f0ed7..0dfa715 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/ISystemService.java +++ b/src/main/java/cc/mrbird/febs/mall/service/ISystemService.java @@ -1,8 +1,12 @@ package cc.mrbird.febs.mall.service; +import cc.mrbird.febs.mall.dto.CashOutSettingDto; + import java.util.Map; public interface ISystemService { void bonusSystemSetting(Map<String, Object> map); + + void cashOutSetting(String type, String code, CashOutSettingDto cashOutSettingDto, String 提现设置); } diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java index 01d5eaf..7d9bedb 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java @@ -2,6 +2,7 @@ import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.enumerates.AgentLevelEnum; +import cc.mrbird.febs.common.enumerates.DataDictionaryEnum; import cc.mrbird.febs.common.enumerates.FlowTypeEnum; import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum; import cc.mrbird.febs.common.exception.FebsException; @@ -527,4 +528,14 @@ mallRegisterAppealMapper.insert(isExist); } + + @Override + public CashOutSettingVo cashOutSetting() { + CashOutSettingVo cashOutSettingVo = new CashOutSettingVo(); + DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.CASHOUT_SETTING.getType(), DataDictionaryEnum.CASHOUT_SETTING.getCode()); + if (dic != null) { + cashOutSettingVo = JSONObject.parseObject(dic.getValue(), CashOutSettingVo.class); + } + return cashOutSettingVo; + } } diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/SystemServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/SystemServiceImpl.java index 111ef5b..c702346 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/SystemServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/SystemServiceImpl.java @@ -1,5 +1,6 @@ package cc.mrbird.febs.mall.service.impl; +import cc.mrbird.febs.mall.dto.CashOutSettingDto; import cc.mrbird.febs.mall.entity.DataDictionaryCustom; import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper; import cc.mrbird.febs.mall.service.ICommonService; @@ -42,4 +43,9 @@ } } } + + @Override + public void cashOutSetting(String type, String code, CashOutSettingDto cashOutSettingDto, String 提现设置) { + + } } diff --git a/src/main/java/cc/mrbird/febs/mall/vo/CashOutSettingVo.java b/src/main/java/cc/mrbird/febs/mall/vo/CashOutSettingVo.java new file mode 100644 index 0000000..ec29d88 --- /dev/null +++ b/src/main/java/cc/mrbird/febs/mall/vo/CashOutSettingVo.java @@ -0,0 +1,23 @@ +package cc.mrbird.febs.mall.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class CashOutSettingVo { + + @ApiModelProperty(value = "每次最小提现金额") + private BigDecimal minCashOut; + + @ApiModelProperty(value = "每日提现上限") + private BigDecimal allCashOut; + + @ApiModelProperty(value = "提现手续费") + private BigDecimal serviceFee; + + @ApiModelProperty(value = "提现时间 1:工作日 2:每一天") + private Integer workingDays; + +} diff --git a/src/main/resources/templates/febs/views/modules/system/cashOutSetting.html b/src/main/resources/templates/febs/views/modules/system/cashOutSetting.html new file mode 100644 index 0000000..f37145b --- /dev/null +++ b/src/main/resources/templates/febs/views/modules/system/cashOutSetting.html @@ -0,0 +1,89 @@ +<div class="layui-fluid layui-anim febs-anim" id="cashout-setting" lay-title="提现设置"> + <div class="layui-row layui-col-space8 febs-container"> + <form class="layui-form" action="" lay-filter="cashout-setting-form"> + <div class="layui-card"> + <div class="layui-card-body"> + <div class="layui-form-item"> + <label class="layui-form-label ">每次最小提现金额:</label> + <div class="layui-input-block"> + <input type="text" name="minCashOut" data-th-id="${cashout.minCashOut}" + lay-verify="number" autocomplete="off" class="layui-input" > + </div> + </div> + <div class="layui-form-item"> + <label class="layui-form-label ">每日提现上限:</label> + <div class="layui-input-block"> + <input type="text" name="allCashOut" data-th-id="${cashout.allCashOut}" + lay-verify="number" autocomplete="off" class="layui-input" > + </div> + </div> + <div class="layui-form-item"> + <label class="layui-form-label ">提现手续费:</label> + <div class="layui-input-block"> + <input type="text" name="serviceFee" data-th-id="${cashout.serviceFee}" + lay-verify="text" autocomplete="off" class="layui-input" > + </div> + </div> + <div class="layui-form-item"> + <label class="layui-form-label">提现时间:</label> + <div class="layui-input-block"> + <input type="radio" name="workingDays" value="1" title="工作日"> + <input type="radio" name="workingDays" value="2" title="每一天"> + </div> + </div> + </div> + + <div class="layui-card-footer"> + <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="cashout-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, + cashout = [[${cashout}]], + validate = layui.validate, + $view = $('#cashout-setting'); + + form.verify(validate); + + initCashoutValue(); + + form.render(); + + function initCashoutValue() { + form.val("cashout-setting-form", { + "minCashOut": cashout.minCashOut, + "allCashOut": cashout.allCashOut, + "serviceFee": cashout.serviceFee, + "workingDays": cashout.workingDays + }); + } + + form.on('submit(cashout-setting-form-submit)', function (data) { + console.log(data); + febs.post(ctx + 'admin/system/cashOutSetting', data.field, function (res) { + febs.alert.success('设置成功'); + }); + window.location.reload(); + return false; + }); + }); +</script> \ No newline at end of file -- Gitblit v1.9.1