|
@@ -1669,7 +1669,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
VoyageRespDTO voyage = productApi.getVoyage(createVO.getVoyageId());
|
|
VoyageRespDTO voyage = productApi.getVoyage(createVO.getVoyageId());
|
|
|
RouteRespDTO routeRespDTO = routeApi.queryRouteById(voyage.getRouteId());
|
|
RouteRespDTO routeRespDTO = routeApi.queryRouteById(voyage.getRouteId());
|
|
|
ShipRespDTO ship = shipApi.queryShip(createVO.getShipId());
|
|
ShipRespDTO ship = shipApi.queryShip(createVO.getShipId());
|
|
|
- int maxOrderNo = tradeOrderService.getMaxOrderNo(createVO.getVoyageId());
|
|
|
|
|
|
|
+
|
|
|
//String date = DateUtils.format(new Date(), "yyyyMMddmm");
|
|
//String date = DateUtils.format(new Date(), "yyyyMMddmm");
|
|
|
String date = DateUtils.format(voyage.getBoardingTime(), "yyyyMMdd");
|
|
String date = DateUtils.format(voyage.getBoardingTime(), "yyyyMMdd");
|
|
|
String code = "YC";
|
|
String code = "YC";
|
|
@@ -1678,12 +1678,13 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
}
|
|
}
|
|
|
String sname = ship.getName()+"-"+routeRespDTO.getName()+"-"+voyage.getName();
|
|
String sname = ship.getName()+"-"+routeRespDTO.getName()+"-"+voyage.getName();
|
|
|
|
|
|
|
|
- String orderNo;
|
|
|
|
|
- if (ship.getCode() == null) {
|
|
|
|
|
- orderNo = date + "-" + voyage.getCode() + "-" + (maxOrderNo + 1);
|
|
|
|
|
- } else {
|
|
|
|
|
- orderNo = ship.getCode() + "-" + date + "-" + code + "-" + (maxOrderNo + 1);
|
|
|
|
|
|
|
+ String ccode = date + "-" + voyage.getCode() + "-";
|
|
|
|
|
+ if(ship.getCode() != null){
|
|
|
|
|
+ ccode = ship.getCode() + "-" + date + "-" + code + "-";
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ int maxOrderNo = tradeOrderService.getMaxOrderNo(createVO.getVoyageId(),ccode);
|
|
|
|
|
+ String orderNo = ccode+(maxOrderNo + 1);
|
|
|
//现在给整个订单号的加锁
|
|
//现在给整个订单号的加锁
|
|
|
String lockKey = String.format(ProductRedisKeyConstants.ORDER_REDIS_KEY_PREFIX, orderNo);
|
|
String lockKey = String.format(ProductRedisKeyConstants.ORDER_REDIS_KEY_PREFIX, orderNo);
|
|
|
RLock lock = redissonClient.getLock(lockKey);
|
|
RLock lock = redissonClient.getLock(lockKey);
|