From 06cf9a79a02cae07901805dd7b4933ee358cc5b4 Mon Sep 17 00:00:00 2001 From: yangjun <1173114630@qq.com> Date: Wed, 12 Jun 2024 11:26:26 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/jeecg/common/util/SFTPUtil.java | 2 +- .../common/util/filter/StrAttackFilter.java | 8 + .../controller/BlTeacherMainController.java | 277 +++++++++ .../blTeacherMain/entity/BlTeacherMain.java | 54 ++ .../blTeacherMain/entity/BlTeacherTjfx.java | 576 ++++++++++++++++++ .../mapper/BlTeacherMainMapper.java | 17 + .../mapper/BlTeacherTjfxMapper.java | 31 + .../mapper/xml/BlTeacherMainMapper.xml | 5 + .../mapper/xml/BlTeacherTjfxMapper.xml | 16 + .../service/IBlTeacherMainService.java | 51 ++ .../service/IBlTeacherTjfxService.java | 22 + .../impl/BlTeacherMainServiceImpl.java | 184 ++++++ .../impl/BlTeacherTjfxServiceImpl.java | 27 + .../blTeacherMain/vo/BlTeacherMainPage.java | 55 ++ .../controller/KcKetangbiaoController.java | 3 + .../kc/wjxDjxx/entity/StudentCyglSys.java | 52 ++ .../modules/kc/wjxWjxx/entity/KccyglSys.java | 48 ++ .../kc/zyCcjg/mapper/ZyCcjgMapper.java | 2 + .../kc/zyCcjg/mapper/xml/ZyCcjgMapper.xml | 8 + .../kc/zyCcjg/service/IZyCcjgService.java | 2 + .../service/impl/ZyCcjgServiceImpl.java | 5 + .../modules/kc/zyInfo/entity/ZyInfoSys.java | 47 ++ .../controller/ZyInfoStudentController.java | 25 +- .../zyInfoStudent/entity/ZyInfoStudent.java | 21 + .../entity/ZyInfoStudentSys.java | 67 ++ .../mapper/xml/ZyInfoStudentMapper.xml | 61 +- .../service/IZyInfoStudentService.java | 1 + .../impl/ZyInfoStudentServiceImpl.java | 111 ++-- .../modules/kc/zyJxdg/entity/ZyJxdgSys.java | 62 ++ .../modules/kc/zyTlq/entity/ZyTlqSys.java | 45 ++ .../modules/tools/ECharts/EchartsTest.java | 44 ++ .../modules/zyk/controller/ZykController.java | 2 +- .../system/controller/CommonController.java | 6 +- 33 files changed, 1878 insertions(+), 59 deletions(-) create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/controller/BlTeacherMainController.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/entity/BlTeacherMain.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/entity/BlTeacherTjfx.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/BlTeacherMainMapper.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/BlTeacherTjfxMapper.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/xml/BlTeacherMainMapper.xml create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/xml/BlTeacherTjfxMapper.xml create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/IBlTeacherMainService.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/IBlTeacherTjfxService.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/impl/BlTeacherMainServiceImpl.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/impl/BlTeacherTjfxServiceImpl.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/vo/BlTeacherMainPage.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxDjxx/entity/StudentCyglSys.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxx/entity/KccyglSys.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/ZyInfoSys.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/entity/ZyInfoStudentSys.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyJxdg/entity/ZyJxdgSys.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyTlq/entity/ZyTlqSys.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/tools/ECharts/EchartsTest.java diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/SFTPUtil.java b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/SFTPUtil.java index b11ee776..80a4158a 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/SFTPUtil.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/SFTPUtil.java @@ -192,7 +192,7 @@ public class SFTPUtil { } String fileName = null; // 获取文件名 - String orgName = StrAttackFilter.filter(file.getOriginalFilename()); + String orgName = StrAttackFilter.filter2(file.getOriginalFilename()); orgName = CommonUtils.getFileName(orgName); if(orgName.indexOf(SymbolConstant.SPOT)!=-1){ fileName = orgName.substring(0, orgName.lastIndexOf(".")) + "_" + System.currentTimeMillis() + orgName.substring(orgName.lastIndexOf(".")); diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/filter/StrAttackFilter.java b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/filter/StrAttackFilter.java index 0f522c2f..8dc2e174 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/filter/StrAttackFilter.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/filter/StrAttackFilter.java @@ -18,6 +18,14 @@ public class StrAttackFilter { return m.replaceAll("").trim(); } + public static String filter2(String str) throws PatternSyntaxException { + // 清除掉所有特殊字符 + String regEx = "[`_《》~!@#$%^&*()+=|{}':;',\\[\\]<>?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]"; + Pattern p = Pattern.compile(regEx); + Matcher m = p.matcher(str); + return m.replaceAll("").trim(); + } + // public static void main(String[] args) { // String filter = filter("@#jeecg/《》【bo】¥%……&*(o))))!@t<>,.,/?'\'~~`"); // System.out.println(filter); diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/controller/BlTeacherMainController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/controller/BlTeacherMainController.java new file mode 100644 index 00000000..c7f177b3 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/controller/BlTeacherMainController.java @@ -0,0 +1,277 @@ +package org.jeecg.modules.kc.blTeacherMain.controller; + +import java.io.UnsupportedEncodingException; +import java.io.IOException; +import java.net.URLDecoder; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.jeecg.modules.kc.jiaoshi.export.Export; +import org.jeecg.modules.tools.word.ExportWord; +import org.jeecg.modules.tools.word.WordOperator; +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.vo.LoginUser; +import org.apache.shiro.SecurityUtils; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherTjfx; +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherMain; +import org.jeecg.modules.kc.blTeacherMain.vo.BlTeacherMainPage; +import org.jeecg.modules.kc.blTeacherMain.service.IBlTeacherMainService; +import org.jeecg.modules.kc.blTeacherMain.service.IBlTeacherTjfxService; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.servlet.ModelAndView; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + + /** + * @Description: 教师调查问卷 + * @Author: jeecg-boot + * @Date: 2024-06-07 + * @Version: V1.0 + */ +@Api(tags="教师调查问卷") +@RestController +@RequestMapping("/blTeacherMain/blTeacherMain") +@Slf4j +public class BlTeacherMainController { + @Autowired + private IBlTeacherMainService blTeacherMainService; + @Autowired + private IBlTeacherTjfxService blTeacherTjfxService; + + /** + * 分页列表查询 + * + * @param blTeacherMain + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "教师调查问卷-分页列表查询") + @ApiOperation(value="教师调查问卷-分页列表查询", notes="教师调查问卷-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(BlTeacherMain blTeacherMain, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(blTeacherMain, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = blTeacherMainService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param blTeacherMainPage + * @return + */ + @AutoLog(value = "教师调查问卷-添加") + @ApiOperation(value="教师调查问卷-添加", notes="教师调查问卷-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody BlTeacherMainPage blTeacherMainPage) { + BlTeacherMain blTeacherMain = new BlTeacherMain(); + BeanUtils.copyProperties(blTeacherMainPage, blTeacherMain); + blTeacherMainService.saveMain(blTeacherMain, blTeacherMainPage.getBlTeacherTjfxList()); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param blTeacherMainPage + * @return + */ + @AutoLog(value = "教师调查问卷-编辑") + @ApiOperation(value="教师调查问卷-编辑", notes="教师调查问卷-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody BlTeacherMainPage blTeacherMainPage) { + BlTeacherMain blTeacherMain = new BlTeacherMain(); + BeanUtils.copyProperties(blTeacherMainPage, blTeacherMain); + BlTeacherMain blTeacherMainEntity = blTeacherMainService.getById(blTeacherMain.getId()); + if(blTeacherMainEntity==null) { + return Result.error("未找到对应数据"); + } + blTeacherMainService.updateMain(blTeacherMain, blTeacherMainPage.getBlTeacherTjfxList()); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "教师调查问卷-通过id删除") + @ApiOperation(value="教师调查问卷-通过id删除", notes="教师调查问卷-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + blTeacherMainService.delMain(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "教师调查问卷-批量删除") + @ApiOperation(value="教师调查问卷-批量删除", notes="教师调查问卷-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.blTeacherMainService.delBatchMain(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "教师调查问卷-通过id查询") + @ApiOperation(value="教师调查问卷-通过id查询", notes="教师调查问卷-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + BlTeacherMain blTeacherMain = blTeacherMainService.getById(id); + if(blTeacherMain==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(blTeacherMain); + + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "问卷信息通过主表ID查询") + @ApiOperation(value="问卷信息主表ID查询", notes="问卷信息-通主表ID查询") + @GetMapping(value = "/queryBlTeacherTjfxByMainId") + public Result> queryBlTeacherTjfxListByMainId(@RequestParam(name="id",required=true) String id) { + List blTeacherTjfxList = blTeacherTjfxService.selectByMainId(id); + return Result.OK(blTeacherTjfxList); + } + + /** + * 导出excel + * + * @param request + * @param blTeacherMain + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, BlTeacherMain blTeacherMain) { + // Step.1 组装查询条件查询数据 + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(blTeacherMain, request.getParameterMap()); + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + + //配置选中数据查询条件 + String selections = request.getParameter("selections"); + if(oConvertUtils.isNotEmpty(selections)) { + List selectionList = Arrays.asList(selections.split(",")); + queryWrapper.in("id",selectionList); + } + //Step.2 获取导出数据 + List blTeacherMainList = blTeacherMainService.list(queryWrapper); + + // Step.3 组装pageList + List pageList = new ArrayList(); + for (BlTeacherMain main : blTeacherMainList) { + BlTeacherMainPage vo = new BlTeacherMainPage(); + BeanUtils.copyProperties(main, vo); + List blTeacherTjfxList = blTeacherTjfxService.selectByMainId(main.getId()); + vo.setBlTeacherTjfxList(blTeacherTjfxList); + pageList.add(vo); + } + + // Step.4 AutoPoi 导出Excel + ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); + mv.addObject(NormalExcelConstants.FILE_NAME, "教师调查问卷列表"); + mv.addObject(NormalExcelConstants.CLASS, BlTeacherMainPage.class); + mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("教师调查问卷数据", "导出人:"+sysUser.getRealname(), "教师调查问卷")); + mv.addObject(NormalExcelConstants.DATA_LIST, pageList); + return mv; + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; + Map fileMap = multipartRequest.getFileMap(); + for (Map.Entry entity : fileMap.entrySet()) { + // 获取上传文件对象 + MultipartFile file = entity.getValue(); + ImportParams params = new ImportParams(); + params.setTitleRows(2); + params.setHeadRows(1); + params.setNeedSave(true); + try { + List list = ExcelImportUtil.importExcel(file.getInputStream(), BlTeacherMainPage.class, params); + for (BlTeacherMainPage page : list) { + BlTeacherMain po = new BlTeacherMain(); + BeanUtils.copyProperties(page, po); + blTeacherMainService.saveMain(po, page.getBlTeacherTjfxList()); + } + return Result.OK("文件导入成功!数据行数:" + list.size()); + } catch (Exception e) { + log.error(e.getMessage(),e); + return Result.error("文件导入失败:"+e.getMessage()); + } finally { + try { + file.getInputStream().close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + return Result.OK("文件导入失败!"); + } + + + + @AutoLog(value = "教师调查问卷生成统计分析报表") + @ApiOperation(value="教师调查问卷生成统计分析报表", notes="教师调查问卷生成统计分析报表") + @GetMapping(value = "/createWordTjfx") + public void createWordTjfx(@RequestParam(name="id",required=true) String id,HttpServletRequest request, HttpServletResponse response) throws Exception { +// Export export = new Export(); + WordOperator wo = blTeacherMainService.createWordTjfx(id); + ExportWord.download_word(request, response, "file.doc", wo); +// BlTeacherMain blTeacherMain = blTeacherMainService.createWordTjfx(id); +// return Result.OK(null); + } + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/entity/BlTeacherMain.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/entity/BlTeacherMain.java new file mode 100644 index 00000000..abcb4928 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/entity/BlTeacherMain.java @@ -0,0 +1,54 @@ +package org.jeecg.modules.kc.blTeacherMain.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + * @Description: 教师调查问卷 + * @Author: jeecg-boot + * @Date: 2024-06-07 + * @Version: V1.0 + */ +@ApiModel(value="bl_teacher_main对象", description="教师调查问卷") +@Data +@TableName("bl_teacher_main") +public class BlTeacherMain implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private String id; + /**createBy*/ + @ApiModelProperty(value = "createBy") + private String createBy; + /**createTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "createTime") + private Date createTime; + /**updateBy*/ + @ApiModelProperty(value = "updateBy") + private String updateBy; + /**updateTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "updateTime") + private Date updateTime; + /**名称*/ + @Excel(name = "名称", width = 15) + @ApiModelProperty(value = "名称") + private String title; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/entity/BlTeacherTjfx.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/entity/BlTeacherTjfx.java new file mode 100644 index 00000000..5888170c --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/entity/BlTeacherTjfx.java @@ -0,0 +1,576 @@ +package org.jeecg.modules.kc.blTeacherMain.entity; + +import java.io.Serializable; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import java.util.Date; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.UnsupportedEncodingException; + +/** + * @Description: 问卷信息 + * @Author: jeecg-boot + * @Date: 2024-06-07 + * @Version: V1.0 + */ +@ApiModel(value="bl_teacher_tjfx对象", description="问卷信息") +@Data +@TableName("bl_teacher_tjfx") +public class BlTeacherTjfx implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private String id; + /**createBy*/ + @ApiModelProperty(value = "createBy") + private String createBy; + /**createTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "createTime") + private Date createTime; + /**updateBy*/ + @ApiModelProperty(value = "updateBy") + private String updateBy; + /**updateTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "updateTime") + private Date updateTime; + /**mainId*/ + @ApiModelProperty(value = "mainId") + private String mainId; + /**年份*/ + @Excel(name = "年份", width = 15) + @ApiModelProperty(value = "年份") + private String year; + /**性别*/ + @Excel(name = "性别", width = 15) + @ApiModelProperty(value = "性别") + private String sex; + /**学历*/ + @Excel(name = "学历", width = 15) + @ApiModelProperty(value = "学历") + private String educationLevel; + /**职称*/ + @Excel(name = "职称", width = 15) + @ApiModelProperty(value = "职称") + private String position; + /**学院*/ + @Excel(name = "学院", width = 15) + @ApiModelProperty(value = "学院") + private String department; + /**岗位类型*/ + @Excel(name = "岗位类型", width = 15) + @ApiModelProperty(value = "岗位类型") + private String positiontype; + /**请评价您周围同事在以下方面的表现(依法依规,履行教师职责)1*/ + @Excel(name = "请评价您周围同事在以下方面的表现(依法依规,履行教师职责)1", width = 15) + @ApiModelProperty(value = "请评价您周围同事在以下方面的表现(依法依规,履行教师职责)1") + private String sdsfYfyg; + /**请评价您周围同事在以下方面的表现(依法依规,履行教师职责)2*/ + @Excel(name = "请评价您周围同事在以下方面的表现(依法依规,履行教师职责)2", width = 15) + @ApiModelProperty(value = "请评价您周围同事在以下方面的表现(依法依规,履行教师职责)2") + private String sdsfYfyg2; + /**请评价您周围同事在以下方面的表现(关心爱护学生)1*/ + @Excel(name = "请评价您周围同事在以下方面的表现(关心爱护学生)1", width = 15) + @ApiModelProperty(value = "请评价您周围同事在以下方面的表现(关心爱护学生)1") + private String sdsfGxah; + /**请评价您周围同事在以下方面的表现(关心爱护学生)2*/ + @Excel(name = "请评价您周围同事在以下方面的表现(关心爱护学生)2", width = 15) + @ApiModelProperty(value = "请评价您周围同事在以下方面的表现(关心爱护学生)2") + private String sdsfGxah2; + /**请评价您周围同事在以下方面的表现(精神面貌及品德修养良好)1*/ + @Excel(name = "请评价您周围同事在以下方面的表现(精神面貌及品德修养良好)1", width = 15) + @ApiModelProperty(value = "请评价您周围同事在以下方面的表现(精神面貌及品德修养良好)1") + private String sdsfJsmm; + /**请评价您周围同事在以下方面的表现(精神面貌及品德修养良好)2*/ + @Excel(name = "请评价您周围同事在以下方面的表现(精神面貌及品德修养良好)2", width = 15) + @ApiModelProperty(value = "请评价您周围同事在以下方面的表现(精神面貌及品德修养良好)2") + private String sdsfJsmm2; + /**请评价您周围同事的以下行为(热爱工作,能以最大的热情投身教育行业,积极主动学习)1*/ + @Excel(name = "请评价您周围同事的以下行为(热爱工作,能以最大的热情投身教育行业,积极主动学习)1", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(热爱工作,能以最大的热情投身教育行业,积极主动学习)1") + private String behaviorPassion; + /**请评价您周围同事的以下行为(热爱工作,能以最大的热情投身教育行业,积极主动学习)2*/ + @Excel(name = "请评价您周围同事的以下行为(热爱工作,能以最大的热情投身教育行业,积极主动学习)2", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(热爱工作,能以最大的热情投身教育行业,积极主动学习)2") + private String behaviorPassion2; + /**请评价您周围同事的以下行为(关爱学生,积极帮助学生解决生活或学习上的困难)1*/ + @Excel(name = "请评价您周围同事的以下行为(关爱学生,积极帮助学生解决生活或学习上的困难)1", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(关爱学生,积极帮助学生解决生活或学习上的困难)1") + private String behaviorSolve; + /**请评价您周围同事的以下行为(关爱学生,积极帮助学生解决生活或学习上的困难)2*/ + @Excel(name = "请评价您周围同事的以下行为(关爱学生,积极帮助学生解决生活或学习上的困难)2", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(关爱学生,积极帮助学生解决生活或学习上的困难)2") + private String behaviorSolve2; + /**请评价您周围同事的以下行为(关注学生的心理健康状况)1*/ + @Excel(name = "请评价您周围同事的以下行为(关注学生的心理健康状况)1", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(关注学生的心理健康状况)1") + private String behaviorMental; + /**请评价您周围同事的以下行为(关注学生的心理健康状况)2*/ + @Excel(name = "请评价您周围同事的以下行为(关注学生的心理健康状况)2", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(关注学生的心理健康状况)2") + private String behaviorMental2; + /**请评价您周围同事的以下行为(教学有序,有清晰合理的教学目标并能清楚地向学生解释)1*/ + @Excel(name = "请评价您周围同事的以下行为(教学有序,有清晰合理的教学目标并能清楚地向学生解释)1", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(教学有序,有清晰合理的教学目标并能清楚地向学生解释)1") + private String behaviorAim; + /**请评价您周围同事的以下行为(教学有序,有清晰合理的教学目标并能清楚地向学生解释)2*/ + @Excel(name = "请评价您周围同事的以下行为(教学有序,有清晰合理的教学目标并能清楚地向学生解释)2", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(教学有序,有清晰合理的教学目标并能清楚地向学生解释)2") + private String behaviorAim2; + /**请评价您周围同事的以下行为(育人有方,激发学生的学习兴趣,注重培养学生的创新精神和创新思维)1*/ + @Excel(name = "请评价您周围同事的以下行为(育人有方,激发学生的学习兴趣,注重培养学生的创新精神和创新思维)1", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(育人有方,激发学生的学习兴趣,注重培养学生的创新精神和创新思维)1") + private String behaviorCreate; + /**请评价您周围同事的以下行为(育人有方,激发学生的学习兴趣,注重培养学生的创新精神和创新思维)2*/ + @Excel(name = "请评价您周围同事的以下行为(育人有方,激发学生的学习兴趣,注重培养学生的创新精神和创新思维)2", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(育人有方,激发学生的学习兴趣,注重培养学生的创新精神和创新思维)2") + private String behaviorCreate2; + /**请评价您周围同事的以下行为(以身作则,信守承诺)1*/ + @Excel(name = "请评价您周围同事的以下行为(以身作则,信守承诺)1", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(以身作则,信守承诺)1") + private String behaviorCommit; + /**请评价您周围同事的以下行为(以身作则,信守承诺)2*/ + @Excel(name = "请评价您周围同事的以下行为(以身作则,信守承诺)2", width = 15) + @ApiModelProperty(value = "请评价您周围同事的以下行为(以身作则,信守承诺)2") + private String behaviorCommit2; + /**您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(以讲授为主融入课程内容)1*/ + @Excel(name = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(以讲授为主融入课程内容)1", width = 15) + @ApiModelProperty(value = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(以讲授为主融入课程内容)1") + private String rrfsCourse; + /**您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(在学生参与讨论、展示等课堂互动环节中融入)2*/ + @Excel(name = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(在学生参与讨论、展示等课堂互动环节中融入)2", width = 15) + @ApiModelProperty(value = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(在学生参与讨论、展示等课堂互动环节中融入)2") + private String rrfsDiscuss; + /**您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(融入课堂作业、论文中)1*/ + @Excel(name = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(融入课堂作业、论文中)1", width = 15) + @ApiModelProperty(value = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(融入课堂作业、论文中)1") + private String rrfsWork; + /**您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(融入实验、实训中)2*/ + @Excel(name = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(融入实验、实训中)2", width = 15) + @ApiModelProperty(value = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(融入实验、实训中)2") + private String rrfsIntern; + /**您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(其他)1*/ + @Excel(name = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(其他)1", width = 15) + @ApiModelProperty(value = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(其他)1") + private String rrfsQt; + /**您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(并未涉及题目所述内容)2*/ + @Excel(name = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(并未涉及题目所述内容)2", width = 15) + @ApiModelProperty(value = "您将中国特色社会主义核心价值观、做人做事的基本道理、爱国主义与理想信念、国情与社会时政热点等融入课堂教学的方式是(并未涉及题目所述内容)2") + private String rrfsNo; + /**请根据您自身的实际情况评价在以下方面的相符程度(目标明确,熟悉教材,了解学生,教学认知能力强)1*/ + @Excel(name = "请根据您自身的实际情况评价在以下方面的相符程度(目标明确,熟悉教材,了解学生,教学认知能力强)1", width = 15) + @ApiModelProperty(value = "请根据您自身的实际情况评价在以下方面的相符程度(目标明确,熟悉教材,了解学生,教学认知能力强)1") + private String skillKnow; + /**请根据您自身的实际情况评价在以下方面的相符程度(目标明确,熟悉教材,了解学生,教学认知能力强)2*/ + @Excel(name = "请根据您自身的实际情况评价在以下方面的相符程度(目标明确,熟悉教材,了解学生,教学认知能力强)2", width = 15) + @ApiModelProperty(value = "请根据您自身的实际情况评价在以下方面的相符程度(目标明确,熟悉教材,了解学生,教学认知能力强)2") + private String skillKnow2; + /**请根据您自身的实际情况评价在以下方面的相符程度(教学组织合理,教学方法得当,教学设计能力强)1*/ + @Excel(name = "请根据您自身的实际情况评价在以下方面的相符程度(教学组织合理,教学方法得当,教学设计能力强)1", width = 15) + @ApiModelProperty(value = "请根据您自身的实际情况评价在以下方面的相符程度(教学组织合理,教学方法得当,教学设计能力强)1") + private String skillDesign; + /**请根据您自身的实际情况评价在以下方面的相符程度(教学组织合理,教学方法得当,教学设计能力强)2*/ + @Excel(name = "请根据您自身的实际情况评价在以下方面的相符程度(教学组织合理,教学方法得当,教学设计能力强)2", width = 15) + @ApiModelProperty(value = "请根据您自身的实际情况评价在以下方面的相符程度(教学组织合理,教学方法得当,教学设计能力强)2") + private String skillDesign2; + /**请根据您自身的实际情况评价在以下方面的相符程度(灵活变通教学思路,机智应对突发状况,教学调控能力强)1*/ + @Excel(name = "请根据您自身的实际情况评价在以下方面的相符程度(灵活变通教学思路,机智应对突发状况,教学调控能力强)1", width = 15) + @ApiModelProperty(value = "请根据您自身的实际情况评价在以下方面的相符程度(灵活变通教学思路,机智应对突发状况,教学调控能力强)1") + private String skillCtrl; + /**请根据您自身的实际情况评价在以下方面的相符程度(灵活变通教学思路,机智应对突发状况,教学调控能力强)2*/ + @Excel(name = "请根据您自身的实际情况评价在以下方面的相符程度(灵活变通教学思路,机智应对突发状况,教学调控能力强)2", width = 15) + @ApiModelProperty(value = "请根据您自身的实际情况评价在以下方面的相符程度(灵活变通教学思路,机智应对突发状况,教学调控能力强)2") + private String skillCtrl2; + /**请根据您自身的实际情况评价在以下方面的相符程度(坚持产出导向,定量定性相结合,综合知识、能力与素质,注重过程性评价,教学评价能力强)1*/ + @Excel(name = "请根据您自身的实际情况评价在以下方面的相符程度(坚持产出导向,定量定性相结合,综合知识、能力与素质,注重过程性评价,教学评价能力强)1", width = 15) + @ApiModelProperty(value = "请根据您自身的实际情况评价在以下方面的相符程度(坚持产出导向,定量定性相结合,综合知识、能力与素质,注重过程性评价,教学评价能力强)1") + private String skillAssess; + /**请根据您自身的实际情况评价在以下方面的相符程度(坚持产出导向,定量定性相结合,综合知识、能力与素质,注重过程性评价,教学评价能力强)2*/ + @Excel(name = "请根据您自身的实际情况评价在以下方面的相符程度(坚持产出导向,定量定性相结合,综合知识、能力与素质,注重过程性评价,教学评价能力强)2", width = 15) + @ApiModelProperty(value = "请根据您自身的实际情况评价在以下方面的相符程度(坚持产出导向,定量定性相结合,综合知识、能力与素质,注重过程性评价,教学评价能力强)2") + private String skillAssess2; + /**请根据您自身的实际情况评价在以下方面的相符程度(积极将现代信息技术与教育教学深度融合,运用教学媒介能力强)1*/ + @Excel(name = "请根据您自身的实际情况评价在以下方面的相符程度(积极将现代信息技术与教育教学深度融合,运用教学媒介能力强)1", width = 15) + @ApiModelProperty(value = "请根据您自身的实际情况评价在以下方面的相符程度(积极将现代信息技术与教育教学深度融合,运用教学媒介能力强)1") + private String skillTech; + /**请根据您自身的实际情况评价在以下方面的相符程度(积极将现代信息技术与教育教学深度融合,运用教学媒介能力强)2*/ + @Excel(name = "请根据您自身的实际情况评价在以下方面的相符程度(积极将现代信息技术与教育教学深度融合,运用教学媒介能力强)2", width = 15) + @ApiModelProperty(value = "请根据您自身的实际情况评价在以下方面的相符程度(积极将现代信息技术与教育教学深度融合,运用教学媒介能力强)2") + private String skillTech2; + /**您是否同意以下描述(我清楚自己的岗位职责和要求)1*/ + @Excel(name = "您是否同意以下描述(我清楚自己的岗位职责和要求)1", width = 15) + @ApiModelProperty(value = "您是否同意以下描述(我清楚自己的岗位职责和要求)1") + private String dedicationStandard; + /**您是否同意以下描述(我清楚自己的岗位职责和要求)2*/ + @Excel(name = "您是否同意以下描述(我清楚自己的岗位职责和要求)2", width = 15) + @ApiModelProperty(value = "您是否同意以下描述(我清楚自己的岗位职责和要求)2") + private String dedicationStandard2; + /**您是否同意以下描述(我周围的教授同事们都为本科生上课)1*/ + @Excel(name = "您是否同意以下描述(我周围的教授同事们都为本科生上课)1", width = 15) + @ApiModelProperty(value = "您是否同意以下描述(我周围的教授同事们都为本科生上课)1") + private String dedicationHigh; + /**您是否同意以下描述(我周围的教授同事们都为本科生上课)2*/ + @Excel(name = "您是否同意以下描述(我周围的教授同事们都为本科生上课)2", width = 15) + @ApiModelProperty(value = "您是否同意以下描述(我周围的教授同事们都为本科生上课)2") + private String dedicationHigh2; + /**您是否同意以下描述(我和同事们都很乐意开展教学研究和改革)1*/ + @Excel(name = "您是否同意以下描述(我和同事们都很乐意开展教学研究和改革)1", width = 15) + @ApiModelProperty(value = "您是否同意以下描述(我和同事们都很乐意开展教学研究和改革)1") + private String dedicationDevelop; + /**您是否同意以下描述(我和同事们都很乐意开展教学研究和改革)2*/ + @Excel(name = "您是否同意以下描述(我和同事们都很乐意开展教学研究和改革)2", width = 15) + @ApiModelProperty(value = "您是否同意以下描述(我和同事们都很乐意开展教学研究和改革)2") + private String dedicationDevelop2; + /**dedicationResearch*/ + @Excel(name = "dedicationResearch", width = 15) + @ApiModelProperty(value = "dedicationResearch") + private String dedicationResearch; + /**dedicationResearch2*/ + @Excel(name = "dedicationResearch2", width = 15) + @ApiModelProperty(value = "dedicationResearch2") + private String dedicationResearch2; + /**dedicationApply*/ + @Excel(name = "dedicationApply", width = 15) + @ApiModelProperty(value = "dedicationApply") + private String dedicationApply; + /**dedicationApply2*/ + @Excel(name = "dedicationApply2", width = 15) + @ApiModelProperty(value = "dedicationApply2") + private String dedicationApply2; + /**dedicationDistribution*/ + @Excel(name = "dedicationDistribution", width = 15) + @ApiModelProperty(value = "dedicationDistribution") + private String dedicationDistribution; + /**dedicationDistribution2*/ + @Excel(name = "dedicationDistribution2", width = 15) + @ApiModelProperty(value = "dedicationDistribution2") + private String dedicationDistribution2; + /**spendTeach*/ + @Excel(name = "spendTeach", width = 15) + @ApiModelProperty(value = "spendTeach") + private String spendTeach; + /**spendPrepare*/ + @Excel(name = "spendPrepare", width = 15) + @ApiModelProperty(value = "spendPrepare") + private String spendPrepare; + /**spendResearch*/ + @Excel(name = "spendResearch", width = 15) + @ApiModelProperty(value = "spendResearch") + private String spendResearch; + /**spendCoach*/ + @Excel(name = "spendCoach", width = 15) + @ApiModelProperty(value = "spendCoach") + private String spendCoach; + /**spendMeeting*/ + @Excel(name = "spendMeeting", width = 15) + @ApiModelProperty(value = "spendMeeting") + private String spendMeeting; + /**spendParttime*/ + @Excel(name = "spendParttime", width = 15) + @ApiModelProperty(value = "spendParttime") + private String spendParttime; + /**jskcGgts*/ + @Excel(name = "jskcGgts", width = 15) + @ApiModelProperty(value = "jskcGgts") + private String jskcGgts; + /**jskcDnj*/ + @Excel(name = "jskcDnj", width = 15) + @ApiModelProperty(value = "jskcDnj") + private String jskcDnj; + /**jskcGnj*/ + @Excel(name = "jskcGnj", width = 15) + @ApiModelProperty(value = "jskcGnj") + private String jskcGnj; + /**jskcZyxxk*/ + @Excel(name = "jskcZyxxk", width = 15) + @ApiModelProperty(value = "jskcZyxxk") + private String jskcZyxxk; + /**jskcYjs*/ + @Excel(name = "jskcYjs", width = 15) + @ApiModelProperty(value = "jskcYjs") + private String jskcYjs; + /**jskcNo*/ + @Excel(name = "jskcNo", width = 15) + @ApiModelProperty(value = "jskcNo") + private String jskcNo; + /**zykSkill*/ + @Excel(name = "zykSkill", width = 15) + @ApiModelProperty(value = "zykSkill") + private String zykSkill; + /**zykSkill2*/ + @Excel(name = "zykSkill2", width = 15) + @ApiModelProperty(value = "zykSkill2") + private String zykSkill2; + /**zykProblem*/ + @Excel(name = "zykProblem", width = 15) + @ApiModelProperty(value = "zykProblem") + private String zykProblem; + /**zykProblem2*/ + @Excel(name = "zykProblem2", width = 15) + @ApiModelProperty(value = "zykProblem2") + private String zykProblem2; + /**zykCross*/ + @Excel(name = "zykCross", width = 15) + @ApiModelProperty(value = "zykCross") + private String zykCross; + /**zykCross2*/ + @Excel(name = "zykCross2", width = 15) + @ApiModelProperty(value = "zykCross2") + private String zykCross2; + /**zykIntern*/ + @Excel(name = "zykIntern", width = 15) + @ApiModelProperty(value = "zykIntern") + private String zykIntern; + /**zykIntern2*/ + @Excel(name = "zykIntern2", width = 15) + @ApiModelProperty(value = "zykIntern2") + private String zykIntern2; + /**zykEffort*/ + @Excel(name = "zykEffort", width = 15) + @ApiModelProperty(value = "zykEffort") + private String zykEffort; + /**zykEffort2*/ + @Excel(name = "zykEffort2", width = 15) + @ApiModelProperty(value = "zykEffort2") + private String zykEffort2; + /**zykNew*/ + @Excel(name = "zykNew", width = 15) + @ApiModelProperty(value = "zykNew") + private String zykNew; + /**zykNew2*/ + @Excel(name = "zykNew2", width = 15) + @ApiModelProperty(value = "zykNew2") + private String zykNew2; + /**checkKc*/ + @Excel(name = "checkKc", width = 15) + @ApiModelProperty(value = "checkKc") + private String checkKc; + /**linianPyfa*/ + @Excel(name = "linianPyfa", width = 15) + @ApiModelProperty(value = "linianPyfa") + private String linianPyfa; + /**linianPymb*/ + @Excel(name = "linianPymb", width = 15) + @ApiModelProperty(value = "linianPymb") + private String linianPymb; + /**linianByyq*/ + @Excel(name = "linianByyq", width = 15) + @ApiModelProperty(value = "linianByyq") + private String linianByyq; + /**linianXszx*/ + @Excel(name = "linianXszx", width = 15) + @ApiModelProperty(value = "linianXszx") + private String linianXszx; + /**linianNo*/ + @Excel(name = "linianNo", width = 15) + @ApiModelProperty(value = "linianNo") + private String linianNo; + /**linianZjgj*/ + @Excel(name = "linianZjgj", width = 15) + @ApiModelProperty(value = "linianZjgj") + private String linianZjgj; + /**exchangeTlsg*/ + @Excel(name = "exchangeTlsg", width = 15) + @ApiModelProperty(value = "exchangeTlsg") + private String exchangeTlsg; + /**exchangeZdkc*/ + @Excel(name = "exchangeZdkc", width = 15) + @ApiModelProperty(value = "exchangeZdkc") + private String exchangeZdkc; + /**exchangeZdlw*/ + @Excel(name = "exchangeZdlw", width = 15) + @ApiModelProperty(value = "exchangeZdlw") + private String exchangeZdlw; + /**exchangeZdxm*/ + @Excel(name = "exchangeZdxm", width = 15) + @ApiModelProperty(value = "exchangeZdxm") + private String exchangeZdxm; + /**exchangeZygh*/ + @Excel(name = "exchangeZygh", width = 15) + @ApiModelProperty(value = "exchangeZygh") + private String exchangeZygh; + /**exchangeXljk*/ + @Excel(name = "exchangeXljk", width = 15) + @ApiModelProperty(value = "exchangeXljk") + private String exchangeXljk; + /**exchangeNo*/ + @Excel(name = "exchangeNo", width = 15) + @ApiModelProperty(value = "exchangeNo") + private String exchangeNo; + /**preClassPreview*/ + @Excel(name = "preClassPreview", width = 15) + @ApiModelProperty(value = "preClassPreview") + private String preClassPreview; + /**preClassPreview2*/ + @Excel(name = "preClassPreview2", width = 15) + @ApiModelProperty(value = "preClassPreview2") + private String preClassPreview2; + /**inClassQuestions*/ + @Excel(name = "inClassQuestions", width = 15) + @ApiModelProperty(value = "inClassQuestions") + private String inClassQuestions; + /**inClassQuestions2*/ + @Excel(name = "inClassQuestions2", width = 15) + @ApiModelProperty(value = "inClassQuestions2") + private String inClassQuestions2; + /**afterClassSummary*/ + @Excel(name = "afterClassSummary", width = 15) + @ApiModelProperty(value = "afterClassSummary") + private String afterClassSummary; + /**afterClassSummary2*/ + @Excel(name = "afterClassSummary2", width = 15) + @ApiModelProperty(value = "afterClassSummary2") + private String afterClassSummary2; + /**afterClassRead*/ + @Excel(name = "afterClassRead", width = 15) + @ApiModelProperty(value = "afterClassRead") + private String afterClassRead; + /**afterClassRead2*/ + @Excel(name = "afterClassRead2", width = 15) + @ApiModelProperty(value = "afterClassRead2") + private String afterClassRead2; + /**trainSystem*/ + @Excel(name = "trainSystem", width = 15) + @ApiModelProperty(value = "trainSystem") + private String trainSystem; + /**trainSystem2*/ + @Excel(name = "trainSystem2", width = 15) + @ApiModelProperty(value = "trainSystem2") + private String trainSystem2; + /**trainTeach*/ + @Excel(name = "trainTeach", width = 15) + @ApiModelProperty(value = "trainTeach") + private String trainTeach; + /**trainTeach2*/ + @Excel(name = "trainTeach2", width = 15) + @ApiModelProperty(value = "trainTeach2") + private String trainTeach2; + /**trainDevelop*/ + @Excel(name = "trainDevelop", width = 15) + @ApiModelProperty(value = "trainDevelop") + private String trainDevelop; + /**trainDevelop2*/ + @Excel(name = "trainDevelop2", width = 15) + @ApiModelProperty(value = "trainDevelop2") + private String trainDevelop2; + /**trainGlobal*/ + @Excel(name = "trainGlobal", width = 15) + @ApiModelProperty(value = "trainGlobal") + private String trainGlobal; + /**trainGlobal2*/ + @Excel(name = "trainGlobal2", width = 15) + @ApiModelProperty(value = "trainGlobal2") + private String trainGlobal2; + /**teachingIndex*/ + @Excel(name = "teachingIndex", width = 15) + @ApiModelProperty(value = "teachingIndex") + private String teachingIndex; + /**teachingIndex2*/ + @Excel(name = "teachingIndex2", width = 15) + @ApiModelProperty(value = "teachingIndex2") + private String teachingIndex2; + /**teachingEffect*/ + @Excel(name = "teachingEffect", width = 15) + @ApiModelProperty(value = "teachingEffect") + private String teachingEffect; + /**teachingEffect2*/ + @Excel(name = "teachingEffect2", width = 15) + @ApiModelProperty(value = "teachingEffect2") + private String teachingEffect2; + /**teachingSupervise*/ + @Excel(name = "teachingSupervise", width = 15) + @ApiModelProperty(value = "teachingSupervise") + private String teachingSupervise; + /**teachingSupervise2*/ + @Excel(name = "teachingSupervise2", width = 15) + @ApiModelProperty(value = "teachingSupervise2") + private String teachingSupervise2; + /**teachingAwards*/ + @Excel(name = "teachingAwards", width = 15) + @ApiModelProperty(value = "teachingAwards") + private String teachingAwards; + /**teachingAwards2*/ + @Excel(name = "teachingAwards2", width = 15) + @ApiModelProperty(value = "teachingAwards2") + private String teachingAwards2; + /**teachingStudent*/ + @Excel(name = "teachingStudent", width = 15) + @ApiModelProperty(value = "teachingStudent") + private String teachingStudent; + /**teachingStudent2*/ + @Excel(name = "teachingStudent2", width = 15) + @ApiModelProperty(value = "teachingStudent2") + private String teachingStudent2; + /**teachingResult*/ + @Excel(name = "teachingResult", width = 15) + @ApiModelProperty(value = "teachingResult") + private String teachingResult; + /**teachingResult2*/ + @Excel(name = "teachingResult2", width = 15) + @ApiModelProperty(value = "teachingResult2") + private String teachingResult2; + /**checkJp*/ + @Excel(name = "checkJp", width = 15) + @ApiModelProperty(value = "checkJp") + private String checkJp; + /**satiRoom*/ + @Excel(name = "satiRoom", width = 15) + @ApiModelProperty(value = "satiRoom") + private String satiRoom; + /**satiRoom2*/ + @Excel(name = "satiRoom2", width = 15) + @ApiModelProperty(value = "satiRoom2") + private String satiRoom2; + /**satiResourse*/ + @Excel(name = "satiResourse", width = 15) + @ApiModelProperty(value = "satiResourse") + private String satiResourse; + /**satiResourse2*/ + @Excel(name = "satiResourse2", width = 15) + @ApiModelProperty(value = "satiResourse2") + private String satiResourse2; + /**satiLibrary*/ + @Excel(name = "satiLibrary", width = 15) + @ApiModelProperty(value = "satiLibrary") + private String satiLibrary; + /**satiLibrary2*/ + @Excel(name = "satiLibrary2", width = 15) + @ApiModelProperty(value = "satiLibrary2") + private String satiLibrary2; + /**satiNet*/ + @Excel(name = "satiNet", width = 15) + @ApiModelProperty(value = "satiNet") + private String satiNet; + /**satiNet2*/ + @Excel(name = "satiNet2", width = 15) + @ApiModelProperty(value = "satiNet2") + private String satiNet2; + /**satiSport*/ + @Excel(name = "satiSport", width = 15) + @ApiModelProperty(value = "satiSport") + private String satiSport; + /**satiSport2*/ + @Excel(name = "satiSport2", width = 15) + @ApiModelProperty(value = "satiSport2") + private String satiSport2; + /**collsati*/ + @Excel(name = "collsati", width = 15) + @ApiModelProperty(value = "collsati") + private String collsati; + /**collsati2*/ + @Excel(name = "collsati2", width = 15) + @ApiModelProperty(value = "collsati2") + private String collsati2; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/BlTeacherMainMapper.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/BlTeacherMainMapper.java new file mode 100644 index 00000000..26b1dd71 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/BlTeacherMainMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.kc.blTeacherMain.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherMain; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 教师调查问卷 + * @Author: jeecg-boot + * @Date: 2024-06-07 + * @Version: V1.0 + */ +public interface BlTeacherMainMapper extends BaseMapper { + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/BlTeacherTjfxMapper.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/BlTeacherTjfxMapper.java new file mode 100644 index 00000000..534af2c6 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/BlTeacherTjfxMapper.java @@ -0,0 +1,31 @@ +package org.jeecg.modules.kc.blTeacherMain.mapper; + +import java.util.List; +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherTjfx; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; + +/** + * @Description: 问卷信息 + * @Author: jeecg-boot + * @Date: 2024-06-07 + * @Version: V1.0 + */ +public interface BlTeacherTjfxMapper extends BaseMapper { + + /** + * 通过主表id删除子表数据 + * + * @param mainId 主表id + * @return boolean + */ + public boolean deleteByMainId(@Param("mainId") String mainId); + + /** + * 通过主表id查询子表数据 + * + * @param mainId 主表id + * @return List + */ + public List selectByMainId(@Param("mainId") String mainId); +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/xml/BlTeacherMainMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/xml/BlTeacherMainMapper.xml new file mode 100644 index 00000000..c8da5bef --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/xml/BlTeacherMainMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/xml/BlTeacherTjfxMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/xml/BlTeacherTjfxMapper.xml new file mode 100644 index 00000000..6cc2cd0a --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/mapper/xml/BlTeacherTjfxMapper.xml @@ -0,0 +1,16 @@ + + + + + + DELETE + FROM bl_teacher_tjfx + WHERE + main_id = #{mainId} + + + diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/IBlTeacherMainService.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/IBlTeacherMainService.java new file mode 100644 index 00000000..b7797507 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/IBlTeacherMainService.java @@ -0,0 +1,51 @@ +package org.jeecg.modules.kc.blTeacherMain.service; + +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherTjfx; +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherMain; +import com.baomidou.mybatisplus.extension.service.IService; +import org.jeecg.modules.tools.word.WordOperator; + +import java.io.Serializable; +import java.util.Collection; +import java.util.List; + +/** + * @Description: 教师调查问卷 + * @Author: jeecg-boot + * @Date: 2024-06-07 + * @Version: V1.0 + */ +public interface IBlTeacherMainService extends IService { + + /** + * 添加一对多 + * + * @param blTeacherMain + * @param blTeacherTjfxList + */ + public void saveMain(BlTeacherMain blTeacherMain,List blTeacherTjfxList) ; + + /** + * 修改一对多 + * + * @param blTeacherMain + * @param blTeacherTjfxList + */ + public void updateMain(BlTeacherMain blTeacherMain,List blTeacherTjfxList); + + /** + * 删除一对多 + * + * @param id + */ + public void delMain (String id); + + /** + * 批量删除一对多 + * + * @param idList + */ + public void delBatchMain (Collection idList); + + WordOperator createWordTjfx(String id) throws Exception; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/IBlTeacherTjfxService.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/IBlTeacherTjfxService.java new file mode 100644 index 00000000..6680f970 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/IBlTeacherTjfxService.java @@ -0,0 +1,22 @@ +package org.jeecg.modules.kc.blTeacherMain.service; + +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherTjfx; +import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + +/** + * @Description: 问卷信息 + * @Author: jeecg-boot + * @Date: 2024-06-07 + * @Version: V1.0 + */ +public interface IBlTeacherTjfxService extends IService { + + /** + * 通过主表id查询子表数据 + * + * @param mainId 主表id + * @return List + */ + public List selectByMainId(String mainId); +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/impl/BlTeacherMainServiceImpl.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/impl/BlTeacherMainServiceImpl.java new file mode 100644 index 00000000..c07ce446 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/impl/BlTeacherMainServiceImpl.java @@ -0,0 +1,184 @@ +package org.jeecg.modules.kc.blTeacherMain.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.google.common.collect.Lists; +import com.google.common.collect.Maps; +import org.jeecg.common.util.SpringContextHolder; +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherMain; +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherTjfx; +import org.jeecg.modules.kc.blTeacherMain.mapper.BlTeacherTjfxMapper; +import org.jeecg.modules.kc.blTeacherMain.mapper.BlTeacherMainMapper; +import org.jeecg.modules.kc.blTeacherMain.service.IBlTeacherMainService; +import org.jeecg.modules.tools.DateUtils; +import org.jeecg.modules.tools.Global; +import org.jeecg.modules.tools.word.ExportWord; +import org.jeecg.modules.tools.word.WordOperator; +import org.jfree.chart.ChartFactory; +import org.jfree.chart.ChartUtils; +import org.jfree.chart.JFreeChart; +import org.jfree.data.category.DefaultCategoryDataset; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; + +import java.io.File; +import java.io.FileInputStream; +import java.io.InputStream; +import java.io.Serializable; +import java.util.Date; +import java.util.List; +import java.util.Collection; +import java.util.Map; + +/** + * @Description: 教师调查问卷 + * @Author: jeecg-boot + * @Date: 2024-06-07 + * @Version: V1.0 + */ +@Service +public class BlTeacherMainServiceImpl extends ServiceImpl implements IBlTeacherMainService { + + @Autowired + private BlTeacherMainMapper blTeacherMainMapper; + @Autowired + private BlTeacherTjfxMapper blTeacherTjfxMapper; + + @Override + @Transactional(rollbackFor = Exception.class) + public void saveMain(BlTeacherMain blTeacherMain, List blTeacherTjfxList) { + blTeacherMainMapper.insert(blTeacherMain); + if(blTeacherTjfxList!=null && blTeacherTjfxList.size()>0) { + for(BlTeacherTjfx entity:blTeacherTjfxList) { + //外键设置 + entity.setMainId(blTeacherMain.getId()); + blTeacherTjfxMapper.insert(entity); + } + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateMain(BlTeacherMain blTeacherMain,List blTeacherTjfxList) { + blTeacherMainMapper.updateById(blTeacherMain); + + //1.先删除子表数据 + blTeacherTjfxMapper.deleteByMainId(blTeacherMain.getId()); + + //2.子表数据重新插入 + if(blTeacherTjfxList!=null && blTeacherTjfxList.size()>0) { + for(BlTeacherTjfx entity:blTeacherTjfxList) { + //外键设置 + entity.setMainId(blTeacherMain.getId()); + blTeacherTjfxMapper.insert(entity); + } + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delMain(String id) { + blTeacherTjfxMapper.deleteByMainId(id); + blTeacherMainMapper.deleteById(id); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delBatchMain(Collection idList) { + for(Serializable id:idList) { + blTeacherTjfxMapper.deleteByMainId(id.toString()); + blTeacherMainMapper.deleteById(id); + } + } + + @Override + public WordOperator createWordTjfx(String id) throws Exception { + String templateName = "exp1\\teacher-tjfx.docx"; + + WordOperator wo = ExportWord.getWordOperator(templateName); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("main_id",id); + queryWrapper.last("limit 10"); + List dataList = blTeacherTjfxMapper.selectList(queryWrapper); + + BlTeacherMain blTeacherMain = baseMapper.selectById(id); + + Map result = Maps.newHashMap(); + Map result2 = Maps.newHashMap(); + result.put("title", blTeacherMain.getTitle()); + result.put("nan", blTeacherMain.getTitle());//男占比 + result.put("nan_zb", blTeacherMain.getTitle());//女占比 + result.put("nv", blTeacherMain.getTitle());//女 + result.put("nv_zb", blTeacherMain.getTitle());//女占比 + result.put("xlccjg1", blTeacherMain.getTitle());//研究生 + result.put("xlccjg1_zb", blTeacherMain.getTitle());//研究生 + result.put("gwlxjg1", blTeacherMain.getTitle());//教学科研型 + result.put("gwlxjg1_zb", blTeacherMain.getTitle());//教学科研型 + result.put("xyjg1", blTeacherMain.getTitle());//学院结构 + result.put("xyjg1_zb", blTeacherMain.getTitle());//学院结构 + + + // 创建数据集 + DefaultCategoryDataset dataset = new DefaultCategoryDataset(); + dataset.addValue(100, "Series1", "Category1"); + dataset.addValue(150, "Series1", "Category2"); + dataset.addValue(200, "Series1", "Category3"); + dataset.addValue(200, "Series1", "Category4"); + dataset.addValue(200, "Series1", "Category5"); + dataset.addValue(100, "Series2", "Category1"); + dataset.addValue(150, "Series2", "Category2"); + dataset.addValue(200, "Series2", "Category3"); + dataset.addValue(200, "Series2", "Category4"); + dataset.addValue(200, "Series2", "Category5"); + + // 创建图表 + JFreeChart chart = ChartFactory.createBarChart( + "", // 图表标题 + "", // 类别轴标签 + "", // 数值轴标签 + dataset // 数据集 + ); + + Global global = SpringContextHolder.getBean(Global.class); + String imgName = DateUtils.format(new Date(),"yyyyMMddHHmmss")+".png"; + String imgPath1 = global.uploadPath + "/tjfxChart/"+ imgName; + // 保存图表到本地 + File file = new File(imgPath1); + ChartUtils.saveChartAsPNG(file, chart, 400, 300); // 设置图片大小为400x300 + + result.put("imgPath1", "tjfxChart/"+imgName);//学院结构 + + wo.replaceTextPlus(result); + + List> oneList = Lists.newArrayList(); + List> twoList = Lists.newArrayList(); + //-------拼装list-------------- + for(BlTeacherTjfx tjfxPar:dataList){ + List list = Lists.newArrayList(); + list.add("依法依规,履行教师职责"); + list.add("4.80"); + list.add("4.66"); + list.add("4.82"); + list.add("4.85"); + oneList.add(list); + + List list2 = Lists.newArrayList(); + list2.add("1111111"); + list2.add("4.80"); + list2.add("4.66"); + list2.add("4.82"); + list2.add("4.85"); + twoList.add(list2); + } + wo.insert2Table(1, 1, true, oneList); + wo.insert2Table(2, 1, true, twoList); + + + wo = WordOperator.twoReplaceWord(wo); + wo.replaceTextPlus(result2); + return wo; + } + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/impl/BlTeacherTjfxServiceImpl.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/impl/BlTeacherTjfxServiceImpl.java new file mode 100644 index 00000000..6620a7c3 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/service/impl/BlTeacherTjfxServiceImpl.java @@ -0,0 +1,27 @@ +package org.jeecg.modules.kc.blTeacherMain.service.impl; + +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherTjfx; +import org.jeecg.modules.kc.blTeacherMain.mapper.BlTeacherTjfxMapper; +import org.jeecg.modules.kc.blTeacherMain.service.IBlTeacherTjfxService; +import org.springframework.stereotype.Service; +import java.util.List; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; + +/** + * @Description: 问卷信息 + * @Author: jeecg-boot + * @Date: 2024-06-07 + * @Version: V1.0 + */ +@Service +public class BlTeacherTjfxServiceImpl extends ServiceImpl implements IBlTeacherTjfxService { + + @Autowired + private BlTeacherTjfxMapper blTeacherTjfxMapper; + + @Override + public List selectByMainId(String mainId) { + return blTeacherTjfxMapper.selectByMainId(mainId); + } +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/vo/BlTeacherMainPage.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/vo/BlTeacherMainPage.java new file mode 100644 index 00000000..37863355 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/blTeacherMain/vo/BlTeacherMainPage.java @@ -0,0 +1,55 @@ +package org.jeecg.modules.kc.blTeacherMain.vo; + +import java.util.List; +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherMain; +import org.jeecg.modules.kc.blTeacherMain.entity.BlTeacherTjfx; +import lombok.Data; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecgframework.poi.excel.annotation.ExcelEntity; +import org.jeecgframework.poi.excel.annotation.ExcelCollection; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import java.util.Date; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + * @Description: 教师调查问卷 + * @Author: jeecg-boot + * @Date: 2024-06-07 + * @Version: V1.0 + */ +@Data +@ApiModel(value="bl_teacher_mainPage对象", description="教师调查问卷") +public class BlTeacherMainPage { + + /**id*/ + @ApiModelProperty(value = "id") + private String id; + /**createBy*/ + @ApiModelProperty(value = "createBy") + private String createBy; + /**createTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "createTime") + private Date createTime; + /**updateBy*/ + @ApiModelProperty(value = "updateBy") + private String updateBy; + /**updateTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "updateTime") + private Date updateTime; + /**名称*/ + @Excel(name = "名称", width = 15) + @ApiModelProperty(value = "名称") + private String title; + + @ExcelCollection(name="问卷信息") + @ApiModelProperty(value = "问卷信息") + private List blTeacherTjfxList; + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKetangbiaoController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKetangbiaoController.java index f6ec1b14..5a7a3d82 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKetangbiaoController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKetangbiaoController.java @@ -446,12 +446,15 @@ public class KcKetangbiaoController extends JeecgController rsQw = new QueryWrapper<>(); rsQw.eq("pid",detectionMain.getId()); +// rsQw.like("create_time",nowStr); + rsQw.apply("create_time >= '" + nowStr + " 00:00:00' and create_time <= '" + nowStr + " 23:59:59'"); rsQw.orderByDesc("create_time"); rsQw.last("limit 1"); KcDetectionDetailed kcDetectionDetailed = kcDetectionDetailedService.getOne(rsQw); kcKetangbiao.setKcDetectionDetailed(kcDetectionDetailed); QueryWrapper rsQwList = new QueryWrapper<>(); rsQwList.eq("pid",detectionMain.getId()); + rsQwList.apply("create_time >= '" + nowStr + " 00:00:00' and create_time <= '" + nowStr + " 23:59:59'"); rsQwList.orderByDesc("create_time"); List zqrsList = kcDetectionDetailedService.list(rsQwList); kcKetangbiao.setZqrsList(zqrsList); diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxDjxx/entity/StudentCyglSys.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxDjxx/entity/StudentCyglSys.java new file mode 100644 index 00000000..38456e4a --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxDjxx/entity/StudentCyglSys.java @@ -0,0 +1,52 @@ +package org.jeecg.modules.kc.wjxDjxx.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; + +/** + * @Description: 教学大纲 + * @Author: jeecg-boot + * @Date: 2024-05-11 + * @Version: V1.0 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class StudentCyglSys implements Serializable { + private static final long serialVersionUID = 1L; + + private String id; + + @Excel(name = "学期学年", width = 15) + private String xqxn; + @Excel(name = "课程名称", width = 15) + private String kcmc; + @Excel(name = "授课教师", width = 15) + private String skjs; + @Excel(name = "作业名称", width = 15) + private String title; + @Excel(name = "学生姓名", width = 15) + private String stuName; + @Excel(name = "学号", width = 15) + private String stuNo; + @Excel(name = "作业状态", width = 15) + private String status; + @Excel(name = "测验时间", width = 15) + private String createTime; + @Excel(name = "测验结果", width = 15) + private String score; + + private String kcbh; + private String kkdw; + private String filePath; + private String pdfPath; + + private String jgh; + private String ywId; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxx/entity/KccyglSys.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxx/entity/KccyglSys.java new file mode 100644 index 00000000..c02607b4 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxx/entity/KccyglSys.java @@ -0,0 +1,48 @@ +package org.jeecg.modules.kc.wjxWjxx.entity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; + +import java.io.Serializable; + +/** + * @Description: 教学大纲 + * @Author: jeecg-boot + * @Date: 2024-05-11 + * @Version: V1.0 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class KccyglSys implements Serializable { + private static final long serialVersionUID = 1L; + + private String id; + + @Excel(name = "学期学年", width = 15) + private String xqxn; + @Excel(name = "开课单位", width = 15) + private String kkdw; + @Excel(name = "课程编号", width = 15) + private String kcbh; + @Excel(name = "课程名称", width = 15) + private String kcmc; + @Excel(name = "开课任务编号", width = 15) + private String rwbh; + @Excel(name = "授课教师", width = 15) + private String skjs; + @Excel(name = "上课时间", width = 15) + private String sksj; + @Excel(name = "上课地点", width = 15) + private String skdd; + @Excel(name = "选课学生", width = 15) + private String xkrs; + @Excel(name = "测验数量", width = 15) + private String num; + + private String jgh; + private String ywId; + private String atype; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/mapper/ZyCcjgMapper.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/mapper/ZyCcjgMapper.java index e8cb4ef5..88efdc6d 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/mapper/ZyCcjgMapper.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/mapper/ZyCcjgMapper.java @@ -19,4 +19,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; public interface ZyCcjgMapper extends BaseMapper { IPage getQuaList(Page page,@Param(Constants.WRAPPER) QueryWrapper queryWrapper); + + void deleteByZystuid(@Param("zyStuId") String zyStuId); } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/mapper/xml/ZyCcjgMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/mapper/xml/ZyCcjgMapper.xml index c5a0a07f..b138a5b4 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/mapper/xml/ZyCcjgMapper.xml +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/mapper/xml/ZyCcjgMapper.xml @@ -11,4 +11,12 @@ ${ew.customSqlSegment} + + DELETE + FROM zy_ccjg + WHERE + zy_stu_id = #{zyStuId} + + + \ No newline at end of file diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/service/IZyCcjgService.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/service/IZyCcjgService.java index 9c14f19b..3f28e42e 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/service/IZyCcjgService.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/service/IZyCcjgService.java @@ -17,4 +17,6 @@ public interface IZyCcjgService extends IService { void getCcjg(); IPage getQuaList(Page page, QueryWrapper queryWrapper); + + void deleteByZystuid(String id); } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/service/impl/ZyCcjgServiceImpl.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/service/impl/ZyCcjgServiceImpl.java index 741dabdf..6f427055 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/service/impl/ZyCcjgServiceImpl.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/service/impl/ZyCcjgServiceImpl.java @@ -111,6 +111,11 @@ public class ZyCcjgServiceImpl extends ServiceImpl impleme return baseMapper.getQuaList(page, queryWrapper); } + @Override + public void deleteByZystuid(String id) { + baseMapper.deleteByZystuid(id); + } + public Map aigcCxjcjg(ZyCcjg zyCcjg) { String url = "https://vims.fanyu.com/tool/AIGCCheck/searchPaper"; diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/ZyInfoSys.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/ZyInfoSys.java new file mode 100644 index 00000000..401c6919 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/ZyInfoSys.java @@ -0,0 +1,47 @@ +package org.jeecg.modules.kc.zyInfo.entity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; + +import java.io.Serializable; + +/** + * @Description: 教学大纲 + * @Author: jeecg-boot + * @Date: 2024-05-11 + * @Version: V1.0 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ZyInfoSys implements Serializable { + private static final long serialVersionUID = 1L; + + private String id; + + @Excel(name = "学期学年", width = 15) + private String xqxn; + @Excel(name = "开课单位", width = 15) + private String kkdw; + @Excel(name = "课程编号", width = 15) + private String kcbh; + @Excel(name = "课程名称", width = 15) + private String kcmc; + @Excel(name = "开课任务编号", width = 15) + private String rwbh; + @Excel(name = "上课时间", width = 15) + private String sksj; + @Excel(name = "上课地点", width = 15) + private String skdd; + @Excel(name = "授课教师", width = 15) + private String skjs; + @Excel(name = "选课学生", width = 15) + private String xkrs; + @Excel(name = "作业数量", width = 15) + private String num; + + private String jgh; + private String ywId; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/controller/ZyInfoStudentController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/controller/ZyInfoStudentController.java index c9df2d49..757bebe5 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/controller/ZyInfoStudentController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/controller/ZyInfoStudentController.java @@ -133,15 +133,23 @@ public class ZyInfoStudentController extends JeecgController updateWrapper = new UpdateWrapper<>(); updateWrapper.set("file_path",null); updateWrapper.set("pdf_path",null); + updateWrapper.set("wwsftg",null); + updateWrapper.set("nwsftg",null); + updateWrapper.set("aigcsftg",null); + updateWrapper.set("xnsftg",null); + updateWrapper.set("wwxsl",null); + updateWrapper.set("nwxsl",null); + updateWrapper.set("aigcxsl",null); + updateWrapper.set("xnxsl",null); updateWrapper.eq("id",zyInfoStudent.getId()); zyInfoStudentService.update(updateWrapper); + + //查重前删除原来的查重数据 + zyCcjgService.deleteByZystuid(zyInfoStudent.getId()); return Result.OK("编辑成功!"); } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/entity/ZyInfoStudent.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/entity/ZyInfoStudent.java index dabc9da4..1384fb9c 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/entity/ZyInfoStudent.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/entity/ZyInfoStudent.java @@ -144,4 +144,25 @@ public class ZyInfoStudent implements Serializable { private String aigcpaperviewurl;//aigc预览 @TableField(exist = false) private String aigcpaperdownurl;//aigc外网下载 + + @TableField(exist = false) + private String filestateid;// + @TableField(exist = false) + private String message;// + @TableField(exist = false) + private String wwfilestateid;//外网状态 + @TableField(exist = false) + private String wwmessage;//外网说明 + @TableField(exist = false) + private String zyfilestateid;//作业状态 + @TableField(exist = false) + private String zymessage;//作业说明 + @TableField(exist = false) + private String aigcfilestateid;//aigc状态 + @TableField(exist = false) + private String aigcmessage;//aigc说明 + @TableField(exist = false) + private String xxfilestateid;//学校状态 + @TableField(exist = false) + private String xxmessage;//学校说明 } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/entity/ZyInfoStudentSys.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/entity/ZyInfoStudentSys.java new file mode 100644 index 00000000..69f0d83d --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/entity/ZyInfoStudentSys.java @@ -0,0 +1,67 @@ +package org.jeecg.modules.kc.zyInfoStudent.entity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; + +import java.io.Serializable; + +/** + * @Description: 教学大纲 + * @Author: jeecg-boot + * @Date: 2024-05-11 + * @Version: V1.0 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ZyInfoStudentSys implements Serializable { + private static final long serialVersionUID = 1L; + + private String id; + + @Excel(name = "学期学年", width = 15) + private String xnxq; + @Excel(name = "课程名称", width = 15) + private String kcmc; + @Excel(name = "授课教师", width = 15) + private String skjs; + @Excel(name = "作业名称", width = 15) + private String title; + @Excel(name = "学生姓名", width = 15) + private String stuName; + @Excel(name = "学号", width = 15) + private String stuNo; + @Excel(name = "作业状态", width = 15) + private String status; + + + @Excel(name = "网络相似率", width = 15) + private String wwxsl; + @Excel(name = "网络是否通过", width = 15) + private String wwsftg; + @Excel(name = "作业相似率", width = 15) + private String nwxsl; + @Excel(name = "作业是否通过", width = 15) + private String nwsftg; + @Excel(name = "aigc相似率", width = 15) + private String aigcxsl; + @Excel(name = "aigc是否通过", width = 15) + private String aigcsftg; + @Excel(name = "校内相似率", width = 15) + private String xnxsl; + @Excel(name = "校内是否通过", width = 15) + private String xnsftg; + + @Excel(name = "成绩", width = 15) + private String score; + + private String kcbh; + private String kkdw; + private String filePath; + private String pdfPath; + + private String jgh; + private String ywId; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/mapper/xml/ZyInfoStudentMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/mapper/xml/ZyInfoStudentMapper.xml index 3989dcd2..b8f4693b 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/mapper/xml/ZyInfoStudentMapper.xml +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/mapper/xml/ZyInfoStudentMapper.xml @@ -6,12 +6,12 @@ delete from zy_info_student where main_id = #{mainId} @@ -24,15 +24,8 @@ @@ -56,6 +49,29 @@ and c.xm like concat('%',#{zyInfoStudentSys.stuName},'%') + + + and a.score != null + + + and a.file_path is not null and a.file_path != '' + + + and a.file_path is null + + + + and a.wwsftg = #{zyInfoStudentSys.wwsftg} + + + and a.nwsftg = #{zyInfoStudentSys.nwsftg} + + + and a.aigcsftg = #{zyInfoStudentSys.aigcsftg} + + + and a.xnsftg = #{zyInfoStudentSys.xnsftg} + @@ -79,6 +95,29 @@ and c.xm like concat('%',#{zyInfoStudentSys.stuName},'%') + + + and a.score != null + + + and a.file_path != null + + + and a.file_path == null + + + + and a.wwsftg = #{zyInfoStudentSys.wwsftg} + + + and a.nwsftg = #{zyInfoStudentSys.nwsftg} + + + and a.aigcsftg = #{zyInfoStudentSys.aigcsftg} + + + and a.xnsftg = #{zyInfoStudentSys.xnsftg} + diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/service/IZyInfoStudentService.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/service/IZyInfoStudentService.java index 71d5a96c..881f27a1 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/service/IZyInfoStudentService.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/service/IZyInfoStudentService.java @@ -36,4 +36,5 @@ public interface IZyInfoStudentService extends IService { IPage sysList(Page page, QueryWrapper queryWrapper, ZyInfoStudentSys zyInfoStudentSys); List exportSysXls(QueryWrapper queryWrapper, ZyInfoStudentSys zyInfoStudentSys); + } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/service/impl/ZyInfoStudentServiceImpl.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/service/impl/ZyInfoStudentServiceImpl.java index ad09397d..479f778e 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/service/impl/ZyInfoStudentServiceImpl.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudent/service/impl/ZyInfoStudentServiceImpl.java @@ -100,10 +100,14 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl kcKechengbiaoQueryWrapper = new QueryWrapper<>(); // kcKechengbiaoQueryWrapper.eq("xqxn",zyInfo.getXnxq()); @@ -114,6 +118,7 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl textMap = new HashMap(); //可以设置多个input的name,value String sign = getSign(); @@ -199,7 +203,7 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl"+ret); + System.out.println("aigc1-------->"+ret); JSONObject object= JSONObject.parseObject(ret); if("true".equals(object.getString("success"))){ @@ -222,6 +226,13 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl"+message); }else{ System.out.println("3-------->"); + + ZyCcjg zyCcjg = new ZyCcjg(); + zyCcjg.setZyStuId(zyInfoStudent.getId()); + zyCcjg.setMessage(object.getString("message")); + zyCcjg.setCcType("2");//查重类型(0外网 1内网 2aigc) + zyCcjg.setFilestateid("3"); + zyCcjgMapper.insert(zyCcjg); } } @@ -250,7 +261,8 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl textMap = new HashMap(); String titlePar =fileName.substring(fileName.lastIndexOf("/")+1,fileName.length()); String title = titlePar.split("_")[0]; @@ -288,6 +300,12 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl"+message); }else{ System.out.println("3-------->"); + ZyCcjg zyCcjg = new ZyCcjg(); + zyCcjg.setZyStuId(zyInfoStudent.getId()); + zyCcjg.setMessage(object.getString("message")); + zyCcjg.setCcType("1");//查重类型(0外网 1内网 2aigc) + zyCcjg.setFilestateid("3"); + zyCcjgMapper.insert(zyCcjg); } } @@ -296,8 +314,9 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl textMap = new HashMap(); String titlePar =fileName.substring(fileName.lastIndexOf("/")+1,fileName.length()); String title = titlePar.split("_")[0]; @@ -325,15 +344,15 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl"+message); @@ -341,6 +360,12 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl"); + ZyCcjg zyCcjg = new ZyCcjg(); + zyCcjg.setZyStuId(zyInfoStudent.getId()); + zyCcjg.setMessage(object.getString("message")); + zyCcjg.setCcType("3");//查重类型(0外网 1内网 2aigc) + zyCcjg.setFilestateid("3"); + zyCcjgMapper.insert(zyCcjg); } } @@ -370,8 +395,8 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl textMap = new HashMap(); //可以设置多个input的name,value String sign = getSign(); @@ -396,8 +421,6 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl"+paperid); - - ZyCcjg zyCcjg = new ZyCcjg(); zyCcjg.setZyStuId(zyInfoStudent.getId()); zyCcjg.setPaperid(paperid); @@ -410,6 +433,12 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl"); + ZyCcjg zyCcjg = new ZyCcjg(); + zyCcjg.setZyStuId(zyInfoStudent.getId()); + zyCcjg.setMessage(object.getString("message")); + zyCcjg.setCcType("0");//查重类型(0外网 1内网 2aigc) + zyCcjg.setFilestateid("3"); + zyCcjgMapper.insert(zyCcjg); return "false"; } } @@ -453,28 +482,28 @@ public class ZyInfoStudentServiceImpl extends ServiceImpl"+path); Map map = SFTPUtil.download(sftpConfig,imgPath,getDownloadPath(path)); System.out.println("map----------->"+map); - if(!map.get("code").equals("0")){ - response.setStatus(404); -// throw new RuntimeException(map.get("msg")); - } +// if(!map.get("code").equals("0")){ +// response.setStatus(404); +//// throw new RuntimeException(map.get("msg")); +// } String localFilePath = map.get("fileName"); - File file = new File(localFilePath); - if(!file.exists()){ - response.setStatus(404); -// throw new RuntimeException("文件["+imgPath+"]不存在.."); - } - System.out.println("localFilePath----------->"+localFilePath); - // 设置强制下载不打开 - response.setContentType("application/force-download"); - response.addHeader("Content-Disposition", "attachment;fileName=" + new String(file.getName().getBytes("UTF-8"),"iso-8859-1")); - inputStream = new BufferedInputStream(new FileInputStream(localFilePath)); - outputStream = response.getOutputStream(); - byte[] buf = new byte[1024]; - int len; - while ((len = inputStream.read(buf)) > 0) { - outputStream.write(buf, 0, len); - } - response.flushBuffer(); +// File file = new File(localFilePath); +// if(!file.exists()){ +// response.setStatus(404); +//// throw new RuntimeException("文件["+imgPath+"]不存在.."); +// } +// System.out.println("localFilePath----------->"+localFilePath); +// // 设置强制下载不打开 +// response.setContentType("application/force-download"); +// response.addHeader("Content-Disposition", "attachment;fileName=" + new String(file.getName().getBytes("UTF-8"),"iso-8859-1")); +// inputStream = new BufferedInputStream(new FileInputStream(localFilePath)); +// outputStream = response.getOutputStream(); +// byte[] buf = new byte[1024]; +// int len; +// while ((len = inputStream.read(buf)) > 0) { +// outputStream.write(buf, 0, len); +// } +// response.flushBuffer(); fileName = localFilePath; System.out.println("fileName----------->"+fileName); }catch (Exception e){ diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyJxdg/entity/ZyJxdgSys.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyJxdg/entity/ZyJxdgSys.java new file mode 100644 index 00000000..1f957824 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyJxdg/entity/ZyJxdgSys.java @@ -0,0 +1,62 @@ +package org.jeecg.modules.kc.zyJxdg.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.util.Date; + +/** + * @Description: 教学大纲 + * @Author: jeecg-boot + * @Date: 2024-05-11 + * @Version: V1.0 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ZyJxdgSys implements Serializable { + private static final long serialVersionUID = 1L; + + private String id; + + @Excel(name = "学期学年", width = 15) + private String xqxn; + @Excel(name = "开课单位", width = 15) + private String kkdw; + @Excel(name = "课程编号", width = 15) + private String kcbh; + @Excel(name = "课程名称", width = 15) + private String kcmc; + @Excel(name = "开课任务编号", width = 15) + private String rwbh; + @Excel(name = "上课时间", width = 15) + private String sksj; + @Excel(name = "上课地点", width = 15) + private String skdd; + @Excel(name = "授课教师", width = 15) + private String skjs; + @Excel(name = "选课学生", width = 15) + private String xkrs; +// @Excel(name = "教学大纲", width = 15) + private String filePath; + @Excel(name = "课程简介", width = 15) + private String kcjs; +// @Excel(name = "教学日历", width = 15) + private String jxrlFilePath; + + private String pdfPath; + private String jxrlPdfPath; + private String jgh; + private String ywId; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyTlq/entity/ZyTlqSys.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyTlq/entity/ZyTlqSys.java new file mode 100644 index 00000000..7257f086 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyTlq/entity/ZyTlqSys.java @@ -0,0 +1,45 @@ +package org.jeecg.modules.kc.zyTlq.entity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; + +import java.io.Serializable; + +/** + * @Description: 教学大纲 + * @Author: jeecg-boot + * @Date: 2024-05-11 + * @Version: V1.0 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ZyTlqSys implements Serializable { + private static final long serialVersionUID = 1L; + + private String id; + + @Excel(name = "学期学年", width = 15) + private String xqxn; + @Excel(name = "课程名称", width = 15) + private String kcmc; + @Excel(name = "授课教师", width = 15) + private String skjs; + @Excel(name = "学生姓名", width = 15) + private String stuName; + @Excel(name = "学号", width = 15) + private String stuNo; + @Excel(name = "发言主题", width = 15) + private String title; + + private String kcbh; + private String kkdw; + private String filePath; + private String picPath; + private String content; + + private String jgh; + private String ywId; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/tools/ECharts/EchartsTest.java b/jeecg-module-main/src/main/java/org/jeecg/modules/tools/ECharts/EchartsTest.java new file mode 100644 index 00000000..2f8cb9b0 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/tools/ECharts/EchartsTest.java @@ -0,0 +1,44 @@ +package org.jeecg.modules.tools.ECharts; + + +import org.jfree.chart.ChartFactory; +import org.jfree.chart.ChartUtils; +import org.jfree.chart.JFreeChart; +import org.jfree.data.category.DefaultCategoryDataset; +import java.io.File; + +/** + * @Title: EchartsTest + * @Date 2022/5/11 17:28 + * @Author Yinan + * @Description: 测试Echarts后台渲染生成图片 + */ +public class EchartsTest { +// 生成一个echarts表,并将图片保存到本地 +public static void main(String[] args) throws Exception { + // 创建数据集 + DefaultCategoryDataset dataset = new DefaultCategoryDataset(); + dataset.addValue(100, "Series1", "Category1"); + dataset.addValue(150, "Series1", "Category2"); + dataset.addValue(200, "Series1", "Category3"); + dataset.addValue(200, "Series1", "Category4"); + dataset.addValue(200, "Series1", "Category5"); + dataset.addValue(100, "Series2", "Category1"); + dataset.addValue(150, "Series2", "Category2"); + dataset.addValue(200, "Series2", "Category3"); + dataset.addValue(200, "Series2", "Category4"); + dataset.addValue(200, "Series2", "Category5"); + + // 创建图表 + JFreeChart chart = ChartFactory.createBarChart( + "", // 图表标题 + "", // 类别轴标签 + "", // 数值轴标签 + dataset // 数据集 + ); + + // 保存图表到本地 + File file = new File("D:/barChart.png"); + ChartUtils.saveChartAsPNG(file, chart, 800, 400); // 设置图片大小为400x300 +} +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/zyk/controller/ZykController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/zyk/controller/ZykController.java index c3b5f211..71d3d13c 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/zyk/controller/ZykController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/zyk/controller/ZykController.java @@ -137,7 +137,7 @@ public class ZykController extends JeecgController { throw new RuntimeException("文件["+filePath+"]不存在.."); } // 设置强制下载不打开 - response.setContentType("application/force-download"); +// response.setContentType("application/force-download"); response.addHeader("Content-Disposition", "attachment;fileName=" + new String(file.getName().getBytes("UTF-8"),"iso-8859-1")); inputStream = new BufferedInputStream(new FileInputStream(localFilePath)); outputStream = response.getOutputStream(); diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/controller/CommonController.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/controller/CommonController.java index 521095a7..61b1f4b4 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/controller/CommonController.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/controller/CommonController.java @@ -184,7 +184,7 @@ public class CommonController { } // 获取文件名 if(fileName == null){ - String orgName = StrAttackFilter.filter(mf.getOriginalFilename()); + String orgName = StrAttackFilter.filter2(mf.getOriginalFilename()); if (orgName != null) { orgName = CommonUtils.getFileName(orgName); if(orgName.contains(SymbolConstant.SPOT)){ @@ -491,7 +491,7 @@ public class CommonController { throw new RuntimeException("文件["+imgPath+"]不存在.."); } // 设置强制下载不打开 - response.setContentType("application/force-download"); +// response.setContentType("application/force-download"); response.addHeader("Content-Disposition", "attachment;fileName=" + new String(file.getName().getBytes("UTF-8"),"iso-8859-1")); inputStream = new BufferedInputStream(new FileInputStream(localFilePath)); outputStream = response.getOutputStream(); @@ -515,7 +515,7 @@ public class CommonController { throw new RuntimeException("文件[" + imgPath + "]不存在.."); } // 设置强制下载不打开 - response.setContentType("application/force-download"); +// response.setContentType("application/force-download"); response.addHeader("Content-Disposition", "attachment;fileName=" + new String(file.getName().getBytes("UTF-8"), "iso-8859-1")); inputStream = new BufferedInputStream(new FileInputStream(filePath)); outputStream = response.getOutputStream();