| | |
| | | package com.xcong.farmer.cms.core.handler; |
| | | |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import com.xcong.farmer.cms.configurations.properties.CmsProperties; |
| | | import com.xcong.farmer.cms.conversion.ColumnConversion; |
| | | import com.xcong.farmer.cms.core.node.AttrNode; |
| | | import com.xcong.farmer.cms.core.tag.data.ColumnData; |
| | |
| | | |
| | | private ColumnMapper columnMapper = SpringContextHolder.getBean(ColumnMapper.class); |
| | | private ArticleMapper articleMapper = SpringContextHolder.getBean(ArticleMapper.class); |
| | | private String BASE_URL = "http://192.168.0.1/"; |
| | | |
| | | private String baseUrl = ""; |
| | | @Override |
| | | public void dataParser(AttrNode attrNode) { |
| | | log.info("栏目解析"); |
| | | // log.info("栏目解析"); |
| | | Long companyId = (Long) attrNode.getSystemDataValue("companyId"); |
| | | baseUrl = (String) attrNode.getSystemDataValue("baseUrl"); |
| | | |
| | | Column param = (Column) attrNode.getParam(); |
| | | |
| | | ColumnEntity columnEntity = columnMapper.selectByCodeAndCompanyId(param.getCode(), companyId); |
| | | |
| | | if (columnEntity == null) { |
| | | return; |
| | | } |
| | | ColumnData columnData = columnToData(columnEntity); |
| | | if (columnEntity.getParentId() == 0L) { |
| | | List<ColumnEntity> child = columnMapper.selectColumnByParentId(columnEntity.getId(), companyId); |
| | | List<ColumnEntity> child = columnMapper.selectColumnByParentId(columnEntity.getId(), companyId, 1); |
| | | if (CollUtil.isNotEmpty(child)) { |
| | | List<ColumnData> list = new ArrayList<>(); |
| | | for (ColumnEntity entity : child) { |
| | |
| | | public ColumnData columnToData(ColumnEntity column) { |
| | | ColumnData columnData = ColumnConversion.INSTANCE.entityToData(column); |
| | | |
| | | columnData.setUrl(BASE_URL + columnData.getCode()); |
| | | columnData.setUrl(baseUrl + column.getPath()); |
| | | if (column.getType() == 2) { |
| | | if (column.getTargetType() == 1) { |
| | | ArticleEntity article = this.articleMapper.selectArticleById(Long.parseLong(column.getTargetUrl())); |
| | | columnData.setUrl(BASE_URL + article.getColumnCode() + "/" + article.getId() + ".html"); |
| | | columnData.setUrl(baseUrl + article.getPath() + "/" + article.getId() + ".html"); |
| | | } else if (column.getTargetType() == 2) { |
| | | columnData.setUrl(BASE_URL + column.getTargetUrl()); |
| | | ColumnEntity columnEntity = this.columnMapper.selectByCodeAndCompanyId(column.getTargetUrl(), column.getCompanyId()); |
| | | columnData.setUrl(baseUrl + columnEntity.getPath()); |
| | | } else { |
| | | columnData.setUrl(column.getTargetUrl()); |
| | | } |