添加作业同步功能

This commit is contained in:
yangjun 2024-09-05 09:07:27 +08:00
parent e968810260
commit bb2fb88c07
31 changed files with 746 additions and 18 deletions

View File

@ -0,0 +1,140 @@
package org.jeecg.modules.demo.sync;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.compress.utils.Lists;
import org.jeecg.modules.demo.xxhbjwxtjxrw.entity.JwxtJxrw;
import org.jeecg.modules.demo.xxhbjwxtjxrw.entity.Xxhbjwxtjxrw;
import org.jeecg.modules.demo.xxhbjwxtjxrw.service.IXxhbjwxtjxrwService;
import org.jeecg.modules.demo.xxhbjwxtjxrw.service.JwxtJxrwService;
import org.jeecg.modules.demo.xxhbjwxtscwjxx.entity.JwxtScwjxx;
import org.jeecg.modules.demo.xxhbjwxtscwjxx.entity.Xxhbjwxtscwjxx;
import org.jeecg.modules.demo.xxhbjwxtscwjxx.service.IXxhbjwxtscwjxxService;
import org.jeecg.modules.demo.xxhbjwxtscwjxx.service.JwxtscwjxxService;
import org.jeecg.modules.demo.xxhbjwxtxsmd.entity.JwxtXsmd;
import org.jeecg.modules.demo.xxhbjwxtxsmd.entity.Xxhbjwxtxsmd;
import org.jeecg.modules.demo.xxhbjwxtxsmd.service.IXxhbjwxtxsmdService;
import org.jeecg.modules.demo.xxhbjwxtxsmd.service.JwxtXsmdService;
import org.jeecg.modules.demo.zyHuizong.entity.Vkczxzy0001;
import org.jeecg.modules.demo.zyHuizong.entity.ZyHuizong;
import org.jeecg.modules.demo.zyHuizong.service.IZyHuizongService;
import org.jeecg.modules.demo.zyHuizong.service.Vkczxzy0001Service;
import org.jeecg.modules.demo.zyHuizongXiangxi.entity.Vkczxzy0002;
import org.jeecg.modules.demo.zyHuizongXiangxi.entity.ZyHuizongXiangxi;
import org.jeecg.modules.demo.zyHuizongXiangxi.service.IZyHuizongXiangxiService;
import org.jeecg.modules.demo.zyHuizongXiangxi.service.Vkczxzy0002Service;
import org.jeecg.modules.demo.zyInfoScjl.entity.ZyInfoScjl;
import org.jeecg.modules.demo.zyInfoScjl.entity.ZyInfoScjlOld;
import org.jeecg.modules.demo.zyInfoScjl.service.IZyInfoScjlOldService;
import org.jeecg.modules.demo.zyInfoScjl.service.IZyInfoScjlService;
import org.quartz.JobExecutionContext;
import org.springframework.beans.factory.annotation.Autowired;
import java.time.LocalDate;
import java.util.List;
import java.util.Map;
/**
* 同步作业信息
*/
@Slf4j
public class SyncZyxx extends BaseSync {
@Autowired
private Vkczxzy0001Service vkczxzy0001Service;
@Autowired
private IZyHuizongService zyHuizongService;
@Autowired
private Vkczxzy0002Service vkczxzy0002Service;
@Autowired
private IZyHuizongXiangxiService zyHuizongXiangxiService;
@Autowired
private IZyInfoScjlOldService zyInfoScjlOldService;
@Autowired
private IZyInfoScjlService zyInfoScjlService;
/**
* 若参数变量名修改 QuartzJobController中也需对应修改
*/
@Override
public void execute(JobExecutionContext jobExecutionContext) {
start();
run(getParamMap());
end();
}
/**
* 有参定时任务实现
* @param param
*/
public void run(Map<String, Object> param){
LocalDate today = LocalDate.now(); // 获取今天的日期
LocalDate yesterday = today.minusDays(1); // 减去一天得到昨天的日期
System.out.println("昨天的日期是: " + yesterday);
//查询数据
QueryWrapper eqw1 = new QueryWrapper();
eqw1.like("sfsckhcl_time",yesterday);
List<Vkczxzy0001> inDataList = vkczxzy0001Service.list(eqw1);
List<ZyHuizong> outDataList = Lists.newArrayList();
//查询数据
QueryWrapper eqw2 = new QueryWrapper();
eqw2.like("khcl_time",yesterday);
List<Vkczxzy0002> in1DataList = vkczxzy0002Service.list(eqw2);
List<ZyHuizongXiangxi> out1DataList = Lists.newArrayList();
//查询数据
QueryWrapper eqw3 = new QueryWrapper();
eqw3.like("create_time",yesterday);
List<ZyInfoScjlOld> in2DataList = zyInfoScjlOldService.list(eqw3);
List<ZyInfoScjl> out2DataList = Lists.newArrayList();
//清洗数据
inDataList.forEach(x -> outDataList.add(BeanUtil.toBean(x, ZyHuizong.class)));
in1DataList.forEach(x -> out1DataList.add(BeanUtil.toBean(x, ZyHuizongXiangxi.class)));
in2DataList.forEach(x -> out2DataList.add(BeanUtil.toBean(x, ZyInfoScjl.class)));
//保存到胃
try {
QueryWrapper dqw = new QueryWrapper();
zyHuizongService.remove(dqw);
zyHuizongService.syncList(outDataList);
QueryWrapper dqw1 = new QueryWrapper();
zyHuizongXiangxiService.remove(dqw1);
zyHuizongXiangxiService.syncList(out1DataList);
QueryWrapper dqw2 = new QueryWrapper();
zyInfoScjlService.remove(dqw2);
zyInfoScjlService.syncList(out2DataList);
}catch (Exception e){
e.printStackTrace();
}
}
/**
* 无参定时任务实现
*/
public void run(){
run(null);
}
public static void main(String[] args) {
LocalDate today = LocalDate.now(); // 获取今天的日期
LocalDate yesterday = today.minusDays(1); // 减去一天得到昨天的日期
System.out.println("昨天的日期是: " + yesterday);
}
}

View File

@ -0,0 +1,86 @@
package org.jeecg.modules.demo.zyHuizong.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* @Description: 作业汇总
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
@Data
@TableName("v_kczx_zy_0001")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="v_kczx_zy_0001对象", description="作业原来试图")
public class Vkczxzy0001 implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private String id;
/**学期学年*/
@Excel(name = "学期学年", width = 15)
@ApiModelProperty(value = "学期学年")
private String xnxq;
/**学院编号*/
@Excel(name = "学院编号", width = 15)
@ApiModelProperty(value = "学院编号")
private String xybh;
/**学院名称*/
@Excel(name = "学院名称", width = 15)
@ApiModelProperty(value = "学院名称")
private String xymc;
/**任务编号*/
@Excel(name = "任务编号", width = 15)
@ApiModelProperty(value = "任务编号")
private String rwbh;
/**课程名称*/
@Excel(name = "课程名称", width = 15)
@ApiModelProperty(value = "课程名称")
private String kcmc;
/**教工号*/
@Excel(name = "教工号", width = 15)
@ApiModelProperty(value = "教工号")
private String jgh;
/**授课教师*/
@Excel(name = "授课教师", width = 15)
@ApiModelProperty(value = "授课教师")
private String skjs;
/**作业编号*/
@Excel(name = "作业编号", width = 15)
@ApiModelProperty(value = "作业编号")
private String zybh;
/**作业名称*/
@Excel(name = "作业名称", width = 15)
@ApiModelProperty(value = "作业名称")
private String zymc;
/**作业类型*/
@Excel(name = "作业类型", width = 15)
@ApiModelProperty(value = "作业类型")
private String zylx;
/**作业占比*/
@Excel(name = "作业占比", width = 15)
@ApiModelProperty(value = "作业占比")
private String qmzb;
private String zyLeixing;//作业类型 0课程作业 1期末作业
private String sfsckhcl;//是否上传考核材料0否 1是
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
private Date sfsckhclTime;//上传考核材料时间
}

View File

@ -95,5 +95,10 @@ public class ZyHuizong implements Serializable {
/**作业占比*/
@Excel(name = "作业占比", width = 15)
@ApiModelProperty(value = "作业占比")
private java.lang.String qmzb;
private java.lang.String qmzb;//占比
private String zyLeixing;//作业类型 0课程作业 1期末作业
private String sfsckhcl;//是否上传考核材料0否 1是
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
private Date sfsckhclTime;//上传考核材料时间
}

View File

@ -0,0 +1,15 @@
package org.jeecg.modules.demo.zyHuizong.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.demo.zyHuizong.entity.Vkczxzy0001;
import org.jeecg.modules.demo.zyHuizong.entity.ZyHuizong;
/**
* @Description: 作业汇总
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
public interface Vkczxzy0001Mapper extends BaseMapper<Vkczxzy0001> {
}

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.demo.zyHuizong.mapper.Vkczxzy0001Mapper">
</mapper>

View File

@ -3,6 +3,8 @@ package org.jeecg.modules.demo.zyHuizong.service;
import org.jeecg.modules.demo.zyHuizong.entity.ZyHuizong;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* @Description: 作业汇总
* @Author: jeecg-boot
@ -11,4 +13,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface IZyHuizongService extends IService<ZyHuizong> {
void syncList(List<ZyHuizong> outDataList);
}

View File

@ -0,0 +1,15 @@
package org.jeecg.modules.demo.zyHuizong.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.demo.zyHuizong.entity.Vkczxzy0001;
import org.jeecg.modules.demo.zyHuizong.entity.ZyHuizong;
/**
* @Description: 作业汇总
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
public interface Vkczxzy0001Service extends IService<Vkczxzy0001> {
}

View File

@ -0,0 +1,23 @@
package org.jeecg.modules.demo.zyHuizong.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.demo.zyHuizong.entity.Vkczxzy0001;
import org.jeecg.modules.demo.zyHuizong.entity.ZyHuizong;
import org.jeecg.modules.demo.zyHuizong.mapper.Vkczxzy0001Mapper;
import org.jeecg.modules.demo.zyHuizong.mapper.ZyHuizongMapper;
import org.jeecg.modules.demo.zyHuizong.service.IZyHuizongService;
import org.jeecg.modules.demo.zyHuizong.service.Vkczxzy0001Service;
import org.springframework.stereotype.Service;
/**
* @Description: 作业汇总
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
@Service
@DS("multi-datasource1")
public class Vkczxzy0001ServiceImpl extends ServiceImpl<Vkczxzy0001Mapper, Vkczxzy0001> implements Vkczxzy0001Service {
}

View File

@ -1,11 +1,17 @@
package org.jeecg.modules.demo.zyHuizong.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.jeecg.modules.demo.xxhbjwxtjxrw.entity.Xxhbjwxtjxrw;
import org.jeecg.modules.demo.zyHuizong.entity.ZyHuizong;
import org.jeecg.modules.demo.zyHuizong.mapper.ZyHuizongMapper;
import org.jeecg.modules.demo.zyHuizong.service.IZyHuizongService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collection;
import java.util.List;
/**
* @Description: 作业汇总
@ -16,4 +22,13 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@Service
public class ZyHuizongServiceImpl extends ServiceImpl<ZyHuizongMapper, ZyHuizong> implements IZyHuizongService {
@Override
public void syncList(List<ZyHuizong> outDataList) {
syncList(outDataList, true);
}
@Transactional(rollbackFor = {Exception.class})
public boolean syncList(Collection<ZyHuizong> entityList, boolean isDelete) {
return this.saveBatch(entityList, 1000);
}
}

View File

@ -0,0 +1,132 @@
package org.jeecg.modules.demo.zyHuizongXiangxi.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* @Description: 作业汇总详细
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
@Data
@TableName("v_kczx_zy_0002")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="v_kczx_zy_0002对象", description="原试图作业汇总详细")
public class Vkczxzy0002 implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private String id;
/**学年续期*/
@Excel(name = "学年续期", width = 15)
@ApiModelProperty(value = "学年续期")
private String xnxq;
/**学院编号*/
@Excel(name = "学院编号", width = 15)
@ApiModelProperty(value = "学院编号")
private String xybh;
/**学院名称*/
@Excel(name = "学院名称", width = 15)
@ApiModelProperty(value = "学院名称")
private String xymc;
/**任务编号*/
@Excel(name = "任务编号", width = 15)
@ApiModelProperty(value = "任务编号")
private String rwbh;
/**课程名称*/
@Excel(name = "课程名称", width = 15)
@ApiModelProperty(value = "课程名称")
private String kcmc;
/**教工号*/
@Excel(name = "教工号", width = 15)
@ApiModelProperty(value = "教工号")
private String jgh;
/**授课教师*/
@Excel(name = "授课教师", width = 15)
@ApiModelProperty(value = "授课教师")
private String skjs;
/**作业编号*/
@Excel(name = "作业编号", width = 15)
@ApiModelProperty(value = "作业编号")
private String zybh;
/**作业名称*/
@Excel(name = "作业名称", width = 15)
@ApiModelProperty(value = "作业名称")
private String zymc;
/**占比*/
@Excel(name = "占比", width = 15)
@ApiModelProperty(value = "占比")
private String qmzb;
/**学生学号*/
@Excel(name = "学生学号", width = 15)
@ApiModelProperty(value = "学生学号")
private String xsxh;
/**学生姓名*/
@Excel(name = "学生姓名", width = 15)
@ApiModelProperty(value = "学生姓名")
private String xsxm;
/**维普检测率*/
@Excel(name = "维普检测率", width = 15)
@ApiModelProperty(value = "维普检测率")
private String wpzyk;
/**学校检测率*/
@Excel(name = "学校检测率", width = 15)
@ApiModelProperty(value = "学校检测率")
private String xxzyk;
/**本次检测率*/
@Excel(name = "本次检测率", width = 15)
@ApiModelProperty(value = "本次检测率")
private String bczyk;
/**aigc检测率*/
@Excel(name = "aigc检测率", width = 15)
@ApiModelProperty(value = "aigc检测率")
private String aigc;
/**作业分数*/
@Excel(name = "作业分数", width = 15)
@ApiModelProperty(value = "作业分数")
private String zyfs;
/**作业*/
@Excel(name = "作业", width = 15)
@ApiModelProperty(value = "作业")
private String filePath;
/**pdf内容*/
@Excel(name = "pdf内容", width = 15)
@ApiModelProperty(value = "pdf内容")
private String pdfPath;
/**发布时间*/
@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 Date publishTime;
/**是否上传考核*/
@Excel(name = "是否上传考核", width = 15)
@ApiModelProperty(value = "是否上传考核")
private String sfsckhcl;
/**服务器附件地址*/
@Excel(name = "服务器附件地址", width = 15)
@ApiModelProperty(value = "服务器附件地址")
private String fwqPath;
/**考核材料上传时间*/
@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 Date khclTime;
}

View File

@ -0,0 +1,15 @@
package org.jeecg.modules.demo.zyHuizongXiangxi.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.demo.zyHuizongXiangxi.entity.Vkczxzy0002;
import org.jeecg.modules.demo.zyHuizongXiangxi.entity.ZyHuizongXiangxi;
/**
* @Description: 作业汇总详细
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
public interface Vkczxzy0002Mapper extends BaseMapper<Vkczxzy0002> {
}

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.demo.zyHuizongXiangxi.mapper.Vkczxzy0002Mapper">
</mapper>

View File

@ -3,6 +3,8 @@ package org.jeecg.modules.demo.zyHuizongXiangxi.service;
import org.jeecg.modules.demo.zyHuizongXiangxi.entity.ZyHuizongXiangxi;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* @Description: 作业汇总详细
* @Author: jeecg-boot
@ -11,4 +13,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface IZyHuizongXiangxiService extends IService<ZyHuizongXiangxi> {
void syncList(List<ZyHuizongXiangxi> out1DataList);
}

View File

@ -0,0 +1,15 @@
package org.jeecg.modules.demo.zyHuizongXiangxi.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.demo.zyHuizongXiangxi.entity.Vkczxzy0002;
import org.jeecg.modules.demo.zyHuizongXiangxi.entity.ZyHuizongXiangxi;
/**
* @Description: 作业汇总详细
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
public interface Vkczxzy0002Service extends IService<Vkczxzy0002> {
}

View File

@ -0,0 +1,23 @@
package org.jeecg.modules.demo.zyHuizongXiangxi.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.demo.zyHuizongXiangxi.entity.Vkczxzy0002;
import org.jeecg.modules.demo.zyHuizongXiangxi.entity.ZyHuizongXiangxi;
import org.jeecg.modules.demo.zyHuizongXiangxi.mapper.Vkczxzy0002Mapper;
import org.jeecg.modules.demo.zyHuizongXiangxi.mapper.ZyHuizongXiangxiMapper;
import org.jeecg.modules.demo.zyHuizongXiangxi.service.IZyHuizongXiangxiService;
import org.jeecg.modules.demo.zyHuizongXiangxi.service.Vkczxzy0002Service;
import org.springframework.stereotype.Service;
/**
* @Description: 作业汇总详细
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
@Service
@DS("multi-datasource1")
public class Vkczxzy0002Impl extends ServiceImpl<Vkczxzy0002Mapper, Vkczxzy0002> implements Vkczxzy0002Service {
}

View File

@ -1,11 +1,16 @@
package org.jeecg.modules.demo.zyHuizongXiangxi.service.impl;
import org.jeecg.modules.demo.zyHuizong.entity.ZyHuizong;
import org.jeecg.modules.demo.zyHuizongXiangxi.entity.ZyHuizongXiangxi;
import org.jeecg.modules.demo.zyHuizongXiangxi.mapper.ZyHuizongXiangxiMapper;
import org.jeecg.modules.demo.zyHuizongXiangxi.service.IZyHuizongXiangxiService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collection;
import java.util.List;
/**
* @Description: 作业汇总详细
@ -16,4 +21,13 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@Service
public class ZyHuizongXiangxiServiceImpl extends ServiceImpl<ZyHuizongXiangxiMapper, ZyHuizongXiangxi> implements IZyHuizongXiangxiService {
@Override
public void syncList(List<ZyHuizongXiangxi> out1DataList) {
syncList(out1DataList, true);
}
@Transactional(rollbackFor = {Exception.class})
public boolean syncList(Collection<ZyHuizongXiangxi> entityList, boolean isDelete) {
return this.saveBatch(entityList, 1000);
}
}

View File

@ -0,0 +1,114 @@
package org.jeecg.modules.demo.zyInfoScjl.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* @Description: 作业上传记录
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
@Data
@TableName("zy_info_scjl")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="zy_info_scjl对象", description="作业上传记录")
public class ZyInfoScjlOld implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private String id;
/**createTime*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "createTime")
private Date createTime;
/**createBy*/
@ApiModelProperty(value = "createBy")
private String createBy;
/**updateTime*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "updateTime")
private Date updateTime;
/**updateBy*/
@ApiModelProperty(value = "updateBy")
private String updateBy;
/**作业id*/
@Excel(name = "作业id", width = 15)
@ApiModelProperty(value = "作业id")
private String zyId;
/**作业名称*/
@Excel(name = "作业名称", width = 15)
@ApiModelProperty(value = "作业名称")
private String zyName;
/**作业类型*/
@Excel(name = "作业类型", width = 15, dicCode = "zy_leixing")
@Dict(dicCode = "zy_leixing")
@ApiModelProperty(value = "作业类型")
private String zyLeixing;
/**占比*/
@Excel(name = "占比", width = 15)
@ApiModelProperty(value = "占比")
private String zyZb;
/**开课单位*/
@Excel(name = "开课单位", width = 15)
@ApiModelProperty(value = "开课单位")
private String kkdw;
/**开课单位id*/
@Excel(name = "开课单位id", width = 15)
@ApiModelProperty(value = "开课单位id")
private String kkdwid;
/**课程名称*/
@Excel(name = "课程名称", width = 15)
@ApiModelProperty(value = "课程名称")
private String kcmc;
/**教工号*/
@Excel(name = "教工号", width = 15)
@ApiModelProperty(value = "教工号")
private String jgh;
/**授课教师*/
@Excel(name = "授课教师", width = 15)
@ApiModelProperty(value = "授课教师")
private String skjs;
/**授课地点*/
@Excel(name = "授课地点", width = 15)
@ApiModelProperty(value = "授课地点")
private String skdd;
/**课程性质*/
@Excel(name = "课程性质", width = 15)
@ApiModelProperty(value = "课程性质")
private String kcxz;
/**学年学期*/
@Excel(name = "学年学期", width = 15)
@ApiModelProperty(value = "学年学期")
private String xnxq;
/**文件*/
@Excel(name = "文件", width = 15)
@ApiModelProperty(value = "文件")
private String filePath;
/**学工号*/
@Excel(name = "学工号", width = 15)
@ApiModelProperty(value = "学工号")
private String studentNo;
/**学生姓名*/
@Excel(name = "学生姓名", width = 15)
@ApiModelProperty(value = "学生姓名")
private String studentName;
}

View File

@ -0,0 +1,15 @@
package org.jeecg.modules.demo.zyInfoScjl.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.demo.zyInfoScjl.entity.ZyInfoScjl;
import org.jeecg.modules.demo.zyInfoScjl.entity.ZyInfoScjlOld;
/**
* @Description: 作业上传记录
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
public interface ZyInfoScjlOldMapper extends BaseMapper<ZyInfoScjlOld> {
}

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.demo.zyInfoScjl.mapper.ZyInfoScjlOldMapper">
</mapper>

View File

@ -0,0 +1,15 @@
package org.jeecg.modules.demo.zyInfoScjl.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.demo.zyInfoScjl.entity.ZyInfoScjl;
import org.jeecg.modules.demo.zyInfoScjl.entity.ZyInfoScjlOld;
/**
* @Description: 作业上传记录
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
public interface IZyInfoScjlOldService extends IService<ZyInfoScjlOld> {
}

View File

@ -3,6 +3,8 @@ package org.jeecg.modules.demo.zyInfoScjl.service;
import org.jeecg.modules.demo.zyInfoScjl.entity.ZyInfoScjl;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* @Description: 作业上传记录
* @Author: jeecg-boot
@ -11,4 +13,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface IZyInfoScjlService extends IService<ZyInfoScjl> {
void syncList(List<ZyInfoScjl> out2DataList);
}

View File

@ -0,0 +1,23 @@
package org.jeecg.modules.demo.zyInfoScjl.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.demo.zyInfoScjl.entity.ZyInfoScjl;
import org.jeecg.modules.demo.zyInfoScjl.entity.ZyInfoScjlOld;
import org.jeecg.modules.demo.zyInfoScjl.mapper.ZyInfoScjlMapper;
import org.jeecg.modules.demo.zyInfoScjl.mapper.ZyInfoScjlOldMapper;
import org.jeecg.modules.demo.zyInfoScjl.service.IZyInfoScjlOldService;
import org.jeecg.modules.demo.zyInfoScjl.service.IZyInfoScjlService;
import org.springframework.stereotype.Service;
/**
* @Description: 作业上传记录
* @Author: jeecg-boot
* @Date: 2024-09-03
* @Version: V1.0
*/
@Service
@DS("multi-datasource1")
public class ZyInfoScjlOldServiceImpl extends ServiceImpl<ZyInfoScjlOldMapper, ZyInfoScjlOld> implements IZyInfoScjlOldService {
}

View File

@ -1,11 +1,16 @@
package org.jeecg.modules.demo.zyInfoScjl.service.impl;
import org.jeecg.modules.demo.zyHuizongXiangxi.entity.ZyHuizongXiangxi;
import org.jeecg.modules.demo.zyInfoScjl.entity.ZyInfoScjl;
import org.jeecg.modules.demo.zyInfoScjl.mapper.ZyInfoScjlMapper;
import org.jeecg.modules.demo.zyInfoScjl.service.IZyInfoScjlService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collection;
import java.util.List;
/**
* @Description: 作业上传记录
@ -16,4 +21,13 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@Service
public class ZyInfoScjlServiceImpl extends ServiceImpl<ZyInfoScjlMapper, ZyInfoScjl> implements IZyInfoScjlService {
@Override
public void syncList(List<ZyInfoScjl> out2DataList) {
syncList(out2DataList, true);
}
@Transactional(rollbackFor = {Exception.class})
public boolean syncList(Collection<ZyInfoScjl> entityList, boolean isDelete) {
return this.saveBatch(entityList, 1000);
}
}

View File

@ -161,16 +161,16 @@ spring:
slow-sql-millis: 5000
datasource:
master:
url: jdbc:mysql://127.0.0.1:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
url: jdbc:mysql://127.0.0.1:3306/dbsd_zjpt?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
username: root
password: root
password: abcAbc@123
driver-class-name: com.mysql.cj.jdbc.Driver
# 多数据源配置
#multi-datasource1:
#url: jdbc:mysql://localhost:3306/jeecg-boot2?useUnicode=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
#username: root
#password: root
#driver-class-name: com.mysql.cj.jdbc.Driver
multi-datasource1:
url: jdbc:mysql://210.47.16.197:3306/course_information_center_jeecg_db?useUnicode=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
username: root
password: ABCabc@123
driver-class-name: com.mysql.cj.jdbc.Driver
#redis 配置
redis:
database: 0
@ -269,7 +269,7 @@ jeecg:
enabled: true
#cas单点登录
cas:
prefixUrl: http://cas.example.org:8443/cas
prefixUrl: https://authserver.nenu.edu.cn/authserver
#Mybatis输出sql日志
logging:
level:

View File

@ -8,7 +8,7 @@ VITE_GLOB_APP_TITLE = 东北师大-专家督导平台
VITE_GLOB_APP_SHORT_NAME = 专家督导平台
# 单点登录服务端地址
VITE_GLOB_APP_CAS_BASE_URL=http://cas.test.com:8443/cas
VITE_GLOB_APP_CAS_BASE_URL=https://authserver.nenu.edu.cn/authserver
# 是否开启单点登录
VITE_GLOB_APP_OPEN_SSO = false

View File

@ -13,10 +13,10 @@ VITE_BUILD_COMPRESS = 'gzip'
VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE = false
#后台接口父地址(必填)
VITE_GLOB_API_URL=/jeecgboot
VITE_GLOB_API_URL=/jeecg-boot
#后台接口全路径地址(必填)
VITE_GLOB_DOMAIN_URL=http://jeecg-boot-system:8080/jeecg-boot
VITE_GLOB_DOMAIN_URL=http://jxdd.nenu.edu.cn/jeecg-boot
# 接口父路径前缀
VITE_GLOB_API_URL_PREFIX=

Binary file not shown.

After

Width:  |  Height:  |  Size: 202 KiB

View File

@ -0,0 +1,24 @@
<template>
<div class="p-2">
<a-tabs v-model:activeKey="activeKey">
<a-tab-pane key="1" tab="作业列表">
<ZyHuizongList />
<ZyHuizongXiangxiList />
</a-tab-pane>
<a-tab-pane key="2" tab="成绩列表">
</a-tab-pane>
</a-tabs>
</div>
</template>
<script lang="ts" name="zyHuizong-zyHuizong" setup>
import { ref } from 'vue';
import ZyHuizongList from '/@/views/bl/zyHuizong/ZyHuizongList.vue'
import ZyHuizongXiangxiList from '/@/views/bl/zyHuizongXiangxi/ZyHuizongXiangxiList.vue'
const activeKey = ref('1');
</script>
<style lang="less" scoped>
</style>

View File

@ -1,6 +1,7 @@
<template>
<div>
这是专家平台首页
<div style="text-align: center;">
<img src="../../../assets/images/welcome.png" style="margin-top: 50px;"/>
<div style="font-size: 20px;line-height: 30px;font-weight: 700;margin-top: 50px;">欢迎登录东北师大专家督导平台</div>
</div>
</template>
<script lang="ts" setup>

View File

@ -122,8 +122,8 @@
const rememberMe = ref(false);
const formData = reactive({
account: 'admin',
password: '123456',
account: '',
password: '',
inputCode: '',
});
const randCodeData = reactive({

View File

@ -194,8 +194,8 @@
//
const formData = reactive<any>({
inputCode: '',
username: 'admin',
password: '123456',
username: '',
password: '',
});
//
const phoneFormData = reactive<any>({