xuhy
1 天以前 73195f372cdb8d59b74ee86b76fbf4c9595caea1
ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java
@@ -15,10 +15,7 @@
import com.ruoyi.admin.utils.DescribeInstances;
import com.ruoyi.admin.utils.HttpUtil;
import com.ruoyi.admin.utils.PrivateNumberUtil;
import com.ruoyi.admin.vo.OrderByServeRecordVO;
import com.ruoyi.admin.vo.OrderDetailVO;
import com.ruoyi.admin.vo.OrderReasinDto;
import com.ruoyi.admin.vo.ReassinDto;
import com.ruoyi.admin.vo.*;
import com.ruoyi.admin.voice.util.AXBUtil;
import com.ruoyi.common.core.constant.Constants;
import com.ruoyi.common.core.domain.BaseEntity;
@@ -113,6 +110,8 @@
    private PrivateNumberUtil privateNumberUtil;
    @Autowired
    private IamConfigService iamConfigService;
    @Autowired
    private OrderRecordingService orderRecordingService;
    /**
     * 雪花算法类
     */
@@ -374,18 +373,18 @@
            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){
                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("虚拟号码绑定异常!");
                }
                // 虚拟号码绑定
                String result = AXBUtil.axbBindNumber(iamConfig.getAppKey(), iamConfig.getAppSecret(), order.getOrderNumber(), order.getReservationPhone(), masterWorker.getPhone());
                String result = AXBUtil.axbBindNumber(iamConfig.getAppKey(), iamConfig.getAppSecret(), iamConfig.getVirtualNumber(), order.getReservationPhone(), masterWorker.getPhone());
                // 存储绑定后的唯一标识
                JSONObject jsonObject = JSONObject.parseObject(result);
                String subscriptionId = jsonObject.getString("subscriptionId");
@@ -430,7 +429,7 @@
            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());
                String result = AXBUtil.axbBindNumber(iamConfig.getAppKey(), iamConfig.getAppSecret(), iamConfig.getVirtualNumber(), order.getReservationPhone(), masterWorker.getPhone());
                // 存储绑定后的唯一标识
                JSONObject jsonObject = JSONObject.parseObject(result);
                String subscriptionId = jsonObject.getString("subscriptionId");
@@ -478,15 +477,21 @@
            MasterWorker masterWorker = masterWorkerService.lambdaQuery()
                    .eq(MasterWorker::getId, orderReasinDto.getWorkerId())
                    .eq(MasterWorker::getIsDelete, 0).one();
            Order order1 = orderClient.detail(orderId.getOrderId()).getData();
            if(Objects.nonNull(order1.getIsOpenVirtualNumber()) && order1.getIsOpenVirtualNumber() == 1){
                try{
                    // 虚拟号码  师傅号码备案
                    String fileName = privateNumberUtil.uploadNumberFile(masterWorker.getProfilePicture()).getData();
                    R r = privateNumberUtil.addANumber(masterWorker.getPhone(), masterWorker.getRealName(), masterWorker.getIdNumber(), fileName);
                    if(r.getCode() == 500){
                        throw new GlobalException(r.getMsg());
                    }
                }catch (Exception e){
                    throw new GlobalException("虚拟号码绑定异常!");
                }
            }
            Order order = orderClient.exchangeOrder(orderId.getType(), orderId.getOrderId(), orderReasinDto.getWorkerId(),
                    masterWorker.getRealName(), masterWorker.getPhone()).getData();
            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);
            // 订单派单
@@ -510,7 +515,7 @@
                        AXBUtil.axbModifyNumber(iamConfig.getAppKey(),iamConfig.getAppSecret(),order.getSubscriptionId(), order.getReservationPhone(), masterWorker.getPhone());
                    }else {
                        // 虚拟号码绑定
                        String result = AXBUtil.axbBindNumber(iamConfig.getAppKey(), iamConfig.getAppSecret(), order.getOrderNumber(), order.getReservationPhone(), masterWorker.getPhone());
                        String result = AXBUtil.axbBindNumber(iamConfig.getAppKey(), iamConfig.getAppSecret(), iamConfig.getVirtualNumber(), order.getReservationPhone(), masterWorker.getPhone());
                        // 存储绑定后的唯一标识
                        JSONObject jsonObject = JSONObject.parseObject(result);
                        String subscriptionId = jsonObject.getString("subscriptionId");
@@ -524,7 +529,7 @@
                orderClient.updateState(order.getId(), 7);
                if(Objects.nonNull(order.getIsOpenVirtualNumber()) && order.getIsOpenVirtualNumber() == 1){
                    // 虚拟号码绑定
                    String result = AXBUtil.axbBindNumber(iamConfig.getAppKey(), iamConfig.getAppSecret(), order.getOrderNumber(), order.getReservationPhone(), masterWorker.getPhone());
                    String result = AXBUtil.axbBindNumber(iamConfig.getAppKey(), iamConfig.getAppSecret(), iamConfig.getVirtualNumber(), order.getReservationPhone(), masterWorker.getPhone());
                    // 存储绑定后的唯一标识
                    JSONObject jsonObject = JSONObject.parseObject(result);
                    String subscriptionId = jsonObject.getString("subscriptionId");
@@ -1037,9 +1042,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()));