├── src ├── main │ ├── resources │ │ ├── application.properties │ │ ├── static │ │ │ └── admission │ │ │ │ ├── favicon.ico │ │ │ │ ├── img │ │ │ │ ├── logo.82b9c7a5.png │ │ │ │ ├── avatar.a6d79544.png │ │ │ │ └── loginbg.4fc48880.jpg │ │ │ │ ├── fonts │ │ │ │ ├── element-icons.535877f5.woff │ │ │ │ └── element-icons.732389de.ttf │ │ │ │ ├── css │ │ │ │ ├── chunk-e11d7e68.f27c6cbe.css │ │ │ │ ├── chunk-39bb0a47.ff0fd080.css │ │ │ │ ├── chunk-403717ba.57a0b953.css │ │ │ │ ├── chunk-e676823c.1a9edd5b.css │ │ │ │ ├── chunk-0b21ef94.856051f2.css │ │ │ │ ├── chunk-635f7714.3e3820e0.css │ │ │ │ ├── chunk-6c4f308a.54bf89e2.css │ │ │ │ ├── chunk-28c14a28.47ce6869.css │ │ │ │ ├── chunk-df73dcd6.e7f32f20.css │ │ │ │ ├── chunk-4a6f3068.19fceec4.css │ │ │ │ ├── chunk-4de0dec3.19fceec4.css │ │ │ │ ├── chunk-27006b18.73f468a7.css │ │ │ │ ├── chunk-4d362591.73f468a7.css │ │ │ │ ├── chunk-b6dad75c.200f7c4c.css │ │ │ │ ├── chunk-bdce9ffc.d5b942ee.css │ │ │ │ ├── chunk-236aebbf.3d4c6965.css │ │ │ │ ├── chunk-5bf4cf60.3d4c6965.css │ │ │ │ ├── chunk-2a98648c.debd27a5.css │ │ │ │ ├── chunk-4b88d4fa.7e107609.css │ │ │ │ ├── chunk-350c3315.73dfd190.css │ │ │ │ ├── chunk-447d0f58.23667717.css │ │ │ │ ├── chunk-7875625f.63b12491.css │ │ │ │ ├── chunk-000a4c55.286d1172.css │ │ │ │ └── chunk-448d2a85.afa49312.css │ │ │ │ ├── js │ │ │ │ ├── about.40f64cbb.js │ │ │ │ ├── about.6524a0e3.js │ │ │ │ ├── about.edd3fe2d.js │ │ │ │ ├── about.40f64cbb.js.map │ │ │ │ ├── about.6524a0e3.js.map │ │ │ │ ├── about.edd3fe2d.js.map │ │ │ │ ├── chunk-7875625f.9fc75238.js │ │ │ │ ├── chunk-447d0f58.22db2c76.js │ │ │ │ ├── chunk-447d0f58.cd1c9362.js │ │ │ │ ├── chunk-e11d7e68.0e146902.js │ │ │ │ ├── chunk-e11d7e68.60c7bf87.js │ │ │ │ ├── chunk-e11d7e68.80e737c7.js │ │ │ │ ├── chunk-2a98648c.4071a38a.js │ │ │ │ ├── chunk-39bb0a47.22d06428.js │ │ │ │ ├── chunk-39bb0a47.75406d2b.js │ │ │ │ ├── chunk-39bb0a47.d913306f.js │ │ │ │ ├── chunk-403717ba.1afb86f5.js │ │ │ │ ├── chunk-403717ba.5e9fd34a.js │ │ │ │ ├── chunk-403717ba.80d8b1bb.js │ │ │ │ ├── chunk-28c14a28.e19888ce.js │ │ │ │ ├── chunk-e676823c.4e08adda.js │ │ │ │ ├── chunk-e676823c.978c2462.js │ │ │ │ ├── chunk-e676823c.c489812d.js │ │ │ │ ├── chunk-df73dcd6.5bb65689.js │ │ │ │ ├── chunk-df73dcd6.73323588.js │ │ │ │ ├── chunk-6c4f308a.b5fb463a.js │ │ │ │ ├── chunk-0b21ef94.d671823f.js │ │ │ │ ├── chunk-635f7714.06b4a354.js │ │ │ │ ├── chunk-635f7714.6d4da278.js │ │ │ │ ├── chunk-4d362591.65b0a4ec.js │ │ │ │ ├── chunk-4d362591.bdf01f2f.js │ │ │ │ ├── chunk-448d2a85.cfd003cc.js │ │ │ │ ├── chunk-000a4c55.c63fc860.js │ │ │ │ ├── chunk-5bf4cf60.429c6f05.js │ │ │ │ ├── chunk-5bf4cf60.43fd482b.js │ │ │ │ ├── chunk-bdce9ffc.b1ad70d5.js │ │ │ │ └── chunk-27006b18.4d788685.js │ │ │ │ └── index.html │ │ ├── mybatis │ │ │ └── mapper │ │ │ │ ├── DepartmentMapper.xml │ │ │ │ ├── StatusMapper.xml │ │ │ │ └── MajorMapper.xml │ │ ├── application.yml │ │ └── sql │ │ │ └── schema.sql │ └── java │ │ └── org │ │ └── enroll │ │ ├── pojo │ │ ├── EnrollStatus.java │ │ ├── Major.java │ │ ├── Log.java │ │ ├── Department.java │ │ ├── StatisticsResult.java │ │ └── StudentResult.java │ │ ├── exception │ │ └── ReadExcelException.java │ │ ├── service │ │ ├── interfaces │ │ │ ├── IDepartmentService.java │ │ │ ├── IStatusService.java │ │ │ ├── IMajorService.java │ │ │ ├── IExcelService.java │ │ │ └── IStudentService.java │ │ └── impl │ │ │ ├── DepartmentServiceImpl.java │ │ │ ├── StatusServiceImpl.java │ │ │ ├── MajorServiceImpl.java │ │ │ └── ExcelServiceImpl.java │ │ ├── utils │ │ ├── QueryResultOption.java │ │ └── JsonResponse.java │ │ ├── configuration │ │ ├── LoginProperties.java │ │ └── EnrollConfig.java │ │ ├── mapper │ │ ├── DepartmentMapper.java │ │ ├── StatusMapper.java │ │ ├── MajorMapper.java │ │ └── StudentMapper.java │ │ ├── EnrollSystemApplication.java │ │ ├── controller │ │ ├── DepartmentController.java │ │ ├── StatusController.java │ │ ├── MajorController.java │ │ ├── LoginController.java │ │ └── FileController.java │ │ ├── interceptor │ │ └── LoginInterceptor.java │ │ ├── excel │ │ ├── pojo │ │ │ ├── ExcelMajor.java │ │ │ └── ExcelStudent.java │ │ └── listener │ │ │ ├── ReadStudentListener.java │ │ │ └── ReadMajorListener.java │ │ └── exceptionhandler │ │ └── GlobalExceptionHandler.java └── test │ └── java │ └── org │ └── enroll │ └── EnrollSystemApplicationTests.java ├── excel ├── 平行志愿考生测试数据.xlsx └── 广东某大学招生计划.xlsx ├── .mvn └── wrapper │ ├── maven-wrapper.jar │ └── maven-wrapper.properties ├── images ├── Snipaste_2020-10-26_13-34-25.png ├── Snipaste_2020-10-26_13-38-37.png ├── Snipaste_2020-10-26_13-39-28.png ├── Snipaste_2020-10-26_13-40-11.png └── Snipaste_2020-10-26_13-41-04.png ├── .gitignore ├── README.md ├── pom.xml └── sql └── db_enroll.sql /src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /excel/平行志愿考生测试数据.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/excel/平行志愿考生测试数据.xlsx -------------------------------------------------------------------------------- /excel/广东某大学招生计划.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/excel/广东某大学招生计划.xlsx -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /images/Snipaste_2020-10-26_13-34-25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/images/Snipaste_2020-10-26_13-34-25.png -------------------------------------------------------------------------------- /images/Snipaste_2020-10-26_13-38-37.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/images/Snipaste_2020-10-26_13-38-37.png -------------------------------------------------------------------------------- /images/Snipaste_2020-10-26_13-39-28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/images/Snipaste_2020-10-26_13-39-28.png -------------------------------------------------------------------------------- /images/Snipaste_2020-10-26_13-40-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/images/Snipaste_2020-10-26_13-40-11.png -------------------------------------------------------------------------------- /images/Snipaste_2020-10-26_13-41-04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/images/Snipaste_2020-10-26_13-41-04.png -------------------------------------------------------------------------------- /src/main/resources/static/admission/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/src/main/resources/static/admission/favicon.ico -------------------------------------------------------------------------------- /src/main/resources/static/admission/img/logo.82b9c7a5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/src/main/resources/static/admission/img/logo.82b9c7a5.png -------------------------------------------------------------------------------- /src/main/resources/static/admission/img/avatar.a6d79544.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/src/main/resources/static/admission/img/avatar.a6d79544.png -------------------------------------------------------------------------------- /src/main/resources/static/admission/img/loginbg.4fc48880.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/src/main/resources/static/admission/img/loginbg.4fc48880.jpg -------------------------------------------------------------------------------- /src/main/resources/static/admission/fonts/element-icons.535877f5.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/src/main/resources/static/admission/fonts/element-icons.535877f5.woff -------------------------------------------------------------------------------- /src/main/resources/static/admission/fonts/element-icons.732389de.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhensonli/admissionsystem_backend/HEAD/src/main/resources/static/admission/fonts/element-icons.732389de.ttf -------------------------------------------------------------------------------- /src/main/java/org/enroll/pojo/EnrollStatus.java: -------------------------------------------------------------------------------- 1 | package org.enroll.pojo; 2 | 3 | public enum EnrollStatus { 4 | 5 | START, 6 | WITHOUT_STUDENT, 7 | FILE_READY, 8 | ENROLLED, 9 | ADJUSTED 10 | } 11 | -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.3/apache-maven-3.6.3-bin.zip 2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar 3 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/exception/ReadExcelException.java: -------------------------------------------------------------------------------- 1 | package org.enroll.exception; 2 | 3 | public class ReadExcelException extends RuntimeException { 4 | 5 | public ReadExcelException (String message) { 6 | super(message); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-e11d7e68.f27c6cbe.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px} -------------------------------------------------------------------------------- /src/main/java/org/enroll/pojo/Major.java: -------------------------------------------------------------------------------- 1 | package org.enroll.pojo; 2 | 3 | import lombok.Data; 4 | import org.apache.ibatis.type.Alias; 5 | 6 | @Data 7 | @Alias("major") 8 | public class Major { 9 | 10 | private String majorId; 11 | 12 | private String majorName; 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/service/interfaces/IDepartmentService.java: -------------------------------------------------------------------------------- 1 | package org.enroll.service.interfaces; 2 | 3 | import org.enroll.pojo.Department; 4 | 5 | import java.util.List; 6 | 7 | public interface IDepartmentService { 8 | 9 | List getDepartments(); 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/utils/QueryResultOption.java: -------------------------------------------------------------------------------- 1 | package org.enroll.utils; 2 | 3 | import lombok.Data; 4 | 5 | @Data 6 | public class QueryResultOption { 7 | 8 | private Integer rank; 9 | 10 | private Integer departmentId; 11 | 12 | private String majorId; 13 | 14 | 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/pojo/Log.java: -------------------------------------------------------------------------------- 1 | package org.enroll.pojo; 2 | 3 | import lombok.Data; 4 | import org.apache.ibatis.type.Alias; 5 | 6 | import java.util.Date; 7 | 8 | @Data 9 | @Alias("log") 10 | public class Log { 11 | 12 | private String logContent; 13 | 14 | private Date logTime; 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/service/interfaces/IStatusService.java: -------------------------------------------------------------------------------- 1 | package org.enroll.service.interfaces; 2 | 3 | import org.enroll.pojo.Log; 4 | 5 | import java.util.List; 6 | 7 | public interface IStatusService { 8 | 9 | Integer getStatus(); 10 | 11 | List getLogList(); 12 | 13 | void reset(); 14 | } 15 | -------------------------------------------------------------------------------- /src/test/java/org/enroll/EnrollSystemApplicationTests.java: -------------------------------------------------------------------------------- 1 | package org.enroll; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class EnrollSystemApplicationTests { 8 | // 9 | // @Test 10 | // void contextLoads() { 11 | // } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/pojo/Department.java: -------------------------------------------------------------------------------- 1 | package org.enroll.pojo; 2 | 3 | import lombok.Data; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | import org.apache.ibatis.type.Alias; 7 | 8 | @Data 9 | @Getter 10 | @Setter 11 | @Alias("department") 12 | public class Department { 13 | 14 | private int departmentId; 15 | 16 | private String departmentName; 17 | } 18 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-39bb0a47.ff0fd080.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}.table-row-count[data-v-732fcddd]{color:#999;float:left;padding:10px;border-radius:3px;background-color:#fff}.page-bar[data-v-2d0290aa]{width:500px;margin:30px auto} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-403717ba.57a0b953.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}.table-row-count[data-v-732fcddd]{color:#999;float:left;padding:10px;border-radius:3px;background-color:#fff}.page-bar[data-v-6b23a54a]{width:500px;margin:30px auto} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-e676823c.1a9edd5b.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}.table-row-count[data-v-732fcddd]{color:#999;float:left;padding:10px;border-radius:3px;background-color:#fff}.page-bar[data-v-9779975e]{width:500px;margin:30px auto} -------------------------------------------------------------------------------- /src/main/java/org/enroll/configuration/LoginProperties.java: -------------------------------------------------------------------------------- 1 | package org.enroll.configuration; 2 | 3 | import lombok.Data; 4 | import org.springframework.boot.context.properties.ConfigurationProperties; 5 | import org.springframework.stereotype.Component; 6 | 7 | @Data 8 | @Component 9 | @ConfigurationProperties(prefix = "enroll.login") 10 | public class LoginProperties { 11 | 12 | private String adminName; 13 | 14 | private String adminPass; 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/mapper/DepartmentMapper.java: -------------------------------------------------------------------------------- 1 | package org.enroll.mapper; 2 | 3 | import org.apache.ibatis.annotations.Param; 4 | import org.enroll.pojo.Department; 5 | import org.springframework.stereotype.Repository; 6 | 7 | import java.util.List; 8 | 9 | @Repository 10 | public interface DepartmentMapper { 11 | 12 | void insertDepartment(Department department); 13 | 14 | List getDepartments(); 15 | 16 | void resetTable(); 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/service/interfaces/IMajorService.java: -------------------------------------------------------------------------------- 1 | package org.enroll.service.interfaces; 2 | 3 | import org.enroll.excel.pojo.ExcelMajor; 4 | import org.enroll.pojo.Major; 5 | 6 | import java.util.List; 7 | 8 | public interface IMajorService { 9 | 10 | void updateMajorPlan(String majorId, int count); 11 | 12 | List getMajorPlan(); 13 | 14 | List getMajors(); 15 | 16 | List getMajorsByDepartment(int departmentId); 17 | } 18 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/about.40f64cbb.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["about"],{f820:function(t,e,n){"use strict";n.r(e);var a=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},s=[function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"about"},[n("h1",[t._v("This is an about page")])])}],u=n("2877"),c={},i=Object(u["a"])(c,a,s,!1,null,null,null);e["default"]=i.exports}}]); 2 | //# sourceMappingURL=about.40f64cbb.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/about.6524a0e3.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["about"],{f820:function(t,e,n){"use strict";n.r(e);var a=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},s=[function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"about"},[n("h1",[t._v("This is an about page")])])}],u=n("2877"),c={},i=Object(u["a"])(c,a,s,!1,null,null,null);e["default"]=i.exports}}]); 2 | //# sourceMappingURL=about.6524a0e3.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/about.edd3fe2d.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["about"],{f820:function(t,e,n){"use strict";n.r(e);var a=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},s=[function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"about"},[n("h1",[t._v("This is an about page")])])}],u=n("2877"),c={},i=Object(u["a"])(c,a,s,!1,null,null,null);e["default"]=i.exports}}]); 2 | //# sourceMappingURL=about.edd3fe2d.js.map -------------------------------------------------------------------------------- /src/main/java/org/enroll/mapper/StatusMapper.java: -------------------------------------------------------------------------------- 1 | package org.enroll.mapper; 2 | 3 | import org.apache.ibatis.annotations.Param; 4 | import org.enroll.pojo.Log; 5 | import org.springframework.stereotype.Repository; 6 | 7 | import java.util.List; 8 | import java.util.Map; 9 | 10 | @Repository 11 | public interface StatusMapper { 12 | 13 | void addLog(@Param("content") String content, @Param("status") int status); 14 | 15 | Integer getStatus(); 16 | 17 | List getLogList(); 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/service/interfaces/IExcelService.java: -------------------------------------------------------------------------------- 1 | package org.enroll.service.interfaces; 2 | 3 | import org.springframework.web.multipart.MultipartFile; 4 | 5 | import java.io.IOException; 6 | import java.io.OutputStream; 7 | 8 | public interface IExcelService { 9 | 10 | 11 | void ReadMajorExcel(MultipartFile file) throws IOException ; 12 | 13 | void ReadStudentExcel(MultipartFile file) throws IOException ; 14 | 15 | void doExport(OutputStream os); 16 | 17 | void exportExitStudent(OutputStream os); 18 | } 19 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | HELP.md 2 | target/ 3 | !.mvn/wrapper/maven-wrapper.jar 4 | !**/src/main/**/target/ 5 | !**/src/test/**/target/ 6 | 7 | ### STS ### 8 | .apt_generated 9 | .classpath 10 | .factorypath 11 | .project 12 | .settings 13 | .springBeans 14 | .sts4-cache 15 | 16 | ### IntelliJ IDEA ### 17 | .idea 18 | *.iws 19 | *.iml 20 | *.ipr 21 | 22 | ### NetBeans ### 23 | /nbproject/private/ 24 | /nbbuild/ 25 | /dist/ 26 | /nbdist/ 27 | /.nb-gradle/ 28 | build/ 29 | !**/src/main/**/build/ 30 | !**/src/test/**/build/ 31 | 32 | ### VS Code ### 33 | .vscode/ 34 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-0b21ef94.856051f2.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}.table-row-count[data-v-732fcddd]{color:#999;float:left;padding:10px;border-radius:3px;background-color:#fff}#search-result-input[data-v-767187ae]{float:right;width:300px}#search-result-input .el-select[data-v-767187ae]{width:100px}.page-bar[data-v-767187ae]{width:500px;margin:30px auto} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-635f7714.3e3820e0.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}.table-row-count[data-v-732fcddd]{color:#999;float:left;padding:10px;border-radius:3px;background-color:#fff}#search-result-input[data-v-33ed0424]{float:right;width:300px}#search-result-input .el-select[data-v-33ed0424]{width:100px}.page-bar[data-v-33ed0424]{width:500px;margin:30px auto} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-6c4f308a.54bf89e2.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}.table-row-count[data-v-732fcddd]{color:#999;float:left;padding:10px;border-radius:3px;background-color:#fff}#search-result-input[data-v-5c3be60b]{float:right;width:300px}#search-result-input .el-select[data-v-5c3be60b]{width:100px}.page-bar[data-v-5c3be60b]{width:500px;margin:30px auto} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-28c14a28.47ce6869.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}.table-row-count[data-v-732fcddd]{color:#999;float:left;padding:10px;border-radius:3px;background-color:#fff}#student-plan-import-btn[data-v-d17bab06]{float:right}.student-plan-text[data-v-d17bab06]{display:inline-block;margin-top:5px}.plan-edit-btn[data-v-d17bab06]{float:right;margin-right:60px} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-df73dcd6.e7f32f20.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}.table-row-count[data-v-732fcddd]{color:#999;float:left;padding:10px;border-radius:3px;background-color:#fff}#student-plan-import-btn[data-v-604466ac]{float:right}.student-plan-text[data-v-604466ac]{display:inline-block;margin-top:5px}.plan-edit-btn[data-v-604466ac]{float:right;margin-right:60px} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-4a6f3068.19fceec4.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}#geo-distribute-country[data-v-1e38fb33],#geo-distribute-province[data-v-1e38fb33]{padding:80px;float:left;background-color:#fff;width:550px;height:550px;margin:5px;border-radius:10px}#geo-distribute-province-col[data-v-1e38fb33]{padding:80px;float:left;margin:5px;background-color:#fff;width:1110px;height:400px} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-4de0dec3.19fceec4.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}#geo-distribute-country[data-v-1e38fb33],#geo-distribute-province[data-v-1e38fb33]{padding:80px;float:left;background-color:#fff;width:550px;height:550px;margin:5px;border-radius:10px}#geo-distribute-province-col[data-v-1e38fb33]{padding:80px;float:left;margin:5px;background-color:#fff;width:1110px;height:400px} -------------------------------------------------------------------------------- /src/main/java/org/enroll/pojo/StatisticsResult.java: -------------------------------------------------------------------------------- 1 | package org.enroll.pojo; 2 | 3 | import com.github.pagehelper.PageInfo; 4 | import lombok.Data; 5 | import lombok.Getter; 6 | import lombok.Setter; 7 | import org.apache.ibatis.type.Alias; 8 | 9 | 10 | @Setter 11 | @Getter 12 | @Alias("statisticsResult") 13 | @Data 14 | public class StatisticsResult { 15 | 16 | private Integer topRank; 17 | 18 | private Integer bottomRank; 19 | 20 | private Integer maxGrade; 21 | 22 | private Integer minGrade; 23 | 24 | private Integer averageGrade; 25 | 26 | private String groupName; 27 | } 28 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/utils/JsonResponse.java: -------------------------------------------------------------------------------- 1 | package org.enroll.utils; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | @Getter 8 | @Setter 9 | @AllArgsConstructor 10 | public class JsonResponse { 11 | 12 | 13 | public static final String OK = "000"; 14 | public static final String SYSTEM_ERROR = "100"; 15 | public static final String INVALID_REQUEST = "001"; 16 | public static final String AUTH_ERR = "010"; 17 | 18 | private String code; 19 | 20 | private Object data; 21 | 22 | private String message; 23 | 24 | 25 | } 26 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/EnrollSystemApplication.java: -------------------------------------------------------------------------------- 1 | package org.enroll; 2 | 3 | import org.mybatis.spring.annotation.MapperScan; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; 7 | 8 | 9 | @MapperScan("org.enroll.mapper") 10 | @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) 11 | public class EnrollSystemApplication { 12 | 13 | public static void main(String[] args) { 14 | SpringApplication.run(EnrollSystemApplication.class, args); 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/service/impl/DepartmentServiceImpl.java: -------------------------------------------------------------------------------- 1 | package org.enroll.service.impl; 2 | 3 | import org.enroll.mapper.DepartmentMapper; 4 | import org.enroll.pojo.Department; 5 | import org.enroll.service.interfaces.IDepartmentService; 6 | import org.springframework.beans.factory.annotation.Autowired; 7 | import org.springframework.stereotype.Service; 8 | 9 | import java.util.List; 10 | 11 | @Service 12 | public class DepartmentServiceImpl implements IDepartmentService { 13 | 14 | @Autowired 15 | private DepartmentMapper departmentMapper; 16 | 17 | 18 | @Override 19 | public List getDepartments() { 20 | return departmentMapper.getDepartments(); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-27006b18.73f468a7.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}#count-distribute-column[data-v-216025a8]{background-color:#fff;float:left;padding:20px}#count-distribute-type[data-v-216025a8]{float:left;margin-left:15px;height:100px;width:500px;padding:30px 15px;background-color:#fff;border-radius:5px;margin-bottom:10px}#count-distribute-type .type-selector[data-v-216025a8]{float:left;margin-left:120px;margin-top:15px}#count-distribute-ring[data-v-216025a8]{background-color:#fff;float:left;width:500px;padding:70px 20px;height:530px;margin-left:15px} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-4d362591.73f468a7.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}#count-distribute-column[data-v-216025a8]{background-color:#fff;float:left;padding:20px}#count-distribute-type[data-v-216025a8]{float:left;margin-left:15px;height:100px;width:500px;padding:30px 15px;background-color:#fff;border-radius:5px;margin-bottom:10px}#count-distribute-type .type-selector[data-v-216025a8]{float:left;margin-left:120px;margin-top:15px}#count-distribute-ring[data-v-216025a8]{background-color:#fff;float:left;width:500px;padding:70px 20px;height:530px;margin-left:15px} -------------------------------------------------------------------------------- /src/main/java/org/enroll/controller/DepartmentController.java: -------------------------------------------------------------------------------- 1 | package org.enroll.controller; 2 | 3 | import org.enroll.service.interfaces.IDepartmentService; 4 | import org.enroll.utils.JsonResponse; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.web.bind.annotation.RequestMapping; 7 | import org.springframework.web.bind.annotation.RestController; 8 | 9 | @RestController 10 | @RequestMapping("/department") 11 | public class DepartmentController { 12 | 13 | @Autowired 14 | private IDepartmentService departmentService; 15 | 16 | 17 | @RequestMapping("/getDepartments") 18 | public JsonResponse getDepartments(){ 19 | return new JsonResponse(JsonResponse.OK, departmentService.getDepartments(), null); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/resources/mybatis/mapper/DepartmentMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | INSERT INTO t_department 9 | (department_name) 10 | VALUES 11 | (#{departmentName}) 12 | 13 | 14 | 15 | 19 | 20 | 21 | DELETE 22 | FROM t_department 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-b6dad75c.200f7c4c.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}.table-row-count[data-v-732fcddd]{color:#999;float:left;padding:10px;border-radius:3px;background-color:#fff}.result-query-option[data-v-600cd3da]{height:100px;width:1190px;padding:30px 15px;background-color:#fff;border-radius:5px;margin-bottom:10px}.result-query-option .dep-selector[data-v-600cd3da]{float:left;margin-left:15px}.result-query-option .major-selector[data-v-600cd3da]{float:left;margin-left:25px}.result-query-option .rank-select-slider[data-v-600cd3da]{float:left;width:500px;margin-left:20px}.result-query-option .result-query-btn[data-v-600cd3da]{float:left;margin-left:50px}.page-bar[data-v-600cd3da]{width:500px;margin:30px auto} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-bdce9ffc.d5b942ee.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}.table-row-count[data-v-732fcddd]{color:#999;float:left;padding:10px;border-radius:3px;background-color:#fff}.result-query-option[data-v-60d120b2]{height:100px;width:1190px;padding:30px 15px;background-color:#fff;border-radius:5px;margin-bottom:10px}.result-query-option .dep-selector[data-v-60d120b2]{float:left;margin-left:15px}.result-query-option .major-selector[data-v-60d120b2]{float:left;margin-left:25px}.result-query-option .rank-select-slider[data-v-60d120b2]{float:left;width:500px;margin-left:20px}.result-query-option .result-query-btn[data-v-60d120b2]{float:left;margin-left:50px}.page-bar[data-v-60d120b2]{width:500px;margin:30px auto} -------------------------------------------------------------------------------- /src/main/resources/mybatis/mapper/StatusMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | INSERT INTO t_log 8 | (log_content, status) 9 | VALUES 10 | (#{content}, #{status}) 11 | 12 | 13 | 19 | 20 | 21 | 26 | 27 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/mapper/MajorMapper.java: -------------------------------------------------------------------------------- 1 | package org.enroll.mapper; 2 | 3 | import org.apache.ibatis.annotations.Param; 4 | import org.enroll.excel.pojo.ExcelMajor; 5 | import org.enroll.pojo.Major; 6 | import org.springframework.stereotype.Repository; 7 | 8 | import java.util.List; 9 | 10 | @Repository 11 | public interface MajorMapper { 12 | 13 | void insertMajor( @Param("majorList") List list); 14 | 15 | List getMajorPlan(); 16 | 17 | List getMajorPlanForEnroll(); 18 | 19 | List getMajorPlanForAdjust(); 20 | 21 | void updateStudentCount(@Param("majors") List majors); 22 | 23 | void updatePlanStudentCount(@Param("majorId") String majorId, @Param("count") int count); 24 | 25 | void resetMajor(); 26 | 27 | void resetTable(); 28 | 29 | List getMajors(); 30 | 31 | List getMajorsByDepartment(@Param("departmentId") int departmentId); 32 | } 33 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-236aebbf.3d4c6965.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}#back-stage-grade-distribute #grade-distribute-column[data-v-0e8a85c7]{background-color:#fff;float:left;padding:20px}#back-stage-grade-distribute #grade-distribute-type[data-v-0e8a85c7]{float:left;margin-left:15px;height:100px;width:500px;padding:30px 15px;background-color:#fff;border-radius:5px;margin-bottom:10px}#back-stage-grade-distribute #grade-distribute-type .dep-selector[data-v-0e8a85c7]{float:left;margin-left:15px}#back-stage-grade-distribute #grade-distribute-type .major-selector[data-v-0e8a85c7]{float:left;margin-left:25px}#back-stage-grade-distribute #grade-distribute-ring[data-v-0e8a85c7]{background-color:#fff;float:left;width:500px;padding:70px 20px;height:530px;margin-left:15px} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-5bf4cf60.3d4c6965.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}#back-stage-grade-distribute #grade-distribute-column[data-v-0e8a85c7]{background-color:#fff;float:left;padding:20px}#back-stage-grade-distribute #grade-distribute-type[data-v-0e8a85c7]{float:left;margin-left:15px;height:100px;width:500px;padding:30px 15px;background-color:#fff;border-radius:5px;margin-bottom:10px}#back-stage-grade-distribute #grade-distribute-type .dep-selector[data-v-0e8a85c7]{float:left;margin-left:15px}#back-stage-grade-distribute #grade-distribute-type .major-selector[data-v-0e8a85c7]{float:left;margin-left:25px}#back-stage-grade-distribute #grade-distribute-ring[data-v-0e8a85c7]{background-color:#fff;float:left;width:500px;padding:70px 20px;height:530px;margin-left:15px} -------------------------------------------------------------------------------- /src/main/java/org/enroll/interceptor/LoginInterceptor.java: -------------------------------------------------------------------------------- 1 | package org.enroll.interceptor; 2 | 3 | import org.springframework.stereotype.Component; 4 | import org.springframework.web.servlet.HandlerInterceptor; 5 | 6 | 7 | import javax.annotation.Resource; 8 | import javax.servlet.http.HttpServletRequest; 9 | import javax.servlet.http.HttpServletResponse; 10 | import java.util.Map; 11 | 12 | @Component 13 | public class LoginInterceptor implements HandlerInterceptor { 14 | 15 | 16 | @Resource(name = "globalStorage") 17 | Map storage; 18 | 19 | public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { 20 | // if(request.getSession().equals(storage.get("authSession"))) 21 | // return true; 22 | // response.setCharacterEncoding("UTF-8"); 23 | // response.setContentType("application/json"); 24 | // response.getWriter().println("{\"code\":\"010\",\"data\":null,\"message\":\"未登录\"}"); 25 | // return false; 26 | return true; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/excel/pojo/ExcelMajor.java: -------------------------------------------------------------------------------- 1 | package org.enroll.excel.pojo; 2 | 3 | import com.alibaba.excel.annotation.ExcelProperty; 4 | import com.alibaba.excel.annotation.write.style.HeadFontStyle; 5 | import com.alibaba.excel.annotation.write.style.HeadStyle; 6 | import lombok.*; 7 | import org.apache.ibatis.type.Alias; 8 | import org.apache.poi.ss.usermodel.FillPatternType; 9 | 10 | @Data 11 | @NoArgsConstructor 12 | @Getter 13 | @Setter 14 | @ToString 15 | public class ExcelMajor { 16 | 17 | @ExcelProperty("专业代号") 18 | private String majorId; 19 | 20 | @ExcelProperty("专业代码") 21 | private String majorCode; 22 | 23 | private int departmentId; 24 | 25 | @ExcelProperty("学院") 26 | private String departmentName; 27 | 28 | @ExcelProperty("专业名称") 29 | private String majorName; 30 | 31 | @ExcelProperty("备注") 32 | private String comment; 33 | 34 | @ExcelProperty("学制年限") 35 | private int period; 36 | 37 | @ExcelProperty("招生计划数") 38 | private int planStudentCount; 39 | 40 | private int realisticStudentCount; 41 | } 42 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/controller/StatusController.java: -------------------------------------------------------------------------------- 1 | package org.enroll.controller; 2 | 3 | import org.enroll.service.interfaces.IStatusService; 4 | import org.enroll.utils.JsonResponse; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.web.bind.annotation.RequestMapping; 7 | import org.springframework.web.bind.annotation.RestController; 8 | 9 | @RestController 10 | @RequestMapping("/status") 11 | public class StatusController { 12 | 13 | @Autowired 14 | private IStatusService statusService; 15 | 16 | 17 | @RequestMapping("/getStatus") 18 | public JsonResponse getStatus(){ 19 | return new JsonResponse(JsonResponse.OK, statusService.getStatus(), null); 20 | } 21 | 22 | 23 | @RequestMapping("/getLogList") 24 | public JsonResponse getLogList(){ 25 | return new JsonResponse(JsonResponse.OK, statusService.getLogList(), null); 26 | } 27 | 28 | @RequestMapping("/reset") 29 | public JsonResponse reset() { 30 | statusService.reset(); 31 | return new JsonResponse(JsonResponse.OK, null, null); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/exceptionhandler/GlobalExceptionHandler.java: -------------------------------------------------------------------------------- 1 | package org.enroll.exceptionhandler; 2 | 3 | import com.alibaba.excel.exception.ExcelDataConvertException; 4 | import org.enroll.exception.ReadExcelException; 5 | import org.enroll.utils.JsonResponse; 6 | import org.springframework.web.bind.annotation.ControllerAdvice; 7 | import org.springframework.web.bind.annotation.ExceptionHandler; 8 | import org.springframework.web.bind.annotation.ResponseBody; 9 | 10 | @ControllerAdvice 11 | public class GlobalExceptionHandler { 12 | 13 | @ResponseBody 14 | @ExceptionHandler({ReadExcelException.class}) 15 | public JsonResponse handleExcelException(ReadExcelException e) { 16 | return new JsonResponse(JsonResponse.INVALID_REQUEST, null, "导入Excel失败,请检查文件格式"); 17 | } 18 | 19 | @ResponseBody 20 | @ExceptionHandler(Exception.class) 21 | public JsonResponse handle(Exception e){ 22 | if(e instanceof IllegalStateException){ 23 | return new JsonResponse(JsonResponse.INVALID_REQUEST, null, e.getMessage()); 24 | } 25 | return new JsonResponse(JsonResponse.SYSTEM_ERROR, null, e.getMessage()); 26 | } 27 | 28 | 29 | } 30 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-2a98648c.debd27a5.css: -------------------------------------------------------------------------------- 1 | #back-stage-controller[data-v-2e247b35]{min-height:100%;background-color:rgba(9,132,217,.15)}#back-stage-controller #back-stage-controller-header[data-v-2e247b35]{height:70px;background-color:#0984d9;position:fixed;z-index:2000;width:100%}#back-stage-controller #back-stage-controller-header #back-stage-header-text[data-v-2e247b35]{text-align:center;width:400px;padding-top:10px}#back-stage-controller #back-stage-controller-header #back-stage-header-text #back-stage-header-title[data-v-2e247b35]{color:#eee;font-weight:700;font-size:24px;margin-bottom:10px}#back-stage-controller #back-stage-controller-header #back-stage-header-text #back-stage-header-title-eng[data-v-2e247b35]{color:#eee;font-weight:700}#back-stage-controller #back-stage-controller-header #back-stage-controller-header-avatar[data-v-2e247b35]{background:url(../img/avatar.a6d79544.png) 50%;background-size:cover;cursor:pointer;width:50px;height:50px;border-radius:50%;position:absolute;right:30px;top:10px}#back-stage-controller-main[data-v-2e247b35]{width:83%;padding:20px;top:80px;margin-top:70px;float:right;right:0}#back-stage-controller-menu[data-v-2e247b35]{width:17%;min-height:100%;float:left;background-color:#fff;border-right:1px solid #c3e7ff;position:fixed;top:70px}#logout-link[data-v-2e247b35]{text-align:center} -------------------------------------------------------------------------------- /src/main/java/org/enroll/pojo/StudentResult.java: -------------------------------------------------------------------------------- 1 | package org.enroll.pojo; 2 | 3 | import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; 4 | import com.alibaba.excel.annotation.ExcelProperty; 5 | import com.alibaba.excel.annotation.write.style.HeadFontStyle; 6 | import com.alibaba.excel.annotation.write.style.HeadStyle; 7 | import lombok.Getter; 8 | import lombok.Setter; 9 | import org.apache.ibatis.type.Alias; 10 | import org.apache.poi.ss.usermodel.FillPatternType; 11 | 12 | @Alias("studentResult") 13 | @Getter 14 | @Setter 15 | @HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 9) 16 | @HeadFontStyle(fontHeightInPoints = 10) 17 | @ExcelIgnoreUnannotated 18 | public class StudentResult { 19 | 20 | private int studentId; 21 | 22 | @ExcelProperty("考号") 23 | private String candidate; 24 | 25 | @ExcelProperty("姓名") 26 | private String studentName; 27 | 28 | @ExcelProperty("总分") 29 | private int totalGrade; 30 | 31 | @ExcelProperty("排名") 32 | private int rank; 33 | 34 | @ExcelProperty("省份") 35 | private String province; 36 | 37 | @ExcelProperty("城市") 38 | private String city; 39 | 40 | @ExcelProperty("专业") 41 | private String majorName; 42 | 43 | @ExcelProperty("学院") 44 | private String departmentName; 45 | 46 | private int acceptedType; 47 | } 48 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/about.40f64cbb.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["webpack:///./src/views/About.vue?a5be","webpack:///./src/views/About.vue"],"names":["render","_vm","this","_h","$createElement","_self","_c","_m","staticRenderFns","staticClass","_v","script","component"],"mappings":"8GAAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAsBH,EAAII,MAAMC,GAAO,OAAOL,EAAIM,GAAG,IACnGC,EAAkB,CAAC,WAAa,IAAIP,EAAIC,KAASC,EAAGF,EAAIG,eAAmBE,EAAGL,EAAII,MAAMC,IAAIH,EAAG,OAAOG,EAAG,MAAM,CAACG,YAAY,SAAS,CAACH,EAAG,KAAK,CAACL,EAAIS,GAAG,+B,YCAtJC,EAAS,GAKTC,EAAY,eACdD,EACAX,EACAQ,GACA,EACA,KACA,KACA,MAIa,aAAAI,E","file":"js/about.40f64cbb.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"about\"},[_c('h1',[_vm._v(\"This is an about page\")])])}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./About.vue?vue&type=template&id=1ae8a7be&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""} -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/about.6524a0e3.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["webpack:///./src/views/About.vue?0305","webpack:///./src/views/About.vue"],"names":["render","_vm","this","_h","$createElement","_self","_c","_m","staticRenderFns","staticClass","_v","script","component"],"mappings":"8GAAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAsBH,EAAII,MAAMC,GAAO,OAAOL,EAAIM,GAAG,IACnGC,EAAkB,CAAC,WAAa,IAAIP,EAAIC,KAASC,EAAGF,EAAIG,eAAmBE,EAAGL,EAAII,MAAMC,IAAIH,EAAG,OAAOG,EAAG,MAAM,CAACG,YAAY,SAAS,CAACH,EAAG,KAAK,CAACL,EAAIS,GAAG,+B,YCAtJC,EAAS,GAKTC,EAAY,eACdD,EACAX,EACAQ,GACA,EACA,KACA,KACA,MAIa,aAAAI,E","file":"js/about.6524a0e3.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"about\"},[_c('h1',[_vm._v(\"This is an about page\")])])}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./About.vue?vue&type=template&id=1ae8a7be&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""} -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/about.edd3fe2d.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["webpack:///./src/views/About.vue?170d","webpack:///./src/views/About.vue"],"names":["render","_vm","this","_h","$createElement","_self","_c","_m","staticRenderFns","staticClass","_v","script","component"],"mappings":"8GAAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAsBH,EAAII,MAAMC,GAAO,OAAOL,EAAIM,GAAG,IACnGC,EAAkB,CAAC,WAAa,IAAIP,EAAIC,KAASC,EAAGF,EAAIG,eAAmBE,EAAGL,EAAII,MAAMC,IAAIH,EAAG,OAAOG,EAAG,MAAM,CAACG,YAAY,SAAS,CAACH,EAAG,KAAK,CAACL,EAAIS,GAAG,+B,YCAtJC,EAAS,GAKTC,EAAY,eACdD,EACAX,EACAQ,GACA,EACA,KACA,KACA,MAIa,aAAAI,E","file":"js/about.edd3fe2d.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"about\"},[_c('h1',[_vm._v(\"This is an about page\")])])}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./About.vue?vue&type=template&id=0391505c&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""} -------------------------------------------------------------------------------- /src/main/java/org/enroll/service/impl/StatusServiceImpl.java: -------------------------------------------------------------------------------- 1 | package org.enroll.service.impl; 2 | 3 | import org.enroll.mapper.DepartmentMapper; 4 | import org.enroll.mapper.MajorMapper; 5 | import org.enroll.mapper.StatusMapper; 6 | import org.enroll.mapper.StudentMapper; 7 | import org.enroll.pojo.EnrollStatus; 8 | import org.enroll.pojo.Log; 9 | import org.enroll.service.interfaces.IStatusService; 10 | import org.springframework.beans.factory.annotation.Autowired; 11 | import org.springframework.stereotype.Service; 12 | 13 | import java.util.List; 14 | 15 | 16 | @Service 17 | public class StatusServiceImpl implements IStatusService { 18 | 19 | @Autowired 20 | private StatusMapper statusMapper; 21 | 22 | @Autowired 23 | private DepartmentMapper departmentMapper; 24 | 25 | @Autowired 26 | private StudentMapper studentMapper; 27 | 28 | @Autowired 29 | private MajorMapper majorMapper; 30 | 31 | 32 | @Override 33 | public Integer getStatus() { 34 | return statusMapper.getStatus(); 35 | } 36 | 37 | 38 | @Override 39 | public List getLogList(){ 40 | return statusMapper.getLogList(); 41 | } 42 | 43 | 44 | @Override 45 | public void reset() { 46 | 47 | studentMapper.resetTable(); 48 | majorMapper.resetTable(); 49 | departmentMapper.resetTable(); 50 | statusMapper.addLog("重置系统", EnrollStatus.START.ordinal()); 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-4b88d4fa.7e107609.css: -------------------------------------------------------------------------------- 1 | .el-menu.el-menu--horizontal[data-v-0dec86ae]{border-bottom:0}#back-stage-controller[data-v-0dec86ae]{min-height:100%;background-color:rgba(9,132,217,.15)}#back-stage-controller #back-stage-controller-header[data-v-0dec86ae]{height:70px;background-color:#0984d9;position:fixed;z-index:2000;width:100%}#back-stage-controller #back-stage-controller-header #option-menu[data-v-0dec86ae]{float:left}#back-stage-controller #back-stage-controller-header #back-stage-header-text[data-v-0dec86ae]{text-align:center;width:400px;padding-top:10px;float:left}#back-stage-controller #back-stage-controller-header #back-stage-header-text #back-stage-header-title[data-v-0dec86ae]{color:#eee;font-weight:700;font-size:24px;margin-bottom:10px}#back-stage-controller #back-stage-controller-header #back-stage-header-text #back-stage-header-title-eng[data-v-0dec86ae]{color:#eee;font-weight:700}#back-stage-controller #back-stage-controller-header #back-stage-controller-header-avatar[data-v-0dec86ae]{background:url(../img/avatar.a6d79544.png) 50%;background-size:cover;cursor:pointer;width:50px;height:50px;border-radius:50%;position:absolute;right:30px;top:10px}#back-stage-controller-main[data-v-0dec86ae]{width:83%;padding:20px;top:80px;margin-top:70px;float:right;right:0}#back-stage-controller-menu[data-v-0dec86ae]{width:17%;min-height:100%;float:left;background-color:#fff;border-right:1px solid #c3e7ff;position:fixed;top:70px}#logout-link[data-v-0dec86ae]{text-align:center} -------------------------------------------------------------------------------- /src/main/java/org/enroll/controller/MajorController.java: -------------------------------------------------------------------------------- 1 | package org.enroll.controller; 2 | 3 | import org.enroll.service.interfaces.IMajorService; 4 | import org.enroll.utils.JsonResponse; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.web.bind.annotation.RequestMapping; 7 | import org.springframework.web.bind.annotation.RestController; 8 | 9 | @RestController 10 | @RequestMapping("/major") 11 | public class MajorController { 12 | 13 | @Autowired 14 | private IMajorService majorService; 15 | 16 | @RequestMapping("/getMajorPlan") 17 | public JsonResponse getMajorPlan(){ 18 | return new JsonResponse(JsonResponse.OK, majorService.getMajorPlan(), null); 19 | } 20 | 21 | @RequestMapping("/updateMajorPlan") 22 | public JsonResponse updateMajorPlan(String majorId, int count){ 23 | if (count < 0) return new JsonResponse(JsonResponse.INVALID_REQUEST, null, "输入数字不正确"); 24 | majorService.updateMajorPlan(majorId, count ); 25 | return new JsonResponse(JsonResponse.OK, null, null); 26 | } 27 | 28 | @RequestMapping("/getMajors") 29 | public JsonResponse getMajors(){ 30 | return new JsonResponse(JsonResponse.OK, majorService.getMajors(), null); 31 | } 32 | 33 | @RequestMapping("/getMajorsByDepartment") 34 | public JsonResponse getMajorsByDepartment(int departmentId){ 35 | return new JsonResponse(JsonResponse.OK, majorService.getMajorsByDepartment(departmentId), null); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/service/impl/MajorServiceImpl.java: -------------------------------------------------------------------------------- 1 | package org.enroll.service.impl; 2 | 3 | import org.enroll.excel.pojo.ExcelMajor; 4 | import org.enroll.mapper.MajorMapper; 5 | import org.enroll.mapper.StatusMapper; 6 | import org.enroll.pojo.EnrollStatus; 7 | import org.enroll.pojo.Major; 8 | import org.enroll.service.interfaces.IMajorService; 9 | import org.springframework.beans.factory.annotation.Autowired; 10 | import org.springframework.stereotype.Service; 11 | 12 | import java.util.List; 13 | 14 | @Service 15 | public class MajorServiceImpl implements IMajorService { 16 | 17 | 18 | @Autowired 19 | private MajorMapper majorMapper; 20 | 21 | @Autowired 22 | private StatusMapper statusMapper; 23 | 24 | 25 | @Override 26 | public void updateMajorPlan(String majorId, int count) { 27 | Integer status = statusMapper.getStatus(); 28 | if (status == null || status != EnrollStatus.FILE_READY.ordinal() && status != EnrollStatus.WITHOUT_STUDENT.ordinal()){ 29 | throw new RuntimeException("此时不能修改招生计划"); 30 | } 31 | majorMapper.updatePlanStudentCount(majorId, count); 32 | } 33 | 34 | 35 | @Override 36 | public List getMajorPlan(){ 37 | return majorMapper.getMajorPlan(); 38 | } 39 | 40 | @Override 41 | public List getMajors() { 42 | return majorMapper.getMajors(); 43 | } 44 | 45 | @Override 46 | public List getMajorsByDepartment(int departmentId) { 47 | return majorMapper.getMajorsByDepartment(departmentId); 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/excel/pojo/ExcelStudent.java: -------------------------------------------------------------------------------- 1 | package org.enroll.excel.pojo; 2 | 3 | import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; 4 | import com.alibaba.excel.annotation.ExcelProperty; 5 | import com.alibaba.excel.annotation.write.style.HeadFontStyle; 6 | import com.alibaba.excel.annotation.write.style.HeadStyle; 7 | import lombok.*; 8 | import org.apache.poi.ss.usermodel.FillPatternType; 9 | 10 | @Data 11 | @NoArgsConstructor 12 | @Setter 13 | @Getter 14 | @ToString 15 | @HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 9) 16 | @HeadFontStyle(fontHeightInPoints = 10) 17 | @ExcelIgnoreUnannotated 18 | public class ExcelStudent { 19 | 20 | 21 | private int studentId; 22 | 23 | @ExcelProperty("准考证号") 24 | private String candidate; 25 | 26 | @ExcelProperty("姓名") 27 | private String studentName; 28 | 29 | @ExcelProperty("总分") 30 | private int totalGrade; 31 | 32 | @ExcelProperty("志愿1") 33 | private String will1; 34 | 35 | @ExcelProperty("志愿2") 36 | private String will2; 37 | 38 | @ExcelProperty("志愿3") 39 | private String will3; 40 | 41 | @ExcelProperty("志愿4") 42 | private String will4; 43 | 44 | @ExcelProperty("志愿5") 45 | private String will5; 46 | 47 | @ExcelProperty("志愿6") 48 | private String will6; 49 | 50 | @ExcelProperty("调剂") 51 | private int adjust; 52 | 53 | @ExcelProperty("排位") 54 | private int rank; 55 | 56 | @ExcelProperty("省份") 57 | private String province; 58 | 59 | @ExcelProperty("城市") 60 | private String city; 61 | 62 | @ExcelProperty("科类") 63 | private String subjectType; 64 | 65 | private String acceptedMajorId; 66 | 67 | private int acceptedType; 68 | } 69 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/controller/LoginController.java: -------------------------------------------------------------------------------- 1 | package org.enroll.controller; 2 | 3 | import org.enroll.configuration.LoginProperties; 4 | import org.enroll.utils.JsonResponse; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.web.bind.annotation.RequestMapping; 7 | import org.springframework.web.bind.annotation.RestController; 8 | 9 | import javax.annotation.Resource; 10 | import javax.servlet.http.HttpServletRequest; 11 | import javax.servlet.http.HttpSession; 12 | import java.util.Map; 13 | 14 | @RestController 15 | @RequestMapping("/login") 16 | public class LoginController { 17 | 18 | @Autowired 19 | LoginProperties properties; 20 | 21 | @Resource(name = "globalStorage") 22 | Map storage; 23 | 24 | @RequestMapping("/doLogin") 25 | public JsonResponse doLogin(String name, String pass, HttpSession session){ 26 | if(properties.getAdminName().equals(name) && properties.getAdminPass().equals(pass)){ 27 | storage.put("authSession", session); 28 | return new JsonResponse(JsonResponse.OK, null, null); 29 | } else { 30 | return new JsonResponse(JsonResponse.AUTH_ERR, null, "登陆失败"); 31 | } 32 | } 33 | 34 | @RequestMapping("/checkLogin") 35 | public JsonResponse checkLogin(HttpSession session){ 36 | if (session.equals(storage.get("authSession"))){ 37 | return new JsonResponse(JsonResponse.OK, null, "已登录"); 38 | } else { 39 | return new JsonResponse(JsonResponse.AUTH_ERR, null, "未登录"); 40 | } 41 | } 42 | 43 | 44 | @RequestMapping("/logout") 45 | public JsonResponse logout(){ 46 | storage.remove("authSession"); 47 | return new JsonResponse(JsonResponse.OK, null, "注销成功"); 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/excel/listener/ReadStudentListener.java: -------------------------------------------------------------------------------- 1 | package org.enroll.excel.listener; 2 | 3 | import com.alibaba.excel.context.AnalysisContext; 4 | import com.alibaba.excel.event.AnalysisEventListener; 5 | import org.enroll.excel.pojo.ExcelStudent; 6 | import org.enroll.exception.ReadExcelException; 7 | import org.enroll.mapper.StudentMapper; 8 | import org.springframework.util.StringUtils; 9 | 10 | import java.util.ArrayList; 11 | import java.util.List; 12 | 13 | public class ReadStudentListener extends AnalysisEventListener { 14 | private static List list = new ArrayList<>(); 15 | private static final int BATCH_COUNT = 20; 16 | 17 | private StudentMapper studentMapper; 18 | 19 | public ReadStudentListener(StudentMapper studentMapper){ 20 | this.studentMapper = studentMapper; 21 | } 22 | 23 | 24 | @Override 25 | public void invoke(ExcelStudent excelStudent, AnalysisContext analysisContext) { 26 | list.add(excelStudent); 27 | if (list.size() >= BATCH_COUNT) { 28 | this.save(); 29 | list.clear(); 30 | } 31 | } 32 | 33 | @Override 34 | public void doAfterAllAnalysed(AnalysisContext analysisContext) { 35 | this.save(); 36 | list.clear(); 37 | } 38 | 39 | private void save(){ 40 | if (list.size() > 0) { 41 | if (StringUtils.isEmpty(list.get(0).getStudentName())) { 42 | list.clear(); 43 | throw new ReadExcelException("导入Excel失败,请检查文件格式"); 44 | } 45 | this.studentMapper.insertStudent(list); 46 | } 47 | 48 | } 49 | 50 | @Override 51 | public void onException(Exception exception, AnalysisContext context){ 52 | throw new ReadExcelException("导入Excel失败,请检查文件格式"); 53 | } 54 | 55 | 56 | } 57 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-350c3315.73dfd190.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}#operation-history-btn[data-v-8d013648]{float:right;margin-right:30px}.operation-wrap[data-v-8d013648]{padding:20px;border-radius:5px;background-color:#fff;width:400px;float:left;margin:5px;position:relative}.operation-wrap.forbidden[data-v-8d013648]{cursor:not-allowed}.operation-wrap .operation-modal[data-v-8d013648]{width:100%;height:100%;position:absolute;border-radius:5px;top:0;left:0;z-index:5;background-color:rgba(0,0,0,.4)}.operation-wrap .operation-title[data-v-8d013648]{font-size:36px;font-weight:700;text-align:center;height:50px;color:#1e90ff}.operation-wrap .operation-content[data-v-8d013648]{height:157px}.operation-wrap .operation-content .operation-content-tip[data-v-8d013648]{font-size:15px;line-height:20px;color:#aaa}.operation-wrap .operation-content .operation-content-major[data-v-8d013648]{min-width:200px;min-height:100px;margin-top:20px;text-align:center;line-height:48px}.operation-wrap .operation-content .operation-content-major #major-file[data-v-8d013648],.operation-wrap .operation-content .operation-content-major #student-file[data-v-8d013648]{width:150px;float:left;margin-left:15px}#back-stage-situation-content[data-v-8d013648]{width:400px;margin-left:70px;margin-top:50px}#back-stage-situation-content .log-item[data-v-8d013648]{text-align:center;width:300px;padding:15px;background-color:#fff;border-radius:5px;box-shadow:0 0 10px #999}#back-stage-situation-content .log-item .log-content[data-v-8d013648]{font-size:18px;font-weight:700;line-height:30px;color:#777}.el-icon-check[data-v-8d013648]{font-weight:700;color:#00bd24}.el-icon-close[data-v-8d013648]{font-weight:700;color:#ff0c00} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-447d0f58.23667717.css: -------------------------------------------------------------------------------- 1 | #login-wrap[data-v-32ef4ba0]{background:url(../img/loginbg.4fc48880.jpg) no-repeat;background-size:cover;height:100%}#login-wrap #login-bg[data-v-32ef4ba0]{height:100%;background-color:rgba(82,101,249,.3);overflow:hidden}#login-wrap #login-bg #login-bg-block-top[data-v-32ef4ba0]{width:2000px;height:600px;background-color:rgba(204,229,249,.9);transform:rotate(15deg) translate(-300px,-375px);transition:5s}#login-wrap #login-bg #login-bg-block-top.block-active[data-v-32ef4ba0]{transform:rotate(15deg) translateY(-425px)}#login-wrap #login-bg #login-bg-block-bottom[data-v-32ef4ba0]{width:2000px;height:600px;background-color:rgba(204,229,249,.9);transform:rotate(15deg) translate(-600px,225px);transition:5s}#login-wrap #login-bg #login-bg-block-bottom.block-active[data-v-32ef4ba0]{transform:rotate(15deg) translate(-600px,175px)}#login-welcome[data-v-32ef4ba0]{position:absolute;top:300px;left:300px;text-align:center;font-weight:700;text-shadow:5px 5px 5px #777}#login-welcome #welcome-system-name[data-v-32ef4ba0]{font-size:56px;color:#eee;margin-bottom:20px}#login-welcome #welcome-system-name-eng[data-v-32ef4ba0]{font-size:24px;color:#eee}#login-form[data-v-32ef4ba0]{height:290px;width:300px;padding:40px 15px;border-radius:5px;background-color:hsla(0,0%,100%,.8);box-shadow:0 0 15px #666;position:absolute;right:100px;top:200px}#login-form #login-form-avatar[data-v-32ef4ba0]{background:url(../img/avatar.a6d79544.png) 50%;background-size:cover;border-radius:50%;width:100px;height:100px;position:absolute;top:-50px;left:100px}#login-form #login-form-title[data-v-32ef4ba0]{font-size:24px;text-align:center;color:#1e90ff;margin:25px;font-weight:700}#login-form #login-form-name[data-v-32ef4ba0],#login-form #login-form-pass[data-v-32ef4ba0],#login-form #login-form-submit[data-v-32ef4ba0]{margin:15px}#login-form #login-form-submit .el-button[data-v-32ef4ba0]{width:240px} -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-7875625f.63b12491.css: -------------------------------------------------------------------------------- 1 | #login-wrap[data-v-9aebc69a]{background:url(../img/loginbg.4fc48880.jpg) no-repeat;background-size:cover;height:100%}#login-wrap #login-bg[data-v-9aebc69a]{height:100%;background-color:rgba(82,101,249,.3);overflow:hidden}#login-wrap #login-bg #login-bg-block-top[data-v-9aebc69a]{width:2000px;height:600px;background-color:rgba(204,229,249,.9);transform:rotate(15deg) translate(-300px,-375px);transition:5s}#login-wrap #login-bg #login-bg-block-top.block-active[data-v-9aebc69a]{transform:rotate(15deg) translateY(-425px)}#login-wrap #login-bg #login-bg-block-bottom[data-v-9aebc69a]{width:2000px;height:600px;background-color:rgba(204,229,249,.9);transform:rotate(15deg) translate(-600px,225px);transition:5s}#login-wrap #login-bg #login-bg-block-bottom.block-active[data-v-9aebc69a]{transform:rotate(15deg) translate(-600px,175px)}#login-welcome[data-v-9aebc69a]{position:absolute;top:300px;left:300px;text-align:center;font-weight:700;text-shadow:5px 5px 5px #777}#login-welcome #welcome-system-name[data-v-9aebc69a]{font-size:56px;color:#eee;margin-bottom:20px}#login-welcome #welcome-system-name-eng[data-v-9aebc69a]{font-size:24px;color:#eee}#login-form[data-v-9aebc69a]{height:290px;width:300px;padding:40px 15px;border-radius:5px;background-color:hsla(0,0%,100%,.8);box-shadow:0 0 15px #666;position:absolute;right:100px;top:200px}#login-form #login-form-avatar[data-v-9aebc69a]{background:url(../img/avatar.a6d79544.png) 50%;background-size:cover;border-radius:50%;width:100px;height:100px;position:absolute;top:-50px;left:100px}#login-form #login-form-title[data-v-9aebc69a]{font-size:24px;text-align:center;color:#1e90ff;margin:25px;font-weight:700}#login-form #login-form-name[data-v-9aebc69a],#login-form #login-form-pass[data-v-9aebc69a],#login-form #login-form-submit[data-v-9aebc69a]{margin:15px}#login-form #login-form-submit .el-button[data-v-9aebc69a]{width:240px} -------------------------------------------------------------------------------- /src/main/java/org/enroll/service/interfaces/IStudentService.java: -------------------------------------------------------------------------------- 1 | package org.enroll.service.interfaces; 2 | 3 | import com.github.pagehelper.PageInfo; 4 | import org.apache.ibatis.annotations.Param; 5 | import org.enroll.excel.pojo.ExcelStudent; 6 | import org.enroll.pojo.StatisticsResult; 7 | import org.enroll.utils.QueryResultOption; 8 | 9 | import java.io.OutputStream; 10 | import java.util.List; 11 | import java.util.Map; 12 | 13 | public interface IStudentService { 14 | 15 | PageInfo getStudentRaw(int currentPage); 16 | 17 | PageInfo getAdjustStudentRaw(int currentPage); 18 | 19 | PageInfo getExitStudentRaw(int currentPage); 20 | 21 | void doEnroll(); 22 | 23 | void doAdjust(); 24 | 25 | PageInfo getResult(int currentPage, boolean desc, QueryResultOption option); 26 | 27 | PageInfo getResultByDepartment( int departmentId, int currentPage, boolean desc); 28 | 29 | PageInfo getResultByMajor( String majorId, int currentPage, boolean desc); 30 | 31 | PageInfo searchStudent(int currentPage, String keyword); 32 | 33 | PageInfo searchStudentByCandidate(int currentPage, String keyword); 34 | 35 | PageInfo getStudentBeforeRank(int currentPage, int rank); 36 | 37 | List getStatisticsResult(); 38 | 39 | List getStatisticsResultInDepartment(); 40 | 41 | List getStatisticsResultInMajor(); 42 | 43 | List> getDistribute(); 44 | 45 | List> getDistributeInProvince(String province); 46 | 47 | List> getGradeDistribute(); 48 | 49 | List> getGradeDistributeByDepartment( int departmentId); 50 | 51 | List> getGradeDistributeByMajor(String majorId); 52 | 53 | List> getCountDistributeInDepartment(); 54 | 55 | List> getCountDistributeInMajor(); 56 | 57 | List> getCountDistributeInMajorByDepartment(int departmentId); 58 | 59 | void reset(); 60 | 61 | void formallyReady(); 62 | } 63 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # admissionsystem_backend 2 | 广东工业大学课程设计 3 | 数据库课程设计 4 | 平行志愿录取系统(后端代码,广东工业大学数据库大作业) 5 | 基于java、spring、MySQL数据库、vue.js的课程设计 6 | 7 | # 更新 8 | * 2020-1-13 9 | 删除了几个状态,重写首页UI,新增导出退档队列,新增启动自动建表 10 | * 2021-5-17 11 | 发现后端代码有未上推部分,重新提交上推 12 | 13 | # 开发环境 14 | * JDK8 15 | * MySQL5.7 16 | * springboot2.3 17 | * maven3.6.3(需要安装,否则没有依赖) 18 | * vue2.0(前端开发环境,并不必需) 19 | * vue-cli3(前端开发环境,并不必需) 20 | 21 | # 前端仓库 22 | https://github.com/Baibair/admissionsystem_frontend 23 | 24 | # 下载项目 25 | * 找一个文件夹,打开cmd,在这个文件夹下运行 26 | ```bash 27 | git clone https://github.com/Baibair/admissionsystem_backend.git 28 | ``` 29 | * 用IDEA打开,前端已打包放置在静态资源文件夹下 30 | 31 | # 环境配置 32 | * 打开Mysql,创建数据库 33 | ```sql 34 | CREATE DATABASE `<你的数据库名>` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci'; 35 | -- 例如:CREATE DATABASE `db_enroll` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci'; 36 | ``` 37 | * 进入数据库,运行sql文件,在sql文件夹下,可以把sql放在一个没有中文路径的地方,否则有可能出错 38 | ```sql 39 | -- 进入刚刚创建的数据库 40 | use db_enroll; 41 | -- 运行路径下的sql文件 42 | source /path/to/sql/db_enroll.sql 43 | ``` 44 | * 修改springboot配置文件application.yml,找到下面配置 45 | ```yaml 46 | enroll: 47 | login: 48 | # 登录用户名 49 | adminName: admin 50 | # 登录密码 51 | adminPass: 123456 52 | # 改为自己的数据库名 53 | database: DATABASE_NAME 54 | # 改为自己的数据库密码(账号默认root) 55 | dbpass: MYSQL_PASSWORD 56 | ``` 57 | 58 | # 运行 59 | * 找到启动类`EnrollSystemApplication`,并运行 60 | * 打开浏览器,访问`http://localhost:8080/admission/index.html` 61 | 62 | # 效果 63 | ## 登录 64 | ![img](https://github.com/Baibair/admissionsystem_backend/blob/master/images/Snipaste_2020-10-26_13-34-25.png) 65 | ## 导入(测试文件在excel文件夹下,数据为随机模拟) 66 | ## 表格信息 67 | ![img](https://github.com/Baibair/admissionsystem_backend/blob/master/images/Snipaste_2020-10-26_13-38-37.png) 68 | ## 统计信息 69 | ![img](https://github.com/Baibair/admissionsystem_backend/blob/master/images/Snipaste_2020-10-26_13-39-28.png) 70 | ## 生源地分布 71 | ![img](https://github.com/Baibair/admissionsystem_backend/blob/master/images/Snipaste_2020-10-26_13-40-11.png) 72 | ## 导出结果 73 | ![img](https://github.com/Baibair/admissionsystem_backend/blob/master/images/Snipaste_2020-10-26_13-41-04.png) 74 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-7875625f.9fc75238.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-7875625f"],{"39b2":function(t,e,a){},ac4e:function(t,e,a){"use strict";var i=a("39b2"),s=a.n(i);s.a},b461:function(t,e,a){"use strict";a.r(e);var i=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"clearfix",attrs:{id:"login-wrap"}},[a("div",{attrs:{id:"login-bg"}},[a("div",{class:{"block-active":t.blockActive},attrs:{id:"login-bg-block-top"}}),a("div",{class:{"block-active":t.blockActive},attrs:{id:"login-bg-block-bottom"}}),t._m(0),a("div",{staticClass:"container-fluid",attrs:{id:"login-form"}},[a("el-col",{attrs:{span:24}},[a("div",{attrs:{id:"login-form-avatar"}}),a("div",{attrs:{id:"login-form-title"}},[t._v(" 管理员登录 ")]),a("div",{attrs:{id:"login-form-name"}},[a("el-input",{attrs:{placeholder:"用户名"},model:{value:t.username,callback:function(e){t.username=e},expression:"username"}})],1),a("div",{attrs:{id:"login-form-pass"}},[a("el-input",{attrs:{placeholder:"密码",type:"password","show-password":""},model:{value:t.password,callback:function(e){t.password=e},expression:"password"}})],1),a("div",{staticClass:"clearfix",attrs:{id:"login-form-submit"}},[a("el-button",{attrs:{type:"primary",loading:t.loading},on:{click:t.doLogin}},[t._v("登录")])],1)])],1)])])},s=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"login-welcome"}},[a("div",{attrs:{id:"welcome-system-name"}},[t._v(" 志愿录取系统 ")]),a("div",{attrs:{id:"welcome-system-name-eng"}},[t._v(" ADMISSION SYSTEM ")])])}],o=a("1bab"),n={name:"Login",data:function(){return{blockActive:!1,username:"",password:"",loading:!1}},methods:{doLogin:function(){var t=this;this.loading=!0,Object(o["a"])({url:"login/doLogin",method:"POST",data:{name:this.username,pass:this.password}}).then((function(e){"000"===e.code?(t.$router.push("/backStage/situation"),t.$message.success("登陆成功")):t.$message.error(e.message),t.loading=!1})).catch((function(e){t.$message.error("系统错误"),t.loading=!1}))}},mounted:function(){var t=this;setInterval((function(){t.blockActive=!t.blockActive}),5e3),setTimeout((function(){t.blockActive=!t.blockActive}),200)}},c=n,r=(a("ac4e"),a("2877")),l=Object(r["a"])(c,i,s,!1,null,"9aebc69a",null);e["default"]=l.exports}}]); 2 | //# sourceMappingURL=chunk-7875625f.9fc75238.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-000a4c55.286d1172.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}#operation-history-btn[data-v-daf73c38]{float:right;margin-right:30px}#reset-info-btn[data-v-daf73c38]{float:right;margin-right:10px}.processInfo[data-v-daf73c38]{width:1000px;margin:40px auto;font-weight:bolder;font-size:20px;text-align:center;color:#0984d9;background-color:#fff;border-radius:20px}.processInfo h1[data-v-daf73c38]{padding:20px}.sys-discription[data-v-daf73c38]{width:800px;position:relative;buttom:10px;margin:1px auto;padding-bottom:20px;color:#909399;text-align:left;font-size:12px}.sys-discription p[data-v-daf73c38]{line-height:20px}.operation-wrap[data-v-daf73c38]{padding:20px;border-radius:5px;background-color:#fff;width:400px;float:left;margin:5px;position:relative}.operation-wrap.forbidden[data-v-daf73c38]{cursor:not-allowed}.operation-wrap .operation-modal[data-v-daf73c38]{width:100%;height:100%;position:absolute;border-radius:5px;top:0;left:0;z-index:5;background-color:rgba(0,0,0,.4)}.operation-wrap .operation-title[data-v-daf73c38]{font-size:36px;font-weight:700;text-align:center;height:50px;color:#1e90ff}.operation-wrap .operation-content[data-v-daf73c38]{height:157px}.operation-wrap .operation-content .operation-content-tip[data-v-daf73c38]{font-size:15px;line-height:20px;color:#aaa}.operation-wrap .operation-content .operation-content-major[data-v-daf73c38]{min-width:200px;min-height:100px;margin-top:20px;text-align:center;line-height:48px}.operation-wrap .operation-content .operation-content-major #major-file[data-v-daf73c38],.operation-wrap .operation-content .operation-content-major #student-file[data-v-daf73c38]{width:150px;float:left;margin-left:15px}#back-stage-situation-content[data-v-daf73c38]{width:400px;margin-left:70px;margin-top:50px}#back-stage-situation-content .log-item[data-v-daf73c38]{text-align:center;width:300px;padding:15px;background-color:#fff;border-radius:5px;box-shadow:0 0 10px #999}#back-stage-situation-content .log-item .log-content[data-v-daf73c38]{font-size:18px;font-weight:700;line-height:30px;color:#777}.el-icon-check[data-v-daf73c38]{font-weight:700;color:#00bd24}.el-icon-close[data-v-daf73c38]{font-weight:700;color:#ff0c00} -------------------------------------------------------------------------------- /src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | spring: 2 | datasource: 3 | username: root 4 | password: ${enroll.dbpass} 5 | url: jdbc:mysql://localhost:3306/${enroll.database}?serverTimezone=GMT%2B8&allowMultiQueries=true 6 | driver-class-name: com.mysql.cj.jdbc.Driver 7 | type: com.alibaba.druid.pool.DruidDataSource 8 | druid: 9 | # 连接池的配置信息 10 | # 初始化大小,最小,最大 11 | initial-size: 5 12 | min-idle: 5 13 | maxActive: 20 14 | # 配置获取连接等待超时的时间 15 | maxWait: 60000 16 | # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 17 | timeBetweenEvictionRunsMillis: 60000 18 | # 配置一个连接在池中最小生存的时间,单位是毫秒 19 | minEvictableIdleTimeMillis: 300000 20 | validationQuery: SELECT 1 21 | testWhileIdle: true 22 | testOnBorrow: false 23 | testOnReturn: false 24 | # 打开PSCache,并且指定每个连接上PSCache的大小 25 | poolPreparedStatements: true 26 | maxPoolPreparedStatementPerConnectionSize: 20 27 | # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙 28 | filters: stat,slf4j 29 | # 通过connectProperties属性来打开mergeSql功能;慢SQL记录 30 | connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000 31 | # 配置DruidStatFilter 32 | web-stat-filter: 33 | enabled: true 34 | url-pattern: "/*" 35 | exclusions: "*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*" 36 | # 配置DruidStatViewServlet 37 | stat-view-servlet: 38 | url-pattern: "/druid/*" 39 | # IP白名单(没有配置或者为空,则允许所有访问) 40 | allow: 127.0.0.1,192.168.163.1 41 | # IP黑名单 (存在共同时,deny优先于allow) 42 | reset-enable: false 43 | # 登录名 44 | login-username: admin 45 | # 登录密码 46 | login-password: 123456 47 | filter: 48 | wall: 49 | config: 50 | multi-statement-allow: true 51 | initialization-mode: ALWAYS 52 | schema: 53 | - classpath:sql/schema.sql 54 | 55 | initialize: true 56 | devtools: 57 | restart: 58 | enabled: true 59 | jackson: 60 | time-zone: GMT+8 61 | date-format: yyyy-MM-dd HH:mm:ss 62 | mybatis: 63 | configuration: 64 | map-underscore-to-camel-case: true 65 | mapper-locations: 66 | - classpath:mybatis/mapper/*.xml 67 | type-aliases-package: org.enroll.pojo 68 | 69 | 70 | enroll: 71 | login: 72 | adminName: admin 73 | adminPass: 123456 74 | database: db_enroll 75 | dbpass: 15975867048 -------------------------------------------------------------------------------- /src/main/resources/static/admission/css/chunk-448d2a85.afa49312.css: -------------------------------------------------------------------------------- 1 | .empty-data[data-v-cec065f2]{margin-top:150px;text-align:center;color:#1e90ff;opacity:.3}.empty-data .empty-box[data-v-cec065f2]{font-size:128px;padding-bottom:25px}.empty-data .empty-data-text[data-v-cec065f2]{font-size:36px}#operation-history-btn[data-v-10c6182c]{float:right;margin-right:30px}#reset-info-btn[data-v-10c6182c]{float:right;margin-right:10px}.processInfo[data-v-10c6182c]{width:1000px;margin:40px auto;font-weight:bolder;font-size:20px;text-align:center;color:#0984d9;background-color:#fff;border-radius:20px}.processInfo h1[data-v-10c6182c]{padding:20px}.sys-discription[data-v-10c6182c]{width:800px;position:relative;buttom:10px;margin:1px auto;padding-bottom:20px;color:#909399;text-align:left;font-size:12px}.sys-discription p1[data-v-10c6182c]{font-weight:700;line-height:30px}.sys-discription p[data-v-10c6182c]{line-height:20px}.operation-wrap[data-v-10c6182c]{padding:20px;border-radius:5px;background-color:#fff;width:400px;float:left;margin:5px;position:relative}.operation-wrap.forbidden[data-v-10c6182c]{cursor:not-allowed}.operation-wrap .operation-modal[data-v-10c6182c]{width:100%;height:100%;position:absolute;border-radius:5px;top:0;left:0;z-index:5;background-color:rgba(0,0,0,.4)}.operation-wrap .operation-title[data-v-10c6182c]{font-size:36px;font-weight:700;text-align:center;height:50px;color:#1e90ff}.operation-wrap .operation-content[data-v-10c6182c]{height:157px}.operation-wrap .operation-content .operation-content-tip[data-v-10c6182c]{font-size:15px;line-height:20px;color:#aaa}.operation-wrap .operation-content .operation-content-major[data-v-10c6182c]{min-width:200px;min-height:100px;margin-top:20px;text-align:center;line-height:48px}.operation-wrap .operation-content .operation-content-major #major-file[data-v-10c6182c],.operation-wrap .operation-content .operation-content-major #student-file[data-v-10c6182c]{width:150px;float:left;margin-left:15px}#back-stage-situation-content[data-v-10c6182c]{width:400px;margin-left:70px;margin-top:50px}#back-stage-situation-content .log-item[data-v-10c6182c]{text-align:center;width:300px;padding:15px;background-color:#fff;border-radius:5px;box-shadow:0 0 10px #999}#back-stage-situation-content .log-item .log-content[data-v-10c6182c]{font-size:18px;font-weight:700;line-height:30px;color:#777}.el-icon-check[data-v-10c6182c]{font-weight:700;color:#00bd24}.el-icon-close[data-v-10c6182c]{font-weight:700;color:#ff0c00} -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-447d0f58.22db2c76.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-447d0f58"],{"8ce1":function(t,e,i){},b461:function(t,e,i){"use strict";i.r(e);var a=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"clearfix",attrs:{id:"login-wrap"}},[i("div",{attrs:{id:"login-bg"}},[i("div",{class:{"block-active":t.blockActive},attrs:{id:"login-bg-block-top"}}),i("div",{class:{"block-active":t.blockActive},attrs:{id:"login-bg-block-bottom"}}),t._m(0),i("div",{staticClass:"container-fluid",attrs:{id:"login-form"}},[i("el-col",{attrs:{span:24}},[i("div",{attrs:{id:"login-form-avatar"}}),i("div",{attrs:{id:"login-form-title"}},[t._v(" 管理员登录 ")]),i("div",{attrs:{id:"login-form-name"}},[i("el-input",{attrs:{placeholder:"用户名"},model:{value:t.username,callback:function(e){t.username=e},expression:"username"}})],1),i("div",{attrs:{id:"login-form-pass"}},[i("el-input",{attrs:{placeholder:"密码",type:"password","show-password":""},nativeOn:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.doLogin(e)}},model:{value:t.password,callback:function(e){t.password=e},expression:"password"}})],1),i("div",{staticClass:"clearfix",attrs:{id:"login-form-submit"}},[i("el-button",{attrs:{type:"primary",loading:t.loading},on:{click:t.doLogin}},[t._v("登录")])],1)])],1)])])},o=[function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{attrs:{id:"login-welcome"}},[i("div",{attrs:{id:"welcome-system-name"}},[t._v(" 志愿录取系统 ")]),i("div",{attrs:{id:"welcome-system-name-eng"}},[t._v(" ADMISSION SYSTEM ")])])}],n=i("1bab"),s={name:"Login",data:function(){return{blockActive:!1,username:"",password:"",loading:!1}},methods:{doLogin:function(){var t=this;this.loading=!0,Object(n["a"])({url:"login/doLogin",method:"POST",data:{name:this.username,pass:this.password}}).then((function(e){"000"===e.code?(t.$router.push("/backStage/situation"),t.$message.success("登陆成功")):t.$message.error(e.message),t.loading=!1})).catch((function(e){t.$message.error("系统错误"),t.loading=!1}))}},mounted:function(){var t=this;setInterval((function(){t.blockActive=!t.blockActive}),5e3),setTimeout((function(){t.blockActive=!t.blockActive}),200)}},r=s,c=(i("ba17"),i("2877")),l=Object(c["a"])(r,a,o,!1,null,"32ef4ba0",null);e["default"]=l.exports},ba17:function(t,e,i){"use strict";var a=i("8ce1"),o=i.n(a);o.a}}]); 2 | //# sourceMappingURL=chunk-447d0f58.22db2c76.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-447d0f58.cd1c9362.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-447d0f58"],{"8ce1":function(t,e,i){},b461:function(t,e,i){"use strict";i.r(e);var a=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"clearfix",attrs:{id:"login-wrap"}},[i("div",{attrs:{id:"login-bg"}},[i("div",{class:{"block-active":t.blockActive},attrs:{id:"login-bg-block-top"}}),i("div",{class:{"block-active":t.blockActive},attrs:{id:"login-bg-block-bottom"}}),t._m(0),i("div",{staticClass:"container-fluid",attrs:{id:"login-form"}},[i("el-col",{attrs:{span:24}},[i("div",{attrs:{id:"login-form-avatar"}}),i("div",{attrs:{id:"login-form-title"}},[t._v(" 管理员登录 ")]),i("div",{attrs:{id:"login-form-name"}},[i("el-input",{attrs:{placeholder:"用户名"},model:{value:t.username,callback:function(e){t.username=e},expression:"username"}})],1),i("div",{attrs:{id:"login-form-pass"}},[i("el-input",{attrs:{placeholder:"密码",type:"password","show-password":""},nativeOn:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.doLogin(e)}},model:{value:t.password,callback:function(e){t.password=e},expression:"password"}})],1),i("div",{staticClass:"clearfix",attrs:{id:"login-form-submit"}},[i("el-button",{attrs:{type:"primary",loading:t.loading},on:{click:t.doLogin}},[t._v("登录")])],1)])],1)])])},o=[function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{attrs:{id:"login-welcome"}},[i("div",{attrs:{id:"welcome-system-name"}},[t._v(" 志愿录取系统 ")]),i("div",{attrs:{id:"welcome-system-name-eng"}},[t._v(" ADMISSION SYSTEM ")])])}],n=i("1bab"),s={name:"Login",data:function(){return{blockActive:!1,username:"",password:"",loading:!1}},methods:{doLogin:function(){var t=this;this.loading=!0,Object(n["a"])({url:"login/doLogin",method:"POST",data:{name:this.username,pass:this.password}}).then((function(e){"000"===e.code?(t.$router.push("/backStage/situation"),t.$message.success("登陆成功")):t.$message.error(e.message),t.loading=!1})).catch((function(e){t.$message.error("系统错误"),t.loading=!1}))}},mounted:function(){var t=this;setInterval((function(){t.blockActive=!t.blockActive}),5e3),setTimeout((function(){t.blockActive=!t.blockActive}),200)}},r=s,c=(i("ba17"),i("2877")),l=Object(c["a"])(r,a,o,!1,null,"32ef4ba0",null);e["default"]=l.exports},ba17:function(t,e,i){"use strict";var a=i("8ce1"),o=i.n(a);o.a}}]); 2 | //# sourceMappingURL=chunk-447d0f58.cd1c9362.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/index.html: -------------------------------------------------------------------------------- 1 | enroll
-------------------------------------------------------------------------------- /src/main/java/org/enroll/controller/FileController.java: -------------------------------------------------------------------------------- 1 | package org.enroll.controller; 2 | 3 | import org.enroll.service.interfaces.IExcelService; 4 | import org.enroll.utils.JsonResponse; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.stereotype.Controller; 7 | import org.springframework.web.bind.annotation.CrossOrigin; 8 | import org.springframework.web.bind.annotation.RequestMapping; 9 | import org.springframework.web.bind.annotation.ResponseBody; 10 | import org.springframework.web.bind.annotation.RestController; 11 | import org.springframework.web.multipart.MultipartFile; 12 | 13 | import javax.servlet.http.HttpServletResponse; 14 | import java.io.IOException; 15 | import java.io.UnsupportedEncodingException; 16 | import java.net.URLEncoder; 17 | 18 | @Controller 19 | @RequestMapping("/file") 20 | public class FileController { 21 | 22 | @Autowired 23 | IExcelService excelService; 24 | 25 | 26 | @ResponseBody 27 | @RequestMapping("/uploadMajor") 28 | public JsonResponse uploadMajorExcel(MultipartFile file) throws IOException { 29 | excelService.ReadMajorExcel(file); 30 | return new JsonResponse(JsonResponse.OK,null,null); 31 | } 32 | 33 | @ResponseBody 34 | @RequestMapping("/uploadStudent") 35 | public JsonResponse uploadStudentExcel(MultipartFile file) throws IOException { 36 | excelService.ReadStudentExcel(file); 37 | return new JsonResponse(JsonResponse.OK,null,null); 38 | } 39 | 40 | @RequestMapping("/exportResult") 41 | public void export(HttpServletResponse response) throws IOException { 42 | response.setContentType("application/vnd.ms-excel"); 43 | response.setCharacterEncoding("utf-8"); 44 | String fileName = URLEncoder.encode("录取结果", "UTF-8").replaceAll("\\+", "%20"); 45 | response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); 46 | excelService.doExport(response.getOutputStream()); 47 | } 48 | 49 | @RequestMapping("/exportExit") 50 | public void exportExit(HttpServletResponse response) throws IOException { 51 | response.setContentType("application/vnd.ms-excel"); 52 | response.setCharacterEncoding("utf-8"); 53 | String fileName = URLEncoder.encode("退档结果", "UTF-8").replaceAll("\\+", "%20"); 54 | response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); 55 | excelService.exportExitStudent(response.getOutputStream()); 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/configuration/EnrollConfig.java: -------------------------------------------------------------------------------- 1 | package org.enroll.configuration; 2 | 3 | import org.enroll.interceptor.LoginInterceptor; 4 | import org.springframework.beans.factory.annotation.Autowired; 5 | import org.springframework.beans.factory.annotation.Value; 6 | import org.springframework.context.annotation.Bean; 7 | import org.springframework.context.annotation.Configuration; 8 | import org.springframework.core.io.Resource; 9 | import org.springframework.jdbc.datasource.init.DataSourceInitializer; 10 | import org.springframework.jdbc.datasource.init.DatabasePopulator; 11 | import org.springframework.jdbc.datasource.init.ResourceDatabasePopulator; 12 | import org.springframework.web.servlet.config.annotation.CorsRegistry; 13 | import org.springframework.web.servlet.config.annotation.InterceptorRegistration; 14 | import org.springframework.web.servlet.config.annotation.InterceptorRegistry; 15 | import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; 16 | 17 | import javax.sql.DataSource; 18 | import java.util.HashMap; 19 | 20 | @Configuration 21 | public class EnrollConfig implements WebMvcConfigurer { 22 | 23 | @Autowired 24 | LoginInterceptor interceptor; 25 | 26 | @Value("classpath:sql/schema.sql") 27 | private Resource dataScript; 28 | 29 | 30 | @Override 31 | public void addInterceptors(InterceptorRegistry registry) { 32 | InterceptorRegistration registration = registry.addInterceptor(interceptor); 33 | registration.addPathPatterns("/**"); 34 | registration.excludePathPatterns("/login/doLogin"); 35 | } 36 | 37 | @Override 38 | public void addCorsMappings(CorsRegistry registry) { 39 | registry.addMapping("/**") 40 | .allowedOrigins("http://localhost:8000") 41 | .allowedMethods("GET","HEAD","POST","PUT","DELETE","OPTIONS") 42 | .allowedHeaders("*") 43 | .allowCredentials(true) 44 | .maxAge(3600) 45 | .allowedHeaders("*"); 46 | } 47 | 48 | @Bean 49 | public HashMap globalStorage(){ 50 | return new HashMap<>(); 51 | } 52 | 53 | @Bean 54 | public DataSourceInitializer dataSourceInitializer(final DataSource dataSource) { 55 | final DataSourceInitializer initializer = new DataSourceInitializer(); 56 | initializer.setDataSource(dataSource); 57 | initializer.setDatabasePopulator(databasePopulator()); 58 | initializer.afterPropertiesSet(); 59 | return initializer; 60 | } 61 | 62 | private DatabasePopulator databasePopulator() { 63 | final ResourceDatabasePopulator populator = new ResourceDatabasePopulator(); 64 | populator.addScript(dataScript); 65 | return populator; 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-e11d7e68.0e146902.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-e11d7e68"],{"3b96":function(t,e,a){"use strict";var l=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},n=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],s={name:"EmptyData"},i=s,r=(a("bab9"),a("2877")),o=Object(r["a"])(i,l,n,!1,null,"cec065f2",null);e["a"]=o.exports},"4d80":function(t,e,a){},"7ff5":function(t,e,a){"use strict";a.r(e);var l=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-grade-analyze"}},[a("el-radio",{attrs:{label:0},model:{value:t.type,callback:function(e){t.type=e},expression:"type"}},[t._v("按全校")]),a("el-radio",{attrs:{label:1},model:{value:t.type,callback:function(e){t.type=e},expression:"type"}},[t._v("按学院")]),a("el-radio",{attrs:{label:2},model:{value:t.type,callback:function(e){t.type=e},expression:"type"}},[t._v("按专业")]),a("el-divider"),a("div",{staticClass:"clearfix",attrs:{id:"grade-analyze-table-wrapper"}},[0===t.statisticsResult.length?a("empty-data"):a("div",{attrs:{id:"analyze-table-department"}},[a("el-table",{staticStyle:{width:"100%"},attrs:{data:t.statisticsResult,stripe:""}},[a("el-table-column",{attrs:{prop:"groupName",label:t.type2Str()}}),a("el-table-column",{attrs:{prop:"maxGrade",label:"最高分"}}),a("el-table-column",{attrs:{prop:"minGrade",label:"最低分"}}),a("el-table-column",{attrs:{prop:"averageGrade",label:"平均分"}}),a("el-table-column",{attrs:{prop:"topRank",label:"最高排名"}}),a("el-table-column",{attrs:{prop:"bottomRank",label:"最低排名"}})],1)],1)],1)],1)},n=[],s=(a("d3b7"),a("1bab")),i=a("3b96"),r={name:"GradeAnalyze",data:function(){return{statisticsResult:[],type:0,loading:null}},methods:{loadResult:function(){var t=this,e=null;e=0===this.type?"student/getStatisticsResult":1===this.type?"student/getStatisticsResultInDepartment":"student/getStatisticsResultInMajor",this.setLoading(),Object(s["a"])({url:e}).then((function(e){"000"===e.code?t.statisticsResult=e.data:t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},type2Str:function(){return 0===this.type?"全校":1===this.type?"学院":"专业"},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()}},created:function(){this.loadResult()},watch:{type:function(){this.loadResult()}},components:{EmptyData:i["a"]}},o=r,c=(a("c354"),a("2877")),u=Object(c["a"])(o,l,n,!1,null,"51d29b8b",null);e["default"]=u.exports},bab9:function(t,e,a){"use strict";var l=a("fa03"),n=a.n(l);n.a},c354:function(t,e,a){"use strict";var l=a("4d80"),n=a.n(l);n.a},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-e11d7e68.0e146902.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-e11d7e68.60c7bf87.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-e11d7e68"],{"3b96":function(t,e,a){"use strict";var l=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},n=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],s={name:"EmptyData"},i=s,r=(a("bab9"),a("2877")),o=Object(r["a"])(i,l,n,!1,null,"cec065f2",null);e["a"]=o.exports},"4d80":function(t,e,a){},"7ff5":function(t,e,a){"use strict";a.r(e);var l=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-grade-analyze"}},[a("el-radio",{attrs:{label:0},model:{value:t.type,callback:function(e){t.type=e},expression:"type"}},[t._v("按全校")]),a("el-radio",{attrs:{label:1},model:{value:t.type,callback:function(e){t.type=e},expression:"type"}},[t._v("按学院")]),a("el-radio",{attrs:{label:2},model:{value:t.type,callback:function(e){t.type=e},expression:"type"}},[t._v("按专业")]),a("el-divider"),a("div",{staticClass:"clearfix",attrs:{id:"grade-analyze-table-wrapper"}},[0===t.statisticsResult.length?a("empty-data"):a("div",{attrs:{id:"analyze-table-department"}},[a("el-table",{staticStyle:{width:"100%"},attrs:{data:t.statisticsResult,stripe:""}},[a("el-table-column",{attrs:{prop:"groupName",label:t.type2Str()}}),a("el-table-column",{attrs:{prop:"maxGrade",label:"最高分"}}),a("el-table-column",{attrs:{prop:"minGrade",label:"最低分"}}),a("el-table-column",{attrs:{prop:"averageGrade",label:"平均分"}}),a("el-table-column",{attrs:{prop:"topRank",label:"最高排名"}}),a("el-table-column",{attrs:{prop:"bottomRank",label:"最低排名"}})],1)],1)],1)],1)},n=[],s=(a("d3b7"),a("1bab")),i=a("3b96"),r={name:"GradeAnalyze",data:function(){return{statisticsResult:[],type:0,loading:null}},methods:{loadResult:function(){var t=this,e=null;e=0===this.type?"student/getStatisticsResult":1===this.type?"student/getStatisticsResultInDepartment":"student/getStatisticsResultInMajor",this.setLoading(),Object(s["a"])({url:e}).then((function(e){"000"===e.code?t.statisticsResult=e.data:t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},type2Str:function(){return 0===this.type?"全校":1===this.type?"学院":"专业"},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()}},created:function(){this.loadResult()},watch:{type:function(){this.loadResult()}},components:{EmptyData:i["a"]}},o=r,c=(a("c354"),a("2877")),u=Object(c["a"])(o,l,n,!1,null,"51d29b8b",null);e["default"]=u.exports},bab9:function(t,e,a){"use strict";var l=a("fa03"),n=a.n(l);n.a},c354:function(t,e,a){"use strict";var l=a("4d80"),n=a.n(l);n.a},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-e11d7e68.60c7bf87.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-e11d7e68.80e737c7.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-e11d7e68"],{"3b96":function(t,e,a){"use strict";var l=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},n=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],s={name:"EmptyData"},i=s,r=(a("bab9"),a("2877")),o=Object(r["a"])(i,l,n,!1,null,"cec065f2",null);e["a"]=o.exports},"4d80":function(t,e,a){},"7ff5":function(t,e,a){"use strict";a.r(e);var l=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-grade-analyze"}},[a("el-radio",{attrs:{label:0},model:{value:t.type,callback:function(e){t.type=e},expression:"type"}},[t._v("按全校")]),a("el-radio",{attrs:{label:1},model:{value:t.type,callback:function(e){t.type=e},expression:"type"}},[t._v("按学院")]),a("el-radio",{attrs:{label:2},model:{value:t.type,callback:function(e){t.type=e},expression:"type"}},[t._v("按专业")]),a("el-divider"),a("div",{staticClass:"clearfix",attrs:{id:"grade-analyze-table-wrapper"}},[0===t.statisticsResult.length?a("empty-data"):a("div",{attrs:{id:"analyze-table-department"}},[a("el-table",{staticStyle:{width:"100%"},attrs:{data:t.statisticsResult,stripe:""}},[a("el-table-column",{attrs:{prop:"groupName",label:t.type2Str()}}),a("el-table-column",{attrs:{prop:"maxGrade",label:"最高分"}}),a("el-table-column",{attrs:{prop:"minGrade",label:"最低分"}}),a("el-table-column",{attrs:{prop:"averageGrade",label:"平均分"}}),a("el-table-column",{attrs:{prop:"topRank",label:"最高排名"}}),a("el-table-column",{attrs:{prop:"bottomRank",label:"最低排名"}})],1)],1)],1)],1)},n=[],s=(a("d3b7"),a("1bab")),i=a("3b96"),r={name:"GradeAnalyze",data:function(){return{statisticsResult:[],type:0,loading:null}},methods:{loadResult:function(){var t=this,e=null;e=0===this.type?"student/getStatisticsResult":1===this.type?"student/getStatisticsResultInDepartment":"student/getStatisticsResultInMajor",this.setLoading(),Object(s["a"])({url:e}).then((function(e){"000"===e.code?t.statisticsResult=e.data:t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},type2Str:function(){return 0===this.type?"全校":1===this.type?"学院":"专业"},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()}},created:function(){this.loadResult()},watch:{type:function(){this.loadResult()}},components:{EmptyData:i["a"]}},o=r,c=(a("c354"),a("2877")),u=Object(c["a"])(o,l,n,!1,null,"51d29b8b",null);e["default"]=u.exports},bab9:function(t,e,a){"use strict";var l=a("fa03"),n=a.n(l);n.a},c354:function(t,e,a){"use strict";var l=a("4d80"),n=a.n(l);n.a},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-e11d7e68.80e737c7.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-2a98648c.4071a38a.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2a98648c"],{3109:function(t,e,a){"use strict";var s=a("e791"),i=a.n(s);i.a},6402:function(t,e,a){"use strict";a.r(e);var s=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"clearfix",attrs:{id:"back-stage-controller"}},[a("div",{attrs:{id:"back-stage-controller-header"}},[t._m(0),a("el-popover",{attrs:{placement:"top-start",width:"200",trigger:"hover"}},[a("div",{attrs:{id:"logout-link"}},[a("el-link",{on:{click:t.logout}},[t._v("注销登录")])],1),a("div",{attrs:{slot:"reference",id:"back-stage-controller-header-avatar"},slot:"reference"})])],1),a("div",{attrs:{id:"back-stage-controller-menu"}},[a("el-menu",{staticClass:"el-menu-vertical-demo",attrs:{router:!0,"default-active":t.$route.path.substr(11)||"situation","background-color":"#fff","text-color":"#999","active-text-color":"#8DC4F9"},on:{open:t.handleOpen,close:t.handleClose}},[a("el-menu-item",{attrs:{index:"situation"}},[a("i",{staticClass:"el-icon-s-home"}),a("span",{attrs:{slot:"title"},slot:"title"},[t._v("概况")])]),a("el-menu-item",{attrs:{index:"studentPlan"}},[a("i",{staticClass:"el-icon-reading"}),a("span",{attrs:{slot:"title"},slot:"title"},[t._v("招生计划")])]),a("el-menu-item",{attrs:{index:"studentInfo"}},[a("i",{staticClass:"el-icon-info"}),a("span",{attrs:{slot:"title"},slot:"title"},[t._v("学生信息")])]),a("el-submenu",{attrs:{index:"4"}},[a("template",{slot:"title"},[a("i",{staticClass:"el-icon-document"}),a("span",[t._v("录取结果")])]),a("el-menu-item",{attrs:{index:"result"}},[t._v("全部结果")]),a("el-menu-item",{attrs:{index:"searchResult"}},[t._v("搜索查询")]),a("el-menu-item",{attrs:{index:"adjustQueue"}},[t._v("调剂队列")]),a("el-menu-item",{attrs:{index:"exitQueue"}},[t._v("退档队列")])],2),a("el-submenu",{attrs:{index:"5"}},[a("template",{slot:"title"},[a("i",{staticClass:"el-icon-s-data"}),a("span",[t._v("数据分析")])]),a("el-menu-item",{attrs:{index:"gradeAnalyze"}},[t._v("成绩分析")]),a("el-menu-item",{attrs:{index:"countDistribute"}},[t._v("人数分布")]),a("el-menu-item",{attrs:{index:"gradeDistribute"}},[t._v("成绩区间分布")]),a("el-menu-item",{attrs:{index:"geoDistribute"}},[t._v("生源地分布")])],2)],1)],1),a("div",{attrs:{id:"back-stage-controller-main"}},[a("router-view")],1)])},i=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-header-text"}},[a("div",{attrs:{id:"back-stage-header-title"}},[t._v(" 志愿录取系统 ")]),a("div",{attrs:{id:"back-stage-header-title-eng"}},[t._v(" ADMISSION SYSTEM ")])])}],n=a("1bab"),l={name:"BackStageController",methods:{handleOpen:function(t,e){console.log(t,e)},handleClose:function(t,e){console.log(t,e)},logout:function(){var t=this;Object(n["a"])({url:"login/logout"}).then((function(e){"000"===e.code?t.$message.success("注销成功"):t.$message.error(e.message),t.$router.push("/login")}))}}},r=l,o=(a("3109"),a("2877")),c=Object(o["a"])(r,s,i,!1,null,"2e247b35",null);e["default"]=c.exports},e791:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-2a98648c.4071a38a.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-39bb0a47.22d06428.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-39bb0a47"],{"3b96":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"empty-data"},[e("div",{staticClass:"el-icon-box empty-box"}),e("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],o={name:"EmptyData"},c=o,i=(e("bab9"),e("2877")),r=Object(i["a"])(c,n,l,!1,null,"cec065f2",null);a["a"]=r.exports},4758:function(t,a,e){"use strict";var n=e("abeb"),l=e.n(n);l.a},"5b02":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"table-row-count-wrap clearfix"},[e("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],o={name:"TableRowCount",props:["count"]},c=o,i=(e("4758"),e("2877")),r=Object(i["a"])(c,n,l,!1,null,"732fcddd",null);a["a"]=r.exports},abeb:function(t,a,e){},b04e:function(t,a,e){"use strict";var n=e("d61f"),l=e.n(n);l.a},b2f7:function(t,a,e){"use strict";e.r(a);var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{attrs:{id:"back-stage-exit-queue"}},[0===t.exitQueue.length?e("empty-data"):e("div",[e("table-row-count",{attrs:{count:t.total}}),e("el-table",{staticStyle:{width:"100%"},attrs:{data:t.exitQueue,stripe:""}},[e("el-table-column",{attrs:{prop:"candidate",label:"准考证号"}}),e("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),e("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),e("el-table-column",{attrs:{prop:"rank",label:"排名"}}),e("el-table-column",{attrs:{prop:"province",label:"省份"}}),e("el-table-column",{attrs:{prop:"city",label:"城市"}})],1),e("div",{staticClass:"page-bar"},[e("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(a){t.currentPage=a},"update:current-page":function(a){t.currentPage=a}}})],1)],1)],1)},l=[],o=(e("d3b7"),e("1bab")),c=e("3b96"),i=e("5b02"),r={name:"ExitQueue",data:function(){return{exitQueue:[],currentPage:1,total:0,loading:null}},methods:{loadData:function(){var t=this;this.setLoading(),Object(o["a"])({url:"student/getExitStudentRaw"}).then((function(a){"000"===a.code?(t.exitQueue=a.data.list,t.total=a.data.total):t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},changePage:function(){this.loadData()}},components:{EmptyData:c["a"],TableRowCount:i["a"]},created:function(){this.loadData()}},u=r,s=(e("b04e"),e("2877")),d=Object(s["a"])(u,n,l,!1,null,"2d0290aa",null);a["default"]=d.exports},bab9:function(t,a,e){"use strict";var n=e("fa03"),l=e.n(n);l.a},d61f:function(t,a,e){},fa03:function(t,a,e){}}]); 2 | //# sourceMappingURL=chunk-39bb0a47.22d06428.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-39bb0a47.75406d2b.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-39bb0a47"],{"3b96":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"empty-data"},[e("div",{staticClass:"el-icon-box empty-box"}),e("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],o={name:"EmptyData"},c=o,i=(e("bab9"),e("2877")),r=Object(i["a"])(c,n,l,!1,null,"cec065f2",null);a["a"]=r.exports},4758:function(t,a,e){"use strict";var n=e("abeb"),l=e.n(n);l.a},"5b02":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"table-row-count-wrap clearfix"},[e("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],o={name:"TableRowCount",props:["count"]},c=o,i=(e("4758"),e("2877")),r=Object(i["a"])(c,n,l,!1,null,"732fcddd",null);a["a"]=r.exports},abeb:function(t,a,e){},b04e:function(t,a,e){"use strict";var n=e("d61f"),l=e.n(n);l.a},b2f7:function(t,a,e){"use strict";e.r(a);var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{attrs:{id:"back-stage-exit-queue"}},[0===t.exitQueue.length?e("empty-data"):e("div",[e("table-row-count",{attrs:{count:t.total}}),e("el-table",{staticStyle:{width:"100%"},attrs:{data:t.exitQueue,stripe:""}},[e("el-table-column",{attrs:{prop:"candidate",label:"准考证号"}}),e("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),e("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),e("el-table-column",{attrs:{prop:"rank",label:"排名"}}),e("el-table-column",{attrs:{prop:"province",label:"省份"}}),e("el-table-column",{attrs:{prop:"city",label:"城市"}})],1),e("div",{staticClass:"page-bar"},[e("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(a){t.currentPage=a},"update:current-page":function(a){t.currentPage=a}}})],1)],1)],1)},l=[],o=(e("d3b7"),e("1bab")),c=e("3b96"),i=e("5b02"),r={name:"ExitQueue",data:function(){return{exitQueue:[],currentPage:1,total:0,loading:null}},methods:{loadData:function(){var t=this;this.setLoading(),Object(o["a"])({url:"student/getExitStudentRaw"}).then((function(a){"000"===a.code?(t.exitQueue=a.data.list,t.total=a.data.total):t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},changePage:function(){this.loadData()}},components:{EmptyData:c["a"],TableRowCount:i["a"]},created:function(){this.loadData()}},u=r,s=(e("b04e"),e("2877")),d=Object(s["a"])(u,n,l,!1,null,"2d0290aa",null);a["default"]=d.exports},bab9:function(t,a,e){"use strict";var n=e("fa03"),l=e.n(n);l.a},d61f:function(t,a,e){},fa03:function(t,a,e){}}]); 2 | //# sourceMappingURL=chunk-39bb0a47.75406d2b.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-39bb0a47.d913306f.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-39bb0a47"],{"3b96":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"empty-data"},[e("div",{staticClass:"el-icon-box empty-box"}),e("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],o={name:"EmptyData"},c=o,i=(e("bab9"),e("2877")),r=Object(i["a"])(c,n,l,!1,null,"cec065f2",null);a["a"]=r.exports},4758:function(t,a,e){"use strict";var n=e("abeb"),l=e.n(n);l.a},"5b02":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"table-row-count-wrap clearfix"},[e("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],o={name:"TableRowCount",props:["count"]},c=o,i=(e("4758"),e("2877")),r=Object(i["a"])(c,n,l,!1,null,"732fcddd",null);a["a"]=r.exports},abeb:function(t,a,e){},b04e:function(t,a,e){"use strict";var n=e("d61f"),l=e.n(n);l.a},b2f7:function(t,a,e){"use strict";e.r(a);var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{attrs:{id:"back-stage-exit-queue"}},[0===t.exitQueue.length?e("empty-data"):e("div",[e("table-row-count",{attrs:{count:t.total}}),e("el-table",{staticStyle:{width:"100%"},attrs:{data:t.exitQueue,stripe:""}},[e("el-table-column",{attrs:{prop:"candidate",label:"准考证号"}}),e("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),e("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),e("el-table-column",{attrs:{prop:"rank",label:"排名"}}),e("el-table-column",{attrs:{prop:"province",label:"省份"}}),e("el-table-column",{attrs:{prop:"city",label:"城市"}})],1),e("div",{staticClass:"page-bar"},[e("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(a){t.currentPage=a},"update:current-page":function(a){t.currentPage=a}}})],1)],1)],1)},l=[],o=(e("d3b7"),e("1bab")),c=e("3b96"),i=e("5b02"),r={name:"ExitQueue",data:function(){return{exitQueue:[],currentPage:1,total:0,loading:null}},methods:{loadData:function(){var t=this;this.setLoading(),Object(o["a"])({url:"student/getExitStudentRaw"}).then((function(a){"000"===a.code?(t.exitQueue=a.data.list,t.total=a.data.total):t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},changePage:function(){this.loadData()}},components:{EmptyData:c["a"],TableRowCount:i["a"]},created:function(){this.loadData()}},u=r,s=(e("b04e"),e("2877")),d=Object(s["a"])(u,n,l,!1,null,"2d0290aa",null);a["default"]=d.exports},bab9:function(t,a,e){"use strict";var n=e("fa03"),l=e.n(n);l.a},d61f:function(t,a,e){},fa03:function(t,a,e){}}]); 2 | //# sourceMappingURL=chunk-39bb0a47.d913306f.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-403717ba.1afb86f5.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-403717ba"],{"10bc":function(t,a,e){"use strict";var n=e("c193"),c=e.n(n);c.a},2677:function(t,a,e){"use strict";e.r(a);var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{attrs:{id:"back-stage-adjust-queue"}},[0===t.adjustQueue.length?e("empty-data"):e("div",[e("table-row-count",{attrs:{count:t.total}}),e("el-table",{staticStyle:{width:"100%"},attrs:{data:t.adjustQueue,stripe:""}},[e("el-table-column",{attrs:{prop:"candidate",label:"准考证号"}}),e("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),e("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),e("el-table-column",{attrs:{prop:"rank",label:"排名"}}),e("el-table-column",{attrs:{prop:"province",label:"省份"}}),e("el-table-column",{attrs:{prop:"city",label:"城市"}})],1),e("div",{staticClass:"page-bar"},[e("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(a){t.currentPage=a},"update:current-page":function(a){t.currentPage=a}}})],1)],1)],1)},c=[],l=(e("d3b7"),e("1bab")),o=e("3b96"),u=e("5b02"),r={name:"AdjustQueue",data:function(){return{adjustQueue:[],currentPage:1,total:0,loading:null}},methods:{loadData:function(){var t=this;this.setLoading(),Object(l["a"])({url:"student/getAdjustStudentRaw"}).then((function(a){"000"===a.code?(t.adjustQueue=a.data.list,t.total=a.data.total):t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},changePage:function(){this.loadData()}},components:{EmptyData:o["a"],TableRowCount:u["a"]},created:function(){this.loadData()}},s=r,i=(e("10bc"),e("2877")),d=Object(i["a"])(s,n,c,!1,null,"6b23a54a",null);a["default"]=d.exports},"3b96":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},c=[function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"empty-data"},[e("div",{staticClass:"el-icon-box empty-box"}),e("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],l={name:"EmptyData"},o=l,u=(e("bab9"),e("2877")),r=Object(u["a"])(o,n,c,!1,null,"cec065f2",null);a["a"]=r.exports},4758:function(t,a,e){"use strict";var n=e("abeb"),c=e.n(n);c.a},"5b02":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"table-row-count-wrap clearfix"},[e("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},c=[],l={name:"TableRowCount",props:["count"]},o=l,u=(e("4758"),e("2877")),r=Object(u["a"])(o,n,c,!1,null,"732fcddd",null);a["a"]=r.exports},abeb:function(t,a,e){},bab9:function(t,a,e){"use strict";var n=e("fa03"),c=e.n(n);c.a},c193:function(t,a,e){},fa03:function(t,a,e){}}]); 2 | //# sourceMappingURL=chunk-403717ba.1afb86f5.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-403717ba.5e9fd34a.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-403717ba"],{"10bc":function(t,a,e){"use strict";var n=e("c193"),c=e.n(n);c.a},2677:function(t,a,e){"use strict";e.r(a);var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{attrs:{id:"back-stage-adjust-queue"}},[0===t.adjustQueue.length?e("empty-data"):e("div",[e("table-row-count",{attrs:{count:t.total}}),e("el-table",{staticStyle:{width:"100%"},attrs:{data:t.adjustQueue,stripe:""}},[e("el-table-column",{attrs:{prop:"candidate",label:"准考证号"}}),e("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),e("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),e("el-table-column",{attrs:{prop:"rank",label:"排名"}}),e("el-table-column",{attrs:{prop:"province",label:"省份"}}),e("el-table-column",{attrs:{prop:"city",label:"城市"}})],1),e("div",{staticClass:"page-bar"},[e("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(a){t.currentPage=a},"update:current-page":function(a){t.currentPage=a}}})],1)],1)],1)},c=[],l=(e("d3b7"),e("1bab")),o=e("3b96"),u=e("5b02"),r={name:"AdjustQueue",data:function(){return{adjustQueue:[],currentPage:1,total:0,loading:null}},methods:{loadData:function(){var t=this;this.setLoading(),Object(l["a"])({url:"student/getAdjustStudentRaw"}).then((function(a){"000"===a.code?(t.adjustQueue=a.data.list,t.total=a.data.total):t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},changePage:function(){this.loadData()}},components:{EmptyData:o["a"],TableRowCount:u["a"]},created:function(){this.loadData()}},s=r,i=(e("10bc"),e("2877")),d=Object(i["a"])(s,n,c,!1,null,"6b23a54a",null);a["default"]=d.exports},"3b96":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},c=[function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"empty-data"},[e("div",{staticClass:"el-icon-box empty-box"}),e("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],l={name:"EmptyData"},o=l,u=(e("bab9"),e("2877")),r=Object(u["a"])(o,n,c,!1,null,"cec065f2",null);a["a"]=r.exports},4758:function(t,a,e){"use strict";var n=e("abeb"),c=e.n(n);c.a},"5b02":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"table-row-count-wrap clearfix"},[e("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},c=[],l={name:"TableRowCount",props:["count"]},o=l,u=(e("4758"),e("2877")),r=Object(u["a"])(o,n,c,!1,null,"732fcddd",null);a["a"]=r.exports},abeb:function(t,a,e){},bab9:function(t,a,e){"use strict";var n=e("fa03"),c=e.n(n);c.a},c193:function(t,a,e){},fa03:function(t,a,e){}}]); 2 | //# sourceMappingURL=chunk-403717ba.5e9fd34a.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-403717ba.80d8b1bb.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-403717ba"],{"10bc":function(t,a,e){"use strict";var n=e("c193"),c=e.n(n);c.a},2677:function(t,a,e){"use strict";e.r(a);var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{attrs:{id:"back-stage-adjust-queue"}},[0===t.adjustQueue.length?e("empty-data"):e("div",[e("table-row-count",{attrs:{count:t.total}}),e("el-table",{staticStyle:{width:"100%"},attrs:{data:t.adjustQueue,stripe:""}},[e("el-table-column",{attrs:{prop:"candidate",label:"准考证号"}}),e("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),e("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),e("el-table-column",{attrs:{prop:"rank",label:"排名"}}),e("el-table-column",{attrs:{prop:"province",label:"省份"}}),e("el-table-column",{attrs:{prop:"city",label:"城市"}})],1),e("div",{staticClass:"page-bar"},[e("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(a){t.currentPage=a},"update:current-page":function(a){t.currentPage=a}}})],1)],1)],1)},c=[],l=(e("d3b7"),e("1bab")),o=e("3b96"),u=e("5b02"),r={name:"AdjustQueue",data:function(){return{adjustQueue:[],currentPage:1,total:0,loading:null}},methods:{loadData:function(){var t=this;this.setLoading(),Object(l["a"])({url:"student/getAdjustStudentRaw"}).then((function(a){"000"===a.code?(t.adjustQueue=a.data.list,t.total=a.data.total):t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},changePage:function(){this.loadData()}},components:{EmptyData:o["a"],TableRowCount:u["a"]},created:function(){this.loadData()}},s=r,i=(e("10bc"),e("2877")),d=Object(i["a"])(s,n,c,!1,null,"6b23a54a",null);a["default"]=d.exports},"3b96":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},c=[function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"empty-data"},[e("div",{staticClass:"el-icon-box empty-box"}),e("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],l={name:"EmptyData"},o=l,u=(e("bab9"),e("2877")),r=Object(u["a"])(o,n,c,!1,null,"cec065f2",null);a["a"]=r.exports},4758:function(t,a,e){"use strict";var n=e("abeb"),c=e.n(n);c.a},"5b02":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"table-row-count-wrap clearfix"},[e("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},c=[],l={name:"TableRowCount",props:["count"]},o=l,u=(e("4758"),e("2877")),r=Object(u["a"])(o,n,c,!1,null,"732fcddd",null);a["a"]=r.exports},abeb:function(t,a,e){},bab9:function(t,a,e){"use strict";var n=e("fa03"),c=e.n(n);c.a},c193:function(t,a,e){},fa03:function(t,a,e){}}]); 2 | //# sourceMappingURL=chunk-403717ba.80d8b1bb.js.map -------------------------------------------------------------------------------- /src/main/java/org/enroll/excel/listener/ReadMajorListener.java: -------------------------------------------------------------------------------- 1 | package org.enroll.excel.listener; 2 | 3 | import com.alibaba.excel.context.AnalysisContext; 4 | import com.alibaba.excel.event.AnalysisEventListener; 5 | import com.alibaba.excel.exception.ExcelDataConvertException; 6 | import lombok.NoArgsConstructor; 7 | import lombok.extern.slf4j.Slf4j; 8 | import org.enroll.excel.pojo.ExcelMajor; 9 | import org.enroll.exception.ReadExcelException; 10 | import org.enroll.mapper.DepartmentMapper; 11 | import org.enroll.mapper.MajorMapper; 12 | import org.enroll.pojo.Department; 13 | import org.springframework.util.StringUtils; 14 | 15 | import java.util.ArrayList; 16 | import java.util.HashMap; 17 | import java.util.List; 18 | import java.util.Map; 19 | 20 | @Slf4j 21 | @NoArgsConstructor 22 | public class ReadMajorListener extends AnalysisEventListener { 23 | 24 | private static List list = new ArrayList<>(); 25 | 26 | private static final int BATCH_COUNT = 20; 27 | 28 | private MajorMapper majorMapper; 29 | 30 | private DepartmentMapper departmentMapper; 31 | 32 | private Map departmentIds = new HashMap<>(); 33 | 34 | public ReadMajorListener(MajorMapper mapper, DepartmentMapper departmentMapper){ 35 | this.majorMapper = mapper; 36 | this.departmentMapper = departmentMapper; 37 | for (Department department : departmentMapper.getDepartments()) { 38 | departmentIds.put(department.getDepartmentName(),department.getDepartmentId()); 39 | } 40 | } 41 | 42 | 43 | @Override 44 | public void invoke(ExcelMajor excelMajor, AnalysisContext analysisContext) { 45 | list.add(excelMajor); 46 | if (list.size() >= BATCH_COUNT){ 47 | this.save(); 48 | list.clear(); 49 | } 50 | } 51 | // 52 | @Override 53 | public void onException(Exception exception, AnalysisContext context) { 54 | throw new ReadExcelException("导入Excel失败,请检查文件格式"); 55 | } 56 | 57 | @Override 58 | public void doAfterAllAnalysed(AnalysisContext analysisContext) { 59 | System.out.println("finish"); 60 | this.save(); 61 | list.clear(); 62 | } 63 | 64 | private void save(){ 65 | for (ExcelMajor excelMajor : list) { 66 | if (StringUtils.isEmpty(excelMajor.getDepartmentName())) { 67 | list.clear(); 68 | throw new ReadExcelException("导入Excel失败,请检查文件格式"); 69 | } 70 | 71 | Integer id = departmentIds.get(excelMajor.getDepartmentName()); 72 | if(id == null){ 73 | Department newDept = new Department(); 74 | newDept.setDepartmentName(excelMajor.getDepartmentName()); 75 | departmentMapper.insertDepartment(newDept); 76 | departmentIds.put(newDept.getDepartmentName(),newDept.getDepartmentId()); 77 | id = newDept.getDepartmentId(); 78 | } 79 | excelMajor.setDepartmentId(id); 80 | } 81 | if (list.size() > 0) 82 | majorMapper.insertMajor(list); 83 | } 84 | } 85 | -------------------------------------------------------------------------------- /src/main/resources/mybatis/mapper/MajorMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | INSERT INTO t_major 8 | (major_id, major_code, department_id, major_name, comment, period, plan_student_count) 9 | VALUES 10 | 11 | (#{major.majorId}, #{major.majorCode}, #{major.departmentId}, #{major.majorName}, #{major.comment}, #{major.period}, #{major.planStudentCount}) 12 | 13 | 14 | 15 | 20 | 21 | 25 | 26 | 27 | 35 | 36 | 37 | 38 | 39 | UPDATE t_major 40 | SET realistic_student_count = #{major.realisticStudentCount} 41 | WHERE major_id = #{major.majorId} 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | UPDATE t_major 50 | SET plan_student_count = #{count} 51 | WHERE major_id = ${majorId} 52 | 53 | 54 | 55 | UPDATE t_major 56 | SET realistic_student_count = 0 57 | 58 | 59 | 60 | 61 | DELETE 62 | FROM t_major 63 | 64 | 65 | 66 | 70 | 71 | 72 | 77 | 78 | 79 | -------------------------------------------------------------------------------- /src/main/java/org/enroll/mapper/StudentMapper.java: -------------------------------------------------------------------------------- 1 | package org.enroll.mapper; 2 | 3 | import org.apache.ibatis.annotations.Param; 4 | import org.enroll.excel.pojo.ExcelStudent; 5 | 6 | import org.enroll.pojo.Major; 7 | import org.enroll.pojo.StatisticsResult; 8 | import org.enroll.pojo.StudentResult; 9 | import org.enroll.utils.QueryResultOption; 10 | import org.springframework.stereotype.Repository; 11 | 12 | import java.util.List; 13 | import java.util.Map; 14 | 15 | @Repository 16 | public interface StudentMapper { 17 | 18 | void insertStudent(@Param("studentList") List students); 19 | 20 | List getStudentRaw(); 21 | 22 | List getAdjustStudentRaw(); 23 | 24 | List getExitStudentRaw(); 25 | 26 | List getStudentRawForEnroll(@Param("start") int start, @Param("size") int size); 27 | 28 | List getStudentRawForAdjust(@Param("start") int start, @Param("size") int size); 29 | 30 | void updateAccepted(@Param("students") List students); 31 | 32 | void updateAccepted2(@Param("students") List students); 33 | 34 | void updateSingleAccepted(ExcelStudent student); 35 | 36 | void updateAdjust(@Param("students") List students); 37 | 38 | List getStudent(@Param("desc") boolean desc, @Param("option") QueryResultOption option); 39 | 40 | List getStudentBeforeRank(@Param("rank") int rank); 41 | 42 | List getStudentForExport(@Param("start") int start, @Param("size") int size); 43 | 44 | List getExitStudentForExport(@Param("start") int start, @Param("size") int size); 45 | 46 | List getStudentByDepartment(@Param("depId") int departmentId, @Param("desc") boolean desc); 47 | 48 | List getStudentByMajor(@Param("majorId") String majorId, @Param("desc") boolean desc); 49 | 50 | List searchStudent(@Param("keyword") String keyword); 51 | 52 | List searchStudentByCandidate(@Param("candidate") String candidate); 53 | // 54 | // StatisticsResult getResult(); 55 | // 56 | // StatisticsResult getResultByDepartment(@Param("depId") int departmentId); 57 | // 58 | // StatisticsResult getResultByMajor(@Param("majorId") String majorId); 59 | 60 | List getStatisticsResult(); 61 | 62 | List getStatisticsResultInDepartment(); 63 | 64 | List getStatisticsResultInMajor(); 65 | 66 | List> getDistribute(); 67 | 68 | List> getDistributeInProvince(@Param("province") String province); 69 | 70 | List> getGradeDistribute(); 71 | 72 | List> getGradeDistributeByDepartment(@Param("departmentId") int departmentId); 73 | 74 | List> getGradeDistributeByMajor(@Param("majorId") String majorId); 75 | 76 | List> getCountDistributeInDepartment(); 77 | 78 | List> getCountDistributeInMajor(); 79 | 80 | List> getCountDistributeInMajorByDepartment(@Param("departmentId") int departmentId); 81 | 82 | void resetStudent(); 83 | 84 | void resetTable(); 85 | 86 | 87 | 88 | } 89 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-28c14a28.e19888ce.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-28c14a28"],{"0705":function(t,a,n){"use strict";n.r(a);var e=function(){var t=this,a=t.$createElement,n=t._self._c||a;return n("div",{attrs:{id:"back-stage-student-plan"}},[null==t.planInfo||0===t.planInfo.length?n("empty-data"):n("div",{attrs:{id:"student-plan-info"}},[n("table-row-count",{attrs:{count:t.planInfo.length}}),n("el-table",{staticStyle:{width:"100%"},attrs:{data:t.planInfo,stripe:""}},[n("el-table-column",{attrs:{prop:"majorId",label:"专业代号",width:"100"}}),n("el-table-column",{attrs:{prop:"majorCode",label:"专业代码"}}),n("el-table-column",{attrs:{prop:"departmentName",label:"学院"}}),n("el-table-column",{attrs:{prop:"majorName",label:"专业名称"}}),n("el-table-column",{attrs:{prop:"comment",label:"备注"}}),n("el-table-column",{attrs:{prop:"period",label:"学制年限"}}),n("el-table-column",{attrs:{prop:"planStudentCount",label:"计划招生"}}),n("el-table-column",{attrs:{prop:"realisticStudentCount",label:"招生数目"}}),1===t.$store.state.status||2===t.$store.state.status?n("el-table-column",{attrs:{fixed:"right",label:"操作"},scopedSlots:t._u([{key:"default",fn:function(a){return[n("el-link",{attrs:{type:"primary",underline:!1},on:{click:function(n){return t.updataPlan(a.row.majorId)}}},[t._v("修改计划")])]}}],null,!1,4097930305)}):t._e()],1)],1)],1)},l=[],o=(n("d3b7"),n("1bab")),r=n("3b96"),s=n("5b02"),c={name:"StudentPlan",data:function(){return{planInfo:null,loading:null}},methods:{loadData:function(){var t=this;this.setLoading(),Object(o["a"])({url:"major/getMajorPlan"}).then((function(a){"000"===a.code?t.planInfo=a.data:t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},updataPlan:function(t){var a=this;this.$prompt("请输入计划人数","提示",{confirmButtonText:"确定",cancelButtonText:"取消"}).then((function(n){var e=n.value;Object(o["a"])({url:"major/updateMajorPlan",params:{majorId:t,count:e}}).then((function(t){"000"===t.code?(a.$message.success("修改成功"),a.loadData()):a.$message.error(t.message)})).catch((function(t){a.$message.error("系统错误")}))})).catch((function(){}))}},created:function(){this.loadData()},components:{EmptyData:r["a"],TableRowCount:s["a"]}},u=c,i=(n("ed79"),n("2877")),d=Object(i["a"])(u,e,l,!1,null,"d17bab06",null);a["default"]=d.exports},"3b96":function(t,a,n){"use strict";var e=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,a=t.$createElement,n=t._self._c||a;return n("div",{staticClass:"empty-data"},[n("div",{staticClass:"el-icon-box empty-box"}),n("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],o={name:"EmptyData"},r=o,s=(n("bab9"),n("2877")),c=Object(s["a"])(r,e,l,!1,null,"cec065f2",null);a["a"]=c.exports},4758:function(t,a,n){"use strict";var e=n("abeb"),l=n.n(e);l.a},"4d03":function(t,a,n){},"5b02":function(t,a,n){"use strict";var e=function(){var t=this,a=t.$createElement,n=t._self._c||a;return n("div",{staticClass:"table-row-count-wrap clearfix"},[n("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],o={name:"TableRowCount",props:["count"]},r=o,s=(n("4758"),n("2877")),c=Object(s["a"])(r,e,l,!1,null,"732fcddd",null);a["a"]=c.exports},abeb:function(t,a,n){},bab9:function(t,a,n){"use strict";var e=n("fa03"),l=n.n(e);l.a},ed79:function(t,a,n){"use strict";var e=n("4d03"),l=n.n(e);l.a},fa03:function(t,a,n){}}]); 2 | //# sourceMappingURL=chunk-28c14a28.e19888ce.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-e676823c.4e08adda.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-e676823c"],{"3b96":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],o={name:"EmptyData"},r=o,c=(a("bab9"),a("2877")),s=Object(c["a"])(r,n,l,!1,null,"cec065f2",null);e["a"]=s.exports},4758:function(t,e,a){"use strict";var n=a("abeb"),l=a.n(n);l.a},"4d3f":function(t,e,a){"use strict";var n=a("5f72"),l=a.n(n);l.a},"5b02":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"table-row-count-wrap clearfix"},[a("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],o={name:"TableRowCount",props:["count"]},r=o,c=(a("4758"),a("2877")),s=Object(c["a"])(r,n,l,!1,null,"732fcddd",null);e["a"]=s.exports},"5f72":function(t,e,a){},6872:function(t,e,a){"use strict";a.r(e);var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-student-info"}},[null==t.studentInfo||0===t.studentInfo.length?a("empty-data"):a("div",{attrs:{id:"student-plan-info"}},[a("table-row-count",{attrs:{count:t.total}}),a("el-table",{staticStyle:{width:"100%"},attrs:{data:t.studentInfo,stripe:""}},[a("el-table-column",{attrs:{prop:"candidate",label:"准考证号",width:"110"}}),a("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),a("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),a("el-table-column",{attrs:{prop:"rank",label:"排名"}}),a("el-table-column",{attrs:{prop:"will1",label:"志愿1"}}),a("el-table-column",{attrs:{prop:"will2",label:"志愿2"}}),a("el-table-column",{attrs:{prop:"will3",label:"志愿3"}}),a("el-table-column",{attrs:{prop:"will4",label:"志愿4"}}),a("el-table-column",{attrs:{prop:"will5",label:"志愿5"}}),a("el-table-column",{attrs:{prop:"will6",label:"志愿6"}}),a("el-table-column",{attrs:{prop:"province",label:"省份"}}),a("el-table-column",{attrs:{prop:"city",label:"城市"}}),a("el-table-column",{attrs:{prop:"subjectType",label:"科类"}})],1),a("div",{staticClass:"page-bar"},[a("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(e){t.currentPage=e},"update:current-page":function(e){t.currentPage=e}}})],1)],1)],1)},l=[],o=(a("d3b7"),a("1bab")),r=a("3b96"),c=a("5b02"),s={name:"StudentInfo",data:function(){return{studentInfo:null,currentPage:1,total:0,loading:null}},methods:{changePage:function(){this.loadStudentInfo()},loadStudentInfo:function(){var t=this;this.setLoading(),Object(o["a"])({url:"student/getStudentRaw",params:{currentPage:this.currentPage}}).then((function(e){"000"===e.code?(t.studentInfo=e.data.list,t.total=e.data.total):t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()}},created:function(){this.loadStudentInfo()},components:{EmptyData:r["a"],TableRowCount:c["a"]}},u=s,i=(a("4d3f"),a("2877")),d=Object(i["a"])(u,n,l,!1,null,"9779975e",null);e["default"]=d.exports},abeb:function(t,e,a){},bab9:function(t,e,a){"use strict";var n=a("fa03"),l=a.n(n);l.a},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-e676823c.4e08adda.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-e676823c.978c2462.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-e676823c"],{"3b96":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],o={name:"EmptyData"},r=o,c=(a("bab9"),a("2877")),s=Object(c["a"])(r,n,l,!1,null,"cec065f2",null);e["a"]=s.exports},4758:function(t,e,a){"use strict";var n=a("abeb"),l=a.n(n);l.a},"4d3f":function(t,e,a){"use strict";var n=a("5f72"),l=a.n(n);l.a},"5b02":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"table-row-count-wrap clearfix"},[a("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],o={name:"TableRowCount",props:["count"]},r=o,c=(a("4758"),a("2877")),s=Object(c["a"])(r,n,l,!1,null,"732fcddd",null);e["a"]=s.exports},"5f72":function(t,e,a){},6872:function(t,e,a){"use strict";a.r(e);var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-student-info"}},[null==t.studentInfo||0===t.studentInfo.length?a("empty-data"):a("div",{attrs:{id:"student-plan-info"}},[a("table-row-count",{attrs:{count:t.total}}),a("el-table",{staticStyle:{width:"100%"},attrs:{data:t.studentInfo,stripe:""}},[a("el-table-column",{attrs:{prop:"candidate",label:"准考证号",width:"110"}}),a("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),a("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),a("el-table-column",{attrs:{prop:"rank",label:"排名"}}),a("el-table-column",{attrs:{prop:"will1",label:"志愿1"}}),a("el-table-column",{attrs:{prop:"will2",label:"志愿2"}}),a("el-table-column",{attrs:{prop:"will3",label:"志愿3"}}),a("el-table-column",{attrs:{prop:"will4",label:"志愿4"}}),a("el-table-column",{attrs:{prop:"will5",label:"志愿5"}}),a("el-table-column",{attrs:{prop:"will6",label:"志愿6"}}),a("el-table-column",{attrs:{prop:"province",label:"省份"}}),a("el-table-column",{attrs:{prop:"city",label:"城市"}}),a("el-table-column",{attrs:{prop:"subjectType",label:"科类"}})],1),a("div",{staticClass:"page-bar"},[a("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(e){t.currentPage=e},"update:current-page":function(e){t.currentPage=e}}})],1)],1)],1)},l=[],o=(a("d3b7"),a("1bab")),r=a("3b96"),c=a("5b02"),s={name:"StudentInfo",data:function(){return{studentInfo:null,currentPage:1,total:0,loading:null}},methods:{changePage:function(){this.loadStudentInfo()},loadStudentInfo:function(){var t=this;this.setLoading(),Object(o["a"])({url:"student/getStudentRaw",params:{currentPage:this.currentPage}}).then((function(e){"000"===e.code?(t.studentInfo=e.data.list,t.total=e.data.total):t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()}},created:function(){this.loadStudentInfo()},components:{EmptyData:r["a"],TableRowCount:c["a"]}},u=s,i=(a("4d3f"),a("2877")),d=Object(i["a"])(u,n,l,!1,null,"9779975e",null);e["default"]=d.exports},abeb:function(t,e,a){},bab9:function(t,e,a){"use strict";var n=a("fa03"),l=a.n(n);l.a},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-e676823c.978c2462.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-e676823c.c489812d.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-e676823c"],{"3b96":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],o={name:"EmptyData"},r=o,c=(a("bab9"),a("2877")),s=Object(c["a"])(r,n,l,!1,null,"cec065f2",null);e["a"]=s.exports},4758:function(t,e,a){"use strict";var n=a("abeb"),l=a.n(n);l.a},"4d3f":function(t,e,a){"use strict";var n=a("5f72"),l=a.n(n);l.a},"5b02":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"table-row-count-wrap clearfix"},[a("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],o={name:"TableRowCount",props:["count"]},r=o,c=(a("4758"),a("2877")),s=Object(c["a"])(r,n,l,!1,null,"732fcddd",null);e["a"]=s.exports},"5f72":function(t,e,a){},6872:function(t,e,a){"use strict";a.r(e);var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-student-info"}},[null==t.studentInfo||0===t.studentInfo.length?a("empty-data"):a("div",{attrs:{id:"student-plan-info"}},[a("table-row-count",{attrs:{count:t.total}}),a("el-table",{staticStyle:{width:"100%"},attrs:{data:t.studentInfo,stripe:""}},[a("el-table-column",{attrs:{prop:"candidate",label:"准考证号",width:"110"}}),a("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),a("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),a("el-table-column",{attrs:{prop:"rank",label:"排名"}}),a("el-table-column",{attrs:{prop:"will1",label:"志愿1"}}),a("el-table-column",{attrs:{prop:"will2",label:"志愿2"}}),a("el-table-column",{attrs:{prop:"will3",label:"志愿3"}}),a("el-table-column",{attrs:{prop:"will4",label:"志愿4"}}),a("el-table-column",{attrs:{prop:"will5",label:"志愿5"}}),a("el-table-column",{attrs:{prop:"will6",label:"志愿6"}}),a("el-table-column",{attrs:{prop:"province",label:"省份"}}),a("el-table-column",{attrs:{prop:"city",label:"城市"}}),a("el-table-column",{attrs:{prop:"subjectType",label:"科类"}})],1),a("div",{staticClass:"page-bar"},[a("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(e){t.currentPage=e},"update:current-page":function(e){t.currentPage=e}}})],1)],1)],1)},l=[],o=(a("d3b7"),a("1bab")),r=a("3b96"),c=a("5b02"),s={name:"StudentInfo",data:function(){return{studentInfo:null,currentPage:1,total:0,loading:null}},methods:{changePage:function(){this.loadStudentInfo()},loadStudentInfo:function(){var t=this;this.setLoading(),Object(o["a"])({url:"student/getStudentRaw",params:{currentPage:this.currentPage}}).then((function(e){"000"===e.code?(t.studentInfo=e.data.list,t.total=e.data.total):t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()}},created:function(){this.loadStudentInfo()},components:{EmptyData:r["a"],TableRowCount:c["a"]}},u=s,i=(a("4d3f"),a("2877")),d=Object(i["a"])(u,n,l,!1,null,"9779975e",null);e["default"]=d.exports},abeb:function(t,e,a){},bab9:function(t,e,a){"use strict";var n=a("fa03"),l=a.n(n);l.a},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-e676823c.c489812d.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-df73dcd6.5bb65689.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-df73dcd6"],{"0705":function(t,a,e){"use strict";e.r(a);var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{attrs:{id:"back-stage-student-plan"}},[null==t.planInfo||0===t.planInfo.length?e("empty-data"):e("div",{attrs:{id:"student-plan-info"}},[e("table-row-count",{attrs:{count:t.planInfo.length}}),e("el-table",{staticStyle:{width:"100%"},attrs:{data:t.planInfo,stripe:""}},[e("el-table-column",{attrs:{prop:"majorId",label:"专业代号",width:"100"}}),e("el-table-column",{attrs:{prop:"majorCode",label:"专业代码"}}),e("el-table-column",{attrs:{prop:"departmentName",label:"学院"}}),e("el-table-column",{attrs:{prop:"majorName",label:"专业名称"}}),e("el-table-column",{attrs:{prop:"comment",label:"备注"}}),e("el-table-column",{attrs:{prop:"period",label:"学制年限"}}),e("el-table-column",{attrs:{prop:"planStudentCount",label:"计划招生"}}),e("el-table-column",{attrs:{prop:"realisticStudentCount",label:"招生数目"}}),2===t.$store.state.status||3===t.$store.state.status||5===t.$store.state.status?e("el-table-column",{attrs:{fixed:"right",label:"操作"},scopedSlots:t._u([{key:"default",fn:function(a){return[e("el-link",{attrs:{type:"primary",underline:!1},on:{click:function(e){return t.updataPlan(a.row.majorId)}}},[t._v("修改计划")])]}}],null,!1,4097930305)}):t._e()],1)],1)],1)},l=[],o=(e("d3b7"),e("1bab")),s=e("3b96"),r=e("5b02"),c={name:"StudentPlan",data:function(){return{planInfo:null,loading:null}},methods:{loadData:function(){var t=this;this.setLoading(),Object(o["a"])({url:"major/getMajorPlan"}).then((function(a){"000"===a.code?t.planInfo=a.data:t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},updataPlan:function(t){var a=this;this.$prompt("请输入计划人数","提示",{confirmButtonText:"确定",cancelButtonText:"取消"}).then((function(e){var n=e.value;Object(o["a"])({url:"major/updateMajorPlan",params:{majorId:t,count:n}}).then((function(t){"000"===t.code?(a.$message.success("修改成功"),a.loadData()):a.$message.error(t.message)})).catch((function(t){a.$message.error("系统错误")}))})).catch((function(){a.$message({type:"info",message:"取消输入"})}))}},created:function(){this.loadData()},components:{EmptyData:s["a"],TableRowCount:r["a"]}},u=c,i=(e("6a8f"),e("2877")),d=Object(i["a"])(u,n,l,!1,null,"604466ac",null);a["default"]=d.exports},"3b96":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"empty-data"},[e("div",{staticClass:"el-icon-box empty-box"}),e("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],o={name:"EmptyData"},s=o,r=(e("bab9"),e("2877")),c=Object(r["a"])(s,n,l,!1,null,"cec065f2",null);a["a"]=c.exports},4758:function(t,a,e){"use strict";var n=e("abeb"),l=e.n(n);l.a},"5b02":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"table-row-count-wrap clearfix"},[e("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],o={name:"TableRowCount",props:["count"]},s=o,r=(e("4758"),e("2877")),c=Object(r["a"])(s,n,l,!1,null,"732fcddd",null);a["a"]=c.exports},"6a8f":function(t,a,e){"use strict";var n=e("e7f2"),l=e.n(n);l.a},abeb:function(t,a,e){},bab9:function(t,a,e){"use strict";var n=e("fa03"),l=e.n(n);l.a},e7f2:function(t,a,e){},fa03:function(t,a,e){}}]); 2 | //# sourceMappingURL=chunk-df73dcd6.5bb65689.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-df73dcd6.73323588.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-df73dcd6"],{"0705":function(t,a,e){"use strict";e.r(a);var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{attrs:{id:"back-stage-student-plan"}},[null==t.planInfo||0===t.planInfo.length?e("empty-data"):e("div",{attrs:{id:"student-plan-info"}},[e("table-row-count",{attrs:{count:t.planInfo.length}}),e("el-table",{staticStyle:{width:"100%"},attrs:{data:t.planInfo,stripe:""}},[e("el-table-column",{attrs:{prop:"majorId",label:"专业代号",width:"100"}}),e("el-table-column",{attrs:{prop:"majorCode",label:"专业代码"}}),e("el-table-column",{attrs:{prop:"departmentName",label:"学院"}}),e("el-table-column",{attrs:{prop:"majorName",label:"专业名称"}}),e("el-table-column",{attrs:{prop:"comment",label:"备注"}}),e("el-table-column",{attrs:{prop:"period",label:"学制年限"}}),e("el-table-column",{attrs:{prop:"planStudentCount",label:"计划招生"}}),e("el-table-column",{attrs:{prop:"realisticStudentCount",label:"招生数目"}}),2===t.$store.state.status||3===t.$store.state.status||5===t.$store.state.status?e("el-table-column",{attrs:{fixed:"right",label:"操作"},scopedSlots:t._u([{key:"default",fn:function(a){return[e("el-link",{attrs:{type:"primary",underline:!1},on:{click:function(e){return t.updataPlan(a.row.majorId)}}},[t._v("修改计划")])]}}],null,!1,4097930305)}):t._e()],1)],1)],1)},l=[],o=(e("d3b7"),e("1bab")),s=e("3b96"),r=e("5b02"),c={name:"StudentPlan",data:function(){return{planInfo:null,loading:null}},methods:{loadData:function(){var t=this;this.setLoading(),Object(o["a"])({url:"major/getMajorPlan"}).then((function(a){"000"===a.code?t.planInfo=a.data:t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},updataPlan:function(t){var a=this;this.$prompt("请输入计划人数","提示",{confirmButtonText:"确定",cancelButtonText:"取消"}).then((function(e){var n=e.value;Object(o["a"])({url:"major/updateMajorPlan",params:{majorId:t,count:n}}).then((function(t){"000"===t.code?(a.$message.success("修改成功"),a.loadData()):a.$message.error(t.message)})).catch((function(t){a.$message.error("系统错误")}))})).catch((function(){a.$message({type:"info",message:"取消输入"})}))}},created:function(){this.loadData()},components:{EmptyData:s["a"],TableRowCount:r["a"]}},u=c,i=(e("6a8f"),e("2877")),d=Object(i["a"])(u,n,l,!1,null,"604466ac",null);a["default"]=d.exports},"3b96":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"empty-data"},[e("div",{staticClass:"el-icon-box empty-box"}),e("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],o={name:"EmptyData"},s=o,r=(e("bab9"),e("2877")),c=Object(r["a"])(s,n,l,!1,null,"cec065f2",null);a["a"]=c.exports},4758:function(t,a,e){"use strict";var n=e("abeb"),l=e.n(n);l.a},"5b02":function(t,a,e){"use strict";var n=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"table-row-count-wrap clearfix"},[e("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],o={name:"TableRowCount",props:["count"]},s=o,r=(e("4758"),e("2877")),c=Object(r["a"])(s,n,l,!1,null,"732fcddd",null);a["a"]=c.exports},"6a8f":function(t,a,e){"use strict";var n=e("e7f2"),l=e.n(n);l.a},abeb:function(t,a,e){},bab9:function(t,a,e){"use strict";var n=e("fa03"),l=e.n(n);l.a},e7f2:function(t,a,e){},fa03:function(t,a,e){}}]); 2 | //# sourceMappingURL=chunk-df73dcd6.73323588.js.map -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 4.0.0 5 | 6 | org.springframework.boot 7 | spring-boot-starter-parent 8 | 2.3.4.RELEASE 9 | 10 | 11 | org.enroll 12 | enroll_system 13 | 0.0.1-SNAPSHOT 14 | enroll_system 15 | enroll system 16 | 17 | 18 | 1.8 19 | 20 | 21 | 22 | 23 | org.springframework.boot 24 | spring-boot-starter-jdbc 25 | 26 | 27 | org.springframework.boot 28 | spring-boot-starter-web 29 | 30 | 31 | org.mybatis.spring.boot 32 | mybatis-spring-boot-starter 33 | 2.1.3 34 | 35 | 36 | 37 | 38 | com.alibaba 39 | druid-spring-boot-starter 40 | 1.1.10 41 | 42 | 43 | com.alibaba 44 | easyexcel 45 | 2.2.6 46 | 47 | 48 | org.springframework.boot 49 | spring-boot-configuration-processor 50 | true 51 | 52 | 53 | com.github.pagehelper 54 | pagehelper-spring-boot-starter 55 | 1.2.3 56 | 57 | 58 | 59 | 60 | org.springframework.boot 61 | spring-boot-devtools 62 | runtime 63 | true 64 | 65 | 66 | mysql 67 | mysql-connector-java 68 | runtime 69 | 70 | 71 | org.projectlombok 72 | lombok 73 | true 74 | 75 | 76 | org.springframework.boot 77 | spring-boot-starter-thymeleaf 78 | 79 | 80 | org.springframework.boot 81 | spring-boot-starter-test 82 | test 83 | 84 | 85 | org.junit.vintage 86 | junit-vintage-engine 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | org.springframework.boot 96 | spring-boot-maven-plugin 97 | 98 | 99 | 100 | 101 | 102 | -------------------------------------------------------------------------------- /sql/db_enroll.sql: -------------------------------------------------------------------------------- 1 | /* 2 | Navicat MySQL Data Transfer 3 | 4 | Source Server : wampserver_mysql 5 | Source Server Type : MySQL 6 | Source Server Version : 50726 7 | Source Host : localhost:3306 8 | Source Schema : db_enroll 9 | 10 | Target Server Type : MySQL 11 | Target Server Version : 50726 12 | File Encoding : 65001 13 | 14 | Date: 25/10/2020 20:58:18 15 | */ 16 | 17 | SET NAMES utf8mb4; 18 | SET FOREIGN_KEY_CHECKS = 0; 19 | 20 | -- ---------------------------- 21 | -- Table structure for t_department 22 | -- ---------------------------- 23 | DROP TABLE IF EXISTS `t_department`; 24 | CREATE TABLE `t_department` ( 25 | `department_id` int(11) NOT NULL AUTO_INCREMENT, 26 | `department_name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 27 | PRIMARY KEY (`department_id`) USING BTREE 28 | ) ENGINE = InnoDB AUTO_INCREMENT = 18 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; 29 | 30 | -- ---------------------------- 31 | -- Table structure for t_log 32 | -- ---------------------------- 33 | DROP TABLE IF EXISTS `t_log`; 34 | CREATE TABLE `t_log` ( 35 | `log_id` int(11) NOT NULL AUTO_INCREMENT, 36 | `log_content` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 37 | `log_time` datetime(0) NULL DEFAULT CURRENT_TIMESTAMP(0), 38 | `status` tinyint(255) NULL DEFAULT NULL, 39 | PRIMARY KEY (`log_id`) USING BTREE 40 | ) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; 41 | 42 | -- ---------------------------- 43 | -- Table structure for t_major 44 | -- ---------------------------- 45 | DROP TABLE IF EXISTS `t_major`; 46 | CREATE TABLE `t_major` ( 47 | `major_id` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 48 | `major_code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 49 | `department_id` int(11) NOT NULL, 50 | `major_name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 51 | `comment` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 52 | `period` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 53 | `plan_student_count` int(11) NOT NULL, 54 | `realistic_student_count` int(11) NULL DEFAULT 0, 55 | PRIMARY KEY (`major_id`) USING BTREE 56 | ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; 57 | 58 | -- ---------------------------- 59 | -- Table structure for t_student 60 | -- ---------------------------- 61 | DROP TABLE IF EXISTS `t_student`; 62 | CREATE TABLE `t_student` ( 63 | `student_id` int(11) NOT NULL AUTO_INCREMENT, 64 | `candidate` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 65 | `student_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 66 | `total_grade` int(11) NOT NULL, 67 | `will1` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 68 | `will2` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 69 | `will3` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 70 | `will4` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 71 | `will5` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 72 | `will6` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 73 | `adjust` tinyint(4) NOT NULL, 74 | `rank` int(11) NOT NULL, 75 | `province` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 76 | `city` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 77 | `subject_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 78 | `accepted_major_id` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 79 | `accepted_type` tinyint(4) NULL DEFAULT NULL, 80 | PRIMARY KEY (`student_id`) USING BTREE 81 | ) ENGINE = InnoDB AUTO_INCREMENT = 6863 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; 82 | 83 | SET FOREIGN_KEY_CHECKS = 1; 84 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-6c4f308a.b5fb463a.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-6c4f308a"],{"111b":function(t,e,a){"use strict";var n=a("dcc9"),l=a.n(n);l.a},"3b96":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],r={name:"EmptyData"},s=r,c=(a("bab9"),a("2877")),i=Object(c["a"])(s,n,l,!1,null,"cec065f2",null);e["a"]=i.exports},4758:function(t,e,a){"use strict";var n=a("abeb"),l=a.n(n);l.a},"5b02":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"table-row-count-wrap clearfix"},[a("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],r={name:"TableRowCount",props:["count"]},s=r,c=(a("4758"),a("2877")),i=Object(c["a"])(s,n,l,!1,null,"732fcddd",null);e["a"]=i.exports},abeb:function(t,e,a){},bab9:function(t,e,a){"use strict";var n=a("fa03"),l=a.n(n);l.a},dcc9:function(t,e,a){},f2a5:function(t,e,a){"use strict";a.r(e);var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-search-result"}},[a("div",{staticClass:"clearfix",attrs:{id:"search-result-input-wrap"}},[a("div",{attrs:{id:"search-result-input"}},[a("el-input",{staticClass:"input-with-select",attrs:{placeholder:"请输入内容"},model:{value:t.input,callback:function(e){t.input=e},expression:"input"}},[a("el-select",{attrs:{slot:"prepend",placeholder:"请选择"},slot:"prepend",model:{value:t.select,callback:function(e){t.select=e},expression:"select"}},[a("el-option",{attrs:{label:"姓名",value:"1"}}),a("el-option",{attrs:{label:"考号",value:"2"}})],1),a("el-button",{attrs:{slot:"append",icon:"el-icon-search"},on:{click:t.loadResult},slot:"append"})],1)],1)]),a("el-divider"),0===t.resultList.length?a("empty-data"):a("div",[a("table-row-count",{attrs:{count:t.total}}),a("div",{attrs:{id:"back-stage-search-result-table"}},[a("el-table",{staticStyle:{width:"100%"},attrs:{data:t.resultList,stripe:""}},[a("el-table-column",{attrs:{prop:"candidate",label:"准考证号"}}),a("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),a("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),a("el-table-column",{attrs:{prop:"rank",label:"排名"}}),a("el-table-column",{attrs:{prop:"province",label:"省份"}}),a("el-table-column",{attrs:{prop:"city",label:"城市"}}),a("el-table-column",{attrs:{prop:"departmentName",label:"学院"}}),a("el-table-column",{attrs:{prop:"majorName",label:"专业"}}),a("el-table-column",{attrs:{prop:"acceptedType",label:"录取类型",formatter:t.type2Str}})],1)],1),a("div",{staticClass:"page-bar"},[a("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(e){t.currentPage=e},"update:current-page":function(e){t.currentPage=e}}})],1)],1)],1)},l=[],r=(a("d3b7"),a("1bab")),s=a("3b96"),c=a("5b02"),i={name:"SearchResult",components:{EmptyData:s["a"],TableRowCount:c["a"]},data:function(){return{select:"1",input:"",resultList:[],currentPage:1,total:0}},methods:{loadResult:function(){var t=this;if(null!==this.input&&0!==this.input.length){var e="1"===this.select?"student/searchStudent":"student/searchStudentByCode";this.setLoading(),Object(r["a"])({url:e,params:{keyword:this.input,currentPage:this.currentPage}}).then((function(e){t.resultList=[],"000"===e.code?(t.resultList=e.data.list,t.total=e.data.total):t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))}},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},type2Str:function(t,e,a){switch(a){case 1:return"第一志愿";case 2:return"第二志愿";case 3:return"第三志愿";case 4:return"第四志愿";case 5:return"第五志愿";case 6:return"第六志愿";case 7:return"调剂";default:return null}},changePage:function(){this.loadResult()}}},o=i,u=(a("111b"),a("2877")),p=Object(u["a"])(o,n,l,!1,null,"5c3be60b",null);e["default"]=p.exports},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-6c4f308a.b5fb463a.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-0b21ef94.d671823f.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-0b21ef94"],{3796:function(t,e,a){"use strict";var n=a("de82"),l=a.n(n);l.a},"3b96":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],r={name:"EmptyData"},s=r,c=(a("bab9"),a("2877")),i=Object(c["a"])(s,n,l,!1,null,"cec065f2",null);e["a"]=i.exports},4758:function(t,e,a){"use strict";var n=a("abeb"),l=a.n(n);l.a},"5b02":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"table-row-count-wrap clearfix"},[a("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],r={name:"TableRowCount",props:["count"]},s=r,c=(a("4758"),a("2877")),i=Object(c["a"])(s,n,l,!1,null,"732fcddd",null);e["a"]=i.exports},abeb:function(t,e,a){},bab9:function(t,e,a){"use strict";var n=a("fa03"),l=a.n(n);l.a},de82:function(t,e,a){},f2a5:function(t,e,a){"use strict";a.r(e);var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-search-result"}},[a("div",{staticClass:"clearfix",attrs:{id:"search-result-input-wrap"}},[a("div",{attrs:{id:"search-result-input"}},[a("el-input",{staticClass:"input-with-select",attrs:{placeholder:"请输入内容"},model:{value:t.input,callback:function(e){t.input=e},expression:"input"}},[a("el-select",{attrs:{slot:"prepend",placeholder:"请选择"},slot:"prepend",model:{value:t.select,callback:function(e){t.select=e},expression:"select"}},[a("el-option",{attrs:{label:"姓名",value:"1"}}),a("el-option",{attrs:{label:"考号",value:"2"}})],1),a("el-button",{attrs:{slot:"append",icon:"el-icon-search"},on:{click:t.loadResult},slot:"append"})],1)],1)]),a("el-divider"),0===t.resultList.length?a("empty-data"):a("div",[a("table-row-count",{attrs:{count:t.total}}),a("div",{attrs:{id:"back-stage-search-result-table"}},[a("el-table",{staticStyle:{width:"100%"},attrs:{data:t.resultList,stripe:""}},[a("el-table-column",{attrs:{prop:"candidate",label:"准考证号"}}),a("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),a("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),a("el-table-column",{attrs:{prop:"rank",label:"排名"}}),a("el-table-column",{attrs:{prop:"province",label:"省份"}}),a("el-table-column",{attrs:{prop:"city",label:"城市"}}),a("el-table-column",{attrs:{prop:"departmentName",label:"学院"}}),a("el-table-column",{attrs:{prop:"majorName",label:"专业"}}),a("el-table-column",{attrs:{prop:"acceptedType",label:"录取类型",formatter:t.type2Str}})],1)],1),a("div",{staticClass:"page-bar"},[a("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(e){t.currentPage=e},"update:current-page":function(e){t.currentPage=e}}})],1)],1)],1)},l=[],r=(a("d3b7"),a("1bab")),s=a("3b96"),c=a("5b02"),i={name:"SearchResult",components:{EmptyData:s["a"],TableRowCount:c["a"]},data:function(){return{select:"1",input:"",resultList:[],currentPage:1,total:0}},watch:{input:function(){this.currentPage=1},select:function(){this.currentPage=1}},methods:{loadResult:function(){var t=this;if(null!==this.input&&0!==this.input.length){var e="1"===this.select?"student/searchStudent":"student/searchStudentyCandidate";this.setLoading(),Object(r["a"])({url:e,params:{keyword:this.input,currentPage:this.currentPage}}).then((function(e){t.resultList=[],"000"===e.code?(t.resultList=e.data.list,t.total=e.data.total):t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))}},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},type2Str:function(t,e,a){switch(a){case 1:return"第一志愿";case 2:return"第二志愿";case 3:return"第三志愿";case 4:return"第四志愿";case 5:return"第五志愿";case 6:return"第六志愿";case 7:return"调剂";default:return null}},changePage:function(){this.loadResult()}}},u=i,o=(a("3796"),a("2877")),p=Object(o["a"])(u,n,l,!1,null,"767187ae",null);e["default"]=p.exports},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-0b21ef94.d671823f.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-635f7714.06b4a354.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-635f7714"],{"3b96":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],r={name:"EmptyData"},s=r,c=(a("bab9"),a("2877")),i=Object(c["a"])(s,n,l,!1,null,"cec065f2",null);e["a"]=i.exports},4758:function(t,e,a){"use strict";var n=a("abeb"),l=a.n(n);l.a},"5b02":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"table-row-count-wrap clearfix"},[a("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],r={name:"TableRowCount",props:["count"]},s=r,c=(a("4758"),a("2877")),i=Object(c["a"])(s,n,l,!1,null,"732fcddd",null);e["a"]=i.exports},"9e26":function(t,e,a){"use strict";var n=a("a290"),l=a.n(n);l.a},a290:function(t,e,a){},abeb:function(t,e,a){},bab9:function(t,e,a){"use strict";var n=a("fa03"),l=a.n(n);l.a},f2a5:function(t,e,a){"use strict";a.r(e);var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-search-result"}},[a("div",{staticClass:"clearfix",attrs:{id:"search-result-input-wrap"}},[a("div",{attrs:{id:"search-result-input"}},[a("el-input",{staticClass:"input-with-select",attrs:{placeholder:"请输入内容"},model:{value:t.input,callback:function(e){t.input=e},expression:"input"}},[a("el-select",{attrs:{slot:"prepend",placeholder:"请选择"},slot:"prepend",model:{value:t.select,callback:function(e){t.select=e},expression:"select"}},[a("el-option",{attrs:{label:"姓名",value:"1"}}),a("el-option",{attrs:{label:"考号",value:"2"}})],1),a("el-button",{attrs:{slot:"append",icon:"el-icon-search"},on:{click:t.loadResult},slot:"append"})],1)],1)]),a("el-divider"),0===t.resultList.length?a("empty-data"):a("div",[a("table-row-count",{attrs:{count:t.total}}),a("div",{attrs:{id:"back-stage-search-result-table"}},[a("el-table",{staticStyle:{width:"100%"},attrs:{data:t.resultList,stripe:""}},[a("el-table-column",{attrs:{prop:"candidate",label:"准考证号"}}),a("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),a("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),a("el-table-column",{attrs:{prop:"rank",label:"排名"}}),a("el-table-column",{attrs:{prop:"province",label:"省份"}}),a("el-table-column",{attrs:{prop:"city",label:"城市"}}),a("el-table-column",{attrs:{prop:"departmentName",label:"学院"}}),a("el-table-column",{attrs:{prop:"majorName",label:"专业"}}),a("el-table-column",{attrs:{prop:"acceptedType",label:"录取类型",formatter:t.type2Str}})],1)],1),a("div",{staticClass:"page-bar"},[a("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(e){t.currentPage=e},"update:current-page":function(e){t.currentPage=e}}})],1)],1)],1)},l=[],r=(a("d3b7"),a("1bab")),s=a("3b96"),c=a("5b02"),i={name:"SearchResult",components:{EmptyData:s["a"],TableRowCount:c["a"]},data:function(){return{select:"1",input:"",resultList:[],currentPage:1,total:0}},watch:{input:function(){this.currentPage=1},select:function(){this.currentPage=1}},methods:{loadResult:function(){var t=this;if(null!==this.input&&0!==this.input.length){var e="1"===this.select?"student/searchStudent":"student/searchStudentByCandidate";this.setLoading(),Object(r["a"])({url:e,params:{keyword:this.input,currentPage:this.currentPage}}).then((function(e){t.resultList=[],"000"===e.code?(t.resultList=e.data.list,t.total=e.data.total):t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))}},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},type2Str:function(t,e,a){switch(a){case 1:return"第一志愿";case 2:return"第二志愿";case 3:return"第三志愿";case 4:return"第四志愿";case 5:return"第五志愿";case 6:return"第六志愿";case 7:return"调剂";default:return null}},changePage:function(){this.loadResult()}}},u=i,o=(a("9e26"),a("2877")),p=Object(o["a"])(u,n,l,!1,null,"33ed0424",null);e["default"]=p.exports},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-635f7714.06b4a354.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-635f7714.6d4da278.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-635f7714"],{"3b96":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},l=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],r={name:"EmptyData"},s=r,c=(a("bab9"),a("2877")),i=Object(c["a"])(s,n,l,!1,null,"cec065f2",null);e["a"]=i.exports},4758:function(t,e,a){"use strict";var n=a("abeb"),l=a.n(n);l.a},"5b02":function(t,e,a){"use strict";var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"table-row-count-wrap clearfix"},[a("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},l=[],r={name:"TableRowCount",props:["count"]},s=r,c=(a("4758"),a("2877")),i=Object(c["a"])(s,n,l,!1,null,"732fcddd",null);e["a"]=i.exports},"9e26":function(t,e,a){"use strict";var n=a("a290"),l=a.n(n);l.a},a290:function(t,e,a){},abeb:function(t,e,a){},bab9:function(t,e,a){"use strict";var n=a("fa03"),l=a.n(n);l.a},f2a5:function(t,e,a){"use strict";a.r(e);var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-search-result"}},[a("div",{staticClass:"clearfix",attrs:{id:"search-result-input-wrap"}},[a("div",{attrs:{id:"search-result-input"}},[a("el-input",{staticClass:"input-with-select",attrs:{placeholder:"请输入内容"},model:{value:t.input,callback:function(e){t.input=e},expression:"input"}},[a("el-select",{attrs:{slot:"prepend",placeholder:"请选择"},slot:"prepend",model:{value:t.select,callback:function(e){t.select=e},expression:"select"}},[a("el-option",{attrs:{label:"姓名",value:"1"}}),a("el-option",{attrs:{label:"考号",value:"2"}})],1),a("el-button",{attrs:{slot:"append",icon:"el-icon-search"},on:{click:t.loadResult},slot:"append"})],1)],1)]),a("el-divider"),0===t.resultList.length?a("empty-data"):a("div",[a("table-row-count",{attrs:{count:t.total}}),a("div",{attrs:{id:"back-stage-search-result-table"}},[a("el-table",{staticStyle:{width:"100%"},attrs:{data:t.resultList,stripe:""}},[a("el-table-column",{attrs:{prop:"candidate",label:"准考证号"}}),a("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),a("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),a("el-table-column",{attrs:{prop:"rank",label:"排名"}}),a("el-table-column",{attrs:{prop:"province",label:"省份"}}),a("el-table-column",{attrs:{prop:"city",label:"城市"}}),a("el-table-column",{attrs:{prop:"departmentName",label:"学院"}}),a("el-table-column",{attrs:{prop:"majorName",label:"专业"}}),a("el-table-column",{attrs:{prop:"acceptedType",label:"录取类型",formatter:t.type2Str}})],1)],1),a("div",{staticClass:"page-bar"},[a("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(e){t.currentPage=e},"update:current-page":function(e){t.currentPage=e}}})],1)],1)],1)},l=[],r=(a("d3b7"),a("1bab")),s=a("3b96"),c=a("5b02"),i={name:"SearchResult",components:{EmptyData:s["a"],TableRowCount:c["a"]},data:function(){return{select:"1",input:"",resultList:[],currentPage:1,total:0}},watch:{input:function(){this.currentPage=1},select:function(){this.currentPage=1}},methods:{loadResult:function(){var t=this;if(null!==this.input&&0!==this.input.length){var e="1"===this.select?"student/searchStudent":"student/searchStudentByCandidate";this.setLoading(),Object(r["a"])({url:e,params:{keyword:this.input,currentPage:this.currentPage}}).then((function(e){t.resultList=[],"000"===e.code?(t.resultList=e.data.list,t.total=e.data.total):t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))}},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},type2Str:function(t,e,a){switch(a){case 1:return"第一志愿";case 2:return"第二志愿";case 3:return"第三志愿";case 4:return"第四志愿";case 5:return"第五志愿";case 6:return"第六志愿";case 7:return"调剂";default:return null}},changePage:function(){this.loadResult()}}},u=i,o=(a("9e26"),a("2877")),p=Object(o["a"])(u,n,l,!1,null,"33ed0424",null);e["default"]=p.exports},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-635f7714.6d4da278.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-4d362591.65b0a4ec.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-4d362591"],{"159b":function(t,a,r){var e=r("da84"),n=r("fdbc"),i=r("17c2"),o=r("9112");for(var s in n){var c=e[s],u=c&&c.prototype;if(u&&u.forEach!==i)try{o(u,"forEach",i)}catch(l){u.forEach=i}}},"17c2":function(t,a,r){"use strict";var e=r("b727").forEach,n=r("a640"),i=r("ae40"),o=n("forEach"),s=i("forEach");t.exports=o&&s?[].forEach:function(t){return e(this,t,arguments.length>1?arguments[1]:void 0)}},"1f56":function(t,a,r){},"3b96":function(t,a,r){"use strict";var e=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},n=[function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("div",{staticClass:"empty-data"},[r("div",{staticClass:"el-icon-box empty-box"}),r("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],i={name:"EmptyData"},o=i,s=(r("bab9"),r("2877")),c=Object(s["a"])(o,e,n,!1,null,"cec065f2",null);a["a"]=c.exports},4160:function(t,a,r){"use strict";var e=r("23e7"),n=r("17c2");e({target:"Array",proto:!0,forced:[].forEach!=n},{forEach:n})},"65f0":function(t,a,r){var e=r("861d"),n=r("e8b5"),i=r("b622"),o=i("species");t.exports=function(t,a){var r;return n(t)&&(r=t.constructor,"function"!=typeof r||r!==Array&&!n(r.prototype)?e(r)&&(r=r[o],null===r&&(r=void 0)):r=void 0),new(void 0===r?Array:r)(0===a?0:a)}},b727:function(t,a,r){var e=r("0366"),n=r("44ad"),i=r("7b0b"),o=r("50c4"),s=r("65f0"),c=[].push,u=function(t){var a=1==t,r=2==t,u=3==t,l=4==t,f=6==t,d=5==t||f;return function(h,p,b,v){for(var g,m,D=i(h),j=n(D),y=e(p,b,3),M=o(j.length),w=0,E=v||s,x=a?E(h,M):r?E(h,0):void 0;M>w;w++)if((d||w in j)&&(g=j[w],m=y(g,w,D),t))if(a)x[w]=m;else if(m)switch(t){case 3:return!0;case 5:return g;case 6:return w;case 2:c.call(x,g)}else if(l)return!1;return f?-1:u||l?l:x}};t.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},bab9:function(t,a,r){"use strict";var e=r("fa03"),n=r.n(e);n.a},be9b:function(t,a,r){"use strict";r.r(a);var e=function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("div",{attrs:{id:"back-stage-count-distribute"}},[!t.isMajor&&0===t.chartDataDep.rows.length||t.isMajor&&0===t.chartDataMajor.rows.length?r("empty-data"):r("div",[r("div",{attrs:{id:"count-distribute-column"}},[r("ve-histogram",{attrs:{data:t.isMajor?t.chartDataMajor:t.chartDataDep,settings:t.lineSettings,height:"600px",width:"600px"}})],1),r("div",{staticClass:"clearfix",attrs:{id:"count-distribute-type"}},[r("div",{staticClass:"type-selector"},[r("el-radio",{attrs:{label:!1},model:{value:t.isMajor,callback:function(a){t.isMajor=a},expression:"isMajor"}},[t._v("按学院查看")]),r("el-radio",{attrs:{label:!0},model:{value:t.isMajor,callback:function(a){t.isMajor=a},expression:"isMajor"}},[t._v("按专业查看")])],1)]),r("div",{attrs:{id:"count-distribute-ring"}},[r("ve-ring",{attrs:{data:t.isMajor?t.chartDataMajor:t.chartDataDep,settings:t.ringSettings}})],1)])],1)},n=[],i=(r("4160"),r("d3b7"),r("159b"),r("1bab")),o=r("3b96"),s={name:"CountDistribute",data:function(){return{loading:null,chartDataDep:{columns:["学院","人数"],rows:[]},chartDataMajor:{columns:["专业","人数"],rows:[]},lineSettings:{itemStyle:{color:"#0984D9"}},ringSettings:{roseType:"radius",legendLimit:10},isMajor:!1}},methods:{loadData:function(){var t=this,a=this.isMajor?"student/getCountDistributeInMajor":"student/getCountDistributeInDepartment";this.setLoading(),Object(i["a"])({url:a}).then((function(a){"000"===a.code?(t.chartDataMajor.rows=[],t.chartDataDep.rows=[],t.isMajor?a.data.forEach((function(a){t.chartDataMajor.rows.push({"专业":a.major_name,"人数":a.count})})):a.data.forEach((function(a){t.chartDataDep.rows.push({"学院":a.department_name,"人数":a.count})}))):t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误"),console.log(a)})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()}},components:{EmptyData:o["a"]},created:function(){this.loadData()},watch:{isMajor:function(){this.loadData()}}},c=s,u=(r("e124"),r("2877")),l=Object(u["a"])(c,e,n,!1,null,"216025a8",null);a["default"]=l.exports},e124:function(t,a,r){"use strict";var e=r("1f56"),n=r.n(e);n.a},e8b5:function(t,a,r){var e=r("c6b6");t.exports=Array.isArray||function(t){return"Array"==e(t)}},fa03:function(t,a,r){}}]); 2 | //# sourceMappingURL=chunk-4d362591.65b0a4ec.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-4d362591.bdf01f2f.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-4d362591"],{"159b":function(t,a,r){var e=r("da84"),n=r("fdbc"),i=r("17c2"),o=r("9112");for(var s in n){var c=e[s],u=c&&c.prototype;if(u&&u.forEach!==i)try{o(u,"forEach",i)}catch(l){u.forEach=i}}},"17c2":function(t,a,r){"use strict";var e=r("b727").forEach,n=r("a640"),i=r("ae40"),o=n("forEach"),s=i("forEach");t.exports=o&&s?[].forEach:function(t){return e(this,t,arguments.length>1?arguments[1]:void 0)}},"1f56":function(t,a,r){},"3b96":function(t,a,r){"use strict";var e=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},n=[function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("div",{staticClass:"empty-data"},[r("div",{staticClass:"el-icon-box empty-box"}),r("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],i={name:"EmptyData"},o=i,s=(r("bab9"),r("2877")),c=Object(s["a"])(o,e,n,!1,null,"cec065f2",null);a["a"]=c.exports},4160:function(t,a,r){"use strict";var e=r("23e7"),n=r("17c2");e({target:"Array",proto:!0,forced:[].forEach!=n},{forEach:n})},"65f0":function(t,a,r){var e=r("861d"),n=r("e8b5"),i=r("b622"),o=i("species");t.exports=function(t,a){var r;return n(t)&&(r=t.constructor,"function"!=typeof r||r!==Array&&!n(r.prototype)?e(r)&&(r=r[o],null===r&&(r=void 0)):r=void 0),new(void 0===r?Array:r)(0===a?0:a)}},b727:function(t,a,r){var e=r("0366"),n=r("44ad"),i=r("7b0b"),o=r("50c4"),s=r("65f0"),c=[].push,u=function(t){var a=1==t,r=2==t,u=3==t,l=4==t,f=6==t,d=5==t||f;return function(h,p,b,v){for(var g,m,D=i(h),j=n(D),y=e(p,b,3),M=o(j.length),w=0,E=v||s,x=a?E(h,M):r?E(h,0):void 0;M>w;w++)if((d||w in j)&&(g=j[w],m=y(g,w,D),t))if(a)x[w]=m;else if(m)switch(t){case 3:return!0;case 5:return g;case 6:return w;case 2:c.call(x,g)}else if(l)return!1;return f?-1:u||l?l:x}};t.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},bab9:function(t,a,r){"use strict";var e=r("fa03"),n=r.n(e);n.a},be9b:function(t,a,r){"use strict";r.r(a);var e=function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("div",{attrs:{id:"back-stage-count-distribute"}},[!t.isMajor&&0===t.chartDataDep.rows.length||t.isMajor&&0===t.chartDataMajor.rows.length?r("empty-data"):r("div",[r("div",{attrs:{id:"count-distribute-column"}},[r("ve-histogram",{attrs:{data:t.isMajor?t.chartDataMajor:t.chartDataDep,settings:t.lineSettings,height:"600px",width:"600px"}})],1),r("div",{staticClass:"clearfix",attrs:{id:"count-distribute-type"}},[r("div",{staticClass:"type-selector"},[r("el-radio",{attrs:{label:!1},model:{value:t.isMajor,callback:function(a){t.isMajor=a},expression:"isMajor"}},[t._v("按学院查看")]),r("el-radio",{attrs:{label:!0},model:{value:t.isMajor,callback:function(a){t.isMajor=a},expression:"isMajor"}},[t._v("按专业查看")])],1)]),r("div",{attrs:{id:"count-distribute-ring"}},[r("ve-ring",{attrs:{data:t.isMajor?t.chartDataMajor:t.chartDataDep,settings:t.ringSettings}})],1)])],1)},n=[],i=(r("4160"),r("d3b7"),r("159b"),r("1bab")),o=r("3b96"),s={name:"CountDistribute",data:function(){return{loading:null,chartDataDep:{columns:["学院","人数"],rows:[]},chartDataMajor:{columns:["专业","人数"],rows:[]},lineSettings:{itemStyle:{color:"#0984D9"}},ringSettings:{roseType:"radius",legendLimit:10},isMajor:!1}},methods:{loadData:function(){var t=this,a=this.isMajor?"student/getCountDistributeInMajor":"student/getCountDistributeInDepartment";this.setLoading(),Object(i["a"])({url:a}).then((function(a){"000"===a.code?(t.chartDataMajor.rows=[],t.chartDataDep.rows=[],t.isMajor?a.data.forEach((function(a){t.chartDataMajor.rows.push({"专业":a.major_name,"人数":a.count})})):a.data.forEach((function(a){t.chartDataDep.rows.push({"学院":a.department_name,"人数":a.count})}))):t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误"),console.log(a)})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()}},components:{EmptyData:o["a"]},created:function(){this.loadData()},watch:{isMajor:function(){this.loadData()}}},c=s,u=(r("e124"),r("2877")),l=Object(u["a"])(c,e,n,!1,null,"216025a8",null);a["default"]=l.exports},e124:function(t,a,r){"use strict";var e=r("1f56"),n=r.n(e);n.a},e8b5:function(t,a,r){var e=r("c6b6");t.exports=Array.isArray||function(t){return"Array"==e(t)}},fa03:function(t,a,r){}}]); 2 | //# sourceMappingURL=chunk-4d362591.bdf01f2f.js.map -------------------------------------------------------------------------------- /src/main/resources/sql/schema.sql: -------------------------------------------------------------------------------- 1 | /* 2 | Navicat MySQL Data Transfer 3 | 4 | Source Server : wampserver_mysql 5 | Source Server Type : MySQL 6 | Source Server Version : 50726 7 | Source Host : localhost:3306 8 | Source Schema : db_enroll 9 | 10 | Target Server Type : MySQL 11 | Target Server Version : 50726 12 | File Encoding : 65001 13 | 14 | Date: 01/01/2021 12:33:54 15 | */ 16 | 17 | SET NAMES utf8mb4; 18 | SET FOREIGN_KEY_CHECKS = 0; 19 | 20 | -- ---------------------------- 21 | -- Table structure for t_department 22 | -- ---------------------------- 23 | DROP TABLE IF EXISTS `t_department`; 24 | CREATE TABLE `t_department` ( 25 | `department_id` int(11) NOT NULL AUTO_INCREMENT, 26 | `department_name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 27 | PRIMARY KEY (`department_id`) USING BTREE 28 | ) ENGINE = InnoDB AUTO_INCREMENT = 69 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; 29 | 30 | -- ---------------------------- 31 | -- Table structure for t_log 32 | -- ---------------------------- 33 | DROP TABLE IF EXISTS `t_log`; 34 | CREATE TABLE `t_log` ( 35 | `log_id` int(11) NOT NULL AUTO_INCREMENT, 36 | `log_content` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 37 | `log_time` datetime(0) NULL DEFAULT CURRENT_TIMESTAMP(0), 38 | `status` tinyint(255) NULL DEFAULT NULL, 39 | PRIMARY KEY (`log_id`) USING BTREE 40 | ) ENGINE = InnoDB AUTO_INCREMENT = 38 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; 41 | 42 | -- ---------------------------- 43 | -- Table structure for t_major 44 | -- ---------------------------- 45 | DROP TABLE IF EXISTS `t_major`; 46 | CREATE TABLE `t_major` ( 47 | `major_id` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 48 | `major_code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 49 | `department_id` int(11) NOT NULL, 50 | `major_name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 51 | `comment` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 52 | `period` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 53 | `plan_student_count` int(11) NOT NULL, 54 | `realistic_student_count` int(11) NULL DEFAULT 0, 55 | PRIMARY KEY (`major_id`) USING BTREE, 56 | INDEX `t_major_ibfk_1`(`department_id`) USING BTREE, 57 | CONSTRAINT `t_major_ibfk_1` FOREIGN KEY (`department_id`) REFERENCES `t_department` (`department_id`) ON DELETE CASCADE ON UPDATE RESTRICT 58 | ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; 59 | 60 | -- ---------------------------- 61 | -- Table structure for t_student 62 | -- ---------------------------- 63 | DROP TABLE IF EXISTS `t_student`; 64 | CREATE TABLE `t_student` ( 65 | `student_id` int(11) NOT NULL AUTO_INCREMENT, 66 | `candidate` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 67 | `student_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 68 | `total_grade` int(11) NOT NULL, 69 | `will1` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 70 | `will2` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 71 | `will3` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 72 | `will4` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 73 | `will5` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 74 | `will6` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 75 | `adjust` tinyint(4) NOT NULL, 76 | `rank` int(11) NOT NULL, 77 | `province` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 78 | `city` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 79 | `subject_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, 80 | `accepted_major_id` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, 81 | `accepted_type` tinyint(4) NULL DEFAULT NULL, 82 | PRIMARY KEY (`student_id`) USING BTREE, 83 | INDEX `idx_mjr_rk`(`accepted_major_id`, `rank`) USING BTREE, 84 | INDEX `idx_rank`(`rank`) USING BTREE, 85 | CONSTRAINT `t_student_ibfk_1` FOREIGN KEY (`accepted_major_id`) REFERENCES `t_major` (`major_id`) ON DELETE RESTRICT ON UPDATE RESTRICT 86 | ) ENGINE = InnoDB AUTO_INCREMENT = 20566 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; 87 | 88 | SET FOREIGN_KEY_CHECKS = 1; 89 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-448d2a85.cfd003cc.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-448d2a85"],{"3b86":function(t,e,i){"use strict";i.r(e);var s=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{attrs:{id:"back-stage-situation"}},[i("div",{staticClass:"clearfix",attrs:{id:"operation-history-btn-bar"}},[i("div",{attrs:{id:"operation-history-btn"}},[i("el-button",{attrs:{type:"primary",icon:"el-icon-date"},on:{click:t.updateHistory}},[t._v("查看操作历史")])],1),i("div",{attrs:{id:"reset-info-btn"}},[i("el-button",{attrs:{type:"primary",icon:"el-icon-refresh-right",loading:t.resetting},on:{click:function(e){t.dialogVisible=!0}}},[t._v("重置所有信息")])],1)]),i("el-divider"),i("el-dialog",{attrs:{title:"系统提示",visible:t.dialogVisible,width:"30%"},on:{"update:visible":function(e){t.dialogVisible=e}}},[i("i",{staticClass:"el-icon-warning"},[i("span",[t._v("此操作将清空当前工作的结果,是否确认删除")])]),i("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[i("el-button",{on:{click:function(e){t.dialogVisible=!1}}},[t._v("取 消")]),i("el-button",{attrs:{type:"primary"},on:{click:t.resetConfirm}},[t._v("确 定")])],1)]),i("el-container",[i("div",{staticClass:"processInfo"},[i("el-main",[i("h1",[t._v("系统状态")]),i("br"),i("el-steps",{attrs:{active:t.$store.state.status+1,"finish-status":"success","process-status":"process","align-center":"",simple:""}},[i("el-step",{attrs:{title:"初始状态",description:"考生信息和专业计划待导入"}}),i("el-step",{attrs:{title:"导入专业招生计划",description:""}}),i("el-step",{attrs:{title:"导入考生信息",description:""}}),i("el-step",{attrs:{title:"开始执行录取",description:"所需文件已导入,正在执行录取"}}),i("el-step",{attrs:{title:"开始执行调剂",description:"录取完成,开始调剂"}}),i("el-step",{attrs:{title:"结果已生成",description:"结果已生成。可以导出结果"}})],1)],1),i("div",{staticClass:"sys-discription"},[i("p",[i("i",{staticClass:"el-icon-info"}),t._v(" 系统说明:该系统提供平行志愿录取的功能,可用于模拟和正式录取")]),i("br"),i("p",[t._v("1- 在录取之前需要确保所需文件已导入系统。系统会检测导入文件类别是否正确对应。成功导入文件后可以开始录取进程。")]),i("p",[t._v("2- 录取和调剂结束后可以下载的结果(Excel)。")]),i("p",[t._v("3- 重置系统将清空当前状态,重新执行系统流程。")])])],1)]),i("el-drawer",{attrs:{visible:t.drawer,direction:"rtl","show-close":!1,withHeader:!1},on:{"update:visible":function(e){t.drawer=e}}},[0===t.logList.length?i("empty-data"):i("div",{attrs:{id:"back-stage-situation-content"}},[i("el-timeline",t._l(t.logList,(function(e){return i("el-timeline-item",{attrs:{timestamp:e.logTime,color:"#0984D9",placement:"top"}},[i("div",{staticClass:"log-item"},[i("div",{staticClass:"log-content"},[t._v(" "+t._s(e.logContent)+" ")])])])})),1)],1)],1)],1)},a=[],n=(i("86a9"),i("1bab")),o=i("3b96"),r={name:"Situation",data:function(){return{state:0,loading:null,drawer:!1,downloadingResult:!1,downloadingExitQueue:!1,resetting:!1,logList:[],dialogVisible:!1}},methods:{getStatus:function(){this.$store.dispatch("getStatus")},updateHistory:function(){this.drawer=!0,this.getLogList()},getLogList:function(){var t=this;Object(n["a"])({url:"status/getLogList"}).then((function(e){"000"===e.code?t.logList=e.data:t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")}))},resetConfirm:function(){this.dialogVisible=!1,this.reset()},reset:function(){var t=this;this.loading=!0,Object(n["a"])({url:"status/reset"}).then((function(e){"000"===e.code?(t.$message.success("重置成功"),t.getStatus(),t.getLogList()):t.$message.error("重置失败")})).catch((function(e){t.$message.error("系统错误")}))},setUnloading:function(){this.loading.close()},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})}},components:{EmptyData:o["a"]},created:function(){this.getStatus(),this.getLogList()}},c=r,l=(i("5168"),i("2877")),d=Object(l["a"])(c,s,a,!1,null,"10c6182c",null);e["default"]=d.exports},"3b96":function(t,e,i){"use strict";var s=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},a=[function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"empty-data"},[i("div",{staticClass:"el-icon-box empty-box"}),i("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],n={name:"EmptyData"},o=n,r=(i("bab9"),i("2877")),c=Object(r["a"])(o,s,a,!1,null,"cec065f2",null);e["a"]=c.exports},5168:function(t,e,i){"use strict";var s=i("74c4"),a=i.n(s);a.a},"74c4":function(t,e,i){},"86a9":function(t,e,i){"use strict";i.d(e,"a",(function(){return r}));var s=i("bc3a"),a=i.n(s),n=i("a18c"),o=i("4360");function r(t){var e=a.a.create({baseURL:"http://localhost:8080/",headers:{"content-type":"multipart/form-data"}});return e.interceptors.response.use((function(t){return"010"===t.data.code?(n["a"].push("/login"),void o["a"].commit("doLogout")):t.data}),(function(t){})),e(t)}a.a.defaults.withCredentials=!0},bab9:function(t,e,i){"use strict";var s=i("fa03"),a=i.n(s);a.a},fa03:function(t,e,i){}}]); 2 | //# sourceMappingURL=chunk-448d2a85.cfd003cc.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-000a4c55.c63fc860.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-000a4c55"],{2246:function(t,e,i){"use strict";var s=i("ff84"),a=i.n(s);a.a},"3b86":function(t,e,i){"use strict";i.r(e);var s=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{attrs:{id:"back-stage-situation"}},[i("div",{staticClass:"clearfix",attrs:{id:"operation-history-btn-bar"}},[i("div",{attrs:{id:"operation-history-btn"}},[i("el-button",{attrs:{type:"primary",icon:"el-icon-date"},on:{click:t.updateHistory}},[t._v("查看操作历史")])],1),i("div",{attrs:{id:"reset-info-btn"}},[i("el-button",{attrs:{type:"primary",icon:"el-icon-refresh-right",loading:t.resetting},on:{click:function(e){t.dialogVisible=!0}}},[t._v("重置所有信息")])],1)]),i("el-divider"),i("el-dialog",{attrs:{title:"系统提示",visible:t.dialogVisible,width:"30%"},on:{"update:visible":function(e){t.dialogVisible=e}}},[i("i",{staticClass:"el-icon-warning"},[i("span",[t._v("此操作将清空当前工作的结果,是否确认删除")])]),i("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[i("el-button",{on:{click:function(e){t.dialogVisible=!1}}},[t._v("取 消")]),i("el-button",{attrs:{type:"primary"},on:{click:t.resetConfirm}},[t._v("确 定")])],1)]),i("el-container",[i("div",{staticClass:"processInfo"},[i("el-main",[i("h1",[t._v("系统状态")]),i("br"),i("el-steps",{attrs:{active:t.$store.state.status+1,"finish-status":"success","process-status":"process","align-center":"",simple:""}},[i("el-step",{attrs:{title:"初始状态",description:"考生信息和专业计划待导入"}}),i("el-step",{attrs:{title:"导入专业招生计划",description:""}}),i("el-step",{attrs:{title:"导入考生信息",description:""}}),i("el-step",{attrs:{title:"开始执行录取",description:"所需文件已导入,正在执行录取"}}),i("el-step",{attrs:{title:"开始执行调剂",description:"录取完成,开始调剂"}}),i("el-step",{attrs:{title:"结果已生成",description:"结果已生成。可以导出结果"}})],1)],1),i("div",{staticClass:"sys-discription"},[i("p",[i("i",{staticClass:"el-icon-info"}),t._v(" 系统说明:该系统提供平行志愿录取的功能,可用于模拟和正式录取")]),i("br"),i("p",[t._v("1- 在录取之前需要确保所需文件已导入系统。系统会检测导入文件类别是否正确对应。成功导入文件后可以开始录取进程。")]),i("p",[t._v("2- 录取和调剂结束后可以下载的结果(Excel)。")]),i("p",[t._v("3- 在执行录取操作之前,可以查看招生计划并修改。")]),i("p",[t._v("4- 重置系统将清空当前状态,重新执行系统流程。")])])],1)]),i("el-drawer",{attrs:{visible:t.drawer,direction:"rtl","show-close":!1,withHeader:!1},on:{"update:visible":function(e){t.drawer=e}}},[0===t.logList.length?i("empty-data"):i("div",{attrs:{id:"back-stage-situation-content"}},[i("el-timeline",t._l(t.logList,(function(e){return i("el-timeline-item",{attrs:{timestamp:e.logTime,color:"#0984D9",placement:"top"}},[i("div",{staticClass:"log-item"},[i("div",{staticClass:"log-content"},[t._v(" "+t._s(e.logContent)+" ")])])])})),1)],1)],1)],1)},a=[],n=(i("86a9"),i("1bab")),o=i("3b96"),r={name:"Situation",data:function(){return{state:0,loading:null,drawer:!1,downloadingResult:!1,downloadingExitQueue:!1,resetting:!1,logList:[],dialogVisible:!1}},methods:{getStatus:function(){this.$store.dispatch("getStatus")},updateHistory:function(){this.drawer=!0,this.getLogList()},getLogList:function(){var t=this;Object(n["a"])({url:"status/getLogList"}).then((function(e){"000"===e.code?t.logList=e.data:t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")}))},resetConfirm:function(){this.dialogVisible=!1,this.reset()},reset:function(){var t=this;this.loading=!0,Object(n["a"])({url:"status/reset"}).then((function(e){"000"===e.code?(t.$message.success("重置成功"),t.getStatus(),t.getLogList()):t.$message.error("重置失败")})).catch((function(e){t.$message.error("系统错误")}))},setUnloading:function(){this.loading.close()},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})}},components:{EmptyData:o["a"]},created:function(){this.getStatus(),this.getLogList()}},c=r,l=(i("2246"),i("2877")),d=Object(l["a"])(c,s,a,!1,null,"daf73c38",null);e["default"]=d.exports},"3b96":function(t,e,i){"use strict";var s=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},a=[function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"empty-data"},[i("div",{staticClass:"el-icon-box empty-box"}),i("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],n={name:"EmptyData"},o=n,r=(i("bab9"),i("2877")),c=Object(r["a"])(o,s,a,!1,null,"cec065f2",null);e["a"]=c.exports},"86a9":function(t,e,i){"use strict";i.d(e,"a",(function(){return r}));var s=i("bc3a"),a=i.n(s),n=i("a18c"),o=i("4360");function r(t){var e=a.a.create({baseURL:"http://localhost:8080/",headers:{"content-type":"multipart/form-data"}});return e.interceptors.response.use((function(t){return"010"===t.data.code?(n["a"].push("/login"),void o["a"].commit("doLogout")):t.data}),(function(t){})),e(t)}a.a.defaults.withCredentials=!0},bab9:function(t,e,i){"use strict";var s=i("fa03"),a=i.n(s);a.a},fa03:function(t,e,i){},ff84:function(t,e,i){}}]); 2 | //# sourceMappingURL=chunk-000a4c55.c63fc860.js.map -------------------------------------------------------------------------------- /src/main/java/org/enroll/service/impl/ExcelServiceImpl.java: -------------------------------------------------------------------------------- 1 | package org.enroll.service.impl; 2 | 3 | import com.alibaba.excel.EasyExcel; 4 | import com.alibaba.excel.ExcelWriter; 5 | import com.alibaba.excel.write.metadata.WriteSheet; 6 | import org.enroll.excel.listener.ReadMajorListener; 7 | import org.enroll.excel.listener.ReadStudentListener; 8 | import org.enroll.excel.pojo.ExcelMajor; 9 | import org.enroll.excel.pojo.ExcelStudent; 10 | import org.enroll.mapper.DepartmentMapper; 11 | import org.enroll.mapper.MajorMapper; 12 | import org.enroll.mapper.StatusMapper; 13 | import org.enroll.mapper.StudentMapper; 14 | import org.enroll.pojo.EnrollStatus; 15 | import org.enroll.pojo.StudentResult; 16 | import org.enroll.service.interfaces.IExcelService; 17 | import org.springframework.beans.factory.annotation.Autowired; 18 | import org.springframework.stereotype.Service; 19 | import org.springframework.transaction.annotation.Isolation; 20 | import org.springframework.transaction.annotation.Propagation; 21 | import org.springframework.transaction.annotation.Transactional; 22 | import org.springframework.web.multipart.MultipartFile; 23 | 24 | import java.io.IOException; 25 | import java.io.OutputStream; 26 | import java.util.List; 27 | 28 | @Service 29 | @Transactional(isolation = Isolation.DEFAULT, propagation = Propagation.REQUIRED) 30 | public class ExcelServiceImpl implements IExcelService { 31 | 32 | @Autowired 33 | private MajorMapper majorMapper; 34 | 35 | @Autowired 36 | private DepartmentMapper departmentMapper; 37 | 38 | @Autowired 39 | private StudentMapper studentMapper; 40 | 41 | @Autowired 42 | private StatusMapper statusMapper; 43 | 44 | public void ReadMajorExcel(MultipartFile file) throws IOException { 45 | Integer status = statusMapper.getStatus(); 46 | majorMapper.resetTable(); 47 | studentMapper.resetStudent(); 48 | if (status != null && status != EnrollStatus.START.ordinal()){ 49 | throw new RuntimeException("现在不能导入招生计划文件"); 50 | } 51 | EasyExcel.read(file.getInputStream(), ExcelMajor.class, new ReadMajorListener(majorMapper, departmentMapper)).sheet().doRead(); 52 | statusMapper.addLog("导入专业招生计划文件", EnrollStatus.WITHOUT_STUDENT.ordinal()); 53 | } 54 | 55 | public void ReadStudentExcel(MultipartFile file) throws IOException { 56 | Integer status = statusMapper.getStatus(); 57 | if (status != EnrollStatus.WITHOUT_STUDENT.ordinal()){ 58 | throw new RuntimeException("现在不能导入考生志愿文件"); 59 | } 60 | studentMapper.resetTable(); 61 | majorMapper.resetMajor(); 62 | EasyExcel.read(file.getInputStream(), ExcelStudent.class,new ReadStudentListener(studentMapper)).sheet().doRead(); 63 | statusMapper.addLog("导入考生志愿文件", EnrollStatus.FILE_READY.ordinal()); 64 | } 65 | 66 | @Override 67 | public void doExport(OutputStream os){ 68 | int start = 0, size = 200; 69 | ExcelWriter excelWriter = null; 70 | Integer status = statusMapper.getStatus(); 71 | if (status != EnrollStatus.ADJUSTED.ordinal()){ 72 | throw new RuntimeException("未结束流程不能导出结果"); 73 | } 74 | try { 75 | excelWriter = EasyExcel.write(os, StudentResult.class).build(); 76 | WriteSheet writeSheet = EasyExcel.writerSheet("录取结果").build(); 77 | while(true) { 78 | List results = studentMapper.getStudentForExport(start,size); 79 | if(results.size() == 0) 80 | break; 81 | excelWriter.write(results, writeSheet); 82 | start += size; 83 | } 84 | } finally { 85 | if (excelWriter != null) { 86 | excelWriter.finish(); 87 | } 88 | } 89 | } 90 | 91 | @Override 92 | public void exportExitStudent(OutputStream os) { 93 | int start = 0, size = 200; 94 | ExcelWriter excelWriter = null; 95 | Integer status = statusMapper.getStatus(); 96 | if (status != EnrollStatus.ADJUSTED.ordinal()){ 97 | throw new RuntimeException("未结束流程不能导出结果"); 98 | } 99 | try { 100 | excelWriter = EasyExcel.write(os, ExcelStudent.class).build(); 101 | WriteSheet writeSheet = EasyExcel.writerSheet("退档结果").build(); 102 | while(true) { 103 | List results = studentMapper.getExitStudentForExport(start,size); 104 | if(results.size() == 0) 105 | break; 106 | excelWriter.write(results, writeSheet); 107 | start += size; 108 | } 109 | } finally { 110 | if (excelWriter != null) { 111 | excelWriter.finish(); 112 | } 113 | } 114 | } 115 | } 116 | -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-5bf4cf60.429c6f05.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-5bf4cf60"],{"159b":function(t,e,a){var r=a("da84"),n=a("fdbc"),s=a("17c2"),i=a("9112");for(var c in n){var o=r[c],d=o&&o.prototype;if(d&&d.forEach!==s)try{i(d,"forEach",s)}catch(l){d.forEach=s}}},"17c2":function(t,e,a){"use strict";var r=a("b727").forEach,n=a("a640"),s=a("ae40"),i=n("forEach"),c=s("forEach");t.exports=i&&c?[].forEach:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}},"3b96":function(t,e,a){"use strict";var r=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},n=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],s={name:"EmptyData"},i=s,c=(a("bab9"),a("2877")),o=Object(c["a"])(i,r,n,!1,null,"cec065f2",null);e["a"]=o.exports},4160:function(t,e,a){"use strict";var r=a("23e7"),n=a("17c2");r({target:"Array",proto:!0,forced:[].forEach!=n},{forEach:n})},"65f0":function(t,e,a){var r=a("861d"),n=a("e8b5"),s=a("b622"),i=s("species");t.exports=function(t,e){var a;return n(t)&&(a=t.constructor,"function"!=typeof a||a!==Array&&!n(a.prototype)?r(a)&&(a=a[i],null===a&&(a=void 0)):a=void 0),new(void 0===a?Array:a)(0===e?0:e)}},"93ca":function(t,e,a){},a12b:function(t,e,a){"use strict";a.r(e);var r=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-grade-distribute"}},[0===t.chartData.rows.length?a("empty-data"):a("div",[a("div",{attrs:{id:"grade-distribute-column"}},[a("ve-histogram",{attrs:{data:t.chartData,settings:t.lineSettings,height:"600px",width:"600px"}})],1),a("div",{staticClass:"clearfix",attrs:{id:"grade-distribute-type"}},[a("div",{staticClass:"dep-selector"},[a("el-select",{attrs:{clearable:"",placeholder:"选择学院"},model:{value:t.selectedDepId,callback:function(e){t.selectedDepId=e},expression:"selectedDepId"}},t._l(t.depList,(function(t){return a("el-option",{key:t.departmentId,attrs:{label:t.departmentName,value:t.departmentId}})})),1)],1),a("div",{staticClass:"major-selector"},[a("el-select",{attrs:{clearable:"",placeholder:"选择专业"},model:{value:t.selectedMajorId,callback:function(e){t.selectedMajorId=e},expression:"selectedMajorId"}},t._l(t.majorList,(function(t){return a("el-option",{key:t.majorId,attrs:{label:t.majorName,value:t.majorId}})})),1)],1)]),a("div",{attrs:{id:"grade-distribute-ring"}},[a("ve-ring",{attrs:{data:t.chartData,settings:t.ringSettings}})],1)])],1)},n=[],s=(a("4160"),a("d3b7"),a("159b"),a("1bab")),i=a("3b96"),c={name:"GradeDistribute",data:function(){return{loading:null,chartData:{columns:["区间","人数"],rows:[]},ringSettings:{roseType:"radius"},lineSettings:{itemStyle:{color:"#0984D9"}},depList:[],majorList:[],selectedDepId:null,selectedMajorId:null}},watch:{selectedDepId:function(){this.selectedMajorId=null,this.loadMajors(),this.getGradeDistribute()},selectedMajorId:function(){this.getGradeDistribute()}},methods:{getGradeDistribute:function(){var t=this;null!=this.selectedDepId&&console.log(this.selectedDepId.length);var e="student/getGradeDistribute";null!=this.selectedDepId&&""!==this.selectedDepId&&(e="student/getGradeDistributeByDepartment"),null!=this.selectedMajorId&&""!==this.selectedMajorId&&(e="student/getGradeDistributeByMajor"),this.setLoading(),Object(s["a"])({url:e,params:{departmentId:this.selectedDepId,majorId:this.selectedMajorId}}).then((function(e){"000"===e.code?(t.chartData.rows=[],e.data.forEach((function(e){t.chartData.rows.push({"区间":e.region,"人数":e.count})}))):t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},loadDepartments:function(){var t=this;Object(s["a"])({url:"department/getDepartments"}).then((function(e){"000"===e.code&&(t.depList=e.data)}))},loadMajors:function(){var t=this,e=null==this.selectedDepId?"major/getMajors":"major/getMajorsByDepartment";Object(s["a"])({url:e,params:{departmentId:this.selectedDepId}}).then((function(e){"000"===e.code&&(t.majorList=e.data)}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()}},created:function(){this.getGradeDistribute(),this.loadDepartments(),this.loadMajors()},components:{EmptyData:i["a"]}},o=c,d=(a("cc18"),a("2877")),l=Object(d["a"])(o,r,n,!1,null,"0e8a85c7",null);e["default"]=l.exports},b727:function(t,e,a){var r=a("0366"),n=a("44ad"),s=a("7b0b"),i=a("50c4"),c=a("65f0"),o=[].push,d=function(t){var e=1==t,a=2==t,d=3==t,l=4==t,u=6==t,f=5==t||u;return function(p,h,b,m){for(var g,v,D=s(p),j=n(D),I=r(h,b,3),y=i(j.length),x=0,E=m||c,M=e?E(p,y):a?E(p,0):void 0;y>x;x++)if((f||x in j)&&(g=j[x],v=I(g,x,D),t))if(e)M[x]=v;else if(v)switch(t){case 3:return!0;case 5:return g;case 6:return x;case 2:o.call(M,g)}else if(l)return!1;return u?-1:d||l?l:M}};t.exports={forEach:d(0),map:d(1),filter:d(2),some:d(3),every:d(4),find:d(5),findIndex:d(6)}},bab9:function(t,e,a){"use strict";var r=a("fa03"),n=a.n(r);n.a},cc18:function(t,e,a){"use strict";var r=a("93ca"),n=a.n(r);n.a},e8b5:function(t,e,a){var r=a("c6b6");t.exports=Array.isArray||function(t){return"Array"==r(t)}},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-5bf4cf60.429c6f05.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-5bf4cf60.43fd482b.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-5bf4cf60"],{"159b":function(t,e,a){var r=a("da84"),n=a("fdbc"),s=a("17c2"),i=a("9112");for(var c in n){var o=r[c],d=o&&o.prototype;if(d&&d.forEach!==s)try{i(d,"forEach",s)}catch(l){d.forEach=s}}},"17c2":function(t,e,a){"use strict";var r=a("b727").forEach,n=a("a640"),s=a("ae40"),i=n("forEach"),c=s("forEach");t.exports=i&&c?[].forEach:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}},"3b96":function(t,e,a){"use strict";var r=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},n=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],s={name:"EmptyData"},i=s,c=(a("bab9"),a("2877")),o=Object(c["a"])(i,r,n,!1,null,"cec065f2",null);e["a"]=o.exports},4160:function(t,e,a){"use strict";var r=a("23e7"),n=a("17c2");r({target:"Array",proto:!0,forced:[].forEach!=n},{forEach:n})},"65f0":function(t,e,a){var r=a("861d"),n=a("e8b5"),s=a("b622"),i=s("species");t.exports=function(t,e){var a;return n(t)&&(a=t.constructor,"function"!=typeof a||a!==Array&&!n(a.prototype)?r(a)&&(a=a[i],null===a&&(a=void 0)):a=void 0),new(void 0===a?Array:a)(0===e?0:e)}},"93ca":function(t,e,a){},a12b:function(t,e,a){"use strict";a.r(e);var r=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-grade-distribute"}},[0===t.chartData.rows.length?a("empty-data"):a("div",[a("div",{attrs:{id:"grade-distribute-column"}},[a("ve-histogram",{attrs:{data:t.chartData,settings:t.lineSettings,height:"600px",width:"600px"}})],1),a("div",{staticClass:"clearfix",attrs:{id:"grade-distribute-type"}},[a("div",{staticClass:"dep-selector"},[a("el-select",{attrs:{clearable:"",placeholder:"选择学院"},model:{value:t.selectedDepId,callback:function(e){t.selectedDepId=e},expression:"selectedDepId"}},t._l(t.depList,(function(t){return a("el-option",{key:t.departmentId,attrs:{label:t.departmentName,value:t.departmentId}})})),1)],1),a("div",{staticClass:"major-selector"},[a("el-select",{attrs:{clearable:"",placeholder:"选择专业"},model:{value:t.selectedMajorId,callback:function(e){t.selectedMajorId=e},expression:"selectedMajorId"}},t._l(t.majorList,(function(t){return a("el-option",{key:t.majorId,attrs:{label:t.majorName,value:t.majorId}})})),1)],1)]),a("div",{attrs:{id:"grade-distribute-ring"}},[a("ve-ring",{attrs:{data:t.chartData,settings:t.ringSettings}})],1)])],1)},n=[],s=(a("4160"),a("d3b7"),a("159b"),a("1bab")),i=a("3b96"),c={name:"GradeDistribute",data:function(){return{loading:null,chartData:{columns:["区间","人数"],rows:[]},ringSettings:{roseType:"radius"},lineSettings:{itemStyle:{color:"#0984D9"}},depList:[],majorList:[],selectedDepId:null,selectedMajorId:null}},watch:{selectedDepId:function(){this.selectedMajorId=null,this.loadMajors(),this.getGradeDistribute()},selectedMajorId:function(){this.getGradeDistribute()}},methods:{getGradeDistribute:function(){var t=this;null!=this.selectedDepId&&console.log(this.selectedDepId.length);var e="student/getGradeDistribute";null!=this.selectedDepId&&""!==this.selectedDepId&&(e="student/getGradeDistributeByDepartment"),null!=this.selectedMajorId&&""!==this.selectedMajorId&&(e="student/getGradeDistributeByMajor"),this.setLoading(),Object(s["a"])({url:e,params:{departmentId:this.selectedDepId,majorId:this.selectedMajorId}}).then((function(e){"000"===e.code?(t.chartData.rows=[],e.data.forEach((function(e){t.chartData.rows.push({"区间":e.region,"人数":e.count})}))):t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},loadDepartments:function(){var t=this;Object(s["a"])({url:"department/getDepartments"}).then((function(e){"000"===e.code&&(t.depList=e.data)}))},loadMajors:function(){var t=this,e=null==this.selectedDepId?"major/getMajors":"major/getMajorsByDepartment";Object(s["a"])({url:e,params:{departmentId:this.selectedDepId}}).then((function(e){"000"===e.code&&(t.majorList=e.data)}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()}},created:function(){this.getGradeDistribute(),this.loadDepartments(),this.loadMajors()},components:{EmptyData:i["a"]}},o=c,d=(a("cc18"),a("2877")),l=Object(d["a"])(o,r,n,!1,null,"0e8a85c7",null);e["default"]=l.exports},b727:function(t,e,a){var r=a("0366"),n=a("44ad"),s=a("7b0b"),i=a("50c4"),c=a("65f0"),o=[].push,d=function(t){var e=1==t,a=2==t,d=3==t,l=4==t,u=6==t,f=5==t||u;return function(p,h,b,m){for(var g,v,D=s(p),j=n(D),I=r(h,b,3),y=i(j.length),x=0,E=m||c,M=e?E(p,y):a?E(p,0):void 0;y>x;x++)if((f||x in j)&&(g=j[x],v=I(g,x,D),t))if(e)M[x]=v;else if(v)switch(t){case 3:return!0;case 5:return g;case 6:return x;case 2:o.call(M,g)}else if(l)return!1;return u?-1:d||l?l:M}};t.exports={forEach:d(0),map:d(1),filter:d(2),some:d(3),every:d(4),find:d(5),findIndex:d(6)}},bab9:function(t,e,a){"use strict";var r=a("fa03"),n=a.n(r);n.a},cc18:function(t,e,a){"use strict";var r=a("93ca"),n=a.n(r);n.a},e8b5:function(t,e,a){var r=a("c6b6");t.exports=Array.isArray||function(t){return"Array"==r(t)}},fa03:function(t,e,a){}}]); 2 | //# sourceMappingURL=chunk-5bf4cf60.43fd482b.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-bdce9ffc.b1ad70d5.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-bdce9ffc"],{"36e2":function(t,e,a){},"3b96":function(t,e,a){"use strict";var l=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},n=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"empty-data"},[a("div",{staticClass:"el-icon-box empty-box"}),a("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],r={name:"EmptyData"},s=r,o=(a("bab9"),a("2877")),c=Object(o["a"])(s,l,n,!1,null,"cec065f2",null);e["a"]=c.exports},4758:function(t,e,a){"use strict";var l=a("abeb"),n=a.n(l);n.a},"5b02":function(t,e,a){"use strict";var l=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"table-row-count-wrap clearfix"},[a("div",{staticClass:"table-row-count"},[t._v(" 共"+t._s(t.count)+"条数据 ")])])},n=[],r={name:"TableRowCount",props:["count"]},s=r,o=(a("4758"),a("2877")),c=Object(o["a"])(s,l,n,!1,null,"732fcddd",null);e["a"]=c.exports},abeb:function(t,e,a){},bab9:function(t,e,a){"use strict";var l=a("fa03"),n=a.n(l);n.a},dd92:function(t,e,a){"use strict";var l=a("36e2"),n=a.n(l);n.a},fa03:function(t,e,a){},fcb0:function(t,e,a){"use strict";a.r(e);var l=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"back-stage-result"}},[a("div",{staticClass:"clearfix result-query-option"},[a("div",{staticClass:"dep-selector"},[a("el-select",{attrs:{clearable:"",placeholder:"选择学院"},model:{value:t.selectedDepId,callback:function(e){t.selectedDepId=e},expression:"selectedDepId"}},t._l(t.depList,(function(t){return a("el-option",{key:t.departmentId,attrs:{label:t.departmentName,value:t.departmentId}})})),1)],1),a("div",{staticClass:"major-selector"},[a("el-select",{attrs:{clearable:"",placeholder:"选择专业"},model:{value:t.selectedMajorId,callback:function(e){t.selectedMajorId=e},expression:"selectedMajorId"}},t._l(t.majorList,(function(t){return a("el-option",{key:t.majorId,attrs:{label:t.majorName,value:t.majorId}})})),1)],1),a("div",{staticClass:"rank-select-slider"},[a("el-slider",{attrs:{"format-tooltip":t.formatTooltip},model:{value:t.rankRaw,callback:function(e){t.rankRaw=e},expression:"rankRaw"}})],1),a("div",{staticClass:"result-query-btn"},[a("el-button",{attrs:{type:"primary"},on:{click:t.loadResult}},[t._v("查询")])],1)]),0===t.resultList.length?a("empty-data"):a("div",[a("table-row-count",{attrs:{count:t.total}}),a("div",{attrs:{id:"back-stage-result-table"}},[a("el-table",{staticStyle:{width:"100%"},attrs:{data:t.resultList,stripe:""}},[a("el-table-column",{attrs:{prop:"candidate",label:"准考证号",width:"110"}}),a("el-table-column",{attrs:{prop:"studentName",label:"姓名"}}),a("el-table-column",{attrs:{prop:"totalGrade",label:"总分"}}),a("el-table-column",{attrs:{prop:"rank",label:"排名"}}),a("el-table-column",{attrs:{prop:"province",label:"省份"}}),a("el-table-column",{attrs:{prop:"city",label:"城市"}}),a("el-table-column",{attrs:{prop:"departmentName",label:"学院"}}),a("el-table-column",{attrs:{prop:"majorName",label:"专业"}}),a("el-table-column",{attrs:{prop:"acceptedType",label:"录取类型",formatter:t.type2Str}})],1)],1),a("div",{staticClass:"page-bar"},[a("el-pagination",{attrs:{layout:"prev, pager, next, jumper","page-size":50,"current-page":t.currentPage,"hide-on-single-page":"",total:t.total},on:{"current-change":t.changePage,"update:currentPage":function(e){t.currentPage=e},"update:current-page":function(e){t.currentPage=e}}})],1)],1)],1)},n=[],r=(a("d3b7"),a("1bab")),s=a("3b96"),o=a("5b02"),c={name:"Result",data:function(){return{resultList:[],currentPage:1,total:0,rankRaw:100,selectedDepId:null,selectedMajorId:null,depList:[],majorList:[],loading:null}},watch:{selectedDepId:function(){this.selectedMajorId=null,this.loadMajors()}},methods:{loadResult:function(){var t=this;this.setLoading(),Object(r["a"])({url:"student/getResult",params:{departmentId:null==this.selectedDepId||""===this.selectedDepId?null:this.selectedDepId,majorId:null==this.selectedMajorId||""===this.selectedMajorId?null:this.selectedMajorId,rank:100===this.rankRaw?null:500*this.rankRaw+1e4,currentPage:this.currentPage}}).then((function(e){t.resultList=[],"000"===e.code?(t.resultList=e.data.list,t.total=e.data.total):t.$message.error(e.message)})).catch((function(e){t.$message.error("系统错误")})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()},type2Str:function(t,e,a){switch(a){case 1:return"第一志愿";case 2:return"第二志愿";case 3:return"第三志愿";case 4:return"第四志愿";case 5:return"第五志愿";case 6:return"第六志愿";case 7:return"调剂";default:return null}},changePage:function(){this.loadResult()},formatTooltip:function(t){return 500*t+1e4+"名以前"},loadDepartments:function(){var t=this;Object(r["a"])({url:"department/getDepartments"}).then((function(e){"000"===e.code&&(t.depList=e.data)}))},loadMajors:function(){var t=this,e=null==this.selectedDepId?"major/getMajors":"major/getMajorsByDepartment";Object(r["a"])({url:e,params:{departmentId:this.selectedDepId}}).then((function(e){"000"===e.code&&(t.majorList=e.data)}))}},components:{EmptyData:s["a"],TableRowCount:o["a"]},created:function(){this.loadResult(),this.loadDepartments(),this.loadMajors()}},i=c,u=(a("dd92"),a("2877")),d=Object(u["a"])(i,l,n,!1,null,"60d120b2",null);e["default"]=d.exports}}]); 2 | //# sourceMappingURL=chunk-bdce9ffc.b1ad70d5.js.map -------------------------------------------------------------------------------- /src/main/resources/static/admission/js/chunk-27006b18.4d788685.js: -------------------------------------------------------------------------------- 1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-27006b18"],{"159b":function(t,a,e){var r=e("da84"),n=e("fdbc"),i=e("17c2"),o=e("9112");for(var s in n){var c=r[s],u=c&&c.prototype;if(u&&u.forEach!==i)try{o(u,"forEach",i)}catch(l){u.forEach=i}}},"17c2":function(t,a,e){"use strict";var r=e("b727").forEach,n=e("a640"),i=e("ae40"),o=n("forEach"),s=i("forEach");t.exports=o&&s?[].forEach:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}},"1f56":function(t,a,e){},"3b96":function(t,a,e){"use strict";var r=function(){var t=this,a=t.$createElement;t._self._c;return t._m(0)},n=[function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"empty-data"},[e("div",{staticClass:"el-icon-box empty-box"}),e("div",{staticClass:"empty-data-text"},[t._v("暂无数据")])])}],i={name:"EmptyData"},o=i,s=(e("bab9"),e("2877")),c=Object(s["a"])(o,r,n,!1,null,"cec065f2",null);a["a"]=c.exports},4160:function(t,a,e){"use strict";var r=e("23e7"),n=e("17c2");r({target:"Array",proto:!0,forced:[].forEach!=n},{forEach:n})},"65f0":function(t,a,e){var r=e("861d"),n=e("e8b5"),i=e("b622"),o=i("species");t.exports=function(t,a){var e;return n(t)&&(e=t.constructor,"function"!=typeof e||e!==Array&&!n(e.prototype)?r(e)&&(e=e[o],null===e&&(e=void 0)):e=void 0),new(void 0===e?Array:e)(0===a?0:a)}},a640:function(t,a,e){"use strict";var r=e("d039");t.exports=function(t,a){var e=[][t];return!!e&&r((function(){e.call(null,a||function(){throw 1},1)}))}},ae40:function(t,a,e){var r=e("83ab"),n=e("d039"),i=e("5135"),o=Object.defineProperty,s={},c=function(t){throw t};t.exports=function(t,a){if(i(s,t))return s[t];a||(a={});var e=[][t],u=!!i(a,"ACCESSORS")&&a.ACCESSORS,l=i(a,0)?a[0]:c,f=i(a,1)?a[1]:void 0;return s[t]=!!e&&!n((function(){if(u&&!r)return!0;var t={length:-1};u?o(t,1,{enumerable:!0,get:c}):t[1]=1,e.call(t,l,f)}))}},b727:function(t,a,e){var r=e("0366"),n=e("44ad"),i=e("7b0b"),o=e("50c4"),s=e("65f0"),c=[].push,u=function(t){var a=1==t,e=2==t,u=3==t,l=4==t,f=6==t,d=5==t||f;return function(h,p,b,v){for(var g,m,D=i(h),L=n(D),M=r(p,b,3),S=o(L.length),y=0,j=v||s,x=a?j(h,S):e?j(h,0):void 0;S>y;y++)if((d||y in L)&&(g=L[y],m=M(g,y,D),t))if(a)x[y]=m;else if(m)switch(t){case 3:return!0;case 5:return g;case 6:return y;case 2:c.call(x,g)}else if(l)return!1;return f?-1:u||l?l:x}};t.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},bab9:function(t,a,e){"use strict";var r=e("fa03"),n=e.n(r);n.a},be9b:function(t,a,e){"use strict";e.r(a);var r=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{attrs:{id:"back-stage-count-distribute"}},[!t.isMajor&&0===t.chartDataDep.rows.length||t.isMajor&&0===t.chartDataMajor.rows.length?e("empty-data"):e("div",[e("div",{attrs:{id:"count-distribute-column"}},[e("ve-histogram",{attrs:{data:t.isMajor?t.chartDataMajor:t.chartDataDep,settings:t.lineSettings,height:"600px",width:"600px"}})],1),e("div",{staticClass:"clearfix",attrs:{id:"count-distribute-type"}},[e("div",{staticClass:"type-selector"},[e("el-radio",{attrs:{label:!1},model:{value:t.isMajor,callback:function(a){t.isMajor=a},expression:"isMajor"}},[t._v("按学院查看")]),e("el-radio",{attrs:{label:!0},model:{value:t.isMajor,callback:function(a){t.isMajor=a},expression:"isMajor"}},[t._v("按专业查看")])],1)]),e("div",{attrs:{id:"count-distribute-ring"}},[e("ve-ring",{attrs:{data:t.isMajor?t.chartDataMajor:t.chartDataDep,settings:t.ringSettings}})],1)])],1)},n=[],i=(e("4160"),e("d3b7"),e("159b"),e("1bab")),o=e("3b96"),s={name:"CountDistribute",data:function(){return{loading:null,chartDataDep:{columns:["学院","人数"],rows:[]},chartDataMajor:{columns:["专业","人数"],rows:[]},lineSettings:{itemStyle:{color:"#0984D9"}},ringSettings:{roseType:"radius",legendLimit:10},isMajor:!1}},methods:{loadData:function(){var t=this,a=this.isMajor?"student/getCountDistributeInMajor":"student/getCountDistributeInDepartment";this.setLoading(),Object(i["a"])({url:a}).then((function(a){"000"===a.code?(t.chartDataMajor.rows=[],t.chartDataDep.rows=[],t.isMajor?a.data.forEach((function(a){t.chartDataMajor.rows.push({"专业":a.major_name,"人数":a.count})})):a.data.forEach((function(a){t.chartDataDep.rows.push({"学院":a.department_name,"人数":a.count})}))):t.$message.error(a.message)})).catch((function(a){t.$message.error("系统错误"),console.log(a)})).finally((function(){t.setUnloading()}))},setLoading:function(){this.loading=this.$loading({lock:!0,text:"Loading",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"})},setUnloading:function(){this.loading.close()}},components:{EmptyData:o["a"]},created:function(){this.loadData()},watch:{isMajor:function(){this.loadData()}}},c=s,u=(e("e124"),e("2877")),l=Object(u["a"])(c,r,n,!1,null,"216025a8",null);a["default"]=l.exports},e124:function(t,a,e){"use strict";var r=e("1f56"),n=e.n(r);n.a},e8b5:function(t,a,e){var r=e("c6b6");t.exports=Array.isArray||function(t){return"Array"==r(t)}},fa03:function(t,a,e){},fdbc:function(t,a){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}}}]); 2 | //# sourceMappingURL=chunk-27006b18.4d788685.js.map --------------------------------------------------------------------------------