فهرست منبع

Merge branch 'Test' into 'master'

Test

See merge request crowd-2019/crowd-test-service-front!127
郭超 5 سال پیش
والد
کامیت
f9d13b3533
3فایلهای تغییر یافته به همراه39 افزوده شده و 17 حذف شده
  1. 27 11
      src/components/task/Task.vue
  2. 4 3
      src/components/task/TaskCreate.vue
  3. 8 3
      src/pages/Square/PopularProjectAndTaskList.vue

+ 27 - 11
src/components/task/Task.vue

@@ -20,7 +20,7 @@
           <el-input size="small" type="number" v-if="isModifyMode" v-model="task.quotePrice">
             <template slot="append">¥</template>
           </el-input>
-          <span v-if="!isModifyMode">{{task.quotePrice}}</span>
+          <span v-if="!isModifyMode">{{task.quotePrice}}</span>
         </el-form-item>
         <!--<el-form-item type="number" label="任务定价" prop="fixedPrice">-->
         <!--<el-input v-if="isModifyMode" v-model="task.fixedPrice">-->
@@ -37,11 +37,11 @@
           <span class="badge" v-if="!isModifyMode">{{serviceName}}</span>
         </el-form-item>
 
-        <el-form-item label="服务序列号" prop="endPointVO.serverCode" style="width: 700px;"
-                      v-if="showBD&&task.endPointVO&&currType.type===1"
-                      :rules="[{ required: true, message: 'serverCode', trigger: 'blur' }]">
-          <el-input v-if="isModifyMode" v-model="task.endPointVO.serverCode" label="examId"></el-input>
-          <span v-if="!isModifyMode&&showBD">{{task.endPointVO.serverCode}}</span>
+        <el-form-item label="服务序列号" prop="endPoint" style="width: 700px;"
+                      v-if="showBD&&task.endPoint&&currType.type===1"
+                      >
+          <el-input v-if="isModifyMode" v-model="task.endPoint.serverCode" label="examId"></el-input>
+          <span v-if="!isModifyMode&&showBD">{{task.endPoint.serverCode}}</span>
         </el-form-item>
 
         <el-form-item label="任务可见性" prop="resource" style="width: 700px;">
@@ -301,7 +301,7 @@
           participantCount: 1,
           title: '',
           description: '',
-          endPointVO: {
+          endPoint: {
             serverCode: '',
           }
         },
@@ -358,7 +358,6 @@
             {required: true},
             {
               validator: (rule, value, callback) => {
-                console.log(value)
                 if (value == 0 && this.task.institution.id == null) {
                   callback(new Error('定向发布至少要选择一个测评机构'))
                 } else {
@@ -367,6 +366,17 @@
               }, trigger: 'change'
             },
           ],
+          endPoint: [
+            {
+              validator: (rule, value, callback) => {
+                if (this.currType.type === 1 && this.task.endPoint.serverCode === '') {
+                  callback(new Error('请填写对应得服务序列号'))
+                } else {
+                  callback()
+                }
+              }, trigger: ['change','blur']
+            },
+          ],
           datetime: [{required: true, message: '截止时间不可为空', trigger: 'blur'}],
         },
         acceptedUserList: [],
@@ -409,7 +419,6 @@
         let serviceName = this.serviceType.filter((item) => {
           return item.code === code;
         });
-        console.log(serviceName)
         return serviceName&&serviceName[0]&&serviceName[0]['name']
       },
 
@@ -420,6 +429,7 @@
         this.currType = type[0] ? type[0] : {};
         if (this.currType.type === 0) {
           this.task.participantCount = 1
+          this.$refs.task.clearValidate('endPoint');
         }
       },
       init() {
@@ -529,7 +539,7 @@
         this.task.agencyId = res.crowdTaskVO.agencyId
         this.task.status = res.crowdTaskVO.status
         this.task.statusVO = res.crowdTaskVO.statusVO
-        this.task.endPointVO = res.crowdTaskVO.endPointVO ? res.crowdTaskVO.endPointVO : {
+        this.task.endPoint = res.crowdTaskVO.endPointVO ? res.crowdTaskVO.endPointVO : {
           serverCode: '',
         }
         this.taskOperationControl = res.taskOperationControl
@@ -594,7 +604,7 @@
               fixedPrice: this.task.fixedPrice,
               requirementFile: this.task.requireDocUrl,
               participantCount: this.task.participantCount,
-              endPoint: this.task.endPointVO
+              endPoint: this.task.endPoint
             }
             //console.log(newTask)
             updateTask(this.projectId, this.taskId, newTask, this.updateTaskSuccess, this.updateTaskFail)
@@ -625,8 +635,14 @@
         this.task.doc = []
         this.task.requireDocUrl = res.crowdTaskVO.requirementFile,
           this.task.participantCount = res.crowdTaskVO.participantCount
+          this.task.endPoint = res.crowdTaskVO.endPointVO ? res.crowdTaskVO.endPointVO : {
+            serverCode: '',
+          }
         this.reportList = res.crowdReportVOList
+        this.crowdReportUrl = res.crowdTaskVO.writeReportUrl;
         this.acceptedUserList = res.acceptedUserList
+        this.handleTestTypeChange(res.crowdTaskVO.serviceType);
+        this.serviceName = this.getServiceByCode(res.crowdTaskVO.serviceType);
         this.hideLoading()
         notify('success', '修改成功')
       },

+ 4 - 3
src/components/task/TaskCreate.vue

@@ -28,8 +28,8 @@
         </el-form-item>
 
 
-        <el-form-item label="服务序列号" prop="endPoint.serverCode" style="width:700px;" v-if="currType.type==1"
-                      :rules="[{ required: true, message: '请输入服务序列号', trigger: 'blur' }]">
+        <el-form-item label="服务序列号" prop="endPoint" style="width:700px;" v-if="currType.type==1"
+                      >
           <el-input v-model="task.endPoint.serverCode" label="serverCode"></el-input>
         </el-form-item>
 
@@ -224,7 +224,7 @@
                 } else {
                   callback()
                 }
-              }, trigger: 'change'
+              }, trigger: ['change','blur']
             },
           ],
           datetime: [{required: true, message: '截止时间不可为空', trigger: 'blur'}],
@@ -271,6 +271,7 @@
         this.currType = type[0] ? type[0] : {};
         if (this.currType.type === 0) {
           this.task.participantCount = 1
+          this.$refs.task.clearValidate('endPoint');
         }else{
           this.task.resource = '2'
         }

+ 8 - 3
src/pages/Square/PopularProjectAndTaskList.vue

@@ -102,7 +102,8 @@
   import {notify} from "../../constants"
   import TaskItem from '../../components/commons/TaskItem'
   import ProjectItem from '../../components/commons/ProjectItem'
-  import {storageGet} from '@/js/index'
+  import {defaultValue, getRolesPermissions, storageGet} from '@/js/index'
+  import {mapActions, mapGetters} from 'vuex';
 
   export default {
     name: 'PopularProjectAndTaskList',
@@ -224,12 +225,16 @@
         }
       },
       handleSearchData() {
-        console.log("this.searchVal  " + this.searchVal)
         this.activePage = 1;
-        if (this.currTab == 'project') {
+        console.log("this.searchType " + this.searchType);;
+        if (this.searchType === 'project') {
+          this.currTab =  'project';
           this.getHotProject();
+          console.log("currTab " + this.currTab)
         } else {
+          this.currTab =  'task';
           this.getHotTask();
+          console.log("currTab " + this.currTab)
         }
       },
       handlePageChange(index) {