From f61293e97bb2cb21c8f49e88b1ae5a3cbadefb6a Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Mon, 25 Dec 2023 16:40:09 +0800 Subject: [PATCH] 富文本框输入版本变化 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallAppServiceImpl.java | 37 ++++++++++++++++++++++++++++++++++--- 1 files changed, 34 insertions(+), 3 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallAppServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallAppServiceImpl.java index 71d52c0..410ac1e 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallAppServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallAppServiceImpl.java @@ -82,7 +82,7 @@ @Override public FebsResponse appMemberInfo(ApiMallAppMemberInfoDto apiMallAppMemberInfoDto) { - Long memberId = LoginUserUtil.getLoginUser().getId(); +// Long memberId = LoginUserUtil.getLoginUser().getId(); List<ApiMallAppMemberInfoVo> mallMembers = this.baseMapper.selectMemberInfoLikePhone(apiMallAppMemberInfoDto.getPhone()); return new FebsResponse().success().data(mallMembers); } @@ -123,6 +123,7 @@ orderInfo.setIsApp(AppContants.IS_APP_ORDER); orderInfo.setOrderTime(new Date()); orderInfo.setMemberId(addOrderDto.getMemberId()); + orderInfo.setPayResult(2); //会员结算 orderInfo.setStatus(OrderStatusEnum.WAIT_PAY.getValue()); mallOrderInfoMapper.insert(orderInfo); @@ -212,6 +213,7 @@ orderInfo.setIsApp(AppContants.IS_APP_ORDER); orderInfo.setOrderTime(new Date()); orderInfo.setStatus(OrderStatusEnum.WAIT_PAY.getValue()); + orderInfo.setPayResult(2); if (CollUtil.isEmpty(addOrderDto.getItems())) { throw new FebsException("商品明细不能为空。"); } @@ -256,6 +258,7 @@ orderInfo.setIsApp(AppContants.IS_APP_ORDER); orderInfo.setOrderTime(new Date()); orderInfo.setStatus(OrderStatusEnum.WAIT_PAY.getValue()); + orderInfo.setPayResult(2); if (CollUtil.isEmpty(addOrderDto.getItems())) { throw new FebsException("商品明细不能为空。"); } @@ -324,8 +327,19 @@ @Override public FebsResponse wxCodePay(ApiWxCodePayDto wxCodePayDto) { Long orderId = wxCodePayDto.getOrderId(); - MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(orderId); String wxPayCode = wxCodePayDto.getWxPayCode(); + /** + * auth_code 扫码支付付款码 微信付款码规则:18位纯数字,前缀以10、11、12、13、14、15开头 + */ + String regex = "^(10|11|12|13|14|15)\\d{16}$"; + boolean flag = wxPayCode.matches(regex); + if(!flag){ + throw new FebsException("请打开微信付款码!"); + } + MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(orderId); + if(OrderStatusEnum.FINISH.getValue() == (mallOrderInfo.getStatus())){ + throw new FebsException("已支付"); + } mallOrderInfo.setTakeCode(wxPayCode); List<ApiGetOrderOrderItemVo> appOrderItemByOrderId = mallOrderItemMapper.getAppOrderItemByOrderId(orderId); if(CollUtil.isEmpty(appOrderItemByOrderId)){ @@ -333,13 +347,30 @@ }else{ mallOrderInfo.setName(appOrderItemByOrderId.get(0).getGoodsName()); } - mallOrderInfo.setPayResult("2"); +// mallOrderInfo.setPayResult(2); mallOrderInfoMapper.updateById(mallOrderInfo); // 发起付款码支付请求 String payResult = xcxCodePayService.pay(mallOrderInfo); return new FebsResponse().success().message(payResult); } + @Override + public FebsResponse cancelOrder(Long id) { + MallOrderInfo orderInfo = mallOrderInfoMapper.selectById(id); + if (orderInfo == null || AppContants.DEL_FLAG_Y == orderInfo.getDelFlag()) { + throw new FebsException("订单不存在"); + } + + if (OrderStatusEnum.WAIT_PAY.getValue() != orderInfo.getStatus()) { + throw new FebsException("订单不是待付款, 无法取消"); + } + + orderInfo.setStatus(OrderStatusEnum.CANCEL.getValue()); + orderInfo.setCancelType(MallOrderInfo.CANCEL_BY_SELF); + mallOrderInfoMapper.updateById(orderInfo); + return new FebsResponse().success().message("取消成功"); + } + public String generateAsaToken(String token) { RSA rsa = new RSA(null, AppContants.PUBLIC_KEY); return rsa.encryptBase64(token + "_" + System.currentTimeMillis(), KeyType.PublicKey); -- Gitblit v1.9.1