提交 289fcbec authored 作者: huyufan's avatar huyufan

修改BUG

上级 6cf22cd9
......@@ -20,4 +20,7 @@ public interface PerformanceFeign {
@GetMapping(value = {"clx-performance/feign/orderGoodsDriverTruck/getTrucksByOrderGoodsNo"})
Result<List<Integer>> getTrucksByOrderGoodsNo(@RequestParam("orderGoodsNo") @NotBlank(message = "货单编号不可为空") String orderGoodsNo);
@GetMapping(value = {"clx-performance/feign/orderChild/getOrderChildTotalByUserNo"})
Integer getOrderChildTotalByUserNo(@RequestParam("userNo") Long userNo);
}
package com.clx.performance.controller.feign;
import com.clx.performance.service.OrderChildService;
import com.msl.common.result.Result;
import io.swagger.annotations.Api;
import lombok.AllArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotNull;
import java.util.List;
@RestController
@RequestMapping("/feign/orderChild")
@Validated
@Api(tags = "运单Feign")
@AllArgsConstructor
public class OrderChildController {
private final OrderChildService orderChildService;
@GetMapping({"/getOrderChildTotalByUserNo"})
Integer getTrucksByOrderGoodsNo(@RequestParam("userNo") @NotNull(message = "用户编号不可为空") Long userNo){
Integer totalByUserNo = orderChildService.getOrderChildTotalByUserNo(userNo);
return totalByUserNo;
}
}
......@@ -88,7 +88,7 @@ public class GoodsOrderController {
FeignOrderVO orderInfo = orderFeign.getOrderInfoFeign(orderNo);
//1平台车辆 2部分平台车辆 3自有车辆
Integer truckDemand = orderInfo.getTruckDemand();
sendLazyTime = goodsOrderStrategyContext.strategyContext.get(truckDemand).goodsOrderProcess(orderGoodsParams,orderInfo);
sendLazyTime = goodsOrderStrategyContext.strategyContext.get(truckDemand).goodsOrderProcess(orderGoodsParams, orderInfo);
} catch (Exception e) {
throw new RuntimeException(e);
......@@ -106,14 +106,21 @@ public class GoodsOrderController {
rabbitTemplate.send(RabbitKeyConstants.ORDER_POSTED_EXCHANGE, RabbitKeyConstants.ORDER_POSTED_ROUTE_KEY, MessageBuilder.withBody(orderNo.toString().getBytes()).build());
Message message = MessageBuilder.withBody(orderNo.getBytes()).build();
long epochMilli = 0L;
if(sendLazyTime.isAfter(now)){
if (sendLazyTime.isAfter(now)) {
//选择时间在当前时间之后,则设置延迟队列时间
epochMilli = sendLazyTime.minusMinutes(now.getMinute()).getMinute() * 60 * 1000;
}
if (epochMilli == 0L) {
rabbitTemplate.send(
RabbitKeyConstants.ORDER_ON_DEAD_EXCHANGE, RabbitKeyConstants.ORDER_ON_ROUTE_KEY, message
);
} else {
message.getMessageProperties().setExpiration(String.valueOf(epochMilli));
rabbitTemplate.send(
RabbitKeyConstants.ORDER_ON_EXCHANGE, RabbitKeyConstants.ORDER_ON_ROUTE_KEY, message
);
}
return Result.ok();
}
......
......@@ -52,4 +52,5 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
int countValidByOrderGoodsNo(String orderGoodsNo);
Integer getOrderChildTotalByUserNo(Long userNo);
}
......@@ -179,4 +179,9 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
return baseMapper.countValidByOrderGoodsNo(orderGoodsNo);
}
@Override
public Integer getOrderChildTotalByUserNo(Long userNo) {
return baseMapper.getOrderChildTotalByUserNo(userNo);
}
}
package com.clx.performance.listener;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.clx.performance.constant.RabbitKeyConstants;
import com.clx.performance.data.OrderChildData;
import com.msl.common.utils.DtsMapConvertUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.annotation.*;
import org.springframework.stereotype.Component;
@Slf4j
@Component
@RabbitListener(queues = RabbitKeyConstants.CLX_PERFORMANCE_ORDER_CHILD_QUEUE)
public class OrderChildDtsListener {
@RabbitHandler
public void dealMessage(byte[] message) {
try {
String msg = new String(message);
log.info("DTS消息同步开始, database:order_service, msg:{}", msg);
JSONObject object = JSON.parseObject(msg);
JSONObject beforeMap = object.getJSONObject("beforeMap");
JSONObject afterMap = object.getJSONObject("afterMap");
OrderChildData before = DtsMapConvertUtil.convert(beforeMap, new OrderChildData());
OrderChildData entity = DtsMapConvertUtil.convert(afterMap, new OrderChildData());
} catch (Exception e) {
log.info("DTS消息同步失败, database:order_service, error:{}", e.getMessage());
}
}
}
//package com.clx.performance.listener;
//
//import com.alibaba.fastjson.JSON;
//import com.alibaba.fastjson.JSONObject;
//import com.clx.performance.constant.RabbitKeyConstants;
//import com.clx.performance.data.OrderChildData;
//import com.msl.common.utils.DtsMapConvertUtil;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.amqp.rabbit.annotation.*;
//import org.springframework.stereotype.Component;
//
//@Slf4j
//@Component
//@RabbitListener(queues = RabbitKeyConstants.CLX_PERFORMANCE_ORDER_CHILD_QUEUE)
//public class OrderChildDtsListener {
//
//
// @RabbitHandler
// public void dealMessage(byte[] message) {
// try {
// String msg = new String(message);
// log.info("DTS消息同步开始, database:order_service, msg:{}", msg);
//
// JSONObject object = JSON.parseObject(msg);
//
// JSONObject beforeMap = object.getJSONObject("beforeMap");
// JSONObject afterMap = object.getJSONObject("afterMap");
// OrderChildData before = DtsMapConvertUtil.convert(beforeMap, new OrderChildData());
// OrderChildData entity = DtsMapConvertUtil.convert(afterMap, new OrderChildData());
//
//
// } catch (Exception e) {
// log.info("DTS消息同步失败, database:order_service, error:{}", e.getMessage());
// }
// }
//
//}
......@@ -46,4 +46,6 @@ public interface OrderChildMapper extends BaseMapper<OrderChild> {
@Select("select count(1) from order_child where order_goods_no = #{orderGoodsNo} and status < 110")
int countValidByOrderGoodsNo(String orderGoodsNo);
@Select("select count(1) from order_child where user_no = #{userNo} and status = 100")
Integer getOrderChildTotalByUserNo(Long userNo);
}
\ No newline at end of file
......@@ -60,4 +60,5 @@ public interface OrderChildService {
GoingOrderChildVO getGoingLatestOrderChild();
Integer getOrderChildTotalByUserNo(Long userNo);
}
......@@ -1133,4 +1133,9 @@ public class OrderChildServiceImpl implements OrderChildService {
OrderChild orderChild = orderChildDao.getGoingLatestOrderChild(loginUserInfo.getUserNo());
return orderChildStruct.convertGoingOrder(orderChild);
}
@Override
public Integer getOrderChildTotalByUserNo(Long userNo) {
return orderChildDao.getOrderChildTotalByUserNo(userNo);
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论