From 841aa47b4ad32bf337707e97e27563e4b8af2ea6 Mon Sep 17 00:00:00 2001 From: 670788339 <670788339@qq.com> Date: Thu, 30 Oct 2025 16:08:51 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=87=E7=AD=BE=E5=8A=A0status?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xboe/module/course/dao/CourseTagDao.java | 9 ++--- .../xboe/module/course/entity/CourseTag.java | 6 ++++ .../service/impl/CourseTagServiceImpl.java | 33 +++++++++++++++++-- 3 files changed, 39 insertions(+), 9 deletions(-) diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseTagDao.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseTagDao.java index 0f262a3d..73531369 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseTagDao.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseTagDao.java @@ -131,7 +131,7 @@ public class CourseTagDao extends BaseDao { sql.append("FROM ( "); sql.append(" SELECT id, tag_name, is_public, is_hot, use_count, last_set_public_time, last_set_hot_time, deleted, sys_create_time "); sql.append(" FROM boe_course_tag "); - sql.append(" WHERE deleted = 0 AND is_public = 0 "); + sql.append(" WHERE deleted = 0 AND is_public = 0 AND status = 0 "); if (StringUtils.isNotBlank(tagName)) { sql.append(" AND tag_name LIKE ? "); @@ -142,7 +142,7 @@ public class CourseTagDao extends BaseDao { sql.append(" SELECT t.id, t.tag_name, t.is_public, t.is_hot, t.use_count, t.last_set_public_time, t.last_set_hot_time, t.deleted, t.sys_create_time "); sql.append(" FROM boe_course_tag_relation r "); sql.append(" INNER JOIN boe_course_tag t ON r.tag_id = t.id "); - sql.append(" WHERE r.deleted = 0 AND t.deleted = 0 AND t.is_public = 1 "); + sql.append(" WHERE r.deleted = 0 AND t.deleted = 0 AND t.is_public = 1 AND t.status = 0 "); if (StringUtils.isNotBlank(userId)) { sql.append(" AND r.sys_create_aid = ? "); @@ -194,11 +194,6 @@ public class CourseTagDao extends BaseDao { if (result[2] != null) tag.setIsPublic(Boolean.valueOf(String.valueOf(result[2]))); if (result[3] != null) tag.setIsHot(Boolean.valueOf(String.valueOf(result[3]))); if (result[4] != null) tag.setUseCount(Integer.valueOf(String.valueOf(result[4]))); -// if (result[5] != null) tag.setLastSetPublicTime((LocalDateTime) result[5]); -// if (result[6] != null) tag.setLastSetHotTime((LocalDateTime) result[6]); -// if (result[7] != null) tag.setDeleted(Boolean.valueOf(String.valueOf(result[7]))); -// if (result[8] != null) tag.setSysCreateTime((LocalDateTime) result[8]); - courseTags.add(tag); } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseTag.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseTag.java index 77199d13..f3238dfc 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseTag.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseTag.java @@ -49,6 +49,12 @@ public class CourseTag extends BaseEntity { @Column(name = "use_count",length = 1) private Integer useCount; + /** + * 1临时, 0正式 + */ + @Column(name = "status",length = 1) + private Integer status; + /** * 最近设置为公共标签的时间 */ diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseTagServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseTagServiceImpl.java index 4f06c33e..24989e2b 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseTagServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseTagServiceImpl.java @@ -210,7 +210,7 @@ public class CourseTagServiceImpl implements ICourseTagService { * @param courseTagRelationDto * @return */ - @Override + /*@Override public CourseTag createTag(CourseTagRelationDto courseTagRelationDto) { CourseTag courseTag = null; String tagName = courseTagRelationDto.getTagName(); @@ -271,7 +271,7 @@ public class CourseTagServiceImpl implements ICourseTagService { createCourseTypeAndTagRelation(courseTagRelationDto); return courseTag; } - +*/ @Override public CourseTag getTagByName(String tagName) { CourseTag courseTag = courseTagDao.getTagByName(tagName); @@ -372,6 +372,33 @@ public class CourseTagServiceImpl implements ICourseTagService { + /** + * 创建新标签 + * @param courseTagRelationDto + * @return + */ + @Override + public CourseTag createTag(CourseTagRelationDto courseTagRelationDto) { + CourseTag courseTag = null; + String tagName = courseTagRelationDto.getTagName(); + //1.创建标签:先判断是否已经存在该标签 + QueryBuilder query=QueryBuilder.from(CourseTag.class); + List filters = new ArrayList<>(); + filters.add(FieldFilters.eq("tagName",tagName));//精确匹配 + query.addFilters(filters); + List courseTagList = courseTagDao.findList(query.builder()); + if (courseTagList==null || courseTagList.size()==0){//1.1 如果该标签不存在,则新建标签 + courseTag = new CourseTag(); + courseTag.setTagName(tagName); + courseTag.setIsPublic(false); + courseTag.setIsHot(false); + courseTag.setStatus(1); + courseTag.setUseCount(1); + courseTagDao.save(courseTag); + } + return courseTag; + } + @Override public void updateTags(Course oldCourse, Course newCourse, CurrentUser userInfo) { @@ -711,6 +738,8 @@ public class CourseTagServiceImpl implements ICourseTagService { tag != null ? tag.getTagName() : "null", tag != null ? tag.getUseCount() : "null"); + // 将标签状态设置为正式(status=0) + tag.setStatus(0); // 正式标签 // 统计当前活跃的关联关系数量 QueryBuilder query = QueryBuilder.from(CourseTagRelation.class); List filters = new ArrayList<>();