xuhy
5 天以前 f6965e7733623222cef5165d5007d9c038d737b3
ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java
@@ -357,9 +357,10 @@
        }else {
            order.setOrderMoney(one.getRecoveryPrice());
        }
        Boolean data = orderClient.save(order).getData();
        if (null == data) {
            return R.fail(orderClient.save(order).getMsg());
        R<String> saveResult = orderClient.save(order);
        String orderId = saveResult.getData();
        if (!StringUtils.hasLength(orderId)) {
            return R.fail(saveResult.getMsg());
        }
        System.out.println("服务人员id:" + order.getServerId());
        ChannelHandlerContext context = NettyChannelMap.getData(String.valueOf(order.getServerId()));
@@ -368,7 +369,31 @@
            System.out.println("服务端发送消息到: " + order.getServerId());
            NettyWebSocketController.sendMsgToClient(context, "您有一条新的订单,请注意查收!");
        }
        return data ? R.ok() : R.fail();
        if (null != order.getServerId()) {
            MasterWorker masterWorker = masterWorkerService.lambdaQuery()
                    .eq(MasterWorker::getId, order.getServerId())
                    .eq(MasterWorker::getIsDelete, 0).one();
            try{
                // 虚拟号码  师傅号码备案
                String fileName = privateNumberUtil.uploadNumberFile(masterWorker.getProfilePicture()).getData();
                R r = privateNumberUtil.addANumber(masterWorker.getPhone(), masterWorker.getRealName(), masterWorker.getIdNumber(), fileName);
            }catch (Exception e){
                throw new GlobalException("虚拟号码绑定异常!");
            }
            // 虚拟号码配置
            IamConfig iamConfig = iamConfigService.getById(1);
            if(Objects.nonNull(order.getIsOpenVirtualNumber()) && order.getIsOpenVirtualNumber() == 1){
                // 虚拟号码绑定
                String result = AXBUtil.axbBindNumber(iamConfig.getAppKey(), iamConfig.getAppSecret(), order.getOrderNumber(), order.getReservationPhone(), masterWorker.getPhone());
                // 存储绑定后的唯一标识
                JSONObject jsonObject = JSONObject.parseObject(result);
                String subscriptionId = jsonObject.getString("subscriptionId");
                orderClient.updateSubscriptionId(orderId, subscriptionId,iamConfig.getVirtualNumber());
            }
        }
        return StringUtils.hasLength(orderId) ? R.ok() : R.fail();
    }
@@ -401,6 +426,17 @@
                    .eq(MasterWorker::getIsDelete, 0).one();
            order.setServerName(masterWorker.getRealName());
            order.setServerPhone(masterWorker.getPhone());
            IamConfig iamConfig = iamConfigService.getById(1);
            if(Objects.nonNull(order.getIsOpenVirtualNumber()) && order.getIsOpenVirtualNumber() == 1){
                // 虚拟号码绑定
                String result = AXBUtil.axbBindNumber(iamConfig.getAppKey(), iamConfig.getAppSecret(), order.getOrderNumber(), order.getReservationPhone(), masterWorker.getPhone());
                // 存储绑定后的唯一标识
                JSONObject jsonObject = JSONObject.parseObject(result);
                String subscriptionId = jsonObject.getString("subscriptionId");
                orderClient.updateSubscriptionId(orderData.getId(), subscriptionId,iamConfig.getVirtualNumber());
            }
        } else {
            // 待派单状态
            order.setState(Constants.ZERO);