Commit cfc3401d authored by shiyu's avatar shiyu

生成订单

parent 9998dea7
...@@ -185,6 +185,13 @@ public class DistributionOrderServiceImpl implements DistributionOrderService { ...@@ -185,6 +185,13 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
RLock lock = redissonClient.getLock(itemIdKey); RLock lock = redissonClient.getLock(itemIdKey);
try { try {
if (lock.tryLock(5, 5, TimeUnit.SECONDS)) { if (lock.tryLock(5, 5, TimeUnit.SECONDS)) {
Map<String, String> map = new HashMap<>();
//判断是否该商品已创建了订单
DistributionOrder searchOrder = distributionOrderDao.findByItemId(dto.getItemId());
if (searchOrder != null && com.xxdxxs.utils.StringUtils.hasLength(searchOrder.getDistributionOrderId())) {
map.put("distributionOrderId", searchOrder.getDistributionOrderId());
return Result.success(map);
}
String distributionOrderId = IdUtils.getOrderNumber(DISTRIBUTION_ORDER_PREFIX); String distributionOrderId = IdUtils.getOrderNumber(DISTRIBUTION_ORDER_PREFIX);
AuctionRecord auctionRecord = auctionRecordDao.findLastedRecord(dto.getItemId()); AuctionRecord auctionRecord = auctionRecordDao.findLastedRecord(dto.getItemId());
if (auctionRecord.getUserId().longValue() != dto.getBuyerId().longValue()) { if (auctionRecord.getUserId().longValue() != dto.getBuyerId().longValue()) {
...@@ -208,7 +215,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService { ...@@ -208,7 +215,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
distributionOrder.setState(DistributionEnum.DistributionOrderStateEnum.PRE_PAY.getCode()); distributionOrder.setState(DistributionEnum.DistributionOrderStateEnum.PRE_PAY.getCode());
distributionOrder.setType(DistributionEnum.DistributionTypeEnum.AUCTION.getCode()); distributionOrder.setType(DistributionEnum.DistributionTypeEnum.AUCTION.getCode());
distributionOrderDao.insert(distributionOrder); distributionOrderDao.insert(distributionOrder);
Map<String, String> map = new HashMap<>();
map.put("distributionOrderId", distributionOrderId); map.put("distributionOrderId", distributionOrderId);
map.put("prepayId", null); map.put("prepayId", null);
//计算分销商的利润 //计算分销商的利润
...@@ -225,7 +231,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService { ...@@ -225,7 +231,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
distributorProfit.setCreateTime(new Date()); distributorProfit.setCreateTime(new Date());
distributorProfit.setIsValid(false); distributorProfit.setIsValid(false);
distributorProfitDao.insert(distributorProfit); distributorProfitDao.insert(distributorProfit);
//发送中拍信息给用户 //发送中拍信息给用户
/** /**
* *
......
...@@ -90,6 +90,7 @@ public class AutoCreateAuctionOrderJob { ...@@ -90,6 +90,7 @@ public class AutoCreateAuctionOrderJob {
if (distributionOrder == null || StringUtils.isEmpty(distributionOrder.getDistributionOrderId())) { if (distributionOrder == null || StringUtils.isEmpty(distributionOrder.getDistributionOrderId())) {
DistributionOrderRequestDto distributionOrderRequestDto = new DistributionOrderRequestDto(); DistributionOrderRequestDto distributionOrderRequestDto = new DistributionOrderRequestDto();
distributionOrderRequestDto.setItemId(itemId); distributionOrderRequestDto.setItemId(itemId);
distributionOrderRequestDto.setBuyerId(auctionRecord.getUserId());
Result result = distributionOrderService.createAuctionOrder(distributionOrderRequestDto); Result result = distributionOrderService.createAuctionOrder(distributionOrderRequestDto);
if (result.getSuccess()) { if (result.getSuccess()) {
logger.info("============== 拍卖 商品id:{}, 自动生成订单成功 ==============", itemId); logger.info("============== 拍卖 商品id:{}, 自动生成订单成功 ==============", itemId);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment