diff --git a/fw-valhalla-rpc/src/main/java/cn/fw/valhalla/rpc/angel/InsurerRpcService.java b/fw-valhalla-rpc/src/main/java/cn/fw/valhalla/rpc/angel/InsurerRpcService.java index c94452d..18e2208 100644 --- a/fw-valhalla-rpc/src/main/java/cn/fw/valhalla/rpc/angel/InsurerRpcService.java +++ b/fw-valhalla-rpc/src/main/java/cn/fw/valhalla/rpc/angel/InsurerRpcService.java @@ -17,8 +17,10 @@ import org.springframework.data.redis.core.BoundValueOperations; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.stereotype.Service; import org.springframework.util.Assert; +import org.springframework.util.CollectionUtils; import java.util.Date; +import java.util.List; import java.util.Objects; import java.util.concurrent.TimeUnit; @@ -84,25 +86,37 @@ public class InsurerRpcService { if (StringUtils.isValid(cache)) { return JSONObject.parseObject(cache, InsuranceDTO.class); } - Message msg = insuranceEstimateApiService.getCusLatest(customerId); + Message> msg = insuranceEstimateApiService.getCusLatest(customerId); + log.info("查询正在生效的保险信息:{}", msg.getResult()); - InsuranceOrderDTO data = msg.getData(); - if (!msg.isSuccess() || Objects.isNull(data) || Objects.isNull(data.getInsuranceInfo())) { + List data = msg.getData(); + if (!msg.isSuccess() || CollectionUtils.isEmpty(data)) { return null; } - Date tciEndTime = data.getInsuranceInfo().getTciEndTime(); - Date vciEndTime = data.getInsuranceInfo().getVciEndTime(); + Date tciEndTime = null; + Date vciEndTime = null; + Date tciStartTime = null; + Date vciStartTime = null; + for (InsuranceOrderDTO insuranceOrderDTO : data) { + if (1 == insuranceOrderDTO.getInsuranceInfo().getInsuranceType()) { + tciEndTime = insuranceOrderDTO.getInsuranceInfo().getEndTime(); + tciStartTime = insuranceOrderDTO.getInsuranceInfo().getStartTime(); + } else if (2 == insuranceOrderDTO.getInsuranceInfo().getInsuranceType()) { + vciEndTime = insuranceOrderDTO.getInsuranceInfo().getEndTime(); + vciStartTime = insuranceOrderDTO.getInsuranceInfo().getStartTime(); + } + } final Date now = new Date(); boolean before1 = !Objects.isNull(tciEndTime) && now.before(tciEndTime); - boolean before2 = !Objects.isNull(tciEndTime) && now.before(vciEndTime); + boolean before2 = !Objects.isNull(vciEndTime) && now.before(vciEndTime); if (before1 || before2) { InsuranceDTO dto = new InsuranceDTO(); BeanUtils.copyProperties(data, dto); - dto.setEffectDate(data.getInsuranceInfo().getVciStartTime()); - dto.setExpiryDate(data.getInsuranceInfo().getVciEndTime()); - dto.setTciEffectDate(data.getInsuranceInfo().getTciStartTime()); - dto.setTciExpiryDate(data.getInsuranceInfo().getTciEndTime()); + dto.setEffectDate(vciStartTime); + dto.setExpiryDate(vciEndTime); + dto.setTciEffectDate(tciStartTime); + dto.setTciExpiryDate(tciEndTime); setToCache(key, JSONObject.toJSONString(dto), 30); return dto; } diff --git a/fw-valhalla-service/src/main/java/cn/fw/valhalla/component/InsuranceConsumer.java b/fw-valhalla-service/src/main/java/cn/fw/valhalla/component/InsuranceConsumer.java index a5c7676..cd56478 100644 --- a/fw-valhalla-service/src/main/java/cn/fw/valhalla/component/InsuranceConsumer.java +++ b/fw-valhalla-service/src/main/java/cn/fw/valhalla/component/InsuranceConsumer.java @@ -2,7 +2,6 @@ package cn.fw.valhalla.component; import cn.fw.angel.sdk.result.InsuOrderMqDTO; import cn.fw.valhalla.common.utils.DateUtil; -import cn.fw.valhalla.common.utils.StringUtils; import cn.fw.valhalla.domain.db.OriginalData; import cn.fw.valhalla.domain.db.customer.Customer; import cn.fw.valhalla.sdk.enums.DataTypeEnum; @@ -62,25 +61,27 @@ public class InsuranceConsumer implements RocketMQListener { } originalData = new OriginalData(); + if (1 == t.getInsuranceType() || 2 == t.getInsuranceType()) { + Date startTime = t.getStartTime(); + String detaId = t.getOrderNo(); - Date startTime = Objects.isNull(t.getTciStartTime()) ? t.getVciStartTime() : t.getTciStartTime(); - String detaId = StringUtils.isEmpty(t.getTciOrderNo()) ? t.getVciOrderNo() : t.getTciOrderNo(); + Timestamp insExpireTime = DateUtil.getExpiredYear(startTime, 1); + customer.setInsuranceExpires(insExpireTime); + customerService.updateById(customer); - Timestamp insExpireTime = DateUtil.getExpiredYear(startTime, 1); - customer.setInsuranceExpires(insExpireTime); - customerService.updateById(customer); + originalData.setType(DataTypeEnum.BI); + originalData.setCustomerId(customer.getId()); + originalData.setPlateNo(customer.getPlateNo()); + originalData.setUserId(t.getUploaderId()); + originalData.setGenerateTime(insExpireTime); + originalData.setDetailId(detaId); + originalData.setSolved(Boolean.FALSE); + originalData.setShopId(t.getShopId()); + originalData.setGroupId(t.getGroupId()); + originalData.setCreateTime(new Date()); + originalData.setUpdateTime(new Date()); + originalDataService.save(originalData); + } - originalData.setType(DataTypeEnum.BI); - originalData.setCustomerId(customer.getId()); - originalData.setPlateNo(customer.getPlateNo()); - originalData.setUserId(t.getUploaderId()); - originalData.setGenerateTime(insExpireTime); - originalData.setDetailId(detaId); - originalData.setSolved(Boolean.FALSE); - originalData.setShopId(t.getShopId()); - originalData.setGroupId(t.getGroupId()); - originalData.setCreateTime(new Date()); - originalData.setUpdateTime(new Date()); - originalDataService.save(originalData); } } diff --git a/fw-valhalla-service/src/main/java/cn/fw/valhalla/service/data/impl/LeaveNeedDoServiceImpl.java b/fw-valhalla-service/src/main/java/cn/fw/valhalla/service/data/impl/LeaveNeedDoServiceImpl.java index adaceff..ddcb107 100644 --- a/fw-valhalla-service/src/main/java/cn/fw/valhalla/service/data/impl/LeaveNeedDoServiceImpl.java +++ b/fw-valhalla-service/src/main/java/cn/fw/valhalla/service/data/impl/LeaveNeedDoServiceImpl.java @@ -12,6 +12,7 @@ import org.springframework.lang.Nullable; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import java.util.Date; import java.util.List; /** @@ -42,6 +43,7 @@ public class LeaveNeedDoServiceImpl extends ServiceImpllambdaUpdate() .set(LeaveNeedDo::getDone, Boolean.TRUE) + .set(LeaveNeedDo::getUpdateTime, new Date()) .eq(LeaveNeedDo::getId, id) ); } diff --git a/pom.xml b/pom.xml index 2d73c73..b4cc041 100644 --- a/pom.xml +++ b/pom.xml @@ -48,7 +48,7 @@ 1.0 1.0.0 2.0.0 - 1.0 + 3.0.0 1.0 3.0.0 2.5.3