From 3864078c39d9dbcaf494b68e2c73d009f3fc15e3 Mon Sep 17 00:00:00 2001 From: Mlxa0324 Date: Mon, 12 Dec 2022 17:09:30 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=A8=E8=AE=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ibeetl/admin/core/util/BeanCopyUtil.java | 4 +- .../jlw/entity/TeacherOpenCourseChatLog.java | 10 +++-- .../TeacherOpenCourseChatLogController.java | 41 ++++++++++++++++++- ...isdictionExperimentalSystemController.java | 2 +- 4 files changed, 50 insertions(+), 7 deletions(-) diff --git a/admin-core/src/main/java/com/ibeetl/admin/core/util/BeanCopyUtil.java b/admin-core/src/main/java/com/ibeetl/admin/core/util/BeanCopyUtil.java index 33547385..50d47d22 100644 --- a/admin-core/src/main/java/com/ibeetl/admin/core/util/BeanCopyUtil.java +++ b/admin-core/src/main/java/com/ibeetl/admin/core/util/BeanCopyUtil.java @@ -95,7 +95,7 @@ public class BeanCopyUtil extends BeanUtils { } sw.stop(); - System.out.println("BaseEntity2MapWithParallel:" + sw.getTotalTimeSeconds() + "秒, 集合长度:" + res.size()); + System.out.println("baseEntity2MapWithParallel:" + sw.getTotalTimeSeconds() + "秒, 集合长度:" + res.size()); return res; } @@ -135,7 +135,7 @@ public class BeanCopyUtil extends BeanUtils { }).collect(Collectors.toCollection(CopyOnWriteArrayList::new)); sw.stop(); - System.out.println("BaseEntity2MapWithParallel:" + sw.getTotalTimeSeconds() + "秒, 集合长度:" + collect.size()); + System.out.println("baseEntity2MapWithParallel:" + sw.getTotalTimeSeconds() + "秒, 集合长度:" + collect.size()); return collect; } diff --git a/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseChatLog.java b/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseChatLog.java index 0649f6bd..8d802aed 100644 --- a/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseChatLog.java +++ b/web/src/main/java/com/ibeetl/jlw/entity/TeacherOpenCourseChatLog.java @@ -1,5 +1,6 @@ package com.ibeetl.jlw.entity; +import cn.hutool.core.date.DateTime; import com.ibeetl.admin.core.annotation.Dict; import com.ibeetl.admin.core.annotation.DictEnum; import com.ibeetl.admin.core.entity.BaseEntity; @@ -15,7 +16,6 @@ import org.beetl.sql.fetch.annotation.FetchSql; import javax.validation.constraints.NotNull; import java.math.BigDecimal; -import java.util.Date; import java.util.List; /* @@ -53,8 +53,12 @@ public class TeacherOpenCourseChatLog extends BaseEntity{ private Long teacherOpenCourseId ; //班级ID集合 - private String schoolClassIds ; + + @UpdateIgnore + @InsertIgnore + @FetchSql("select group_concat(t.class_name) from school_class t where find_in_set(t.class_id, #schoolClassIds#) and t.class_status = 1") + private String schoolClassIdsText; //教师ID @Dict(type="teacher.teacher_name.teacher_status=1") @@ -93,7 +97,7 @@ public class TeacherOpenCourseChatLog extends BaseEntity{ //创建时间 - private Date teacherOpenCourseChatLogAddTime ; + private DateTime teacherOpenCourseChatLogAddTime ; //组织ID diff --git a/web/src/main/java/com/ibeetl/jlw/web/TeacherOpenCourseChatLogController.java b/web/src/main/java/com/ibeetl/jlw/web/TeacherOpenCourseChatLogController.java index d672b09b..76ba7b9f 100644 --- a/web/src/main/java/com/ibeetl/jlw/web/TeacherOpenCourseChatLogController.java +++ b/web/src/main/java/com/ibeetl/jlw/web/TeacherOpenCourseChatLogController.java @@ -1,8 +1,10 @@ package com.ibeetl.jlw.web; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.lang.Assert; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import cn.jlw.Interceptor.SCoreUser; import cn.jlw.Interceptor.TStudent; import cn.jlw.Interceptor.TTeacher; @@ -11,6 +13,7 @@ import com.ibeetl.admin.core.annotation.Function; import com.ibeetl.admin.core.entity.CoreUser; import com.ibeetl.admin.core.file.FileService; import com.ibeetl.admin.core.service.CoreUserService; +import com.ibeetl.admin.core.util.BeanCopyUtil; import com.ibeetl.admin.core.web.JsonResult; import com.ibeetl.jlw.entity.Student; import com.ibeetl.jlw.entity.Teacher; @@ -19,6 +22,7 @@ import com.ibeetl.jlw.entity.dto.TeacherOpenCourseChatLogStudentDTO; import com.ibeetl.jlw.entity.dto.TeacherOpenCourseChatLogTeacherDTO; import com.ibeetl.jlw.service.TeacherOpenCourseChatLogService; import com.ibeetl.jlw.web.query.TeacherOpenCourseChatLogQuery; +import lombok.SneakyThrows; import org.apache.commons.lang3.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -31,9 +35,14 @@ import org.springframework.web.servlet.ModelAndView; import javax.validation.constraints.NotNull; import java.math.BigDecimal; +import java.util.LinkedHashMap; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; +import static com.ibeetl.admin.core.util.ExcelUtil.convertData; +import static com.ibeetl.admin.core.util.ExcelUtil.write; + /** * 开课互动 课程开课-互动-评论日志 接口 * 切记不要对非线程安全的静态变量进行写操作 @@ -41,7 +50,7 @@ import java.util.stream.Collectors; @RestController @Validated -public class TeacherOpenCourseChatLogController{ +public class TeacherOpenCourseChatLogController extends BaseController { private final Log log = LogFactory.getLog(this.getClass()); private static final String MODEL = "/jlw/teacherOpenCourseChatLog"; @@ -424,4 +433,34 @@ public class TeacherOpenCourseChatLogController{ public JsonResult analysis(Long teacherOpenCourseId) { return JsonResult.success(teacherOpenCourseChatLogService.analysis(teacherOpenCourseId)); } + + /** + * 学校管理员端-讨论日志-分析 互动存档 + * @param teacherOpenCourseId + * @return + */ + @SneakyThrows + @PostMapping(MODEL + "/export.json") + public void export(TeacherOpenCourseChatLogQuery condition,@SCoreUser CoreUser coreUser) { + + /** 构建表头 */ + Map header = new LinkedHashMap<>(11); + header.put("teacherOpenCourseChatLogAddTime", "提问时间"); + header.put("studentIdText", "提问学生"); + header.put("chatLogSendTypeText", "提问方式"); + header.put("schoolClassIdsText", "所属班级"); + header.put("chatContent", "提问内容"); + header.put("universitiesCollegesContactsEmail", "学生回答"); + header.put("addTime", "添加时间"); + + PageQuery pageQuery = condition.getPageQuery(); + pageQuery.setPageNumber(1); + pageQuery.setPageSize(Integer.MAX_VALUE); + PageQuery data = teacherOpenCourseChatLogService.queryByConditionQuery(pageQuery); + + List> maps = BeanCopyUtil.baseEntity2MapWithParallel(data.getList()); + + String filename = StrUtil.format("讨论列表导出-{}.xlsx", DateUtil.now()); + write(response, filename,"Sheet1", header.values(), convertData(header.keySet(), maps)); + } } diff --git a/web/src/main/java/com/ibeetl/jlw/web/UniversitiesCollegesJurisdictionExperimentalSystemController.java b/web/src/main/java/com/ibeetl/jlw/web/UniversitiesCollegesJurisdictionExperimentalSystemController.java index a3a7b104..b07cfb04 100644 --- a/web/src/main/java/com/ibeetl/jlw/web/UniversitiesCollegesJurisdictionExperimentalSystemController.java +++ b/web/src/main/java/com/ibeetl/jlw/web/UniversitiesCollegesJurisdictionExperimentalSystemController.java @@ -189,7 +189,7 @@ public class UniversitiesCollegesJurisdictionExperimentalSystemController{ // // List datas = universitiesCollegesJurisdictionExperimentalSystemService.getValues(param); // -// List> maps = BaseEntity2MapWithParallel(datas); +// List> maps = baseEntity2MapWithParallel(datas); // // String filename = StrUtil.format("院校权限导出-{}.xlsx", DateUtil.now()); // write(resp, filename,"Sheet1", header.values(), convertData(header.keySet(), maps));