分布式调度框架。
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

150 lines
4.5 KiB

/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
<template>
<m-list-construction :title="searchParams.projectId ? $t('Project Home') : $t('Home')">
<template slot="content">
<div class="perject-home-content">
<div class="time-model">
<el-date-picker
v-model="dataTime"
type="datetimerange"
size="small"
@change="_datepicker"
range-separator="-"
:start-placeholder="$t('startDate')"
:end-placeholder="$t('endDate')"
value-format="yyyy-MM-dd HH:mm:ss">
</el-date-picker>
</div>
<div class="row" >
<div class="col-md-6">
<div class="chart-title">
<span>{{$t('Task status statistics')}}</span>
</div>
<div class="row">
<m-task-status-count :search-params="searchParams">
</m-task-status-count>
</div>
</div>
<div class="col-md-6">
<div class="chart-title">
<span>{{$t('Process Status Statistics')}}</span>
</div>
<div class="row">
<m-process-state-count :search-params="searchParams">
</m-process-state-count>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="chart-title" style="margin-bottom: -20px;margin-top: 30px">
<span>{{$t('Process Definition Statistics')}}</span>
</div>
<div>
<m-define-user-count :project-id="searchParams.projectId">
</m-define-user-count>
</div>
</div>
</div>
</div>
</template>
</m-list-construction>
</template>
<script>
import dayjs from 'dayjs'
import mDefineUserCount from './_source/defineUserCount'
import mCommandStateCount from './_source/commandStateCount'
import mTaskStatusCount from './_source/taskStatusCount'
import mProcessStateCount from './_source/processStateCount'
import mQueueCount from './_source/queueCount'
import localStore from '@/module/util/localStorage'
import mSecondaryMenu from '@/module/components/secondaryMenu/secondaryMenu'
import mListConstruction from '@/module/components/listConstruction/listConstruction'
export default {
name: 'projects-index-index',
data () {
return {
searchParams: {
projectId: null,
startDate: '',
endDate: ''
},
dataTime: [],
}
},
props: {
id: Number
},
methods: {
_datepicker (val) {
this.searchParams.startDate = val[0]
this.searchParams.endDate = val[1]
}
},
created () {
this.searchParams.projectId = this.id === 0 ? 0 : localStore.getItem('projectId')
this.dataTime[0] = dayjs().format('YYYY-MM-DD 00:00:00')
this.dataTime[1] = dayjs().format('YYYY-MM-DD HH:mm:ss')
},
components: {
mSecondaryMenu,
mListConstruction,
mDefineUserCount,
mCommandStateCount,
mTaskStatusCount,
mProcessStateCount,
mQueueCount
}
}
</script>
<style lang="scss" rel="stylesheet/scss">
.perject-home-content {
padding: 10px 20px;
position: relative;
.time-model {
position: absolute;
right: 8px;
top: -40px;
.ans-input {
>input {
width: 344px;
}
}
}
.chart-title {
text-align: center;
height: 60px;
line-height: 60px;
span {
font-size: 22px;
color: #333;
font-weight: bold;
}
}
}
.table-small-model {
.ellipsis {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: block;
}
}
</style>