ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/OrderFallbackFactory.java
@@ -25,7 +25,7 @@ public OrderClient create(Throwable cause) { return new OrderClient() { @Override public R<Boolean> save(OrderRequest orderRequest) { public R<String> save(OrderRequest orderRequest) { return R.fail(cause.getMessage()); } ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java
@@ -35,7 +35,7 @@ * @return 返回结果 */ @PostMapping(value = "/order/save") R<Boolean> save(@RequestBody OrderRequest orderRequest); R<String> save(@RequestBody OrderRequest orderRequest); @PostMapping(value = "/order/edit") 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); ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/OrderServiceImpl.java
@@ -220,6 +220,7 @@ orderInfo.setRemark(order.getRemark()); orderInfo.setCompleteTime(order.getCompleteTime()); orderInfo.setReservationRemark(order.getReservationRemark()); orderInfo.setPhoneRecording(order.getPhoneRecording()); } result.setOrderInfo(orderInfo); } ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/vo/OrderInfoVO.java
@@ -1,5 +1,6 @@ package com.ruoyi.admin.vo; import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -31,5 +32,6 @@ private String reservationRemark; @ApiModelProperty("备注") private String remark; @ApiModelProperty("电话录音") private String phoneRecording; } ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java
@@ -358,7 +358,7 @@ */ @ApiOperation(value = "订单列表-新增订单", tags = {"后台-订单管理"}) @PostMapping(value = "/save") public R<Boolean> save(@RequestBody OrderRequest orderRequest) { public R<String> save(@RequestBody OrderRequest orderRequest) { R<BigDecimal> servePrice = userClient.getServePrice(orderRequest.getServeId(), orderRequest.getCityCode()); if (servePrice.getData()!=null){ @@ -407,7 +407,8 @@ order.setProvinceCode(orderRequest.getProvinceCode()); order.setAreaCode(orderRequest.getAreaCode()); order.setIsOpenVirtualNumber(orderRequest.getIsOpenVirtualNumber()); return R.ok(orderService.save(order)); orderService.save(order); return R.ok(order.getId(),"新增成功"); } ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -370,6 +370,7 @@ order.setAddress(""); order.setCity(cityCode.getData().getCity()); order.setCityCode(cityCode.getData().getCityCode()); order.setIsOpenVirtualNumber(1); this.save(order); return String.valueOf(order.getId()); }