|
@@ -730,6 +730,10 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
log.error("tradeOrderUser无可用回退版本");
|
|
log.error("tradeOrderUser无可用回退版本");
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ TradeOrderDO tradeOrderDO = tradeOrderMapper.selectById(orderId);
|
|
|
|
|
+ Long shipId = tradeOrderDO.getShipId();
|
|
|
|
|
+
|
|
|
for (HisTradeOrderUserDO lastVersion : lastVersionList) {
|
|
for (HisTradeOrderUserDO lastVersion : lastVersionList) {
|
|
|
Long dataId = lastVersion.getId();
|
|
Long dataId = lastVersion.getId();
|
|
|
// 【锁已生效】下面所有操作都是单线程执行,不会并发冲突
|
|
// 【锁已生效】下面所有操作都是单线程执行,不会并发冲突
|
|
@@ -737,6 +741,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
TradeOrderUserDO a = new TradeOrderUserDO();
|
|
TradeOrderUserDO a = new TradeOrderUserDO();
|
|
|
BeanUtils.copyProperties(lastVersion, a);
|
|
BeanUtils.copyProperties(lastVersion, a);
|
|
|
a.setSyncStatus("0");
|
|
a.setSyncStatus("0");
|
|
|
|
|
+ a.setShipId(shipId);
|
|
|
tradeOrderUserMapper.updateDeletedById(dataId,0);
|
|
tradeOrderUserMapper.updateDeletedById(dataId,0);
|
|
|
boolean updateMain = tradeOrderUserMapper.insertOrUpdate(a);
|
|
boolean updateMain = tradeOrderUserMapper.insertOrUpdate(a);
|
|
|
if (!updateMain) {
|
|
if (!updateMain) {
|
|
@@ -788,6 +793,10 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
log.error("tradeDetail无可用回退版本");
|
|
log.error("tradeDetail无可用回退版本");
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ TradeOrderDO tradeOrderDO = tradeOrderMapper.selectById(orderId);
|
|
|
|
|
+ Long shipId = tradeOrderDO.getShipId();
|
|
|
|
|
+
|
|
|
for (HisTradeDetailDO lastVersion : lastVersionList) {
|
|
for (HisTradeDetailDO lastVersion : lastVersionList) {
|
|
|
Long dataId = lastVersion.getId();
|
|
Long dataId = lastVersion.getId();
|
|
|
// 【锁已生效】下面所有操作都是单线程执行,不会并发冲突
|
|
// 【锁已生效】下面所有操作都是单线程执行,不会并发冲突
|
|
@@ -795,6 +804,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
TradeDetailDO a = new TradeDetailDO();
|
|
TradeDetailDO a = new TradeDetailDO();
|
|
|
BeanUtils.copyProperties(lastVersion, a);
|
|
BeanUtils.copyProperties(lastVersion, a);
|
|
|
a.setSyncStatus("0");
|
|
a.setSyncStatus("0");
|
|
|
|
|
+ a.setShipId(shipId);
|
|
|
tradeDetailMapper.updateDeletedById(dataId,0);
|
|
tradeDetailMapper.updateDeletedById(dataId,0);
|
|
|
boolean updateMain = tradeDetailMapper.insertOrUpdate(a);
|
|
boolean updateMain = tradeDetailMapper.insertOrUpdate(a);
|
|
|
if (!updateMain) {
|
|
if (!updateMain) {
|
|
@@ -900,6 +910,9 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
.last("FOR UPDATE") // 加行锁,其他线程阻塞等待
|
|
.last("FOR UPDATE") // 加行锁,其他线程阻塞等待
|
|
|
);
|
|
);
|
|
|
|
|
|
|
|
|
|
+ TradeOrderDO tradeOrderDO = tradeOrderMapper.selectById(orderId);
|
|
|
|
|
+ Long shipId = tradeOrderDO.getShipId();
|
|
|
|
|
+
|
|
|
if (lastVersionList == null || lastVersionList.isEmpty()) {
|
|
if (lastVersionList == null || lastVersionList.isEmpty()) {
|
|
|
log.error("tradeOrderTotal无可用回退版本");
|
|
log.error("tradeOrderTotal无可用回退版本");
|
|
|
return;
|
|
return;
|
|
@@ -911,6 +924,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
TradeOrderTotalDO a = new TradeOrderTotalDO();
|
|
TradeOrderTotalDO a = new TradeOrderTotalDO();
|
|
|
BeanUtils.copyProperties(lastVersion, a);
|
|
BeanUtils.copyProperties(lastVersion, a);
|
|
|
a.setSyncStatus("0");
|
|
a.setSyncStatus("0");
|
|
|
|
|
+ a.setShipId(shipId);
|
|
|
tradeOrderTotalMapper.updateDeletedById(dataId,0);
|
|
tradeOrderTotalMapper.updateDeletedById(dataId,0);
|
|
|
boolean updateMain = tradeOrderTotalMapper.insertOrUpdate(a);
|
|
boolean updateMain = tradeOrderTotalMapper.insertOrUpdate(a);
|
|
|
if (!updateMain) {
|
|
if (!updateMain) {
|
|
@@ -1016,6 +1030,10 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
log.error("tradeOrderRoomModel无可用回退版本");
|
|
log.error("tradeOrderRoomModel无可用回退版本");
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ TradeOrderDO tradeOrderDO = tradeOrderMapper.selectById(orderId);
|
|
|
|
|
+ Long shipId = tradeOrderDO.getShipId();
|
|
|
|
|
+
|
|
|
for (HisTradeOrderRoomModelDO lastVersion : lastVersionList) {
|
|
for (HisTradeOrderRoomModelDO lastVersion : lastVersionList) {
|
|
|
Long dataId = lastVersion.getId();
|
|
Long dataId = lastVersion.getId();
|
|
|
// 【锁已生效】下面所有操作都是单线程执行,不会并发冲突
|
|
// 【锁已生效】下面所有操作都是单线程执行,不会并发冲突
|
|
@@ -1023,6 +1041,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
TradeOrderRoomModelDO a = new TradeOrderRoomModelDO();
|
|
TradeOrderRoomModelDO a = new TradeOrderRoomModelDO();
|
|
|
BeanUtils.copyProperties(lastVersion, a);
|
|
BeanUtils.copyProperties(lastVersion, a);
|
|
|
a.setSyncStatus("0");
|
|
a.setSyncStatus("0");
|
|
|
|
|
+ a.setShipId(shipId);
|
|
|
tradeOrderRoomModelMapper.updateDeletedById(dataId,0);
|
|
tradeOrderRoomModelMapper.updateDeletedById(dataId,0);
|
|
|
boolean updateMain = tradeOrderRoomModelMapper.insertOrUpdate(a);
|
|
boolean updateMain = tradeOrderRoomModelMapper.insertOrUpdate(a);
|
|
|
if (!updateMain) {
|
|
if (!updateMain) {
|
|
@@ -1074,6 +1093,10 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
log.error("tradeVisitor无可用回退版本");
|
|
log.error("tradeVisitor无可用回退版本");
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ TradeOrderDO tradeOrderDO = tradeOrderMapper.selectById(orderId);
|
|
|
|
|
+ Long shipId = tradeOrderDO.getShipId();
|
|
|
|
|
+
|
|
|
for (HisTradeVisitorDO lastVersion : lastVersionList) {
|
|
for (HisTradeVisitorDO lastVersion : lastVersionList) {
|
|
|
Long dataId = lastVersion.getId();
|
|
Long dataId = lastVersion.getId();
|
|
|
// 【锁已生效】下面所有操作都是单线程执行,不会并发冲突
|
|
// 【锁已生效】下面所有操作都是单线程执行,不会并发冲突
|
|
@@ -1081,6 +1104,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
TradeVisitorDO a = new TradeVisitorDO();
|
|
TradeVisitorDO a = new TradeVisitorDO();
|
|
|
BeanUtils.copyProperties(lastVersion, a);
|
|
BeanUtils.copyProperties(lastVersion, a);
|
|
|
a.setSyncStatus("0");
|
|
a.setSyncStatus("0");
|
|
|
|
|
+ a.setShipId(shipId);
|
|
|
tradeVisitorMapper.updateDeletedById(dataId,0);
|
|
tradeVisitorMapper.updateDeletedById(dataId,0);
|
|
|
boolean updateMain = tradeVisitorMapper.insertOrUpdate(a);
|
|
boolean updateMain = tradeVisitorMapper.insertOrUpdate(a);
|
|
|
if (!updateMain) {
|
|
if (!updateMain) {
|
|
@@ -2525,6 +2549,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
tradeOrderTotalDO.setId(IdWorker.getId());
|
|
tradeOrderTotalDO.setId(IdWorker.getId());
|
|
|
tradeOrderTotalDO.setOldOrderId(orderId);
|
|
tradeOrderTotalDO.setOldOrderId(orderId);
|
|
|
tradeOrderTotalDO.setOtherRemark(summary.getOtherRemark());
|
|
tradeOrderTotalDO.setOtherRemark(summary.getOtherRemark());
|
|
|
|
|
+ tradeOrderTotalDO.setShipId(ship.getId());
|
|
|
tradeOrderTotalMapper.insert(tradeOrderTotalDO);
|
|
tradeOrderTotalMapper.insert(tradeOrderTotalDO);
|
|
|
|
|
|
|
|
// 创建订单房型数据
|
|
// 创建订单房型数据
|
|
@@ -2535,6 +2560,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
tradeOrderRoomDO.setOrderId(orderId);
|
|
tradeOrderRoomDO.setOrderId(orderId);
|
|
|
tradeOrderRoomDO.setOrderNo(orderNo);
|
|
tradeOrderRoomDO.setOrderNo(orderNo);
|
|
|
tradeOrderRoomDO.setDiscount(tradeOrderRoomDO.getUnitPrice().subtract(tradeOrderRoomDO.getRealMoney()));
|
|
tradeOrderRoomDO.setDiscount(tradeOrderRoomDO.getUnitPrice().subtract(tradeOrderRoomDO.getRealMoney()));
|
|
|
|
|
+ tradeOrderRoomDO.setShipId(ship.getId());
|
|
|
tradeOrderRoomDOList.add(tradeOrderRoomDO);
|
|
tradeOrderRoomDOList.add(tradeOrderRoomDO);
|
|
|
});
|
|
});
|
|
|
|
|
|
|
@@ -3253,12 +3279,17 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
//创建订单房型数据
|
|
//创建订单房型数据
|
|
|
List<TradeOrderRoomModelDO> insetList = new ArrayList<>();
|
|
List<TradeOrderRoomModelDO> insetList = new ArrayList<>();
|
|
|
List<TradeOrderRoomModelDO> updateList = new ArrayList<>();
|
|
List<TradeOrderRoomModelDO> updateList = new ArrayList<>();
|
|
|
|
|
+
|
|
|
|
|
+ TradeOrderDO tradeOrderDO = tradeOrderMapper.selectById(orderId);
|
|
|
|
|
+ Long shipId = tradeOrderDO.getShipId();
|
|
|
|
|
+
|
|
|
roomModelList.forEach(item -> {
|
|
roomModelList.forEach(item -> {
|
|
|
TradeOrderRoomModelDO tradeOrderRoomModelDO = BeanUtils.toBean(item, TradeOrderRoomModelDO.class);
|
|
TradeOrderRoomModelDO tradeOrderRoomModelDO = BeanUtils.toBean(item, TradeOrderRoomModelDO.class);
|
|
|
tradeOrderRoomModelDO.setSyncStatus("0");
|
|
tradeOrderRoomModelDO.setSyncStatus("0");
|
|
|
tradeOrderRoomModelDO.setOrderId(orderId);
|
|
tradeOrderRoomModelDO.setOrderId(orderId);
|
|
|
tradeOrderRoomModelDO.setDiscount(tradeOrderRoomModelDO.getUnitPrice().subtract(tradeOrderRoomModelDO.getRealMoney()));
|
|
tradeOrderRoomModelDO.setDiscount(tradeOrderRoomModelDO.getUnitPrice().subtract(tradeOrderRoomModelDO.getRealMoney()));
|
|
|
tradeOrderRoomModelDO.setOrderNo(orderNo);
|
|
tradeOrderRoomModelDO.setOrderNo(orderNo);
|
|
|
|
|
+ tradeOrderRoomModelDO.setShipId(shipId);
|
|
|
if(tradeOrderRoomModelDO.getId() == null){
|
|
if(tradeOrderRoomModelDO.getId() == null){
|
|
|
tradeOrderRoomModelDO.setId(IdWorker.getId());
|
|
tradeOrderRoomModelDO.setId(IdWorker.getId());
|
|
|
insetList.add(tradeOrderRoomModelDO);
|
|
insetList.add(tradeOrderRoomModelDO);
|