Merge remote-tracking branch 'origin/dev_20230808_OTA' into dev_20230808_OTA
This commit is contained in:
+8
@@ -157,4 +157,12 @@ public class OtaManageApplyEOController extends JeroController<OtaManageApplyEO,
|
|||||||
return Result.OK(result);
|
return Result.OK(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@AutoLog(value = "全车型和分车型详情")
|
||||||
|
@ApiOperation(value="分车型详情", notes="分车型详情")
|
||||||
|
@GetMapping(value = "/getVersionInfo")
|
||||||
|
public Result<?> getVersionInfo(String vdr) {
|
||||||
|
List<VersionVO> result = otaManageApplyEOService.getVersionInfo(vdr);
|
||||||
|
return Result.OK(result);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+2
@@ -37,4 +37,6 @@ public interface OtaManageApplyEOMapper extends BaseMapper<OtaManageApplyEO> {
|
|||||||
|
|
||||||
List<VersionVO> getProjectVersion(@Param("car") String car, @Param("market") String market);
|
List<VersionVO> getProjectVersion(@Param("car") String car, @Param("market") String market);
|
||||||
|
|
||||||
|
List<VersionVO> getVersionInfo(@Param("vdr") String vdr);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+28
-2
@@ -115,15 +115,41 @@
|
|||||||
|
|
||||||
<select id="getProjectVersion" resultType="com.jero.modules.ota.vo.VersionVO">
|
<select id="getProjectVersion" resultType="com.jero.modules.ota.vo.VersionVO">
|
||||||
SELECT
|
SELECT
|
||||||
plb.id projectId,plb.target_market market,plb.studio_engineer studio,plb.project_version versionNumber,
|
plb.id projectId,
|
||||||
|
plb.parent_id parentId,
|
||||||
|
plb.target_market market,
|
||||||
|
plb.studio_engineer studio,
|
||||||
|
plb.project_version versionNumber,
|
||||||
pni.project_name car,
|
pni.project_name car,
|
||||||
pyni.year_name yearName from project_library_base plb
|
pyni.year_name yearName from project_library_base plb
|
||||||
join project_name_info pni on pni.id = plb.project_name_id
|
join project_name_info pni on pni.id = plb.project_name_id
|
||||||
join project_year_name_info pyni on pyni.project_name_id = pni.id
|
join project_year_name_info pyni on pyni.project_name_id = pni.id
|
||||||
where plb.target_market =#{market}
|
where plb.target_market LIKE CONCAT(CONCAT('%',#{market}),'%')
|
||||||
and pni.project_name =#{car}
|
and pni.project_name =#{car}
|
||||||
GROUP BY plb.id
|
GROUP BY plb.id
|
||||||
ORDER BY project_version asc
|
ORDER BY project_version asc
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getVersionInfo" resultType="com.jero.modules.ota.vo.VersionVO">
|
||||||
|
SELECT
|
||||||
|
plb.id projectId,
|
||||||
|
plb.parent_id parentId,
|
||||||
|
plb.target_market market,
|
||||||
|
plb.project_version versionNumber,
|
||||||
|
ptp.attestation_start_time,
|
||||||
|
ptp.attestation_end_time,
|
||||||
|
ptp.certification_submission,
|
||||||
|
oma.attestation_schedule,
|
||||||
|
oma.project_version,
|
||||||
|
pni.project_name,
|
||||||
|
pyni.year_name
|
||||||
|
FROM
|
||||||
|
project_library_base plb
|
||||||
|
LEFT JOIN project_task_planning ptp ON plb.id = ptp.project_id
|
||||||
|
LEFT JOIN ota_manage_apply oma ON oma.project_version = plb.id
|
||||||
|
LEFT JOIN project_name_info pni ON pni.id = plb.project_name_id
|
||||||
|
LEFT JOIN project_year_name_info pyni ON pyni.project_name_id = pni.id
|
||||||
|
WHERE oma.issue_key = #{vdr}
|
||||||
|
GROUP BY plb.id
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
+7
@@ -98,4 +98,11 @@ public interface IOtaManageApplyEOService extends IService<OtaManageApplyEO> {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<VersionVO> getProjectVersionList(String carMarket);
|
List<VersionVO> getProjectVersionList(String carMarket);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 全车型和分车型详情
|
||||||
|
* @param vdr
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<VersionVO> getVersionInfo(String vdr);
|
||||||
}
|
}
|
||||||
|
|||||||
+69
-3
@@ -13,7 +13,9 @@ import com.jero.modules.ota.service.IOtaManageApplyEOService;
|
|||||||
import com.jero.modules.ota.vo.VersionVO;
|
import com.jero.modules.ota.vo.VersionVO;
|
||||||
import com.jero.modules.project.entity.ProjectTaskPlanning;
|
import com.jero.modules.project.entity.ProjectTaskPlanning;
|
||||||
import com.jero.modules.project.service.impl.ProjectTaskPlanningServiceImpl;
|
import com.jero.modules.project.service.impl.ProjectTaskPlanningServiceImpl;
|
||||||
|
import com.jero.modules.system.entity.SysDictItem;
|
||||||
import com.jero.modules.system.service.impl.SysBaseApiImpl;
|
import com.jero.modules.system.service.impl.SysBaseApiImpl;
|
||||||
|
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
|
||||||
import com.jero.modules.system.util.StringUtils;
|
import com.jero.modules.system.util.StringUtils;
|
||||||
import org.apache.commons.lang3.ObjectUtils;
|
import org.apache.commons.lang3.ObjectUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@@ -24,6 +26,7 @@ import java.text.SimpleDateFormat;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
import java.util.Comparator;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
@@ -48,6 +51,8 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl<OtaManageApplyEOMap
|
|||||||
private ProjectTaskPlanningServiceImpl projectTaskPlanningService;
|
private ProjectTaskPlanningServiceImpl projectTaskPlanningService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private SysBaseApiImpl sysBaseApi;
|
private SysBaseApiImpl sysBaseApi;
|
||||||
|
@Autowired
|
||||||
|
private SysDictItemServiceImpl sysDictItemServiceImpl;
|
||||||
/**
|
/**
|
||||||
* 保存
|
* 保存
|
||||||
*
|
*
|
||||||
@@ -365,17 +370,78 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl<OtaManageApplyEOMap
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<VersionVO> getProjectVersionList(String carMarket) {
|
public List<VersionVO> getProjectVersionList(String carMarket) {
|
||||||
List<VersionVO> versionVOList = new LinkedList<>();
|
|
||||||
|
List<VersionVO> result = new LinkedList<>();
|
||||||
if(StringUtils.isNotBlank(carMarket)){
|
if(StringUtils.isNotBlank(carMarket)){
|
||||||
|
List<VersionVO> versionVOList = new LinkedList<>();
|
||||||
//根据适用车型查询项目版本
|
//根据适用车型查询项目版本
|
||||||
String[] conditionSplit = carMarket.split(" ");
|
String[] conditionSplit = carMarket.split(" ");
|
||||||
String car = conditionSplit[0];
|
String car = conditionSplit[0];
|
||||||
String market = conditionSplit[1];
|
String market = conditionSplit[1];
|
||||||
versionVOList = otaManageApplyEOMapper.getProjectVersion(car, market);
|
versionVOList = otaManageApplyEOMapper.getProjectVersion(car, market);
|
||||||
for (VersionVO versionVO : versionVOList) {
|
List<VersionVO> oneList = versionVOList.stream().filter(e -> StringUtils.isBlank(e.getParentId())).collect(Collectors.toList());
|
||||||
|
List<VersionVO> twoList = versionVOList.stream().filter(e -> StringUtils.isNotBlank(e.getParentId())).collect(Collectors.toList());
|
||||||
|
|
||||||
|
for (VersionVO versionVO : oneList) {
|
||||||
|
result.add(versionVO);
|
||||||
|
List<VersionVO> collect = twoList.stream().filter(e -> versionVO.getProjectId().equals(e.getParentId())).collect(Collectors.toList());
|
||||||
|
Collections.sort(collect, new Comparator<VersionVO>() {
|
||||||
|
@Override
|
||||||
|
public int compare(VersionVO o1, VersionVO o2) {
|
||||||
|
return Integer.valueOf(o1.getVersionNumber()).compareTo(Integer.valueOf(o2.getVersionNumber()));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
result.addAll(collect);
|
||||||
|
}
|
||||||
|
for (VersionVO versionVO : result) {
|
||||||
versionVO.setVersionName(versionVO.getCar() + "-" + versionVO.getYearName() + "-" + versionVO.getMarket() + "-" +versionVO.getVersionNumber());
|
versionVO.setVersionName(versionVO.getCar() + "-" + versionVO.getYearName() + "-" + versionVO.getMarket() + "-" +versionVO.getVersionNumber());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return versionVOList;
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 全车型和分车型详情
|
||||||
|
* @param vdr
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<VersionVO> getVersionInfo(String vdr) {
|
||||||
|
//认证进度数据字典 certification_progress
|
||||||
|
List<SysDictItem> regionDictList = sysDictItemServiceImpl.selectItemsByDictCode("certification_progress");
|
||||||
|
|
||||||
|
List<VersionVO> versionVOList = otaManageApplyEOMapper.getVersionInfo(vdr);
|
||||||
|
List<VersionVO> result = new LinkedList<>();
|
||||||
|
if(!versionVOList.isEmpty()){
|
||||||
|
List<VersionVO> oneList = versionVOList.stream().filter(e -> StringUtils.isBlank(e.getParentId())).collect(Collectors.toList());
|
||||||
|
List<VersionVO> twoList = versionVOList.stream().filter(e -> StringUtils.isNotBlank(e.getParentId())).collect(Collectors.toList());
|
||||||
|
|
||||||
|
for (VersionVO versionVO : oneList) {
|
||||||
|
result.add(versionVO);
|
||||||
|
List<VersionVO> collect = twoList.stream().filter(e -> versionVO.getProjectId().equals(e.getParentId())).collect(Collectors.toList());
|
||||||
|
Collections.sort(collect, new Comparator<VersionVO>() {
|
||||||
|
@Override
|
||||||
|
public int compare(VersionVO o1, VersionVO o2) {
|
||||||
|
return Integer.valueOf(o1.getVersionNumber()).compareTo(Integer.valueOf(o2.getVersionNumber()));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
result.addAll(collect);
|
||||||
|
}
|
||||||
|
for (VersionVO versionVO : result) {
|
||||||
|
if(StringUtils.isBlank(versionVO.getProjectVersion())){
|
||||||
|
versionVO.setVersionName(versionVO.getCar() + "-" + versionVO.getMarket());
|
||||||
|
}else{
|
||||||
|
versionVO.setVersionName(versionVO.getCar() + "-" + versionVO.getYearName() + "-" + versionVO.getMarket() + "-" +versionVO.getVersionNumber());
|
||||||
|
}
|
||||||
|
//认证进度
|
||||||
|
if(StringUtils.isNotBlank(versionVO.getAttestationSchedule())){
|
||||||
|
List<SysDictItem> collect = regionDictList.stream()
|
||||||
|
.filter(e -> e.getItemValue().equals(versionVO.getAttestationSchedule())).collect(Collectors.toList());
|
||||||
|
versionVO.setAttestationScheduleText(collect.get(0).getItemText());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,9 @@ public class VersionVO {
|
|||||||
@ApiModelProperty(value = "项目id")
|
@ApiModelProperty(value = "项目id")
|
||||||
private String projectId;
|
private String projectId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "父id")
|
||||||
|
private String parentId;
|
||||||
|
|
||||||
@ApiModelProperty(value = "认证开始")
|
@ApiModelProperty(value = "认证开始")
|
||||||
private Date attestationStartTime;
|
private Date attestationStartTime;
|
||||||
|
|
||||||
@@ -25,6 +28,12 @@ public class VersionVO {
|
|||||||
@ApiModelProperty(value = "认证批准")
|
@ApiModelProperty(value = "认证批准")
|
||||||
private Date attestationEndTime;
|
private Date attestationEndTime;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "认证进度")
|
||||||
|
private String attestationSchedule;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "认证进度")
|
||||||
|
private String attestationScheduleText;
|
||||||
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "车型")
|
@ApiModelProperty(value = "车型")
|
||||||
private String car;
|
private String car;
|
||||||
@@ -44,4 +53,7 @@ public class VersionVO {
|
|||||||
@ApiModelProperty(value = "项目版本名称")
|
@ApiModelProperty(value = "项目版本名称")
|
||||||
private String versionName;
|
private String versionName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "项目版本-id")
|
||||||
|
private java.lang.String projectVersion;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user