[Feat] 使用数据库来管理芯片系列与FL版本组合所决定的时钟树可配置状态
Before
之前是通过代码硬写的,一旦有新的系列要添加进来,就要再次修改代码以添加新的芯片系列。
获取当前项目的时钟树可配置信息
Pattern pattern = Pattern.compile("[^0-9]");
Matcher matcher = pattern.matcher(codeInfo.getDriverGitBranch());
Integer flVersion = Integer.parseInt(matcher.replaceAll(""));
project.setConfigClockMessage("此项目可以配置时钟树");
if (project.getSerialNumber().equals("FM33LC0xx") && flVersion >= 23) {
// FM33LC0xx系列FL版本大于等于v2.3
project.setAllowedConfigClock(true);
} else if (project.getSerialNumber().equals("FM33LG0xx") && flVersion >= 22) {
// FM33LG0xx系列FL版本大于等于v2.2
project.setAllowedConfigClock(true);
} else {
project.setAllowedConfigClock(false);
project.setConfigClockMessage(
"FM33LC0xx系列FL版本v2.3及以上,FM33LG0xx系列FL版本v2.2及以上才能配置时钟树。");
}
After
通过Mapper调用MySQL语句的方式查询数据库记录
if (this.baseMapper.getProjectClockTreeAvailable(projectId)) {
project.setAllowedConfigClock(true);
project.setConfigClockMessage("此项目可以配置时钟树");
} else {
project.setAllowedConfigClock(false);
project.setConfigClockMessage(
String.format("{0}系列的FL库版本{1}不支持时钟树配置", project.getSerialNumber(),
codeInfo.getDriverGitBranch()));
}