From b30a22e97dfe1a7c098123ec0dbbad1b99b7c885 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Mon, 01 Jun 2020 10:40:47 +0800 Subject: [PATCH] 20200601 代码提交 --- src/main/java/com/xcong/excoin/modules/home/controller/MemberQuickBuySaleController.java | 125 ++++++++++++++++++++++++----------------- 1 files changed, 72 insertions(+), 53 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 ee26bd5..a6dbf07 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,98 +1,117 @@ package com.xcong.excoin.modules.home.controller; -import java.util.Date; +import javax.validation.Valid; -import org.apache.commons.codec.digest.Md5Crypt; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; 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.RequestParam; 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.LoginUserUtils; import com.xcong.excoin.common.response.Result; -import com.xcong.excoin.modules.home.dao.MemberQuickBuySaleDao; +import com.xcong.excoin.modules.home.dto.MemberQuickBuySaleCommitDto; import com.xcong.excoin.modules.home.dto.MemberQuickBuySaleDto; -import com.xcong.excoin.modules.home.entity.MemberQuickBuySaleEntity; +import com.xcong.excoin.modules.home.service.MemberQuickBuySaleService; import com.xcong.excoin.modules.member.entity.MemberEntity; +import cn.hutool.crypto.SecureUtil; import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; @RestController +@Slf4j @RequestMapping(value = "/api/quick") -@Api(value = "USDT快捷买卖类", tags = "USDT快捷买卖类") +@Api(value = "MemberQuickBuySaleController", tags = "USDT快捷买卖类") public class MemberQuickBuySaleController { @Autowired - MemberQuickBuySaleDao memberQuickBuySaleDao; + MemberQuickBuySaleService memberQuickBuySaleService; - @ApiOperation(value = "USDT快速充值", notes = "USDT快速充值") + @ApiOperation(value = "recharge", notes = "USDT快速充值") @RequestMapping(value = "/recharge", method = RequestMethod.POST) - public Result recharge(@RequestBody MemberQuickBuySaleDto memberQuickBuySaleDto, - @UserAuth MemberEntity memberEntity) { + public Result recharge(@RequestBody @Valid MemberQuickBuySaleDto memberQuickBuySaleDto) { + log.info("入参----->{}", memberQuickBuySaleDto); + //获取用户ID + MemberEntity member = LoginUserUtils.getAppLoginUser(); + log.info("查询到的会员----->{}", member); // 验证是否实名认证 - if (MemberEntity.CERTIFY_STATUS_Y.equals(memberEntity.getCertifyStatus())) { + if (MemberEntity.CERTIFY_STATUS_Y.equals(member.getCertifyStatus())) { return Result.fail("请先实名认证"); } String tradePasswordWeb = memberQuickBuySaleDto.getTradePassword(); + // 验证支付密码 - String tradePassword = memberEntity.getTradePassword(); + String tradePassword = member.getTradePassword(); + + log.info("入参交易密码{},用户设置的交易密码{}", tradePasswordWeb,tradePassword); 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)) { + if (!tradePassword.equals(SecureUtil.md5(tradePasswordWeb))) { 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("购买成功,请及时付款"); + return memberQuickBuySaleService.recharge(member, memberQuickBuySaleDto); } - @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 + @ApiOperation(value = "commitPay", notes = "USDT充值支付确认") + @RequestMapping(value = "/commitPay", method = RequestMethod.POST) + public Result commitPay(@RequestBody @Valid MemberQuickBuySaleCommitDto memberQuickBuySaleCommitDto) { + return memberQuickBuySaleService.commitPay(memberQuickBuySaleCommitDto); + } + + @ApiOperation(value = "selectById", notes = "查询单个买卖记录") + @GetMapping(value = "/selectById/{id}") + public Result selectById(@PathVariable(value = "id") Long id) { + return memberQuickBuySaleService.selectById(id); + } + + @ApiOperation(value = "selectAll", notes = "查询用户所有的买卖记录") + @GetMapping(value = "/selectAll") + public Result selectAll(@RequestParam(value = "type") String type) { + return memberQuickBuySaleService.selectAll(type); + } + + @ApiOperation(value = "cancel", notes = "充值撤销") + @GetMapping(value = "/cancel") + public Result cancel(@RequestParam(value = "id") Long id) { + return memberQuickBuySaleService.cancelRecharge(id); + } + + @ApiOperation(value = "sell", notes = "USDT快速卖出") + @RequestMapping(value = "/sell", method = RequestMethod.POST) + public Result sell(@RequestBody @Valid MemberQuickBuySaleDto memberQuickBuySaleDto) { + // 获取当前登录用户 + MemberEntity member = LoginUserUtils.getAppLoginUser(); + if (MemberEntity.CERTIFY_STATUS_Y.equals(member.getCertifyStatus())) { + return Result.fail("请先实名认证"); + } + String tradePasswordWeb = memberQuickBuySaleDto.getTradePassword(); + // 验证支付密码 + String tradePassword = member.getTradePassword(); - return Result.ok("确认成功"); + log.info("入参交易密码{},用户设置的交易密码{}", tradePasswordWeb,tradePassword); + if (StringUtils.isEmpty(tradePassword)) { + return Result.fail("请先配置交易密码"); + } + if (StringUtils.isEmpty(tradePasswordWeb)) { + return Result.fail("请输入交易密码"); + } + // 验证交易密码 + if (!tradePassword.equals(SecureUtil.md5(tradePasswordWeb))) { + return Result.fail("请输入正确的交易密码"); + } + return memberQuickBuySaleService.sell(member,memberQuickBuySaleDto); } - - - } -- Gitblit v1.9.1