diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKetangbiaoController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKetangbiaoController.java index 5a7a3d82..d44afe6c 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKetangbiaoController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/ktgl/controller/KcKetangbiaoController.java @@ -513,6 +513,7 @@ public class KcKetangbiaoController extends JeecgController hhks THEN 1 END ) zzsknum"//【上课中】 ); qw.eq("skrq",skrq); + qw.eq("is_delete","0"); List> kcKetangbiaoList = kcKetangbiaoService.listMaps(qw); if(kcKetangbiaoList != null && !kcKetangbiaoList.isEmpty()){ rmap.put("jinRiKeTang",kcKetangbiaoList.get(0)); @@ -537,6 +538,7 @@ public class KcKetangbiaoController extends JeecgController= + qw3.eq("is_delete","0"); List> kcKetangbiao3List = kcKetangbiaoService.listMaps(qw3); if(kcKetangbiao3List != null && !kcKetangbiao3List.isEmpty()){ rmap.put("yiKaiKeTang",kcKetangbiao3List.get(0)); diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxxTmlb/controller/WjxWjxxTmlbController.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxxTmlb/controller/WjxWjxxTmlbController.java index 3dfa832e..2333d383 100644 --- a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxxTmlb/controller/WjxWjxxTmlbController.java +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxxTmlb/controller/WjxWjxxTmlbController.java @@ -18,6 +18,7 @@ import org.jeecg.modules.kc.grab.imports.entity.Xxhbbks; import org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxx; import org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxxDj; import org.jeecg.modules.kc.wjxDjxx.service.IWjxDjxxService; +import org.jeecg.modules.kc.wjxWjxxTmlb.vo.WjxWjxxImportPage; import org.jeecg.modules.kc.wjxWjxxTmlb.vo.WjxWjxxTmlbAddPage; import org.jeecg.modules.kc.zyInfoStudent.entity.ZyInfoStudent; import org.jeecg.modules.kc.zyInfoStudent.service.IZyInfoStudentService; @@ -445,4 +446,120 @@ public class WjxWjxxTmlbController extends JeecgController importTmlbExcel(HttpServletRequest request, HttpServletResponse response) { + MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; + String mainId = request.getParameter("mainId"); + Map fileMap = multipartRequest.getFileMap(); + for (Map.Entry entity : fileMap.entrySet()) { + // 获取上传文件对象 + MultipartFile file = entity.getValue(); + ImportParams params = new ImportParams(); + params.setTitleRows(2); + params.setHeadRows(1); + params.setNeedSave(true); + try { + List list = ExcelImportUtil.importExcel(file.getInputStream(), WjxWjxxImportPage.class, params); + int i=0; + for (WjxWjxxImportPage page : list) { + i = i+1; + WjxWjxxTmlb po = new WjxWjxxTmlb(); + po.setWjLeixing("6"); + po.setWjTitle(page.getWjTitle()); + po.setWjType(page.getWjType()); + po.setWjIndex(i); + po.setWjScore(page.getWjScore()); + if(StringUtils.isNotBlank(mainId)){ + po.setMainId(mainId); + } + List wjxWjxxTmxxList = new ArrayList<>(); + if(StringUtils.equals(page.getWjType()+"","5")){ + String ansA = page.getWjAnswer(); + po.setWjAnswer(ansA); + }else{ + String ansA = page.getAnsA(); + String ansB = page.getAnsB(); + String ansC = page.getAnsC(); + String ansD = page.getAnsD(); + String ansE = page.getAnsE(); + String ansF = page.getAnsF(); + String wjAnswer = page.getWjAnswer();//正确答案 + if(StringUtils.isNotBlank(ansA)){ + WjxWjxxTmxx wjxWjxxTmxx = new WjxWjxxTmxx(); + wjxWjxxTmxx.setWjIndex(po.getWjIndex()); + wjxWjxxTmxx.setItemIndex(1); + wjxWjxxTmxx.setItemTitle(ansA); + if(StringUtils.equals(page.getWjType()+"","3")){ + wjxWjxxTmxx.setItemSelected(wjAnswer.indexOf("A")>-1?"true":"false"); + }else{ + wjxWjxxTmxx.setItemSelected(wjAnswer.indexOf("A")>-1?"true":"false"); + } + wjxWjxxTmxxList.add(wjxWjxxTmxx); + } + if(StringUtils.isNotBlank(ansB)){ + WjxWjxxTmxx wjxWjxxTmxx = new WjxWjxxTmxx(); + wjxWjxxTmxx.setWjIndex(po.getWjIndex()); + wjxWjxxTmxx.setItemIndex(2); + wjxWjxxTmxx.setItemTitle(ansB); + wjxWjxxTmxx.setItemSelected(wjAnswer.indexOf("B")>-1?"true":"false"); + wjxWjxxTmxxList.add(wjxWjxxTmxx); + } + if(StringUtils.isNotBlank(ansC)){ + WjxWjxxTmxx wjxWjxxTmxx = new WjxWjxxTmxx(); + wjxWjxxTmxx.setWjIndex(po.getWjIndex()); + wjxWjxxTmxx.setItemIndex(3); + wjxWjxxTmxx.setItemTitle(ansC); + wjxWjxxTmxx.setItemSelected(wjAnswer.indexOf("C")>-1?"true":"false"); + wjxWjxxTmxxList.add(wjxWjxxTmxx); + } + if(StringUtils.isNotBlank(ansD)){ + WjxWjxxTmxx wjxWjxxTmxx = new WjxWjxxTmxx(); + wjxWjxxTmxx.setWjIndex(po.getWjIndex()); + wjxWjxxTmxx.setItemIndex(4); + wjxWjxxTmxx.setItemTitle(ansD); + wjxWjxxTmxx.setItemSelected(wjAnswer.indexOf("D")>-1?"true":"false"); + wjxWjxxTmxxList.add(wjxWjxxTmxx); + } + if(StringUtils.isNotBlank(ansE)){ + WjxWjxxTmxx wjxWjxxTmxx = new WjxWjxxTmxx(); + wjxWjxxTmxx.setWjIndex(po.getWjIndex()); + wjxWjxxTmxx.setItemIndex(5); + wjxWjxxTmxx.setItemTitle(ansE); + wjxWjxxTmxx.setItemSelected(wjAnswer.indexOf("E")>-1?"true":"false"); + wjxWjxxTmxxList.add(wjxWjxxTmxx); + } + if(StringUtils.isNotBlank(ansF)){ + WjxWjxxTmxx wjxWjxxTmxx = new WjxWjxxTmxx(); + wjxWjxxTmxx.setWjIndex(po.getWjIndex()); + wjxWjxxTmxx.setItemIndex(6); + wjxWjxxTmxx.setItemTitle(ansF); + wjxWjxxTmxx.setItemSelected(wjAnswer.indexOf("F")>-1?"true":"false"); + wjxWjxxTmxxList.add(wjxWjxxTmxx); + } + } + wjxWjxxTmlbService.saveMain(po, wjxWjxxTmxxList); + } + return Result.OK("文件导入成功!数据行数:" + list.size()); + } catch (Exception e) { + log.error(e.getMessage(),e); + return Result.error("文件导入失败:"+e.getMessage()); + } finally { + try { + file.getInputStream().close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + return Result.OK("文件导入失败!"); + } + } diff --git a/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxxTmlb/vo/WjxWjxxImportPage.java b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxxTmlb/vo/WjxWjxxImportPage.java new file mode 100644 index 00000000..00af0daa --- /dev/null +++ b/jeecg-module-main/src/main/java/org/jeecg/modules/kc/wjxWjxxTmlb/vo/WjxWjxxImportPage.java @@ -0,0 +1,76 @@ +package org.jeecg.modules.kc.wjxWjxxTmlb.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.jeecg.common.aspect.annotation.Dict; +import org.jeecg.modules.kc.wjxWjxxTmlb.entity.WjxWjxxTmxx; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecgframework.poi.excel.annotation.ExcelCollection; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; +import java.util.List; + +/** + * @Description: 题目信息 + * @Author: jeecg-boot + * @Date: 2024-04-26 + * @Version: V1.0 + */ +@Data +public class WjxWjxxImportPage { + + /**id*/ + @ApiModelProperty(value = "id") + private String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private String createBy; + /**创建时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "创建时间") + private Date createTime; + /**修改人*/ + @ApiModelProperty(value = "修改人") + private String updateBy; + /**修改时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "修改时间") + private Date updateTime; + /**题目类型*/ + @Excel(name = "题目类型", width = 15,dicCode = "wj_type") + @Dict(dicCode = "wj_type") + private Integer wjType; + /**问题标题*/ + @Excel(name = "问题标题", width = 15) + private String wjTitle; + /**问题分值*/ + @Excel(name = "问题分值", width = 15) + private Double wjScore; + /**正确答案*/ + @Excel(name = "正确答案", width = 15) + private String wjAnswer; + /**正确答案*/ + @Excel(name = "问题A", width = 15) + private String ansA; + /**正确答案*/ + @Excel(name = "问题B", width = 15) + private String ansB; + /**正确答案*/ + @Excel(name = "问题C", width = 15) + private String ansC; + /**正确答案*/ + @Excel(name = "问题D", width = 15) + private String ansD; + /**正确答案*/ + @Excel(name = "问题E", width = 15) + private String ansE; + /**正确答案*/ + @Excel(name = "问题F", width = 15) + private String ansF; + +}