| | |
| | | @Mapping(source = "visits", target = "views") |
| | | @Mapping(source = "mainDiagram", target = "thumb") |
| | | @Mapping(source = "releaseTime", target = "createTime") |
| | | @Mapping(source = "authorBelong", target = "company") |
| | | @Mapping(source = "articleDetails", target = "content") |
| | | @Mapping(source = "uploadFile", target = "filePath") |
| | | public abstract ArticleData entityToData(ArticleEntity article); |
| | |
| | | |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.xcong.farmer.cms.conversion.ArticleConversion; |
| | | import com.xcong.farmer.cms.core.node.AttrNode; |
| | | import com.xcong.farmer.cms.core.tag.data.ArticleData; |
| | | import com.xcong.farmer.cms.core.tag.model.Article; |
| | | import com.xcong.farmer.cms.modules.system.entity.ArticleEntity; |
| | | import com.xcong.farmer.cms.modules.system.mapper.ArticleMapper; |
| | | import com.xcong.farmer.cms.utils.SpringContextHolder; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | |
| | | * @author wzy |
| | | * @date 2022-06-24 |
| | | **/ |
| | | @Slf4j |
| | | public class ArticleDataParserHandler implements DataParserHandler { |
| | | |
| | | private final ArticleMapper articleMapper = SpringContextHolder.getBean(ArticleMapper.class); |
| | | |
| | | @Override |
| | | public void dataParser(AttrNode node) { |
| | | System.out.println("ArticleDataParserHandler"); |
| | | log.info("文章解析"); |
| | | Article tag = (Article) node.getParam(); |
| | | ArticleEntity data = articleMapper.selectById(tag.getId()); |
| | | |
| | | ArticleEntity prev = articleMapper.selectPrevOrNextArticle(data.getId(), data.getColumnId(), 1); |
| | | ArticleEntity next = articleMapper.selectPrevOrNextArticle(data.getId(), data.getColumnId(), 2); |
| | | |
| | | Map map = JSONObject.parseObject(JSONObject.toJSONString(data), Map.class); |
| | | // Map<String, Object> map = new HashMap<>(); |
| | | // map.put("title", "这是单个文章标题"); |
| | | |
| | | map.put("prev", prev); |
| | | map.put("next", next); |
| | | node.setData(map); |
| | | ArticleData articleData = ArticleConversion.INSTANCE.entityToData(data); |
| | | articleData.setNext(ArticleConversion.INSTANCE.entityToData(next)); |
| | | articleData.setPrev(ArticleConversion.INSTANCE.entityToData(prev)); |
| | | node.setData(articleData); |
| | | } |
| | | } |
| | |
| | | } |
| | | 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) { |
| | |
| | | log.info("导航栏解析"); |
| | | Long companyId = (Long) node.getSystemDataValue("companyId"); |
| | | |
| | | List<ColumnEntity> columns = columnMapper.selectColumnByParentId(0L, companyId); |
| | | List<ColumnEntity> columns = columnMapper.selectColumnByParentId(0L, companyId, 1); |
| | | |
| | | if (CollUtil.isEmpty(columns)) { |
| | | return; |
| | |
| | | for (ColumnEntity column : columns) { |
| | | NavData navData = columnToNav(column); |
| | | |
| | | List<ColumnEntity> child = columnMapper.selectColumnByParentId(column.getId(), companyId); |
| | | List<ColumnEntity> child = columnMapper.selectColumnByParentId(column.getId(), companyId, 1); |
| | | if (CollUtil.isNotEmpty(child)) { |
| | | List<NavData> childNavData = columnsToNavs(child); |
| | | navData.setChildren(childNavData); |
| | |
| | | String result = attrValueFormat(value); |
| | | if ("text".equals(key)) { |
| | | this.element.text(result); |
| | | } else if ("html".equals(key)) { |
| | | this.element.html(result); |
| | | } else { |
| | | this.element.attr(key, result); |
| | | } |
| | |
| | | |
| | | private String views; |
| | | |
| | | private String company; |
| | | |
| | | private String filePath; |
| | | |
| | | private List<String> images; |
| | | |
| | | private String url; |
| | | |
| | | private ArticleData next; |
| | | |
| | | private ArticleData prev; |
| | | |
| | | public String getCompany() { |
| | | return company; |
| | | } |
| | | |
| | | public void setCompany(String company) { |
| | | this.company = company; |
| | | } |
| | | |
| | | public ArticleData getNext() { |
| | | return next; |
| | | } |
| | | |
| | | public void setNext(ArticleData next) { |
| | | this.next = next; |
| | | } |
| | | |
| | | public ArticleData getPrev() { |
| | | return prev; |
| | | } |
| | | |
| | | public void setPrev(ArticleData prev) { |
| | | this.prev = prev; |
| | | } |
| | | |
| | | public String getFilePath() { |
| | | return filePath; |
| | | } |
| | |
| | | |
| | | ColumnEntity selectByCodeAndCompanyId(@Param("code") String code, @Param("companyId") Long companyId); |
| | | |
| | | List<ColumnEntity> selectColumnByParentId(@Param("parentId") Long parentId, @Param("companyId") Long companyId); |
| | | List<ColumnEntity> selectColumnByParentId(@Param("parentId") Long parentId, @Param("companyId") Long companyId, @Param("isNav") Integer isNav); |
| | | |
| | | IPage<ColumnEntity> selectColumnInPage(Page<ColumnEntity> page, @Param("record") ColumnEntity column); |
| | | |
| | |
| | | if (type != 1) { |
| | | executor.execute(() -> { |
| | | if (columnEntity.getParentId() == 0L) { |
| | | List<ColumnEntity> columns = columnMapper.selectColumnByParentId(columnEntity.getParentId(), companyId); |
| | | List<ColumnEntity> columns = columnMapper.selectColumnByParentId(columnEntity.getParentId(), companyId, 2); |
| | | if (CollUtil.isNotEmpty(columns)) { |
| | | for (ColumnEntity column : columns) { |
| | | map.put("id", column.getId()); |
| | |
| | | <select id="selectColumnByParentId" resultType="com.xcong.farmer.cms.modules.system.entity.ColumnEntity"> |
| | | select * from t_column |
| | | where parent_id=#{parentId} and company_id=#{companyId} |
| | | <if test="isNav == 1"> |
| | | and is_nav=1 |
| | | </if> |
| | | </select> |
| | | |
| | | <select id="selectColumnInPage" resultType="com.xcong.farmer.cms.modules.system.entity.ColumnEntity"> |