licailing 4 лет назад
Родитель
Сommit
06b15f8bae

+ 4 - 15
src/main/java/com/izouma/wenlvju/domain/Record.java

@@ -1,21 +1,18 @@
 package com.izouma.wenlvju.domain;
 
-import com.alibaba.excel.annotation.ExcelIgnore;
 import com.izouma.wenlvju.annotations.Searchable;
 import com.izouma.wenlvju.enums.RecordStatus;
-import com.izouma.wenlvju.security.Authority;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
 import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
-import org.hibernate.annotations.BatchSize;
 
-import javax.persistence.*;
+import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
 import java.time.LocalDate;
-import java.util.HashSet;
-import java.util.Set;
 
 @Data
 @Builder
@@ -37,7 +34,7 @@ public class Record extends BaseEntity {
     @ApiModelProperty(value = "考级机构名称")
     private String examinationAgency;
 
-    @Enumerated(EnumType.STRING)
+//    @Enumerated(EnumType.STRING)
     @ApiModelProperty(value = "单位类别")
     private String category;
 
@@ -113,12 +110,4 @@ public class Record extends BaseEntity {
 //    @Transient
 //    private String supervisorNickname;
 
-//    @ManyToMany(fetch = FetchType.EAGER, cascade = {CascadeType.DETACH})
-//    @JoinTable(
-//            name = "record_exam_room",
-//            joinColumns = {@JoinColumn(name = "record_id", referencedColumnName = "id", foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT))},
-//            inverseJoinColumns = {@JoinColumn(name = "exam_room_id", referencedColumnName = "id", foreignKey = @ForeignKey(name = "none", value = ConstraintMode.NO_CONSTRAINT))})
-//    @BatchSize(size = 20)
-//    @ExcelIgnore
-//    private Set<ExamRoom> recordExamRooms = new HashSet<>();
 }

+ 12 - 6
src/main/java/com/izouma/wenlvju/service/ExamRoomService.java

@@ -175,14 +175,20 @@ public class ExamRoomService {
     展示今天备案中的所有考场信息
      */
     public List<ExamRoom> byToday(Long recordId, String district) {
-        List<Record> all = recordService.byToday(recordId, district);
-        List<Long> rids = all.stream().map(Record::getId).collect(Collectors.toList());
-
-        if (CollUtil.isEmpty(rids)) {
-            return null;
+        List<Long> ids = new ArrayList<>();
+        if (ObjectUtil.isNotEmpty(recordId)) {
+            ids.addAll(recordExamRoomRepo.findExamRoomIdByRecordId(recordId));
+        } else {
+            List<Record> all = recordService.byToday(district);
+            List<Long> rids = all.stream().map(Record::getId).collect(Collectors.toList());
+            if (CollUtil.isEmpty(rids)) {
+                return null;
+            }
+
+            ids.addAll(recordExamRoomRepo.findExamRoomIdByRecordIdIn(rids));
         }
 
-        List<Long> ids = recordExamRoomRepo.findExamRoomIdByRecordIdIn(rids);
+
         if (CollUtil.isEmpty(ids)) {
             return null;
         }

+ 1 - 4
src/main/java/com/izouma/wenlvju/service/RecordService.java

@@ -82,16 +82,13 @@ public class RecordService {
     /*
     展示今天的所有备案
      */
-    public List<Record> byToday(Long recordId, String district){
+    public List<Record> byToday( String district){
         LocalDate now = LocalDate.now();
         return recordRepo.findAll((root, criteriaQuery, criteriaBuilder) -> {
             List<Predicate> and = new ArrayList<>();
             if (StringUtil.isNotBlank(district)) {
                 and.add(criteriaBuilder.equal(root.get("district"), district));
             }
-            if (ObjectUtil.isNotEmpty(recordId)) {
-                and.add(criteriaBuilder.equal(root.get("recordId"), recordId));
-            }
             and.add(criteriaBuilder.lessThanOrEqualTo(root.get("examinationStartTime"), now));
             and.add(criteriaBuilder.greaterThanOrEqualTo(root.get("examinationEndTime"), now));
             return criteriaBuilder.and(and.toArray(new Predicate[0]));

+ 2 - 2
src/main/java/com/izouma/wenlvju/web/RecordController.java

@@ -108,8 +108,8 @@ public class RecordController extends BaseController {
 
     @PostMapping("/byToday")
     @ApiOperation("今日所有备案")
-    public List<Record> byToday() {
-        return recordService.byToday(null, null);
+    public List<Record> byToday( String district) {
+        return recordService.byToday( district);
     }
 }
 

+ 1 - 1
src/main/resources/application.yaml

@@ -1,5 +1,5 @@
 server:
-    port: 8090
+    port: 8080
     servlet:
         context_path: /
     compression:

+ 110 - 26
src/main/vue/src/views/record/VideoList.vue

@@ -1,14 +1,11 @@
 <template>
     <div class="edit-view">
         <el-form :model="form" inline size="mini">
-            <el-form-item label="备案筛选">
-                <el-select clearable placeholder="请选择备案信息"></el-select>
-            </el-form-item>
             <el-form-item label="考级地址">
-                <el-select style="margin-right: 10px" v-model="city" placeholder="请选择市">
+                <!-- <el-select style="margin-right: 10px" v-model="city" placeholder="请选择市">
                     <el-option value="南京市" label="南京市"></el-option>
-                </el-select>
-                <el-select v-model="district" clearable placeholder="请选择区县">
+                </el-select> -->
+                <el-select v-model="district" clearable placeholder="请选择区县" @change="districtSelect">
                     <el-option
                         v-for="item in districts"
                         :key="item.id"
@@ -17,6 +14,22 @@
                     ></el-option>
                 </el-select>
             </el-form-item>
+            <el-form-item label="备案筛选">
+                <el-select
+                    v-model="recordId"
+                    clearable
+                    placeholder="请选择备案信息"
+                    style="width: 300px"
+                    @change="getRecord"
+                >
+                    <el-option
+                        v-for="item in records"
+                        :key="item.value"
+                        :value="item.value"
+                        :label="item.label"
+                    ></el-option>
+                </el-select>
+            </el-form-item>
             <el-form-item label="" style="margin-left:20px">
                 <span>{{ time }}</span>
             </el-form-item>
@@ -47,36 +60,56 @@ export default {
             token: '',
             form: {},
             list: [],
-            time: ''
+            time: '',
+            recordId: '',
+            records: [],
+            districts: [],
+            district: '',
+            city: ''
         };
     },
-    mounted() {
-        this.getTime();
+    created() {
         this.$http
-            .get('ezvizToken/getToken')
+            .get('/district/NJ')
             .then(res => {
-                this.token = res;
-                return this.$http.post('/examRoom/byToday');
-            })
-            .then(res => {
-                this.list = res;
-                this.$nextTick(() => {
-                    res.forEach((item, index) => {
-                        if (index == 0) {
-                            this.$refs.video[index].init();
-                        } else {
-                            let _index = this.randomNum(0, 4);
-                            console.log(_index);
-                            this.$refs.video[index].initVideo(index);
-                        }
-                    });
-                });
+                this.districts = res;
             })
             .catch(e => {
                 console.log(e);
                 this.$message.error(e.error);
             });
     },
+    mounted() {
+        this.getTime();
+        // this.$http
+        //     .get('ezvizToken/getToken')
+        //     .then(res => {
+        //         this.token = res;
+        //         return this.$http.post('/examRoom/byToday', { recordId: this.recordId, district: this.district });
+        //     })
+        //     .then(res => {
+        //         this.list = res;
+        //         this.$nextTick(() => {
+        //             if (res.length > 0) {
+        //                 res.forEach((item, index) => {
+        //                     if (index == 0) {
+        //                         this.$refs.video[index].init();
+        //                     } else {
+        //                         let _index = this.randomNum(0, 4);
+        //                         console.log(_index);
+        //                         this.$refs.video[index].initVideo(index);
+        //                     }
+        //                 });
+        //             }
+        //         });
+        //     })
+        //     .catch(e => {
+        //         console.log(e);
+        //         this.$message.error(e.error);
+        //     });
+        this.getVideo();
+        this.getRecord();
+    },
     methods: {
         getTime() {
             this.time = format(new Date(), 'yyyy/MM/dd hh:mm:ss');
@@ -96,6 +129,57 @@ export default {
                     return 0;
                     break;
             }
+        },
+        getRecord() {
+            this.records = [];
+            this.$http
+                .post('/record/byToday', { district: this.district })
+                .then(res => {
+                    if (res.length > 0) {
+                        res.forEach(item => {
+                            this.records.push({
+                                label: item.examinationName,
+                                value: item.id
+                            });
+                        });
+                    }
+                })
+                .catch(e => {
+                    console.log(e);
+                    this.$message.error(e.error);
+                });
+        },
+        getVideo() {
+            this.$http
+                .get('ezvizToken/getToken')
+                .then(res => {
+                    this.token = res;
+                    return this.$http.post('/examRoom/byToday', { recordId: this.recordId, district: this.district });
+                })
+                .then(res => {
+                    this.list = res;
+                    this.$nextTick(() => {
+                        if (res.length > 0) {
+                            res.forEach((item, index) => {
+                                if (index == 0) {
+                                    this.$refs.video[index].init();
+                                } else {
+                                    let _index = this.randomNum(0, 4);
+                                    console.log(_index);
+                                    this.$refs.video[index].initVideo(index);
+                                }
+                            });
+                        }
+                    });
+                })
+                .catch(e => {
+                    console.log(e);
+                    this.$message.error(e.error);
+                });
+        },
+        districtSelect() {
+            this.getVideo();
+            this.getRecord();
         }
     }
 };

+ 1 - 1
src/test/java/com/izouma/wenlvju/service/ExamRoomServiceTest.java

@@ -42,7 +42,7 @@ public class ExamRoomServiceTest extends ApplicationTests {
 
     @Test
     public void showVideo() {
-        List<ExamRoom> show = examRoomService.byToday(null, null);
+        List<ExamRoom> show = examRoomService.byToday(8L, null);
         show.forEach(System.out::println);
     }