xiaoyong931011
2022-10-20 d2aa5204ddd4159902bbb4b5363d7d502bf47506
20221020
4 files modified
6 files added
207 ■■■■■ changed files
src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java 21 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/dto/ApiAddAddressDto.java 21 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/dto/ApiAddBankDto.java 35 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/entity/DappBank.java 2 ●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/entity/DappMemberAddress.java 15 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberAddressDao.java 12 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java 59 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/vo/ApiAddressInfoVo.java 19 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/dapp/DappMemberAddressDao.xml 17 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java
@@ -201,4 +201,25 @@
        Map<String, Object> data = getDataTable(dappMemberService.getBankListInPage(apiBankListDto));
        return new FebsResponse().success().data(data);
    }
    @ApiOperation(value ="IGT银行卡-新增", notes = "银行卡-新增")
    @PostMapping(value = "/addBank")
    public FebsResponse addBank(@RequestBody ApiAddBankDto addBankDto) {
        return dappMemberService.addBank(addBankDto);
    }
    @ApiOperation(value ="IGT我的钱包", notes = "我的钱包")
    @ApiResponses(value = {
            @ApiResponse(code = 200, message = "success", response = ApiAddressInfoVo.class)
    })
    @PostMapping(value = "/myAddress")
    public FebsResponse myAddress() {
        return dappMemberService.getBankListInPage();
    }
    @ApiOperation(value ="IGT我的钱包-新增", notes = "我的钱包-新增")
    @PostMapping(value = "/addAddress")
    public FebsResponse addAddress(@RequestBody ApiAddAddressDto apiAddAddressDto) {
        return dappMemberService.addAddress(apiAddAddressDto);
    }
}
src/main/java/cc/mrbird/febs/dapp/dto/ApiAddAddressDto.java
New file
@@ -0,0 +1,21 @@
package cc.mrbird.febs.dapp.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "ApiAddAddressDto", description = "新增地址")
public class ApiAddAddressDto {
    @ApiModelProperty(value = "Trc20")
    private String type;
    @ApiModelProperty(value = "地址")
    private String address;
    @ApiModelProperty(value = "资金密码")
    private String transferCode;
}
src/main/java/cc/mrbird/febs/dapp/dto/ApiAddBankDto.java
New file
@@ -0,0 +1,35 @@
package cc.mrbird.febs.dapp.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "ApiAddBankDto", description = "新增银行卡")
public class ApiAddBankDto {
    @ApiModelProperty(value = "银行卡类型 1:个人 2:商务", example = "1")
    private Integer type;//银行卡类型 1:个人 2:商务
    @ApiModelProperty(value = "持卡人姓名")
    private String memberName;//持卡人姓名
    @ApiModelProperty(value = "银行卡号")
    private String cardCode;//银行卡号
    @ApiModelProperty(value = "银行名称")
    private String bankName;//银行名称
    @ApiModelProperty(value = "支行名称")
    private String bankOtherName;//支行名称
    @ApiModelProperty(value = "国家")
    private String country;//国家
    @ApiModelProperty(value = "省/市")
    private String province;//省/市
    @ApiModelProperty(value = "开户地址")
    private String address;//开户地址
    @ApiModelProperty(value = "银行识别码")
    private String identifyCode;//银行识别码
    @ApiModelProperty(value = "swift_bic码")
    private String swiftBicCode;//swift_bic码
    @ApiModelProperty(value = "iban码")
    private String ibanCode;//iban码
    @ApiModelProperty(value = "资金密码")
    private String transferCode;//iban码
}
src/main/java/cc/mrbird/febs/dapp/entity/DappBank.java
@@ -7,7 +7,7 @@
@Data
@TableName("dapp_bank")
public class DappBank extends BaseEntity {
    private Long member_id;//
    private Long memberId;//
    private Integer type;//银行卡类型 1:个人 2:商务
    private String memberName;//持卡人姓名
    private String cardCode;//银行卡号
src/main/java/cc/mrbird/febs/dapp/entity/DappMemberAddress.java
New file
@@ -0,0 +1,15 @@
package cc.mrbird.febs.dapp.entity;
import cc.mrbird.febs.common.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@Data
@TableName("dapp_member_address")
public class DappMemberAddress  extends BaseEntity {
    private Long memberId;//
    private String address;//地址
    private String type;//地址类型
}
src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberAddressDao.java
New file
@@ -0,0 +1,12 @@
package cc.mrbird.febs.dapp.mapper;
import cc.mrbird.febs.dapp.entity.DappMemberAddress;
import cc.mrbird.febs.dapp.vo.ApiAddressInfoVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
public interface DappMemberAddressDao extends BaseMapper<DappMemberAddress> {
    ApiAddressInfoVo selectByMemberId(@Param("memberId")Long id);
}
src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
@@ -77,4 +77,10 @@
    IPage<ApiMyTeammateAmountChangeListVo> findTeammateChangeListInPage(ApiAmountChangeDto apiAmountChangeDto);
    IPage<ApiBankListVo> getBankListInPage(ApiBankListDto apiBankListDto);
    FebsResponse addBank(ApiAddBankDto addBankDto);
    FebsResponse getBankListInPage();
    FebsResponse addAddress(ApiAddAddressDto apiAddAddressDto);
}
src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -65,6 +65,8 @@
    private final PlatformBannerMapper platformBannerMapper;
    private final DappAccountMoneyChangeDao dappAccountMoneyChangeDao;
    private final DappBankDao dappBankDao;
    private final DappMemberService dappMemberService;
    private final DappMemberAddressDao dappMemberAddressDao;
    private final RedisTemplate<String, Object> redisTemplate;
@@ -824,6 +826,63 @@
        return apiBankListVoIPage;
    }
    @Override
    public FebsResponse addBank(ApiAddBankDto addBankDto) {
        DappMemberEntity member = LoginUserUtil.getAppUser();
        if(ObjectUtil.isEmpty(addBankDto.getTransferCode())){
            return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
        }
        //验证资金密码
        Boolean aBoolean = dappMemberService.validateTransferCode(addBankDto.getTransferCode(), member.getId());
        if(!aBoolean){
            return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
        }
        DappBank dappBank = new DappBank();
        dappBank.setMemberId(member.getId());
        dappBank.setType(addBankDto.getType());
        dappBank.setMemberName(addBankDto.getMemberName());
        dappBank.setCardCode(addBankDto.getCardCode());
        dappBank.setBankName(addBankDto.getBankName());
        dappBank.setBankOtherName(addBankDto.getBankOtherName());
        dappBank.setCountry(addBankDto.getCountry());
        dappBank.setProvince(addBankDto.getProvince());
        dappBank.setAddress(addBankDto.getAddress());
        dappBank.setIdentifyCode(addBankDto.getIdentifyCode());
        dappBank.setSwiftBicCode(addBankDto.getSwiftBicCode());
        dappBank.setIbanCode(addBankDto.getIbanCode());
        dappBankDao.insert(dappBank);
        return new FebsResponse().success().message(MessageSourceUtils.getString("Operation_001"));
    }
    @Override
    public FebsResponse getBankListInPage() {
        DappMemberEntity member = LoginUserUtil.getAppUser();
        ApiAddressInfoVo apiAddressInfoVo = dappMemberAddressDao.selectByMemberId(member.getId());
        return new FebsResponse().success().data(apiAddressInfoVo);
    }
    @Override
    public FebsResponse addAddress(ApiAddAddressDto apiAddAddressDto) {
        DappMemberEntity member = LoginUserUtil.getAppUser();
        if(ObjectUtil.isEmpty(apiAddAddressDto.getTransferCode())){
            return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
        }
        //验证资金密码
        Boolean aBoolean = dappMemberService.validateTransferCode(apiAddAddressDto.getTransferCode(), member.getId());
        if(!aBoolean){
            return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
        }
        ApiAddressInfoVo apiAddressInfoVo = dappMemberAddressDao.selectByMemberId(member.getId());
        if(ObjectUtil.isNotEmpty(apiAddressInfoVo)){
            return new FebsResponse().success().message(MessageSourceUtils.getString("Operation_002"));
        }
        DappMemberAddress dappMemberAddress = new DappMemberAddress();
        dappMemberAddress.setType(apiAddAddressDto.getType());
        dappMemberAddress.setAddress(apiAddAddressDto.getAddress());
        dappMemberAddressDao.insert(dappMemberAddress);
        return new FebsResponse().success().message(MessageSourceUtils.getString("Operation_001"));
    }
    public String generateAsaToken(String token) {
        RSA rsa = new RSA(null, AppContants.PUBLIC_KEY);
        return rsa.encryptBase64(token + "_" + System.currentTimeMillis(), KeyType.PublicKey);
src/main/java/cc/mrbird/febs/dapp/vo/ApiAddressInfoVo.java
New file
@@ -0,0 +1,19 @@
package cc.mrbird.febs.dapp.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "ApiAddressInfoVo", description = "我的钱包")
public class ApiAddressInfoVo {
    private Long id;
    @ApiModelProperty(value = "地址")
    private String address;
    @ApiModelProperty(value = "地址类型")
    private String type;
}
src/main/resources/mapper/dapp/DappMemberAddressDao.xml
New file
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cc.mrbird.febs.dapp.mapper.DappMemberAddressDao">
    <select id="selectByMemberId" resultType="cc.mrbird.febs.dapp.vo.ApiAddressInfoVo">
        select
            concat(left(a.address,3), '******', right(a.address,3)) address,
            a.type type,
            a.id id
        from dapp_member_address a
        where a.member_id = #{memberId}
        order by a.create_time desc
        limit 1
    </select>
</mapper>