Browse Source

不再使用项目类型、任务类型、报告类型的枚举

sunjh 6 năm trước cách đây
mục cha
commit
cc3111c3f2

+ 1 - 10
src/components/commons/TaskItem.vue

@@ -4,7 +4,7 @@
         <img class="task-cover" src="@/assets/img/home_ban1.jpg">
       </span>
     <span class="task-title col-md-2 col-sm-10">{{taskTable.title}}</span>
-    <span class="col-md-1 col-sm-5 ">{{serviceType[taskTable.serviceType]}}</span>
+    <span class="col-md-1 col-sm-5 ">{{taskTable.serviceType}}</span>
     <span class="col-md-1 col-sm-5 ">¥{{taskTable.price}}</span>
     <!--<span class="col-md-1 col-sm-5 ">{{platformType}}</span>-->
     <span class="col-md-1 col-sm-5 ">{{taskStatus[taskTable.status]}}</span>
@@ -16,9 +16,7 @@
 </template>
 
 <script>
-import ServiceType from '@/constants/enum/service-type'
 import TaskStatus from '@/constants/enum/task-status'
-import PlatformType from '@/constants/enum/platform-type'
 
 export default {
   name: 'Task-Item',
@@ -29,18 +27,11 @@ export default {
     return {
       taskTable: this.task,
       taskStatus: TaskStatus,//TaskStatus[this.task.status],
-      serviceType: ServiceType,//[this.task.serviceType],
-      platformType: []
     }
   },
   mounted () {
     this.taskStatus = TaskStatus[this.taskTable.status]
-    this.serviceType = ServiceType[this.taskTable.serviceType]
     let plats = []
-    for (let i in this.taskTable.platform) {
-      plats.push(PlatformType[i])
-    }
-    this.platformType = plats
     //console.log(this.platformType)
   }
   ,

+ 11 - 12
src/components/project/Project.vue

@@ -64,16 +64,12 @@
         </el-form-item>
 
         <el-form-item label="服务类型" prop="type">
-          <el-checkbox-group v-if="isModifyMode" v-model="project.type">
-            <el-checkbox label="0" name="type">{{serviceType[0]}}</el-checkbox>
-            <el-checkbox label="1" name="type">{{serviceType[1]}}</el-checkbox>
-            <el-checkbox label="2" name="type">{{serviceType[2]}}</el-checkbox>
-            <el-checkbox label="3" name="type">{{serviceType[3]}}</el-checkbox>
-            <el-checkbox label="4" name="type">{{serviceType[4]}}</el-checkbox>
-            <el-checkbox label="5" name="type">{{serviceType[5]}}</el-checkbox>
-            <el-checkbox label="6" name="type">{{serviceType[6]}}</el-checkbox>
+          <el-checkbox-group v-if="isModifyMode" v-model="project.type" >
+            <span v-for="(item,index) in serviceType" :key="index">
+              <el-checkbox :label="item" name="type">{{item}}</el-checkbox>
+            </span>
           </el-checkbox-group>
-          <span v-if="!isModifyMode" class="badge" v-for="item in project.type">{{serviceType[item]}}</span>
+          <span v-if="!isModifyMode" class="badge" v-for="item in project.type">{{item}}</span>
         </el-form-item>
         <el-form-item label="用途" prop="usage">
           <el-input v-if="isModifyMode" v-model="project.usage"></el-input>
@@ -291,7 +287,6 @@
 
 <script>
 import Enum from '@/constants/enum/index'
-import PlatformType from '@/constants/enum/platform-type'
 import ReportList from '@/components/report/ReportList'
 import Http from '@/js/http.js'
 import Apis from '@/js/api.js'
@@ -300,6 +295,7 @@ import provincecity from '@/components/commons/ProvinceCity'
 import provinceCityJSON from '@/constants/provinceCity.json'
 import ServiceType from '@/constants/enum/service-type'
 import {notify} from '@/constants/index'
+import {getAllAbilities} from '@/js/index'
 
 export default {
   name: 'Project',
@@ -323,9 +319,9 @@ export default {
       tabPosition: 'top',
       institutionArray: Enum.institution,
       isModifyMode: false,
-      platformType: PlatformType,
+      platformType: [],
       resourceType: ResourceType,
-      serviceType: ServiceType,
+      serviceType: [],
       project: {
         userId: 0,
         name: '',
@@ -671,6 +667,9 @@ export default {
         this.project.fileUrl = res.data
         console.log(res)
       })
+    },
+    setServiceType () {
+      this.serviceType = getAllAbilities()
     }
   }
 }

+ 14 - 11
src/components/project/ProjectCreate.vue

@@ -34,7 +34,7 @@
           </el-checkbox-group>
         </el-form-item>
         <el-form-item label="需求描述" prop="desc">
-          <el-input type="textarea" v-model="project.desc"></el-input>
+          <el-input type="textarea" style="width: 400px" v-model="project.desc"></el-input>
         </el-form-item>
         <el-form-item label="价格" prop="price">
           <el-input type="number" v-model="project.price">
@@ -42,14 +42,10 @@
           </el-input>
         </el-form-item>
         <el-form-item label="服务类型" prop="type">
-          <el-checkbox-group v-model="project.type">
-            <el-checkbox label="0" name="0">接口测试</el-checkbox>
-            <el-checkbox label="1" name="1">安全漏洞扫描</el-checkbox>
-            <el-checkbox label="2" name="2">风险评估服务</el-checkbox>
-            <el-checkbox label="3" name="3">源代码安全审计服务</el-checkbox>
-            <el-checkbox label="4" name="4">功能测试服务</el-checkbox>
-            <el-checkbox label="5" name="5">性能测试</el-checkbox>
-            <el-checkbox label="6" name="6">功能和易用性测试</el-checkbox>
+          <el-checkbox-group v-model="project.type" >
+            <span v-for="(item,index) in serviceType" :key="index">
+              <el-checkbox :label="item" name="type">{{item}}&nbsp;&nbsp;&nbsp;&nbsp;</el-checkbox>
+            </span>
           </el-checkbox-group>
         </el-form-item>
         <el-form-item label="用途" prop="usage">
@@ -154,9 +150,9 @@ import Http from '@/js/http.js'
 import Apis from '@/js/api.js'
 import provincecity from '@/components/commons/ProvinceCity'
 import provinceCityJSON from '@/constants/provinceCity.json'
-import ServiceType from '@/constants/enum/service-type'
 import ResourceType from '@/constants/enum/resource-type'
 import {notify} from '@/constants/index'
+import {getAllAbilities} from '@/js/index'
 
 export default {
   name: 'ProjectCreate',
@@ -178,7 +174,7 @@ export default {
       tabPosition: 'top',
       institutionArray: Enum.institution,
       platformType: [],
-      serviceType: ServiceType,
+      serviceType: [],
       resourceType: ResourceType,
       project: {
         userId: 3,
@@ -308,6 +304,7 @@ export default {
       }
     },
     init () {
+      this.setServiceType()
       // this.project.platform.map(item => {
       //   this.platformType.push(PlatformType[item])
       // })
@@ -443,6 +440,9 @@ export default {
         this.project.fileUrl = res.data
         console.log(res)
       })
+    },
+    setServiceType () {
+      this.serviceType = getAllAbilities()
     }
   }
 }
@@ -465,5 +465,8 @@ export default {
     max-height: 120px !important;
     overflow: auto;
   }
+  .el-input {
+    width: 400px;
+  }
 </style>
 

+ 11 - 9
src/components/report/Report.vue

@@ -8,14 +8,11 @@
         </el-form-item>
         <el-form-item label="报告类型" prop="type">
           <el-radio-group v-if="isModifyMode" v-model="report.type">
-            <el-radio :label="0" name="type">{{ serviceType[0] }}</el-radio>
-            <el-radio :label="1" name="type">{{ serviceType[1] }}</el-radio>
-            <el-radio :label="2" name="type">{{ serviceType[2] }}</el-radio>
-            <el-radio :label="3" name="type">{{ serviceType[3] }}</el-radio>
-            <el-radio :label="4" name="type">{{ serviceType[4] }}</el-radio>
-            <el-radio :label="5" name="type">{{ serviceType[5] }}</el-radio>
+            <span v-for="(item,index) in reportType" :key="index">
+              <el-radio :label="item" name="type">{{item}}</el-radio>
+            </span>
           </el-radio-group>
-          <span v-if="!isModifyMode" class="badge">{{serviceType[report.type]}}</span>
+          <span v-if="!isModifyMode" class="badge">{{report.type}}</span>
         </el-form-item>
         <el-form-item label="摘要" prop="abstract">
           <div>
@@ -89,8 +86,9 @@
 <script>
 import Http from '@/js/http.js'
 import Apis from '@/js/api.js'
-import ServiceType from '@/constants/enum/service-type'
 import {notify} from '@/constants/index'
+import {getAllReportTypes} from '@/js/index'
+
 export default {
   name: 'Report-Create',
   components: {},
@@ -100,7 +98,7 @@ export default {
       projectId: '',
       taskId: '',
       isModifyMode: false,
-      serviceType: ServiceType,
+      reportType: [],
       report: {
         name: '',
         type: '',
@@ -142,6 +140,7 @@ export default {
       this.reportId = this.$route.params.reportId
       this.projectId = this.$route.params.projectId
       this.taskId = this.$route.params.taskId
+      this.setReportType()
       this.loadData()
     },
     modifyForm () {
@@ -276,6 +275,9 @@ export default {
         this.report.fileUrl = res.data
         console.log(res)
       })
+    },
+    setReportType () {
+      this.reportType = getAllReportTypes()
     }
   }
 }

+ 10 - 8
src/components/report/ReportCreate.vue

@@ -8,12 +8,9 @@
         </el-form-item>
         <el-form-item label="报告类型" prop="type">
           <el-radio-group v-model="report.type">
-            <el-radio label="0" name="type">{{ reportType['0'] }}</el-radio>
-            <el-radio label="1" name="type">{{ reportType['1'] }}</el-radio>
-            <el-radio label="2" name="type">{{ reportType['2'] }}</el-radio>
-            <el-radio label="3" name="type">{{ reportType['3'] }}</el-radio>
-            <el-radio label="4" name="type">{{ reportType['4'] }}</el-radio>
-            <el-radio label="5" name="type">{{ reportType['5'] }}</el-radio>
+            <span v-for="(item,index) in reportType" :key="index">
+              <el-radio :label="item" name="type">{{item}}</el-radio>
+            </span>
           </el-radio-group>
         </el-form-item>
         <el-form-item label="摘要" prop="abstract">
@@ -75,14 +72,15 @@
 <script>
 import Http from '@/js/http.js'
 import Apis from '@/js/api.js'
-import ReportType from '@/constants/enum/report-type.js'
 import {notify} from '@/constants/index'
+import {getAllReportTypes} from '@/js/index'
+
 export default {
   name: 'ReportCreate',
   components: {},
   data () {
     return {
-      reportType: ReportType,
+      reportType: [],
       scope: 0,
       projectId: '',
       taskId: '',
@@ -131,6 +129,7 @@ export default {
       this.dependencyCode = this.$route.params.dependencyCode
       this.projectId = this.$route.params.projectId
       this.taskId = this.$route.params.taskId
+      this.setReportType()
     },
     submitForm (formName) {
       const newReport = {
@@ -222,6 +221,9 @@ export default {
         this.report.fileUrl = res.data
         console.log(res)
       })
+    },
+    setReportType () {
+      this.reportType = getAllReportTypes
     }
   }
 }

+ 1 - 4
src/components/report/ReportList.vue

@@ -12,7 +12,7 @@
     <el-table :showHeader="true" :data="reportList" style="width: 100%">
       <el-table-column prop="type" label="报告类型" title="报告类型">
         <template slot-scope="scope">
-          <span class="badge">{{serviceType[scope.row.type]}}</span>
+          <span class="badge">{{scope.row.type}}</span>
         </template>
       </el-table-column>
       <el-table-column prop="file" sortable label="报告文件">
@@ -33,8 +33,6 @@
 </template>
 <script>
 
-import ServiceType from '../../constants/enum/service-type'
-
 export default {
   name: 'report-list',
   props: {
@@ -45,7 +43,6 @@ export default {
   data () {
     return {
       editIndex: -1,
-      serviceType: ServiceType,
       reportList: this.reports,
       pid: this.projectId,
       tid: this.taskId,

+ 10 - 10
src/components/task/Task.vue

@@ -22,15 +22,11 @@
         </el-form-item>
         <el-form-item label="业务类型" prop="serviceType">
           <el-radio-group v-if="isModifyMode" v-model="task.serviceType">
-            <el-radio label="0" name="type">{{serviceType[0]}}</el-radio>
-            <el-radio label="1" name="type">{{serviceType[1]}}</el-radio>
-            <el-radio label="2" name="type">{{serviceType[2]}}</el-radio>
-            <el-radio label="3" name="type">{{serviceType[3]}}</el-radio>
-            <el-radio label="4" name="type">{{serviceType[4]}}</el-radio>
-            <el-radio label="5" name="type">{{serviceType[5]}}</el-radio>
-            <el-radio label="6" name="type">{{serviceType[6]}}</el-radio>
+            <span v-for="(item,index) in serviceType" :key="index">
+              <el-radio :label="item" name="type">{{item}}</el-radio>
+            </span>
           </el-radio-group>
-          <span class="badge" v-if="!isModifyMode">{{serviceType[task.serviceType]}}</span>
+          <span class="badge" v-if="!isModifyMode">{{task.serviceType}}</span>
         </el-form-item>
         <el-form-item label="任务可见性" prop="resource">
           <div v-if="!isModifyMode">
@@ -131,13 +127,14 @@
 <script>
 import Enum from '@/constants/enum/index'
 import ResourceType from '@/constants/enum/resource-type.js'
-import ServiceType from '@/constants/enum/service-type'
 import provincecity from '@/components/commons/ProvinceCity'
 import provinceCityJSON from '@/constants/provinceCity.json'
 import ReportList from '@/components/report/ReportList'
 import Http from '@/js/http.js'
 import Apis from '@/js/api.js'
 import {notify} from '@/constants/index'
+import {getAllAbilities} from '@/js/index'
+
 export default {
   name: 'Task',
   components: {
@@ -150,7 +147,7 @@ export default {
       institutionArray: Enum.institution,
       tabPosition: 'top',
       resourceType: ResourceType,
-      serviceType: ServiceType,
+      serviceType: [],
       taskId: '',
       projectId: '',
       task: {
@@ -425,6 +422,9 @@ export default {
         console.log(res.data)
       })
     },
+    setServiceType () {
+      this.serviceType = getAllAbilities()
+    }
   },
   // created () {
   //   this.loadData()

+ 10 - 9
src/components/task/TaskCreate.vue

@@ -17,13 +17,9 @@
         </el-form-item>
         <el-form-item label="业务类型" prop="type">
           <el-radio-group v-model="task.type">
-            <el-radio label="0" name="type">{{serviceType[0]}}</el-radio>
-            <el-radio label="1" name="type">{{serviceType[1]}}</el-radio>
-            <el-radio label="2" name="type">{{serviceType[2]}}</el-radio>
-            <el-radio label="3" name="type">{{serviceType[3]}}</el-radio>
-            <el-radio label="4" name="type">{{serviceType[4]}}</el-radio>
-            <el-radio label="5" name="type">{{serviceType[5]}}</el-radio>
-            <el-radio label="6" name="type">{{serviceType[6]}}</el-radio>
+            <span v-for="(item,index) in serviceType" :key="index">
+              <el-radio :label="item" name="type">{{item}}</el-radio>
+            </span>
           </el-radio-group>
         </el-form-item>
         <el-form-item label="任务可见性" prop="resource">
@@ -107,8 +103,9 @@ import provinceCityJSON from '@/constants/provinceCity.json'
 import Http from '@/js/http.js'
 import Apis from '@/js/api.js'
 import ResourceType from '@/constants/enum/resource-type.js'
-import ServiceType from '@/constants/enum/service-type'
 import {notify} from '@/constants/index'
+import {getAllAbilities} from '@/js/index'
+
 export default {
   name: 'Task',
   components: {
@@ -120,7 +117,7 @@ export default {
       institutionArray: Enum.institution,
       tabPosition: 'top',
       resourceType: ResourceType,
-      serviceType: ServiceType,
+      serviceType: [],
       task: {
         name: '',
         desc: '',
@@ -211,6 +208,7 @@ export default {
   methods: {
     init () {
       this.projectId = this.$route.params.projectId
+      this.setServiceType()
     },
     updateLocation (location) {
       var provinceName = ''
@@ -345,6 +343,9 @@ export default {
         console.log(res.data)
       })
     },
+    setServiceType () {
+      this.serviceType = getAllAbilities()
+    }
   }
 }
 </script>

+ 1 - 1
src/js/api.js

@@ -39,7 +39,7 @@ export default {
     END_PROJECT: '',
     AGENCY_AUTHENTICATION: '/api/user/{userId}/agency/',
     ADD_AGENCY: '/api/greenChannel/agency/',
-    GET_CURRENT_USER: '',
+    GET_CURRENT_USER: '/api/currUser',
     GET_USER_IDENTITY: '',
     GET_AUTH_URLS: '',
   },

+ 36 - 2
src/js/index.js

@@ -107,22 +107,56 @@ export const endTaskRequest = () => {
 }
 
 //区域管理员确认结束任务
+export const ensureEndTask = () => {
+
+}
 
 //创建项目报告
+export const createProjectReport = () => {
+
+}
 
 //创建任务报告
+export const createTaskReport = () => {
+
+}
 
 //修改项目报告
+export const updateProjectReport = () => {
+
+}
 
 //修改任务报告
+export const updateTaskReport = () => {
+
+}
 
 //查看报告
+export const getReport = () => {
+
+}
 
 //删除报告
+export const deleteReport = () => {
+
+}
 
 //获取所有测评能力
-export const getAllBilities = () => {
-  return Http.get(Apis.GENERAL.GET_ALL_ABILITIES)
+export const getAllAbilities = () => {
+  return ['接口测试', '安全漏洞扫描', '风险评估服务', '源代码安全审计服务', '功能测试服务', '性能测试', '功能和易用性测试']
+  //return Http.get(Apis.GENERAL.GET_ALL_ABILITIES)
+}
+
+//获取所有服务类型
+export const getAllServiceTypes = () => {
+  return ['接口测试', '安全漏洞扫描', '风险评估服务', '源代码安全审计服务', '功能测试服务', '性能测试', '功能和易用性测试']
+  //return Http.get(Apis.GENERAL.GET_ALL_ABILITIES)
+}
+
+//获取所有报告类型
+export const getAllReportTypes = () => {
+  return ['项目可行性报告', '项目测试方案', '项目测试报告', '项目缺陷报告', '项目用例报告', '其他']
+  //return Http.get(Apis.GENERAL.GET_ALL_ABILITIES)
 }
 
 //获取当前角色可访问的url

+ 12 - 13
src/router/index.js

@@ -15,7 +15,6 @@ import Report from '@/components/report/Report'
 import ReportCreate from '@/components/report/ReportCreate'
 import ProjectAdd from '@/components/cheat/ProjectAdd'
 import AgencyAdd from '@/components/cheat/AgencyAdd'
-import Authentication from '@/components/authen/Authentication'
 
 Vue.use(Router)
 
@@ -45,7 +44,7 @@ export default new Router({
       component: resolve => require(['@/components/Square.vue'], resolve),
       meta: {
         title: '',
-        requireAuth: true,
+        requireAuth: false,
       },
     },
     {
@@ -54,7 +53,7 @@ export default new Router({
       component: resolve => require(['@/components/Mine.vue'], resolve),
       meta: {
         title: '',
-        requireAuth: true,
+        requireAuth: false,
       },
     },
     {
@@ -63,7 +62,7 @@ export default new Router({
       component: resolve => require(['@/components/project/ProjectCreate.vue'], resolve),
       meta: {
         title: '',
-        requireAuth: true,
+        requireAuth: false,
       },
     },
     {
@@ -72,7 +71,7 @@ export default new Router({
       component: resolve => require(['@/components/project/Project.vue'], resolve),
       meta: {
         title: '',
-        requireAuth: true,
+        requireAuth: false,
       },
     },
     {
@@ -81,7 +80,7 @@ export default new Router({
       component: resolve => require(['@/components/task/TaskCreate.vue'], resolve),
       meta: {
         title: '',
-        requireAuth: true,
+        requireAuth: false,
       },
     },
     {
@@ -99,7 +98,7 @@ export default new Router({
       component: resolve => require(['@/components/project/AnalyseDemand.vue'], resolve),
       meta: {
         title: '',
-        requireAuth: true,
+        requireAuth: false,
       },
     },
     {
@@ -108,7 +107,7 @@ export default new Router({
       component: resolve => require(['@/components/report/ReportCreate.vue'], resolve),
       meta: {
         title: '',
-        requireAuth: true,
+        requireAuth: false,
       },
     },
     {
@@ -117,7 +116,7 @@ export default new Router({
       component: resolve => require(['@/components/report/Report.vue'], resolve),
       meta: {
         title: '',
-        requireAuth: true,
+        requireAuth: false,
       },
     },
     {
@@ -126,7 +125,7 @@ export default new Router({
       component: resolve => require(['@/components/cheat/ProjectAdd.vue'], resolve),
       meta: {
         title: '',
-        requireAuth: true,
+        requireAuth: false,
       },
     },
     {
@@ -135,16 +134,16 @@ export default new Router({
       component: resolve => require(['@/components/cheat/AgencyAdd.vue'], resolve),
       meta: {
         title: '',
-        requireAuth: true,
+        requireAuth: false,
       },
     },
     {
       path: '/authentication',
-      name: 'Authentication',
+      name: 'Authentications',
       component: resolve => require(['@/components/authen/Authentication.vue'], resolve),
       meta: {
         title: '',
-        requireAuth: true,
+        requireAuth: false,
       },
     },
   ]