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