# Conflicts:
#	jeecg-module-main/src/main/java/org/jeecg/modules/kc/grab/SynchronizationService/RefreshLiveServer.java
This commit is contained in:
bai 2024-02-28 08:30:39 +08:00
commit 133dff7c72
14 changed files with 230 additions and 53 deletions

View File

@ -40,4 +40,8 @@ public interface KcExportConfigTpkwcqkjzglxMapper extends BaseMapper<KcExportCon
List<KcExportConfigTpkwcqkjzglx> getListQtzrjsChar(KcExportConfigTpkwcqkjzglx kcExportConfigTpkwcqkjzglx1);
List<KcExportConfigTpkwcqkjzglxXytktj> getListByCodeXytktj(KcExportConfigTpkwcqkjzglxXytktj kcExportConfigTpkwcqkjzglxXytktj);
KcExportConfigTpkwcqkjzglx getDqxqtjlist(KcExportConfigTpkwcqkjzglx kcExportConfigTpkwcqkjzglx);
List<KcExportConfigTpkwcqkjzglx> getBxqSaveList(KcExportConfigTpkwcqkjzglx kcExportConfigTpkwcqkjzglx);
}

View File

@ -249,4 +249,34 @@
</where>
</select>
<select id="getDqxqtjlist" resultType="org.jeecg.modules.kc.config.entity.KcExportConfigTpkwcqkjzglx">
select count(*) as znum from kc_export_config_tpkwcqkjzglx where xqxn = #{xqxn} and (zt = '在职' or zt= '退休')
</select>
<select id="getBxqSaveList" resultType="org.jeecg.modules.kc.config.entity.KcExportConfigTpkwcqkjzglx">
SELECT
uuid() AS id,
create_by,
create_time,
update_by,
update_time,
sys_org_code,
gh,
tklx,
dwmc,
xm,
sf,
zt,
ytkcs,
rjzy,
#{xqxn} AS xqxn
FROM
kc_export_config_tpkwcqkjzglx
WHERE
xqxn = #{type}
</select>
</mapper>

View File

@ -39,4 +39,7 @@ public interface IKcExportConfigTpkwcqkjzglxService extends IService<KcExportCon
List<KcExportConfigTpkwcqkjzglx> getListQtzrjsChar(KcExportConfigTpkwcqkjzglx kcExportConfigTpkwcqkjzglx);
List<KcExportConfigTpkwcqkjzglxXytktj> getListByCodeXytktj(QueryWrapper<KcExportConfigTpkwcqkjzglxXytktj> queryWrapper,KcExportConfigTpkwcqkjzglxXytktj KcExportConfigTpkwcqkjzglxXytktj);
//获取是否有本学期数据
List<KcExportConfigTpkwcqkjzglx> getSfybxqsj();
}

View File

@ -18,6 +18,7 @@ import org.jeecg.modules.kc.grab.imports.service.IXxhbuserService;
import org.jeecg.modules.kc.kcSysConfig.entity.KcSysConfig;
import org.jeecg.modules.kc.kcSysConfig.service.IKcSysConfigService;
import org.jeecg.modules.kc.kcXqxnHistory.entity.KcXqxnHistory;
import org.jeecg.modules.kc.kcXqxnHistory.service.IKcXqxnHistoryService;
import org.jeecg.modules.kc.tksf.kctksfyq.entity.KcTksfyq;
import org.jeecg.modules.kc.tksf.kctksfyq.service.IKcTksfyqService;
import org.jeecg.modules.system.service.impl.SysBaseApiImpl;
@ -51,6 +52,9 @@ public class KcExportConfigTpkwcqkjzglxServiceImpl extends ServiceImpl<KcExportC
@Autowired
private DictUtils dictUtils;
@Autowired
private IKcXqxnHistoryService kcXqxnHistoryService;
@Override
public void editAll(KcExportConfigTpkwcqkjzglx kcExportConfigTpkwcqkjzglx) {
//按学期筛选
@ -338,4 +342,29 @@ public class KcExportConfigTpkwcqkjzglxServiceImpl extends ServiceImpl<KcExportC
List<KcExportConfigTpkwcqkjzglxXytktj> infolist = baseMapper.getListByCodeXytktj(kcExportConfigTpkwcqkjzglxXytktj);
return infolist;
}
@Override
public List<KcExportConfigTpkwcqkjzglx> getSfybxqsj() {
try {
QueryWrapper<KcXqxnHistory> kcXqxnHistoryQueryWrapper = new QueryWrapper<>();
kcXqxnHistoryQueryWrapper.orderByDesc("start_time");
List<KcXqxnHistory> historyList = kcXqxnHistoryService.list(kcXqxnHistoryQueryWrapper);
String dqxq = historyList.get(0).getTitle();
KcExportConfigTpkwcqkjzglx KcExportConfigTpkwcqkjzglx = new KcExportConfigTpkwcqkjzglx();
KcExportConfigTpkwcqkjzglx.setXqxn(dqxq);
KcExportConfigTpkwcqkjzglx tjsj =baseMapper.getDqxqtjlist(KcExportConfigTpkwcqkjzglx);
String znum = tjsj.getZnum();
if(StringUtils.equals("0",znum)){
String syxq = historyList.get(1).getTitle();//上一学期
//获取本学期新增数据
KcExportConfigTpkwcqkjzglx.setType(syxq);
List<KcExportConfigTpkwcqkjzglx> savelist = baseMapper.getBxqSaveList(KcExportConfigTpkwcqkjzglx);
return savelist;
}
}catch (Exception e) {
e.printStackTrace();
}
return null;
}
}

View File

@ -172,6 +172,7 @@ public class RefreshLiveServer extends BaseSync {
}
//同步刷新智慧教室设备刷新时间
//refreshState(null);
//refreshState(null);
}
/**
@ -272,4 +273,74 @@ public class RefreshLiveServer extends BaseSync {
run(null);
}
public void sdjc(String id) {
QueryWrapper<KcZhihuijiaoshi> qw = new QueryWrapper<>();
//qw.eq("xm","教师近景");
qw.eq(StringUtils.isNotBlank(id),"jsbh",id);
List<KcZhihuijiaoshi> list = kcZhihuijiaoshiService.list(qw);
//删除旧数据
QueryWrapper<KcZhihuijiaoshiStateLog> rqw = new QueryWrapper<>();
rqw.eq(StringUtils.isNotBlank(id),"jsbh",id);
kcZhihuijiaoshiStateLogService.remove(rqw);
Map<String, KcZhihuijiaoshiStateLog> 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<KcZhihuijiaoshiStateLog> 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");
}
}

View File

@ -73,6 +73,7 @@ public class SyncKcktStat extends BaseSync {
//-----------------修改课程表数据------------------------
KcKechengbiao kcKechengbiao = new KcKechengbiao();
kcKechengbiao.setXqxn(kcSysConfig.getFlag1());
kcKechengbiao.setSkjs("刘婷");
List<KcKechengbiao> kckblist = kcKechengbiaoService.getKechengbiaoList(kcKechengbiao);
for(KcKechengbiao KcKechengbiaoPar:kckblist){
QueryWrapper<KcKechengbiao> kcKechengbiaoQueryWrapper = new QueryWrapper<>();

View File

@ -64,6 +64,10 @@ public class SyncTJzgXskc extends BaseSync {
* @param param
*/
public void run(Map<String, Object> param){
//查询数据
List<TJzgXskc> inDataList = expService.list();
List<Xxhbxskc> outDataList = Lists.newArrayList();
@ -77,6 +81,7 @@ public class SyncTJzgXskc extends BaseSync {
//清洗数据
inDataList.forEach(x -> {
String timestamps = DateUtil.format(x.getTimestamps(), DatePattern.NORM_DATETIME_PATTERN);
String gh = x.getGh();
outDataList.add(BeanUtil.toBean(x, Xxhbxskc.class));
Xxhbuser outUserData = BeanUtil.toBean(x, Xxhbuser.class);
outUserData.setTimestamps(timestamps);
@ -186,22 +191,36 @@ public class SyncTJzgXskc extends BaseSync {
if(saveList != null){
try {
exportConfigTpkwcqkjzglxService.saveBatch(saveList);
}catch (Exception e){
e.printStackTrace();
errorMessage = e.getMessage();
}
Xxhbsynclog updateLog = new Xxhbsynclog();
updateLog.setSyncRowNum(String.valueOf(outDataList.size()));
updateLog.setOratabname("T_JZG_XSKC-清洗至kc_export_config_tpkwcqkjzglx新增数据");//oracle表名
updateLog.setOratabnum(inDataList.size());//oracle表数量
updateLog.setTablenum(0);//mysql表数量
updateLog.setSyncnum(saveList.size());//本次同步数据量
updateLog.setSynctype("0");//同步类型 0全量 1增量
updateLog.setErrormessage(errorMessage);
saveLog(xxhbsynclog,Xxhbxskc.class);
List<KcExportConfigTpkwcqkjzglx> listA = exportConfigTpkwcqkjzglxService.getSfybxqsj();
if(listA != null){
exportConfigTpkwcqkjzglxService.saveBatch(listA);
Xxhbsynclog updateLog = new Xxhbsynclog();
updateLog.setSyncRowNum(String.valueOf(listA.size()));
updateLog.setOratabname("T_JZG_XSKC-清洗至kc_export_config_tpkwcqkjzglx新增数据");//oracle表名
updateLog.setOratabnum(listA.size());//oracle表数量
updateLog.setTablenum(0);//mysql表数量
updateLog.setSyncnum(listA.size());//本次同步数据量
updateLog.setSynctype("0");//同步类型 0全量 1增量
updateLog.setErrormessage(errorMessage);
saveLog(xxhbsynclog,Xxhbxskc.class);
}else{
try {
exportConfigTpkwcqkjzglxService.saveBatch(saveList);
}catch (Exception e){
e.printStackTrace();
errorMessage = e.getMessage();
}
Xxhbsynclog updateLog = new Xxhbsynclog();
updateLog.setSyncRowNum(String.valueOf(outDataList.size()));
updateLog.setOratabname("T_JZG_XSKC-清洗至kc_export_config_tpkwcqkjzglx新增数据");//oracle表名
updateLog.setOratabnum(inDataList.size());//oracle表数量
updateLog.setTablenum(0);//mysql表数量
updateLog.setSyncnum(saveList.size());//本次同步数据量
updateLog.setSynctype("0");//同步类型 0全量 1增量
updateLog.setErrormessage(errorMessage);
saveLog(xxhbsynclog,Xxhbxskc.class);
}
}
}

View File

@ -66,6 +66,9 @@ public class KcJiaoshirongliangController extends JeecgController<KcJiaoshirongl
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<KcJiaoshirongliang> queryWrapper = QueryGenerator.initQueryWrapper(kcJiaoshirongliang, req.getParameterMap());
queryWrapper.orderByAsc("jzwmc");
queryWrapper.orderByAsc("lc");
queryWrapper.orderByAsc("jsmc");
Page<KcJiaoshirongliang> page = new Page<KcJiaoshirongliang>(pageNo, pageSize);
IPage<KcJiaoshirongliang> pageList = kcJiaoshirongliangService.page(page, queryWrapper);
return Result.OK(pageList);

View File

@ -518,4 +518,20 @@ public class KcZhihuijiaoshiController extends JeecgController<KcZhihuijiaoshi,
return Result.OK();
}
@AutoLog(value = "智慧教室-修改开放听课状态")
@ApiOperation(value="智慧教室-修改开放听课状态", notes="智慧教室-修改开放听课状态")
@PostMapping(value = "/updateTkzt")
public Result<String> 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());
}
}

View File

@ -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;

View File

@ -78,8 +78,16 @@ public class KcEvaluationsStatController extends JeecgController<KcEvaluationsSt
kcEvaluationsStat.setCol13("*"+kcEvaluationsStat.getCol13()+"*");
}
QueryWrapper<KcEvaluationsStat> queryWrapper = QueryGenerator.initQueryWrapper("a",kcEvaluationsStat, req.getParameterMap());
queryWrapper.eq(StringUtils.isNotBlank(kcEvaluationsStat.getSzkc()),"c.szkc",kcEvaluationsStat.getSzkc());
QueryWrapper<KcEvaluationsStat> queryWrapper = QueryGenerator.initQueryWrapper(kcEvaluationsStat, req.getParameterMap());
if(StringUtils.isNotBlank(kcEvaluationsStat.getSzkc())){
String szkc = kcEvaluationsStat.getSzkc();
if(StringUtils.equals("1",szkc)){
queryWrapper.eq("col59","");
}else if(StringUtils.equals("0",szkc)){
queryWrapper.eq("col59","");
}
}
// queryWrapper.eq(StringUtils.isNotBlank(kcEvaluationsStat.getSzkc()),"c.szkc",kcEvaluationsStat.getSzkc());
Page<KcEvaluationsStat> page = new Page<KcEvaluationsStat>(pageNo, pageSize);
IPage<KcEvaluationsStat> pageList = kcEvaluationsStatService.page(page, queryWrapper);
return Result.OK(pageList);
@ -176,27 +184,27 @@ public class KcEvaluationsStatController extends JeecgController<KcEvaluationsSt
return exportXls(request, kcEvaluationsStat, KcEvaluationsStat.class, "全量评价表");
}
protected ModelAndView exportXls(HttpServletRequest request, KcEvaluationsStat object, Class<KcEvaluationsStat> clazz, String title) {
// Step.1 组装查询条件
QueryWrapper<KcEvaluationsStat> queryWrapper = QueryGenerator.initQueryWrapper("a",object, request.getParameterMap());
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
queryWrapper.eq(StringUtils.isNotBlank(object.getSzkc()),"c.szkc",object.getSzkc());
// Step.2 获取导出数据
List<KcEvaluationsStat> exportList = service.list(queryWrapper);
// Step.3 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
//此处设置的filename无效 ,前端会重更新设置一下
mv.addObject(NormalExcelConstants.FILE_NAME, title);
mv.addObject(NormalExcelConstants.CLASS, clazz);
//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;
}
// protected ModelAndView exportXls(HttpServletRequest request, KcEvaluationsStat object, Class<KcEvaluationsStat> clazz, String title) {
// // Step.1 组装查询条件
// QueryWrapper<KcEvaluationsStat> queryWrapper = QueryGenerator.initQueryWrapper("a",object, request.getParameterMap());
// LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
// queryWrapper.eq(StringUtils.isNotBlank(object.getSzkc()),"c.szkc",object.getSzkc());
// // Step.2 获取导出数据
// List<KcEvaluationsStat> exportList = service.list(queryWrapper);
//
// // Step.3 AutoPoi 导出Excel
// ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
// //此处设置的filename无效 ,前端会重更新设置一下
// mv.addObject(NormalExcelConstants.FILE_NAME, title);
// mv.addObject(NormalExcelConstants.CLASS, clazz);
// //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;
// }
/**
* 通过excel导入数据

View File

@ -2,19 +2,6 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.kc.kcEvaluationsStat.mapper.KcEvaluationsStatMapper">
<select id="selectPage" resultType="org.jeecg.modules.kc.kcEvaluationsStat.entity.KcEvaluationsStat">
select a.*,c.szkc from kc_evaluations_stat a
left join kc_ketangbiao b on a.col58 = b.id
left join kc_kechengbiao c on b.kechengbiaoid = c.id
${ew.customSqlSegment}
</select>
<select id="selectList" resultType="org.jeecg.modules.kc.kcEvaluationsStat.entity.KcEvaluationsStat">
select a.*,c.szkc from kc_evaluations_stat a
left join kc_ketangbiao b on a.col58 = b.id
left join kc_kechengbiao c on b.kechengbiaoid = c.id
${ew.customSqlSegment}
</select>
<select id="getYbtkbSyncList" resultType="org.jeecg.modules.kc.kcEvaluationsStat.entity.KcEvaluationsStat">
SELECT DISTINCT ev.id as col00

View File

@ -78,6 +78,10 @@
ELSE '' END as xq,
jgh,xnxq,jzglb,1 as sfcj,sfxsk as skxs,'' as sfzc,'' as bz,'' as zt,kcdl,#{xqxn} as xqxn
from xxhbkckb t,kc_jieci jc where concat(substring(sksj,2,2),'、',substring(sksj,4,2)) = jc.jieci and t.kcdl != '毕业设计' and (t.jgh is not null or t.JKZC is not null)
<if test="skjs!=null and skjs!=''">
and t.xm =#{skjs}
</if>
</select>
<insert id="saveOne">

View File

@ -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