|
@@ -1,183 +1,185 @@
|
|
<template>
|
|
<template>
|
|
- <el-container class="bgColor" @click.native="listenClick()">
|
|
|
|
- <el-header style="height: auto; margin-top: 1%; padding: 0 1%;">
|
|
|
|
- <el-row class="headerBg" style="padding-bottom: 0;">
|
|
|
|
- <el-col :span="24" class="Layout">
|
|
|
|
- <div class="titFont Layout">
|
|
|
|
- <span style="margin-left: 20%; width: 100px; font-size: 22px; font-family:PingFangSC-Medium,PingFang SC;">缺陷</span>
|
|
|
|
- </div>
|
|
|
|
- <el-button type="primary" size="mini" style="font-size: 14px;padding: 7px 10px;font-weight: normal" @click="createdDefect">新建缺陷</el-button>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="24">
|
|
|
|
- <el-divider style="color: #EEF0F5;" />
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="24" class="Layout" style="margin-left: 1.5%;">
|
|
|
|
- <el-form :inline="true" label-position="left" :model="formInline" label-width="80px" class="flex_start" style="width: 80%">
|
|
|
|
- <el-form-item label=" 业务线">
|
|
|
|
- <el-select v-model="formInline.bizId" size="small" clearable filterable placeholder="请选择" @change="getBugList()">
|
|
|
|
- <el-option v-for="item in bizIdEnumList" :key="item.id" :label="item.bizName" :value="item.id" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label=" 状态" style="margin-left: 3.8%;">
|
|
|
|
- <el-select v-model="formInline.status" size="small" clearable filterable placeholder="请选择" @change="getBugList()">
|
|
|
|
- <el-option v-for="item in bugEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label=" 优先级" style="margin-left: 3.5%;">
|
|
|
|
- <el-select v-model="formInline.priorityLevel" size="small" clearable filterable placeholder="请选择" @change="getBugList()">
|
|
|
|
- <el-option v-for="item in priorityLevelEnumList" :key="item.code" :label="item.name" :value="item.name" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
|
|
+ <div>
|
|
|
|
+ <el-container class="bgColor" @click.native="listenClick()">
|
|
|
|
+ <el-header style="height: auto; margin-top: 1%; padding: 0 1%;">
|
|
|
|
+ <el-row class="headerBg" style="padding-bottom: 0;">
|
|
|
|
+ <el-col :span="24" class="Layout">
|
|
|
|
+ <div class="titFont Layout">
|
|
|
|
+ <span style="margin-left: 20%; width: 100px; font-size: 22px; font-family:PingFangSC-Medium,PingFang SC;">缺陷</span>
|
|
|
|
+ </div>
|
|
|
|
+ <el-button type="primary" size="mini" style="font-size: 14px;padding: 7px 10px;font-weight: normal" @click="createdDefect">新建缺陷</el-button>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="24">
|
|
|
|
+ <el-divider style="color: #EEF0F5;" />
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="24" class="Layout" style="margin-left: 1.5%;">
|
|
|
|
+ <el-form :inline="true" label-position="left" :model="formInline" label-width="80px" class="flex_start" style="width: 80%">
|
|
|
|
+ <el-form-item label=" 业务线">
|
|
|
|
+ <el-select v-model="formInline.bizId" size="small" clearable filterable placeholder="请选择" @change="getBugList()">
|
|
|
|
+ <el-option v-for="item in bizIdEnumList" :key="item.id" :label="item.bizName" :value="item.id" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label=" 状态" style="margin-left: 3.8%;">
|
|
|
|
+ <el-select v-model="formInline.status" size="small" clearable filterable placeholder="请选择" @change="getBugList()">
|
|
|
|
+ <el-option v-for="item in bugEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label=" 优先级" style="margin-left: 3.5%;">
|
|
|
|
+ <el-select v-model="formInline.priorityLevel" size="small" clearable filterable placeholder="请选择" @change="getBugList()">
|
|
|
|
+ <el-option v-for="item in priorityLevelEnumList" :key="item.code" :label="item.name" :value="item.name" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-form>
|
|
|
|
+ <div class="screen" @click="showSelect">{{ goodName }}</div>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ <div v-if="DetailedScreening">
|
|
|
|
+ <el-form :inline="true" label-position="left" :model="formInline" label-width="80px">
|
|
|
|
+ <el-row class="headerBg" style="padding-top: 0;">
|
|
|
|
+ <el-col :span="24" class="DetailedScreening">
|
|
|
|
+ <div style="margin: 1.5% 0 0 1.5%;" class="flex_start">
|
|
|
|
+ <el-form-item label="缺陷等级">
|
|
|
|
+ <el-select v-model="formInline.priority" size="small" clearable filterable placeholder="请选择">
|
|
|
|
+ <el-option v-for="item in priorityEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="缺陷ID" class="marginLeft">
|
|
|
|
+ <el-input v-model="formInline.bugId" size="small" clearable filterable placeholder="请输入" />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="所属任务" class="marginLeft">
|
|
|
|
+ <el-select v-model="formInline.taskId" size="small" clearable filterable placeholder="请选择">
|
|
|
|
+ <el-option v-for="item in taskEnumList" :key="item.id" :label="item.name" :value="item.id" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </div>
|
|
|
|
+ <div style="margin-left: 1.5%;" class="flex_start">
|
|
|
|
+ <el-form-item label="提报人">
|
|
|
|
+ <el-select v-model="formInline.creator" filterable clearable remote reserve-keyword :remote-method="remoteMethod" :loading="loading" size="small" placeholder="请输入姓名或邮箱前缀">
|
|
|
|
+ <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
|
|
|
|
+ <div style="display: flex;justify-content: start;">
|
|
|
|
+ <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
|
|
|
|
+ <div style="min-width:80px">{{ item.name }}</div>
|
|
|
|
+ <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="责任人" class="marginLeft">
|
|
|
|
+ <el-select v-model="formInline.assigner" filterable clearable remote reserve-keyword :remote-method="remoteMethod" :loading="loading" size="small" placeholder="请输入姓名或邮箱前缀">
|
|
|
|
+ <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
|
|
|
|
+ <div style="display: flex;justify-content: start;">
|
|
|
|
+ <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
|
|
|
|
+ <div style="min-width:80px">{{ item.name }}</div>
|
|
|
|
+ <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="修复人" class="marginLeft">
|
|
|
|
+ <el-select v-model="formInline.currentHandler" filterable clearable remote reserve-keyword :remote-method="remoteMethod" :loading="loading" size="small" placeholder="请输入姓名或邮箱前缀">
|
|
|
|
+ <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
|
|
|
|
+ <div style="display: flex;justify-content: start;">
|
|
|
|
+ <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
|
|
|
|
+ <div style="min-width:80px">{{ item.name }}</div>
|
|
|
|
+ <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </div>
|
|
|
|
+ <div style="margin-left: 1.5%;" class="flex_start">
|
|
|
|
+ <el-form-item label="发现方式">
|
|
|
|
+ <el-select v-model="formInline.discoveryMeth" size="small" clearable filterable placeholder="请选择">
|
|
|
|
+ <el-option v-for="item in discoveryMethEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="发现阶段" class="marginLeft">
|
|
|
|
+ <el-select v-model="formInline.discoveryStage" size="small" clearable filterable placeholder="请选择">
|
|
|
|
+ <el-option v-for="item in bugStageEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="修复结果" class="marginLeft">
|
|
|
|
+ <el-select v-model="formInline.name" size="small" clearable filterable placeholder="请选择">
|
|
|
|
+ <el-option v-for="item in repairResultEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </div>
|
|
|
|
+ <div style="margin-left: 1.5%;" class="flex_start">
|
|
|
|
+ <el-form-item label="端类型">
|
|
|
|
+ <el-select v-model="formInline.sysType" size="small" clearable filterable placeholder="请选择">
|
|
|
|
+ <el-option v-for="item in sysTypeEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="客户端" class="marginLeft">
|
|
|
|
+ <el-select v-model="formInline.appId" size="small" clearable filterable placeholder="请选择" @change="getClient(formInline.appId)">
|
|
|
|
+ <el-option v-for="item in appClient" :key="item.code" :label="item.msg" :value="item.code" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="版本" class="marginLeft">
|
|
|
|
+ <el-select v-model="formInline.appVersion" size="small" clearable filterable placeholder="请选择">
|
|
|
|
+ <el-option v-for="item in Editionlist" :key="item.code" :label="item.msg" :value="item.code" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </div>
|
|
|
|
+ <div align="right">
|
|
|
|
+ <el-form-item>
|
|
|
|
+ <el-button type="primary" size="mini" @click="getBugList()">筛 选</el-button>
|
|
|
|
+ <el-button size="mini" @click="resetQuery()">重 置</el-button>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
</el-form>
|
|
</el-form>
|
|
- <div class="screen" @click="showSelect">{{ goodName }}</div>
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
- <div v-if="DetailedScreening">
|
|
|
|
- <el-form :inline="true" label-position="left" :model="formInline" label-width="80px">
|
|
|
|
- <el-row class="headerBg" style="padding-top: 0;">
|
|
|
|
- <el-col :span="24" class="DetailedScreening">
|
|
|
|
- <div style="margin: 1.5% 0 0 1.5%;" class="flex_start">
|
|
|
|
- <el-form-item label="缺陷等级">
|
|
|
|
- <el-select v-model="formInline.priority" size="small" clearable filterable placeholder="请选择">
|
|
|
|
- <el-option v-for="item in priorityEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="缺陷ID" class="marginLeft">
|
|
|
|
- <el-input v-model="formInline.bugId" size="small" clearable filterable placeholder="请输入" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="所属任务" class="marginLeft">
|
|
|
|
- <el-select v-model="formInline.taskId" size="small" clearable filterable placeholder="请选择">
|
|
|
|
- <el-option v-for="item in taskEnumList" :key="item.id" :label="item.name" :value="item.id" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- </div>
|
|
|
|
- <div style="margin-left: 1.5%;" class="flex_start">
|
|
|
|
- <el-form-item label="提报人">
|
|
|
|
- <el-select v-model="formInline.creator" filterable clearable remote reserve-keyword :remote-method="remoteMethod" :loading="loading" size="small" placeholder="请输入姓名或邮箱前缀">
|
|
|
|
- <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
|
|
|
|
- <div style="display: flex;justify-content: start;">
|
|
|
|
- <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
|
|
|
|
- <div style="min-width:80px">{{ item.name }}</div>
|
|
|
|
- <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
|
|
|
|
- </div>
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="责任人" class="marginLeft">
|
|
|
|
- <el-select v-model="formInline.assigner" filterable clearable remote reserve-keyword :remote-method="remoteMethod" :loading="loading" size="small" placeholder="请输入姓名或邮箱前缀">
|
|
|
|
- <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
|
|
|
|
- <div style="display: flex;justify-content: start;">
|
|
|
|
- <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
|
|
|
|
- <div style="min-width:80px">{{ item.name }}</div>
|
|
|
|
- <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
|
|
|
|
- </div>
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="修复人" class="marginLeft">
|
|
|
|
- <el-select v-model="formInline.currentHandler" filterable clearable remote reserve-keyword :remote-method="remoteMethod" :loading="loading" size="small" placeholder="请输入姓名或邮箱前缀">
|
|
|
|
- <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
|
|
|
|
- <div style="display: flex;justify-content: start;">
|
|
|
|
- <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
|
|
|
|
- <div style="min-width:80px">{{ item.name }}</div>
|
|
|
|
- <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
|
|
|
|
- </div>
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- </div>
|
|
|
|
- <div style="margin-left: 1.5%;" class="flex_start">
|
|
|
|
- <el-form-item label="发现方式">
|
|
|
|
- <el-select v-model="formInline.discoveryMeth" size="small" clearable filterable placeholder="请选择">
|
|
|
|
- <el-option v-for="item in discoveryMethEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="发现阶段" class="marginLeft">
|
|
|
|
- <el-select v-model="formInline.discoveryStage" size="small" clearable filterable placeholder="请选择">
|
|
|
|
- <el-option v-for="item in bugStageEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="修复结果" class="marginLeft">
|
|
|
|
- <el-select v-model="formInline.name" size="small" clearable filterable placeholder="请选择">
|
|
|
|
- <el-option v-for="item in repairResultEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- </div>
|
|
|
|
- <div style="margin-left: 1.5%;" class="flex_start">
|
|
|
|
- <el-form-item label="端类型">
|
|
|
|
- <el-select v-model="formInline.sysType" size="small" clearable filterable placeholder="请选择">
|
|
|
|
- <el-option v-for="item in sysTypeEnumList" :key="item.code" :label="item.name" :value="item.code" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="客户端" class="marginLeft">
|
|
|
|
- <el-select v-model="formInline.appId" size="small" clearable filterable placeholder="请选择" @change="getClient(formInline.appId)">
|
|
|
|
- <el-option v-for="item in appClient" :key="item.code" :label="item.msg" :value="item.code" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="版本" class="marginLeft">
|
|
|
|
- <el-select v-model="formInline.appVersion" size="small" clearable filterable placeholder="请选择">
|
|
|
|
- <el-option v-for="item in Editionlist" :key="item.code" :label="item.msg" :value="item.code" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- </div>
|
|
|
|
- <div align="right">
|
|
|
|
- <el-form-item>
|
|
|
|
- <el-button type="primary" size="mini" @click="getBugList()">筛 选</el-button>
|
|
|
|
- <el-button size="mini" @click="resetQuery()">重 置</el-button>
|
|
|
|
- </el-form-item>
|
|
|
|
- </div>
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
- </el-form>
|
|
|
|
- </div>
|
|
|
|
- </el-header>
|
|
|
|
- <el-main style="padding: 1%">
|
|
|
|
- <el-row class="headerBg table_v" style=" padding-top: 0px;">
|
|
|
|
- <el-col :span="24" style="min-height: 47vh;">
|
|
|
|
- <el-table size="small" :data="tableData" style="width: 100%; font-size: 14px; color:rgba(102,102,102,1);" :default-sort="{prop: 'priorityCode'}" show-overflow-tooltip="true" :header-cell-style="{ color: '#4A4A4A', fontSize: '14px', fontWeight: '500' }">
|
|
|
|
- <el-table-column label="优先级" prop="priorityCode" sortable align="center">
|
|
|
|
- <template slot-scope="scope">
|
|
|
|
- <div class="div_priority" :style="{background: priorityColors[scope.row.priorityCode]}">{{ scope.row.priorityLevel | oneA }}</div>
|
|
|
|
- </template>
|
|
|
|
- </el-table-column>
|
|
|
|
- <el-table-column prop="bugName" label="缺陷标题" min-width="180" align="left" show-overflow-tooltip>
|
|
|
|
- <template slot-scope="scope">
|
|
|
|
- <span style=" color: #A7AEBC; font-size: 10px;">{{ 'BUG-' + scope.row.id }}</span><br>
|
|
|
|
- <span class="bugNameSty" @click="click_bugName(scope.row.id)">{{ scope.row.bugName }}</span>
|
|
|
|
- </template>
|
|
|
|
- </el-table-column>
|
|
|
|
- <el-table-column prop="bizName" label="业务线" align="center" />
|
|
|
|
- <el-table-column prop="priorityName" label="缺陷等级" align="center" />
|
|
|
|
- <el-table-column prop="bugStatusName" label="状态" align="center">
|
|
|
|
- <template slot-scope="scope">
|
|
|
|
- <div :style="{color: statusColors[scope.row.status % statusColors.length]}">{{ scope.row.bugStatusName }}</div>
|
|
|
|
- </template>
|
|
|
|
- </el-table-column>
|
|
|
|
- <el-table-column prop="creatorList" label="提报人" align="center" />
|
|
|
|
- <el-table-column prop="assignerList" label="责任人" align="center" />
|
|
|
|
- <el-table-column prop="currentHandlerList" label="修复人" align="center" />
|
|
|
|
- <el-table-column prop="gmtCreate" label="创建日期" min-width="120" align="center">
|
|
|
|
- <template slot-scope="scope">
|
|
|
|
- {{ scope.row.gmtCreate | naspOut }}
|
|
|
|
- </template>
|
|
|
|
- </el-table-column>
|
|
|
|
- </el-table>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="24">
|
|
|
|
- <div align="right">
|
|
|
|
- <el-pagination
|
|
|
|
- :current-page="currentPage4"
|
|
|
|
- :page-size="15"
|
|
|
|
- background
|
|
|
|
- layout="total, prev, pager, next, jumper"
|
|
|
|
- :total="total"
|
|
|
|
- @size-change="handleSizeChange"
|
|
|
|
- @current-change="handleCurrentChange"
|
|
|
|
- />
|
|
|
|
- </div>
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
- </el-main>
|
|
|
|
|
|
+ </div>
|
|
|
|
+ </el-header>
|
|
|
|
+ <el-main style="padding: 1%">
|
|
|
|
+ <el-row class="headerBg table_v" style=" padding-top: 0px;">
|
|
|
|
+ <el-col :span="24" style="min-height: 47vh;">
|
|
|
|
+ <el-table size="small" :data="tableData" style="width: 100%; font-size: 14px; color:rgba(102,102,102,1);" :default-sort="{prop: 'priorityCode'}" show-overflow-tooltip="true" :header-cell-style="{ color: '#4A4A4A', fontSize: '14px', fontWeight: '500' }">
|
|
|
|
+ <el-table-column label="优先级" prop="priorityCode" sortable align="center">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <div class="div_priority" :style="{background: priorityColors[scope.row.priorityCode]}">{{ scope.row.priorityLevel | oneA }}</div>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column prop="bugName" label="缺陷标题" min-width="180" align="left" show-overflow-tooltip>
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <span style=" color: #A7AEBC; font-size: 10px;">{{ 'BUG-' + scope.row.id }}</span><br>
|
|
|
|
+ <span class="bugNameSty" @click="click_bugName(scope.row.id)">{{ scope.row.bugName }}</span>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column prop="bizName" label="业务线" align="center" />
|
|
|
|
+ <el-table-column prop="priorityName" label="缺陷等级" align="center" />
|
|
|
|
+ <el-table-column prop="bugStatusName" label="状态" align="center">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <div :style="{color: statusColors[scope.row.status % statusColors.length]}">{{ scope.row.bugStatusName }}</div>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column prop="creatorList" label="提报人" align="center" />
|
|
|
|
+ <el-table-column prop="assignerList" label="责任人" align="center" />
|
|
|
|
+ <el-table-column prop="currentHandlerList" label="修复人" align="center" />
|
|
|
|
+ <el-table-column prop="gmtCreate" label="创建日期" min-width="120" align="center">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ {{ scope.row.gmtCreate | naspOut }}
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ </el-table>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="24">
|
|
|
|
+ <div align="right">
|
|
|
|
+ <el-pagination
|
|
|
|
+ :current-page="currentPage4"
|
|
|
|
+ :page-size="15"
|
|
|
|
+ background
|
|
|
|
+ layout="total, prev, pager, next, jumper"
|
|
|
|
+ :total="total"
|
|
|
|
+ @size-change="handleSizeChange"
|
|
|
|
+ @current-change="handleCurrentChange"
|
|
|
|
+ />
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ </el-main>
|
|
|
|
+ </el-container>
|
|
<createdBug v-if="modalShow" ref="createdBug" :get-bug-list="getBugList" />
|
|
<createdBug v-if="modalShow" ref="createdBug" :get-bug-list="getBugList" />
|
|
<el-drawer
|
|
<el-drawer
|
|
:visible.sync="drawerShow"
|
|
:visible.sync="drawerShow"
|
|
@@ -186,16 +188,11 @@
|
|
size="50%"
|
|
size="50%"
|
|
class="bug_manage_drawer"
|
|
class="bug_manage_drawer"
|
|
>
|
|
>
|
|
- <div style="position:sticky;text-align:right;padding: 10px 15px">
|
|
|
|
- <div style="display: inline-block" @mousedown="iconName = 'float_反馈_icon_close_蓝色'">
|
|
|
|
- <el-button size="medium" type="text" @click="drawerShow = false;iconName = 'float_反馈_icon_close'">
|
|
|
|
- <svg-icon :icon-class="iconName" />
|
|
|
|
- </el-button>
|
|
|
|
- </div>
|
|
|
|
|
|
+ <div>
|
|
|
|
+ <bug-details :id="bugQuery.id+''" ref="bugDetails" :init-count="initCount + ''" :type="'drawer'" @close="drawerShow = false" @delete="drawerShow = false;getBugList()" @update="getBugList()" />
|
|
</div>
|
|
</div>
|
|
- <bug-details :id="bugQuery.id+''" :type="'drawer'" @delete="drawerShow = false;getBugList()" @update="getBugList()" />
|
|
|
|
</el-drawer>
|
|
</el-drawer>
|
|
- </el-container>
|
|
|
|
|
|
+ </div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
@@ -223,7 +220,7 @@ export default {
|
|
},
|
|
},
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
- iconName: 'float_反馈_icon_close',
|
|
|
|
|
|
+ initCount: 0,
|
|
priorityColors: ['#F56C6C', '#FF8952', '#7ED321'],
|
|
priorityColors: ['#F56C6C', '#FF8952', '#7ED321'],
|
|
statusColors: ['#6AB4FF', '#6AB4FF', '#FFCC66', '#7ED321', '#F56C6C'],
|
|
statusColors: ['#6AB4FF', '#6AB4FF', '#FFCC66', '#7ED321', '#F56C6C'],
|
|
DetailedScreening: false, // 高级筛选
|
|
DetailedScreening: false, // 高级筛选
|
|
@@ -263,7 +260,18 @@ export default {
|
|
loading: false,
|
|
loading: false,
|
|
options: [],
|
|
options: [],
|
|
test: [], // 人员查询
|
|
test: [], // 人员查询
|
|
- dialogImageUrl: ''
|
|
|
|
|
|
+ dialogImageUrl: '',
|
|
|
|
+ isBugNameClick: false
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ computed: {
|
|
|
|
+ clickCount() {
|
|
|
|
+ return this.$store.state.app.clickCount
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ watch: {
|
|
|
|
+ clickCount(newVal, oldVal) {
|
|
|
|
+ this.drawerShow = false
|
|
}
|
|
}
|
|
},
|
|
},
|
|
created() {
|
|
created() {
|
|
@@ -334,7 +342,7 @@ export default {
|
|
return cur
|
|
return cur
|
|
}, [])
|
|
}, [])
|
|
})
|
|
})
|
|
- }, 200)
|
|
|
|
|
|
+ }, 100)
|
|
} else {
|
|
} else {
|
|
this.options = []
|
|
this.options = []
|
|
}
|
|
}
|
|
@@ -357,10 +365,11 @@ export default {
|
|
this.$message({ showClose: true, message: '文件上传成功', type: 'success' })
|
|
this.$message({ showClose: true, message: '文件上传成功', type: 'success' })
|
|
},
|
|
},
|
|
click_bugName(e) {
|
|
click_bugName(e) {
|
|
- this.bugQuery = this.tableData.filter(value => value.id === e)[0]
|
|
|
|
|
|
+ this.bugQuery = JSON.parse(JSON.stringify(this.tableData.filter(value => value.id === e)[0]))
|
|
|
|
+ this.initCount++
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
this.isBugNameClick = true
|
|
this.isBugNameClick = true
|
|
- }, 100)
|
|
|
|
|
|
+ }, 200)
|
|
},
|
|
},
|
|
onSubmit() {
|
|
onSubmit() {
|
|
console.log('submit!')
|
|
console.log('submit!')
|