xiaoyong931011
2021-11-19 ca390645fe6ffd99bbe2056fad48c09842022722
gc-order/src/main/java/com/xzx/gc/order/service/JhyOrderService.java
@@ -87,29 +87,30 @@
        jhyOrder.setOrderNo(orderNo);
        jhyOrder.setArea(addressInfo.getAddressArea());
        StringBuffer address = new StringBuffer();
        address.append(addressInfo.getDetailAddress());
        if (StrUtil.isNotBlank(addressInfo.getTagName())) {
            address.append(StrUtil.isNotBlank(addressInfo.getHouseName()) ? addressInfo.getHouseName() : "");
            if (Constants.ADDRESS_TYPE_HOME.equals(addressInfo.getTagName())) {
                address.append(StrUtil.isNotBlank(addressInfo.getHouseNumber()) ? addressInfo.getHouseNumber() : "");
                address.append(StrUtil.isNotBlank(addressInfo.getUnitName()) ? addressInfo.getUnitName() : "");
            }
        }
//        StringBuffer address = new StringBuffer();
//        address.append(addressInfo.getDetailAddress());
//        if (StrUtil.isNotBlank(addressInfo.getTagName())) {
//            address.append(StrUtil.isNotBlank(addressInfo.getHouseName()) ? addressInfo.getHouseName() : "");
//            if (Constants.ADDRESS_TYPE_HOME.equals(addressInfo.getTagName())) {
//                address.append(StrUtil.isNotBlank(addressInfo.getHouseNumber()) ? addressInfo.getHouseNumber() : "");
//                address.append(StrUtil.isNotBlank(addressInfo.getUnitName()) ? addressInfo.getUnitName() : "");
//            }
//        }
        List<JhyOrder> addressExist = jhyOrderMapper.selectJhyOrderListByStatus(StrUtil.split("1,2", ','), orderDto.getUserId());
        if (CollUtil.isNotEmpty(addressExist)) {
            for (JhyOrder order : addressExist) {
                String orderAddr = order.getArea() + order.getAddress();
                String orderAddr = order.getArea() + order.getAddress() + order.getUnitName() + order.getHouseNumber();
                if (orderAddr.equals(addressInfo.getAddressArea() + address)) {
                if (orderAddr.equals(addressInfo.getAddressArea() + addressInfo.getDetailAddress() + addressInfo.getHouseName() + addressInfo.getUnitName() + addressInfo.getHouseNumber())) {
                    throw new RestException(-3, "同一地址仅能有一单在进行中");
                }
            }
        }
        jhyOrder.setAddress(address.toString());
        jhyOrder.setAddress(addressInfo.getDetailAddress()+(StrUtil.isEmpty(addressInfo.getHouseName())?"":addressInfo.getHouseName()));
        jhyOrder.setUnitName(StrUtil.isEmpty(addressInfo.getUnitName())?"":addressInfo.getUnitName());
        jhyOrder.setHouseNumber(StrUtil.isEmpty(addressInfo.getHouseNumber())?"":addressInfo.getHouseNumber());
        jhyOrder.setUsername(addressInfo.getRelaName());
        jhyOrder.setPhone(addressInfo.getMobilePhone());
        jhyOrder.setLongitude(addressInfo.getLongitude());
@@ -158,6 +159,8 @@
        detailsVo.setLongitude(order.getLongitude());
        detailsVo.setLatitude(order.getLatitude());
        detailsVo.setAddress(order.getArea() + order.getAddress());
        detailsVo.setUnitName(order.getUnitName());
        detailsVo.setHouseNumber(order.getHouseNumber());
        detailsVo.setTotalPrice(total);
        detailsVo.setItems(items);
        return detailsVo;
@@ -237,6 +240,7 @@
                JhyOrder order = jhyOrderMapper.selectByPrimaryKey(confirmDto.getOrderId());
                AccountInfo jhyAccount = accountMapper.selectAccountInfoByUserId(order.getJhyId());
                BigDecimal collectScore = StrUtil.isNotBlank(jhyAccount.getCollectScore()) ? new BigDecimal(jhyAccount.getCollectScore()) : BigDecimal.ZERO;
                log.info("===={}======{}====", collectScore, totalScore);
                if (totalScore.compareTo(collectScore) > 0) {
                    throw new RestException(-3, "剩余积分不足");
                }
@@ -279,7 +283,10 @@
                distribService.distribRecord(order.getId(), order.getUserId());
                // 推荐返利
                distribService.inviteAddOrderScore(order.getUserId(), order.getId().toString());
            } catch (RestException e) {
                throw new RestException(e.getMessage());
            } catch (Exception e) {
                log.error("异常", e);
                throw new RestException("支付失败");
            } finally {
                redisUtil.del(key);