Bladeren bron

测试计划

qinzhipeng_v 5 jaren geleden
bovenliggende
commit
18195e84f8
2 gewijzigde bestanden met toevoegingen van 196 en 165 verwijderingen
  1. 1 1
      src/router/index.js
  2. 195 164
      src/views/Platform/presentation/testPage.vue

+ 1 - 1
src/router/index.js

@@ -180,7 +180,7 @@ export const constantRoutes = [
           {
             path: 'testPageData',
             name: '测试计划管理',
-            hidden: true,
+            // hidden: true,
             component: () => import('@/views/Platform/presentation/testPage.vue'),
             meta: { title: '测试计划管理' }
           },

+ 195 - 164
src/views/Platform/presentation/testPage.vue

@@ -1,172 +1,177 @@
 <template>
-  <div>
-    <el-container>
-      <el-aside width="150pt">
-        <el-tree
-          v-show="dataShow"
-          style="background: #E9EEF3; height:auto; padding:15%;"
-          :data="data1"
-          node-key="id"
-          @node-contextmenu="createUpdate"
-          @node-click="clickFun"
-        />
-      </el-aside>
-      <el-container>
-        <el-header style="height: auto; width:100%;">
-          <el-row>
-            <el-col :span="23" style="white-space:nowrap;margin:2% 0;">
-              <el-date-picker v-model="createParticipation.createTime" style="width:19%;margin-right:0px;" type="datetime" placeholder="开始日期" /> -
-              <el-date-picker v-model="createParticipation.modifyTime" style="width:19%;margin-right:5px;" type="datetime" placeholder="结束日期" />
-              <el-input v-model="createParticipation.folderName" placeholder="用例名" clearable style="width: 20%;margin-right:5px;" class="filter-item" />
-              <el-select v-model="createParticipation.casePriority" style="width: 8%;margin-right:5px;" clearable placeholder="优先级">
-                <el-option v-for="item in priorityStrings" :key="item.value" :label="item.name" :value="item.value" />
-              </el-select>
-              <el-input v-model="createParticipation.api" placeholder="api接口" clearable style="width: 16%;margin-right:5px;" class="filter-item" />
-              <el-input v-model="createParticipation.creator" placeholder="创建人" clearable style="width: 14%;" class="filter-item" />
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="23" style="white-space:nowrap;text-align:center;">
-              <el-button class="headerStyle" type="primary" icon="el-icon-search" @click="queryCaseData(createParticipation)">查询</el-button>
-              <el-button type="primary" icon="el-icon-circle-plus-outline" @click="createGetShow">新增</el-button>
-            </el-col>
-          </el-row>
-        </el-header>
-        <el-main>
-          <!-- 主页table -->
-          <el-table :data="gridData" fit height="570vh" tooltip-effect="dark" style="width: 100%" @select-all="clickAllData" @selection-change="handleSelectionChange">
-            <el-table-column type="selection" width="55" align="center" @change="clickAllData(gridData)" />
-            <el-table-column prop="id" label="ID" width="60px" align="center">
-              <template slot-scope="scope">
-                {{ scope.row.id }}
-              </template>
-            </el-table-column>
-            <el-table-column prop="caseName" label="用例名" width="150" align="center">
-              <template slot-scope="scope">
-                {{ scope.row.caseName }}
-              </template>
-            </el-table-column>
-            <el-table-column prop="expectedResult" label="期望结果" width="150" align="center">
-              <template slot-scope="scope">
-                {{ scope.row.expectedResult }}
-              </template>
-            </el-table-column>
-            <el-table-column prop="casePriorityName" label="优先级" width="80" align="center">
-              <template slot-scope="scope">
-                {{ scope.row.casePriorityName }}
-              </template>
-            </el-table-column>
-            <el-table-column prop="creatorName" label="创建人" width="100" align="center">
-              <template slot-scope="scope">
-                <el-tag type="success">{{ scope.row.creatorName }}</el-tag>
-              </template>
-            </el-table-column>
-            <el-table-column prop="modifierName" label="修改人" width="100" align="center">
-              <template slot-scope="scope">
-                {{ scope.row.modifierName }}
-              </template>
-            </el-table-column>
-            <el-table-column prop="createTime" label="创建时间" width="200" align="center">
-              <template slot-scope="scope">
-                {{ scope.row.createTime }}
-              </template>
-            </el-table-column>
-            <el-table-column label="操作" min-width="220px" align="center" fixed="right">
-              <template slot-scope="scope">
-                <el-button size="mini" type="primary" @click="queryGetShow(gridData)">查看</el-button>
-                <el-button size="mini" type="primary" @click="updateGetShow(scope.row)">编辑</el-button>
-                <el-button size="mini" type="primary" @click="deleteCaseData(scope.row.id)">删除</el-button>
-              </template>
-            </el-table-column>
-          </el-table>
-          <!-- 导出文件内容 -->
-          <el-table v-show="false" id="out-table" :data="tableData" fit height="570vh" tooltip-effect="dark" style="width: 100%">
-            <el-table-column type="index" prop="ids" label="序号" width="50" />
-            <!-- <el-table-column prop="ids" label="序号" /> -->
-            <el-table-column prop="caseName" label="用例名" />
-            <el-table-column prop="description" label="用例描述" />
-            <el-table-column prop="expectedResult" label="期望结果" />
-            <el-table-column prop="api" label="对应api" />
-            <el-table-column prop="projectTypeName" label="项目类型" />
-            <el-table-column prop="taskTypeName" label="平台类型" />
-            <el-table-column prop="casePriorityName" label="用例优先级" />
-            <el-table-column prop="moduleTypeName" label="模块名" />
-            <el-table-column prop="creatorName" label="创建人" />
-            <el-table-column prop="modifierName" label="修改人" />
-            <el-table-column prop="remark" label="备注" />
-            <el-table-column prop="createTime" label="创建时间" />
-          </el-table>
-          <el-pagination :current-page="curIndex" :page-sizes="[5, 10, 20]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="100" @size-change="handleSizeChange" @current-change="handleCurrentChange" />
-        </el-main>
-      </el-container>
-    </el-container>
-    <!-- 新增-编辑 -->
-    <el-dialog :title="titleName" :visible.sync="dialogFormVisibleUpdate" width="80%">
-      <el-form ref="caseData" :model="caseData" label-width="90pt" :rules="createFormData">
-        <div style="display:flex;">
-          <div style="flex:1;">
-            <el-form-item label="用例名" prop="caseName"><el-input v-model="caseData.caseName" clearable autocomplete="off" style="width: 200px" /></el-form-item>
-            <el-form-item label="期望结果" prop="expectedResult"><el-input v-model="caseData.expectedResult" clearable autocomplete="off" style="width: 200px" /></el-form-item>
-            <el-form-item label="对应api" prop="api"><el-input v-model="caseData.api" clearable autocomplete="off" style="width: 200px" /></el-form-item>
+  <!-- 测试计划管理 -->
+  <div id="init-window" style="position:relative; min-height:95vh; background:#F2F3F6;">
+    <router-view />
+    <div style="position: absolute;width: 100%;">
+      <div style="background:#F2F3F6;">
+        <el-container>
+          <el-aside width="15%" style=" background: #FFF;margin: 1% 0 1% 1%; border-radius:8px;">
+            <el-tree
+              v-show="dataShow"
+              :data="data1"
+              node-key="id"
+              @node-contextmenu="createUpdate"
+              @node-click="clickFun"
+            />
+          </el-aside>
+          <el-container>
+            <el-header style="background:#ffffff;height:auto; width:98%;margin: 1%; font-size:13px; border-radius:8px;">
+              <el-row>
+                <el-col :span="23" style="white-space:nowrap;margin:2% 0;">
+                  <el-date-picker v-model="createParticipation.createTime" style="width:19%;margin-right:0px;" type="datetime" placeholder="开始日期" /> -
+                  <el-date-picker v-model="createParticipation.modifyTime" style="width:19%;margin-right:5px;" type="datetime" placeholder="结束日期" />
+                  <el-input v-model="createParticipation.folderName" placeholder="用例名" clearable style="width: 20%;margin-right:5px;" class="filter-item" />
+                  <el-select v-model="createParticipation.casePriority" style="width: 8%;margin-right:5px;" clearable placeholder="优先级">
+                    <el-option v-for="item in priorityStrings" :key="item.value" :label="item.name" :value="item.value" />
+                  </el-select>
+                  <el-input v-model="createParticipation.api" placeholder="api接口" clearable style="width: 16%;margin-right:5px;" class="filter-item" />
+                  <el-input v-model="createParticipation.creator" placeholder="创建人" clearable style="width: 14%;" class="filter-item" />
+                </el-col>
+              </el-row>
+              <el-row>
+                <el-col :span="23" style="white-space:nowrap;text-align:center;">
+                  <el-button class="headerStyle" type="primary" icon="el-icon-search" @click="queryCaseData(createParticipation)">查询</el-button>
+                  <el-button type="primary" icon="el-icon-circle-plus-outline" @click="createGetShow">新增</el-button>
+                </el-col>
+              </el-row>
+            </el-header>
+            <el-main style="background:#ffffff; width:98%;margin:0% 1% 1% 1%; font-size:14px;border-radius:8px;">
+              <!-- 主页table -->
+              <el-table :data="gridData" fit height="570vh" tooltip-effect="dark" style="width: 100%" @select-all="clickAllData" @selection-change="handleSelectionChange">
+                <el-table-column type="selection" width="55" align="center" @change="clickAllData(gridData)" />
+                <el-table-column prop="id" label="ID" width="60px" align="center">
+                  <template slot-scope="scope">
+                    {{ scope.row.id }}
+                  </template>
+                </el-table-column>
+                <el-table-column prop="caseName" label="用例名" width="150" align="center">
+                  <template slot-scope="scope">
+                    {{ scope.row.caseName }}
+                  </template>
+                </el-table-column>
+                <el-table-column prop="expectedResult" label="期望结果" width="150" align="center">
+                  <template slot-scope="scope">
+                    {{ scope.row.expectedResult }}
+                  </template>
+                </el-table-column>
+                <el-table-column prop="casePriorityName" label="优先级" width="80" align="center">
+                  <template slot-scope="scope">
+                    {{ scope.row.casePriorityName }}
+                  </template>
+                </el-table-column>
+                <el-table-column prop="creatorName" label="创建人" width="100" align="center">
+                  <template slot-scope="scope">
+                    <el-tag type="success">{{ scope.row.creatorName }}</el-tag>
+                  </template>
+                </el-table-column>
+                <el-table-column prop="modifierName" label="修改人" width="100" align="center">
+                  <template slot-scope="scope">
+                    {{ scope.row.modifierName }}
+                  </template>
+                </el-table-column>
+                <el-table-column prop="createTime" label="创建时间" width="200" align="center">
+                  <template slot-scope="scope">
+                    {{ scope.row.createTime }}
+                  </template>
+                </el-table-column>
+                <el-table-column label="操作" min-width="220px" align="center" fixed="right">
+                  <template slot-scope="scope">
+                    <el-button size="mini" type="primary" @click="queryGetShow(gridData)">查看</el-button>
+                    <el-button size="mini" type="primary" @click="updateGetShow(scope.row)">编辑</el-button>
+                    <el-button size="mini" type="primary" @click="deleteCaseData(scope.row.id)">删除</el-button>
+                  </template>
+                </el-table-column>
+              </el-table>
+              <!-- 导出文件内容 -->
+              <el-table v-show="false" id="out-table" :data="tableData" fit height="570vh" tooltip-effect="dark" style="width: 100%">
+                <el-table-column type="index" prop="ids" label="序号" width="50" />
+                <!-- <el-table-column prop="ids" label="序号" /> -->
+                <el-table-column prop="caseName" label="用例名" />
+                <el-table-column prop="description" label="用例描述" />
+                <el-table-column prop="expectedResult" label="期望结果" />
+                <el-table-column prop="api" label="对应api" />
+                <el-table-column prop="projectTypeName" label="项目类型" />
+                <el-table-column prop="taskTypeName" label="平台类型" />
+                <el-table-column prop="casePriorityName" label="用例优先级" />
+                <el-table-column prop="moduleTypeName" label="模块名" />
+                <el-table-column prop="creatorName" label="创建人" />
+                <el-table-column prop="modifierName" label="修改人" />
+                <el-table-column prop="remark" label="备注" />
+                <el-table-column prop="createTime" label="创建时间" />
+              </el-table>
+              <el-pagination :current-page="curIndex" :page-sizes="[5, 10, 20]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="100" @size-change="handleSizeChange" @current-change="handleCurrentChange" />
+            </el-main>
+          </el-container>
+        </el-container>
+        <!-- 新增-编辑 -->
+        <el-dialog :title="titleName" :visible.sync="dialogFormVisibleUpdate" width="80%">
+          <el-form ref="caseData" :model="caseData" label-width="90pt" :rules="createFormData">
+            <div style="display:flex;">
+              <div style="flex:1;">
+                <el-form-item label="用例名" prop="caseName"><el-input v-model="caseData.caseName" clearable autocomplete="off" style="width: 200px" /></el-form-item>
+                <el-form-item label="期望结果" prop="expectedResult"><el-input v-model="caseData.expectedResult" clearable autocomplete="off" style="width: 200px" /></el-form-item>
+                <el-form-item label="对应api" prop="api"><el-input v-model="caseData.api" clearable autocomplete="off" style="width: 200px" /></el-form-item>
+              </div>
+              <div style="flex:1;">
+                <el-form-item label="项目类型" prop="projectType">
+                  <el-select v-model="caseData.projectType" clearable placeholder="项目类型" style="width: 200px">
+                    <el-option v-for="item in projectTypeStrings" :key="item.value" :label="item.name" :value="item.value" />
+                  </el-select>
+                </el-form-item>
+                <el-form-item label="平台类型" prop="taskType">
+                  <el-select v-model="caseData.taskType" clearable placeholder="任务类型" style="width: 200px" @change="taskTypeChange(caseData.taskType)">
+                    <el-option v-for="item in taskTypeStrings" :key="item.value" :label="item.name" :value="item.value" />
+                  </el-select>
+                </el-form-item>
+                <el-form-item label="用例优先级" prop="casePriority">
+                  <el-select v-model="caseData.casePriority" clearable placeholder="用例优先级" style="width: 200px">
+                    <el-option v-for="item in priorityStrings" :key="item.value" :label="item.name" :value="item.value" />
+                  </el-select>
+                </el-form-item>
+              </div>
+              <div style="flex:1;">
+                <el-form-item v-show="moduleTypeShow" label="模块名" prop="casePriority">
+                  <el-select v-model="caseData.moduleType" clearable placeholder="模块类型" style="width: 200px">
+                    <el-option v-for="item in moduleTypeStr" :key="item.id" :label="item.moduleName" :value="item.id" />
+                  </el-select>
+                </el-form-item>
+              </div>
+            </div>
+            <el-form-item label="用例描述" prop="description"><el-input v-model="caseData.description" clearable type="textarea" style="width: 95%" :rows="5" placeholder="请输入内容" /></el-form-item>
+            <el-form-item label="备注"><el-input v-model="caseData.remark" clearable type="textarea" style="width: 95%" :rows="5" placeholder="请输入内容" /></el-form-item>
+          </el-form>
+          <div slot="footer" class="dialog-footer">
+            <el-button type="primary" @click="dialogFormVisibleUpdate = false">关 闭</el-button>
+            <el-button type="primary" @click="caseCreateCase(caseData, titleName)">确 定</el-button>
           </div>
-          <div style="flex:1;">
-            <el-form-item label="项目类型" prop="projectType">
-              <el-select v-model="caseData.projectType" clearable placeholder="项目类型" style="width: 200px">
-                <el-option v-for="item in projectTypeStrings" :key="item.value" :label="item.name" :value="item.value" />
-              </el-select>
-            </el-form-item>
-            <el-form-item label="平台类型" prop="taskType">
-              <el-select v-model="caseData.taskType" clearable placeholder="任务类型" style="width: 200px" @change="taskTypeChange(caseData.taskType)">
-                <el-option v-for="item in taskTypeStrings" :key="item.value" :label="item.name" :value="item.value" />
-              </el-select>
-            </el-form-item>
-            <el-form-item label="用例优先级" prop="casePriority">
-              <el-select v-model="caseData.casePriority" clearable placeholder="用例优先级" style="width: 200px">
-                <el-option v-for="item in priorityStrings" :key="item.value" :label="item.name" :value="item.value" />
-              </el-select>
-            </el-form-item>
-          </div>
-          <div style="flex:1;">
-            <el-form-item v-show="moduleTypeShow" label="模块名" prop="casePriority">
-              <el-select v-model="caseData.moduleType" clearable placeholder="模块类型" style="width: 200px">
-                <el-option v-for="item in moduleTypeStr" :key="item.id" :label="item.moduleName" :value="item.id" />
-              </el-select>
-            </el-form-item>
-          </div>
-        </div>
-        <el-form-item label="用例描述" prop="description"><el-input v-model="caseData.description" clearable type="textarea" style="width: 95%" :rows="5" placeholder="请输入内容" /></el-form-item>
-        <el-form-item label="备注"><el-input v-model="caseData.remark" clearable type="textarea" style="width: 95%" :rows="5" placeholder="请输入内容" /></el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="dialogFormVisibleUpdate = false">关 闭</el-button>
-        <el-button type="primary" @click="caseCreateCase(caseData, titleName)">确 定</el-button>
-      </div>
-    </el-dialog>
+        </el-dialog>
 
-    <el-dialog title="查看" :visible.sync="dialogFormVisibleQuery" width="80%">
-      <el-form ref="caseData" :model="caseData" label-width="90pt">
-        <div style="display:flex;">
-          <div style="flex:1;">
-            <el-form-item label="用例名 :">{{ caseData.caseName }}</el-form-item>
-            <el-form-item label="期望结果 :">{{ caseData.expectedResult }}</el-form-item>
-            <el-form-item label="对应接口 :">{{ caseData.api }}</el-form-item>
-          </div>
-          <div style="flex:1;">
-            <el-form-item label="项目类型 :">{{ caseData.projectTypeName }}</el-form-item>
-            <el-form-item label="任务类型 :">{{ caseData.taskTypeName }}</el-form-item>
-            <el-form-item label="用例优先级 :">{{ caseData.casePriorityName }}</el-form-item>
-          </div>
-          <div style="flex:1;">
-            <el-form-item v-show="moduleTypeShow" label="模块类型 :">{{ caseData.moduleTypeName }}</el-form-item>
+        <el-dialog title="查看" :visible.sync="dialogFormVisibleQuery" width="80%">
+          <el-form ref="caseData" :model="caseData" label-width="90pt">
+            <div style="display:flex;">
+              <div style="flex:1;">
+                <el-form-item label="用例名 :">{{ caseData.caseName }}</el-form-item>
+                <el-form-item label="期望结果 :">{{ caseData.expectedResult }}</el-form-item>
+                <el-form-item label="对应接口 :">{{ caseData.api }}</el-form-item>
+              </div>
+              <div style="flex:1;">
+                <el-form-item label="项目类型 :">{{ caseData.projectTypeName }}</el-form-item>
+                <el-form-item label="任务类型 :">{{ caseData.taskTypeName }}</el-form-item>
+                <el-form-item label="用例优先级 :">{{ caseData.casePriorityName }}</el-form-item>
+              </div>
+              <div style="flex:1;">
+                <el-form-item v-show="moduleTypeShow" label="模块类型 :">{{ caseData.moduleTypeName }}</el-form-item>
+              </div>
+            </div>
+            <el-form-item label="用例描述 :">{{ caseData.description }}</el-form-item>
+            <el-form-item label="备注 :">{{ caseData.remark }}</el-form-item>
+          </el-form>
+          <div slot="footer" class="dialog-footer">
+            <el-button type="primary" @click="dialogFormVisibleQuery = false">关 闭</el-button>
           </div>
-        </div>
-        <el-form-item label="用例描述 :">{{ caseData.description }}</el-form-item>
-        <el-form-item label="备注 :">{{ caseData.remark }}</el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="dialogFormVisibleQuery = false">关 闭</el-button>
+        </el-dialog>
       </div>
-    </el-dialog>
+    </div>
   </div>
 </template>
 
@@ -455,4 +460,30 @@ export default {
 .headerStyle {
   margin:5px 0;
   }
+  .custom-tree-node {
+    flex: 1;
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    font-size: 14px;
+    padding-right: 8px;
+  }
+  .nav_Input .el-input--mini .el-input__inner {
+   height: 23px !important;
+  }
+  .span_el {
+    display: block;
+    overflow: hidden;
+    /* white-space: nowrap; */
+    text-overflow: ellipsis;
+  }
+  .btn_query .el-button--primary.is-plain {
+    color: #000000 !important;
+    background: #F9F9FA !important;
+    border-color: #F9F9FA !important;
+  }
+  .button_query :hover{
+    background: #409EFF;
+    color: #FFFFFF;
+  }
 </style>