From 277061a61a93fcf737d111e81b5df8f8116b7896 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Thu, 28 May 2020 16:40:29 +0800 Subject: [PATCH] 20200528 代码提交 --- src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberPaymethodDetailVo.java | 46 +++++++ src/main/resources/mapper/member/MemberPaymentMethodDao.xml | 6 + src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberPaymethodDto.java | 52 ++++++++ src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java | 98 ++++++++++++++++ src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberPaymethodDetailListVo.java | 16 ++ src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java | 50 ++++++++ src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberDelPaymethodDto.java | 17 ++ src/main/java/com/xcong/excoin/modules/member/entity/MemberPaymentMethodEntity.java | 56 +++++++++ src/main/java/com/xcong/excoin/modules/member/dao/MemberPaymentMethodDao.java | 8 + src/main/java/com/xcong/excoin/modules/member/service/MemberService.java | 10 + 10 files changed, 359 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java b/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java index b576ce6..29453ea 100644 --- a/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java +++ b/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java @@ -11,13 +11,19 @@ import com.xcong.excoin.common.response.Result; import com.xcong.excoin.modules.member.parameter.dto.MemberAuthenticationDto; +import com.xcong.excoin.modules.member.parameter.dto.MemberDelPaymethodDto; import com.xcong.excoin.modules.member.parameter.dto.MemberForgetPwdDto; +import com.xcong.excoin.modules.member.parameter.dto.MemberPaymethodDto; import com.xcong.excoin.modules.member.parameter.dto.MemberUpdatePwdDto; import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradePwdDto; import com.xcong.excoin.modules.member.parameter.vo.MemberInfoVo; +import com.xcong.excoin.modules.member.parameter.vo.MemberPaymethodDetailListVo; +import com.xcong.excoin.modules.member.parameter.vo.MemberPaymethodDetailVo; import com.xcong.excoin.modules.member.service.MemberService; import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponses; @@ -113,6 +119,50 @@ return memberService.memberTradersPwd(memberForgetPwdDto); } + /** + * 收款方式 + * @return + */ + @ApiOperation(value="新增收款方式", notes="新增收款方式") + @PostMapping(value="/memberAddPaymethod") + public Result memberAddPaymethod(@RequestBody @Valid MemberPaymethodDto memberPaymethodDto) { + return memberService.memberAddPaymethod(memberPaymethodDto); + } + + /** + * 收款方式 + * @return + */ + @ApiOperation(value="删除收款方式", notes="删除收款方式") + @PostMapping(value="/memberDelPaymethod") + public Result memberDelPaymethod(@RequestBody @Valid MemberDelPaymethodDto memberDelPaymethodDto) { + return memberService.memberDelPaymethod(memberDelPaymethodDto); + } + + /** + * 收款方式 + * @return + */ + @ApiOperation(value="一个收款方式的详情", notes="一个收款方式的详情") + @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberPaymethodDetailVo.class)}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "ID", required = true, dataType = "long", paramType="query") + }) + @GetMapping(value = "/memberPaymethodDetail") + public Result memberPaymethodDetail(long id) { + return memberService.memberPaymethodDetail(id); + } + + /** + * 收款方式 + * @return + */ + @ApiOperation(value="收款方式的列表", notes="收款方式的列表") + @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberPaymethodDetailListVo.class)}) + @GetMapping(value = "/memberPaymethodDetailList") + public Result memberPaymethodDetailList() { + return memberService.memberPaymethodDetailList(); + } diff --git a/src/main/java/com/xcong/excoin/modules/member/dao/MemberPaymentMethodDao.java b/src/main/java/com/xcong/excoin/modules/member/dao/MemberPaymentMethodDao.java new file mode 100644 index 0000000..449443d --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/member/dao/MemberPaymentMethodDao.java @@ -0,0 +1,8 @@ +package com.xcong.excoin.modules.member.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.xcong.excoin.modules.member.entity.MemberPaymentMethodEntity; + +public interface MemberPaymentMethodDao extends BaseMapper<MemberPaymentMethodEntity> { + +} diff --git a/src/main/java/com/xcong/excoin/modules/member/entity/MemberPaymentMethodEntity.java b/src/main/java/com/xcong/excoin/modules/member/entity/MemberPaymentMethodEntity.java new file mode 100644 index 0000000..be0e903 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/member/entity/MemberPaymentMethodEntity.java @@ -0,0 +1,56 @@ +package com.xcong.excoin.modules.member.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.xcong.excoin.common.system.base.BaseEntity; + +import lombok.Data; + +/** + * 会员收款方式 + */ +@Data +@TableName("member_payment_method") +public class MemberPaymentMethodEntity extends BaseEntity{ + /** + * + */ + private static final long serialVersionUID = 1L; + + /** + * 用户Id + */ + private Long memberId; + /** + * 姓名 + */ + private String name; + /** + * 账号 + */ + private String account; + /** + * 收款二维码 + */ + private String paymentQrcode; + /** + * 银行 + */ + private String bank; + /** + * 支行 + */ + private String subBank; + /** + * 类型 1-支付宝2-微信3-银行卡 + */ + private String paymentType; + public static final Integer PAYMENTTYPE_ALIPAY = 1; + public static final Integer PAYMENTTYPE_WECHAT = 2; + public static final Integer PAYMENTTYPE_CARD = 3; + + /** + * 默认收款方式 + */ + private String isDefualt; + +} diff --git a/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberDelPaymethodDto.java b/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberDelPaymethodDto.java new file mode 100644 index 0000000..1135c4a --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberDelPaymethodDto.java @@ -0,0 +1,17 @@ +package com.xcong.excoin.modules.member.parameter.dto; + +import javax.validation.constraints.NotNull; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "MemberDelPaymethodDto", description = "删除收款方式参数接收类") +public class MemberDelPaymethodDto { + + @NotNull(message = "收款方式ID不能为空") + @ApiModelProperty(value = "收款方式ID", example = "1") + private Long id; + +} diff --git a/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberPaymethodDto.java b/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberPaymethodDto.java new file mode 100644 index 0000000..f11ebf0 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberPaymethodDto.java @@ -0,0 +1,52 @@ +package com.xcong.excoin.modules.member.parameter.dto; + +import javax.validation.constraints.NotNull; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "MemberPaymethodDto", description = "收款方式参数接收类") +public class MemberPaymethodDto { + /** + * 姓名 + */ + @NotNull(message = "姓名不能为空") + @ApiModelProperty(value = "姓名", example = "姓名") + private String name; + /** + * 账号 + */ + @NotNull(message = "账号不能为空") + @ApiModelProperty(value = "账号", example = "13412341234") + private String account; + /** + * 收款二维码 + */ + @ApiModelProperty(value = "账号", example = "13412341234") + private String paymentQrcode; + /** + * 银行 + */ + @ApiModelProperty(value = "银行", example = "银行") + private String bank; + /** + * 支行 + */ + @ApiModelProperty(value = "支行", example = "支行") + private String subBank; + /** + * 类型 1-支付宝2-微信3-银行卡 + */ + @NotNull(message = "类型不能为空") + @ApiModelProperty(value = "类型 1-支付宝2-微信3-银行卡", example = "1") + private String paymentType; + /** + * 默认收款方式 + */ + @NotNull(message = "默认收款方式不能为空") + @ApiModelProperty(value = "类型 1-是 0-否", example = "1") + private String isDefualt; + +} diff --git a/src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberPaymethodDetailListVo.java b/src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberPaymethodDetailListVo.java new file mode 100644 index 0000000..19f1b91 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberPaymethodDetailListVo.java @@ -0,0 +1,16 @@ +package com.xcong.excoin.modules.member.parameter.vo; + +import java.util.List; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "MemberPaymethodDetailListVo", description = "收款方式列表") +public class MemberPaymethodDetailListVo { + + @ApiModelProperty(value = "收款方式列表") + private List<MemberPaymethodDetailVo> memberPaymethodDetailVo; + +} diff --git a/src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberPaymethodDetailVo.java b/src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberPaymethodDetailVo.java new file mode 100644 index 0000000..e364549 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberPaymethodDetailVo.java @@ -0,0 +1,46 @@ +package com.xcong.excoin.modules.member.parameter.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "MemberPaymethodDetailVo", description = "收款方式信息") +public class MemberPaymethodDetailVo { + /** + * 用户Id + */ + @ApiModelProperty(value = "用户Id") + private Long memberId; + /** + * 姓名 + */ + @ApiModelProperty(value = "姓名") + private String name; + /** + * 账号 + */ + @ApiModelProperty(value = "账号") + private String account; + /** + * 收款二维码 + */ + @ApiModelProperty(value = "收款二维码") + private String paymentQrcode; + /** + * 银行 + */ + @ApiModelProperty(value = "银行") + private String bank; + /** + * 支行 + */ + @ApiModelProperty(value = "支行") + private String subBank; + /** + * 类型 1-支付宝2-微信3-银行卡 + */ + @ApiModelProperty(value = "类型 1-支付宝2-微信3-银行卡") + private String paymentType; + +} diff --git a/src/main/java/com/xcong/excoin/modules/member/service/MemberService.java b/src/main/java/com/xcong/excoin/modules/member/service/MemberService.java index 641e35f..244c586 100644 --- a/src/main/java/com/xcong/excoin/modules/member/service/MemberService.java +++ b/src/main/java/com/xcong/excoin/modules/member/service/MemberService.java @@ -7,7 +7,9 @@ import com.xcong.excoin.common.system.dto.RegisterDto; import com.xcong.excoin.modules.member.entity.MemberEntity; import com.xcong.excoin.modules.member.parameter.dto.MemberAuthenticationDto; +import com.xcong.excoin.modules.member.parameter.dto.MemberDelPaymethodDto; import com.xcong.excoin.modules.member.parameter.dto.MemberForgetPwdDto; +import com.xcong.excoin.modules.member.parameter.dto.MemberPaymethodDto; import com.xcong.excoin.modules.member.parameter.dto.MemberUpdatePwdDto; import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradePwdDto; @@ -32,5 +34,13 @@ public Result memberTradersPwd(@Valid MemberForgetPwdDto memberForgetPwdDto); + public Result memberAddPaymethod(@Valid MemberPaymethodDto memberPaymethodDto); + + public Result memberDelPaymethod(@Valid MemberDelPaymethodDto memberDelPaymethodDto); + + public Result memberPaymethodDetail(long id); + + public Result memberPaymethodDetailList(); + } diff --git a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java index 839e353..a3a428e 100644 --- a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java @@ -15,10 +15,14 @@ import com.xcong.excoin.modules.member.dao.*; import com.xcong.excoin.modules.member.entity.*; import com.xcong.excoin.modules.member.parameter.dto.MemberAuthenticationDto; +import com.xcong.excoin.modules.member.parameter.dto.MemberDelPaymethodDto; import com.xcong.excoin.modules.member.parameter.dto.MemberForgetPwdDto; +import com.xcong.excoin.modules.member.parameter.dto.MemberPaymethodDto; import com.xcong.excoin.modules.member.parameter.dto.MemberUpdatePwdDto; import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradePwdDto; import com.xcong.excoin.modules.member.parameter.vo.MemberInfoVo; +import com.xcong.excoin.modules.member.parameter.vo.MemberPaymethodDetailListVo; +import com.xcong.excoin.modules.member.parameter.vo.MemberPaymethodDetailVo; import com.xcong.excoin.modules.member.service.MemberService; import com.xcong.excoin.utils.MessageSourceUtils; import com.xcong.excoin.utils.RedisUtils; @@ -29,6 +33,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -64,6 +69,9 @@ @Autowired RedisUtils redisUtils; + + @Resource + MemberPaymentMethodDao memberPaymentMethodDao; @Transactional() @Override @@ -328,6 +336,7 @@ } @Override + @Transactional public Result memberUpdateTradePwd(@Valid MemberUpdateTradePwdDto memberUpdateTradePwdDto) { //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); @@ -354,6 +363,7 @@ } @Override + @Transactional public Result memberLogout() { //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); @@ -375,6 +385,7 @@ } @Override + @Transactional public Result memberTradersPwd(@Valid MemberForgetPwdDto memberForgetPwdDto) { //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); @@ -400,5 +411,92 @@ return Result.ok(MessageSourceUtils.getString("member_service_0068")); } + @Override + @Transactional + public Result memberAddPaymethod(@Valid MemberPaymethodDto memberPaymethodDto) { + //获取用户ID + Long memberId = LoginUserUtils.getAppLoginUser().getId(); + MemberEntity member = memberDao.selectById(memberId); + + if(!MemberEntity.CERTIFY_STATUS_Y.equals(member.getCertifyStatus())) { + return Result.fail(MessageSourceUtils.getString("member_service_0077")); + } + String account = memberPaymethodDto.getAccount(); + String bank = memberPaymethodDto.getBank(); + String name = memberPaymethodDto.getName(); + String paymentQrcode = memberPaymethodDto.getPaymentQrcode(); + String paymentType = memberPaymethodDto.getPaymentType(); + String subBank = memberPaymethodDto.getSubBank(); + String isDefualt = memberPaymethodDto.getIsDefualt(); + MemberPaymentMethodEntity memberPaymentMethodEntity = new MemberPaymentMethodEntity(); + memberPaymentMethodEntity.setMemberId(memberId); + memberPaymentMethodEntity.setAccount(account); + memberPaymentMethodEntity.setBank(bank); + memberPaymentMethodEntity.setName(name); + memberPaymentMethodEntity.setPaymentQrcode(paymentQrcode); + memberPaymentMethodEntity.setPaymentType(paymentType); + memberPaymentMethodEntity.setSubBank(subBank); + memberPaymentMethodEntity.setIsDefualt(isDefualt); + memberPaymentMethodDao.insert(memberPaymentMethodEntity); + return Result.ok(MessageSourceUtils.getString("member_service_0024")); + } + + @Override + @Transactional + public Result memberDelPaymethod(@Valid MemberDelPaymethodDto memberDelPaymethodDto) { + //获取用户ID + Long memberId = LoginUserUtils.getAppLoginUser().getId(); + Long id = memberDelPaymethodDto.getId(); + Map<String,Object> columnMap = new HashMap<>(); + columnMap.put("id", id); + columnMap.put("member_id", memberId); + memberPaymentMethodDao.deleteByMap(columnMap); + return Result.ok("success"); + } + + @Override + public Result memberPaymethodDetail(long id) { + //获取用户ID + Long memberId = LoginUserUtils.getAppLoginUser().getId(); + MemberPaymentMethodEntity memberPaymentMethod = memberPaymentMethodDao.selectById(id); + + MemberPaymethodDetailVo memberPaymethodDetailVo = new MemberPaymethodDetailVo(); + memberPaymethodDetailVo.setAccount(memberPaymentMethod.getAccount()); + memberPaymethodDetailVo.setBank(memberPaymentMethod.getBank()); + memberPaymethodDetailVo.setMemberId(memberId); + memberPaymethodDetailVo.setName(memberPaymentMethod.getName()); + memberPaymethodDetailVo.setPaymentQrcode(memberPaymentMethod.getPaymentQrcode()); + memberPaymethodDetailVo.setPaymentType(memberPaymentMethod.getPaymentType()); + memberPaymethodDetailVo.setSubBank(memberPaymentMethod.getSubBank()); + + return Result.ok(memberPaymethodDetailVo); + } + + @Override + public Result memberPaymethodDetailList() { + //获取用户ID + Long memberId = LoginUserUtils.getAppLoginUser().getId(); + Map<String,Object> columnMap = new HashMap<>(); + columnMap.put("member_id", memberId); + List<MemberPaymentMethodEntity> selectByMap = memberPaymentMethodDao.selectByMap(columnMap); + List<MemberPaymethodDetailVo> arrayList = new ArrayList<>(); + if(CollUtil.isNotEmpty(selectByMap)) { + for(MemberPaymentMethodEntity memberPaymentMethodEntity : selectByMap) { + MemberPaymethodDetailVo memberPaymethodDetailVo = new MemberPaymethodDetailVo(); + memberPaymethodDetailVo.setAccount(memberPaymentMethodEntity.getAccount()); + memberPaymethodDetailVo.setBank(memberPaymentMethodEntity.getBank()); + memberPaymethodDetailVo.setMemberId(memberId); + memberPaymethodDetailVo.setName(memberPaymentMethodEntity.getName()); + memberPaymethodDetailVo.setPaymentQrcode(memberPaymentMethodEntity.getPaymentQrcode()); + memberPaymethodDetailVo.setPaymentType(memberPaymentMethodEntity.getPaymentType()); + memberPaymethodDetailVo.setSubBank(memberPaymentMethodEntity.getSubBank()); + arrayList.add(memberPaymethodDetailVo); + } + } + + MemberPaymethodDetailListVo memberPaymethodDetailListVo = new MemberPaymethodDetailListVo(); + memberPaymethodDetailListVo.setMemberPaymethodDetailVo(arrayList); + return Result.ok(memberPaymethodDetailListVo); + } } diff --git a/src/main/resources/mapper/member/MemberPaymentMethodDao.xml b/src/main/resources/mapper/member/MemberPaymentMethodDao.xml new file mode 100644 index 0000000..b6501e2 --- /dev/null +++ b/src/main/resources/mapper/member/MemberPaymentMethodDao.xml @@ -0,0 +1,6 @@ +<?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="com.xcong.excoin.modules.member.dao.MemberPaymentMethodDao"> + + +</mapper> \ No newline at end of file -- Gitblit v1.9.1