|
@@ -17,13 +17,7 @@
|
|
|
<span style="font-size:20px;font-family:MicrosoftYaHei;color:rgba(51,51,51,1);">任务 : {{ task_form.name }}</span>
|
|
|
</el-tooltip>
|
|
|
<el-dropdown placement="bottom" @command="handleCommand">
|
|
|
- <el-button
|
|
|
- size="mini"
|
|
|
- type="info"
|
|
|
- plain
|
|
|
- class="el-dropdown-link drop_down"
|
|
|
- style="cursor: pointer;margin-left:15px"
|
|
|
- >
|
|
|
+ <el-button size="mini" type="info" plain class="el-dropdown-link drop_down" style="cursor: pointer;margin-left:15px">
|
|
|
{{ task_form.statusString }}
|
|
|
<i class="el-icon-arrow-down el-icon--right" />
|
|
|
</el-button>
|
|
@@ -60,9 +54,7 @@
|
|
|
<div style="width:83px;height:20px;font-size:16px;font-family:MicrosoftYaHei;color:rgba(51,59,74,1);margin-left:6px">数据统计</div>
|
|
|
</div>
|
|
|
<div style="display: flex; justify-content: space-between; align-items: center;">
|
|
|
- <span
|
|
|
- style="text-align: center; margin-left: 8%; border-right:1px solid #BBBBBB; padding-right: 8%;"
|
|
|
- >
|
|
|
+ <span style="text-align: center; margin-left: 8%; border-right:1px solid #BBBBBB; padding-right: 8%;">
|
|
|
<p style="width: 70px;">bug数量</p>
|
|
|
<p style="font-size: 70px;">{{ totalCount }}</p>
|
|
|
<p v-show="fixInFutureCount <= 0? false: true">
|
|
@@ -73,65 +65,34 @@
|
|
|
</div>
|
|
|
</el-aside>
|
|
|
<el-container>
|
|
|
- <el-main
|
|
|
- class="bgborder form_e special-button"
|
|
|
- style="overflow: hidden;margin: 0 2.1% 0 0;min-height: 50vh;"
|
|
|
- >
|
|
|
+ <el-main class="bgborder form_e special-button" style="overflow: hidden;margin: 0 2.1% 0 0;min-height: 50vh;">
|
|
|
<div style="display:flex;align-items: center;margin-bottom:20px;margin: 20px 0 0 20px;">
|
|
|
<div style="width:4px;height:17px;background:#409EFF;border-radius:1px;" />
|
|
|
<div style="width:83px;height:20px;font-size:16px;font-family:MicrosoftYaHei;color:rgba(51,59,74,1);margin-left:6px">基础信息</div>
|
|
|
</div>
|
|
|
- <el-form
|
|
|
- label-position="left"
|
|
|
- label-width="150px"
|
|
|
- style="margin: 0 4%;font-size: 14px;color: rgb(102, 102, 102);"
|
|
|
- :model="task_form"
|
|
|
- >
|
|
|
+ <el-form label-position="left" label-width="150px" style="margin: 0 4%;font-size: 14px;color: rgb(102, 102, 102);" :model="task_form">
|
|
|
<div style="text-align: right;">
|
|
|
- <el-button
|
|
|
- type="info"
|
|
|
- plain
|
|
|
- size="mini"
|
|
|
- @click="open_created(task_form.describe)"
|
|
|
- >修改</el-button>
|
|
|
+ <el-button type="info" plain size="mini" @click="open_created(task_form.describe)">修改</el-button>
|
|
|
</div>
|
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="19">
|
|
|
- <el-form-item label="所属项目:" label-width="150px" style="word-break: break-all;">
|
|
|
- <span
|
|
|
- v-show="task_form.projectName !== '无归属项目'"
|
|
|
- style="color: #409EFF;cursor: pointer;"
|
|
|
- @click="devUrl_tow(1, task_form.projectId)"
|
|
|
- >{{ task_form.projectName }}</span>
|
|
|
- <span
|
|
|
- v-show="task_form.projectName === '无归属项目'"
|
|
|
- >{{ task_form.projectName }}</span>
|
|
|
+ <el-form-item label="所属项目:" style="word-break: break-all;">
|
|
|
+ <span v-show="task_form.projectName !== '无归属项目'" style="color: #409EFF;cursor: pointer;" @click="devUrl_tow(1, task_form.projectId)">{{ task_form.projectName }}</span>
|
|
|
+ <span v-show="task_form.projectName === '无归属项目'">{{ task_form.projectName }}</span>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-form-item label="所属需求:" label-width="150px">
|
|
|
- <span
|
|
|
- v-show="task_form.requireName !== '无归属需求'"
|
|
|
- style="color: #409EFF;cursor: pointer;"
|
|
|
- @click="devUrl_tow(3, task_form.requireId)"
|
|
|
- >{{ task_form.requireName }}</span>
|
|
|
- <span
|
|
|
- v-show="task_form.requireName === '无归属需求'"
|
|
|
- >{{ task_form.requireName }}</span>
|
|
|
+ <span v-show="task_form.requireName !== '无归属需求'" style="color: #409EFF;cursor: pointer;" @click="devUrl_tow(3, task_form.requireId)">{{ task_form.requireName }}</span>
|
|
|
+ <span v-show="task_form.requireName === '无归属需求'">{{ task_form.requireName }}</span>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="模块:"
|
|
|
- label-width="150px"
|
|
|
- >{{ task_form.moduleInfoName }}</el-form-item>
|
|
|
- <el-form-item label="是否免测:" label-width="150px">{{ task_form.noTestString }}</el-form-item>
|
|
|
- <el-form-item label="开发负责人:" label-width="150px">{{ task_form.rdObject === null? '' : task_form.rdObject.name }}</el-form-item>
|
|
|
- <el-form-item label="测试负责人:" label-width="150px">{{ task_form.qaObject === null? '' : task_form.qaObject.name }}</el-form-item>
|
|
|
- <el-form-item label="涉及的客户端:" label-width="150px">{{ task_form.involveAppString }}</el-form-item>
|
|
|
- <el-form-item label="技术文档:" label-width="150px" style="word-break: break-all;">
|
|
|
- <span
|
|
|
- style="color: #409EFF;cursor: pointer;"
|
|
|
- @click="devUrl_tow(2, task_form.devUrl)"
|
|
|
- >{{ task_form.devUrl }}</span>
|
|
|
+ <el-form-item label="模块:">{{ task_form.moduleInfoName }}</el-form-item>
|
|
|
+ <el-form-item label="是否免测:">{{ task_form.noTestString }}</el-form-item>
|
|
|
+ <el-form-item label="开发负责人:">{{ task_form.rdObject === null? '' : task_form.rdObject.name }}</el-form-item>
|
|
|
+ <el-form-item label="测试负责人:">{{ task_form.qaObject === null? '' : task_form.qaObject.name }}</el-form-item>
|
|
|
+ <el-form-item label="涉及的客户端:">{{ task_form.involveAppString }}</el-form-item>
|
|
|
+ <el-form-item label="技术文档:" style="word-break: break-all;">
|
|
|
+ <span style="color: #409EFF;cursor: pointer;" @click="devUrl_tow(2, task_form.devUrl)">{{ task_form.devUrl }}</span>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</el-main>
|
|
@@ -149,93 +110,44 @@
|
|
|
<el-radio-button label="甘特图" @click.native="GanttChart(2)" />
|
|
|
</el-radio-group>
|
|
|
</div>
|
|
|
- <div>
|
|
|
+ <div style=" margin: 0 20px; color: #333B4A;">
|
|
|
<div v-show="Gantt" style="padding:0 46px">
|
|
|
- <gantt
|
|
|
- v-if="ganttData"
|
|
|
- :table-data="ganttData"
|
|
|
- string-type="事件"
|
|
|
- :versions="appVersion"
|
|
|
- />
|
|
|
+ <gantt v-if="ganttData" :table-data="ganttData" string-type="事件" :versions="appVersion" />
|
|
|
</div>
|
|
|
- <div style="margin: 0 20px;">
|
|
|
- <el-table
|
|
|
- v-show="table_show"
|
|
|
- :data="arr_event"
|
|
|
- style="width: 100%;"
|
|
|
- size="small"
|
|
|
- :header-cell-style="{ background: '#E9E9E9', color: '#333B4A' }"
|
|
|
- show-overflow-tooltip="true"
|
|
|
- >
|
|
|
- <el-table-column label="事件类型" min-width="100" align="center">
|
|
|
- <template slot-scope="scope">{{ scope.row.name }}</template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="描述" min-width="200" align="center">
|
|
|
- <template slot-scope="scope">{{ scope.row.desc }}</template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="排期" min-width="200" align="center">
|
|
|
- <template slot-scope="scope">{{ scope.row.startTime | naspOut }} - {{ scope.row.endTime | naspOut }}</template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="人员" min-width="200" align="center">
|
|
|
- <template slot-scope="scope">
|
|
|
- <div v-for="item of scope.row.peopleObject" :key="item.idapId">{{ item.name }}</div>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="操作" min-width="200">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-button size="mini" type="primary" plain @click="event_query(scope.row.id)">编辑</el-button>
|
|
|
- <el-button
|
|
|
- v-if="scope.row.canDelete === 1? false : true"
|
|
|
- size="mini"
|
|
|
- type="primary"
|
|
|
- plain
|
|
|
- @click="event_delete(scope.row.id)"
|
|
|
- >删除</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
+ <el-table v-show="table_show" :data="arr_event" style="width: 100%;" size="small" :header-cell-style="{ background: '#E9E9E9', color: '#333B4A' }" show-overflow-tooltip="true">
|
|
|
+ <el-table-column label="事件类型" min-width="100" align="center">
|
|
|
+ <template slot-scope="scope">{{ scope.row.name }}</template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="描述" min-width="200" align="center">
|
|
|
+ <template slot-scope="scope">{{ scope.row.desc }}</template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="排期" min-width="200" align="center">
|
|
|
+ <template slot-scope="scope">{{ scope.row.startTime | naspOut }} - {{ scope.row.endTime | naspOut }}</template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="人员" min-width="200" align="center">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div v-for="item of scope.row.peopleObject" :key="item.idapId">{{ item.name }}</div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="操作" min-width="200">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button size="mini" type="primary" plain @click="event_query(scope.row.id)">编辑</el-button>
|
|
|
+ <el-button v-if="scope.row.canDelete === 1? false : true" size="mini" type="primary" plain @click="event_delete(scope.row.id)">删除</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <div class="dateSet">排期汇总:{{ tiem_date.startTime | naspOut }} ~ {{ tiem_date.endTime | naspOut }}</div>
|
|
|
+ <div class="dateSet" style=" display: flex; justify-content: start; align-items: center;">
|
|
|
+ <div style="flex:1">实际提测时间:{{ task_form.launchTestRealTime | naspOut }}</div>
|
|
|
+ <div style="flex:1">实际准出时间:{{ task_form.testFinishRealTime | naspOut }}</div>
|
|
|
+ <div style="flex:1">实际上线完成时间:{{ task_form.onlineRealTime | naspOut }}</div>
|
|
|
</div>
|
|
|
- <el-row
|
|
|
- :gutter="20"
|
|
|
- style="margin: 1.5% 20px; color: #333B4A; padding-bottom:1.5%;border-bottom:1px solid #E9E9E9;"
|
|
|
- >
|
|
|
- <el-col :span="12">
|
|
|
- <div class="dateSet">排期汇总:{{ tiem_date.startTime | naspOut }} ~ {{ tiem_date.endTime | naspOut }}</div>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row
|
|
|
- :gutter="20"
|
|
|
- style="margin: 1.5% 20px; color: #333B4A; padding-bottom:1.5%;border-bottom:1px solid #E9E9E9;"
|
|
|
- >
|
|
|
- <el-col :span="8">
|
|
|
- <div class="dateSet">实际提测时间:{{ task_form.launchTestRealTime | naspOut }}</div>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <div class="dateSet">实际准出时间:{{ task_form.testFinishRealTime | naspOut }}</div>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <div class="dateSet">实际上线完成时间:{{ task_form.onlineRealTime | naspOut }}</div>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row
|
|
|
- :gutter="20"
|
|
|
- style="margin: 1.5% 20px; color: #333B4A; padding-bottom:1.5%;border-bottom:1px solid #E9E9E9; "
|
|
|
- >
|
|
|
- <el-col :span="8">
|
|
|
- <div class="dateSet">预计上线版本:{{ task_form.preOnlineVersion }}</div>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
+ <div class="dateSet">预计上线版本:{{ task_form.preOnlineVersion }}</div>
|
|
|
</div>
|
|
|
</el-header>
|
|
|
<el-footer class="footer" style=" height: auto;">
|
|
|
<span style="text-align: right; margin: 1% 0 -3% 0;float:right;">
|
|
|
- <el-button
|
|
|
- size="mini"
|
|
|
- type="primary"
|
|
|
- plain
|
|
|
- icon="el-icon-plus"
|
|
|
- @click="createReport(4, task_form)"
|
|
|
- >提Bug</el-button>
|
|
|
+ <el-button size="mini" type="primary" plain icon="el-icon-plus" @click="createReport(4, task_form)">提Bug</el-button>
|
|
|
<el-dropdown>
|
|
|
<el-button size="mini" type="primary" plain>
|
|
|
新建
|
|
@@ -250,16 +162,11 @@
|
|
|
</span>
|
|
|
<el-tabs tab-position="top" @tab-click="click_launchTestInfoDOS">
|
|
|
<el-tab-pane label="Bug" style="position: relative;">
|
|
|
- <div
|
|
|
- style="padding: 1.5% 0;font-family: MicrosoftYaHei;color: rgba(51,51,51,1);font-size: 14px;align-items: center;display: flex; justify-content: space-start; align-items: center;border-top: 1px solid #E9E9E9;"
|
|
|
- >
|
|
|
+ <div style="padding: 1.5% 0;font-family: MicrosoftYaHei;color: rgba(51,51,51,1);font-size: 14px;align-items: center;display: flex; justify-content: space-start; align-items: center;border-top: 1px solid #E9E9E9;">
|
|
|
<span>快速筛选:</span>
|
|
|
- <span
|
|
|
- v-for="(item, code) of bugStatus"
|
|
|
- :key="code"
|
|
|
- class="status"
|
|
|
- @click="bug_list(item.code)"
|
|
|
- ><span :style="{color: item.msg === '全部'? colorSty :''}">{{ item.msg }}</span></span>
|
|
|
+ <span v-for="(item, code) of bugStatus" :key="code" class="status" @click="bug_list(item.code)">
|
|
|
+ <span :style="{color: item.msg === '全部'? colorSty :''}">{{ item.msg }}</span>
|
|
|
+ </span>
|
|
|
</div>
|
|
|
<el-table size="mini" :data="bugBaseInfoDOList" min-height="200" style="width: 100%; font-size: 14px; color:rgba(102,102,102,1);" show-overflow-tooltip="true" :default-sort="{prop: 'priorityCode'}" :header-cell-style="{ background: '#E9E9E9', color: '#333B4A', fontSize: '14px', fontWeight: '500',borderTop: '0.5px solid #EEF0F5'}">
|
|
|
<el-table-column label="优先级" prop="priorityCode" sortable align="center">
|
|
@@ -290,26 +197,11 @@
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
<div style="display:flex;align-items: center;justify-content: flex-end;">
|
|
|
- <el-pagination
|
|
|
- background
|
|
|
- :current-page="currentPage"
|
|
|
- :page-sizes="[15, 20, 25, 30]"
|
|
|
- :page-size="15"
|
|
|
- layout="total, prev, pager, next, jumper"
|
|
|
- :total="total"
|
|
|
- @size-change="handleSizeChange"
|
|
|
- @current-change="handleCurrentChange"
|
|
|
- />
|
|
|
+ <el-pagination background :current-page="currentPage" :page-sizes="[15, 20, 25]" :page-size="15" layout="total, prev, pager, next, jumper" :total="total" @size-change="handleSizeChange" @current-change="handleCurrentChange" />
|
|
|
</div>
|
|
|
</el-tab-pane>
|
|
|
- <el-tab-pane label="提测报告" style="overflow: auto;width: 100%;">
|
|
|
- <el-table
|
|
|
- :data="launchTestInfoDOS"
|
|
|
- style="width: 100%;margin:2% 0;"
|
|
|
- size="small"
|
|
|
- :header-cell-style="{ background: '#E9E9E9', color: '#333B4A' }"
|
|
|
- show-overflow-tooltip="true"
|
|
|
- >
|
|
|
+ <el-tab-pane label="提测报告">
|
|
|
+ <el-table :data="launchTestInfoDOS" size="small" :header-cell-style="{ background: '#E9E9E9', color: '#333B4A' }" show-overflow-tooltip="true">
|
|
|
<el-table-column label="标题名称" min-width="100" align="center">
|
|
|
<template slot-scope="scope">{{ scope.row.name }}</template>
|
|
|
</el-table-column>
|
|
@@ -331,11 +223,7 @@
|
|
|
<el-input v-model="CallBackTheReason" type="textarea" :rows="3" />
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<el-button type="primary" size="mini" @click="passOrBackSend()">确 定</el-button>
|
|
|
- <el-button
|
|
|
- type="danger"
|
|
|
- size="mini"
|
|
|
- @click="dialog_launchTestInfoDOS = false"
|
|
|
- >取 消</el-button>
|
|
|
+ <el-button type="danger" size="mini" @click="dialog_launchTestInfoDOS = false">取 消</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
</div>
|
|
@@ -343,26 +231,11 @@
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
<div align="right">
|
|
|
- <el-pagination
|
|
|
- background
|
|
|
- :current-page="currentPage"
|
|
|
- :page-sizes="[15, 20, 25, 30]"
|
|
|
- :page-size="15"
|
|
|
- layout="total, prev, pager, next, jumper"
|
|
|
- :total="total"
|
|
|
- @size-change="handleSizeChange"
|
|
|
- @current-change="handleCurrentChange"
|
|
|
- />
|
|
|
+ <el-pagination background :current-page="currentPage" :page-sizes="[15, 20, 25]" :page-size="15" layout="total, prev, pager, next, jumper" :total="total" @size-change="handleSizeChange" @current-change="handleCurrentChange" />
|
|
|
</div>
|
|
|
</el-tab-pane>
|
|
|
- <el-tab-pane label="测试报告" style="overflow: auto;width: 100%;">
|
|
|
- <el-table
|
|
|
- :data="dailyTestReports"
|
|
|
- style="width: 100%;margin:2% 0;"
|
|
|
- size="small"
|
|
|
- :header-cell-style="{ background: '#E9E9E9', color: '#333B4A' }"
|
|
|
- show-overflow-tooltip="true"
|
|
|
- >
|
|
|
+ <el-tab-pane label="测试报告">
|
|
|
+ <el-table :data="dailyTestReports" size="small" :header-cell-style="{ background: '#E9E9E9', color: '#333B4A' }" show-overflow-tooltip="true">
|
|
|
<el-table-column label="标题名称" min-width="100" align="center">
|
|
|
<template slot-scope="scope">{{ scope.row.reportName }}</template>
|
|
|
</el-table-column>
|
|
@@ -377,14 +250,8 @@
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
</el-tab-pane>
|
|
|
- <el-tab-pane label="准出报告" style="overflow: auto;width: 100%;">
|
|
|
- <el-table
|
|
|
- :data="projectTestReportDOS"
|
|
|
- style="width: 100%;margin:2% 0;"
|
|
|
- size="small"
|
|
|
- :header-cell-style="{ background: '#E9E9E9', color: '#333B4A' }"
|
|
|
- show-overflow-tooltip="true"
|
|
|
- >
|
|
|
+ <el-tab-pane label="准出报告">
|
|
|
+ <el-table :data="projectTestReportDOS" size="small" :header-cell-style="{ background: '#E9E9E9', color: '#333B4A' }" show-overflow-tooltip="true">
|
|
|
<el-table-column label="标题名称" min-width="100" align="center">
|
|
|
<template slot-scope="scope">{{ scope.row.reportName }}</template>
|
|
|
</el-table-column>
|
|
@@ -399,16 +266,7 @@
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
<div align="right">
|
|
|
- <el-pagination
|
|
|
- background
|
|
|
- :current-page="currentPage"
|
|
|
- :page-sizes="[15]"
|
|
|
- :page-size="15"
|
|
|
- layout="total, prev, pager, next, jumper"
|
|
|
- :total="total"
|
|
|
- @size-change="handleSizeChange"
|
|
|
- @current-change="handleCurrentChange"
|
|
|
- />
|
|
|
+ <el-pagination background :current-page="currentPage" :page-sizes="[15]" :page-size="15" layout="total, prev, pager, next, jumper" :total="total" @size-change="handleSizeChange" @current-change="handleCurrentChange" />
|
|
|
</div>
|
|
|
</el-tab-pane>
|
|
|
<el-tab-pane label="评论">
|
|
@@ -418,13 +276,7 @@
|
|
|
<span style="color: #9B9B9B; font-size:12px;margin-left:1%;">{{ item.commentInfo.gmtCreater }}</span>
|
|
|
<p style="color: #333B4A; font-size:14px;margin-left:2%;">{{ item.commentInfo.content }}</p>
|
|
|
</div>
|
|
|
- <el-input
|
|
|
- v-model="content"
|
|
|
- rows="6"
|
|
|
- type="textarea"
|
|
|
- placeholder="请输入评论内容..."
|
|
|
- show-word-limit
|
|
|
- />
|
|
|
+ <el-input v-model="content" rows="6" type="textarea" placeholder="请输入评论内容..." show-word-limit />
|
|
|
<p style="text-align: right;">
|
|
|
<el-button size="small" type="primary" @click="comment(content)">发表评论</el-button>
|
|
|
</p>
|
|
@@ -504,28 +356,15 @@
|
|
|
</el-form>
|
|
|
<div slot="footer" class="dialog-footer">
|
|
|
<el-button @click="dialogFormVisible = false">取 消</el-button>
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- @click="even === '新建事件'? event_created(form):event_update(form)"
|
|
|
- >确 定</el-button>
|
|
|
+ <el-button type="primary" @click="even === '新建事件'? event_created(form):event_update(form)">确 定</el-button>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
<el-dialog :visible.sync="centerDialogVisible_status" width="30%" center :close-on-click-modal="false">
|
|
|
<div align="center" style="margin-bottom: 8%; font-weight: 600;">状态变更:已上线</div>
|
|
|
- <el-row :gutter="24" style="margin: 2% 3%">
|
|
|
- <el-col
|
|
|
- :span="24"
|
|
|
- style="display: flex; justify-content: space-between; align-items: center; white-space:nowrap;"
|
|
|
- >
|
|
|
- <span>实际上线时间:</span>
|
|
|
- <el-date-picker
|
|
|
- v-model="NewDate"
|
|
|
- type="date"
|
|
|
- placeholder="选择日期"
|
|
|
- format="yyyy 年 MM 月 dd 日"
|
|
|
- />
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
+ <div style=" margin: 2% 3%; display: flex; justify-content: space-between; align-items: center; white-space:nowrap;">
|
|
|
+ <span>实际上线时间:</span>
|
|
|
+ <el-date-picker v-model="NewDate" type="date" style="width:100%;" placeholder="选择日期" format="yyyy 年 MM 月 dd 日" />
|
|
|
+ </div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<el-button size="mini" @click="centerDialogVisible_status = false">关 闭</el-button>
|
|
|
<el-button size="mini" type="primary" @click="task_status_uptate(NewDate)">确 定</el-button>
|
|
@@ -549,14 +388,7 @@
|
|
|
<DailyReport v-if="dialogDaily" ref="DailyReport" />
|
|
|
<ClientReport v-if="dialogClient" ref="ClientReport" />
|
|
|
</div>
|
|
|
- <el-drawer
|
|
|
- :visible.sync="drawerShow"
|
|
|
- :modal="false"
|
|
|
- :with-header="false"
|
|
|
- size="50%"
|
|
|
- class="bug_manage_drawer"
|
|
|
- @click.stop
|
|
|
- >
|
|
|
+ <el-drawer :visible.sync="drawerShow" :modal="false" :with-header="false" size="50%" class="bug_manage_drawer" @click.stop>
|
|
|
<div @click.stop>
|
|
|
<bug-details :id="bugId + ''" ref="bugDetails" :init-count="initCount + ''" :type="'drawer'" @close="drawerShow = false" @delete="drawerShow = false;bug_list(codeCache)" @update="bug_list(codeCache)" />
|
|
|
</div>
|
|
@@ -812,9 +644,7 @@ export default {
|
|
|
})
|
|
|
commentList({ type: 3, joinId: this.taskId[1] }).then(res => {
|
|
|
this.commentTxt = res.data
|
|
|
- this.commentTxt !== ''
|
|
|
- ? (this.commentShow = false)
|
|
|
- : (this.commentShow = true)
|
|
|
+ this.commentTxt !== '' ? (this.commentShow = false) : (this.commentShow = true)
|
|
|
})
|
|
|
},
|
|
|
tableDeal(arr) {
|
|
@@ -825,20 +655,11 @@ export default {
|
|
|
task: { description: eachData.name || '' },
|
|
|
schedules: [
|
|
|
{
|
|
|
- taskName: eachData.name || '',
|
|
|
- event: eachData.desc,
|
|
|
- schedule:
|
|
|
- dayjs(eachData.startTime).format('YYYY.MM.DD') +
|
|
|
- ' - ' +
|
|
|
- dayjs(eachData.endTime).format('YYYY.MM.DD'),
|
|
|
+ taskName: eachData.name || '', event: eachData.desc,
|
|
|
+ schedule: dayjs(eachData.startTime).format('YYYY.MM.DD') + ' - ' + dayjs(eachData.endTime).format('YYYY.MM.DD'),
|
|
|
startDate: dayjs(eachData.startTime).format('YYYY-MM-DD'),
|
|
|
- length:
|
|
|
- (dayjs(eachData.endTime) - dayjs(eachData.startTime)) / 86400000 +
|
|
|
- 1,
|
|
|
- owners:
|
|
|
- eachData.peopleObject === null
|
|
|
- ? []
|
|
|
- : eachData.peopleObject.map(eachMember => eachMember.name),
|
|
|
+ length: (dayjs(eachData.endTime) - dayjs(eachData.startTime)) / 86400000 + 1,
|
|
|
+ owners: eachData.peopleObject === null ? [] : eachData.peopleObject.map(eachMember => eachMember.name),
|
|
|
taskId: eachData.taskId
|
|
|
}
|
|
|
]
|
|
@@ -857,9 +678,7 @@ export default {
|
|
|
result[pauseTime] = ''
|
|
|
}
|
|
|
// result[pauseTime] = (this.pauseName || '') + arr[i].version + arr[i].name
|
|
|
- pauseTime = dayjs(pauseTime)
|
|
|
- .add(1, 'day')
|
|
|
- .format('YYYY-MM-DD')
|
|
|
+ pauseTime = dayjs(pauseTime).add(1, 'day').format('YYYY-MM-DD')
|
|
|
}
|
|
|
}
|
|
|
return result
|
|
@@ -934,19 +753,10 @@ export default {
|
|
|
this.task_form.statusString = command.label
|
|
|
var taskInfoDO = this.task_form
|
|
|
taskInfoDO.status = command.value
|
|
|
- var user = {
|
|
|
- name: this.userNames,
|
|
|
- ename: this.userInformation,
|
|
|
- id: ''
|
|
|
- }
|
|
|
+ var user = { name: this.userNames, ename: this.userInformation, id: '' }
|
|
|
taskUpdate({ taskInfoDO, user }).then(res => {
|
|
|
if (res.code === 200) {
|
|
|
- this.$message({
|
|
|
- message: res.msg,
|
|
|
- type: 'success',
|
|
|
- duration: 1000,
|
|
|
- offset: 150
|
|
|
- })
|
|
|
+ this.$message({ message: res.msg, type: 'success', offset: 150 })
|
|
|
}
|
|
|
})
|
|
|
}
|
|
@@ -963,12 +773,7 @@ export default {
|
|
|
if (res.code === 200) {
|
|
|
this.centerDialogVisible_status = false
|
|
|
}
|
|
|
- this.$message({
|
|
|
- message: res.msg,
|
|
|
- type: 'success',
|
|
|
- duration: 1000,
|
|
|
- offset: 150
|
|
|
- })
|
|
|
+ this.$message({ message: res.msg, type: 'success', offset: 150 })
|
|
|
})
|
|
|
},
|
|
|
// 事件删除
|
|
@@ -977,19 +782,9 @@ export default {
|
|
|
deleteEvent(id, user).then(res => {
|
|
|
if (res.code === 200) {
|
|
|
this.get_list()
|
|
|
- this.$message({
|
|
|
- message: res.msg,
|
|
|
- type: 'success',
|
|
|
- duration: 1000,
|
|
|
- offset: 150
|
|
|
- })
|
|
|
+ this.$message({ message: res.msg, type: 'success', offset: 150 })
|
|
|
} else {
|
|
|
- this.$message({
|
|
|
- message: res.msg + '请联系开发人员',
|
|
|
- type: 'error',
|
|
|
- duration: 1000,
|
|
|
- offset: 150
|
|
|
- })
|
|
|
+ this.$message({ message: res.msg + '请联系开发人员', type: 'error', offset: 150 })
|
|
|
}
|
|
|
})
|
|
|
},
|
|
@@ -1182,37 +977,10 @@ export default {
|
|
|
commentCreate({ commentInfo, user }).then(res => {
|
|
|
if (res.code === 200) {
|
|
|
this.get_list()
|
|
|
- this.$message({
|
|
|
- message: res.msg,
|
|
|
- type: 'success',
|
|
|
- duration: 1000,
|
|
|
- offset: 150
|
|
|
- })
|
|
|
+ this.$message({ message: res.msg, type: 'success', offset: 150 })
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
- ImmediateAddition() {
|
|
|
- // 立即添加(编辑)
|
|
|
- setTimeout(() => {
|
|
|
- this.$refs.textarea.focus()
|
|
|
- }, 100)
|
|
|
- this.Addition = false
|
|
|
- this.Addition1 = true
|
|
|
- this.Addition2 = false
|
|
|
- },
|
|
|
- blur_textarea(e) {
|
|
|
- // 项目总目标失去焦点
|
|
|
- if (e !== '') {
|
|
|
- this.textarea = e
|
|
|
- this.Addition2 = true
|
|
|
- this.Addition1 = false
|
|
|
- this.Addition = false
|
|
|
- } else {
|
|
|
- this.Addition2 = false
|
|
|
- this.Addition1 = false
|
|
|
- this.Addition = true
|
|
|
- }
|
|
|
- },
|
|
|
GanttChart(e) {
|
|
|
switch (e) {
|
|
|
case 1:
|
|
@@ -1230,9 +998,7 @@ export default {
|
|
|
this.even = '新建事件'
|
|
|
this.dialogFormVisible = true
|
|
|
this.form = {}
|
|
|
- this.$nextTick(() => {
|
|
|
- this.$refs['form'].clearValidate()
|
|
|
- })
|
|
|
+ this.$nextTick(() => { this.$refs['form'].clearValidate() })
|
|
|
},
|
|
|
devUrl_tow(e, ele) {
|
|
|
// 技术文档
|
|
@@ -1263,109 +1029,37 @@ export default {
|
|
|
passOrBackSend() {
|
|
|
this.dialog_launchTestInfoDOS = false
|
|
|
const tt = { status: this.CallBackStatus, id: this.CallBackId }
|
|
|
- var userData = {
|
|
|
- id: '',
|
|
|
- ename: this.userInformation,
|
|
|
- name: this.userNames
|
|
|
- }
|
|
|
+ var userData = { id: '', ename: this.userInformation, name: this.userNames }
|
|
|
var objData = { launchTestInfo: tt, user: userData }
|
|
|
launchTestUpdate(objData).then(res => {
|
|
|
- res.code === 200
|
|
|
- ? this.$message({
|
|
|
- message: res.msg,
|
|
|
- type: 'success',
|
|
|
- duration: 1000,
|
|
|
- offset: 150
|
|
|
- })
|
|
|
- : this.$message({
|
|
|
- message: res.msg,
|
|
|
- type: 'error',
|
|
|
- duration: 1000,
|
|
|
- offset: 150
|
|
|
- })
|
|
|
+ res.code === 200 ? this.$message({ message: res.msg, type: 'success', offset: 150 }) : this.$message({ message: res.msg, type: 'error', offset: 150 })
|
|
|
this.get_List()
|
|
|
})
|
|
|
},
|
|
|
- successFun() {
|
|
|
- this.$message({
|
|
|
- message: '操作成功',
|
|
|
- type: 'success'
|
|
|
- })
|
|
|
- },
|
|
|
- errFun(errFun) {
|
|
|
- this.$message.error(errFun)
|
|
|
- },
|
|
|
handleSizeChange(size) { // 分页
|
|
|
this.pageSize = size
|
|
|
},
|
|
|
handleCurrentChange(curIndex) { // 分页
|
|
|
this.curIndex = curIndex
|
|
|
},
|
|
|
- dialogue() {},
|
|
|
createReport(e, ele) {
|
|
|
- if (ele.typeString !== '服务端') {
|
|
|
- switch (e) {
|
|
|
- case 1: // 提测
|
|
|
- this.dialogVisible1 = true
|
|
|
- this.$nextTick(() => {
|
|
|
- this.$refs.TestReport.init(1, ele)
|
|
|
- })
|
|
|
- break
|
|
|
- case 2: // 日报
|
|
|
- this.dialogDaily = true
|
|
|
- this.$nextTick(() => {
|
|
|
- this.$refs.DailyReport.init(1)
|
|
|
- })
|
|
|
- break
|
|
|
- case 3:
|
|
|
- this.dialogClient = true
|
|
|
- this.$nextTick(() => {
|
|
|
- this.$refs.ClientReport.init(1, ele)
|
|
|
- })
|
|
|
- break
|
|
|
- case 4:
|
|
|
- this.modalShow = true
|
|
|
- this.$nextTick(() => {
|
|
|
- this.$refs.createdBug.init(1, ele)
|
|
|
- })
|
|
|
- break
|
|
|
- }
|
|
|
- } else {
|
|
|
- switch (e) {
|
|
|
- case 1:
|
|
|
- this.dialogVisible1 = true
|
|
|
- this.$nextTick(() => {
|
|
|
- this.$refs.TestReport.init()
|
|
|
- })
|
|
|
- break
|
|
|
- case 2: // 日报
|
|
|
- this.dialogDaily = true
|
|
|
- this.$nextTick(() => {
|
|
|
- this.$refs.DailyReport.init()
|
|
|
- })
|
|
|
- break
|
|
|
- case 3:
|
|
|
- if (this.task_form.statusString === '测试中') {
|
|
|
- this.$router.push({
|
|
|
- path: '/Platform/presentation/Acceptance',
|
|
|
- query: { task: ele }
|
|
|
- }) // 服务端准出
|
|
|
- } else {
|
|
|
- this.$message({
|
|
|
- message: '该状态下不支持提测,请先将状态更改为【测试中】',
|
|
|
- type: 'success',
|
|
|
- duration: 1000,
|
|
|
- offset: 150
|
|
|
- })
|
|
|
- }
|
|
|
- break
|
|
|
- case 4:
|
|
|
- this.modalShow = true
|
|
|
- this.$nextTick(() => {
|
|
|
- this.$refs.createdBug.init(1, ele)
|
|
|
- })
|
|
|
- break
|
|
|
- }
|
|
|
+ switch (e) {
|
|
|
+ case 1: // 提测
|
|
|
+ this.dialogVisible1 = true
|
|
|
+ this.$nextTick(() => { this.$refs.TestReport.init(1, ele) })
|
|
|
+ break
|
|
|
+ case 2: // 日报
|
|
|
+ this.dialogDaily = true
|
|
|
+ this.$nextTick(() => { this.$refs.DailyReport.init(1) })
|
|
|
+ break
|
|
|
+ case 3:
|
|
|
+ this.dialogClient = true
|
|
|
+ this.$nextTick(() => { this.$refs.ClientReport.init(1, ele) })
|
|
|
+ break
|
|
|
+ case 4:
|
|
|
+ this.modalShow = true
|
|
|
+ this.$nextTick(() => { this.$refs.createdBug.init(1, ele) })
|
|
|
+ break
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1548,6 +1242,9 @@ export default {
|
|
|
.dateSet {
|
|
|
font-size: 14px;
|
|
|
color: #333B4A;
|
|
|
+ margin: 1.5% 0;
|
|
|
+ padding-bottom:1.5%;
|
|
|
+ border-bottom:1px solid #E9E9E9;
|
|
|
}
|
|
|
.div_priority {
|
|
|
color: #ffffff;
|