diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageReceiveNsdpController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageReceiveNsdpController.java index c01815aec..29e29e565 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageReceiveNsdpController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageReceiveNsdpController.java @@ -1,25 +1,34 @@ package com.jero.modules.ota.controller; -import java.util.Arrays; -import java.util.List; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import com.jero.common.api.vo.Result; -import com.jero.common.system.query.QueryGenerator; -import com.jero.modules.ota.entity.OtaManageReceiveNsdp; -import com.jero.modules.ota.service.IOtaManageReceiveNsdpService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import lombok.extern.slf4j.Slf4j; +import com.jero.common.api.vo.Result; +import com.jero.common.aspect.annotation.AutoLog; import com.jero.common.system.base.controller.JeroController; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; -import org.springframework.web.servlet.ModelAndView; +import com.jero.common.system.query.QueryGenerator; +import com.jero.modules.ota.entity.OtaManageReceiveNsdp; +import com.jero.modules.ota.service.IOtaManageReceiveNsdpService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import com.jero.common.aspect.annotation.AutoLog; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.servlet.ModelAndView; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.Arrays; +import java.util.List; /** @@ -35,7 +44,7 @@ import com.jero.common.aspect.annotation.AutoLog; public class OtaManageReceiveNsdpController extends JeroController { @Autowired private IOtaManageReceiveNsdpService otaManageReceiveNsdpService; - + /** * 分页列表查询 * @@ -167,4 +176,15 @@ public class OtaManageReceiveNsdpController extends JeroController getReleaseDate(String releaseName,String vehicle) { + String time = otaManageReceiveNsdpService.getReleaseDate(releaseName,vehicle); + return Result.OK(time); + } + + + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageReceiveNsdpService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageReceiveNsdpService.java index 938e33eb9..c6920d5ec 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageReceiveNsdpService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageReceiveNsdpService.java @@ -63,4 +63,6 @@ public interface IOtaManageReceiveNsdpService extends IService getOtaManageReceiveNsdpSync(); List getListByReleaseName(String releaseName); + + String getReleaseDate(String releaseName,String vehicle); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageReceiveNsdpServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageReceiveNsdpServiceImpl.java index 118c9cb12..542922b25 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageReceiveNsdpServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageReceiveNsdpServiceImpl.java @@ -1,13 +1,21 @@ package com.jero.modules.ota.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.modules.ota.entity.OtaManageReceiveNsdp; import com.jero.modules.ota.mapper.OtaManageReceiveNsdpMapper; import com.jero.modules.ota.service.IOtaManageReceiveNsdpService; +import com.jero.modules.system.util.StringUtils; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.stereotype.Service; -import java.util.List; + +import java.text.Collator; +import java.util.ArrayList; +import java.util.Collections; import java.util.Date; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import java.util.List; +import java.util.Locale; +import java.util.stream.Collectors; /** * @Description: OTA管理NSDP同步表 @@ -100,4 +108,49 @@ public class OtaManageReceiveNsdpServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(OtaManageReceiveNsdp::getReleaseName, releaseName); + List list = this.list(queryWrapper); + if(ObjectUtils.isEmpty(list)){ + return releaseDate; + } + List otaManageReceiveNsdpList = list.stream().filter(e -> "PLM".equals(e.getDateName())).collect(Collectors.toList()); + if(ObjectUtils.isNotEmpty(otaManageReceiveNsdpList)){ + //根据适用车型过滤数据 + List otaManageReceiveNsdpListTemp = new ArrayList<>(); + for (OtaManageReceiveNsdp otaManageReceiveNsdp : otaManageReceiveNsdpList) { + String vehicleTemp = otaManageReceiveNsdp.getVehicle(); + if(StringUtils.isNotBlank(vehicleTemp)){ + //Aries G1.1 CN适用车型按此类格式进行拆分 + String[] splitArr = vehicleTemp.split(" "); + if(splitArr.length == 3 && vehicle.equals(splitArr[0]+" "+splitArr[2])){ + otaManageReceiveNsdpListTemp.add(otaManageReceiveNsdp); + } + } + } + if(ObjectUtils.isNotEmpty(otaManageReceiveNsdpListTemp)){ + Collections.sort(otaManageReceiveNsdpListTemp, (e1, e2) -> { + String e1ReleaseDate = StringUtils.isNotBlank(e1.getReleaseDate()) ? e1.getReleaseDate() : ""; + String e2ReleaseDate = StringUtils.isNotBlank(e2.getReleaseDate()) ? e2.getReleaseDate() : ""; + return comparator.compare(e1ReleaseDate, e2ReleaseDate); + }); + releaseDate = otaManageReceiveNsdpListTemp.get(0).getReleaseDate(); + } + } + } + return releaseDate; + } }