From 5b09f4007f9bca1f3a50f37478d947a0075ccb9a Mon Sep 17 00:00:00 2001 From: yangjun <1173114630@qq.com> Date: Tue, 27 Feb 2024 14:31:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=99=BA=E6=85=A7=E6=95=99=E5=AE=A4=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RefreshLiveServer.java | 72 ++++++++++++++++++- .../controller/KcZhihuijiaoshiController.java | 16 +++++ .../kc/jiaoshi/entity/KcZhihuijiaoshi.java | 2 + .../kc/tktj/mapper/xml/KcTingkeMapper.xml | 4 +- 4 files changed, 91 insertions(+), 3 deletions(-) diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/grab/SynchronizationService/RefreshLiveServer.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/grab/SynchronizationService/RefreshLiveServer.java index ec5613c4..d2978342 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/grab/SynchronizationService/RefreshLiveServer.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/grab/SynchronizationService/RefreshLiveServer.java @@ -171,7 +171,7 @@ public class RefreshLiveServer extends BaseSync { kcZhihuijiaoshiService.update(outUw); } //同步刷新智慧教室设备刷新时间 - refreshState(null); +// refreshState(null); } /** @@ -259,4 +259,74 @@ public class RefreshLiveServer extends BaseSync { run(null); } + public void sdjc(String id) { + QueryWrapper qw = new QueryWrapper<>(); + //qw.eq("xm","教师近景"); + qw.eq(StringUtils.isNotBlank(id),"jsbh",id); + List list = kcZhihuijiaoshiService.list(qw); + + //删除旧数据 + QueryWrapper rqw = new QueryWrapper<>(); + rqw.eq(StringUtils.isNotBlank(id),"jsbh",id); + kcZhihuijiaoshiStateLogService.remove(rqw); + Map stateLogMap = Maps.newHashMap(); + + list.forEach(x -> { + KcZhihuijiaoshiStateLog stateLog = null; + if(stateLogMap.containsKey(x.getJsbh())){ + stateLog = stateLogMap.get(x.getJsbh()); + }else{ + KcZhihuijiaoshiStateLog _stateLog = new KcZhihuijiaoshiStateLog(); + _stateLog.setJxlId(x.getJxlId());//教学楼ID + _stateLog.setJxlName(x.getJxlName());//教学楼名称 + _stateLog.setJsbh(x.getJsbh());//教室编号 + _stateLog.setJsmc(x.getJsmc());//教室名称 + stateLogMap.put(x.getJsbh(),_stateLog); + stateLog = _stateLog; + } + try{ + String res = com.xkcoding.http.HttpUtil.get(x.getPullUrl()); + log.info("返回内容:" + res); + switch (x.getXm()){ + case "教师近景": stateLog.setLbzj("green");break; + case "教师全景": stateLog.setJsqj("green");break; + case "学生全景": stateLog.setXsqj("green");break; + case "PPT": stateLog.setPpt("green");break; + default: + } + } catch (Exception e){ + //失败 + switch (x.getXm()){ + case "教师近景": stateLog.setLbzj("red");break; + case "教师全景": stateLog.setJsqj("red");break; + case "学生全景": stateLog.setXsqj("red");break; + case "PPT": stateLog.setPpt("red");break; + default: + } + } + }); + //重新计算内容 + stateLogMap.forEach((k,v) -> { + int num = (StringUtils.equals("green",v.getLbzj())?1:0) + (StringUtils.equals("green",v.getJsqj())?1:0) + (StringUtils.equals("green",v.getXsqj())?1:0) + (StringUtils.equals("green",v.getPpt())?1:0); + v.setGreenNum(num); + if(num == 4){ + v.setType("green"); + }else if(num == 0){ + v.setType("red"); + }else{ + v.setType("yellow"); + } + }); + kcZhihuijiaoshiStateLogService.saveBatch(stateLogMap.values()); + //更新全部的修改时间(新规则,分批展示时间) +// UpdateWrapper uqw = new UpdateWrapper<>(); +// uqw.set("create_time",new Date()); +// kcZhihuijiaoshiStateLogService.update(uqw); +// if(StringUtils.isNotBlank(id)){ +// redisUtil.del("zhihuijiaos:" + jxlName + ":btnStatus"); +// }else{ +// redisUtil.del("zhihuijiaos:all:btnStatus"); +// } + redisUtil.del("zhihuijiaos:all:btnStatus"); + } } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/jiaoshi/controller/KcZhihuijiaoshiController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/jiaoshi/controller/KcZhihuijiaoshiController.java index 758fc0d6..e1e02462 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/jiaoshi/controller/KcZhihuijiaoshiController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/jiaoshi/controller/KcZhihuijiaoshiController.java @@ -508,4 +508,20 @@ public class KcZhihuijiaoshiController extends JeecgController updateTkzt(@RequestBody KcZhihuijiaoshi kcZhihuijiaoshi) { + kcZhihuijiaoshiService.updateById(kcZhihuijiaoshi); + return Result.OK("操作成功!"); + } + + + @GetMapping(value = "/sdjc") + public Result sdjc(String id){ + refreshLiveServer.sdjc(id); + return Result.OK(kcZhihuijiaoshiStateLogService.list()); + } + } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/jiaoshi/entity/KcZhihuijiaoshi.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/jiaoshi/entity/KcZhihuijiaoshi.java index 6daaf67c..cda827a0 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/jiaoshi/entity/KcZhihuijiaoshi.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/jiaoshi/entity/KcZhihuijiaoshi.java @@ -129,6 +129,8 @@ public class KcZhihuijiaoshi implements Serializable { @ApiModelProperty(value = "是否有效 0-有效 1-无效") private java.lang.String sfyx; + private String tjKftkzt;//开放听课后台统计状态 + /**一组*/ @TableField(exist = false) private java.lang.String ids; diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/tktj/mapper/xml/KcTingkeMapper.xml b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/tktj/mapper/xml/KcTingkeMapper.xml index 382d9421..7db6fd8c 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/tktj/mapper/xml/KcTingkeMapper.xml +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/tktj/mapper/xml/KcTingkeMapper.xml @@ -827,7 +827,7 @@ ) tk LEFT JOIN ( SELECT - ev.id AS evaluationid, ev.evaluationver, evs.ketangbiaoid, ea.score,ev.source + ev.id AS evaluationid, ev.evaluationver, evs.ketangbiaoid, ea.score,ev.source , ev.upuserid FROM kc_evaluation ev, kc_evaluations evs, @@ -840,7 +840,7 @@ AND evs.queid = eq.id AND ea.queid = eq.id AND eq.genre = 0 - ) ev ON tk.ketangbiaoid = ev.ketangbiaoid + ) ev ON tk.ketangbiaoid = ev.ketangbiaoid and tk.userid = ev.upuserid left join ( SELECT id, user_id, ketangbiao_id, notes