From 6dcd8368a012b07f0e16308c4e27e023743c5d0a Mon Sep 17 00:00:00 2001 From: SongZhang <2064194730@qq.com> Date: Tue, 27 Aug 2024 14:53:34 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BB=A3=E5=AE=A2=E4=B8=8B=E5=8D=95=20?= =?UTF-8?q?=E7=BB=93=E7=AE=97=E5=8D=95=E6=89=93=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cashierservice/service/PayService.java | 308 ++++++++---------- 1 file changed, 140 insertions(+), 168 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java index 4edc517..9ca6099 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java @@ -133,13 +133,12 @@ public class PayService { private MpShopTableMapper mpShopTableMapper; - public Result queryPayType(String shopId) { return Result.success(CodeEnum.SUCCESS, tbShopPayTypeMapper.selectByShopId(shopId)); } @Transactional(rollbackFor = Exception.class) - public Result scanPay(String orderId, String authCode, String ip, String token,BigDecimal payAmount,BigDecimal discountAmount) { + public Result scanPay(String orderId, String authCode, String ip, String token, BigDecimal payAmount, BigDecimal discountAmount) { if (ObjectUtil.isEmpty(orderId) || ObjectUtil.isEmpty(authCode) || ObjectUtil.isEmpty(ip)) { return Result.fail(CodeEnum.PARAM); } @@ -156,19 +155,18 @@ public class PayService { } - - JSONObject tokeObj= TokenUtil.parseParamFromToken(token); - if(Objects.isNull(tokeObj)){ + JSONObject tokeObj = TokenUtil.parseParamFromToken(token); + if (Objects.isNull(tokeObj)) { return Result.fail(CodeEnum.TOKENTERROR); } - Integer staffId=Integer.valueOf(tokeObj.containsKey("staffId")?tokeObj.getString("staffId"):"0"); + Integer staffId = Integer.valueOf(tokeObj.containsKey("staffId") ? tokeObj.getString("staffId") : "0"); - TbPlussShopStaff staff= tbPlussShopStaffMapper.selectByPrimaryKey(staffId); + TbPlussShopStaff staff = tbPlussShopStaffMapper.selectByPrimaryKey(staffId); - if(ObjectUtil.isNotNull(staff)&&ObjectUtil.isNotNull(payAmount)&&ObjectUtil.isNotNull(discountAmount)&&ObjectUtil.isNotEmpty(payAmount)&&ObjectUtil.isNotEmpty(discountAmount)){ - if("0".equals(staff.getDiscountType())){ - if(N.gt(discountAmount,staff.getMaxDiscountAmount())){ + if (ObjectUtil.isNotNull(staff) && ObjectUtil.isNotNull(payAmount) && ObjectUtil.isNotNull(discountAmount) && ObjectUtil.isNotEmpty(payAmount) && ObjectUtil.isNotEmpty(discountAmount)) { + if ("0".equals(staff.getDiscountType())) { + if (N.gt(discountAmount, staff.getMaxDiscountAmount())) { return Result.fail(CodeEnum.STAFFDISCOUNTAMOUNTHIGHT); } } @@ -202,19 +200,19 @@ public class PayService { String payTypeCode = authCode.substring(0, 2);// 判断收款码 - if(Integer.valueOf(payTypeCode)>=25&&Integer.valueOf(payTypeCode)<=30){ + if (Integer.valueOf(payTypeCode) >= 25 && Integer.valueOf(payTypeCode) <= 30) { payType = "aliPay"; payName = "支付宝支付"; qpay = "scanCode"; - }else if(Integer.valueOf(payTypeCode)>=10&&Integer.valueOf(payTypeCode)<=19){ + } else if (Integer.valueOf(payTypeCode) >= 10 && Integer.valueOf(payTypeCode) <= 19) { payType = "wechatPay"; payName = "微信支付"; qpay = "scanCode"; - }else if("62".equals(payTypeCode)){ + } else if ("62".equals(payTypeCode)) { return Result.fail(CodeEnum.ERRORQR); - }else if("01".equals(payTypeCode)){ + } else if ("01".equals(payTypeCode)) { return Result.fail(CodeEnum.ERRORQR); - }else { + } else { return Result.fail(CodeEnum.ERRORQR); } @@ -227,7 +225,7 @@ public class PayService { if (ObjectUtil.isEmpty(payment) || payment == null) { payment = new TbOrderPayment(); payment.setPayTypeId("ysk"); - payment.setAmount(ObjectUtil.isEmpty(payAmount)?orderInfo.getOrderAmount():payAmount); + payment.setAmount(ObjectUtil.isEmpty(payAmount) ? orderInfo.getOrderAmount() : payAmount); payment.setPaidAmount(orderInfo.getPayAmount()); payment.setHasRefundAmount(BigDecimal.ZERO); payment.setPayName(payName); @@ -247,12 +245,12 @@ public class PayService { } - orderInfo.setPayAmount(ObjectUtil.isEmpty(payAmount)?orderInfo.getOrderAmount():payAmount); - orderInfo.setDiscountAmount(ObjectUtil.isEmpty(discountAmount)?BigDecimal.ZERO:discountAmount); - orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount)?payAmount.divide(orderInfo.getOrderAmount(),2,RoundingMode.HALF_UP).setScale(2,RoundingMode.HALF_DOWN):null); + orderInfo.setPayAmount(ObjectUtil.isEmpty(payAmount) ? orderInfo.getOrderAmount() : payAmount); + orderInfo.setDiscountAmount(ObjectUtil.isEmpty(discountAmount) ? BigDecimal.ZERO : discountAmount); + orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount) ? payAmount.divide(orderInfo.getOrderAmount(), 2, RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_DOWN) : null); orderInfo.setPayType(qpay); orderInfo.setUpdatedAt(System.currentTimeMillis()); - orderInfo.setStaffId(ObjectUtil.isNotNull(staff)?staff.getId():null); + orderInfo.setStaffId(ObjectUtil.isNotNull(staff) ? staff.getId() : null); tbOrderInfoMapper.updateByPrimaryKeySelective(orderInfo); if ("ysk".equals(thirdPayType)) { @@ -295,9 +293,7 @@ public class PayService { producer.putOrderCollect(jsonObject.toJSONString()); - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - producer.printMechine(orderId); - } + producer.printMechine(orderId); // 修改台桌状态 mpShopTableMapper.update(null, new LambdaUpdateWrapper() @@ -323,9 +319,7 @@ public class PayService { .eq(TbShopTable::getQrcode, orderInfo.getTableId()) .set(TbShopTable::getStatus, TableStateEnum.IDLE.getState())); // 打印结算单 - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - producer.printMechine(orderId); - } + producer.printMechine(orderId); return Result.success(CodeEnum.PAYING); } @@ -374,9 +368,7 @@ public class PayService { producer.putOrderCollect(jsonObject.toJSONString()); - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - producer.printMechine(orderId); - } + producer.printMechine(orderId); // 修改台桌状态 mpShopTableMapper.update(null, new LambdaUpdateWrapper() .eq(TbShopTable::getQrcode, orderInfo.getTableId()) @@ -398,9 +390,7 @@ public class PayService { .eq(TbShopTable::getQrcode, orderInfo.getTableId()) .set(TbShopTable::getStatus, TableStateEnum.IDLE.getState())); // 打印结算单 - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - producer.printMechine(orderId); - } + producer.printMechine(orderId); return Result.success(CodeEnum.PAYING); } @@ -501,16 +491,16 @@ public class PayService { } @Transactional(rollbackFor = Exception.class) - public Result accountPay(String orderId, String memberId, String token,String memberAccount,BigDecimal payAmount,BigDecimal discountAmount) { - if (ObjectUtil.isEmpty(orderId) ) { - if(ObjectUtil.isEmpty(memberAccount)){ - if(ObjectUtil.isEmpty(memberId)){ + public Result accountPay(String orderId, String memberId, String token, String memberAccount, BigDecimal payAmount, BigDecimal discountAmount) { + if (ObjectUtil.isEmpty(orderId)) { + if (ObjectUtil.isEmpty(memberAccount)) { + if (ObjectUtil.isEmpty(memberId)) { return Result.fail(CodeEnum.PARAM); } } - if(ObjectUtil.isEmpty(memberId)){ - if(ObjectUtil.isEmpty(memberAccount)){ + if (ObjectUtil.isEmpty(memberId)) { + if (ObjectUtil.isEmpty(memberAccount)) { return Result.fail(CodeEnum.PARAM); } } @@ -529,26 +519,24 @@ public class PayService { } - int count = tbShopPayTypeMapper.countSelectByShopIdAndPayType(orderInfo.getShopId(), "deposit"); if (count < 1) { return Result.fail(CodeEnum.PAYTYPENOEXIST); } - - JSONObject tokeObj= TokenUtil.parseParamFromToken(token); - if(Objects.isNull(tokeObj)){ + JSONObject tokeObj = TokenUtil.parseParamFromToken(token); + if (Objects.isNull(tokeObj)) { return Result.fail(CodeEnum.TOKENTERROR); } - Integer staffId=Integer.valueOf(tokeObj.containsKey("staffId")?tokeObj.getString("staffId"):"0"); + Integer staffId = Integer.valueOf(tokeObj.containsKey("staffId") ? tokeObj.getString("staffId") : "0"); - TbPlussShopStaff staff= tbPlussShopStaffMapper.selectByPrimaryKey(staffId); + TbPlussShopStaff staff = tbPlussShopStaffMapper.selectByPrimaryKey(staffId); - if(ObjectUtil.isNotNull(staff)&&ObjectUtil.isNotNull(payAmount)&&ObjectUtil.isNotNull(discountAmount)&&ObjectUtil.isNotEmpty(payAmount)&&ObjectUtil.isNotEmpty(discountAmount)){ - if("0".equals(staff.getDiscountType())){ - if(N.gt(discountAmount,staff.getMaxDiscountAmount())){ + if (ObjectUtil.isNotNull(staff) && ObjectUtil.isNotNull(payAmount) && ObjectUtil.isNotNull(discountAmount) && ObjectUtil.isNotEmpty(payAmount) && ObjectUtil.isNotEmpty(discountAmount)) { + if ("0".equals(staff.getDiscountType())) { + if (N.gt(discountAmount, staff.getMaxDiscountAmount())) { return Result.fail(CodeEnum.STAFFDISCOUNTAMOUNTHIGHT); } } @@ -556,20 +544,20 @@ public class PayService { } - TbShopUser user =null; + TbShopUser user = null; - if(ObjectUtil.isNotEmpty(memberId)){ - user =tbShopUserMapper.selectByPrimaryKey(Integer.valueOf(memberId)); + if (ObjectUtil.isNotEmpty(memberId)) { + user = tbShopUserMapper.selectByPrimaryKey(Integer.valueOf(memberId)); } - if(ObjectUtil.isNotEmpty(memberAccount)){ + if (ObjectUtil.isNotEmpty(memberAccount)) { - if(!memberAccount.substring(0,2).equals("46")){ + if (!memberAccount.substring(0, 2).equals("46")) { return Result.fail(CodeEnum.ERRORQR); } - user=tbShopUserMapper.selectByShopIdAndDdynamicCode(orderInfo.getShopId(),memberAccount); + user = tbShopUserMapper.selectByShopIdAndDdynamicCode(orderInfo.getShopId(), memberAccount); } @@ -582,8 +570,8 @@ public class PayService { return Result.fail(CodeEnum.MEMBERINSUFFICIENTFUNDS); } - if(ObjectUtil.isEmpty(payAmount)||ObjectUtil.isNull(payAmount)){ - payAmount=orderInfo.getOrderAmount(); + if (ObjectUtil.isEmpty(payAmount) || ObjectUtil.isNull(payAmount)) { + payAmount = orderInfo.getOrderAmount(); } user.setAmount(user.getAmount().subtract(payAmount)); user.setConsumeAmount(user.getConsumeAmount().add(payAmount)); @@ -603,10 +591,10 @@ public class PayService { tbShopUserFlowMapper.insert(flow); - orderInfo.setPayAmount(ObjectUtil.isEmpty(payAmount)?orderInfo.getOrderAmount():payAmount); - orderInfo.setDiscountAmount(ObjectUtil.isEmpty(discountAmount)?BigDecimal.ZERO:discountAmount); - orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount)?payAmount.divide(orderInfo.getOrderAmount(),2,RoundingMode.HALF_UP).setScale(2,RoundingMode.HALF_DOWN):null); - orderInfo.setStaffId(ObjectUtil.isEmpty(staff)?null:staff.getId()); + orderInfo.setPayAmount(ObjectUtil.isEmpty(payAmount) ? orderInfo.getOrderAmount() : payAmount); + orderInfo.setDiscountAmount(ObjectUtil.isEmpty(discountAmount) ? BigDecimal.ZERO : discountAmount); + orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount) ? payAmount.divide(orderInfo.getOrderAmount(), 2, RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_DOWN) : null); + orderInfo.setStaffId(ObjectUtil.isEmpty(staff) ? null : staff.getId()); orderInfo.setUserId(user.getUserId()); orderInfo.setMemberId(user.getId().toString()); orderInfo.setPayType("deposit"); @@ -630,9 +618,7 @@ public class PayService { producer.putOrderCollect(jsonObject.toJSONString()); - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - producer.printMechine(orderId); - } + producer.printMechine(orderId); // 发送库存记录mq消息 JSONObject mqData = new JSONObject(); @@ -644,7 +630,7 @@ public class PayService { } @Transactional(rollbackFor = Exception.class) - public Result memberScanPay(String orderId, String memberCode, String token,BigDecimal payAmount,BigDecimal discountAmount) { + public Result memberScanPay(String orderId, String memberCode, String token, BigDecimal payAmount, BigDecimal discountAmount) { if (ObjectUtil.isEmpty(orderId) || ObjectUtil.isEmpty(memberCode)) { return Result.fail(CodeEnum.PARAM); } @@ -667,18 +653,18 @@ public class PayService { } - JSONObject tokeObj= TokenUtil.parseParamFromToken(token); - if(Objects.isNull(tokeObj)){ + JSONObject tokeObj = TokenUtil.parseParamFromToken(token); + if (Objects.isNull(tokeObj)) { return Result.fail(CodeEnum.TOKENTERROR); } - Integer staffId=Integer.valueOf(tokeObj.containsKey("staffId")?tokeObj.getString("staffId"):"0"); + Integer staffId = Integer.valueOf(tokeObj.containsKey("staffId") ? tokeObj.getString("staffId") : "0"); - TbPlussShopStaff staff= tbPlussShopStaffMapper.selectByPrimaryKey(staffId); + TbPlussShopStaff staff = tbPlussShopStaffMapper.selectByPrimaryKey(staffId); - if(ObjectUtil.isNotNull(staff)&&ObjectUtil.isNotNull(payAmount)&&ObjectUtil.isNotNull(discountAmount)&&ObjectUtil.isNotEmpty(payAmount)&&ObjectUtil.isNotEmpty(discountAmount)){ - if("0".equals(staff.getDiscountType())){ - if(N.gt(discountAmount,staff.getMaxDiscountAmount())){ + if (ObjectUtil.isNotNull(staff) && ObjectUtil.isNotNull(payAmount) && ObjectUtil.isNotNull(discountAmount) && ObjectUtil.isNotEmpty(payAmount) && ObjectUtil.isNotEmpty(discountAmount)) { + if ("0".equals(staff.getDiscountType())) { + if (N.gt(discountAmount, staff.getMaxDiscountAmount())) { return Result.fail(CodeEnum.STAFFDISCOUNTAMOUNTHIGHT); } } @@ -686,7 +672,6 @@ public class PayService { } - TbUserInfo tbUserInfo = tbUserInfoMapper.selectByCardNo(memberCode); if (ObjectUtil.isEmpty(tbUserInfo)) { return Result.fail(ACCOUNTEIXST); @@ -719,10 +704,10 @@ public class PayService { flow.setCreateTime(new Date()); tbShopUserFlowMapper.insert(flow); - orderInfo.setPayAmount(ObjectUtil.isEmpty(payAmount)?orderInfo.getOrderAmount():payAmount); - orderInfo.setDiscountAmount(ObjectUtil.isEmpty(discountAmount)?BigDecimal.ZERO:discountAmount); - orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount)?payAmount.divide(orderInfo.getOrderAmount(),2,RoundingMode.HALF_UP).setScale(2,RoundingMode.HALF_DOWN):null); - orderInfo.setStaffId(ObjectUtil.isEmpty(staff)?null:staff.getId()); + orderInfo.setPayAmount(ObjectUtil.isEmpty(payAmount) ? orderInfo.getOrderAmount() : payAmount); + orderInfo.setDiscountAmount(ObjectUtil.isEmpty(discountAmount) ? BigDecimal.ZERO : discountAmount); + orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount) ? payAmount.divide(orderInfo.getOrderAmount(), 2, RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_DOWN) : null); + orderInfo.setStaffId(ObjectUtil.isEmpty(staff) ? null : staff.getId()); orderInfo.setMemberId(user.getUserId()); orderInfo.setPayType("deposit"); orderInfo.setStatus("closed"); @@ -745,9 +730,7 @@ public class PayService { producer.putOrderCollect(jsonObject.toJSONString()); - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - producer.printMechine(orderId); - } + producer.printMechine(orderId); // 发送库存记录mq消息 JSONObject mqData = new JSONObject(); @@ -812,8 +795,8 @@ public class PayService { if (payAmount != null && discountAmount != null) { orderInfo.setPayAmount(payAmount); orderInfo.setDiscountAmount(discountAmount); - orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount)?payAmount.divide(orderInfo.getOrderAmount(),2,RoundingMode.HALF_UP).setScale(2,RoundingMode.HALF_DOWN):null); - }else { + orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount) ? payAmount.divide(orderInfo.getOrderAmount(), 2, RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_DOWN) : null); + } else { orderInfo.setPayAmount(orderInfo.getOrderAmount()); } @@ -834,9 +817,7 @@ public class PayService { producer.putOrderCollect(jsonObject.toJSONString()); - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - producer.printMechine(String.valueOf(orderId)); - } + producer.printMechine(String.valueOf(orderId)); // 发送库存记录mq消息 JSONObject mqData = new JSONObject(); @@ -852,7 +833,7 @@ public class PayService { } @Transactional(rollbackFor = Exception.class) - public Result cashPay(String orderId, String token,BigDecimal payAmount,BigDecimal discountAmount) { + public Result cashPay(String orderId, String token, BigDecimal payAmount, BigDecimal discountAmount) { if (ObjectUtil.isEmpty(orderId)) { return Result.fail(CodeEnum.PARAM); } @@ -869,18 +850,18 @@ public class PayService { } - JSONObject tokeObj= TokenUtil.parseParamFromToken(token); - if(Objects.isNull(tokeObj)){ + JSONObject tokeObj = TokenUtil.parseParamFromToken(token); + if (Objects.isNull(tokeObj)) { return Result.fail(CodeEnum.TOKENTERROR); } - Integer staffId=Integer.valueOf(tokeObj.containsKey("staffId")?tokeObj.getString("staffId"):"0"); + Integer staffId = Integer.valueOf(tokeObj.containsKey("staffId") ? tokeObj.getString("staffId") : "0"); - TbPlussShopStaff staff= tbPlussShopStaffMapper.selectByPrimaryKey(staffId); + TbPlussShopStaff staff = tbPlussShopStaffMapper.selectByPrimaryKey(staffId); - if(ObjectUtil.isNotNull(staff)&&ObjectUtil.isNotNull(payAmount)&&ObjectUtil.isNotNull(discountAmount)&&ObjectUtil.isNotEmpty(payAmount)&&ObjectUtil.isNotEmpty(discountAmount)){ - if("0".equals(staff.getDiscountType())){ - if(N.gt(discountAmount,staff.getMaxDiscountAmount())){ + if (ObjectUtil.isNotNull(staff) && ObjectUtil.isNotNull(payAmount) && ObjectUtil.isNotNull(discountAmount) && ObjectUtil.isNotEmpty(payAmount) && ObjectUtil.isNotEmpty(discountAmount)) { + if ("0".equals(staff.getDiscountType())) { + if (N.gt(discountAmount, staff.getMaxDiscountAmount())) { return Result.fail(CodeEnum.STAFFDISCOUNTAMOUNTHIGHT); } } @@ -893,10 +874,10 @@ public class PayService { } - orderInfo.setPayAmount(ObjectUtil.isEmpty(payAmount)?orderInfo.getOrderAmount():payAmount); - orderInfo.setDiscountAmount(ObjectUtil.isEmpty(discountAmount)?BigDecimal.ZERO:discountAmount); - orderInfo.setStaffId(ObjectUtil.isEmpty(staff)?null:staff.getId()); - orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount)?payAmount.divide(orderInfo.getOrderAmount(),2,RoundingMode.HALF_UP).setScale(2,RoundingMode.HALF_DOWN):null); + orderInfo.setPayAmount(ObjectUtil.isEmpty(payAmount) ? orderInfo.getOrderAmount() : payAmount); + orderInfo.setDiscountAmount(ObjectUtil.isEmpty(discountAmount) ? BigDecimal.ZERO : discountAmount); + orderInfo.setStaffId(ObjectUtil.isEmpty(staff) ? null : staff.getId()); + orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount) ? payAmount.divide(orderInfo.getOrderAmount(), 2, RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_DOWN) : null); orderInfo.setPayType("cash"); orderInfo.setStatus("closed"); orderInfo.setPayOrderNo("cash".concat(SnowFlakeUtil.generateOrderNo())); @@ -915,9 +896,7 @@ public class PayService { producer.putOrderCollect(jsonObject.toJSONString()); - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - producer.printMechine(orderId); - } + producer.printMechine(orderId); // 发送库存记录mq消息 JSONObject mqData = new JSONObject(); @@ -937,7 +916,7 @@ public class PayService { } @Transactional(rollbackFor = Exception.class) - public Result bankPay(String orderId, String token,BigDecimal payAmount,BigDecimal discountAmount) { + public Result bankPay(String orderId, String token, BigDecimal payAmount, BigDecimal discountAmount) { if (ObjectUtil.isEmpty(orderId)) { return Result.fail(CodeEnum.PARAM); } @@ -959,18 +938,18 @@ public class PayService { return Result.fail(CodeEnum.PAYTYPENOEXIST); } - JSONObject tokeObj= TokenUtil.parseParamFromToken(token); - if(Objects.isNull(tokeObj)){ + JSONObject tokeObj = TokenUtil.parseParamFromToken(token); + if (Objects.isNull(tokeObj)) { return Result.fail(CodeEnum.TOKENTERROR); } - Integer staffId=Integer.valueOf(tokeObj.containsKey("staffId")?tokeObj.getString("staffId"):"0"); + Integer staffId = Integer.valueOf(tokeObj.containsKey("staffId") ? tokeObj.getString("staffId") : "0"); - TbPlussShopStaff staff= tbPlussShopStaffMapper.selectByPrimaryKey(staffId); + TbPlussShopStaff staff = tbPlussShopStaffMapper.selectByPrimaryKey(staffId); - if(ObjectUtil.isNotNull(staff)&&ObjectUtil.isNotNull(payAmount)&&ObjectUtil.isNotNull(discountAmount)&&ObjectUtil.isNotEmpty(payAmount)&&ObjectUtil.isNotEmpty(discountAmount)){ - if("0".equals(staff.getDiscountType())){ - if(N.gt(discountAmount,staff.getMaxDiscountAmount())){ + if (ObjectUtil.isNotNull(staff) && ObjectUtil.isNotNull(payAmount) && ObjectUtil.isNotNull(discountAmount) && ObjectUtil.isNotEmpty(payAmount) && ObjectUtil.isNotEmpty(discountAmount)) { + if ("0".equals(staff.getDiscountType())) { + if (N.gt(discountAmount, staff.getMaxDiscountAmount())) { return Result.fail(CodeEnum.STAFFDISCOUNTAMOUNTHIGHT); } } @@ -978,10 +957,10 @@ public class PayService { } - orderInfo.setPayAmount(ObjectUtil.isEmpty(payAmount)?orderInfo.getOrderAmount():payAmount); - orderInfo.setDiscountAmount(ObjectUtil.isEmpty(discountAmount)?BigDecimal.ZERO:discountAmount); - orderInfo.setStaffId(ObjectUtil.isEmpty(staff)?null:staff.getId()); - orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount)?payAmount.divide(orderInfo.getOrderAmount(),2,RoundingMode.HALF_UP).setScale(2,RoundingMode.HALF_DOWN):null); + orderInfo.setPayAmount(ObjectUtil.isEmpty(payAmount) ? orderInfo.getOrderAmount() : payAmount); + orderInfo.setDiscountAmount(ObjectUtil.isEmpty(discountAmount) ? BigDecimal.ZERO : discountAmount); + orderInfo.setStaffId(ObjectUtil.isEmpty(staff) ? null : staff.getId()); + orderInfo.setDiscountRatio(ObjectUtil.isNotEmpty(payAmount) ? payAmount.divide(orderInfo.getOrderAmount(), 2, RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_DOWN) : null); orderInfo.setPayType("cash"); orderInfo.setStatus("closed"); orderInfo.setPayOrderNo("cash".concat(SnowFlakeUtil.generateOrderNo())); @@ -999,9 +978,7 @@ public class PayService { producer.putOrderCollect(jsonObject.toJSONString()); - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - producer.printMechine(orderId); - } + producer.printMechine(orderId); // 发送库存记录mq消息 JSONObject mqData = new JSONObject(); @@ -1035,12 +1012,11 @@ public class PayService { } - - TbShopInfo shopInfo=tbShopInfoMapper.selectByPrimaryKey(Integer.valueOf(orderInfo.getShopId())); + TbShopInfo shopInfo = tbShopInfoMapper.selectByPrimaryKey(Integer.valueOf(orderInfo.getShopId())); if ("1".equals(shopInfo.getIsReturn())) { - if (ObjectUtil.isEmpty(pwd) ) { + if (ObjectUtil.isEmpty(pwd)) { return Result.fail(CodeEnum.PARAM); } String accountId = TokenUtil.parseParamFromToken(token).getString("accountId"); @@ -1117,8 +1093,8 @@ public class PayService { saleAmount = saleAmount.add(it.getPrice()); payAmount = payAmount.add(it.getPriceAmount().divide(new BigDecimal(it.getNum()), 2, RoundingMode.DOWN) .multiply(new BigDecimal(map1.get(it.getId())))); - if(ObjectUtil.isNotEmpty(orderInfo.getDiscountRatio())&&ObjectUtil.isNotNull(orderInfo.getDiscountRatio())){ - payAmount=payAmount.multiply(orderInfo.getDiscountRatio()).setScale(2,BigDecimal.ROUND_DOWN); + if (ObjectUtil.isNotEmpty(orderInfo.getDiscountRatio()) && ObjectUtil.isNotNull(orderInfo.getDiscountRatio())) { + payAmount = payAmount.multiply(orderInfo.getDiscountRatio()).setScale(2, BigDecimal.ROUND_DOWN); } // payAmount=payAmount.add(it.getPriceAmount()); packAMount = packAMount.add(it.getPackAmount().divide(new BigDecimal(it.getNum()), 2, RoundingMode.DOWN).multiply(new BigDecimal(map1.get(it.getId())))); @@ -1179,12 +1155,12 @@ public class PayService { } } else { - TbOrderPayment payment= tbOrderPaymentMapper.selectByOrderId(orderId+""); + TbOrderPayment payment = tbOrderPaymentMapper.selectByOrderId(orderId + ""); PublicResp publicResp = thirdPayService.returnOrder(url, thirdApply.getAppId(), newOrderInfo.getOrderNo(), payment.getTradeNumber(), null, "订单退款", newOrderInfo.getPayAmount().setScale(2, RoundingMode.DOWN).multiply(new BigDecimal(100)).longValue(), callBack, null, thirdApply.getAppToken()); if (ObjectUtil.isNotNull(publicResp) && ObjectUtil.isNotEmpty(publicResp)) { if ("000000".equals(publicResp.getCode())) { - if (!"SUCCESS".equals(publicResp.getObjData().getState())&&!publicResp.getObjData().getState().equals("ING")) { + if (!"SUCCESS".equals(publicResp.getObjData().getState()) && !publicResp.getObjData().getState().equals("ING")) { MsgException.check(true, "退款渠道调用失败"); } } else { @@ -1194,18 +1170,18 @@ public class PayService { } - }else if("deposit".equals(payType)){ - TbShopUser user= tbShopUserMapper.selectByUserIdAndShopId(orderInfo.getUserId(),orderInfo.getShopId()); - if(ObjectUtil.isNull(user)||ObjectUtil.isEmpty(user)){ - user=tbShopUserMapper.selectByPrimaryKey(Integer.valueOf(orderInfo.getMemberId())); + } else if ("deposit".equals(payType)) { + TbShopUser user = tbShopUserMapper.selectByUserIdAndShopId(orderInfo.getUserId(), orderInfo.getShopId()); + if (ObjectUtil.isNull(user) || ObjectUtil.isEmpty(user)) { + user = tbShopUserMapper.selectByPrimaryKey(Integer.valueOf(orderInfo.getMemberId())); } - if(ObjectUtil.isNull(user)||ObjectUtil.isEmpty(user)){ + if (ObjectUtil.isNull(user) || ObjectUtil.isEmpty(user)) { return Result.fail(ACCOUNTEIXST); } - if(!user.getShopId().equals(orderInfo.getShopId())){ + if (!user.getShopId().equals(orderInfo.getShopId())) { return Result.fail(ACCOUNTEIXST); } @@ -1213,8 +1189,8 @@ public class PayService { newOrderInfo.setMemberId(orderInfo.getMemberId()); newOrderInfo.setUserId(orderInfo.getUserId()); - user.setAmount(user.getAmount().add( newOrderInfo.getPayAmount().setScale(2, RoundingMode.DOWN))); - user.setConsumeAmount(user.getConsumeAmount().subtract( newOrderInfo.getPayAmount().setScale(2, RoundingMode.DOWN))); + user.setAmount(user.getAmount().add(newOrderInfo.getPayAmount().setScale(2, RoundingMode.DOWN))); + user.setConsumeAmount(user.getConsumeAmount().subtract(newOrderInfo.getPayAmount().setScale(2, RoundingMode.DOWN))); user.setUpdatedAt(System.currentTimeMillis()); tbShopUserMapper.updateByPrimaryKeySelective(user); @@ -1266,16 +1242,12 @@ public class PayService { // jsonObject.put("data",new ReturnWTZInfo(orderId+"",newOrderInfo.getPayAmount(),details)); producer.putOrderCollect(jsonObject.toJSONString()); - if (StrUtil.isNotBlank(orderInfo.getTableId())) { - producer.printMechine(String.valueOf(orderId)); - } - - + producer.printMechine(String.valueOf(orderId)); //修改耗材数据 - JSONObject jsonObject1=new JSONObject(); - jsonObject1.put("orderId",newOrderInfo.getId()); - jsonObject1.put("type","delete"); + JSONObject jsonObject1 = new JSONObject(); + jsonObject1.put("orderId", newOrderInfo.getId()); + jsonObject1.put("type", "delete"); producer.cons(jsonObject1.toString()); // 更新商品库存 @@ -1348,7 +1320,7 @@ public class PayService { String orderNo = SnowFlakeUtil.generateOrderNo(); - TbQuickPay tbQuickPay = new TbQuickPay(null,Integer.valueOf(staffId), Integer.valueOf(shopId), orderNo, payType, payAmount, "1", null, new Date(), null); + TbQuickPay tbQuickPay = new TbQuickPay(null, Integer.valueOf(staffId), Integer.valueOf(shopId), orderNo, payType, payAmount, "1", null, new Date(), null); if ("cash".equals(payType)) { tbQuickPay.setStatus("0"); @@ -1359,7 +1331,7 @@ public class PayService { JSONObject jsonObject = new JSONObject(); jsonObject.put("token", token); jsonObject.put("type", "quick"); - jsonObject.put("amount",tbQuickPay.getAmount()); + jsonObject.put("amount", tbQuickPay.getAmount()); producer.putOrderCollect(jsonObject.toJSONString()); return Result.success(CodeEnum.SUCCESS, tbQuickPay); @@ -1395,7 +1367,7 @@ public class PayService { String status = ObjectUtil.isNotEmpty(object.getJSONObject("data")) ? object.getJSONObject("data").getString("status") : null; if (ObjectUtil.isNotNull(status) && "7".equals(status)) { tbQuickPayMapper.insert(tbQuickPay); - return Result.success(CodeEnum.PAYING,tbQuickPay); + return Result.success(CodeEnum.PAYING, tbQuickPay); } } } else { @@ -1412,16 +1384,16 @@ public class PayService { JSONObject jsonObject = new JSONObject(); jsonObject.put("token", token); jsonObject.put("type", "quick"); - jsonObject.put("amount",tbQuickPay.getAmount()); + jsonObject.put("amount", tbQuickPay.getAmount()); producer.putOrderCollect(jsonObject.toJSONString()); return Result.success(CodeEnum.SUCCESS, tbQuickPay); } if ("TRADE_AWAIT".equals(mainScanResp.getState())) { tbQuickPay.setTradeNo(mainScanResp.getPayOrderId()); - log.info("ddddd:{}",tbQuickPay.getTradeNo()); + log.info("ddddd:{}", tbQuickPay.getTradeNo()); tbQuickPayMapper.insert(tbQuickPay); - return Result.success(CodeEnum.PAYING,tbQuickPay); + return Result.success(CodeEnum.PAYING, tbQuickPay); } } } @@ -1520,9 +1492,9 @@ public class PayService { if (param.getNum() > tbGroupOrderCoupons.size()) { return Result.fail("可退数量不足"); } - if(groupOrderInfo.getPayType().equals("deposit")){ - TbShopUser user= tbShopUserMapper.selectByUserIdAndShopId(groupOrderInfo.getUserId().toString(),groupOrderInfo.getShopId().toString()); - if(ObjectUtil.isNull(user)||ObjectUtil.isEmpty(user)){ + if (groupOrderInfo.getPayType().equals("deposit")) { + TbShopUser user = tbShopUserMapper.selectByUserIdAndShopId(groupOrderInfo.getUserId().toString(), groupOrderInfo.getShopId().toString()); + if (ObjectUtil.isNull(user) || ObjectUtil.isEmpty(user)) { return Result.fail(ACCOUNTEIXST); } user.setAmount(user.getAmount().add(param.getRefundAmount().setScale(2, RoundingMode.DOWN))); @@ -1539,7 +1511,7 @@ public class PayService { flow.setBalance(user.getAmount()); flow.setCreateTime(new Date()); tbShopUserFlowMapper.insert(flow); - }else { + } else { TbMerchantThirdApply thirdApply = tbMerchantThirdApplyMapper.selectByPrimaryKey(groupOrderInfo.getMerchantId()); MsgException.checkNull(thirdApply, "支付参数配置错误"); @@ -1548,7 +1520,7 @@ public class PayService { url, thirdApply.getAppId(), // groupOrderInfo.getOrderNo(), - "GPR"+DateUtils.getSsdfTimes(), + "GPR" + DateUtils.getSsdfTimes(), groupOrderInfo.getPayOrderNo(), null, "团购卷订单退款", @@ -1561,10 +1533,10 @@ public class PayService { if ("000000".equals(publicResp.getCode())) { //TRADE_REFUND if (!"SUCCESS".equals(returnInfo.getState()) && !"TRADE_SUCCESS".equals(returnInfo.getState()) && !returnInfo.getState().equals("ING")) { - return Result.fail("退款渠道调用失败,"+returnInfo.getNote()); + return Result.fail("退款渠道调用失败," + returnInfo.getNote()); } } else { - return Result.fail("退款渠道调用失败,"+publicResp.getMsg()); + return Result.fail("退款渠道调用失败," + publicResp.getMsg()); } } } @@ -1579,7 +1551,7 @@ public class PayService { groupOrderInfo.setRefundNumber(groupOrderInfo.getRefundNumber() + param.getNum()); if (groupOrderInfo.getRefundAmount() == null) { groupOrderInfo.setRefundAmount(param.getRefundAmount()); - }else { + } else { groupOrderInfo.setRefundAmount(groupOrderInfo.getRefundAmount().add(param.getRefundAmount())); } if (groupOrderInfo.getNumber().equals(groupOrderInfo.getRefundNumber())) { @@ -1591,50 +1563,50 @@ public class PayService { } - public Result getOrderDiscount(String staffId,String orderId,String token ){ - if(ObjectUtil.isNull(staffId)||ObjectUtil.isNull(orderId)||ObjectUtil.isEmpty(staffId)||ObjectUtil.isEmpty(orderId)){ + public Result getOrderDiscount(String staffId, String orderId, String token) { + if (ObjectUtil.isNull(staffId) || ObjectUtil.isNull(orderId) || ObjectUtil.isEmpty(staffId) || ObjectUtil.isEmpty(orderId)) { return Result.fail(CodeEnum.PARAM); } - JSONObject tokeObj= TokenUtil.parseParamFromToken(token); - if(Objects.isNull(tokeObj)){ + JSONObject tokeObj = TokenUtil.parseParamFromToken(token); + if (Objects.isNull(tokeObj)) { return Result.fail(CodeEnum.TOKENTERROR); } - if(!tokeObj.getString("staffId").equals(staffId)){ + if (!tokeObj.getString("staffId").equals(staffId)) { return Result.fail(CodeEnum.PARAM); } - TbOrderInfo tbOrderInfo= tbOrderInfoMapper.selectByPrimaryKey(Integer.valueOf(orderId)); - if(ObjectUtil.isNull(tokeObj)||ObjectUtil.isEmpty(tbOrderInfo)){ + TbOrderInfo tbOrderInfo = tbOrderInfoMapper.selectByPrimaryKey(Integer.valueOf(orderId)); + if (ObjectUtil.isNull(tokeObj) || ObjectUtil.isEmpty(tbOrderInfo)) { return Result.fail(CodeEnum.ORDERNOEXIST); } - TbPlussShopStaff staff=tbPlussShopStaffMapper.selectByPrimaryKey(Integer.valueOf(staffId)); + TbPlussShopStaff staff = tbPlussShopStaffMapper.selectByPrimaryKey(Integer.valueOf(staffId)); - if(ObjectUtil.isEmpty(staff)||ObjectUtil.isNull(staff)){ + if (ObjectUtil.isEmpty(staff) || ObjectUtil.isNull(staff)) { return Result.fail(CodeEnum.STAFFNOEXISTERROE); } - if("master".equals(staff.getType())){ - return Result.success(SUCCESS,new BigDecimal(0.1)); + if ("master".equals(staff.getType())) { + return Result.success(SUCCESS, new BigDecimal(0.1)); } - if(ObjectUtil.isEmpty(staff.getMaxDiscountAmount())||ObjectUtil.isNull(staff.getMaxDiscountAmount())){ - return Result.success(SUCCESS,BigDecimal.ZERO); + if (ObjectUtil.isEmpty(staff.getMaxDiscountAmount()) || ObjectUtil.isNull(staff.getMaxDiscountAmount())) { + return Result.success(SUCCESS, BigDecimal.ZERO); } - if("0".equals(staff.getDiscountType())){ - if(staff.getMaxDiscountAmount().compareTo(tbOrderInfo.getOrderAmount())>=0){ + if ("0".equals(staff.getDiscountType())) { + if (staff.getMaxDiscountAmount().compareTo(tbOrderInfo.getOrderAmount()) >= 0) { staff.setMaxDiscountAmount(new BigDecimal(0.1)); - }else { - staff.setMaxDiscountAmount(BigDecimal.ONE.subtract(staff.getMaxDiscountAmount().divide(tbOrderInfo.getOrderAmount(),2,RoundingMode.HALF_DOWN).setScale(2,RoundingMode.HALF_DOWN))); + } else { + staff.setMaxDiscountAmount(BigDecimal.ONE.subtract(staff.getMaxDiscountAmount().divide(tbOrderInfo.getOrderAmount(), 2, RoundingMode.HALF_DOWN).setScale(2, RoundingMode.HALF_DOWN))); } } - return Result.success(SUCCESS,staff.getMaxDiscountAmount()); + return Result.success(SUCCESS, staff.getMaxDiscountAmount()); }