|
@@ -5,13 +5,127 @@
|
|
|
{{ tab.title }}
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="tab-content" :class="tabClass">
|
|
|
+ <div class="tab-content" :class="tabClass" v-if="activeTab!==1 || (activeTab===1 && isShowTaskList===true)">
|
|
|
<div class="list">
|
|
|
<div v-for="(item, index) in activeTabItems" :key="index" class="item">
|
|
|
<div v-html="itemRender(item)"></div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <div class="task2-container" v-if="activeTab===1 && isShowTaskList===false">
|
|
|
+ <div class="task task-item" v-if="isShowPlanList">
|
|
|
+ <div style="margin-bottom: 1.85vh" id="TaskHeaderName" @click="clickBackToTaskList">{{taskName}}</div>
|
|
|
+ <div class="task-table">
|
|
|
+ <el-table @row-click="selectRowPlan" :data="planList" :row-class-name="rowClassName" style="background-color: transparent;" >
|
|
|
+ <el-table-column label="M-ID" prop="id"></el-table-column>
|
|
|
+ <el-table-column label="Title" prop="name"></el-table-column>
|
|
|
+ <el-table-column label="Avaliable Carline" prop="carline"></el-table-column>
|
|
|
+ <el-table-column label="Avaliable Variant" prop="project"></el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="task task-item" v-if="isShowCaseList">
|
|
|
+ <div style="margin-bottom: 1.85vh" id="TaskHeaderName" @click="clickBackToPlanList">{{planName}}</div>
|
|
|
+ <div class="task-table">
|
|
|
+ <el-table @row-click="selectRowCase" :data="caseList" :row-class-name="rowClassName" style="background-color: transparent;" >
|
|
|
+ <el-table-column label="Case-ID" prop="m_id"></el-table-column>
|
|
|
+ <el-table-column label="Title" prop="title"></el-table-column>
|
|
|
+ <el-table-column label="Avaliable Carline" prop="available_carline"></el-table-column>
|
|
|
+ <el-table-column label="Avaliable Variant" prop="available_variant"></el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="plan task-item" v-if="isShowCaseCommit">
|
|
|
+ <div style="margin-bottom: 1.85vh">{{caseName}}</div>
|
|
|
+ <el-row :gutter="20">
|
|
|
+ <el-col :span=12>
|
|
|
+ <el-select v-model="selectedOption" placeholder="请选择" class="select-container">
|
|
|
+ <el-option
|
|
|
+ v-for="option in options"
|
|
|
+ :key="option.value"
|
|
|
+ :label="option.label"
|
|
|
+ :value="option.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span=12>
|
|
|
+ <el-select v-model="selectedOption" placeholder="请选择" class="select-container">
|
|
|
+ <el-option
|
|
|
+ v-for="option in options"
|
|
|
+ :key="option.value"
|
|
|
+ :label="option.label"
|
|
|
+ :value="option.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row :gutter="20">
|
|
|
+ <el-col :span=12>
|
|
|
+ <el-select v-model="selectedOption" placeholder="请选择" class="select-container">
|
|
|
+ <el-option
|
|
|
+ v-for="option in options"
|
|
|
+ :key="option.value"
|
|
|
+ :label="option.label"
|
|
|
+ :value="option.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span=12>
|
|
|
+ <el-select v-model="selectedOption" placeholder="请选择" class="select-container">
|
|
|
+ <el-option
|
|
|
+ v-for="option in options"
|
|
|
+ :key="option.value"
|
|
|
+ :label="option.label"
|
|
|
+ :value="option.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row :gutter="20">
|
|
|
+ <el-col :span=12>
|
|
|
+ <el-select v-model="selectedOption" placeholder="请选择" class="select-container">
|
|
|
+ <el-option
|
|
|
+ v-for="option in options"
|
|
|
+ :key="option.value"
|
|
|
+ :label="option.label"
|
|
|
+ :value="option.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <div class="area-container">
|
|
|
+ <el-textarea
|
|
|
+ placeholder="请输入内容"
|
|
|
+ ></el-textarea>
|
|
|
+ </div>
|
|
|
+ <el-button class="cancel-button">Cancel</el-button>
|
|
|
+ <el-button class="done-button">Done</el-button>
|
|
|
+ </div>
|
|
|
+ <div class="case task-item" v-if="isShowCaseDetail">
|
|
|
+ <div>{{caseName}}</div>
|
|
|
+ <div class="task-title">{{caseProject}}</div>
|
|
|
+ <div class="task-content">{{caseActive}}</div>
|
|
|
+ <div class="task-title">{{caseFunction}}</div>
|
|
|
+ <div class="task-content">{{caseContent}}
|
|
|
+ <!--<div>1.Click Global Search App Fromapp Grid</div>
|
|
|
+ <div>2.tap global seaech search tif</div>
|
|
|
+ <div>3.switch to hwt mode and freehwr input character</div>
|
|
|
+ <div>4.tap delete button5.long press delete button</div>-->
|
|
|
+ </div>
|
|
|
+ <!--<div class="task-title">SubFunction</div>
|
|
|
+ <div class="task-content">
|
|
|
+ <div>1.click global seaech app fromapp grid</div>
|
|
|
+ <div>2.tap global seaech search tif</div>
|
|
|
+ <div>3.switch to hwt mode and freehwr input character</div>
|
|
|
+ <div>4.tap delete button5.long press delete button</div>
|
|
|
+ </div>
|
|
|
+ <div class="task-title">Market</div>
|
|
|
+ <div class="task-content">CN</div>
|
|
|
+ <div class="task-title">Langunage</div>
|
|
|
+ <div class="task-content">CN</div>-->
|
|
|
+ <el-button class="done-button">Done</el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
<div class="dots">
|
|
|
<span v-for="dot in dots" :key="dot" :class="{ active: dot === activeTab }" @click="changeTab(dot)"></span>
|
|
|
</div>
|
|
@@ -34,11 +148,30 @@ export default {
|
|
|
},
|
|
|
tabClass: {
|
|
|
type: String
|
|
|
- }
|
|
|
+ },
|
|
|
+ isShowTaskList: Boolean,
|
|
|
+ isShowPlanList: Boolean,
|
|
|
+ isShowCaseList: Boolean,
|
|
|
+ isShowCaseDetail: Boolean,
|
|
|
+ isShowCaseCommit: Boolean,
|
|
|
+ taskName: Object,
|
|
|
+ planList: Object,
|
|
|
+ planName: Object,
|
|
|
+ caseName: Object,
|
|
|
+ caseList: Object,
|
|
|
+ caseProject: Object,
|
|
|
+ caseActive: Object,
|
|
|
+ caseFunction: Object,
|
|
|
+ caseContent: Object,
|
|
|
+ clickBackToTaskList: Function,
|
|
|
+ clickBackToPlanList: Function,
|
|
|
+ selectRowPlan: Function,
|
|
|
+ selectRowCase: Function,
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
- activeTab: 0
|
|
|
+ activeTab: 0,
|
|
|
+ rowClassName: '',
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
@@ -52,7 +185,7 @@ export default {
|
|
|
methods: {
|
|
|
changeTab(index) {
|
|
|
this.activeTab = index;
|
|
|
- }
|
|
|
+ },
|
|
|
}
|
|
|
};
|
|
|
</script>
|
|
@@ -204,4 +337,171 @@ export default {
|
|
|
border: 1px solid #707070;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+.task2-container {
|
|
|
+ height: 100vh;
|
|
|
+ display: flex;
|
|
|
+ width: 100%;
|
|
|
+ padding-left: 5vw;
|
|
|
+ justify-content: space-around;
|
|
|
+ align-items: center;
|
|
|
+ color: #fff;
|
|
|
+ .task-item {
|
|
|
+ width: 26.47vw;
|
|
|
+ height: 65.27vh;
|
|
|
+ background: rgba(0, 0, 0, 0.49);
|
|
|
+ padding: 1.29vh 0.98vw;
|
|
|
+ border-radius: 2.08vw;
|
|
|
+ position: relative;
|
|
|
+ font-size: 20px;
|
|
|
+ &.case {
|
|
|
+ padding: 2.31vh 1.82vw;
|
|
|
+ }
|
|
|
+ .task-title {
|
|
|
+ color: #72c5ff;
|
|
|
+ margin-top: 0.85vh;
|
|
|
+ }
|
|
|
+ .task-content {
|
|
|
+ margin-top: 0.925vh;
|
|
|
+ font-size: 14px;
|
|
|
+ }
|
|
|
+ .select-container {
|
|
|
+ height: 4.25vh;
|
|
|
+ line-height: 4.25vh;
|
|
|
+ background-color: transparent;
|
|
|
+ border-radius: 2.76vw;
|
|
|
+ border: 1px solid #dfdfdf;
|
|
|
+ padding: 0 0.925vh;
|
|
|
+ margin-bottom: 0.925vh;
|
|
|
+ input {
|
|
|
+ background-color: transparent;
|
|
|
+ height: 4.25vh;
|
|
|
+ line-height: 4.25vh;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .area-container {
|
|
|
+ height: 33.14vh;
|
|
|
+ background: rgba(0, 0, 0, 0.2);
|
|
|
+ border-radius: 1.04vw;
|
|
|
+ opacity: 1;
|
|
|
+ el-textarea {
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .done-button {
|
|
|
+ width: 11.6vw;
|
|
|
+ height: 4.25vh;
|
|
|
+ line-height: 4.25vh;
|
|
|
+ background: linear-gradient(180deg, #83cbfb 0%, #2e74b2 100%);
|
|
|
+ border-radius: 67px 67px 67px 67px;
|
|
|
+ opacity: 1;
|
|
|
+ border: 1px solid rgba(255, 255, 255, 0.4);
|
|
|
+ color: #fff;
|
|
|
+ padding: 0;
|
|
|
+ position: absolute;
|
|
|
+ bottom: 1.75vh;
|
|
|
+ right: 0.93vw;
|
|
|
+ }
|
|
|
+ .cancel-button {
|
|
|
+ width: 11.6vw;
|
|
|
+ height: 4.25vh;
|
|
|
+ line-height: 4.25vh;
|
|
|
+ background: rgba(255, 255, 255, 0.5);
|
|
|
+ border-radius: 67px 67px 67px 67px;
|
|
|
+ opacity: 1;
|
|
|
+ border: 1px solid rgba(255, 255, 255, 0.4);
|
|
|
+ color: #fff;
|
|
|
+ padding: 0;
|
|
|
+ position: absolute;
|
|
|
+ bottom: 1.75vh;
|
|
|
+ left: 0.93vw;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .task-item:before {
|
|
|
+ background: linear-gradient(
|
|
|
+ 273deg,
|
|
|
+ rgba(255, 255, 255, 0.63) 0%,
|
|
|
+ rgba(255, 255, 255, 0) 66%,
|
|
|
+ rgba(84, 84, 84, 0) 100%
|
|
|
+ );
|
|
|
+ border-radius: 2.08vw;
|
|
|
+ opacity: 1;
|
|
|
+ content: "";
|
|
|
+ position: absolute;
|
|
|
+ top: 0;
|
|
|
+ left: 0;
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ z-index: -1;
|
|
|
+ }
|
|
|
+
|
|
|
+ .task2-list {
|
|
|
+ .item-box {
|
|
|
+ width: 100%;
|
|
|
+ padding: 1.04vw 1.66vh 1.04vw;
|
|
|
+ background: rgba(0, 0, 0, 0.2);
|
|
|
+ border-radius: 20px 20px 20px 20px;
|
|
|
+ opacity: 1;
|
|
|
+ margin-bottom: 1.85vh;
|
|
|
+ .item-title {
|
|
|
+ height: 4.17vh;
|
|
|
+ font-size: 24px;
|
|
|
+ font-family: PingFang SC-Bold, PingFang SC;
|
|
|
+ font-weight: 400;
|
|
|
+ color: #fbfbfb;
|
|
|
+ line-height: 4.17vh;
|
|
|
+ }
|
|
|
+ .item-description {
|
|
|
+ margin-top: 0.37vh;
|
|
|
+ height: 2.31vh;
|
|
|
+ font-size: 14px;
|
|
|
+ font-family: PingFang SC-Regular, PingFang SC;
|
|
|
+ font-weight: 400;
|
|
|
+ color: #dfdfdf;
|
|
|
+ line-height: 2.31vh;
|
|
|
+ }
|
|
|
+ .item-tag {
|
|
|
+ display: flex;
|
|
|
+ margin-top: 0.92vh;
|
|
|
+ .tag {
|
|
|
+ padding: 0 1vw;
|
|
|
+ height: 2.96vh;
|
|
|
+ line-height: 2.96vh;
|
|
|
+ text-align: center;
|
|
|
+ background-color: #5d9a6d;
|
|
|
+ border-radius: 10px;
|
|
|
+ color: #f2f2f2;
|
|
|
+ margin-right: 1vw;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .task-table {
|
|
|
+ background: rgba(0, 0, 0, 0.2);
|
|
|
+ border-radius: 1vw;
|
|
|
+ height: 55.66vh;
|
|
|
+ color: #dfdfdf;
|
|
|
+ .el-table__header-wrapper,
|
|
|
+ .el-table__body-wrapper,
|
|
|
+ .el-table__cell,
|
|
|
+ tr {
|
|
|
+ background-color: transparent !important;
|
|
|
+ }
|
|
|
+ .el-table td.el-table__cell,
|
|
|
+ .el-table th.el-table__cell.is-leaf {
|
|
|
+ border-bottom: 1px solid rgba(0, 0, 0, 0.2) !important;
|
|
|
+ color: #dfdfdf;
|
|
|
+ font-size: 14px;
|
|
|
+ }
|
|
|
+ .el-table--border::after,
|
|
|
+ .el-table--group::after,
|
|
|
+ .el-table::before {
|
|
|
+ background-color: transparent;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
</style>
|