diff --git a/tz/common/common-core/pom.xml b/tz/common/common-core/pom.xml
index 5eee738..e68741c 100644
--- a/tz/common/common-core/pom.xml
+++ b/tz/common/common-core/pom.xml
@@ -101,6 +101,12 @@
org.springframework.boot
spring-boot-starter-web
+
+ jakarta.persistence
+ jakarta.persistence-api
+ 2.2.3
+ compile
+
diff --git a/tz/common/common-core/src/main/java/com/tz/platform/common/core/base/BaseController.java b/tz/common/common-core/src/main/java/com/tz/platform/common/core/base/BaseController.java
index c9b2d48..6bcd8a0 100644
--- a/tz/common/common-core/src/main/java/com/tz/platform/common/core/base/BaseController.java
+++ b/tz/common/common-core/src/main/java/com/tz/platform/common/core/base/BaseController.java
@@ -1,16 +1,23 @@
package com.tz.platform.common.core.base;
+import com.auth0.jwt.interfaces.DecodedJWT;
import com.tz.platform.common.core.tools.JSUtil;
+import com.tz.platform.common.core.tools.JWTUtil;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.ui.ModelMap;
+import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.ModelAttribute;
+import javax.persistence.MappedSuperclass;
import javax.servlet.http.HttpServletRequest;
import java.io.DataInputStream;
import java.io.IOException;
+import java.io.UnsupportedEncodingException;
import java.text.MessageFormat;
import java.util.Map;
import java.util.TreeMap;
+@MappedSuperclass
public class BaseController extends Base {
public static final String TEXT_UTF8 = "text/html;charset=UTF-8";
public static final String JSON_UTF8 = "application/json;charset=UTF-8";
@@ -22,6 +29,9 @@ public class BaseController extends Base {
public static final boolean CLOSE = true;
public static final boolean OPEN = false;
+ @Autowired
+ private HttpServletRequest request;
+
@ModelAttribute
public void enums(ModelMap modelMap) {
@@ -38,6 +48,20 @@ public class BaseController extends Base {
return new StringBuffer("redirect:").append(MessageFormat.format(format, arguments)).toString();
}
+ public Long getUserNo(){
+ String token = request.getHeader("Tz-Token");
+ if(StringUtils.isEmpty(token)){
+ throw new BaseException("没有权限");
+ }
+ try {
+ DecodedJWT d = JWTUtil.verify(token);
+ return JWTUtil.getUserNo(d);
+ } catch (UnsupportedEncodingException e) {
+ e.printStackTrace();
+ throw new BaseException("权限认证失败");
+ }
+ }
+
public static String getString(HttpServletRequest request) {
DataInputStream in = null;
try {
diff --git a/tz/common/common-core/src/main/java/com/tz/platform/common/core/bo/MemberImport.java b/tz/common/common-core/src/main/java/com/tz/platform/common/core/bo/MemberImport.java
new file mode 100644
index 0000000..271e06f
--- /dev/null
+++ b/tz/common/common-core/src/main/java/com/tz/platform/common/core/bo/MemberImport.java
@@ -0,0 +1,11 @@
+package com.tz.platform.common.core.bo;
+
+import lombok.Data;
+
+@Data
+public class MemberImport {
+ private Long createId;
+ private String studentNo;
+ private String name;
+ private String school;
+}
diff --git a/tz/common/common-core/src/main/java/com/tz/platform/common/core/tools/ExcelUtil.java b/tz/common/common-core/src/main/java/com/tz/platform/common/core/tools/ExcelUtil.java
index c5c4eee..40e628b 100644
--- a/tz/common/common-core/src/main/java/com/tz/platform/common/core/tools/ExcelUtil.java
+++ b/tz/common/common-core/src/main/java/com/tz/platform/common/core/tools/ExcelUtil.java
@@ -12,6 +12,7 @@ import java.awt.Color;
import java.io.*;
import java.lang.reflect.Field;
import java.math.BigDecimal;
+import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
@@ -22,9 +23,10 @@ import java.util.regex.Pattern;
public class ExcelUtil {
private String templatePath ;
private String outPath;
+ Pattern pattern = Pattern.compile("([A-Z]+)(\\d+)");
private FileInputStream is;
- private XSSFWorkbook excel ;
+ private XSSFWorkbook excel;
//获取第一个sheet
private XSSFSheet sheet0 ;
@@ -174,7 +176,7 @@ public class ExcelUtil {
}
public Cell get(String location){
- Pattern pattern = Pattern.compile("([A-Z]+)(\\d+)");
+
Matcher matcher = pattern.matcher(location.toUpperCase());
if(matcher.matches()){
String y = matcher.group(1);
@@ -183,7 +185,6 @@ public class ExcelUtil {
int colNum = covertToYIndex(y);
Row row = getRow(rowNum);
return getCell(row,colNum);
-
}
return null;
}
@@ -321,24 +322,20 @@ public class ExcelUtil {
if(cell == null) {return "";}
- if(cell.getCellType() == Cell.CELL_TYPE_STRING){
-
+ if(cell.getCellTypeEnum() == CellType.STRING){
return cell.getStringCellValue();
-
- }else if(cell.getCellType() == Cell.CELL_TYPE_BOOLEAN){
-
+ }else if(cell.getCellTypeEnum() ==CellType.BOOLEAN){
return String.valueOf(cell.getBooleanCellValue());
-
- }else if(cell.getCellType() == Cell.CELL_TYPE_FORMULA){
-
+ }else if(cell.getCellTypeEnum() ==CellType.FORMULA){
return cell.getCellFormula() ;
-
- }else if(cell.getCellType() == Cell.CELL_TYPE_NUMERIC){
- String dateTime = getDateTime(cell);
- if(StringUtils.isEmpty(dateTime)){
- return String.valueOf(cell.getNumericCellValue());
+ }else if(cell.getCellTypeEnum() == CellType.NUMERIC){
+ if("General".equals(cell.getCellStyle().getDataFormatString())){
+ BigDecimal bigDecimal = new BigDecimal(cell.getNumericCellValue());
+ return bigDecimal.toString();
+ }else{
+ String dateTime = getDateTime(cell);
+ return dateTime;
}
- return dateTime;
}
return "";
}
@@ -428,10 +425,8 @@ public class ExcelUtil {
if(pv!=null&&pv.length>0){
this.parserValue = pv[0];
}
-
}
-
/**
* 列名
* @return
@@ -473,4 +468,29 @@ public class ExcelUtil {
public interface ParserValue{
String parser(Object object);
}
+
+ public static void main(String[] args) {
+ File file = new File("/Users/tianchengjun/Desktop/teamTemplate.xlsx");
+ try {
+ ExcelUtil util =new ExcelUtil(new FileInputStream(file));
+ int rowNum = util.getLastRowNum();
+ for(int r = 2;r <=rowNum;r++){
+ Row row = util.getRow(r);
+ int start = row.getFirstCellNum();
+ int end = row.getLastCellNum();
+ for(int i = start;i uploadExcel(MultipartFile file,Long competitionId,Integer stageId){
+ long userNo = getUserNo();
+ System.out.println(userNo);
+ System.out.println(file.getOriginalFilename());
+ return biz.excelImport(file,userNo,competitionId,stageId);
+ }
+}
diff --git a/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/CompetitionTaskController.java b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/CompetitionTaskController.java
index bdcfd39..3813d5d 100644
--- a/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/CompetitionTaskController.java
+++ b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/CompetitionTaskController.java
@@ -4,9 +4,11 @@ import com.tz.platform.common.core.base.Result;
import com.tz.platform.competitiion.pc.biz.PCTaskBiz;
import com.tz.platform.competitiion.pc.dto.ListTaskDTO;
import com.tz.platform.competitiion.pc.dto.TaskDTO;
+import com.tz.platform.competitiion.pc.vo.ListTaskVO;
import com.tz.platform.competitiion.pc.vo.TaskVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -18,22 +20,18 @@ public class CompetitionTaskController {
private PCTaskBiz biz;
@PostMapping(value = "add")
- public Result add(TaskVO vo){
+ public Result add(@RequestBody ListTaskVO vo){
return biz.save(vo);
}
- @PostMapping(value = "update")
- public Result update(TaskVO vo){
- return biz.save(vo);
- }
@PostMapping(value = "list")
- public Result list(TaskVO vo){
+ public Result list(@RequestBody TaskVO vo){
return biz.list(vo);
}
@PostMapping(value = "get")
- public Result get(TaskVO vo){
+ public Result get(@RequestBody TaskVO vo){
return biz.get(vo);
}
}
diff --git a/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/biz/PCTaskBiz.java b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/biz/PCTaskBiz.java
index e6f8843..83a56f6 100644
--- a/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/biz/PCTaskBiz.java
+++ b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/biz/PCTaskBiz.java
@@ -3,13 +3,16 @@ package com.tz.platform.competitiion.pc.biz;
import com.tz.platform.common.core.base.Result;
import com.tz.platform.competitiion.pc.dto.ListTaskDTO;
import com.tz.platform.competitiion.pc.dto.TaskDTO;
+import com.tz.platform.competitiion.pc.vo.ListTaskVO;
import com.tz.platform.competitiion.pc.vo.TaskVO;
import com.tz.platform.entity.CompetitionTask;
import com.tz.platform.repository.CompetitionTaskDao;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+import java.util.ArrayList;
import java.util.List;
@Component
@@ -17,18 +20,26 @@ public class PCTaskBiz {
@Autowired
private CompetitionTaskDao taskDao;
- public Result save(TaskVO vo){
- if(vo.getCompetitionId()==null|| vo.getCompetitionId() <=0){
- return Result.error("没有大赛信息");
- }
- if(vo.getStageId()==null||vo.getStageId() <=0){
- return Result.error("没有指定赛段");
- }
+ @Transactional
+ public Result save(ListTaskVO listTaskVO){
+ ListTaskDTO dto = new ListTaskDTO();
+ List taskList =new ArrayList<>();
+ for(int i=0;i get(TaskVO vo){
diff --git a/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/bo/TeamInfo.java b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/bo/TeamInfo.java
new file mode 100644
index 0000000..f8d7e05
--- /dev/null
+++ b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/bo/TeamInfo.java
@@ -0,0 +1,16 @@
+package com.tz.platform.competitiion.pc.bo;
+
+import com.tz.platform.common.core.bo.MemberImport;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class TeamInfo {
+ private String teamName;
+ private String teacher;
+ private String school;
+ private String level;
+ private String province;
+ private List memberList;
+}
diff --git a/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/dto/CompetitionDTO.java b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/dto/CompetitionDTO.java
index cb383b3..b2cef9e 100644
--- a/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/dto/CompetitionDTO.java
+++ b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/dto/CompetitionDTO.java
@@ -1,5 +1,6 @@
package com.tz.platform.competitiion.pc.dto;
+import com.tz.platform.common.core.bo.CompetitionNews;
import com.tz.platform.common.core.bo.Rotation;
import com.tz.platform.common.core.bo.Stage;
import lombok.Data;
@@ -24,5 +25,6 @@ public class CompetitionDTO implements Serializable {
private String summary;
private String rule;
private String prize;
- private String news;
+ private List news;
+ private List schoolNews;
}
diff --git a/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/vo/CompetitionVO.java b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/vo/CompetitionVO.java
index 135cf06..8b642a1 100644
--- a/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/vo/CompetitionVO.java
+++ b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/vo/CompetitionVO.java
@@ -1,5 +1,6 @@
package com.tz.platform.competitiion.pc.vo;
+import com.tz.platform.common.core.bo.CompetitionNews;
import com.tz.platform.common.core.bo.Rotation;
import com.tz.platform.common.core.bo.Stage;
import lombok.Data;
@@ -23,5 +24,6 @@ public class CompetitionVO implements Serializable {
private String summary;
private String rule;
private String prize;
- private String news;
+ private List news;
+ private List schoolNews;
}
diff --git a/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/vo/ListTaskVO.java b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/vo/ListTaskVO.java
new file mode 100644
index 0000000..94b8fe2
--- /dev/null
+++ b/tz/competition/competition-service/src/main/java/com/tz/platform/competitiion/pc/vo/ListTaskVO.java
@@ -0,0 +1,10 @@
+package com.tz.platform.competitiion.pc.vo;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ListTaskVO {
+ List list;
+}
diff --git a/tz/competition/competition-service/src/main/java/com/tz/platform/entity/CompetitionMember.java b/tz/competition/competition-service/src/main/java/com/tz/platform/entity/CompetitionMember.java
new file mode 100644
index 0000000..92c0518
--- /dev/null
+++ b/tz/competition/competition-service/src/main/java/com/tz/platform/entity/CompetitionMember.java
@@ -0,0 +1,27 @@
+package com.tz.platform.entity;
+
+import lombok.Data;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+
+@Entity
+@Data
+public class CompetitionMember {
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ private Integer id;
+ private Long competitionId;
+ private Long userId;
+ private Integer stageId;
+ private String studentNo;
+ private String name;
+ private String school;
+ private Integer teamId;
+
+
+
+}
diff --git a/tz/competition/competition-service/src/main/java/com/tz/platform/entity/CompetitionTask.java b/tz/competition/competition-service/src/main/java/com/tz/platform/entity/CompetitionTask.java
index 4763e7a..89d6e1d 100644
--- a/tz/competition/competition-service/src/main/java/com/tz/platform/entity/CompetitionTask.java
+++ b/tz/competition/competition-service/src/main/java/com/tz/platform/entity/CompetitionTask.java
@@ -34,5 +34,4 @@ public class CompetitionTask {
@Type(type = "json")
@Column(columnDefinition = "json")
private List questionList;
-
}
diff --git a/tz/competition/competition-service/src/main/java/com/tz/platform/repository/CompetitionMemberDao.java b/tz/competition/competition-service/src/main/java/com/tz/platform/repository/CompetitionMemberDao.java
new file mode 100644
index 0000000..ae1ed37
--- /dev/null
+++ b/tz/competition/competition-service/src/main/java/com/tz/platform/repository/CompetitionMemberDao.java
@@ -0,0 +1,10 @@
+package com.tz.platform.repository;
+
+import com.tz.platform.entity.CompetitionMember;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface CompetitionMemberDao extends JpaRepository {
+
+}
diff --git a/tz/competition/competition-service/src/main/java/com/tz/platform/repository/CompetitionTeamDao.java b/tz/competition/competition-service/src/main/java/com/tz/platform/repository/CompetitionTeamDao.java
new file mode 100644
index 0000000..21f91cf
--- /dev/null
+++ b/tz/competition/competition-service/src/main/java/com/tz/platform/repository/CompetitionTeamDao.java
@@ -0,0 +1,9 @@
+package com.tz.platform.repository;
+
+import com.tz.platform.entity.CompetitionTeam;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface CompetitionTeamDao extends JpaRepository {
+}
diff --git a/tz/exam/exam-service/src/main/java/com/tz/platform/entity/Question.java b/tz/exam/exam-service/src/main/java/com/tz/platform/entity/Question.java
index 13791c0..9bcd987 100644
--- a/tz/exam/exam-service/src/main/java/com/tz/platform/entity/Question.java
+++ b/tz/exam/exam-service/src/main/java/com/tz/platform/entity/Question.java
@@ -22,9 +22,9 @@ public class Question {
private Long id;
private Long courseId;
private String courseName;
- private Long levelId;
+ private Integer levelId;
private String levelName;
- private Long questionType;
+ private Integer questionType;
private String title;
private Long score;
private Integer type;
diff --git a/tz/exam/exam-service/src/main/java/com/tz/platform/pc/PCQuestionController.java b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/PCQuestionController.java
index c3e90da..172eed0 100644
--- a/tz/exam/exam-service/src/main/java/com/tz/platform/pc/PCQuestionController.java
+++ b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/PCQuestionController.java
@@ -2,12 +2,10 @@ package com.tz.platform.pc;
import com.tz.platform.common.core.base.Result;
import com.tz.platform.pc.biz.PCQuestionBiz;
+import com.tz.platform.pc.dto.ListQuestionDTO;
import com.tz.platform.pc.dto.PageQuestionDTO;
import com.tz.platform.pc.dto.QuestionDTO;
-import com.tz.platform.pc.vo.BatchQuestionVO;
-import com.tz.platform.pc.vo.PageQuestionVO;
-import com.tz.platform.pc.vo.QuestionUpdateVO;
-import com.tz.platform.pc.vo.QuestionVO;
+import com.tz.platform.pc.vo.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -50,4 +48,9 @@ public class PCQuestionController {
public Result batchUpate(@RequestBody BatchQuestionVO vo){
return questionBiz.batch(vo);
}
+
+ @PostMapping(value = "listByIds")
+ public Result listByIds(@RequestBody ListQuestionVO vo){
+ return questionBiz.listByIds(vo);
+ }
}
diff --git a/tz/exam/exam-service/src/main/java/com/tz/platform/pc/biz/PCQuestionBiz.java b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/biz/PCQuestionBiz.java
index 5f5e7db..0db233b 100644
--- a/tz/exam/exam-service/src/main/java/com/tz/platform/pc/biz/PCQuestionBiz.java
+++ b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/biz/PCQuestionBiz.java
@@ -4,22 +4,20 @@ import com.tz.platform.common.core.base.Result;
import com.tz.platform.entity.Question;
import com.tz.platform.feign.user.IFeignUser;
import com.tz.platform.feign.user.vo.UserVo;
+import com.tz.platform.pc.dto.ListQuestionDTO;
import com.tz.platform.pc.dto.PageQuestionDTO;
import com.tz.platform.pc.dto.QuestionDTO;
-import com.tz.platform.pc.vo.BatchQuestionVO;
-import com.tz.platform.pc.vo.PageQuestionVO;
-import com.tz.platform.pc.vo.QuestionUpdateVO;
-import com.tz.platform.pc.vo.QuestionVO;
+import com.tz.platform.pc.vo.*;
import com.tz.platform.repository.QuestionDao;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageRequest;
-import org.springframework.data.domain.Pageable;
+import org.springframework.data.domain.*;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
+import java.util.ArrayList;
import java.util.Date;
+import java.util.List;
@Component
public class PCQuestionBiz {
@@ -32,17 +30,34 @@ public class PCQuestionBiz {
public Result list(PageQuestionVO questionVO){
PageQuestionDTO questionDTO = new PageQuestionDTO();
- Pageable pageable = PageRequest.of(questionVO.getPageNo(),20);
+ Integer pageNo = questionVO.getPageNo()-1;
+ if(pageNo< 0){
+ pageNo = 0;
+ }
+ if(questionVO.getPageSize()==null){
+ questionVO.setPageSize(20);
+ }
+ Pageable pageable = PageRequest.of(pageNo,questionVO.getPageSize());
Page questions =null;
- if((questionVO.getCourseId() == null|| questionVO.getCourseId() == 0) && StringUtils.isEmpty(questionVO.getStem())){
- questions = questionDao.findAllByType(questionVO.getType(),pageable);
- }else if(questionVO.getCourseId()>0&&StringUtils.hasText(questionVO.getStem())){
- questions = questionDao.findAllByCourseIdAndStemAndType(questionVO.getCourseId(),questionVO.getStem(),questionVO.getType(),pageable);
- }else if(questionVO.getCourseId()>0){
- questions = questionDao.findAllByCourseIdAndType(questionVO.getCourseId(),questionVO.getType(),pageable);
- }else {
- questions = questionDao.findAllByStemAndType(questionVO.getStem(), questionVO.getType(),pageable);
+ Long questionId = 0L;
+ if(StringUtils.hasText(questionVO.getStem())){
+ String regex = "\\d+";
+ if(questionVO.getStem().matches(regex)){
+ questionId = Long.parseLong(questionVO.getStem());
+ List ids = new ArrayList<>();
+ ids.add(questionId);
+ questions = questionDao.findAllByIdIn(ids,pageable);
+ return Result.success(questionDTO.setPage(questions));
+ }
}
+ Question question = new Question();
+ BeanUtils.copyProperties(questionVO,question);
+ ExampleMatcher exampleMatcher = ExampleMatcher.matching().withIgnoreNullValues();
+ if(StringUtils.isEmpty(questionVO.getStem())){
+ exampleMatcher = exampleMatcher.withIgnorePaths("stem");
+ }
+ Example example = Example.of(question,exampleMatcher);
+ questions = questionDao.findAll( example ,pageable);
return Result.success(questionDTO.setPage(questions));
}
@@ -135,4 +150,11 @@ public class PCQuestionBiz {
questionDao.batchUpdate(vo.getStatus(),vo.getIds());
return Result.success("success");
}
+
+ public Result listByIds(ListQuestionVO vo){
+ List list = questionDao.findAllByIdIn(vo.getQuestionIds());
+ ListQuestionDTO dto = new ListQuestionDTO();
+ dto.setList(list);
+ return Result.success(dto);
+ }
}
diff --git a/tz/exam/exam-service/src/main/java/com/tz/platform/pc/dto/ListQuestionDTO.java b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/dto/ListQuestionDTO.java
new file mode 100644
index 0000000..a88411e
--- /dev/null
+++ b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/dto/ListQuestionDTO.java
@@ -0,0 +1,12 @@
+package com.tz.platform.pc.dto;
+
+import com.tz.platform.entity.Question;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+@Data
+public class ListQuestionDTO implements Serializable {
+ List list;
+}
diff --git a/tz/exam/exam-service/src/main/java/com/tz/platform/pc/vo/ListQuestionVO.java b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/vo/ListQuestionVO.java
new file mode 100644
index 0000000..835272f
--- /dev/null
+++ b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/vo/ListQuestionVO.java
@@ -0,0 +1,10 @@
+package com.tz.platform.pc.vo;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ListQuestionVO {
+ List questionIds;
+}
diff --git a/tz/exam/exam-service/src/main/java/com/tz/platform/repository/QuestionDao.java b/tz/exam/exam-service/src/main/java/com/tz/platform/repository/QuestionDao.java
index 3c713f7..1d081d5 100644
--- a/tz/exam/exam-service/src/main/java/com/tz/platform/repository/QuestionDao.java
+++ b/tz/exam/exam-service/src/main/java/com/tz/platform/repository/QuestionDao.java
@@ -1,6 +1,7 @@
package com.tz.platform.repository;
import com.tz.platform.entity.Question;
+import org.springframework.data.domain.Example;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
@@ -18,12 +19,6 @@ public interface QuestionDao extends JpaRepository {
Question getById(Long id);
Page findAll(Pageable pageable);
- Page findAllByCourseId(Long courseId,Pageable pageable);
-
- Page findAllByStem(String stem,Pageable pageable);
-
- Page findAllByCourseIdAndStem(Long courseId,String stem,Pageable pageable);
-
Page findAllByStemAndType(String stem,Integer type,Pageable pageable);
Page findAllByCourseIdAndType(Long courseId,Integer type,Pageable pageable);
@@ -32,10 +27,12 @@ public interface QuestionDao extends JpaRepository {
Page findAllByCourseIdAndStemAndType(Long courseId,String stem,Integer type ,Pageable pageable);
- Page findAllByCourseIdAndTypeAndQuestionTypeAndStemLike(Long courseId,Integer type,Integer questType,String stem,Pageable pageable);
-
Page findAllByIdIn(List id,Pageable pageable);
+ Page findAll(Example example,Pageable pageable);
+
+ List findAllByIdIn(List ids);
+
@Transactional
@Modifying
diff --git a/tz/exam/exam-service/src/test/java/com/tz/platform/repository/QuestionDaoTest.java b/tz/exam/exam-service/src/test/java/com/tz/platform/repository/QuestionDaoTest.java
index f38bf36..f42614e 100644
--- a/tz/exam/exam-service/src/test/java/com/tz/platform/repository/QuestionDaoTest.java
+++ b/tz/exam/exam-service/src/test/java/com/tz/platform/repository/QuestionDaoTest.java
@@ -26,10 +26,10 @@ public class QuestionDaoTest {
public void questionSaveTest(){
Question question = new Question();
question.setAnalysis("ffefadsf");
- question.setLevelId(1L);
+ question.setLevelId(1);
question.setTitle("测试题");
question.setLevelName("本科");
- question.setQuestionType(1L);
+ question.setQuestionType(1);
question.setScore(3L);
question.setStem("天是什么颜色");
List answerList = new ArrayList<>();
diff --git a/tz/gateway/src/main/java/com/tz/platform/gateway/filter/TzGlobalFilter.java b/tz/gateway/src/main/java/com/tz/platform/gateway/filter/TzGlobalFilter.java
index 32a9759..5626274 100644
--- a/tz/gateway/src/main/java/com/tz/platform/gateway/filter/TzGlobalFilter.java
+++ b/tz/gateway/src/main/java/com/tz/platform/gateway/filter/TzGlobalFilter.java
@@ -21,6 +21,8 @@ import org.springframework.core.io.buffer.DataBuffer;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
+import org.springframework.http.client.MultipartBodyBuilder;
+import org.springframework.http.codec.multipart.Part;
import org.springframework.http.server.reactive.ServerHttpRequest;
import org.springframework.http.server.reactive.ServerHttpRequestDecorator;
import org.springframework.stereotype.Component;
@@ -63,6 +65,7 @@ public class TzGlobalFilter implements GlobalFilter , Ordered {
return request(exchange, chain, modifiedBody(exchange));
}
+
if (uri.contains("/api")) {
// 路径存在关键词:/api,不鉴权
return chain.filter(exchange);
@@ -180,10 +183,7 @@ public class TzGlobalFilter implements GlobalFilter , Ordered {
private Mono modifiedBody(ServerWebExchange serverWebExchange,String name, Object value) {
MediaType mediaType = serverWebExchange.getRequest().getHeaders().getContentType();
ServerRequest serverRequest = ServerRequest.create(serverWebExchange, HandlerStrategies.withDefaults().messageReaders());
-
return serverRequest.bodyToMono(String.class).flatMap(body -> {
-
- logger.info(body);
JSONObject bodyJson;
if (MediaType.APPLICATION_FORM_URLENCODED.isCompatibleWith(mediaType)) {
Map bodyMap = decodeBody(body);
diff --git a/tz/upload/upload-service/src/main/java/com/tz/platform/image/pc/PcImageController.java b/tz/upload/upload-service/src/main/java/com/tz/platform/image/pc/PcImageController.java
index 88af0f6..729eb38 100644
--- a/tz/upload/upload-service/src/main/java/com/tz/platform/image/pc/PcImageController.java
+++ b/tz/upload/upload-service/src/main/java/com/tz/platform/image/pc/PcImageController.java
@@ -4,15 +4,13 @@ import com.tz.platform.common.core.base.BaseController;
import com.tz.platform.common.core.base.Result;
import com.tz.platform.image.pc.biz.PCImageBiz;
import com.tz.platform.image.pc.dto.ImageDTO;
-import com.tz.platform.image.pc.vo.ImageVo;
-import org.springframework.beans.MutablePropertyValues;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
+
@RestController
@RequestMapping(value = "/api/upload/image")
public class PcImageController extends BaseController {
@@ -20,8 +18,9 @@ public class PcImageController extends BaseController {
@Autowired
private PCImageBiz pcImageBiz;
+
@PostMapping(value = "upload")
public Result upload(MultipartFile file,Integer w,Integer h){
- return pcImageBiz.uploadImg(file,w,h);
+ return pcImageBiz.uploadImg(file,w,h,getUserNo());
}
}
diff --git a/tz/upload/upload-service/src/main/java/com/tz/platform/image/pc/biz/PCImageBiz.java b/tz/upload/upload-service/src/main/java/com/tz/platform/image/pc/biz/PCImageBiz.java
index 8afc637..b96e2ee 100644
--- a/tz/upload/upload-service/src/main/java/com/tz/platform/image/pc/biz/PCImageBiz.java
+++ b/tz/upload/upload-service/src/main/java/com/tz/platform/image/pc/biz/PCImageBiz.java
@@ -2,6 +2,7 @@ package com.tz.platform.image.pc.biz;
import com.tz.platform.common.core.base.Result;
import com.tz.platform.common.core.config.SystemUtil;
+import com.tz.platform.common.core.tools.JWTUtil;
import com.tz.platform.entity.Image;
import com.tz.platform.image.pc.dto.ImageDTO;
import com.tz.platform.repository.ImageDao;
@@ -20,9 +21,10 @@ public class PCImageBiz {
@Autowired
private ImageDao imageDao;
- public Result uploadImg(MultipartFile multipartFile,int w,int h){
+ public Result uploadImg(MultipartFile multipartFile,int w,int h,Long UserNo){
ImageDTO imageDTO = new ImageDTO();
Image image = new Image();
+ System.out.println(UserNo);
String fileName = System.currentTimeMillis()+"";
try {
Thumbnails.of(multipartFile.getResource().getInputStream()).size(w,h).outputFormat("png").toFile(SystemUtil.PIC_PATH+fileName);
diff --git a/tz/user/user-service/src/main/java/com/tz/platform/repository/UserDao.java b/tz/user/user-service/src/main/java/com/tz/platform/repository/UserDao.java
index dc067c7..57f20e3 100644
--- a/tz/user/user-service/src/main/java/com/tz/platform/repository/UserDao.java
+++ b/tz/user/user-service/src/main/java/com/tz/platform/repository/UserDao.java
@@ -4,8 +4,12 @@ import com.tz.platform.entity.User;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
+import java.util.List;
+
@Repository
public interface UserDao extends JpaRepository {
/**
@@ -31,4 +35,8 @@ public interface UserDao extends JpaRepository {
* @return 一页用户
*/
Page findAll(Pageable pageable);
+
+ Page findAllByUserType(Integer type,Pageable pageable);
+
+ List findAllByStudentNoIn(List studentNoList);
}
diff --git a/tz/user/user-service/src/main/java/com/tz/platform/user/pc/biz/PcUserInfoBiz.java b/tz/user/user-service/src/main/java/com/tz/platform/user/pc/biz/PcUserInfoBiz.java
index d5d2725..51a38f1 100644
--- a/tz/user/user-service/src/main/java/com/tz/platform/user/pc/biz/PcUserInfoBiz.java
+++ b/tz/user/user-service/src/main/java/com/tz/platform/user/pc/biz/PcUserInfoBiz.java
@@ -1,6 +1,7 @@
package com.tz.platform.user.pc.biz;
import com.tz.platform.common.core.base.Result;
+import com.tz.platform.common.core.enmus.UserTypeEnum;
import com.tz.platform.entity.User;
import com.tz.platform.repository.UserDao;
import com.tz.platform.user.pc.dto.UserPageDTO;
@@ -20,7 +21,7 @@ public class PcUserInfoBiz {
pageNo = 0;
}
Pageable pageable = PageRequest.of(pageNo,20);
- Page page = userDao.findAll(pageable);
+ Page page = userDao.findAllByUserType(UserTypeEnum.USER.getCode(), pageable);
UserPageDTO userPageDTO = new UserPageDTO();
userPageDTO.setUserPage(page);
return Result.success(userPageDTO);