From 0b688b0eee75f73af8300bd881a58a858dc8cc47 Mon Sep 17 00:00:00 2001 From: gao <gaoleox@163> Date: Fri, 22 May 2020 14:54:32 +0800 Subject: [PATCH] 快捷买卖接口 --- src/main/java/com/xcong/excoin/modules/home/controller/MemberQuickBuySaleController.java | 83 +++++++++++++++++++++++++++++++++++++++-- 1 files changed, 78 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/home/controller/MemberQuickBuySaleController.java b/src/main/java/com/xcong/excoin/modules/home/controller/MemberQuickBuySaleController.java index d877e07..ee26bd5 100644 --- a/src/main/java/com/xcong/excoin/modules/home/controller/MemberQuickBuySaleController.java +++ b/src/main/java/com/xcong/excoin/modules/home/controller/MemberQuickBuySaleController.java @@ -1,25 +1,98 @@ package com.xcong.excoin.modules.home.controller; +import java.util.Date; + +import org.apache.commons.codec.digest.Md5Crypt; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; +import com.alibaba.druid.util.StringUtils; +import com.xcong.excoin.common.annotations.UserAuth; +import com.xcong.excoin.common.response.Result; +import com.xcong.excoin.modules.home.dao.MemberQuickBuySaleDao; import com.xcong.excoin.modules.home.dto.MemberQuickBuySaleDto; +import com.xcong.excoin.modules.home.entity.MemberQuickBuySaleEntity; +import com.xcong.excoin.modules.member.entity.MemberEntity; +import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; @RestController @RequestMapping(value = "/api/quick") +@Api(value = "USDT快捷买卖类", tags = "USDT快捷买卖类") public class MemberQuickBuySaleController { + @Autowired + MemberQuickBuySaleDao memberQuickBuySaleDao; + @ApiOperation(value = "USDT快速充值", notes = "USDT快速充值") - @ApiImplicitParam(name = "token", value = "token", required = false, dataType = "String", paramType = "body") @RequestMapping(value = "/recharge", method = RequestMethod.POST) - public void recharge(@RequestBody MemberQuickBuySaleDto memberQuickBuySaleDto) { - // 获取当前登录用户 - // String mId = (String) redisUtil.get(token); - + public Result recharge(@RequestBody MemberQuickBuySaleDto memberQuickBuySaleDto, + @UserAuth MemberEntity memberEntity) { + // 验证是否实名认证 + if (MemberEntity.CERTIFY_STATUS_Y.equals(memberEntity.getCertifyStatus())) { + return Result.fail("请先实名认证"); + } + String tradePasswordWeb = memberQuickBuySaleDto.getTradePassword(); + // 验证支付密码 + String tradePassword = memberEntity.getTradePassword(); + if (StringUtils.isEmpty(tradePassword)) { + return Result.fail("请先配置交易密码"); + } + if (StringUtils.isEmpty(tradePasswordWeb)) { + return Result.fail("请输入交易密码"); + } + // System.out.println("交易密码:"+MD5.GetMD5Code(tradePasswordWeb)+" tradePassword = + // "+tradePassword); + // 验证交易密码 + if (!Md5Crypt.apr1Crypt(tradePasswordWeb).equals(tradePassword)) { + return Result.fail("请输入正确的交易密码"); + } + // 生成订单号 + Long timestamp = System.currentTimeMillis(); + int random = (int) (Math.random() * 10); + String chargeNo = String.valueOf(timestamp).substring(2) + random; + // 插入订单表 + MemberQuickBuySaleEntity memberQuickBuySaleEntity = new MemberQuickBuySaleEntity(); + memberQuickBuySaleEntity.setOrderStatus(memberQuickBuySaleEntity.CHARGE_STATUS_CREATE); + memberQuickBuySaleEntity.setMemberId(memberEntity.getId()); + memberQuickBuySaleEntity.setCreateTime(new Date()); + memberQuickBuySaleEntity.setOrderNo(chargeNo); + memberQuickBuySaleEntity.setOrderType("B"); + // 支付码 ID+四位随机数 + int ran = (int) (Math.random() * 10000000); + memberQuickBuySaleEntity.setPaymentCode(ran + ""); + memberQuickBuySaleEntity.setPaymentAccount(memberQuickBuySaleDto.getPaymentAccount()); + memberQuickBuySaleEntity.setPaymentName(memberQuickBuySaleDto.getPaymentName()); + + System.out.println("实体对象:"+memberQuickBuySaleEntity); + memberQuickBuySaleDao.insert(memberQuickBuySaleEntity); + // 返回前台付款方式 +// memberChargeUsdt.setReceiveMethod(payMethodList.get(index)); + return Result.ok("购买成功,请及时付款"); } + + + @ApiOperation(value = "USDT充值支付确认", notes = "USDT充值支付确认") + @ApiImplicitParam(name = "token", value = "token", required = false, dataType = "String", paramType = "body") + @RequestMapping(value = "/commitPay", method = RequestMethod.GET) + public Result commitPay(@PathVariable(value = "id") Long id) { + // 用户提交支付确认 将状态改为付款中 + MemberQuickBuySaleEntity MemberQuickBuySaleEntity = new MemberQuickBuySaleEntity(); + MemberQuickBuySaleEntity.setId(id); + MemberQuickBuySaleEntity.setOrderStatus(MemberQuickBuySaleEntity.CHARGE_STATUS_PAID); + memberQuickBuySaleDao.updateById(MemberQuickBuySaleEntity); + + // TODO dingtalk + + return Result.ok("确认成功"); + } + + + } -- Gitblit v1.9.1