xiaoyong931011
2023-08-24 98e8b6427b73efc44dbd9511e8291afea6c188d8
后台修改
11 files modified
1 files added
133 ■■■■■ changed files
src/main/java/cc/mrbird/febs/dapp/controller/AdminMallGoodsController.java 2 ●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java 9 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/controller/ViewAdminMallGoodsController.java 14 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/dto/HlmBasicPerkDto.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/enumerate/DataDictionaryEnum.java 10 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/DappWalletService.java 3 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/impl/AdminMallGoodsService.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java 42 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/vo/CashOutSettingVo.java 16 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/dapp/DappFundFlowDao.xml 6 ●●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/goods/basicPerkSetting.html 17 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/controller/AdminMallGoodsController.java
@@ -447,7 +447,7 @@
                temp.add("快递寄送");
                temp.add("已支付");
                temp.add("待发货");
                temp.add(item.getPayTime());
                temp.add(DateUtil.format(item.getPayTime(),"yyyy-MM-dd HH:mm:ss"));
                List<MallOrderItemVo> mallOrderItemVoList = dappMemberDao.selectMallOrderItemVoByOrderId(item.getId());
                if (CollUtil.isNotEmpty(mallOrderItemVoList)) {
src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java
@@ -116,6 +116,15 @@
        return new FebsResponse().success().data("success");
    }
    @ApiOperation(value = "提现规则", notes = "提现规则")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = CashOutSettingVo.class)
    })
    @GetMapping(value = "/cashOutSetting")
    public FebsResponse cashOutSetting() {
        return new FebsResponse().success().data(dappWalletService.cashOutSetting());
    }
    @ApiOperation(value = "提现", notes = "提现")
    @PostMapping(value = "/withdraw")
    public FebsResponse withdraw(@RequestBody @Valid WithdrawDto withdrawDto) {
src/main/java/cc/mrbird/febs/dapp/controller/ViewAdminMallGoodsController.java
@@ -228,6 +228,20 @@
            String withDrawFee = ObjectUtil.isEmpty(withDrawFeeDic.getValue()) ? "0" : withDrawFeeDic.getValue();
            hlmBasicPerkDto.setWithDrawFee(withDrawFee);
        }
        DataDictionaryCustom minWithdrawDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getCode());
        if (withDrawFeeDic != null) {
            String minWithdraw = ObjectUtil.isEmpty(minWithdrawDic.getValue()) ? "0" : minWithdrawDic.getValue();
            hlmBasicPerkDto.setMinWithdraw(minWithdraw);
        }
        DataDictionaryCustom maxWithdrawDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getCode());
        if (maxWithdrawDic != null) {
            String maxWithdraw = ObjectUtil.isEmpty(maxWithdrawDic.getValue()) ? "0" : maxWithdrawDic.getValue();
            hlmBasicPerkDto.setMaxWithdraw(maxWithdraw);
        }
        model.addAttribute("hlmBasicPerk", hlmBasicPerkDto);
        return FebsUtil.view("goods/basicPerkSetting");
    }
src/main/java/cc/mrbird/febs/dapp/dto/HlmBasicPerkDto.java
@@ -41,4 +41,10 @@
    //提现手续费
    private String withDrawFee;
    //提现手续费
    private String minWithdraw;
    //提现手续费
    private String maxWithdraw;
}
src/main/java/cc/mrbird/febs/dapp/enumerate/DataDictionaryEnum.java
@@ -6,6 +6,16 @@
public enum DataDictionaryEnum {
    /**
     *  今日最大提现金额
     */
    MAX_WITHDRAW_AMOUNT("MAX_WITHDRAW_AMOUNT","MAX_WITHDRAW_AMOUNT"),
    /**
     *  最小提现金额
     */
    MIN_WITHDRAW_AMOUNT("MIN_WITHDRAW_AMOUNT","MIN_WITHDRAW_AMOUNT"),
    /**
     *  团队产生的收益1%奖励积分
     */
    PACKAGE_TEAM_PERK_PERCENT("PACKAGE_TEAM_PERK_PERCENT","PACKAGE_TEAM_PERK_PERCENT"),
src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java
@@ -62,4 +62,6 @@
    List<DappFundFlowEntity> selectListByMemberIdAndTypeAndDate(@Param("memberId")Long memberId, @Param("type")int code, @Param("dateStr") DateTime now);
    List<DappFundFlowEntity> selectListByTypeAndDate(@Param("type")int code, @Param("dateStr") DateTime now);
    BigDecimal selectSumAmountByMemberIdAndType(@Param("memberId") Long memberId,@Param("type")int type);
}
src/main/java/cc/mrbird/febs/dapp/service/DappWalletService.java
@@ -7,6 +7,7 @@
import cc.mrbird.febs.dapp.entity.DappFundFlowEntity;
import cc.mrbird.febs.dapp.entity.DappWalletCoinEntity;
import cc.mrbird.febs.dapp.entity.DappWalletMineEntity;
import cc.mrbird.febs.dapp.vo.CashOutSettingVo;
import cc.mrbird.febs.dapp.vo.DappFundFlowVo;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -60,4 +61,6 @@
    FebsResponse getChangeInPageInPage(ChangeInPageDto changeInPageDto);
    FebsResponse changeInToday();
    CashOutSettingVo cashOutSetting();
}
src/main/java/cc/mrbird/febs/dapp/service/impl/AdminMallGoodsService.java
@@ -253,6 +253,12 @@
        updateDataDic(DataDictionaryEnum.WITHDRAW_FEE.getType(),
                DataDictionaryEnum.WITHDRAW_FEE.getCode(),
                hlmBasicPerkDto.getWithDrawFee());
        updateDataDic(DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getCode(),
                hlmBasicPerkDto.getMinWithdraw());
        updateDataDic(DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getCode(),
                hlmBasicPerkDto.getMaxWithdraw());
    }
    @Override
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -14,6 +14,7 @@
import cc.mrbird.febs.dapp.vo.*;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.RequiredArgsConstructor;
@@ -117,6 +118,26 @@
                DataDictionaryEnum.WITHDRAW_FEE.getCode()
        );
        BigDecimal withdrawFee = new BigDecimal(withdrawFeeDic.getValue());
        //最小提现金额
        DataDictionaryCustom minWithdrawDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getCode()
        );
        BigDecimal minWithdraw = new BigDecimal(minWithdrawDic.getValue()).setScale(2,BigDecimal.ROUND_DOWN);
        if (minWithdraw.compareTo(withdrawDto.getAmount()) > 0) {
            throw new FebsException("最小提现金额为"+minWithdraw);
        }
        //今日最大提现金额
        DataDictionaryCustom maxWithdrawDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getCode()
        );
        BigDecimal maxWithdraw = new BigDecimal(maxWithdrawDic.getValue()).setScale(2,BigDecimal.ROUND_DOWN);
        BigDecimal withdrawToday = dappFundFlowDao.selectSumAmountByMemberIdAndType(member.getId(), FundFlowEnum.WITHDRAW_USDT.getCode());
        withdrawToday = withdrawToday.add(withdrawDto.getAmount());
        if (maxWithdraw.compareTo(withdrawToday) < 0) {
            throw new FebsException("今日提现最多可申请"+maxWithdraw);
        }
        //手续费
        BigDecimal feeAmount = amount.multiply(withdrawFee);
        //减少余额
@@ -798,4 +819,25 @@
        DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = dappAccountMoneyChangeDao.selectNewOneByMemberId(memberId);
        return new FebsResponse().success().data(dappAccountMoneyChangeEntity);
    }
    @Override
    public CashOutSettingVo cashOutSetting() {
        CashOutSettingVo cashOutSettingVo = new CashOutSettingVo();
        //最小提现金额
        DataDictionaryCustom minWithdrawDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getCode()
        );
        BigDecimal minWithdraw = new BigDecimal(minWithdrawDic.getValue()).setScale(2,BigDecimal.ROUND_DOWN);
        cashOutSettingVo.setMinWithdraw(minWithdraw);
        //今日最大提现金额
        DataDictionaryCustom maxWithdrawDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getCode()
        );
        BigDecimal maxWithdraw = new BigDecimal(maxWithdrawDic.getValue()).setScale(2,BigDecimal.ROUND_DOWN);
        cashOutSettingVo.setMaxWithdraw(maxWithdraw);
        return cashOutSettingVo;
    }
}
src/main/java/cc/mrbird/febs/dapp/vo/CashOutSettingVo.java
New file
@@ -0,0 +1,16 @@
package cc.mrbird.febs.dapp.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class CashOutSettingVo {
    @ApiModelProperty(value = "每次最小提现金额")
    private BigDecimal minWithdraw;
    @ApiModelProperty(value = "每日限额")
    private BigDecimal maxWithdraw;
}
src/main/resources/mapper/dapp/DappFundFlowDao.xml
@@ -205,4 +205,10 @@
          and status = 2
        group by member_id
    </select>
    <select id="selectSumAmountByMemberIdAndType" resultType="java.math.BigDecimal">
        select ifnull(sum(amount), 0) from dapp_fund_flow
        where member_id = #{memberId}
          and type = #{type}
    </select>
</mapper>
src/main/resources/templates/febs/views/goods/basicPerkSetting.html
@@ -81,6 +81,21 @@
                            <div class="layui-word-aux">资产包卖出划入底池比例</div>
                        </div>
                    </div>
                    <blockquote class="layui-elem-quote blue-border">提现设置:</blockquote>
                    <div class="layui-form-item">
                        <label class="layui-form-label febs-form-item-require">最小金额:</label>
                        <div class="layui-input-block">
                            <input type="text" name="minWithdraw" lay-verify="required" placeholder="请输入数字" autocomplete="off" class="layui-input" >
                            <div class="layui-word-aux">每次提现最小金额</div>
                        </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="maxWithdraw" lay-verify="required" placeholder="请输入数字" autocomplete="off" class="layui-input" >
                            <div class="layui-word-aux">今日最大提现金额</div>
                        </div>
                    </div>
                    <div class="layui-form-item">
                        <label class="layui-form-label febs-form-item-require">提现手续(%):</label>
                        <div class="layui-input-block">
@@ -130,6 +145,8 @@
        function initHlmBasicPerkValue() {
            form.val("hlm-basic-perk-form", {
                "minWithdraw": hlmBasicPerk.minWithdraw,
                "maxWithdraw": hlmBasicPerk.maxWithdraw,
                "withDrawFee": hlmBasicPerk.withDrawFee,
                "packageSaleToPoorPercent": hlmBasicPerk.packageSaleToPoorPercent,
                "packageScorePrice": hlmBasicPerk.packageScorePrice,