resultMap修正
This commit is contained in:
@@ -101,24 +101,31 @@
|
||||
<!-- MyBatis Mapper 日志配置 - 打印SQL -->
|
||||
<Logger name="org.xyzh.achievement.mapper" level="debug" additivity="false">
|
||||
<AppenderRef ref="Console"/>
|
||||
<AppenderRef ref="Filelog"/>
|
||||
</Logger>
|
||||
<Logger name="org.xyzh.ai.mapper" level="debug" additivity="false">
|
||||
<AppenderRef ref="Console"/>
|
||||
<AppenderRef ref="Filelog"/>
|
||||
</Logger>
|
||||
<Logger name="org.xyzh.system.mapper" level="debug" additivity="false">
|
||||
<AppenderRef ref="Console"/>
|
||||
<AppenderRef ref="Filelog"/>
|
||||
</Logger>
|
||||
<Logger name="org.xyzh.news.mapper" level="debug" additivity="false">
|
||||
<AppenderRef ref="Console"/>
|
||||
<AppenderRef ref="Filelog"/>
|
||||
</Logger>
|
||||
<Logger name="org.xyzh.study.mapper" level="debug" additivity="false">
|
||||
<AppenderRef ref="Console"/>
|
||||
<AppenderRef ref="Filelog"/>
|
||||
</Logger>
|
||||
<Logger name="org.xyzh.crontab.mapper" level="debug" additivity="false">
|
||||
<AppenderRef ref="Console"/>
|
||||
<AppenderRef ref="Filelog"/>
|
||||
</Logger>
|
||||
<Logger name="org.xyzh.message.mapper" level="debug" additivity="false">
|
||||
<AppenderRef ref="Console"/>
|
||||
<AppenderRef ref="Filelog"/>
|
||||
</Logger>
|
||||
<!-- 项目包日志配置 - Auth模块 -->
|
||||
<Logger name="org.xyzh.auth" level="debug" additivity="false">
|
||||
|
||||
@@ -2,6 +2,7 @@ package org.xyzh.common.dto;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
@@ -53,6 +54,41 @@ public class BaseDTO implements Serializable{
|
||||
*/
|
||||
private boolean deleted;
|
||||
|
||||
private List<OrderType> orderTypes;
|
||||
|
||||
public static class OrderType {
|
||||
private String field;
|
||||
private String order;
|
||||
|
||||
// 无参构造函数(Jackson反序列化需要)
|
||||
public OrderType() {
|
||||
}
|
||||
|
||||
public OrderType(String field, String order) {
|
||||
this.field = field;
|
||||
this.order = order;
|
||||
}
|
||||
|
||||
public String getField() {
|
||||
return field;
|
||||
}
|
||||
|
||||
public void setField(String field) {
|
||||
this.field = field;
|
||||
}
|
||||
|
||||
public String getOrder() {
|
||||
return order;
|
||||
}
|
||||
|
||||
public void setOrder(String order) {
|
||||
if("ASC".equals(order.toUpperCase()) || "DESC".equals(order.toUpperCase())) {
|
||||
this.order = order.toUpperCase();
|
||||
}else{
|
||||
throw new IllegalArgumentException("order must be ASC or DESC");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public BaseDTO() {
|
||||
@@ -174,6 +210,14 @@ public class BaseDTO implements Serializable{
|
||||
this.deleted = deleted;
|
||||
}
|
||||
|
||||
public List<OrderType> getOrderTypes() {
|
||||
return orderTypes;
|
||||
}
|
||||
|
||||
public void setOrderTypes(List<OrderType> orderTypes) {
|
||||
this.orderTypes = orderTypes;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString(){
|
||||
return "BaseDTO { id=" + id + ", createTime=" + createTime + ", updateTime=" + updateTime + ", deleteTime=" + deleteTime + ", deleted=" + deleted + " }";
|
||||
|
||||
@@ -323,7 +323,16 @@ public class NewsCrawlerTask extends PythonCommandTask {
|
||||
// 自动发布并记录成功发布的 URL 集合
|
||||
Set<String> publishedUrls = new HashSet<>();
|
||||
if (taskMeta.getAutoPublish().booleanValue()){
|
||||
publishedUrls = publishNewsToArticle(passDataResult.getDataList(), task, logId);
|
||||
// 合并通过审核和未通过审核的采集项,都进行自动发布
|
||||
// 通过审核的会发布为status=1,未通过审核的会发布为status=4
|
||||
List<TbDataCollectionItem> allItems = new ArrayList<>();
|
||||
if (passDataResult.getDataList() != null) {
|
||||
allItems.addAll(passDataResult.getDataList());
|
||||
}
|
||||
if (notPassDataResult.getDataList() != null) {
|
||||
allItems.addAll(notPassDataResult.getDataList());
|
||||
}
|
||||
publishedUrls = publishNewsToArticle(allItems, task, logId);
|
||||
}
|
||||
|
||||
Set<String> notPathUrls = new HashSet<>(notPassList.stream().map(TbDataCollectionItem::getSourceUrl).toList());
|
||||
|
||||
@@ -169,8 +169,9 @@ public class NCResourceServiceImpl implements ResourceService {
|
||||
}
|
||||
// 获取当前用户的部门角色
|
||||
List<UserDeptRoleVO> userDeptRoles = LoginUtil.getCurrentDeptRole();
|
||||
// 直接查询ResourceVO列表,SQL已经LEFT JOIN了recommend表
|
||||
// 直接查询ResourceVO列表
|
||||
List<ResourceVO> resourceVOList = resourceMapper.selectResourcesPageOrderByViewCount(filter, pageParam, userDeptRoles);
|
||||
logger.info("资源数量{}",resourceVOList.size());
|
||||
long total = resourceMapper.countResources(filter, userDeptRoles);
|
||||
pageParam.setTotalElements(total);
|
||||
pageParam.setTotalPages((int) Math.ceil((double) total / pageParam.getPageSize()));
|
||||
|
||||
@@ -347,11 +347,12 @@
|
||||
|
||||
<!-- ResourceVO结果映射(包含推荐信息) -->
|
||||
<resultMap id="ResourceVOResultMap" type="org.xyzh.common.vo.ResourceVO">
|
||||
<id column="resource_id" property="resource.resourceID" jdbcType="VARCHAR"/>
|
||||
<result column="is_top_recommend" property="isTopRecommend" jdbcType="BOOLEAN"/>
|
||||
<result column="is_ideological_recommend" property="isIdeologicalRecommend" jdbcType="BOOLEAN"/>
|
||||
<association property="resource" javaType="org.xyzh.common.dto.resource.TbResource">
|
||||
<id column="id" property="id" jdbcType="VARCHAR"/>
|
||||
<result column="resource_id" property="resourceID" jdbcType="VARCHAR"/>
|
||||
<id column="resource_id" property="resourceID" jdbcType="VARCHAR"/>
|
||||
<result column="id" property="id" jdbcType="VARCHAR"/>
|
||||
<result column="title" property="title" jdbcType="VARCHAR"/>
|
||||
<result column="content" property="content" jdbcType="LONGVARCHAR"/>
|
||||
<result column="summary" property="summary" jdbcType="VARCHAR"/>
|
||||
@@ -408,13 +409,21 @@
|
||||
r.author, r.source, r.source_url, r.view_count, r.like_count, r.collect_count,
|
||||
r.status, r.is_recommend, r.is_banner, r.publish_time, r.creator, r.updater,
|
||||
r.create_time, r.update_time, r.delete_time, r.deleted
|
||||
ORDER BY r.view_count DESC, r.publish_time DESC, r.create_time DESC
|
||||
<if test="filter.orderTypes != null and filter.orderTypes.size() > 0">
|
||||
ORDER BY
|
||||
<foreach collection="filter.orderTypes" item="orderType" separator=", ">
|
||||
r.${orderType.field} ${orderType.order}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="filter.orderTypes == null or filter.orderTypes.size() == 0">
|
||||
ORDER BY r.view_count DESC, r.publish_time DESC, r.create_time DESC
|
||||
</if>
|
||||
LIMIT #{pageParam.pageSize} OFFSET #{pageParam.offset}
|
||||
</select>
|
||||
|
||||
<!-- 统计资源总数 - 添加权限过滤 -->
|
||||
<select id="countResources" resultType="long">
|
||||
SELECT COUNT(DISTINCT r.id)
|
||||
SELECT COUNT(DISTINCT r.resource_id)
|
||||
FROM tb_resource r
|
||||
<include refid="Permission_Filter"/>
|
||||
WHERE r.deleted = 0
|
||||
|
||||
Reference in New Issue
Block a user