|
@@ -28,6 +28,7 @@ import com.yc.ship.framework.common.pojo.PageResult;
|
|
|
import com.yc.ship.framework.common.util.collection.CollectionUtils;
|
|
import com.yc.ship.framework.common.util.collection.CollectionUtils;
|
|
|
import com.yc.ship.framework.common.util.object.BeanUtils;
|
|
import com.yc.ship.framework.common.util.object.BeanUtils;
|
|
|
import com.yc.ship.framework.common.util.object.ObjectUtils;
|
|
import com.yc.ship.framework.common.util.object.ObjectUtils;
|
|
|
|
|
+import com.yc.ship.framework.dict.core.DictFrameworkUtils;
|
|
|
import com.yc.ship.framework.ip.core.utils.AreaUtils;
|
|
import com.yc.ship.framework.ip.core.utils.AreaUtils;
|
|
|
import com.yc.ship.framework.mybatis.core.query.LambdaQueryWrapperX;
|
|
import com.yc.ship.framework.mybatis.core.query.LambdaQueryWrapperX;
|
|
|
import com.yc.ship.framework.security.core.LoginUser;
|
|
import com.yc.ship.framework.security.core.LoginUser;
|
|
@@ -50,6 +51,7 @@ 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.controller.admin.voyage.vo.VoyageRespVO;
|
|
|
import com.yc.ship.module.product.dal.dataobject.priceroommodeltype.PriceRoomModelTypeDO;
|
|
import com.yc.ship.module.product.dal.dataobject.priceroommodeltype.PriceRoomModelTypeDO;
|
|
|
import com.yc.ship.module.product.dal.dataobject.voyage.VoyageDO;
|
|
import com.yc.ship.module.product.dal.dataobject.voyage.VoyageDO;
|
|
|
|
|
+import com.yc.ship.module.product.dal.dataobject.voyagestockdistribute.VoyageStockDistributeNewDO;
|
|
|
import com.yc.ship.module.product.enums.DistributorOrStoreEnum;
|
|
import com.yc.ship.module.product.enums.DistributorOrStoreEnum;
|
|
|
import com.yc.ship.module.product.service.priceroommodeltype.PriceRoomModelTypeService;
|
|
import com.yc.ship.module.product.service.priceroommodeltype.PriceRoomModelTypeService;
|
|
|
import com.yc.ship.module.product.service.voyage.VoyageService;
|
|
import com.yc.ship.module.product.service.voyage.VoyageService;
|
|
@@ -57,9 +59,11 @@ 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.route.dto.RouteRespDTO;
|
|
|
import com.yc.ship.module.resource.api.ship.ShipApi;
|
|
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.api.ship.dto.ShipRespDTO;
|
|
|
|
|
+import com.yc.ship.module.resource.dal.dataobject.roommodel.ResourceRoomModelDO;
|
|
|
import com.yc.ship.module.resource.dal.dataobject.route.ResourceRouteDO;
|
|
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.dataobject.ship.ResourceShipDO;
|
|
|
import com.yc.ship.module.resource.dal.mysql.route.ResourceRouteMapper;
|
|
import com.yc.ship.module.resource.dal.mysql.route.ResourceRouteMapper;
|
|
|
|
|
+import com.yc.ship.module.resource.service.roommodel.ResourceRoomModelService;
|
|
|
import com.yc.ship.module.resource.service.ship.ResourceShipService;
|
|
import com.yc.ship.module.resource.service.ship.ResourceShipService;
|
|
|
import com.yc.ship.module.system.api.dict.DictDataApi;
|
|
import com.yc.ship.module.system.api.dict.DictDataApi;
|
|
|
import com.yc.ship.module.system.api.dict.dto.DictDataRespDTO;
|
|
import com.yc.ship.module.system.api.dict.dto.DictDataRespDTO;
|
|
@@ -145,6 +149,9 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
private RouteApi routeApi;
|
|
private RouteApi routeApi;
|
|
|
@Resource
|
|
@Resource
|
|
|
private ShipApi shipApi;
|
|
private ShipApi shipApi;
|
|
|
|
|
+
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private ResourceRoomModelService resourceRoomModelService;
|
|
|
@Resource
|
|
@Resource
|
|
|
private MemberUserApi memberUserApi;
|
|
private MemberUserApi memberUserApi;
|
|
|
@Resource
|
|
@Resource
|
|
@@ -1835,6 +1842,23 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
});
|
|
});
|
|
|
orderRespNewVO.setCountryDesc(String.join(",", countryDesList));
|
|
orderRespNewVO.setCountryDesc(String.join(",", countryDesList));
|
|
|
|
|
|
|
|
|
|
+ List<TradeOrderRoomModelDO> tradeOrderRoomModelDOS = tradeOrderRoomModelMapper.selectListByOrderId(tradeOrderDO.getId());
|
|
|
|
|
+ Map<String, Double> useNumMap = tradeOrderRoomModelDOS.stream().collect(Collectors.groupingBy(item -> item.getRoomModelId() + "_" + item.getFloor(), Collectors.summingDouble(TradeOrderRoomModelDO::getUseRoomNum)));
|
|
|
|
|
+ List<Long> roomModelIds = convertList(tradeOrderRoomModelDOS, TradeOrderRoomModelDO::getRoomModelId);
|
|
|
|
|
+ List<ResourceRoomModelDO> roomModelRespVOS = resourceRoomModelService.getList(roomModelIds);
|
|
|
|
|
+ Map<Long, ResourceRoomModelDO> roomModelDOMap = CollectionUtils.convertMap(roomModelRespVOS, ResourceRoomModelDO::getId);
|
|
|
|
|
+ List<String> useRoomDesList = new ArrayList<>();
|
|
|
|
|
+ useNumMap.keySet().stream().forEach(key -> {
|
|
|
|
|
+ Long roomModelId = Long.valueOf(key.split("_")[0]);
|
|
|
|
|
+ Integer floor = Integer.valueOf(key.split("_")[1]);
|
|
|
|
|
+ ResourceRoomModelDO roomModelDO = roomModelDOMap.get(roomModelId);
|
|
|
|
|
+ if(roomModelDO != null) {
|
|
|
|
|
+ useRoomDesList.add(useNumMap.get(key) + roomModelDO.getShowName()+"("+floor+"F)");
|
|
|
|
|
+ }else {
|
|
|
|
|
+ useRoomDesList.add(useNumMap.get(key) + "已删除房型" + "("+floor+"F)");
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ orderRespNewVO.setUseRoomTotalDesc(String.join(",", useRoomDesList));
|
|
|
|
|
|
|
|
if (tradeOrderDO.getPayStatus() == 0) {
|
|
if (tradeOrderDO.getPayStatus() == 0) {
|
|
|
tradeOrderDO.setPayAmount(BigDecimal.ZERO);
|
|
tradeOrderDO.setPayAmount(BigDecimal.ZERO);
|
|
@@ -1942,6 +1966,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
orderData.put("countryDes", orderConfirmation.getCountryDesc());
|
|
orderData.put("countryDes", orderConfirmation.getCountryDesc());
|
|
|
|
|
+ orderData.put("useRoomTotalDesc", orderConfirmation.getUseRoomTotalDesc());
|
|
|
TradeOrderTotalVO summary = orderConfirmation.getSummary();
|
|
TradeOrderTotalVO summary = orderConfirmation.getSummary();
|
|
|
if (summary != null) {
|
|
if (summary != null) {
|
|
|
orderData.put("roomModelDes", summary.getUseRoomTotalNum());
|
|
orderData.put("roomModelDes", summary.getUseRoomTotalNum());
|
|
@@ -1951,7 +1976,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
|
|
|
|
|
orderData.put("totalMoney", totalMoney);
|
|
orderData.put("totalMoney", totalMoney);
|
|
|
orderData.put("creatorName", orderConfirmation.getCreatorName());
|
|
orderData.put("creatorName", orderConfirmation.getCreatorName());
|
|
|
- orderData.put("firstDate", DateUtil.format(org.apache.commons.lang3.time.DateUtils.addDays(Date.from(orderConfirmation.getUpdateTime().atZone(ZoneOffset.ofHours(8)).toInstant()), 8), "yyyy-MM-dd"));
|
|
|
|
|
|
|
+ orderData.put("firstDate", DateUtil.format(org.apache.commons.lang3.time.DateUtils.addDays(Date.from(orderConfirmation.getUpdateTime().atZone(ZoneOffset.ofHours(8)).toInstant()), 7), "yyyy-MM-dd"));
|
|
|
orderData.put("lastDate", DateUtil.format(org.apache.commons.lang3.time.DateUtils.addDays(Date.from(voyage.getStartTime().atZone(ZoneOffset.ofHours(8)).toInstant()), -21), "yyyy-MM-dd"));
|
|
orderData.put("lastDate", DateUtil.format(org.apache.commons.lang3.time.DateUtils.addDays(Date.from(voyage.getStartTime().atZone(ZoneOffset.ofHours(8)).toInstant()), -21), "yyyy-MM-dd"));
|
|
|
orderData.put("today", DateUtil.format(new Date(), "yyyy-MM-dd"));
|
|
orderData.put("today", DateUtil.format(new Date(), "yyyy-MM-dd"));
|
|
|
|
|
|
|
@@ -1966,6 +1991,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
item.put("nationality", StringUtils.isEmpty(tradeVisitorDO.getNationalityName()) ? "" : tradeVisitorDO.getNationalityName());
|
|
item.put("nationality", StringUtils.isEmpty(tradeVisitorDO.getNationalityName()) ? "" : tradeVisitorDO.getNationalityName());
|
|
|
item.put("gender", (tradeVisitorDO.getGender() == null || tradeVisitorDO.getGender() == 0) ? "女" : "男");
|
|
item.put("gender", (tradeVisitorDO.getGender() == null || tradeVisitorDO.getGender() == 0) ? "女" : "男");
|
|
|
item.put("dob", StringUtils.isEmpty(tradeVisitorDO.getBirthday()) ? "" : tradeVisitorDO.getBirthday());
|
|
item.put("dob", StringUtils.isEmpty(tradeVisitorDO.getBirthday()) ? "" : tradeVisitorDO.getBirthday());
|
|
|
|
|
+ item.put("credentialTypeName", DictFrameworkUtils.getDictDataLabel("", tradeVisitorDO.getCredentialType()));
|
|
|
item.put("idno", StringUtils.isEmpty(tradeVisitorDO.getCredentialNo()) ? "" : tradeVisitorDO.getCredentialNo());
|
|
item.put("idno", StringUtils.isEmpty(tradeVisitorDO.getCredentialNo()) ? "" : tradeVisitorDO.getCredentialNo());
|
|
|
tradeVisitorData.add(item);
|
|
tradeVisitorData.add(item);
|
|
|
}
|
|
}
|