123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- <template>
- <section>
- <div class="repair-list">
- <div v-for="(item, index) in chartData.bugCount" :key="'time'+index" class="repair-item">
- <div :class="{'item-detail': index === 0}" @click.stop>
- <span>{{ item.label }}</span>
- <div class="repair-time repair-hover" @click="openDrawer(item, chartData.bugCount)">{{ item.countStr }}<span> 个</span></div>
- <div v-show="Number(item.chainRatio)>=0" class="repair-up">环比:<i class="el-icon-caret-top" /><span>{{ item.chainRatio }}%</span></div>
- <div v-show="Number(item.chainRatio)<0" class="repair-down">环比:<i class="el-icon-caret-bottom" /><span>{{ item.chainRatio.substring(1,item.chainRatio.length) }}%</span></div>
- <div v-show="item.chainRatio === '--'" class="repair-up">环比:<span>{{ item.chainRatio }}%</span></div>
- </div>
- </div>
- </div>
- <div class="repair-list">
- <div v-for="(item, index) in chartData.averageBugCount" :key="'time'+index" class="repair-item">
- <div :class="{'item-detail': index === 0}" @click.stop>
- <span>{{ item.label }}</span>
- <div class="repair-time repair-hover" @click="openDrawer(item, chartData.averageBugCount)">{{ item.countStr }}<span> 个</span></div>
- <div v-show="Number(item.chainRatio)>=0" class="repair-up">环比:<i class="el-icon-caret-top" /><span>{{ item.chainRatio }}%</span></div>
- <div v-show="Number(item.chainRatio)<0" class="repair-down">环比:<i class="el-icon-caret-bottom" /><span>{{ item.chainRatio.substring(1,item.chainRatio.length) }}%</span></div>
- <div v-show="item.chainRatio === '--'" class="repair-up">环比:<span>{{ item.chainRatio }}%</span></div>
- </div>
- </div>
- </div>
- <div class="repair-list">
- <div v-for="(item, index) in chartData.averageBugRepairTime" :key="'time'+index" class="repair-item">
- <div :class="{'item-detail': index === 0}" @click.stop>
- <span>{{ item.label }}</span>
- <div class="repair-time repair-hover" @click="openDrawer(item, chartData.averageBugRepairTime)">{{ item.countStr }}<span> h</span></div>
- <div v-show="Number(item.chainRatio)>=0" class="repair-up">环比:<i class="el-icon-caret-top" /><span>{{ item.chainRatio }}%</span></div>
- <div v-show="Number(item.chainRatio)<0" class="repair-down">环比:<i class="el-icon-caret-bottom" /><span>{{ item.chainRatio.substring(1,item.chainRatio.length) }}%</span></div>
- <div v-show="item.chainRatio === '--'" class="repair-up">环比:<span>{{ item.chainRatio }}%</span></div>
- </div>
- </div>
- </div>
- </section>
- </template>
- <script>
- export default {
- props: {
- chartData: {
- type: Object,
- default: () => {},
- required: false
- }
- },
- data() {
- return {
- requireList: {}
- }
- },
- watch: {
- chartData: {
- handler(newV) {
- this.chartData = newV
- },
- immediate: true,
- deep: true
- }
- },
- methods: {
- openDrawer(val, list) {
- this.requireList = { ...val, yaxis: list }
- this.$emit('requireBug', this.requireList)
- }
- }
- }
- </script>
- <style lang="scss" scoped>
- .repair-list {
- display: flex;
- justify-content: space-between;
- width: 84%;
- margin: 20px auto;
- background:rgba(255,255,255,1);
- box-shadow:0px 2px 8px rgba(0,0,0,0.15);
- border-radius: 4px;
- .repair-item {
- position: relative;
- width: 20%;
- font-size: 12px;
- font-weight: bold;
- padding: 11px 17px 11px 17px;
- display: flex;
- padding-left: 60px;
- flex-direction: column;
- color: #909399;
- .repair-time {
- color: #303133;
- font-size: 18px;
- margin:25px 0;
- span {
- font-size: 12px;
- color: #666666;
- }
- }
- }
- .item-detail{
- border-right:1px solid rgba(112,112,112,0.12);
- }
- .repair-up i , .repair-up span{
- color:#F32850
- }
- .repair-down i, .repair-down span {
- color:#9FFF39
- }
- }
- .repair-hover {
- cursor: pointer;
- color: #409eff;
- }
- </style>
|