diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java b/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java index f70deefb..819f1348 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java @@ -96,6 +96,8 @@ public class ShiroConfig { filterChainDefinitionMap.put("/sys/common/pdf/**", "anon");//pdf预览 filterChainDefinitionMap.put("/generic/**", "anon");//pdf预览需要文件 filterChainDefinitionMap.put("/wxpay/**", "anon");//微信接口 + filterChainDefinitionMap.put("/temp/**", "anon");//微信接口 + filterChainDefinitionMap.put("/kczx/**", "anon");//微信接口 filterChainDefinitionMap.put("/sys/getLoginQrcode/**", "anon"); //登录二维码 filterChainDefinitionMap.put("/sys/getQrcodeToken/**", "anon"); //监听扫码 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 c414baab..37f01840 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 @@ -269,6 +269,7 @@ public class KcKechengbiaoController extends JeecgController0){ ZyDbtx zyDbtx = new ZyDbtx(); zyDbtx.setCreateBy(sysUser.getUsername()); + zyDbtx.setFlag("0"); List dbtxList = zyDbtxService.getDbtxList(zyDbtx); for(KcKechengbiao par:pageList.getRecords()){ int i = 0; @@ -306,6 +307,7 @@ public class KcKechengbiaoController extends JeecgController0){ ZyDbtx zyDbtx = new ZyDbtx(); zyDbtx.setCreateBy(sysUser.getUsername()); + zyDbtx.setFlag("0"); List dbtxList = zyDbtxService.getDbtxList(zyDbtx); for(KcKechengbiao par:pageList.getRecords()){ for(ZyDbtx txPar : dbtxList){ diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxDjxx/service/impl/WjxDjxxServiceImpl.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxDjxx/service/impl/WjxDjxxServiceImpl.java index 2587f4fc..b5bc6fa8 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxDjxx/service/impl/WjxDjxxServiceImpl.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxDjxx/service/impl/WjxDjxxServiceImpl.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.jeecg.common.system.vo.LoginUser; +import org.jeecg.common.util.DateUtils; import org.jeecg.modules.kc.wjxDjxx.entity.*; import org.jeecg.modules.kc.wjxDjxx.mapper.WjxDjxxMapper; import org.jeecg.modules.kc.wjxDjxx.service.IWjxDjxxService; @@ -233,11 +234,11 @@ public class WjxDjxxServiceImpl extends ServiceImpl impl String content = ""; if(StringUtils.equals("6",wjxWjxx.getAtype())){ type = "6"; - content = "["+wjxWjxx.getTitle()+"]"+user.getRealname()+"提交了一篇测验待查阅"; + content = user.getRealname()+"学生提交了["+wjxWjxx.getKcmc()+"]课程“"+wjxWjxx.getTitle()+"”测验,该测验完成时间为:"+ DateUtils.formatDate(wjxWjxx.getStartTime(),"yyyy-MM-dd HH:mm")+" ~ "+DateUtils.formatDate(wjxWjxx.getEndTime(),"yyyy-MM-dd HH:mm")+",请及时查看。学生提交时间:"+DateUtils.formatDate(new Date(),"yyyy-MM-dd HH:mm:ss"); }else{ type = "7"; - content = "["+wjxWjxx.getTitle()+"]"+user.getRealname()+"提交了一篇问卷待查阅"; + content = user.getRealname()+"学生提交了["+wjxWjxx.getKcmc()+"]课程“"+wjxWjxx.getTitle()+"”问卷,该问卷完成时间为:"+ DateUtils.formatDate(wjxWjxx.getStartTime(),"yyyy-MM-dd HH:mm")+" ~ "+DateUtils.formatDate(wjxWjxx.getEndTime(),"yyyy-MM-dd HH:mm")+",请及时查看。学生提交时间:"+DateUtils.formatDate(new Date(),"yyyy-MM-dd HH:mm:ss"); } //作业代办提醒 ZyDbtx zyDbtx = new ZyDbtx(); diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxx/controller/WjxWjxxController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxx/controller/WjxWjxxController.java index 609d30b3..9768fac5 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxx/controller/WjxWjxxController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxx/controller/WjxWjxxController.java @@ -1,6 +1,7 @@ package org.jeecg.modules.kc.wjxWjxx.controller; import java.util.Arrays; +import java.util.Date; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; @@ -12,12 +13,15 @@ import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.system.vo.LoginUser; +import org.jeecg.common.util.DateUtils; import org.jeecg.modules.kc.config.entity.KcExportConfigTpkwcqkjzglx; import org.jeecg.modules.kc.config.service.IKcExportConfigTpkwcqkjzglxService; import org.jeecg.modules.kc.grab.imports.entity.Xxhbbks; import org.jeecg.modules.kc.grab.imports.service.IXxhbbksService; import org.jeecg.modules.kc.kcSysConfig.entity.KcSysConfig; import org.jeecg.modules.kc.kcSysConfig.service.IKcSysConfigService; +import org.jeecg.modules.kc.ktgl.entity.KcKechengbiao; +import org.jeecg.modules.kc.ktgl.service.IKcKechengbiaoService; import org.jeecg.modules.kc.wjxWjxx.entity.KccyglSys; import org.jeecg.modules.kc.wjxWjxx.entity.WjxWjxx; import org.jeecg.modules.kc.wjxWjxx.service.IWjxWjxxService; @@ -78,6 +82,8 @@ public class WjxWjxxController extends JeecgController @Value("${jeecg.path.upload}") private String upLoadPath; + @Autowired + private IKcKechengbiaoService kcKechengbiaoService; /** * 分页列表查询 * @@ -270,10 +276,10 @@ public class WjxWjxxController extends JeecgController LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); if(StringUtils.equals(wjlx,"6")){ type = "2"; - content = " ["+wjxWjxx.getKcmc()+"] "+sysUser.getRealname()+" 发布了一篇新的测验,请及时提交!"; + content = sysUser.getRealname()+"教师发起了["+wjxWjxx.getKcmc()+"]课程“"+wjxWjxx.getTitle()+"”测验,该测验完成时间: "+DateUtils.formatDate(wjxWjxx.getStartTime(),"yyyy-MM-dd")+" ~ "+DateUtils.formatDate(wjxWjxx.getEndTime(),"yyyy-MM-dd")+",请及时完成"; }else{ type = "3"; - content = " ["+wjxWjxx.getKcmc()+"] "+sysUser.getRealname()+" 发布了一篇新的问卷,请及时提交!"; + content = sysUser.getRealname()+"教师发起了["+wjxWjxx.getKcmc()+"]课程“"+wjxWjxx.getTitle()+"”问卷,该问卷完成时间: "+DateUtils.formatDate(wjxWjxx.getStartTime(),"yyyy-MM-dd")+" ~ "+DateUtils.formatDate(wjxWjxx.getEndTime(),"yyyy-MM-dd")+",请及时完成"; } for(Xxhbbks xxhbbks:list){ diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/controller/ZyCcjgController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/controller/ZyCcjgController.java index 72bb08e1..4216948b 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/controller/ZyCcjgController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyCcjg/controller/ZyCcjgController.java @@ -211,4 +211,17 @@ public class ZyCcjgController extends JeecgController { return Result.OK(pageList); } + + @ApiOperation(value="查重结果-分页列表查询", notes="查重结果-分页列表查询") + @GetMapping(value = "/getCcjg") + public Result getCcjg(ZyCcjg zyCcjg, HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(zyCcjg, req.getParameterMap()); +// queryWrapper.eq("zy_stu_id",zyCcjg.getZyStuId()); +// queryWrapper.eq("cc_type",zyCcjg.getCcType()); + queryWrapper.orderByDesc("checkdate"); + queryWrapper.last("limit 1"); + ZyCcjg par = zyCcjgService.getOne(queryWrapper); + return Result.OK(par); + } + } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyDbtx/controller/ZyDbtxController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyDbtx/controller/ZyDbtxController.java index 52fa5594..42854601 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyDbtx/controller/ZyDbtxController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyDbtx/controller/ZyDbtxController.java @@ -72,6 +72,7 @@ public class ZyDbtxController extends JeecgController { @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(zyDbtx, req.getParameterMap()); + queryWrapper.orderByDesc("create_time"); Page page = new Page(pageNo, pageSize); IPage pageList = zyDbtxService.page(page, queryWrapper); return Result.OK(pageList); @@ -176,25 +177,27 @@ public class ZyDbtxController extends JeecgController { } - @AutoLog(value = "代办提醒-通过rwbh") - @ApiOperation(value="代办提醒-通过rwbh删除", notes="代办提醒-通过rwbh删除") + @AutoLog(value = "代办提醒-通过rwbh修改已阅") + @ApiOperation(value="代办提醒-通过rwbh修改已阅", notes="代办提醒-通过rwbh修改已阅") @PostMapping(value = "/deleteByRwbhCreate") public Result deleteByRwbhCreate(@RequestBody ZyDbtx zyDbtx) { String rwbh = zyDbtx.getRwbh(); LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); UpdateWrapper zyDbtxDeleteMapping = new UpdateWrapper<>(); + zyDbtxDeleteMapping.set("flag","1"); zyDbtxDeleteMapping.eq("rwbh", rwbh); zyDbtxDeleteMapping.eq("create_by", sysUser.getUsername()); - zyDbtxDeleteMapping.eq("fbr", zyDbtx.getFbr()); - zyDbtxService.remove(zyDbtxDeleteMapping); +// zyDbtxDeleteMapping.eq("fbr", zyDbtx.getFbr()); + zyDbtxService.update(zyDbtxDeleteMapping); return Result.OK(null); } - @AutoLog(value = "代办提醒-通过id删除") - @ApiOperation(value="代办提醒-通过id删除", notes="代办提醒-通过id删除") + @AutoLog(value = "代办提醒-阅读信息") + @ApiOperation(value="代办提醒-阅读信息", notes="代办提醒-阅读信息") @PostMapping(value = "/deleteById") public Result deleteById(@RequestBody ZyDbtx zyDbtx) { - zyDbtxService.removeById(zyDbtx.getId()); + zyDbtx.setFlag("1"); + zyDbtxService.updateById(zyDbtx); return Result.OK(null); } } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyDbtx/mapper/xml/ZyDbtxMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyDbtx/mapper/xml/ZyDbtxMapper.xml index dc16160f..5de9256d 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyDbtx/mapper/xml/ZyDbtxMapper.xml +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyDbtx/mapper/xml/ZyDbtxMapper.xml @@ -3,6 +3,10 @@ \ No newline at end of file diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyGonggao/controller/ZyGonggaoController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyGonggao/controller/ZyGonggaoController.java index 2b65eae2..3c9c0122 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyGonggao/controller/ZyGonggaoController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyGonggao/controller/ZyGonggaoController.java @@ -11,6 +11,7 @@ import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.system.vo.LoginUser; +import org.jeecg.common.util.DateUtils; import org.jeecg.modules.kc.grab.imports.entity.Xxhbbks; import org.jeecg.modules.kc.grab.imports.service.IXxhbbksService; import org.jeecg.modules.kc.zyDbtx.entity.ZyDbtx; @@ -111,6 +112,9 @@ public class ZyGonggaoController extends JeecgController list = xxhbbksService.getXsxkbAllList(queryWrapper); + + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + for(Xxhbbks xxhbbks:list){ //作业代办提醒 @@ -119,9 +123,8 @@ public class ZyGonggaoController extends JeecgController { queryWrapper2.eq("zy_status","0"); queryWrapper2.le("start_time",new Date()); List list2 = zyInfoService.list(queryWrapper2); + + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + QueryWrapper kcKechengbiaoQueryWrapper = new QueryWrapper<>(); + kcKechengbiaoQueryWrapper.eq("rwbh",zyInfo.getRwbh()); + kcKechengbiaoQueryWrapper.eq("jgh",user.getUsername()); + kcKechengbiaoQueryWrapper.eq("xqxn",zyInfo.getXnxq()); + kcKechengbiaoQueryWrapper.last("limit 1"); + KcKechengbiao kcKechengbiao = kcKechengbiaoService.getOne(kcKechengbiaoQueryWrapper); + for(ZyInfo par:list2){ par.setZyStatus("1"); zyInfoService.updateById(par); @@ -128,9 +138,13 @@ public class ZyInfoController extends JeecgController { zyDbtx.setType("0");//0发布作业 1评分 2测验 3问卷 4讨论 zyDbtx.setMainId(zyInfo2.getId()); zyDbtx.setRwbh(zyInfo2.getRwbh()); - zyDbtx.setContent(" ["+zyInfo2.getKcmc()+"] "+zyInfo2.getSkjs()+" 发布了一篇作业,请及时完成!"); + String hpts = ""; + if(StringUtils.equals(zyInfo2.getXshpkg(),"1")){ + hpts = "此作业需要进行互评,互评时间:"+DateUtils.formatDate(zyInfo2.getXshpkssj(),"yyyy-MM-dd HH:mm")+" ~ "+ DateUtils.formatDate(zyInfo2.getXshpjssj(),"yyyy-MM-dd HH:mm"); + } + zyDbtx.setContent(user.getRealname()+"老师["+kcKechengbiao.getKcmc()+"]课程于"+DateUtils.formatDate(new Date(),"yyyy-MM-dd HH:mm:ss")+"发布了一篇题目为“"+zyInfo2.getTitle()+"”的作业,该作业完成时间为:"+ DateUtils.formatDate(zyInfo2.getStartTime(),"yyyy-MM-dd HH:mm")+" ~ "+ DateUtils.formatDate(zyInfo2.getEndTime(),"yyyy-MM-dd HH:mm")+",请按时完成! "+hpts); + zyDbtx.setFlag("0"); - LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); zyDbtx.setFbr(user.getUsername()); zyDbtxService.save(zyDbtx); @@ -242,6 +256,16 @@ public class ZyInfoController extends JeecgController { queryWrapper.eq("b.KCAPZBBH",zyInfo.getRwbh()); List list = xxhbbksService.getXsxkbAllList(queryWrapper); zyInfoStudentService.deleteMainId(zyInfo.getId()); + + + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + + QueryWrapper kcKechengbiaoQueryWrapper = new QueryWrapper<>(); + kcKechengbiaoQueryWrapper.eq("rwbh",zyInfo.getRwbh()); + kcKechengbiaoQueryWrapper.eq("jgh",zyInfo.getCreateBy()); + kcKechengbiaoQueryWrapper.eq("xqxn",zyInfo.getXnxq()); + kcKechengbiaoQueryWrapper.last("limit 1"); + KcKechengbiao kcKechengbiao = kcKechengbiaoService.getOne(kcKechengbiaoQueryWrapper); for(Xxhbbks xxhbbks:list){ ZyInfoStudent zyInfoStudent = new ZyInfoStudent(); zyInfoStudent.setMainId(zyInfo.getId()); @@ -255,9 +279,14 @@ public class ZyInfoController extends JeecgController { zyDbtx.setType("0");//0发布作业 1评分 2测验 3问卷 4讨论 zyDbtx.setMainId(zyInfo.getId()); zyDbtx.setRwbh(zyInfo.getRwbh()); - zyDbtx.setContent(" ["+zyInfo.getKcmc()+"] "+zyInfo.getSkjs()+" 发布了一篇作业,请及时完成!"); +// 郭坤老师【战略管理】课程发布了一篇题目为“xxxx”的作业,作业完成时间为“2024-07-18 20:00 ~ 2024-07-20 23:59”,请按时完成! 作业发布时间: + String hpts = ""; + if(StringUtils.equals(zyInfo.getXshpkg(),"1")){ + hpts = "此作业需要进行互评,互评时间:"+DateUtils.formatDate(zyInfo.getXshpkssj(),"yyyy-MM-dd HH:mm")+" ~ "+ DateUtils.formatDate(zyInfo.getXshpjssj(),"yyyy-MM-dd HH:mm"); + } + zyDbtx.setContent(user.getRealname()+"老师["+kcKechengbiao.getKcmc()+"]课程于"+DateUtils.formatDate(new Date(),"yyyy-MM-dd HH:mm:ss")+"发布了一篇题目为“"+zyInfo.getTitle()+"”的作业,该作业完成时间为:"+ DateUtils.formatDate(zyInfo.getStartTime(),"yyyy-MM-dd HH:mm")+" ~ "+ DateUtils.formatDate(zyInfo.getEndTime(),"yyyy-MM-dd HH:mm")+",请按时完成! "+hpts); +// zyDbtx.setContent(" ["+zyInfo.getKcmc()+"] "+zyInfo.getSkjs()+" 发布了一篇作业,请及时完成!"); zyDbtx.setFlag("0"); - LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); zyDbtx.setFbr(user.getUsername()); zyDbtxService.save(zyDbtx); diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/ZyInfo.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/ZyInfo.java index 4a2b8a44..841e9152 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/ZyInfo.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfo/entity/ZyInfo.java @@ -133,8 +133,12 @@ public class ZyInfo implements Serializable { private Integer sort;//序号 private java.lang.String xshpkg;//学生互评开关 private java.lang.String xshprsq;//学生互评人数 - private java.lang.String xshpkssj;//学生互评开始时间 - private java.lang.String xshpjssj;//学生互评结束时间 + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm") + private java.util.Date xshpkssj;//学生互评开始时间 + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm") + private java.util.Date xshpjssj;//学生互评结束时间 private java.lang.String sfzzcj;//是否最终成绩(1是 0否) private java.lang.String xssfck;//学生是否查看(1是 0否) private java.lang.String hpsfwcone;//第1次互评是否完成(1是 0否) @@ -185,5 +189,11 @@ public class ZyInfo implements Serializable { private String aigcsftg; @TableField(exist = false) private String xnsftg; + @TableField(exist = false) + private String zzdf; + @TableField(exist = false) + private String xshpfs; + @TableField(exist = false) + private String jxfs; } 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 f67d570d..66ab0c99 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 @@ -3,8 +3,8 @@ @@ -138,7 +139,7 @@ - update zy_info_student set jxfs2 = '0' where main_id=#{id} + update zy_info_student set jxfs2 = '0' where main_id=#{id} and create_by = #{createBy} \ No newline at end of file diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudentHp/controller/ZyInfoStudentHpController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudentHp/controller/ZyInfoStudentHpController.java index cedd6e1e..4ee05cc5 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudentHp/controller/ZyInfoStudentHpController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudentHp/controller/ZyInfoStudentHpController.java @@ -215,7 +215,8 @@ public class ZyInfoStudentHpController extends JeecgController numbers = new ArrayList<>(); + int[] numbers = new int[3]; + int i=0; // 假设有一个整数数组numbers for(ZyInfoStudentHp par:list2){ - numbers.add(Integer.parseInt(par.getStuScore())); + numbers[i] =(Integer.parseInt(par.getStuScore())); + i++; } - // 去掉最大值 - int max = Integer.MIN_VALUE; - int sum = 0; - for (int num : numbers) { - max = Math.max(max, num); - sum += num; - } - sum -= max ; + double averageWithoutOutlier = calculateAverageWithoutOutlier(numbers); - // 计算平均值 - double average = (double) sum / (numbers.size() - 1); - zyInfoStudent.setXshpfs(average+""); + zyInfoStudent.setXshpfs(String.format("%.1f",averageWithoutOutlier)); }else if(list2.size() > 3){ //去掉做高分和最低分 取平均值 - ArrayList numbers = new ArrayList<>(); // 假设有一个整数数组numbers for(ZyInfoStudentHp par:list2){ @@ -275,53 +265,56 @@ public class ZyInfoStudentHpController extends JeecgController=3){ zyInfoStudent.setScore(zyInfoStudent.getXshpfs()); } zyInfoStudentService.updateById(zyInfoStudent); Integer hpcjjl = Integer.parseInt(dictUtils.translateDictValue("hpcjsz","1")); - //计算评分人的互评次数,计算互评人的绩效分数 - QueryWrapper zyInfoStudentQueryWrapper = new QueryWrapper<>(); - zyInfoStudentQueryWrapper.eq("a.main_id",zyInfoStudentPar.getMainId()); - zyInfoStudentQueryWrapper.eq("a.create_by",sysUser.getUsername()); - List listPfr = zyInfoStudentService.list(zyInfoStudentQueryWrapper); - if(listPfr.size()>0){ - ZyInfoStudent hprInfo = listPfr.get(0); - //计算绩效分数 - QueryWrapper zyInfoStudentHpQueryWrapper3 = new QueryWrapper<>(); - zyInfoStudentHpQueryWrapper3.eq("main_id",hprInfo.getMainId()); - zyInfoStudentHpQueryWrapper3.eq("stu_id",sysUser.getUsername()); - List list3 = zyInfoStudentHpService.list(zyInfoStudentHpQueryWrapper3); - if(list3.size()>4){ - if(StringUtils.isNotEmpty(hprInfo.getScore())){ - double hpcj = Double.parseDouble(hprInfo.getScore());//获取教师的互评成绩 - double jxcj = hpcj * hpcjjl / 100; - hprInfo.setJxfs(String.format("%.1f",jxcj)); - } - } - //计算最终得分 - if(StringUtils.isNotEmpty(hprInfo.getScore())){ - double hpcj = Double.parseDouble(hprInfo.getScore());//获取教师的互评成绩 - double jxcj = 0.0;//获取教师的互评成绩 - if(StringUtils.isNotEmpty(hprInfo.getJxfs())){ - jxcj = Double.parseDouble(hprInfo.getJxfs());//获取教师的互评成绩 - } - double zzcj = hpcj + jxcj; - hprInfo.setZzdf(String.format("%.1f",zzcj)); - } - zyInfoStudentService.updateById(hprInfo); - } - - //计算二次绩效奖励 ZyInfo jspc = new ZyInfo(); jspc.setId(zyInfoStudentPar.getMainId()); + jspc.setCreateBy(sysUser.getUsername()); zyInfoStudentPczService.calculationPcz(jspc); - + //计算所有人的最终得分 + QueryWrapper zyInfoStudentQueryWrapper2 = new QueryWrapper<>(); + zyInfoStudentQueryWrapper2.eq("a.main_id",zyInfoStudentPar.getMainId()); + zyInfoStudentQueryWrapper2.isNotNull("a.score"); + List stulist = zyInfoStudentService.list(zyInfoStudentQueryWrapper2); + for(ZyInfoStudent par:stulist){ + //计算绩效分数 + QueryWrapper zyInfoStudentHpQueryWrapper3 = new QueryWrapper<>(); + zyInfoStudentHpQueryWrapper3.eq("main_id",par.getMainId()); + zyInfoStudentHpQueryWrapper3.eq("stu_id",par.getCreateBy()); + List list3 = zyInfoStudentHpService.list(zyInfoStudentHpQueryWrapper3); + if(list3.size()>4){ + if(StringUtils.isNotEmpty(par.getScore())){ + double hpcj = Double.parseDouble(par.getScore());//获取教师的互评成绩 + double jxcj = hpcj * hpcjjl / 100; + par.setJxfs(String.format("%.1f",jxcj)); + } + }else{ + par.setJxfs(""); + } + //计算最终得分 + if(StringUtils.isNotEmpty(par.getScore())){ + double hpcj = Double.parseDouble(par.getScore());//获取教师的互评成绩 + double jxcj = 0.0;//获取教师的互评成绩 + if(StringUtils.isNotEmpty(par.getJxfs())){ + jxcj = Double.parseDouble(par.getJxfs());//获取教师的互评成绩 + } + double jxcj2 = 0.0;//获取教师的互评成绩 + if(StringUtils.isNotEmpty(par.getJxfs2())){ + jxcj2 = Double.parseDouble(par.getJxfs2());//获取教师的互评成绩 + } + double zzcj = hpcj + jxcj + jxcj2; + par.setZzdf(String.format("%.1f",zzcj)); + } + zyInfoStudentService.updateById(par); + } return Result.OK("互评成功!"); } }else{ @@ -330,6 +323,47 @@ public class ZyInfoStudentHpController extends JeecgController= array.length) { + throw new IllegalArgumentException("Invalid input"); + } + + int[] newArray = new int[array.length - 1]; + System.arraycopy(array, 0, newArray, 0, n); + System.arraycopy(array, n + 1, newArray, n, array.length - n - 1); + return newArray; + } + @AutoLog(value = "学生成绩第二次互评-添加") @ApiOperation(value="学生成绩第二次互评-添加", notes="学生成绩第二次互评-添加") @PostMapping(value = "/saveTwo") diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudentPcz/service/impl/ZyInfoStudentPczServiceImpl.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudentPcz/service/impl/ZyInfoStudentPczServiceImpl.java index ea6db9df..e8e3e651 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudentPcz/service/impl/ZyInfoStudentPczServiceImpl.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyInfoStudentPcz/service/impl/ZyInfoStudentPczServiceImpl.java @@ -6,6 +6,8 @@ import org.jeecg.common.util.text.StringUtils; import org.jeecg.modules.kc.zyInfo.entity.ZyInfo; import org.jeecg.modules.kc.zyInfoStudent.entity.ZyInfoStudent; import org.jeecg.modules.kc.zyInfoStudent.mapper.ZyInfoStudentMapper; +import org.jeecg.modules.kc.zyInfoStudentHp.entity.ZyInfoStudentHp; +import org.jeecg.modules.kc.zyInfoStudentHp.service.IZyInfoStudentHpService; import org.jeecg.modules.kc.zyInfoStudentPcz.entity.ZyInfoStudentPcz; import org.jeecg.modules.kc.zyInfoStudentPcz.mapper.ZyInfoStudentPczMapper; import org.jeecg.modules.kc.zyInfoStudentPcz.service.IZyInfoStudentPczService; @@ -25,7 +27,8 @@ import java.util.List; */ @Service public class ZyInfoStudentPczServiceImpl extends ServiceImpl implements IZyInfoStudentPczService { - + @Autowired + private IZyInfoStudentHpService zyInfoStudentHpService; @Autowired private ZyInfoStudentMapper zyInfoStudentMapper; @@ -41,7 +44,7 @@ public class ZyInfoStudentPczServiceImpl extends ServiceImpl().eq("zy_id",jspc.getId())); - //修改原来的绩效数据 + //修改原来的绩效数据 将原来的第二次绩效修改成0 zyInfoStudentMapper.updateJxfs2(jspc); //查询方差数据并重新插入到数据库中 @@ -69,22 +72,22 @@ public class ZyInfoStudentPczServiceImpl extends ServiceImpl zyInfoStudentHpQueryWrapper3 = new QueryWrapper<>(); + zyInfoStudentHpQueryWrapper3.eq("main_id",zyInfoStudentPcz.getZyId()); + zyInfoStudentHpQueryWrapper3.eq("stu_id",zyInfoStudentPcz.getStuId()); + List list3 = zyInfoStudentHpService.list(zyInfoStudentHpQueryWrapper3); + if(list3.size()>4){ + if(com.baomidou.mybatisplus.core.toolkit.StringUtils.isNotEmpty(zyInfoStudent.getScore())){ + String score = zyInfoStudent.getScore(); + if(StringUtils.isEmpty(score)){ + score = "0"; + } + Double jxfs2 = Double.parseDouble(score) * Double.parseDouble(bfbFs) /100; + zyInfoStudent.setJxfs2(String.format("%.1f",jxfs2));//第二次绩效 + zyInfoStudentMapper.updateById(zyInfoStudent); + } } - Double jxfs2 = Double.parseDouble(score) * Double.parseDouble(bfbFs) /100; - zyInfoStudent.setJxfs2(String.format("%.1f",jxfs2));//第二次绩效 - String jxfs = zyInfoStudent.getJxfs(); - if(StringUtils.isEmpty(jxfs)){ - jxfs = "0"; - } - Double zdf = Double.parseDouble(score) + Double.parseDouble(jxfs) + jxfs2; - zyInfoStudent.setZzdf(String.format("%.1f",zdf)); - zyInfoStudentMapper.updateById(zyInfoStudent); } - - } public static int roundToInteger(double value) { return (int) Math.round(value); diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyTlq/controller/ZyTlqController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyTlq/controller/ZyTlqController.java index 767fa5f8..9ecce759 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyTlq/controller/ZyTlqController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/zyTlq/controller/ZyTlqController.java @@ -1,6 +1,7 @@ package org.jeecg.modules.kc.zyTlq.controller; import java.util.Arrays; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -15,6 +16,7 @@ import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.system.vo.LoginUser; +import org.jeecg.common.util.DateUtils; import org.jeecg.common.util.oConvertUtils; import org.jeecg.modules.kc.config.entity.KcExportConfigTpkwcqkjzglx; import org.jeecg.modules.kc.config.service.IKcExportConfigTpkwcqkjzglxService; @@ -216,6 +218,7 @@ public class ZyTlqController extends JeecgController { queryWrapper.apply("a.xh = b.xh"); queryWrapper.eq("b.KCAPZBBH",par.getRwbh()); List list = xxhbbksService.getXsxkbAllList(queryWrapper); + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); for(Xxhbbks xxhbbks:list){ //作业代办提醒 @@ -224,9 +227,9 @@ public class ZyTlqController extends JeecgController { zyDbtx.setType("4");//0发布作业 1评分 2测验 3问卷 4讨论 zyDbtx.setMainId(par.getId()); zyDbtx.setRwbh(par.getRwbh()); - zyDbtx.setContent(" ["+par.getKcmc()+"] "+par.getSkjs()+" 发布了一篇新的讨论,请及时参与!"); +// zyDbtx.setContent(" ["+par.getKcmc()+"] "+par.getSkjs()+" 发布了一篇新的讨论,请及时参与!"); + zyDbtx.setContent(user.getRealname()+"教师发起了["+par.getKcmc()+"]课程“"+par.getTitle()+"”的讨论,请及时参与讨论。发布时间:"+DateUtils.formatDate(new Date(),"yyyy-MM-dd HH:mm:ss")); zyDbtx.setFlag("0"); - LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); zyDbtx.setFbr(user.getUsername()); zyDbtxService.save(zyDbtx);