From 60bae716ca553958e23c05fb6b7a8d9486f385c1 Mon Sep 17 00:00:00 2001 From: yangjun <1173114630@qq.com> Date: Tue, 12 Nov 2024 17:52:09 +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 --- .../zyInfo/controller/ZyInfoController.java | 140 ++++++++++++++++-- .../modules/kc/zyInfo/entity/CyInfoSys.java | 63 ++++++++ .../modules/kc/zyInfo/entity/ZyInfoSys.java | 17 ++- .../kc/zyInfo/mapper/ZyInfoMapper.java | 9 +- .../kc/zyInfo/mapper/xml/ZyInfoMapper.xml | 101 +++++++++++-- .../kc/zyInfo/service/IZyInfoService.java | 9 +- .../service/impl/ZyInfoServiceImpl.java | 20 ++- 7 files changed, 322 insertions(+), 37 deletions(-) create mode 100644 jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/CyInfoSys.java diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/controller/ZyInfoController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/controller/ZyInfoController.java index 9ff521f4..6a0446ea 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/controller/ZyInfoController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/controller/ZyInfoController.java @@ -29,6 +29,7 @@ import org.jeecg.modules.kc.ktgl.entity.KcKechengbiao; import org.jeecg.modules.kc.ktgl.service.IKcKechengbiaoService; import org.jeecg.modules.kc.zyDbtx.entity.ZyDbtx; import org.jeecg.modules.kc.zyDbtx.service.IZyDbtxService; +import org.jeecg.modules.kc.zyInfo.entity.CyInfoSys; import org.jeecg.modules.kc.zyInfo.entity.ZyInfo; import org.jeecg.modules.kc.zyInfo.entity.ZyInfoSys; import org.jeecg.modules.kc.zyInfo.service.IZyInfoService; @@ -688,11 +689,7 @@ public class ZyInfoController extends JeecgController { @RequestMapping(value = "/exportSysXls") public ModelAndView exportSysXls(HttpServletRequest request, ZyInfoSys zyInfoSys) { String title = "课程作业"; - // Step.1 组装查询条件 - QueryWrapper queryWrapper = new QueryWrapper<>(); LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - - //-------------获取当前登陆人是否是管理员角色,如果不是都按照教务秘书处理--------------------------- List roleList = sysBaseApi.getRolesByUsername(sysUser.getUsername()); String adminRole = "1";//0 admin 1教务秘书 @@ -702,28 +699,22 @@ public class ZyInfoController extends JeecgController { break; } } + QueryWrapper queryWrapper = new QueryWrapper(); if(org.apache.commons.lang.StringUtils.equals("1",adminRole)){ QueryWrapper queryWrapperCon = new QueryWrapper(); queryWrapperCon.eq("gh",sysUser.getUsername()); queryWrapperCon.orderByDesc("create_time"); queryWrapperCon.last("limit 1"); KcExportConfigTpkwcqkjzglx kcExportConfigTpkwcqkjzglx = kcExportConfigTpkwcqkjzglxService.getOne(queryWrapperCon); - queryWrapper.eq("kkdw",kcExportConfigTpkwcqkjzglx.getDwmc()); + zyInfoSys.setKkdw(kcExportConfigTpkwcqkjzglx.getDwmc()); } if(com.baomidou.mybatisplus.core.toolkit.StringUtils.isEmpty(zyInfoSys.getXqxn())){ KcSysConfig kcSysConfig = kcSysConfigService.getById("1"); - queryWrapper.eq("xqxn",kcSysConfig.getFlag1()); - }else{ - queryWrapper.eq("xqxn",zyInfoSys.getXqxn()); + zyInfoSys.setXqxn(kcSysConfig.getFlag1()); } - queryWrapper.like(com.baomidou.mybatisplus.core.toolkit.StringUtils.isNotEmpty(zyInfoSys.getKkdw()),"kkdw",zyInfoSys.getKkdw()); - queryWrapper.like(com.baomidou.mybatisplus.core.toolkit.StringUtils.isNotEmpty(zyInfoSys.getKcmc()),"kcmc",zyInfoSys.getKcmc()); - queryWrapper.like(com.baomidou.mybatisplus.core.toolkit.StringUtils.isNotEmpty(zyInfoSys.getKcbh()),"kcbh",zyInfoSys.getKcbh()); - queryWrapper.like(com.baomidou.mybatisplus.core.toolkit.StringUtils.isNotEmpty(zyInfoSys.getSkjs()),"skjs",zyInfoSys.getSkjs()); - // Step.2 获取导出数据 - List exportList = service.exportSysXls(queryWrapper); + List exportList = service.exportSysXls(zyInfoSys); // Step.3 AutoPoi 导出Excel ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); @@ -988,4 +979,125 @@ public class ZyInfoController extends JeecgController { return Result.OK(pageList); } + + + + @ApiOperation(value="统计作业使用情况", notes="统计作业使用情况") + @GetMapping(value = "/sysStaticZyList") + public Result> sysStaticZyList(ZyInfoSys zyInfoSys, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + //-------------获取当前登陆人是否是管理员角色,如果不是都按照教务秘书处理--------------------------- + List roleList = sysBaseApi.getRolesByUsername(sysUser.getUsername()); + String adminRole = "1";//0 admin 1教务秘书 + for(String role :roleList){ + if(org.apache.commons.lang.StringUtils.equals("admin",role)){ + adminRole = "0"; + break; + } + } + QueryWrapper queryWrapper = new QueryWrapper(); + if(org.apache.commons.lang.StringUtils.equals("1",adminRole)){ + QueryWrapper queryWrapperCon = new QueryWrapper(); + queryWrapperCon.eq("gh",sysUser.getUsername()); + queryWrapperCon.orderByDesc("create_time"); + queryWrapperCon.last("limit 1"); + KcExportConfigTpkwcqkjzglx kcExportConfigTpkwcqkjzglx = kcExportConfigTpkwcqkjzglxService.getOne(queryWrapperCon); + zyInfoSys.setKkdw(kcExportConfigTpkwcqkjzglx.getDwmc()); + } + + if(com.baomidou.mybatisplus.core.toolkit.StringUtils.isEmpty(zyInfoSys.getXqxn())){ + KcSysConfig kcSysConfig = kcSysConfigService.getById("1"); + zyInfoSys.setXqxn(kcSysConfig.getFlag1()); + } + + Page page = new Page(pageNo, pageSize); + IPage pageList = zyInfoService.sysStaticZyList(page, zyInfoSys); + return Result.OK(pageList); + } + + @ApiOperation(value="统计测验使用情况", notes="统计测验使用情况") + @GetMapping(value = "/sysStaticCyList") + public Result> sysStaticCyList(CyInfoSys cyInfoSys, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + //-------------获取当前登陆人是否是管理员角色,如果不是都按照教务秘书处理--------------------------- + List roleList = sysBaseApi.getRolesByUsername(sysUser.getUsername()); + String adminRole = "1";//0 admin 1教务秘书 + for(String role :roleList){ + if(org.apache.commons.lang.StringUtils.equals("admin",role)){ + adminRole = "0"; + break; + } + } + QueryWrapper queryWrapper = new QueryWrapper(); + if(org.apache.commons.lang.StringUtils.equals("1",adminRole)){ + QueryWrapper queryWrapperCon = new QueryWrapper(); + queryWrapperCon.eq("gh",sysUser.getUsername()); + queryWrapperCon.orderByDesc("create_time"); + queryWrapperCon.last("limit 1"); + KcExportConfigTpkwcqkjzglx kcExportConfigTpkwcqkjzglx = kcExportConfigTpkwcqkjzglxService.getOne(queryWrapperCon); + cyInfoSys.setKkdw(kcExportConfigTpkwcqkjzglx.getDwmc()); + } + + if(com.baomidou.mybatisplus.core.toolkit.StringUtils.isEmpty(cyInfoSys.getXqxn())){ + KcSysConfig kcSysConfig = kcSysConfigService.getById("1"); + cyInfoSys.setXqxn(kcSysConfig.getFlag1()); + } + + Page page = new Page(pageNo, pageSize); + IPage pageList = zyInfoService.sysStaticCyList(page, cyInfoSys); + return Result.OK(pageList); + } + + @RequestMapping(value = "/getStaticCyExportUrl") + public ModelAndView getStaticCyExportUrl(HttpServletRequest request, CyInfoSys cyInfoSys) { + String title = "课程作业"; + // Step.1 组装查询条件 + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + //-------------获取当前登陆人是否是管理员角色,如果不是都按照教务秘书处理--------------------------- + List roleList = sysBaseApi.getRolesByUsername(sysUser.getUsername()); + String adminRole = "1";//0 admin 1教务秘书 + for(String role :roleList){ + if(org.apache.commons.lang.StringUtils.equals("admin",role)){ + adminRole = "0"; + break; + } + } + QueryWrapper queryWrapper = new QueryWrapper(); + if(org.apache.commons.lang.StringUtils.equals("1",adminRole)){ + QueryWrapper queryWrapperCon = new QueryWrapper(); + queryWrapperCon.eq("gh",sysUser.getUsername()); + queryWrapperCon.orderByDesc("create_time"); + queryWrapperCon.last("limit 1"); + KcExportConfigTpkwcqkjzglx kcExportConfigTpkwcqkjzglx = kcExportConfigTpkwcqkjzglxService.getOne(queryWrapperCon); + cyInfoSys.setKkdw(kcExportConfigTpkwcqkjzglx.getDwmc()); + } + + if(com.baomidou.mybatisplus.core.toolkit.StringUtils.isEmpty(cyInfoSys.getXqxn())){ + KcSysConfig kcSysConfig = kcSysConfigService.getById("1"); + cyInfoSys.setXqxn(kcSysConfig.getFlag1()); + } + + // Step.2 获取导出数据 + List exportList = service.getStaticCyExportUrl(cyInfoSys); + + // Step.3 AutoPoi 导出Excel + ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); + //此处设置的filename无效 ,前端会重更新设置一下 + mv.addObject(NormalExcelConstants.FILE_NAME, title); + mv.addObject(NormalExcelConstants.CLASS, CyInfoSys.class); + //update-begin--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置-------------------- + ExportParams exportParams=new ExportParams(title + "报表", "导出人:" + sysUser.getRealname(), title); + exportParams.setImageBasePath(upLoadPath); + //update-end--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置---------------------- + mv.addObject(NormalExcelConstants.PARAMS,exportParams); + mv.addObject(NormalExcelConstants.DATA_LIST, exportList); + return mv; + } + } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/CyInfoSys.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/CyInfoSys.java new file mode 100644 index 00000000..8a89c9b0 --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/CyInfoSys.java @@ -0,0 +1,63 @@ +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; +import java.util.Date; + +/** + * @Description: 教学大纲 + * @Author: jeecg-boot + * @Date: 2024-05-11 + * @Version: V1.0 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CyInfoSys 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 kcmc; + @Excel(name = "课程性质", width = 15) + private String kcxz; + @Excel(name = "选课人数", width = 15) + private String xkrs; + private String zymc; + @Excel(name = "授课教师", width = 15) + private String skjs; + @Excel(name = "职称", width = 15) + private String zc; + @Excel(name = "测验名称", width = 15) + private String title; + @Excel(name = "是否完成", width = 15) + private String sfwc; + private String sfhp; + private String sfcc; + private Date startTime; + private Date endTime; + + + + private String kcbh; + private String rwbh; + private String sksj; + private String skdd; + private String num; + + private String jgh; + private String ywId; + + private String type; + private String count; + private String rownum; +} 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 index 71bd57cd..c18d77de 100644 --- 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 @@ -24,25 +24,29 @@ public class ZyInfoSys implements Serializable { @Excel(name = "学期学年", width = 15) private String xqxn; - @Excel(name = "开课单位", width = 15) + @Excel(name = "学院", width = 15) private String kkdw; - @Excel(name = "作业名称", width = 15) - private String zymc; @Excel(name = "课程名称", width = 15) private String kcmc; + @Excel(name = "课程性质", width = 15) + private String kcxz; + @Excel(name = "选课人数", width = 15) + private String xkrs; + private String zymc; @Excel(name = "授课教师", width = 15) private String skjs; + @Excel(name = "职称", width = 15) + private String zc; + @Excel(name = "作业名称", width = 15) + private String title; @Excel(name = "是否完成", width = 15) private String sfwc; @Excel(name = "是否发布", width = 15) private String sffb; @Excel(name = "是否互评", width = 15) private String sfhp; - @Excel(name = "是否查重", width = 15) private String sfcc; - @Excel(name = "开始时间", width = 15) private Date startTime; - @Excel(name = "结束时间", width = 15) private Date endTime; @@ -51,7 +55,6 @@ public class ZyInfoSys implements Serializable { private String rwbh; private String sksj; private String skdd; - private String xkrs; private String num; private String jgh; diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/mapper/ZyInfoMapper.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/mapper/ZyInfoMapper.java index 3bfd3112..19cae599 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/mapper/ZyInfoMapper.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/mapper/ZyInfoMapper.java @@ -7,6 +7,7 @@ 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.zyInfo.entity.CyInfoSys; import org.jeecg.modules.kc.zyInfo.entity.ZyInfo; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.jeecg.modules.kc.zyInfo.entity.ZyInfoSys; @@ -23,7 +24,7 @@ public interface ZyInfoMapper extends BaseMapper { IPage sysList(Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); - List exportSysXls(@Param(Constants.WRAPPER) QueryWrapper queryWrapper); + List exportSysXls(@Param("zyInfoSys") ZyInfoSys zyInfoSys); ZyInfo getKechengById(@Param("id") String id); @@ -38,4 +39,10 @@ public interface ZyInfoMapper extends BaseMapper { List getZyTopList(@Param("zyInfoSys") ZyInfoSys zyInfoSys); List getCyTopList(@Param("zyInfoSys") ZyInfoSys zyInfoSys); + + IPage sysStaticZyList(Page page,@Param("zyInfoSys") ZyInfoSys zyInfoSys); + + IPage sysStaticCyList(Page page, @Param("zyInfoSys") CyInfoSys cyInfoSys); + + List getStaticCyExportUrl( @Param("zyInfoSys") CyInfoSys cyInfoSys); } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/mapper/xml/ZyInfoMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/mapper/xml/ZyInfoMapper.xml index 6f3b55ff..4afa9563 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/mapper/xml/ZyInfoMapper.xml +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/mapper/xml/ZyInfoMapper.xml @@ -45,18 +45,28 @@ @@ -178,4 +188,71 @@ select a.create_by,count(*) as count,b.xm as skjs,b.dwmc as kkdw from wjx_wjxx a,xxhbuser b where a.create_by = b.gh and xqxn = #{zyInfoSys.xqxn} and qpublish in (1,2) GROUP BY a.create_by ,b.xm,b.dwmc ) t , (SELECT @rownum:=0) AS r ORDER BY count-0 desc limit 10 + + + + + + \ No newline at end of file diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/service/IZyInfoService.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/service/IZyInfoService.java index 7c3fbedb..8239be64 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/service/IZyInfoService.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/service/IZyInfoService.java @@ -3,6 +3,7 @@ package org.jeecg.modules.kc.zyInfo.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.jeecg.modules.kc.zyInfo.entity.CyInfoSys; import org.jeecg.modules.kc.zyInfo.entity.ZyInfo; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.kc.zyInfo.entity.ZyInfoSys; @@ -22,7 +23,7 @@ public interface IZyInfoService extends IService { IPage sysList(Page page, QueryWrapper queryWrapper); - List exportSysXls(QueryWrapper queryWrapper); + List exportSysXls(ZyInfoSys zyInfoSys); ZyInfo getKechengById(String id); @@ -35,4 +36,10 @@ public interface IZyInfoService extends IService { IPage listOther(Page page, ZyInfo zyInfo); Map sysStaticNo(ZyInfoSys zyInfoSys); + + IPage sysStaticZyList(Page page, ZyInfoSys zyInfoSys); + + IPage sysStaticCyList(Page page, CyInfoSys cyInfoSys); + + List getStaticCyExportUrl(CyInfoSys cyInfoSys); } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/service/impl/ZyInfoServiceImpl.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/service/impl/ZyInfoServiceImpl.java index 101fc30b..944aef5a 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/service/impl/ZyInfoServiceImpl.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/service/impl/ZyInfoServiceImpl.java @@ -15,6 +15,7 @@ import org.jeecg.modules.kc.ktgl.entity.KcKechengbiao; import org.jeecg.modules.kc.ktgl.service.IKcKechengbiaoService; import org.jeecg.modules.kc.zyDbtx.entity.ZyDbtx; import org.jeecg.modules.kc.zyDbtx.service.IZyDbtxService; +import org.jeecg.modules.kc.zyInfo.entity.CyInfoSys; import org.jeecg.modules.kc.zyInfo.entity.ZyInfo; import org.jeecg.modules.kc.zyInfo.entity.ZyInfoSys; import org.jeecg.modules.kc.zyInfo.mapper.ZyInfoMapper; @@ -56,8 +57,8 @@ public class ZyInfoServiceImpl extends ServiceImpl impleme } @Override - public List exportSysXls(QueryWrapper queryWrapper) { - return baseMapper.exportSysXls(queryWrapper); + public List exportSysXls(ZyInfoSys zyInfoSys) { + return baseMapper.exportSysXls(zyInfoSys); } @Override @@ -223,6 +224,21 @@ public class ZyInfoServiceImpl extends ServiceImpl impleme return map; } + @Override + public IPage sysStaticZyList(Page page, ZyInfoSys zyInfoSys) { + return baseMapper.sysStaticZyList(page,zyInfoSys); + } + + @Override + public IPage sysStaticCyList(Page page, CyInfoSys cyInfoSys) { + return baseMapper.sysStaticCyList(page,cyInfoSys); + } + + @Override + public List getStaticCyExportUrl(CyInfoSys cyInfoSys) { + return baseMapper.getStaticCyExportUrl(cyInfoSys); + } + // appId private static final String appId = "wx031697a8ca09a5ce";//东师