Просмотр исходного кода

Merge branch 'master' of http://121.4.203.192:9000/mingxue/front

hare8999@163.com 2 лет назад
Родитель
Сommit
25876a3bb3

+ 8 - 0
src/api/webApi/webQue.js

@@ -755,3 +755,11 @@ export function getNextQuestionForImageGenerate(params) {
     withoutToken: true
   })
 }
+
+export function getSelectCourse(params) {
+  return request({
+    url: '/front/syzy/xkcx/getSelectCourse',
+    method: 'get',
+    params
+  })
+}

+ 32 - 21
src/views/career/subject/subjectChoice.vue

@@ -16,22 +16,24 @@
             </el-radio-group>
           </el-row>
           <el-row class="radioInput radioScience">
-            <div>
+            <div v-if="selectCourse.course0 ? selectCourse.course0.length : selectCourse.course0" class="fx-row">
               <span class="radiaTitle">首选科目:</span>
+              <el-checkbox-group v-model="selected.sciences[0]" @change="onScienceChanged" size="mini" :max="1">
+                <el-checkbox-button v-for="item in selectCourse.course0" :key="item" :label="item">
+                  {{item}}
+                </el-checkbox-button>
+               </el-checkbox-group>
             </div>
-            <el-checkbox-group v-model="selected.sciences[0]" @change="onScienceChanged" size="mini" :max="1">
-              <el-checkbox-button v-for="item in form.sciences[0]" :key="item" :label="item">
-                {{item}}
-              </el-checkbox-button>
-            </el-checkbox-group>
-            <div>
-              <span class="radiaTitle">再选科目:</span>
+
+            <div class="fx-row">
+              <span class="radiaTitle">{{ gkType == 1 ?  '再选科目' : '选科科目' }}:</span>
+               <el-checkbox-group v-model="selected.sciences[1]" @change="onScienceChanged" size="mini" :max="gkType == 1 ? 2 : 3">
+                <el-checkbox-button v-for="item in selectCourse.course1" :key="item" :label="item">
+                  {{item}}
+                </el-checkbox-button>
+               </el-checkbox-group>
             </div>
-            <el-checkbox-group v-model="selected.sciences[1]" @change="onScienceChanged" size="mini" :max="2">
-              <el-checkbox-button v-for="item in form.sciences[1]" :key="item" :label="item">
-                {{item}}
-              </el-checkbox-button>
-            </el-checkbox-group>
+
           </el-row>
           <filter-form :filter="filter_form"></filter-form>
         </div>
@@ -77,7 +79,7 @@
 </template>
 
 <script>
-  import {collectAdd, collectRemove, xkcxlist, xkcxYears,saveSelectCourse} from "@/api/webApi/webQue";
+  import {collectAdd, collectRemove, xkcxlist, xkcxYears,saveSelectCourse,getSelectCourse} from "@/api/webApi/webQue";
   import MxSearchGroup from "@/components/MxSearch/mx-search-group";
   import FilterForm from '@/views/career/components/FilterForm';
   export default {
@@ -104,8 +106,9 @@
         // 初始条件
         form: {
           years: [],
-          sciences: [["物理", "历史"],["化学", "生物", "政治", "地理"]]
         },
+        selectCourse:{},
+        gkType: 1, // 1 4选2  2 6选3
         filter_form:{
           location:'',
           natureTypeCN:'',
@@ -179,26 +182,35 @@
       this.selected.sciences[1] = this.course1? this.course1.split(',') :[]
       if(this.course0 && this.course1) this.httpGetXkcxList()
       this.getYears();
-
+      this.getSelectCourse()
     },
     methods: {
-      // 取有效年份清单
+      getSelectCourse(){
+        getSelectCourse().then(res => {
+          this.selectCourse = res.data
+          if(!res.data.course0.length) {
+            this.gkType = 2
+          }else {
+            this.gkType = 1
+          }
+        })
+      },
+      // 有效年份
       getYears() {
         xkcxYears().then((res) => {
           this.form.years = res.data || [];
           this.selected.years  = this.form.years[0]
         });
       },
-
       yearChange(value) {
         this.httpGetXkcxList();
       },
       onScienceChanged(value) {
         this.httpGetXkcxList();
       },
-      // 查询结果
       httpGetXkcxList() {
-        if (this.selected.sciences[0].length<1 || this.selected.sciences[1].length<2) return;
+        const course = [...this.selected.sciences[0],...this.selected.sciences[1]]
+        if (course.length<3) return;
 
         //console.log(this.selected);return;
         this.loading = true
@@ -224,7 +236,6 @@
             this.loading = false
         })
       },
-
       onChangePage(page) {
         this.pageSize = page.limit;
         this.pageNum = page.page;

+ 1 - 1
src/views/career/zhiyuan/NewSimulatedVolunteer.vue

@@ -102,7 +102,7 @@ export default {
       // this.$refs.score.init(this.form)
     },
     httpzytbBatches() {
-      const mode = [this.form.firstSubject, ...this.form.lastSubject].toString()
+      const mode = [this.form.firstSubject, ...this.form.lastSubject].filter(i => i != '').toString()
       console.log(mode)
       zytbBatches({
         score: this.form.score,

+ 1 - 1
src/views/career/zhiyuan/components/phase.vue

@@ -3,7 +3,7 @@
     <div class="pt40 pb40 fx-row jc-between">
       <div class="left f14">
         <span class="mr20">您的预估高考成绩</span>
-        <span class="mr20">选科科目:<em  class="f-primary">{{formSubject.firstSubject }}<em v-for="item in formSubject.lastSubject">,{{item}}</em> </em></span>
+        <span class="mr20">选科科目:<em  class="f-primary">{{formSubject.firstSubject || '' }}<em v-for="item in formSubject.lastSubject">  {{item}} </em> </em></span>
         <span class="mr20">总分:<em  class="f-primary">{{ formSubject.score }}</em></span>
         <span class="mr20">位次:<em  class="f-primary">{{ formSubject.rank.lowestRank }}</em></span>
       </div>

+ 23 - 7
src/views/career/zhiyuan/components/score.vue

@@ -4,13 +4,13 @@
       <el-form-item label="您的总分" prop="score">
         <el-input @mousewheel.native.prevent type="number" v-model="form.score" placeholder="请输入分数"></el-input>
       </el-form-item>
-      <el-form-item :label="voluntaryData.isNewGaokao?`您的首选科目`:`您的科目`" prop="firstSubject">
+      <el-form-item v-if="gkType == 2 || gkType == 3" :label="voluntaryData.isNewGaokao?`您的首选科目`:`您的科目`" prop="firstSubject">
         <el-radio-group v-model="form.firstSubject">
           <el-radio v-for="item in voluntaryData.course0" :key="item" :label="item"></el-radio>
         </el-radio-group>
       </el-form-item>
-      <el-form-item v-if="voluntaryData.isNewGaokao" label="您的次选科目" prop="lastSubject">
-        <el-checkbox-group v-model="form.lastSubject" :max="2">
+      <el-form-item v-if="voluntaryData.isNewGaokao" :label="gkType == 2 ? '您的次选科目' : '您的选科科目'" prop="lastSubject">
+        <el-checkbox-group v-model="form.lastSubject" :max="gkType == 2 ? 2 : 3">
           <el-checkbox v-for="item in voluntaryData.course1" :key="item" :label="item"></el-checkbox>
         </el-checkbox-group>
       </el-form-item>
@@ -37,6 +37,7 @@ export default {
         course0: [],
         course1: []
       },
+      gkType:0, // 1 6选三  2 4选2  3 旧高考文理
       rules: {
         score: [
           { required: true, message: '请输入你的总分', trigger: 'blur' },
@@ -59,8 +60,9 @@ export default {
           { required: true, message: '请选择次选科目', trigger: 'change' },
           {
             validator: (r, v, cb) => {
-              if (v.length < 2) {
-                cb('请选择两项次选科目')
+              const maxcount = this.gkType == 2 ? 2 : 3
+              if (v.length < maxcount) {
+                cb(`请选择${maxcount}项科目`)
               } else {
                 cb()
               }
@@ -82,11 +84,25 @@ export default {
     }
   },
   mounted() {
-    getVoluntaryData().then(res => this.voluntaryData = res.data)
+    getVoluntaryData().then(res => {
+      this.voluntaryData = res.data
+      if(!res.data.course0.length && res.data.course1.length){
+        this.gkType  = 1
+        return
+      }
+      if(res.data.course0.length && res.data.course1){
+        this.gkType  = 2
+        return
+      }
+      if(!res.data.isNewGaokao){
+        this.gkType  = 3
+        return
+      }
+    })
   },
   methods: {
     setRankByScore() {
-      if (!this.form.firstSubject || !this.form.score) {
+      if (!this.form.score) {
         this.$set(this.form, 'rank', {})
         return
       }

+ 0 - 1
src/views/questioncenter/components/collect.vue

@@ -157,7 +157,6 @@
     </div>
     <!-- 分页 -->
     <pagination
-      v-show="pageForm.total > 0"
       :total="pageForm.total"
       :page.sync="pageForm.pageNum"
       :limit.sync="pageForm.pageSize"

+ 0 - 8
src/views/videocourse/video_course.vue

@@ -14,14 +14,6 @@
           >
           </div>
         </mx-search-group>
-<!--        <div class="search_btn" style="float: right; overflow: auto">-->
-<!--          <input-->
-<!--            v-model="form.sectionName"-->
-<!--            @keyup.enter="searchVideo"-->
-<!--            placeholder="请输入搜索内容"-->
-<!--          />-->
-<!--          <img src="@/assets/images/icon_search.png" @click="searchVideo" />-->
-<!--        </div>-->
       </div>
       <div class="radio_contianer">
         <div style="margin-bottom: 16px">