From bea55cb2ba478c98e8bb4c77c3e062b157c11f98 Mon Sep 17 00:00:00 2001 From: yangjun <1173114630@qq.com> Date: Sat, 27 May 2023 10:46:44 +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 --- .../kcSzkc/controller/KcSzkcController.java | 204 +++++++++++++++ .../modules/kc/kcSzkc/entity/KcSzkc.java | 70 ++++++ .../kc/kcSzkc/mapper/KcSzkcMapper.java | 18 ++ .../kc/kcSzkc/mapper/xml/KcSzkcMapper.xml | 8 + .../kc/kcSzkc/service/IKcSzkcService.java | 15 ++ .../service/impl/KcSzkcServiceImpl.java | 30 +++ .../controller/KcZzThpjbController.java | 238 ++++++++++++++++++ .../kc/kcZzThpjb/entity/KcZzThpjb.java | 125 +++++++++ .../kc/kcZzThpjb/mapper/KcZzThpjbMapper.java | 17 ++ .../kcZzThpjb/mapper/xml/KcZzThpjbMapper.xml | 5 + .../kcZzThpjb/service/IKcZzThpjbService.java | 14 ++ .../service/impl/KcZzThpjbServiceImpl.java | 19 ++ .../controller/KcZzXstkbController.java | 238 ++++++++++++++++++ .../kc/kcZzXstkb/entity/KcZzXstkb.java | 148 +++++++++++ .../kc/kcZzXstkb/mapper/KcZzXstkbMapper.java | 17 ++ .../kcZzXstkb/mapper/xml/KcZzXstkbMapper.xml | 5 + .../kcZzXstkb/service/IKcZzXstkbService.java | 14 ++ .../service/impl/KcZzXstkbServiceImpl.java | 19 ++ .../controller/KcZzYbtkbController.java | 237 +++++++++++++++++ .../kc/kcZzYbtkb/entity/KcZzYbtkb.java | 143 +++++++++++ .../kc/kcZzYbtkb/mapper/KcZzYbtkbMapper.java | 17 ++ .../kcZzYbtkb/mapper/xml/KcZzYbtkbMapper.xml | 5 + .../kcZzYbtkb/service/IKcZzYbtkbService.java | 14 ++ .../service/impl/KcZzYbtkbServiceImpl.java | 19 ++ .../controller/KcKechengbiaoController.java | 56 ++++- .../modules/kc/ktgl/entity/KcKechengbiao.java | 3 + .../modules/kc/ktgl/entity/KcKetangbiao.java | 3 + .../kc/ktgl/mapper/KcKechengbiaoMapper.java | 8 + .../ktgl/mapper/xml/KcKechengbiaoMapper.xml | 13 + .../kc/ktgl/mapper/xml/KcKetangbiaoMapper.xml | 4 +- .../ktgl/service/IKcKechengbiaoService.java | 7 + .../impl/KcKechengbiaoServiceImpl.java | 14 ++ 32 files changed, 1744 insertions(+), 3 deletions(-) create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/controller/KcSzkcController.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/entity/KcSzkc.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/mapper/KcSzkcMapper.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/mapper/xml/KcSzkcMapper.xml create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/service/IKcSzkcService.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/service/impl/KcSzkcServiceImpl.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/controller/KcZzThpjbController.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/entity/KcZzThpjb.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/mapper/KcZzThpjbMapper.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/mapper/xml/KcZzThpjbMapper.xml create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/service/IKcZzThpjbService.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/service/impl/KcZzThpjbServiceImpl.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/controller/KcZzXstkbController.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/entity/KcZzXstkb.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/mapper/KcZzXstkbMapper.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/mapper/xml/KcZzXstkbMapper.xml create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/service/IKcZzXstkbService.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/service/impl/KcZzXstkbServiceImpl.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/controller/KcZzYbtkbController.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/entity/KcZzYbtkb.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/mapper/KcZzYbtkbMapper.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/mapper/xml/KcZzYbtkbMapper.xml create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/service/IKcZzYbtkbService.java create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/service/impl/KcZzYbtkbServiceImpl.java diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/controller/KcSzkcController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/controller/KcSzkcController.java new file mode 100644 index 00000000..6e338d26 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/controller/KcSzkcController.java @@ -0,0 +1,204 @@ +package org.jeecg.modules.kc.kcSzkc.controller; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +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.kcSzkc.entity.KcSzkc; +import org.jeecg.modules.kc.kcSzkc.service.IKcSzkcService; + +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 org.jeecg.modules.kc.ktgl.entity.KcKechengbiao; +import org.jeecg.modules.kc.ktgl.entity.KcKetangbiao; +import org.jeecg.modules.kc.ktgl.service.IKcKechengbiaoService; +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.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +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: 2023-05-25 + * @Version: V1.0 + */ +@Api(tags="思政课程") +@RestController +@RequestMapping("/kcSzkc/kcSzkc") +@Slf4j +public class KcSzkcController extends JeecgController { + @Autowired + private IKcSzkcService kcSzkcService; + @Autowired + private IKcKechengbiaoService kcKechengbiaoService; + + /** + * 分页列表查询 + * + * @param kcSzkc + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "思政课程-分页列表查询") + @ApiOperation(value="思政课程-分页列表查询", notes="思政课程-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(KcSzkc kcSzkc, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(kcSzkc, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = kcSzkcService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param kcSzkc + * @return + */ + @AutoLog(value = "思政课程-添加") + @ApiOperation(value="思政课程-添加", notes="思政课程-添加") + @RequiresPermissions("kcSzkc:kc_szkc:add") + @PostMapping(value = "/add") + public Result add(@RequestBody KcSzkc kcSzkc) { + kcSzkcService.save(kcSzkc); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param kcSzkc + * @return + */ + @AutoLog(value = "思政课程-编辑") + @ApiOperation(value="思政课程-编辑", notes="思政课程-编辑") + @RequiresPermissions("kcSzkc:kc_szkc:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody KcSzkc kcSzkc) { + kcSzkcService.updateById(kcSzkc); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "思政课程-通过id删除") + @ApiOperation(value="思政课程-通过id删除", notes="思政课程-通过id删除") + @RequiresPermissions("kcSzkc:kc_szkc:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + kcSzkcService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "思政课程-批量删除") + @ApiOperation(value="思政课程-批量删除", notes="思政课程-批量删除") + @RequiresPermissions("kcSzkc:kc_szkc:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.kcSzkcService.removeByIds(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) { + KcSzkc kcSzkc = kcSzkcService.getById(id); + if(kcSzkc==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(kcSzkc); + } + + /** + * 导出excel + * + * @param request + * @param kcSzkc + */ + @RequiresPermissions("kcSzkc:kc_szkc:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, KcSzkc kcSzkc) { + return super.exportXls(request, kcSzkc, KcSzkc.class, "思政课程"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequiresPermissions("kcSzkc:kc_szkc:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, KcSzkc.class); + } + + + @AutoLog(value = "批量思政课程-添加") + @ApiOperation(value="批量思政课程-添加", notes="批量思政课程-添加") + @PostMapping(value = "/addBatch") + public Result addBatch(@RequestBody KcSzkc kcSzkc) { + List list = kcKechengbiaoService.getSzkcList(); + List arrayList = new ArrayList<>(); + for(int i=0;i { + + void addBatch(); +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/mapper/xml/KcSzkcMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/mapper/xml/KcSzkcMapper.xml new file mode 100644 index 00000000..609f5e31 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/mapper/xml/KcSzkcMapper.xml @@ -0,0 +1,8 @@ + + + + + + insert into kc_szkc (id,create_time,kcmc,kcbh,kkdw) + + \ No newline at end of file diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/service/IKcSzkcService.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/service/IKcSzkcService.java new file mode 100644 index 00000000..8d54e5ea --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/service/IKcSzkcService.java @@ -0,0 +1,15 @@ +package org.jeecg.modules.kc.kcSzkc.service; + +import org.jeecg.modules.kc.kcSzkc.entity.KcSzkc; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 思政课程 + * @Author: jeecg-boot + * @Date: 2023-05-25 + * @Version: V1.0 + */ +public interface IKcSzkcService extends IService { + + void addBatch(KcSzkc kcSzkc); +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/service/impl/KcSzkcServiceImpl.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/service/impl/KcSzkcServiceImpl.java new file mode 100644 index 00000000..12842101 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcSzkc/service/impl/KcSzkcServiceImpl.java @@ -0,0 +1,30 @@ +package org.jeecg.modules.kc.kcSzkc.service.impl; + +import org.jeecg.modules.kc.kcSzkc.entity.KcSzkc; +import org.jeecg.modules.kc.kcSzkc.mapper.KcSzkcMapper; +import org.jeecg.modules.kc.kcSzkc.service.IKcSzkcService; +import org.jeecg.modules.kc.ktgl.entity.KcKechengbiao; +import org.jeecg.modules.kc.ktgl.service.IKcKechengbiaoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import java.util.List; + +/** + * @Description: 思政课程 + * @Author: jeecg-boot + * @Date: 2023-05-25 + * @Version: V1.0 + */ +@Service +public class KcSzkcServiceImpl extends ServiceImpl implements IKcSzkcService { + @Autowired + private IKcKechengbiaoService kcKechengbiaoService; + + @Override + public void addBatch(KcSzkc kcSzkc) { + List list = kcKechengbiaoService.getSzkcList(); + } +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/controller/KcZzThpjbController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/controller/KcZzThpjbController.java new file mode 100644 index 00000000..19efb9a3 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/controller/KcZzThpjbController.java @@ -0,0 +1,238 @@ +package org.jeecg.modules.kc.kcZzThpjb.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringUtils; +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.kcZzThpjb.entity.KcZzThpjb; +import org.jeecg.modules.kc.kcZzThpjb.service.IKcZzThpjbService; + +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 org.jeecg.modules.kc.kcZzYbtkb.entity.KcZzYbtkb; +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.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +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: 2023-05-24 + * @Version: V1.0 + */ +@Api(tags="纸质同行评价表") +@RestController +@RequestMapping("/kcZzThpjb/kcZzThpjb") +@Slf4j +public class KcZzThpjbController extends JeecgController { + @Autowired + private IKcZzThpjbService kcZzThpjbService; + + /** + * 分页列表查询 + * + * @param kcZzThpjb + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "纸质同行评价表-分页列表查询") + @ApiOperation(value="纸质同行评价表-分页列表查询", notes="纸质同行评价表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(KcZzThpjb kcZzThpjb, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(kcZzThpjb, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = kcZzThpjbService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param kcZzThpjb + * @return + */ + @AutoLog(value = "纸质同行评价表-添加") + @ApiOperation(value="纸质同行评价表-添加", notes="纸质同行评价表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody KcZzThpjb kcZzThpjb) { + kcZzThpjbService.save(kcZzThpjb); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param kcZzThpjb + * @return + */ + @AutoLog(value = "纸质同行评价表-编辑") + @ApiOperation(value="纸质同行评价表-编辑", notes="纸质同行评价表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody KcZzThpjb kcZzThpjb) { + kcZzThpjbService.updateById(kcZzThpjb); + 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) { + kcZzThpjbService.removeById(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.kcZzThpjbService.removeByIds(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) { + KcZzThpjb kcZzThpjb = kcZzThpjbService.getById(id); + if(kcZzThpjb==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(kcZzThpjb); + } + + /** + * 导出excel + * + * @param request + * @param kcZzThpjb + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, KcZzThpjb kcZzThpjb) { + return super.exportXls(request, kcZzThpjb, KcZzThpjb.class, "纸质同行评价表"); + } + + /** + * 通过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(), KcZzThpjb.class, params); + String rest = ""; + String errorRest = ""; + List newList = list; + int errNum = 0; + for(int i=0;i queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("kcbh",KcZzThpjbPar.getKcbh()); + queryWrapper.eq("kcmc",KcZzThpjbPar.getKcmc()); + queryWrapper.eq("skjs",KcZzThpjbPar.getSkjs()); + queryWrapper.eq("skdd",KcZzThpjbPar.getSkdd()); + queryWrapper.eq("sksj",KcZzThpjbPar.getSksj()); + queryWrapper.eq("skdx",KcZzThpjbPar.getSkdx()); + queryWrapper.eq("skjiaoshou",KcZzThpjbPar.getSkjiaoshou()); + queryWrapper.eq("pjsj",KcZzThpjbPar.getPjsj()); + List listPar = kcZzThpjbService.list(queryWrapper); + if(listPar!=null&&listPar.size()>0){ + errNum++; + newList.remove(KcZzThpjbPar); + errorRest += KcZzThpjbPar.getKcbh()+"-"+KcZzThpjbPar.getKcmc()+"-"+KcZzThpjbPar.getSkjs()+"-"+KcZzThpjbPar.getSkdd()+"-"+KcZzThpjbPar.getSkdx()+"-"+KcZzThpjbPar.getSkjiaoshou()+"
"; + } + } + //update-begin-author:taoyan date:20190528 for:批量插入数据 + long start = System.currentTimeMillis(); + service.saveBatch(newList); + //400条 saveBatch消耗时间1592毫秒 循环插入消耗时间1947毫秒 + //1200条 saveBatch消耗时间3687毫秒 循环插入消耗时间5212毫秒 + log.info("消耗时间" + (System.currentTimeMillis() - start) + "毫秒"); + //update-end-author:taoyan date:20190528 for:批量插入数据 + rest = "文件导入成功!数据行数:" + newList.size(); + if(StringUtils.isNotBlank(errorRest)){ + errorRest = "
共错误:"+errNum+"行;错误数据如下:
"+errorRest; + } + return Result.ok(rest+errorRest); + } catch (Exception e) { + //update-begin-author:taoyan date:20211124 for: 导入数据重复增加提示 + String msg = e.getMessage(); + log.error(msg, e); + if(msg!=null && msg.indexOf("Duplicate entry")>=0){ + return Result.error("文件导入失败:有重复数据!"); + }else{ + return Result.error("文件导入失败:" + e.getMessage()); + } + //update-end-author:taoyan date:20211124 for: 导入数据重复增加提示 + } finally { + try { + file.getInputStream().close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + return Result.error("文件导入失败!"); + } + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/entity/KcZzThpjb.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/entity/KcZzThpjb.java new file mode 100644 index 00000000..a7bdcc4f --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/entity/KcZzThpjb.java @@ -0,0 +1,125 @@ +package org.jeecg.modules.kc.kcZzThpjb.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +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; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 纸质同行评价表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +@Data +@TableName("kc_zz_thpjb") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="kc_zz_thpjb对象", description="纸质同行评价表") +public class KcZzThpjb implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**所属部门*/ + @ApiModelProperty(value = "所属部门") + private java.lang.String sysOrgCode; + /**课程编号*/ + @Excel(name = "课程编号", width = 15) + @ApiModelProperty(value = "课程编号") + private java.lang.String kcbh; + /**课程名称*/ + @Excel(name = "课程名称", width = 15) + @ApiModelProperty(value = "课程名称") + private java.lang.String kcmc; + /**授课教师*/ + @Excel(name = "授课教师", width = 15) + @ApiModelProperty(value = "授课教师") + private java.lang.String skjs; + /**授课时间*/ + @Excel(name = "授课时间", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "授课时间") + private java.util.Date sksj; + /**上课地点*/ + @Excel(name = "上课地点", width = 15) + @ApiModelProperty(value = "上课地点") + private java.lang.String skdd; + /**使用教材*/ + @Excel(name = "使用教材", width = 15) + @ApiModelProperty(value = "使用教材") + private java.lang.String syjc; + + @Excel(name = "授课对象", width = 15) + @ApiModelProperty(value = "授课对象") + private java.lang.String skdx; + @Excel(name = "授课教授", width = 15) + @ApiModelProperty(value = "授课教授") + private java.lang.String skjiaoshou; + /**教学理解*/ + @Excel(name = "教学理解", width = 15) + @ApiModelProperty(value = "教学理解") + private java.lang.String jxlj; + /**教学态度*/ + @Excel(name = "教学态度", width = 15) + @ApiModelProperty(value = "教学态度") + private java.lang.String jxtd; + /**教学过程*/ + @Excel(name = "教学过程", width = 15) + @ApiModelProperty(value = "教学过程") + private java.lang.String jxgc; + /**教学效果*/ + @Excel(name = "教学效果", width = 15) + @ApiModelProperty(value = "教学效果") + private java.lang.String jxxg; + /**教学特殊*/ + @Excel(name = "教学特殊", width = 15) + @ApiModelProperty(value = "教学特殊") + private java.lang.String jxts; + /**总分*/ + @Excel(name = "总分", width = 15) + @ApiModelProperty(value = "总分") + private java.lang.String zf; + /**优点或建议*/ + @Excel(name = "优点或建议", width = 15) + @ApiModelProperty(value = "优点或建议") + private java.lang.String ydhjy; + /**评价时间*/ + @Excel(name = "评价时间", width = 20, format = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "评价时间") + private java.util.Date pjsj; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/mapper/KcZzThpjbMapper.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/mapper/KcZzThpjbMapper.java new file mode 100644 index 00000000..419e9815 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/mapper/KcZzThpjbMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.kc.kcZzThpjb.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.kc.kcZzThpjb.entity.KcZzThpjb; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 纸质同行评价表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +public interface KcZzThpjbMapper extends BaseMapper { + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/mapper/xml/KcZzThpjbMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/mapper/xml/KcZzThpjbMapper.xml new file mode 100644 index 00000000..82e78e12 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/mapper/xml/KcZzThpjbMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/service/IKcZzThpjbService.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/service/IKcZzThpjbService.java new file mode 100644 index 00000000..1a73f53d --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/service/IKcZzThpjbService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.kc.kcZzThpjb.service; + +import org.jeecg.modules.kc.kcZzThpjb.entity.KcZzThpjb; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 纸质同行评价表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +public interface IKcZzThpjbService extends IService { + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/service/impl/KcZzThpjbServiceImpl.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/service/impl/KcZzThpjbServiceImpl.java new file mode 100644 index 00000000..a9c68630 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzThpjb/service/impl/KcZzThpjbServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.kc.kcZzThpjb.service.impl; + +import org.jeecg.modules.kc.kcZzThpjb.entity.KcZzThpjb; +import org.jeecg.modules.kc.kcZzThpjb.mapper.KcZzThpjbMapper; +import org.jeecg.modules.kc.kcZzThpjb.service.IKcZzThpjbService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 纸质同行评价表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +@Service +public class KcZzThpjbServiceImpl extends ServiceImpl implements IKcZzThpjbService { + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/controller/KcZzXstkbController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/controller/KcZzXstkbController.java new file mode 100644 index 00000000..0d5fed07 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/controller/KcZzXstkbController.java @@ -0,0 +1,238 @@ +package org.jeecg.modules.kc.kcZzXstkb.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringUtils; +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.kcZzXstkb.entity.KcZzXstkb; +import org.jeecg.modules.kc.kcZzXstkb.service.IKcZzXstkbService; + +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 org.jeecg.modules.kc.kcZzYbtkb.entity.KcZzYbtkb; +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.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +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: 2023-05-24 + * @Version: V1.0 + */ +@Api(tags="纸质线上听课表") +@RestController +@RequestMapping("/kcZzXstkb/kcZzXstkb") +@Slf4j +public class KcZzXstkbController extends JeecgController { + @Autowired + private IKcZzXstkbService kcZzXstkbService; + + /** + * 分页列表查询 + * + * @param kcZzXstkb + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "纸质线上听课表-分页列表查询") + @ApiOperation(value="纸质线上听课表-分页列表查询", notes="纸质线上听课表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(KcZzXstkb kcZzXstkb, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(kcZzXstkb, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = kcZzXstkbService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param kcZzXstkb + * @return + */ + @AutoLog(value = "纸质线上听课表-添加") + @ApiOperation(value="纸质线上听课表-添加", notes="纸质线上听课表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody KcZzXstkb kcZzXstkb) { + kcZzXstkbService.save(kcZzXstkb); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param kcZzXstkb + * @return + */ + @AutoLog(value = "纸质线上听课表-编辑") + @ApiOperation(value="纸质线上听课表-编辑", notes="纸质线上听课表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody KcZzXstkb kcZzXstkb) { + kcZzXstkbService.updateById(kcZzXstkb); + 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) { + kcZzXstkbService.removeById(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.kcZzXstkbService.removeByIds(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) { + KcZzXstkb kcZzXstkb = kcZzXstkbService.getById(id); + if(kcZzXstkb==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(kcZzXstkb); + } + + /** + * 导出excel + * + * @param request + * @param kcZzXstkb + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, KcZzXstkb kcZzXstkb) { + return super.exportXls(request, kcZzXstkb, KcZzXstkb.class, "纸质线上听课表"); + } + + /** + * 通过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(), KcZzXstkb.class, params); + String rest = ""; + String errorRest = ""; + List newList = list; + int errNum = 0; + for(int i=0;i queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("kcbh",KcZzXstkbPar.getKcbh()); + queryWrapper.eq("kcmc",KcZzXstkbPar.getKcmc()); + queryWrapper.eq("skjs",KcZzXstkbPar.getSkjs()); + queryWrapper.eq("skdd",KcZzXstkbPar.getSkdd()); + queryWrapper.eq("sksj",KcZzXstkbPar.getSksj()); + queryWrapper.eq("tkjsgh",KcZzXstkbPar.getTkjsgh()); + queryWrapper.eq("tkjsxm",KcZzXstkbPar.getTkjsxm()); + queryWrapper.eq("tksj",KcZzXstkbPar.getTksj()); + List listPar = kcZzXstkbService.list(queryWrapper); + if(listPar!=null&&listPar.size()>0){ + errNum++; + newList.remove(KcZzXstkbPar); + errorRest += KcZzXstkbPar.getKcbh()+"-"+KcZzXstkbPar.getKcmc()+"-"+KcZzXstkbPar.getSkjs()+"-"+KcZzXstkbPar.getSkdd()+"-"+KcZzXstkbPar.getTkjsgh()+"-"+KcZzXstkbPar.getTkjsxm()+"
"; + } + } + //update-begin-author:taoyan date:20190528 for:批量插入数据 + long start = System.currentTimeMillis(); + service.saveBatch(newList); + //400条 saveBatch消耗时间1592毫秒 循环插入消耗时间1947毫秒 + //1200条 saveBatch消耗时间3687毫秒 循环插入消耗时间5212毫秒 + log.info("消耗时间" + (System.currentTimeMillis() - start) + "毫秒"); + //update-end-author:taoyan date:20190528 for:批量插入数据 + rest = "文件导入成功!数据行数:" + newList.size(); + if(StringUtils.isNotBlank(errorRest)){ + errorRest = "
共错误:"+errNum+"行;错误数据如下:
"+errorRest; + } + return Result.ok(rest+errorRest); + } catch (Exception e) { + //update-begin-author:taoyan date:20211124 for: 导入数据重复增加提示 + String msg = e.getMessage(); + log.error(msg, e); + if(msg!=null && msg.indexOf("Duplicate entry")>=0){ + return Result.error("文件导入失败:有重复数据!"); + }else{ + return Result.error("文件导入失败:" + e.getMessage()); + } + //update-end-author:taoyan date:20211124 for: 导入数据重复增加提示 + } finally { + try { + file.getInputStream().close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + return Result.error("文件导入失败!"); + } + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/entity/KcZzXstkb.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/entity/KcZzXstkb.java new file mode 100644 index 00000000..99666d7d --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/entity/KcZzXstkb.java @@ -0,0 +1,148 @@ +package org.jeecg.modules.kc.kcZzXstkb.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +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; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 纸质线上听课表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +@Data +@TableName("kc_zz_xstkb") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="kc_zz_xstkb对象", description="纸质线上听课表") +public class KcZzXstkb implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**所属部门*/ + @ApiModelProperty(value = "所属部门") + private java.lang.String sysOrgCode; + /**课程编号*/ + @Excel(name = "课程编号", width = 15) + @ApiModelProperty(value = "课程编号") + private java.lang.String kcbh; + /**课程名称*/ + @Excel(name = "课程名称", width = 15) + @ApiModelProperty(value = "课程名称") + private java.lang.String kcmc; + /**授课教师*/ + @Excel(name = "授课教师", width = 15) + @ApiModelProperty(value = "授课教师") + private java.lang.String skjs; + /**授课时间*/ + @Excel(name = "授课时间", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "授课时间") + private java.util.Date sksj; + /**上课地点*/ + @Excel(name = "上课地点", width = 15) + @ApiModelProperty(value = "上课地点") + private java.lang.String skdd; + /**听课教师姓名*/ + @Excel(name = "听课教师姓名", width = 15) + @ApiModelProperty(value = "听课教师姓名") + private java.lang.String tkjsxm; + /**听课教师工号*/ + @Excel(name = "听课教师工号", width = 15) + @ApiModelProperty(value = "听课教师工号") + private java.lang.String tkjsgh; + /**听课时间*/ + @Excel(name = "听课时间", width = 20, format = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "听课时间") + private java.util.Date tksj; + /**1.声音和画面情况*/ + @Excel(name = "1.声音和画面情况", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "1.声音和画面情况") + private java.lang.String ans1; + /**2.ppt等课件情况*/ + @Excel(name = "2.ppt等课件情况", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "2.ppt等课件情况") + private java.lang.String ans2; + /**3.教师出镜情况*/ + @Excel(name = "3.教师出镜情况", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "3.教师出镜情况") + private java.lang.String ans3; + /**4.教师仪态仪表方面*/ + @Excel(name = "4.教师仪态仪表方面", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "4.教师仪态仪表方面") + private java.lang.String ans4; + /**5.教师所在环境情况*/ + @Excel(name = "5.教师所在环境情况", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "5.教师所在环境情况") + private java.lang.String ans5; + /**6.学生出席情况*/ + @Excel(name = "6.学生出席情况", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "6.学生出席情况") + private java.lang.String ans6; + /**7.课堂秩序情况*/ + @Excel(name = "7.课堂秩序情况", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "7.课堂秩序情况") + private java.lang.String ans7; + /**8.课堂教学互动情况*/ + @Excel(name = "8.课堂教学互动情况", width = 15, dicCode = "fix_dict") + @Dict(dicCode = "fix_dict") + @ApiModelProperty(value = "8.课堂教学互动情况") + private java.lang.String ans8; + /**9.过程性评价情况*/ + @Excel(name = "9.过程性评价情况", width = 15, dicCode = "fix_dict") + @Dict(dicCode = "fix_dict") + @ApiModelProperty(value = "9.过程性评价情况") + private java.lang.String ans9; + /**总体评价*/ + @Excel(name = "总体评价", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "总体评价") + private java.lang.String ztpj; + /**您认为课堂值得肯定的方面或者需要改进的方面*/ + @Excel(name = "您认为课堂值得肯定的方面或者需要改进的方面", width = 15) + @ApiModelProperty(value = "您认为课堂值得肯定的方面或者需要改进的方面") + private java.lang.String pjnr; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/mapper/KcZzXstkbMapper.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/mapper/KcZzXstkbMapper.java new file mode 100644 index 00000000..008ad4bb --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/mapper/KcZzXstkbMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.kc.kcZzXstkb.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.kc.kcZzXstkb.entity.KcZzXstkb; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 纸质线上听课表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +public interface KcZzXstkbMapper extends BaseMapper { + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/mapper/xml/KcZzXstkbMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/mapper/xml/KcZzXstkbMapper.xml new file mode 100644 index 00000000..f9057621 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/mapper/xml/KcZzXstkbMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/service/IKcZzXstkbService.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/service/IKcZzXstkbService.java new file mode 100644 index 00000000..372a99e7 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/service/IKcZzXstkbService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.kc.kcZzXstkb.service; + +import org.jeecg.modules.kc.kcZzXstkb.entity.KcZzXstkb; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 纸质线上听课表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +public interface IKcZzXstkbService extends IService { + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/service/impl/KcZzXstkbServiceImpl.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/service/impl/KcZzXstkbServiceImpl.java new file mode 100644 index 00000000..b3316d5d --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzXstkb/service/impl/KcZzXstkbServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.kc.kcZzXstkb.service.impl; + +import org.jeecg.modules.kc.kcZzXstkb.entity.KcZzXstkb; +import org.jeecg.modules.kc.kcZzXstkb.mapper.KcZzXstkbMapper; +import org.jeecg.modules.kc.kcZzXstkb.service.IKcZzXstkbService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 纸质线上听课表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +@Service +public class KcZzXstkbServiceImpl extends ServiceImpl implements IKcZzXstkbService { + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/controller/KcZzYbtkbController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/controller/KcZzYbtkbController.java new file mode 100644 index 00000000..98d5643b --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/controller/KcZzYbtkbController.java @@ -0,0 +1,237 @@ +package org.jeecg.modules.kc.kcZzYbtkb.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringUtils; +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.kcZzYbtkb.entity.KcZzYbtkb; +import org.jeecg.modules.kc.kcZzYbtkb.service.IKcZzYbtkbService; + +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 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.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +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: 2023-05-24 + * @Version: V1.0 + */ +@Api(tags="纸质一般听课表") +@RestController +@RequestMapping("/kcZzYbtkb/kcZzYbtkb") +@Slf4j +public class KcZzYbtkbController extends JeecgController { + @Autowired + private IKcZzYbtkbService kcZzYbtkbService; + + /** + * 分页列表查询 + * + * @param kcZzYbtkb + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "纸质一般听课表-分页列表查询") + @ApiOperation(value="纸质一般听课表-分页列表查询", notes="纸质一般听课表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(KcZzYbtkb kcZzYbtkb, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(kcZzYbtkb, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = kcZzYbtkbService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param kcZzYbtkb + * @return + */ + @AutoLog(value = "纸质一般听课表-添加") + @ApiOperation(value="纸质一般听课表-添加", notes="纸质一般听课表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody KcZzYbtkb kcZzYbtkb) { + kcZzYbtkbService.save(kcZzYbtkb); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param kcZzYbtkb + * @return + */ + @AutoLog(value = "纸质一般听课表-编辑") + @ApiOperation(value="纸质一般听课表-编辑", notes="纸质一般听课表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody KcZzYbtkb kcZzYbtkb) { + kcZzYbtkbService.updateById(kcZzYbtkb); + 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) { + kcZzYbtkbService.removeById(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.kcZzYbtkbService.removeByIds(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) { + KcZzYbtkb kcZzYbtkb = kcZzYbtkbService.getById(id); + if(kcZzYbtkb==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(kcZzYbtkb); + } + + /** + * 导出excel + * + * @param request + * @param kcZzYbtkb + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, KcZzYbtkb kcZzYbtkb) { + return super.exportXls(request, kcZzYbtkb, KcZzYbtkb.class, "纸质一般听课表"); + } + + /** + * 通过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(), KcZzYbtkb.class, params); + String rest = ""; + String errorRest = ""; + List newList = list; + int errNum = 0; + for(int i=0;i queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("kcbh",KcZzYbtkbPar.getKcbh()); + queryWrapper.eq("kcmc",KcZzYbtkbPar.getKcmc()); + queryWrapper.eq("skjs",KcZzYbtkbPar.getSkjs()); + queryWrapper.eq("skdd",KcZzYbtkbPar.getSkdd()); + queryWrapper.eq("skrq",KcZzYbtkbPar.getSkrq()); + queryWrapper.eq("tkjsbh",KcZzYbtkbPar.getTkjsbh()); + queryWrapper.eq("tkjsxm",KcZzYbtkbPar.getTkjsxm()); + queryWrapper.eq("pksj",KcZzYbtkbPar.getPksj()); + List listPar = kcZzYbtkbService.list(queryWrapper); + if(listPar!=null&&listPar.size()>0){ + errNum++; + newList.remove(KcZzYbtkbPar); + errorRest += KcZzYbtkbPar.getKcbh()+"-"+KcZzYbtkbPar.getKcmc()+"-"+KcZzYbtkbPar.getSkjs()+"-"+KcZzYbtkbPar.getSkdd()+"-"+KcZzYbtkbPar.getTkjsbh()+"-"+KcZzYbtkbPar.getTkjsxm()+"
"; + } + } + //update-begin-author:taoyan date:20190528 for:批量插入数据 + long start = System.currentTimeMillis(); + service.saveBatch(newList); + //400条 saveBatch消耗时间1592毫秒 循环插入消耗时间1947毫秒 + //1200条 saveBatch消耗时间3687毫秒 循环插入消耗时间5212毫秒 + log.info("消耗时间" + (System.currentTimeMillis() - start) + "毫秒"); + //update-end-author:taoyan date:20190528 for:批量插入数据 + rest = "文件导入成功!数据行数:" + newList.size(); + if(StringUtils.isNotBlank(errorRest)){ + errorRest = "
共错误:"+errNum+"行;错误数据如下:
"+errorRest; + } + return Result.ok(rest+errorRest); + } catch (Exception e) { + //update-begin-author:taoyan date:20211124 for: 导入数据重复增加提示 + String msg = e.getMessage(); + log.error(msg, e); + if(msg!=null && msg.indexOf("Duplicate entry")>=0){ + return Result.error("文件导入失败:有重复数据!"); + }else{ + return Result.error("文件导入失败:" + e.getMessage()); + } + //update-end-author:taoyan date:20211124 for: 导入数据重复增加提示 + } finally { + try { + file.getInputStream().close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + return Result.error("文件导入失败!"); + } + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/entity/KcZzYbtkb.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/entity/KcZzYbtkb.java new file mode 100644 index 00000000..fb388ac1 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/entity/KcZzYbtkb.java @@ -0,0 +1,143 @@ +package org.jeecg.modules.kc.kcZzYbtkb.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +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; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 纸质一般听课表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +@Data +@TableName("kc_zz_ybtkb") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="kc_zz_ybtkb对象", description="纸质一般听课表") +public class KcZzYbtkb implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**所属部门*/ + @ApiModelProperty(value = "所属部门") + private java.lang.String sysOrgCode; + /**课程编号*/ + @Excel(name = "课程编号", width = 15) + @ApiModelProperty(value = "课程编号") + private java.lang.String kcbh; + /**课程名称*/ + @Excel(name = "课程名称", width = 15) + @ApiModelProperty(value = "课程名称") + private java.lang.String kcmc; + /**授课教师*/ + @Excel(name = "授课教师", width = 15) + @ApiModelProperty(value = "授课教师") + private java.lang.String skjs; + /**授课时间*/ + @Excel(name = "授课时间", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "授课时间") + private java.util.Date skrq; + /**上课地点*/ + @Excel(name = "上课地点", width = 15) + @ApiModelProperty(value = "上课地点") + private java.lang.String skdd; + /**听课教师编号*/ + @Excel(name = "听课教师编号", width = 15) + @ApiModelProperty(value = "听课教师编号") + private java.lang.String tkjsbh; + /**听课教师姓名*/ + @Excel(name = "听课教师姓名", width = 15) + @ApiModelProperty(value = "听课教师姓名") + private java.lang.String tkjsxm; + /**评课时间*/ + @Excel(name = "评课时间", width = 20, format = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "评课时间") + private java.util.Date pksj; + /**授课有启发性,能给予学生思考、联想、创造的启迪*/ + @Excel(name = "授课有启发性,能给予学生思考、联想、创造的启迪", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "授课有启发性,能给予学生思考、联想、创造的启迪") + private java.lang.String ans1; + /**能有效利用各种教学媒体,课件或板书使用效果好*/ + @Excel(name = "能有效利用各种教学媒体,课件或板书使用效果好", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "能有效利用各种教学媒体,课件或板书使用效果好") + private java.lang.String ans2; + /**仪表得体,按时上下课,严格要求学生*/ + @Excel(name = "仪表得体,按时上下课,严格要求学生", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "仪表得体,按时上下课,严格要求学生") + private java.lang.String ans3; + /**讲课有热情,精神饱满,能调动学生情绪,课堂气氛活跃*/ + @Excel(name = "讲课有热情,精神饱满,能调动学生情绪,课堂气氛活跃", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "讲课有热情,精神饱满,能调动学生情绪,课堂气氛活跃") + private java.lang.String ans4; + /**教学目标明确,内容丰富,重点突出,言语表达清楚。*/ + @Excel(name = "教学目标明确,内容丰富,重点突出,言语表达清楚。", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "教学目标明确,内容丰富,重点突出,言语表达清楚。") + private java.lang.String ans5; + /**无迟到、早退、旷课现象*/ + @Excel(name = "无迟到、早退、旷课现象", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "无迟到、早退、旷课现象") + private java.lang.String ans6; + /**课堂教学秩序好,无喧闹、打瞌睡、发短信、玩手机等现象*/ + @Excel(name = "课堂教学秩序好,无喧闹、打瞌睡、发短信、玩手机等现象", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "课堂教学秩序好,无喧闹、打瞌睡、发短信、玩手机等现象") + private java.lang.String ans7; + /**上课认真听讲、积极思考、主动与老师交流互动*/ + @Excel(name = "上课认真听讲、积极思考、主动与老师交流互动", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "上课认真听讲、积极思考、主动与老师交流互动") + private java.lang.String ans8; + /**课堂教学总体印象评价*/ + @Excel(name = "课堂教学总体印象评价", width = 15, dicCode = "five_dict") + @Dict(dicCode = "five_dict") + @ApiModelProperty(value = "课堂教学总体印象评价") + private java.lang.String ans9; + /**请填写对课堂内容以及其他方面的具体意见或建议*/ + @Excel(name = "请填写对课堂内容以及其他方面的具体意见或建议", width = 15) + @ApiModelProperty(value = "请填写对课堂内容以及其他方面的具体意见或建议") + private java.lang.String ans10; +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/mapper/KcZzYbtkbMapper.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/mapper/KcZzYbtkbMapper.java new file mode 100644 index 00000000..83e116cb --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/mapper/KcZzYbtkbMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.kc.kcZzYbtkb.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.kc.kcZzYbtkb.entity.KcZzYbtkb; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 纸质一般听课表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +public interface KcZzYbtkbMapper extends BaseMapper { + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/mapper/xml/KcZzYbtkbMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/mapper/xml/KcZzYbtkbMapper.xml new file mode 100644 index 00000000..a92fed41 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/mapper/xml/KcZzYbtkbMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/service/IKcZzYbtkbService.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/service/IKcZzYbtkbService.java new file mode 100644 index 00000000..f5d69c3a --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/service/IKcZzYbtkbService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.kc.kcZzYbtkb.service; + +import org.jeecg.modules.kc.kcZzYbtkb.entity.KcZzYbtkb; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 纸质一般听课表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +public interface IKcZzYbtkbService extends IService { + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/service/impl/KcZzYbtkbServiceImpl.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/service/impl/KcZzYbtkbServiceImpl.java new file mode 100644 index 00000000..11018c96 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/kcZzYbtkb/service/impl/KcZzYbtkbServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.kc.kcZzYbtkb.service.impl; + +import org.jeecg.modules.kc.kcZzYbtkb.entity.KcZzYbtkb; +import org.jeecg.modules.kc.kcZzYbtkb.mapper.KcZzYbtkbMapper; +import org.jeecg.modules.kc.kcZzYbtkb.service.IKcZzYbtkbService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 纸质一般听课表 + * @Author: jeecg-boot + * @Date: 2023-05-24 + * @Version: V1.0 + */ +@Service +public class KcZzYbtkbServiceImpl extends ServiceImpl implements IKcZzYbtkbService { + +} diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKechengbiaoController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKechengbiaoController.java index 29a8bdc5..89eb5a2d 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKechengbiaoController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKechengbiaoController.java @@ -10,10 +10,13 @@ import java.net.URLDecoder; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import org.apache.commons.lang.StringUtils; 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.kcSzkc.entity.KcSzkc; +import org.jeecg.modules.kc.kcSzkc.service.IKcSzkcService; import org.jeecg.modules.kc.ktgl.entity.KcKechengbiao; import org.jeecg.modules.kc.ktgl.service.IKcKechengbiaoService; @@ -52,7 +55,8 @@ import org.apache.shiro.authz.annotation.RequiresPermissions; public class KcKechengbiaoController extends JeecgController { @Autowired private IKcKechengbiaoService kcKechengbiaoService; - + @Autowired + private IKcSzkcService kcSzkcService; /** * 分页列表查询 * @@ -73,10 +77,28 @@ public class KcKechengbiaoController extends JeecgController page = new Page(pageNo, pageSize); IPage pageList = kcKechengbiaoService.page(page, queryWrapper); return Result.OK(pageList); } + + + @ApiOperation(value="课程管理-主表-分页列表查询", notes="课程管理-主表-分页列表查询") + @GetMapping(value = "/listGroupBy") + public Result> listGroupBy(KcKechengbiao kcKechengbiao, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper("a",kcKechengbiao, req.getParameterMap()); + if(StringUtils.isNotBlank(kcKechengbiao.getSearchInput())){ + queryWrapper.apply(String.format("(kcmc like CONCAT('%',%s,'%') or skjs like CONCAT('%',%s,'%'))",kcKechengbiao.getSearchInput())); + } + queryWrapper.apply(StringUtils.isNotBlank(kcKechengbiao.getYwcol())," length(kcbh)<25"); + Page page = new Page(pageNo, pageSize); + IPage pageList = kcKechengbiaoService.listGroupBy(page, queryWrapper); + return Result.OK(pageList); + } /** * 添加 @@ -107,7 +129,37 @@ public class KcKechengbiaoController extends JeecgController editSzkc(@RequestBody KcKechengbiao kcKechengbiao) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.setSql("szkc = '1' where kcbh = '"+kcKechengbiao.getKcbh()+"' and kcmc = '"+kcKechengbiao.getKcmc()+"' and kkdw = '"+kcKechengbiao.getKkdw()+"' and kcxz = '"+kcKechengbiao.getKcxz()+"' "); + kcKechengbiaoService.update(updateWrapper); + KcSzkc kcSzkc = new KcSzkc(); + kcSzkc.setKcbh(kcKechengbiao.getKcbh()); + kcSzkc.setKcmc(kcKechengbiao.getKcmc()); + kcSzkc.setKkdw(kcKechengbiao.getKkdw()); + kcSzkcService.save(kcSzkc); + return Result.OK("编辑成功!"); + } + + + @AutoLog(value = "移除课程思政课程") + @ApiOperation(value="移除课程思政课程", notes="移除课程思政课程") + @RequestMapping(value = "/editYichu", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result editYichu(@RequestBody KcKechengbiao kcKechengbiao) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.setSql("szkc = '0' where kcbh = '"+kcKechengbiao.getKcbh()+"' and kcmc = '"+kcKechengbiao.getKcmc()+"' and kkdw = '"+kcKechengbiao.getKkdw()+"' and kcxz = '"+kcKechengbiao.getKcxz()+"' "); + kcKechengbiaoService.update(updateWrapper); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.apply("kcbh = '"+kcKechengbiao.getKcbh()+"' and kcmc = '"+kcKechengbiao.getKcmc()+"' and kkdw = '"+kcKechengbiao.getKkdw()+"' "); + kcSzkcService.remove(queryWrapper); + return Result.OK("编辑成功!"); + } /** * 通过id删除 * diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/entity/KcKechengbiao.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/entity/KcKechengbiao.java index 8fb88d57..c952ae68 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/entity/KcKechengbiao.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/entity/KcKechengbiao.java @@ -236,6 +236,7 @@ public class KcKechengbiao implements Serializable { private java.lang.String zt; private java.lang.String kcdl; + private java.lang.String szkc;//思政课程 /**课程名称或教师名*/ @TableField(exist = false) @@ -247,5 +248,7 @@ public class KcKechengbiao implements Serializable { private java.lang.String endTime; @TableField(exist = false) private java.lang.String ts; + @TableField(exist = false) + private java.lang.String ywcol; } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/entity/KcKetangbiao.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/entity/KcKetangbiao.java index f6d27165..40d082b7 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/entity/KcKetangbiao.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/entity/KcKetangbiao.java @@ -243,6 +243,9 @@ public class KcKetangbiao implements Serializable { @ApiModelProperty(value = "状态") private java.lang.String zt; + @TableField(exist = false) + private String jssj; + @TableField(exist = false) private java.lang.String ywmc; diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/KcKechengbiaoMapper.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/KcKechengbiaoMapper.java index c84ace2f..2112f6ef 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/KcKechengbiaoMapper.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/KcKechengbiaoMapper.java @@ -2,6 +2,10 @@ package org.jeecg.modules.kc.ktgl.mapper; import java.util.List; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; import org.jeecg.modules.kc.ktgl.entity.KcKechengbiao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -19,4 +23,8 @@ public interface KcKechengbiaoMapper extends BaseMapper { List selectSyncList(KcKechengbiao kcKechengbiao); void saveHis(KcKechengbiao kcKechengbiaohis); + + List getSzkcList(); + + IPage listGroupBy(Page page,@Param(Constants.WRAPPER) QueryWrapper queryWrapper); } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/xml/KcKechengbiaoMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/xml/KcKechengbiaoMapper.xml index 5051f215..e7f0cdb1 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/xml/KcKechengbiaoMapper.xml +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/xml/KcKechengbiaoMapper.xml @@ -45,4 +45,17 @@ insert into kc_kechengbiao_his select * ,#{ts} from kc_kechengbiao + + + + + \ No newline at end of file diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/xml/KcKetangbiaoMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/xml/KcKetangbiaoMapper.xml index 485e33a6..198c56a2 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/xml/KcKetangbiaoMapper.xml +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/mapper/xml/KcKetangbiaoMapper.xml @@ -34,12 +34,14 @@