|
|
@@ -40,6 +40,10 @@ import com.yc.ship.module.product.api.dto.*;
|
|
|
import com.yc.ship.module.product.controller.admin.voyage.vo.VoyageRespVO;
|
|
|
import com.yc.ship.module.product.dal.dataobject.voyage.VoyageDO;
|
|
|
import com.yc.ship.module.product.service.voyage.VoyageService;
|
|
|
+import com.yc.ship.module.resource.api.route.RouteApi;
|
|
|
+import com.yc.ship.module.resource.api.route.dto.RouteRespDTO;
|
|
|
+import com.yc.ship.module.resource.api.ship.ShipApi;
|
|
|
+import com.yc.ship.module.resource.api.ship.dto.ShipRespDTO;
|
|
|
import com.yc.ship.module.resource.dal.dataobject.route.ResourceRouteDO;
|
|
|
import com.yc.ship.module.resource.dal.dataobject.ship.ResourceShipDO;
|
|
|
import com.yc.ship.module.resource.dal.mysql.route.ResourceRouteMapper;
|
|
|
@@ -124,7 +128,9 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
@Resource
|
|
|
private ProductApi productApi;
|
|
|
@Resource
|
|
|
- private SmsSendApi smsSendApi;
|
|
|
+ private RouteApi routeApi;
|
|
|
+ @Resource
|
|
|
+ private ShipApi shipApi;
|
|
|
@Resource
|
|
|
private MemberUserApi memberUserApi;
|
|
|
@Resource
|
|
|
@@ -1765,9 +1771,15 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
storeInfo = storeApi.getStoreInfo(storeId);
|
|
|
}
|
|
|
VoyageRespDTO voyage = productApi.getVoyage(createVO.getVoyageId());
|
|
|
+ RouteRespDTO routeRespDTO = routeApi.queryRouteById(voyage.getRouteId());
|
|
|
+ ShipRespDTO ship = shipApi.queryShip(createVO.getShipId());
|
|
|
int maxOrderNo = tradeOrderService.getMaxOrderNo(createVO.getVoyageId());
|
|
|
String date = DateUtils.format(new Date(), "yyyyMMddmm");
|
|
|
- String orderNo = distributorDO.getCode() + "-" + date + "-" + voyage.getCode() + "-" + (maxOrderNo + 1);
|
|
|
+ String code = "YC";
|
|
|
+ if(routeRespDTO!=null && routeRespDTO.getDirection()==2){
|
|
|
+ code ="CY";
|
|
|
+ }
|
|
|
+ String orderNo = ship.getCode() + "-" + date + "-" + code + "-" + (maxOrderNo + 1);
|
|
|
if (distributorDO.getCode() == null) {
|
|
|
orderNo = date + "-" + voyage.getCode() + "-" + (maxOrderNo + 1);
|
|
|
}
|
|
|
@@ -1956,7 +1968,8 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
TradeOrderTotalVO summary = createVO.getSummary();
|
|
|
TradeOrderTotalDO tradeOrderTotalDO = BeanUtils.toBean(summary, TradeOrderTotalDO.class);
|
|
|
Long orderId = result.getCheckedData().getOrderId();
|
|
|
- tradeOrderTotalDO.setOrderId(orderId);
|
|
|
+ tradeOrderTotalDO.setOrderId(IdWorker.getId());
|
|
|
+ tradeOrderTotalDO.setOldOrderId(orderId);
|
|
|
tradeOrderTotalDO.setOtherRemark(createVO.getOtherRemark());
|
|
|
tradeOrderTotalDO.setRealMoney(createVO.getRealAmount());
|
|
|
tradeOrderTotalDO.setOtherMoney(createVO.getOtherAmount());
|
|
|
@@ -2047,10 +2060,12 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
return CommonResult.error(ORDER_NOT_EXIST);
|
|
|
}
|
|
|
String orderNo = tradeOrderDO.getOrderNo();
|
|
|
+ Date updateTime = new Date();
|
|
|
List<TradeOrderCountryReqVO> countryData = createVO.getCountryData();
|
|
|
ShipTradeOrderCreateReqVO shipTradeOrderCreateReqVO = BeanUtils.toBean(createVO, ShipTradeOrderCreateReqVO.class);
|
|
|
shipTradeOrderCreateReqVO.setDistributorId(loginUser.getDistributorId());
|
|
|
shipTradeOrderCreateReqVO.setGroupNo(createVO.getGroupNo());
|
|
|
+ shipTradeOrderCreateReqVO.setTravelDate(tradeOrderDO.getTravelDate());
|
|
|
shipTradeOrderCreateReqVO.setOrderId(orderId);
|
|
|
if (createVO.getSummary().getOrderMoney() != null && createVO.getRealAmount() != null && !createVO.getSummary().getOrderMoney().equals(createVO.getRealAmount())) {
|
|
|
shipTradeOrderCreateReqVO.setAmount(createVO.getRealAmount());
|
|
|
@@ -2059,6 +2074,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
TradeOrderBindDO tradeOrderBindDO = new TradeOrderBindDO();
|
|
|
tradeOrderBindDO.setId(IdWorker.getId());
|
|
|
tradeOrderBindDO.setType(1);
|
|
|
+ tradeOrderBindDO.setBindId(orderId);
|
|
|
tradeOrderBindDO.setCustom("");
|
|
|
tradeOrderBindDO.setRemark("modify订单金额修改,订单金额:" + createVO.getSummary().getOrderMoney() + ",订单修改后金额:" + createVO.getRealAmount());
|
|
|
shipTradeOrderCreateReqVO.setTradeOrderBindDO(tradeOrderBindDO);
|
|
|
@@ -2197,28 +2213,35 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
shipTradeOrderCreateReqVO.setSpuAmount(spuMoney);
|
|
|
|
|
|
|
|
|
- Date travelDate = shipTradeOrderCreateReqVO.getTravelDate();
|
|
|
+ Date travelDate = tradeOrderDO.getTravelDate();
|
|
|
|
|
|
- if (loginUser.getDistributorId() != null && DateUtil.compare(DateUtil.beginOfDay(shipTradeOrderCreateReqVO.getTravelDate()), DateUtil.offsetDay(new Date(), 3)) < 0) {
|
|
|
+ if (loginUser.getDistributorId() != null && DateUtil.compare(DateUtil.beginOfDay(travelDate), DateUtil.offsetDay(new Date(), 3)) < 0) {
|
|
|
Asserts.isTrue(false, "已过最晚修改时间");
|
|
|
}
|
|
|
|
|
|
if (loginUser.getDistributorId() == null && DateUtil.compare(travelDate, DateUtil.offsetDay(new Date(), -2)) < 0) {
|
|
|
Asserts.isTrue(false, "已过最晚修改时间");
|
|
|
}
|
|
|
-
|
|
|
+ shipTradeOrderCreateReqVO.setUpdateTime(updateTime);
|
|
|
CommonResult<TradeOrderRespDTO> result = doShipModifyOrder(loginUser, shipTradeOrderCreateReqVO);
|
|
|
if (result.isError()) {
|
|
|
return CommonResult.error(result);
|
|
|
}
|
|
|
+ Long neworderId = result.getCheckedData().getOrderId();
|
|
|
TradeOrderTotalVO summary = createVO.getSummary();
|
|
|
TradeOrderTotalDO tradeOrderTotalDO = BeanUtils.toBean(summary, TradeOrderTotalDO.class);
|
|
|
-// Long orderId = result.getCheckedData().getOrderId();
|
|
|
- tradeOrderTotalDO.setOrderId(orderId);
|
|
|
+ tradeOrderTotalMapper.update(new LambdaUpdateWrapper<TradeOrderTotalDO>()
|
|
|
+ .set(TradeOrderTotalDO::getDeleted, 1)
|
|
|
+ .set(TradeOrderTotalDO::getUpdateTime, updateTime)
|
|
|
+ .eq(TradeOrderTotalDO::getOldOrderId, orderId)
|
|
|
+ .eq(TradeOrderTotalDO::getDeleted, 0)
|
|
|
+ );
|
|
|
+ tradeOrderTotalDO.setOrderId(IdWorker.getId());
|
|
|
+ tradeOrderTotalDO.setOldOrderId(neworderId);
|
|
|
tradeOrderTotalDO.setOtherRemark(createVO.getOtherRemark());
|
|
|
tradeOrderTotalDO.setRealMoney(createVO.getRealAmount());
|
|
|
tradeOrderTotalDO.setOtherMoney(createVO.getOtherAmount());
|
|
|
- tradeOrderTotalMapper.insertOrUpdate(tradeOrderTotalDO);
|
|
|
+ tradeOrderTotalMapper.insert(tradeOrderTotalDO);
|
|
|
|
|
|
//创建订单房型数据
|
|
|
List<TradeOrderRoomModelDO> list = new ArrayList<>();
|
|
|
@@ -2228,7 +2251,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
countryData.forEach(item -> {
|
|
|
TradeOrderCountryDO countryDO = BeanUtils.toBean(item, TradeOrderCountryDO.class);
|
|
|
Long countryId = IdWorker.getId();
|
|
|
- countryDO.setOrderId(orderId);
|
|
|
+ countryDO.setOrderId(neworderId);
|
|
|
countryDO.setId(countryId);
|
|
|
tradeOrderCountryDOList.add(countryDO);
|
|
|
List<TradeOrderRoomModelReqVO> roomModels = item.getRoomModels();
|
|
|
@@ -2236,7 +2259,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
roomModels.forEach(roomModel -> {
|
|
|
TradeOrderRoomModelDO roomModelDO = BeanUtils.toBean(roomModel, TradeOrderRoomModelDO.class);
|
|
|
Long roomModelId = IdWorker.getId();
|
|
|
- roomModelDO.setOrderId(orderId);
|
|
|
+ roomModelDO.setOrderId(neworderId);
|
|
|
roomModelDO.setId(roomModelId);
|
|
|
roomModelDO.setCountryId(countryId);
|
|
|
list.add(roomModelDO);
|
|
|
@@ -2247,7 +2270,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
}
|
|
|
floorReqVOList.forEach(floor -> {
|
|
|
TradeOrderFloorDO floorDO = BeanUtils.toBean(floor, TradeOrderFloorDO.class);
|
|
|
- floorDO.setOrderId(orderId);
|
|
|
+ floorDO.setOrderId(neworderId);
|
|
|
floorDO.setRoomModelId(roomModelId);
|
|
|
floorPlus.add(floorDO);
|
|
|
});
|
|
|
@@ -2257,17 +2280,17 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
|
|
|
tradeOrderCountryMapper.update(new LambdaUpdateWrapper<TradeOrderCountryDO>()
|
|
|
.set(TradeOrderCountryDO::getDeleted, 1)
|
|
|
- .set(TradeOrderCountryDO::getUpdateTime, new Date())
|
|
|
+ .set(TradeOrderCountryDO::getUpdateTime, updateTime)
|
|
|
.eq(TradeOrderCountryDO::getOrderId, orderId)
|
|
|
);
|
|
|
tradeOrderRoomModelMapper.update(new LambdaUpdateWrapper<TradeOrderRoomModelDO>()
|
|
|
.set(TradeOrderRoomModelDO::getDeleted, 1)
|
|
|
- .set(TradeOrderRoomModelDO::getUpdateTime, new Date())
|
|
|
+ .set(TradeOrderRoomModelDO::getUpdateTime, updateTime)
|
|
|
.eq(TradeOrderRoomModelDO::getOrderId, orderId)
|
|
|
);
|
|
|
tradeOrderFloorMapper.update(new LambdaUpdateWrapper<TradeOrderFloorDO>()
|
|
|
.set(TradeOrderFloorDO::getDeleted, 1)
|
|
|
- .set(TradeOrderFloorDO::getUpdateTime, new Date())
|
|
|
+ .set(TradeOrderFloorDO::getUpdateTime, updateTime)
|
|
|
.eq(TradeOrderFloorDO::getOrderId, orderId)
|
|
|
);
|
|
|
|
|
|
@@ -2327,7 +2350,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
orderRespNewVO.setTradeVisitorList(visitorDOList);
|
|
|
|
|
|
//设置订单汇总数据
|
|
|
- TradeOrderTotalDO tradeOrderTotalDO = tradeOrderTotalMapper.selectOne(TradeOrderTotalDO::getOrderId, id);
|
|
|
+ TradeOrderTotalDO tradeOrderTotalDO = tradeOrderTotalMapper.selectOne(TradeOrderTotalDO::getOldOrderId, id);
|
|
|
TradeOrderTotalVO summary = BeanUtils.toBean(tradeOrderTotalDO, TradeOrderTotalVO.class);
|
|
|
orderRespNewVO.setSummary(summary);
|
|
|
|
|
|
@@ -2361,7 +2384,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
List<TradeDetailRespVO> detailList = tradeDetailMapper.getOrderIdDetail(tradeOrderDO.getId());
|
|
|
tradeOrderVO.setTradeDetailDOList(detailList);
|
|
|
//设置订单汇总数据
|
|
|
- TradeOrderTotalDO tradeOrderTotalDO = tradeOrderTotalMapper.selectOne(TradeOrderTotalDO::getOrderId, orderId);
|
|
|
+ TradeOrderTotalDO tradeOrderTotalDO = tradeOrderTotalMapper.selectOne(TradeOrderTotalDO::getOldOrderId, orderId);
|
|
|
tradeOrderVO.setSummary(tradeOrderTotalDO);
|
|
|
|
|
|
OrderJzDO orderJzDO = orderJzMapper.selectOne(OrderJzDO::getOrderId, orderId);
|