licailing 4 лет назад
Родитель
Сommit
81b8a50bc6

+ 6 - 0
src/main/java/com/izouma/wenlvju/domain/performance/Programme.java

@@ -104,6 +104,12 @@ public class Programme extends BaseEntity {
     @ApiModelProperty(value = "全部签到")
     private boolean allSigned;
 
+    @ApiModelProperty(value = "评分")
+    private Double score;
+
+    @ApiModelProperty(value = "全部评分")
+    private boolean allScore;
+
     public Programme(ProgrammeDTO dto) {
         BeanUtil.copyProperties(dto, this);
     }

+ 40 - 0
src/main/java/com/izouma/wenlvju/domain/performance/ProgrammeScore.java

@@ -0,0 +1,40 @@
+package com.izouma.wenlvju.domain.performance;
+
+import com.izouma.wenlvju.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.hibernate.annotations.Where;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import java.time.LocalDateTime;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+@Entity
+@Where(clause = "del = 0")
+@ApiModel(value = "节目评审")
+public class ProgrammeScore extends BaseEntity {
+    private Long programmeId;
+
+    private Double score;
+
+    private LocalDateTime markAt;
+
+    private Double score2;
+
+    private LocalDateTime mark2At;
+
+    @Column(columnDefinition = "TEXT")
+    private String remark;
+
+    private boolean second;
+
+    private Long expertId;
+
+}

+ 54 - 0
src/main/java/com/izouma/wenlvju/dto/ProgrammeScoreDTO.java

@@ -0,0 +1,54 @@
+package com.izouma.wenlvju.dto;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.izouma.wenlvju.domain.performance.Programme;
+import com.izouma.wenlvju.enums.SignedIn;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDate;
+import java.util.List;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+public class ProgrammeScoreDTO {
+    private Long id;
+
+    @ApiModelProperty(value = "分组")
+    private String arrangeName;
+
+    @ApiModelProperty(value = "活动名称")
+    private String performance;
+
+    @ApiModelProperty(value = "节目名称")
+    private String name;
+
+    @ApiModelProperty(value = "参赛专业")
+    private String specialty;
+
+    @ApiModelProperty(value = "参赛人数")
+    private long quantity;
+
+    @ApiModelProperty(value = "参演人员")
+    private List<String> participant;
+
+    private SignedIn signedIn;
+
+    private Double score;
+
+    private Double myScore;
+
+    private String remark;
+
+    private boolean second;
+
+    public ProgrammeScoreDTO(Programme programme) {
+        BeanUtil.copyProperties(programme, this);
+    }
+}

+ 2 - 0
src/main/java/com/izouma/wenlvju/repo/performance/ArrangeJudgeRepo.java

@@ -27,4 +27,6 @@ public interface ArrangeJudgeRepo extends JpaRepository<ArrangeJudge, Long>, Jpa
     @Transactional
     void cancelJudge(Collection<Long> arrangeIds);
 
+    @Query("select arrangeId from ArrangeJudge where expertId = ?1")
+    List<Long> findArrangeIdByExpertId(Long expertId);
 }

+ 2 - 0
src/main/java/com/izouma/wenlvju/repo/performance/ParticipantRepo.java

@@ -17,4 +17,6 @@ public interface ParticipantRepo extends JpaRepository<Participant, Long>, JpaSp
     void softDelete(Long id);
 
     List<Participant> findAllByProgrammeIdIn(Collection<Long> ids);
+
+    List<Participant> findAllByProgrammeId(Long id);
 }

+ 5 - 0
src/main/java/com/izouma/wenlvju/repo/performance/ProgrammeRepo.java

@@ -26,6 +26,11 @@ public interface ProgrammeRepo extends JpaRepository<Programme, Long>, JpaSpecif
     @Transactional
     void allSigned(Long arrangeId);
 
+    @Query("update Programme t set t.score = ?2 where t.id = ?1")
+    @Modifying
+    @Transactional
+    void score(double score, Long id);
+
 //    List<Programme> findAllByArrangeId(Long arrangeId);
 
 //    Programme findFirstByArrangeIdOrderByShowTimeDesc(Long arrangeId);

+ 26 - 0
src/main/java/com/izouma/wenlvju/repo/performance/ProgrammeScoreRepo.java

@@ -0,0 +1,26 @@
+package com.izouma.wenlvju.repo.performance;
+
+import com.izouma.wenlvju.domain.performance.ProgrammeScore;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Modifying;
+import org.springframework.data.jpa.repository.Query;
+
+import javax.transaction.Transactional;
+import java.util.Collection;
+import java.util.List;
+
+public interface ProgrammeScoreRepo extends JpaRepository<ProgrammeScore, Long>, JpaSpecificationExecutor<ProgrammeScore> {
+    @Query("update ProgrammeScore t set t.del = true where t.id = ?1")
+    @Modifying
+    @Transactional
+    void softDelete(Long id);
+
+    ProgrammeScore findByProgrammeIdAndExpertId(Long programmeId, Long expertId);
+
+    List<ProgrammeScore> findByProgrammeIdInAndExpertId(Collection<Long> programmeId, Long expertId);
+
+    @Query("select avg(score) from ProgrammeScore where programmeId = ?1")
+    double avgScore(Long programmeId);
+
+}

+ 19 - 0
src/main/java/com/izouma/wenlvju/service/performance/ArrangeService.java

@@ -1,5 +1,6 @@
 package com.izouma.wenlvju.service.performance;
 
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSONObject;
 import com.izouma.wenlvju.domain.ArtType;
@@ -9,15 +10,19 @@ import com.izouma.wenlvju.dto.ArrangeDTO;
 import com.izouma.wenlvju.dto.PageQuery;
 import com.izouma.wenlvju.exception.BusinessException;
 import com.izouma.wenlvju.repo.ArtTypeRepo;
+import com.izouma.wenlvju.repo.performance.ArrangeJudgeRepo;
 import com.izouma.wenlvju.repo.performance.ArrangeRepo;
 import com.izouma.wenlvju.repo.performance.ProgrammeRepo;
 import com.izouma.wenlvju.utils.JpaUtils;
 import lombok.AllArgsConstructor;
 import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageImpl;
 import org.springframework.stereotype.Service;
 
+import javax.persistence.criteria.Predicate;
 import java.time.*;
 import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
@@ -30,6 +35,7 @@ public class ArrangeService {
     private ProgrammeService programmeService;
     private ArtTypeRepo      artTypeRepo;
     private ProgrammeRepo    programmeRepo;
+    private ArrangeJudgeRepo arrangeJudgeRepo;
 
     public Page<Arrange> all(PageQuery pageQuery) {
         Map<Long, String> artMap = artTypeRepo.findAll()
@@ -236,4 +242,17 @@ public class ArrangeService {
         programmeRepo.saveAll(programmeList);
     }
 
+    public Page<Arrange> byExpert(PageQuery pageQuery, Long userId) {
+        List<Long> arrangeId = arrangeJudgeRepo.findArrangeIdByExpertId(userId);
+        if (CollUtil.isEmpty(arrangeId)) {
+            return new PageImpl<>(new ArrayList<>(), JpaUtils.toPageRequest(pageQuery), 0);
+        }
+        pageQuery.setSort("date,asc;startTime,asc;");
+        return arrangeRepo.findAll(((root, criteriaQuery, criteriaBuilder) -> {
+            List<Predicate> and = JpaUtils.toPredicates(pageQuery, Arrange.class, root, criteriaQuery, criteriaBuilder);
+            and.add(root.get("id").in(arrangeId));
+            return criteriaBuilder.and(and.toArray(new Predicate[0]));
+        }), JpaUtils.toPageRequest(pageQuery));
+    }
+
 }

+ 67 - 0
src/main/java/com/izouma/wenlvju/service/performance/ProgrammeScoreService.java

@@ -0,0 +1,67 @@
+package com.izouma.wenlvju.service.performance;
+
+import cn.hutool.core.util.ObjectUtil;
+import com.izouma.wenlvju.domain.performance.ProgrammeScore;
+import com.izouma.wenlvju.dto.PageQuery;
+import com.izouma.wenlvju.repo.performance.ProgrammeRepo;
+import com.izouma.wenlvju.repo.performance.ProgrammeScoreRepo;
+import com.izouma.wenlvju.utils.JpaUtils;
+import lombok.AllArgsConstructor;
+import org.springframework.data.domain.Page;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+@Service
+@AllArgsConstructor
+public class ProgrammeScoreService {
+
+    private ProgrammeScoreRepo programmeScoreRepo;
+    private ProgrammeRepo      programmeRepo;
+
+    public Page<ProgrammeScore> all(PageQuery pageQuery) {
+        return programmeScoreRepo.findAll(JpaUtils.toSpecification(pageQuery, ProgrammeScore.class), JpaUtils.toPageRequest(pageQuery));
+    }
+
+    public void saveScore(Long programmeId, double score, Long userId) {
+        ProgrammeScore programmeScore = programmeScoreRepo.findByProgrammeIdAndExpertId(programmeId, userId);
+        LocalDateTime now = LocalDateTime.now();
+        if (ObjectUtil.isNull(programmeScore)) {
+            programmeScore = ProgrammeScore.builder()
+                    .expertId(userId)
+                    .programmeId(programmeId)
+                    .score(score)
+                    .markAt(now)
+                    .build();
+        } else if (ObjectUtil.isNull(programmeScore.getScore())) {
+            programmeScore.setScore(score);
+            programmeScore.setMarkAt(now);
+        } else {
+            programmeScore.setScore2(programmeScore.getScore());
+            programmeScore.setMark2At(programmeScore.getMarkAt());
+            programmeScore.setScore(score);
+            programmeScore.setMarkAt(now);
+        }
+        programmeScoreRepo.save(programmeScore);
+
+        double avg = programmeScoreRepo.avgScore(programmeId);
+        programmeRepo.score(avg, programmeId);
+    }
+
+
+    public void saveRemark(Long programmeId, String remark, Long userId) {
+        ProgrammeScore programmeScore = programmeScoreRepo.findByProgrammeIdAndExpertId(programmeId, userId);
+        if (ObjectUtil.isNull(programmeScore)) {
+            programmeScore = ProgrammeScore.builder()
+                    .expertId(userId)
+                    .programmeId(programmeId)
+                    .remark(remark)
+                    .build();
+        } else {
+            programmeScore.setRemark(remark);
+        }
+        programmeScoreRepo.save(programmeScore);
+    }
+}
+

+ 87 - 7
src/main/java/com/izouma/wenlvju/service/performance/ProgrammeService.java

@@ -9,12 +9,11 @@ import com.izouma.wenlvju.domain.ArtType;
 import com.izouma.wenlvju.domain.GradingOrganization;
 import com.izouma.wenlvju.domain.Organization;
 import com.izouma.wenlvju.domain.Setting;
-import com.izouma.wenlvju.domain.performance.Arrange;
-import com.izouma.wenlvju.domain.performance.Performance;
-import com.izouma.wenlvju.domain.performance.Programme;
+import com.izouma.wenlvju.domain.performance.*;
 import com.izouma.wenlvju.dto.ArrangeProgrammeDTO;
 import com.izouma.wenlvju.dto.PageQuery;
 import com.izouma.wenlvju.dto.ProgrammeDTO;
+import com.izouma.wenlvju.dto.ProgrammeScoreDTO;
 import com.izouma.wenlvju.enums.CompetitionGroup;
 import com.izouma.wenlvju.enums.SignedIn;
 import com.izouma.wenlvju.exception.BusinessException;
@@ -22,14 +21,13 @@ import com.izouma.wenlvju.repo.ArtTypeRepo;
 import com.izouma.wenlvju.repo.GradingOrganizationRepo;
 import com.izouma.wenlvju.repo.OrganizationRepo;
 import com.izouma.wenlvju.repo.SettingRepo;
-import com.izouma.wenlvju.repo.performance.ArrangeRepo;
-import com.izouma.wenlvju.repo.performance.PerformanceRepo;
-import com.izouma.wenlvju.repo.performance.ProgrammeRepo;
+import com.izouma.wenlvju.repo.performance.*;
 import com.izouma.wenlvju.service.ArtTypeService;
 import com.izouma.wenlvju.utils.JpaUtils;
 import com.izouma.wenlvju.utils.excel.ExcelUtils;
 import lombok.AllArgsConstructor;
 import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageImpl;
 import org.springframework.stereotype.Service;
 
 import javax.persistence.criteria.Predicate;
@@ -47,7 +45,7 @@ import java.util.stream.Collectors;
 public class ProgrammeService {
 
     private ProgrammeRepo           programmeRepo;
-    //    private ParticipantRepo         participantRepo;
+    private ParticipantRepo         participantRepo;
     private GradingOrganizationRepo gradingOrganizationRepo;
     private OrganizationRepo        organizationRepo;
     private ArtTypeRepo             artTypeRepo;
@@ -55,6 +53,9 @@ public class ProgrammeService {
     private ArtTypeService          artTypeService;
     private PerformanceRepo         performanceRepo;
     private ArrangeRepo             arrangeRepo;
+    private ProgrammeScoreRepo      programmeScoreRepo;
+    private ArrangeJudgeRepo        arrangeJudgeRepo;
+
 
     public Page<Programme> all(PageQuery pageQuery) {
         return programmeRepo.findAll(JpaUtils.toSpecification(pageQuery, Programme.class), JpaUtils.toPageRequest(pageQuery));
@@ -366,6 +367,9 @@ public class ProgrammeService {
         });
     }
 
+    /*
+    签到
+     */
     public void signIn(Long id, SignedIn signedIn, String description) {
         Programme programme = programmeRepo.findById(id).orElseThrow(new BusinessException("无节目"));
         programme.setSignedIn(signedIn);
@@ -378,4 +382,80 @@ public class ProgrammeService {
             programmeRepo.allSigned(programme.getArrangeId());
         }
     }
+
+    public ProgrammeScoreDTO getDTO(Long id, Long userId) {
+        Programme programme = programmeRepo.findById(id).orElseThrow(new BusinessException("无节目"));
+        ProgrammeScoreDTO dto = new ProgrammeScoreDTO(programme);
+        artTypeRepo.findById(programme.getSpecialtyId()).ifPresent(at -> dto.setSpecialty(at.getName()));
+        arrangeRepo.findById(programme.getArrangeId()).ifPresent(arr -> dto.setArrangeName(arr.getName()));
+        ProgrammeScore programmeScore = programmeScoreRepo.findByProgrammeIdAndExpertId(programme.getId(), userId);
+        if (ObjectUtil.isNotNull(programmeScore)) {
+            dto.setMyScore(programmeScore.getScore());
+            dto.setRemark(programmeScore.getRemark());
+            dto.setSecond(programmeScore.isSecond());
+        }
+        List<String> participants = participantRepo.findAllByProgrammeId(programme.getId())
+                .stream()
+                .map(Participant::getName)
+                .collect(Collectors.toList());
+        dto.setParticipant(participants);
+        return dto;
+    }
+
+    public Page<ProgrammeScoreDTO> byExpert(PageQuery pageQuery, Long userId) {
+        pageQuery.setSort("showBegin,asc;");
+        Long arrangeId = Convert.convert(Long.class, pageQuery.getQuery().get("arrangeId"));
+        return this.toDTOPage(this.all(pageQuery), Collections.singletonList(arrangeId), userId);
+    }
+
+    public Page<ProgrammeScoreDTO> byScore(PageQuery pageQuery, Long userId) {
+        List<Long> arrangeId = arrangeJudgeRepo.findArrangeIdByExpertId(userId);
+        if (CollUtil.isEmpty(arrangeId)) {
+            return new PageImpl<>(new ArrayList<>(), JpaUtils.toPageRequest(pageQuery), 0);
+        }
+        pageQuery.setSort("allScore,asc;showBegin,asc;arrangeId,asc;");
+        Page<Programme> all = programmeRepo.findAll(((root, criteriaQuery, criteriaBuilder) -> {
+            List<Predicate> and = JpaUtils.toPredicates(pageQuery, Programme.class, root, criteriaQuery, criteriaBuilder);
+            and.add(root.get("arrangeId").in(arrangeId));
+            return criteriaBuilder.and(and.toArray(new Predicate[0]));
+        }), JpaUtils.toPageRequest(pageQuery));
+
+        return this.toDTOPage(all, arrangeId, userId);
+    }
+
+    private Page<ProgrammeScoreDTO> toDTOPage(Page<Programme> all, Collection<Long> arrangeId, Long userId) {
+        List<Long> ids = all.getContent().stream().map(Programme::getId).distinct().collect(Collectors.toList());
+        Map<Long, List<Participant>> participantMap = participantRepo.findAllByProgrammeIdIn(ids)
+                .stream()
+                .collect(Collectors.groupingBy(Participant::getProgrammeId));
+        Map<Long, String> artTypeMap = artTypeRepo.findAll()
+                .stream()
+                .collect(Collectors.toMap(ArtType::getId, ArtType::getName));
+
+        Map<Long, String> arrangeMap = arrangeRepo.findAllById(arrangeId)
+                .stream()
+                .collect(Collectors.toMap(Arrange::getId, Arrange::getName));
+
+        Map<Long, ProgrammeScore> scoreMap = programmeScoreRepo.findByProgrammeIdInAndExpertId(ids, userId)
+                .stream()
+                .collect(Collectors.toMap(ProgrammeScore::getProgrammeId, programmeScore -> programmeScore));
+
+        return all.map(programme -> {
+            ProgrammeScoreDTO dto = new ProgrammeScoreDTO(programme);
+            dto.setSpecialty(artTypeMap.get(programme.getSpecialtyId()));
+            dto.setArrangeName(arrangeMap.get(programme.getArrangeId()));
+            ProgrammeScore programmeScore = scoreMap.get(programme.getId());
+            if (ObjectUtil.isNotNull(programmeScore)) {
+                dto.setMyScore(programmeScore.getScore());
+                dto.setRemark(programmeScore.getRemark());
+                dto.setSecond(programmeScore.isSecond());
+            }
+            List<String> participants = participantMap.get(programme.getId())
+                    .stream()
+                    .map(Participant::getName)
+                    .collect(Collectors.toList());
+            dto.setParticipant(participants);
+            return dto;
+        });
+    }
 }

+ 8 - 0
src/main/java/com/izouma/wenlvju/web/performance/ArrangeController.java

@@ -1,6 +1,7 @@
 package com.izouma.wenlvju.web.performance;
 
 import com.izouma.wenlvju.dto.ArrangeDTO;
+import com.izouma.wenlvju.utils.SecurityUtils;
 import com.izouma.wenlvju.web.BaseController;
 import com.izouma.wenlvju.domain.performance.Arrange;
 import com.izouma.wenlvju.service.performance.ArrangeService;
@@ -72,5 +73,12 @@ public class ArrangeController extends BaseController {
     public void publish(@RequestParam Long performanceId) {
         arrangeService.publish(performanceId);
     }
+
+    @ApiOperation("专家段查看分组")
+    @PostMapping("/byExpert")
+    public Page<Arrange> byExpert(@RequestBody PageQuery pageQuery) {
+        return arrangeService.byExpert(pageQuery, SecurityUtils.getAuthenticatedUser().getId());
+    }
+
 }
 

+ 20 - 0
src/main/java/com/izouma/wenlvju/web/performance/ProgrammeController.java

@@ -4,6 +4,7 @@ import com.izouma.wenlvju.domain.performance.Programme;
 import com.izouma.wenlvju.dto.ArrangeProgrammeDTO;
 import com.izouma.wenlvju.dto.PageQuery;
 import com.izouma.wenlvju.dto.ProgrammeDTO;
+import com.izouma.wenlvju.dto.ProgrammeScoreDTO;
 import com.izouma.wenlvju.enums.SignedIn;
 import com.izouma.wenlvju.exception.BusinessException;
 import com.izouma.wenlvju.repo.performance.ProgrammeRepo;
@@ -117,5 +118,24 @@ public class ProgrammeController extends BaseController {
     public void signIn(@RequestParam Long id, @RequestParam SignedIn signedIn, String description) {
         programmeService.signIn(id, signedIn, description);
     }
+
+    @PostMapping("/byExpert")
+    @ApiOperation("专家手机端查看")
+    public Page<ProgrammeScoreDTO> byExpert(@RequestBody PageQuery pageQuery) {
+        return programmeService.byExpert(pageQuery, SecurityUtils.getAuthenticatedUser().getId());
+    }
+
+
+    @PostMapping("/byScore")
+    @ApiOperation("专家电脑端查看")
+    public Page<ProgrammeScoreDTO> byScore(@RequestBody PageQuery pageQuery) {
+        return programmeService.byScore(pageQuery, SecurityUtils.getAuthenticatedUser().getId());
+    }
+
+    @PostMapping("/getDTO/{id}")
+    @ApiOperation("专家手机端查看详情")
+    public ProgrammeScoreDTO getDTO(@PathVariable Long id) {
+        return programmeService.getDTO(id, SecurityUtils.getAuthenticatedUser().getId());
+    }
 }
 

+ 63 - 0
src/main/java/com/izouma/wenlvju/web/performance/ProgrammeScoreController.java

@@ -0,0 +1,63 @@
+package com.izouma.wenlvju.web.performance;
+
+import com.izouma.wenlvju.web.BaseController;
+import com.izouma.wenlvju.domain.performance.ProgrammeScore;
+import com.izouma.wenlvju.service.performance.ProgrammeScoreService;
+import com.izouma.wenlvju.dto.PageQuery;
+import com.izouma.wenlvju.exception.BusinessException;
+import com.izouma.wenlvju.repo.performance.ProgrammeScoreRepo;
+import com.izouma.wenlvju.utils.ObjUtils;
+import com.izouma.wenlvju.utils.excel.ExcelUtils;
+
+import lombok.AllArgsConstructor;
+import org.springframework.data.domain.Page;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.util.List;
+
+@RestController
+@RequestMapping("/programmeScore")
+@AllArgsConstructor
+public class ProgrammeScoreController extends BaseController {
+    private ProgrammeScoreService programmeScoreService;
+    private ProgrammeScoreRepo programmeScoreRepo;
+
+    //@PreAuthorize("hasRole('ADMIN')")
+    @PostMapping("/save")
+    public ProgrammeScore save(@RequestBody ProgrammeScore record) {
+        if (record.getId() != null) {
+            ProgrammeScore orig = programmeScoreRepo.findById(record.getId()).orElseThrow(new BusinessException("无记录"));
+            ObjUtils.merge(orig, record);
+            return programmeScoreRepo.save(orig);
+        }
+        return programmeScoreRepo.save(record);
+    }
+
+
+    //@PreAuthorize("hasRole('ADMIN')")
+    @PostMapping("/all")
+    public Page<ProgrammeScore> all(@RequestBody PageQuery pageQuery) {
+        return programmeScoreService.all(pageQuery);
+    }
+
+    @GetMapping("/get/{id}")
+    public ProgrammeScore get(@PathVariable Long id) {
+        return programmeScoreRepo.findById(id).orElseThrow(new BusinessException("无记录"));
+    }
+
+    @PostMapping("/del/{id}")
+    public void del(@PathVariable Long id) {
+        programmeScoreRepo.softDelete(id);
+    }
+
+    @GetMapping("/excel")
+    @ResponseBody
+    public void excel(HttpServletResponse response, PageQuery pageQuery) throws IOException {
+        List<ProgrammeScore> data = all(pageQuery).getContent();
+        ExcelUtils.export(response, data);
+    }
+}
+

+ 1 - 0
src/main/resources/genjson/ProgrammeScore.json

@@ -0,0 +1 @@
+{"tableName":"ProgrammeScore","className":"ProgrammeScore","remark":"节目评审","genTable":true,"genClass":true,"genList":false,"genForm":false,"genRouter":false,"javaPath":"/Users/qiufangchao/Desktop/project/wenlvju/src/main/java/com/izouma/wenlvju","viewPath":"/Users/qiufangchao/Desktop/project/wenlvju/src/main/vue/src/views","routerPath":"/Users/qiufangchao/Desktop/project/wenlvju/src/main/vue/src","resourcesPath":"/Users/qiufangchao/Desktop/project/wenlvju/src/main/resources","dataBaseType":"Mysql","fields":[{"name":"programmeId","modelName":"programmeId","remark":"programmeId","showInList":true,"showInForm":true,"formType":"number"},{"name":"score","modelName":"score","remark":"score","showInList":true,"showInForm":true,"formType":"singleLineText"},{"name":"remark","modelName":"remark","remark":"remark","showInList":true,"showInForm":true,"formType":"singleLineText"},{"name":"second","modelName":"second","remark":"second","showInList":true,"showInForm":true,"formType":"singleLineText"},{"name":"expertId","modelName":"expertId","remark":"expertId","showInList":true,"showInForm":true,"formType":"number"}],"readTable":false,"dataSourceCode":"dataSource","genJson":"","subtables":[],"update":false,"basePackage":"com.izouma.wenlvju","tablePackage":"com.izouma.wenlvju.domain.performance.ProgrammeScore","genPackage":"performance"}

+ 18 - 17
src/main/vue/src/views/performance/ArrangeJudgeList.vue

@@ -201,23 +201,24 @@ export default {
                             value: item.id
                         });
                     });
-                }
-            })
-            .catch(e => {
-                console.log(e);
-                this.$message.error(e.error);
-            });
-        this.$http
-            .post(
-                '/performanceSchedule/all',
-                { size: 100, query: { performanceId: this.form.performanceId } },
-                { body: 'json' }
-            )
-            .then(res => {
-                if (res.content.length > 0) {
-                    res.content.forEach(item => {
-                        this.addresses.push(item.address);
-                    });
+                    this.form.performanceId = res.content[0].id;
+                    this.$http
+                        .post(
+                            '/performanceSchedule/all',
+                            { size: 100, query: { performanceId: this.form.performanceId } },
+                            { body: 'json' }
+                        )
+                        .then(res => {
+                            if (res.content.length > 0) {
+                                res.content.forEach(item => {
+                                    this.addresses.push(item.address);
+                                });
+                            }
+                        })
+                        .catch(e => {
+                            console.log(e);
+                            this.$message.error(e.error);
+                        });
                 }
             })
             .catch(e => {

+ 19 - 17
src/main/vue/src/views/performance/ArrangeList.vue

@@ -333,29 +333,31 @@ export default {
                             value: item.id
                         });
                     });
+                    this.form.performanceId = res.content[0].id;
+                    this.$http
+                        .post(
+                            '/performanceSchedule/all',
+                            { size: 100, query: { performanceId: this.form.performanceId } },
+                            { body: 'json' }
+                        )
+                        .then(res => {
+                            if (res.content.length > 0) {
+                                res.content.forEach(item => {
+                                    this.addresses.push(item.address);
+                                });
+                            }
+                        })
+                        .catch(e => {
+                            console.log(e);
+                            this.$message.error(e.error);
+                        });
                 }
             })
             .catch(e => {
                 console.log(e);
                 this.$message.error(e.error);
             });
-        this.$http
-            .post(
-                '/performanceSchedule/all',
-                { size: 100, query: { performanceId: this.form.performanceId } },
-                { body: 'json' }
-            )
-            .then(res => {
-                if (res.content.length > 0) {
-                    res.content.forEach(item => {
-                        this.addresses.push(item.address);
-                    });
-                }
-            })
-            .catch(e => {
-                console.log(e);
-                this.$message.error(e.error);
-            });
+
         this.$http
             .post('/artType/parent')
             .then(res => {