fix(cms): 修复网站信息相关问题
- 优化网站信息获取接口返回结构 - 移除不必要的打印语句 -修正导航目标窗口转换逻辑,提高安全性 - 注释掉过期时间处理代码
This commit is contained in:
@@ -169,6 +169,7 @@ public class CmsWebsiteController extends BaseController {
|
||||
}
|
||||
|
||||
CmsWebsiteVO websiteVO = cmsWebsiteService.getSiteInfo(tenantId);
|
||||
|
||||
return success(websiteVO);
|
||||
} catch (IllegalArgumentException e) {
|
||||
return fail(e.getMessage(), null);
|
||||
|
||||
@@ -138,7 +138,6 @@ public class CmsArticleContentServiceImpl extends ServiceImpl<CmsArticleContentM
|
||||
target.setRecommend(article.getRecommend());
|
||||
target.setOverview(article.getOverview());
|
||||
target.setContent(article.getContent());
|
||||
System.out.println("target = " + target);
|
||||
cmsArticleService.updateById(target);
|
||||
this.update(new LambdaUpdateWrapper<CmsArticleContent>().eq(CmsArticleContent::getArticleId, target.getArticleId()).set(CmsArticleContent::getContent,target.getContent()));
|
||||
}
|
||||
|
||||
@@ -249,13 +249,11 @@ public class CmsWebsiteServiceImpl extends ServiceImpl<CmsWebsiteMapper, CmsWebs
|
||||
final List<CmsNavigation> navigations = cmsNavigationMapper.selectListAllRel(cmsNavigationParam);
|
||||
navigations.forEach(c -> {
|
||||
cmsArticleParam.setCategoryId(c.getNavigationId());
|
||||
System.out.println("c.getNavigationId() = " + c.getNavigationId());
|
||||
c.setParentId(d.getNavigationId());
|
||||
c.setTenantId(loginUser.getTenantId());
|
||||
c.setUserId(loginUser.getUserId());
|
||||
cmsNavigationService.save(c);
|
||||
cmsNavigationService.saveAsync(c);
|
||||
System.out.println("c2.getNavigationId() = " + c.getNavigationId());
|
||||
// 复制子栏目文章
|
||||
final List<CmsArticle> articles2 = cmsArticleMapper.selectListAllRel(cmsArticleParam);
|
||||
articles2.forEach(a2 -> {
|
||||
@@ -343,7 +341,7 @@ public class CmsWebsiteServiceImpl extends ServiceImpl<CmsWebsiteMapper, CmsWebs
|
||||
buildCompleteWebsiteInfo(website);
|
||||
|
||||
// 处理过期时间
|
||||
CmsWebsiteServiceImplHelper.processExpirationTime(website);
|
||||
// CmsWebsiteServiceImplHelper.processExpirationTime(website);
|
||||
|
||||
// 转换为VO对象
|
||||
CmsWebsiteVO websiteVO = CmsWebsiteServiceImplHelper.convertToVO(website);
|
||||
|
||||
@@ -90,6 +90,32 @@ public class CmsWebsiteServiceImplHelper {
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 安全转换 target 字段为整数
|
||||
* @param target 字符串类型的 target 值
|
||||
* @return 对应的整数值
|
||||
*/
|
||||
private static Integer convertTargetToInteger(String target) {
|
||||
if (target == null) {
|
||||
return 0; // 默认值:当前窗口
|
||||
}
|
||||
|
||||
switch (target.toLowerCase()) {
|
||||
case "_self":
|
||||
return 0; // 当前窗口
|
||||
case "_blank":
|
||||
return 1; // 新窗口
|
||||
default:
|
||||
// 如果是数字字符串,尝试直接转换
|
||||
try {
|
||||
return Integer.valueOf(target);
|
||||
} catch (NumberFormatException e) {
|
||||
// 转换失败时返回默认值
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 转换导航列表为VO
|
||||
*/
|
||||
@@ -109,7 +135,8 @@ public class CmsWebsiteServiceImplHelper {
|
||||
navVO.setSort(nav.getSortNumber()); // 修复:使用 sortNumber 字段
|
||||
navVO.setHide(nav.getHide());
|
||||
navVO.setTop(nav.getTop());
|
||||
navVO.setTarget(Integer.valueOf(nav.getTarget()));
|
||||
// 安全转换 target 字段:将字符串值映射为整数
|
||||
navVO.setTarget(convertTargetToInteger(nav.getTarget()));
|
||||
navVO.setNavigationType(nav.getModel()); // 修复:使用 model 字段
|
||||
|
||||
// 递归处理子导航
|
||||
|
||||
Reference in New Issue
Block a user