项目版本下拉

This commit is contained in:
zhn
2023-08-18 20:03:50 +08:00
parent cbf77d35b3
commit 77545d2453
6 changed files with 90 additions and 5 deletions
@@ -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<OtaManageApplyEO> result = otaManageApplyEOService.getVersionInfo(vdr);
return Result.OK(result);
}
} }
@@ -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<OtaManageApplyEO> getVersionInfo(@Param("vdr") String vdr);
} }
@@ -115,15 +115,40 @@
<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
ptp.attestation_start_time,
ptp.attestation_end_time,
ptp.certification_submission,
oma.attestation_schedule,
plb.id projectId,
plb.target_market market,
plb.project_version versionNumber,
pni.project_name,
pyni.year_name
FROM
ota_manage_apply oma
LEFT JOIN project_task_planning ptp ON oma.project_version = ptp.project_id
join project_library_base plb on plb.id = ptp.project_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
WHERE oma.issue_key = #{vdr}
GROUP BY plb.id
ORDER BY project_version asc
</select>
</mapper> </mapper>
@@ -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<OtaManageApplyEO> getVersionInfo(String vdr);
} }
@@ -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,52 @@ 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<OtaManageApplyEO> getVersionInfo(String vdr) {
//认证进度数据字典 certification_progress
List<SysDictItem> regionDictList = sysDictItemServiceImpl.selectItemsByDictCode("certification_progress");
List<OtaManageApplyEO> versionInfoList = otaManageApplyEOMapper.getVersionInfo(vdr);
return new ArrayList<>();
} }
} }
@@ -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;