|
|
@@ -1,7 +1,6 @@
|
|
|
package com.yc.ship.module.marketing.service.policy;
|
|
|
|
|
|
import com.yc.ship.framework.common.util.collection.CollectionUtils;
|
|
|
-import com.yc.ship.framework.ip.core.utils.AreaUtils;
|
|
|
import com.yc.ship.module.marketing.dal.dataobject.policydetail.PolicyDetailDO;
|
|
|
import com.yc.ship.module.marketing.dal.mysql.policydetail.PolicyDetailMapper;
|
|
|
import com.yc.ship.module.product.dal.dataobject.voyage.VoyageDO;
|
|
|
@@ -61,19 +60,15 @@ public class PolicyServiceImpl implements PolicyService {
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public void updatePolicy(PolicySaveReqVO updateReqVO) {
|
|
|
-// throw exception0(500, "暂不支持修改");
|
|
|
// 更新
|
|
|
PolicyDO updateObj = BeanUtils.toBean(updateReqVO, PolicyDO.class);
|
|
|
policyMapper.updateById(updateObj);
|
|
|
-// handlePolicyDetail(updateObj.getId(), updateReqVO);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void deletePolicy(Long id) {
|
|
|
throw exception0(500, "暂不支持删除,请关闭使用状态");
|
|
|
// 删除
|
|
|
-// policyMapper.deleteById(id);
|
|
|
-// policyDetailMapper.deleteByPolicyId(id);
|
|
|
}
|
|
|
|
|
|
private void handlePolicyDetail(Long policyId, PolicySaveReqVO reqVO) {
|
|
|
@@ -83,7 +78,7 @@ public class PolicyServiceImpl implements PolicyService {
|
|
|
List<Long> areaIds = reqVO.getAreaIds();
|
|
|
BigDecimal discountNum = reqVO.getDiscountNum();
|
|
|
List<PolicyDetailDO> policyDetailDOList = new ArrayList<>();
|
|
|
- voyageIds.stream().forEach(voyageId -> {
|
|
|
+ voyageIds.forEach(voyageId -> {
|
|
|
PolicyDetailDO policyDetailDO = new PolicyDetailDO();
|
|
|
policyDetailDO.setShipId(reqVO.getShipId());
|
|
|
policyDetailDO.setPolicyId(policyId);
|
|
|
@@ -93,7 +88,7 @@ public class PolicyServiceImpl implements PolicyService {
|
|
|
policyDetailDO.setSurplusNum(discountNum);
|
|
|
policyDetailDOList.add(policyDetailDO);
|
|
|
});
|
|
|
- if(policyDetailDOList.size() > 0) {
|
|
|
+ if(!policyDetailDOList.isEmpty()) {
|
|
|
policyDetailMapper.insertBatch(policyDetailDOList);
|
|
|
}
|
|
|
}
|
|
|
@@ -135,11 +130,11 @@ public class PolicyServiceImpl implements PolicyService {
|
|
|
List<PolicyDO> policyList = policyMapper.selectList(policyIds);
|
|
|
List<PolicyDO> result = policyList.stream().filter(policyDO -> {
|
|
|
LocalDateTime boardingTime = voyage.getBoardingTime();
|
|
|
- return boardingTime.plusDays(policyDO.getEarlyDays() * -1L).compareTo(LocalDateTime.now()) > 0;
|
|
|
+ return boardingTime.plusDays(policyDO.getEarlyDays() * -1L).isAfter(LocalDateTime.now());
|
|
|
}).collect(Collectors.toList());
|
|
|
List<PolicyRespVO> policyRespVOS = BeanUtils.toBean(result, PolicyRespVO.class);
|
|
|
Map<Long, PolicyDetailDO> policyDetailDOMap = CollectionUtils.convertMap(filterPolicyDetails, PolicyDetailDO::getPolicyId);
|
|
|
- policyRespVOS.stream().forEach(policyRespVO -> {
|
|
|
+ policyRespVOS.forEach(policyRespVO -> {
|
|
|
PolicyDetailDO policyDetailDO = policyDetailDOMap.get(policyRespVO.getId());
|
|
|
if(policyDetailDO != null) {
|
|
|
policyRespVO.setAreaIds(policyDetailDO.getAreaIds());
|
|
|
@@ -161,11 +156,11 @@ public class PolicyServiceImpl implements PolicyService {
|
|
|
List<PolicyDO> policyList = policyMapper.selectList(policyIds);
|
|
|
List<PolicyDO> result = policyList.stream().filter(policyDO -> {
|
|
|
LocalDateTime boardingTime = voyage.getBoardingTime();
|
|
|
- return boardingTime.plusDays(policyDO.getEarlyDays() * -1L).compareTo(LocalDateTime.now()) > 0;
|
|
|
+ return boardingTime.plusDays(policyDO.getEarlyDays() * -1L).isAfter(LocalDateTime.now());
|
|
|
}).collect(Collectors.toList());
|
|
|
List<PolicyRespVO> policyRespVOS = BeanUtils.toBean(result, PolicyRespVO.class);
|
|
|
Map<Long, PolicyDetailDO> policyDetailDOMap = CollectionUtils.convertMap(policyDetails, PolicyDetailDO::getPolicyId);
|
|
|
- policyRespVOS.stream().forEach(policyRespVO -> {
|
|
|
+ policyRespVOS.forEach(policyRespVO -> {
|
|
|
PolicyDetailDO policyDetailDO = policyDetailDOMap.get(policyRespVO.getId());
|
|
|
if(policyDetailDO != null) {
|
|
|
policyRespVO.setAreaIds(policyDetailDO.getAreaIds());
|