update 数据分析 #9

Merged
gtz217 merged 1 commits from lb into develop 2022-10-17 15:51:27 +08:00
3 changed files with 69 additions and 64 deletions

View File

@ -5,14 +5,15 @@
<!-- 工厂 -->
<el-form-item>
<!-- <el-select v-model="dataForm.factoryId" :placeholder="$t('eq.name') + ' / ' + $t('eq.code')" clearable></el-select> -->
<el-select v-model="dataForm.ftId" :placeholder="'工厂'" clearable>
<el-select v-model="dataForm.ftId" :placeholder="'工厂'" clearable @change="handleFactoryChange">
<el-option v-for="factory in factoryList" :key="factory.id" :value="factory.id" :label="factory.name" />
</el-select>
</el-form-item>
<!-- 产线 -->
<el-form-item>
<el-select v-model="dataForm.productlines" :placeholder="'产线'" multiple clearable>
<el-option v-for="productLine in productLineList" :key="productLine.id" :value="productLine.id" :label="productLine.name" />
<el-option v-for="productLine in productLineList" :key="productLine.id" :value="productLine.id"
:label="productLine.name" />
</el-select>
</el-form-item>
<!-- 时间类型 -->
@ -29,15 +30,8 @@
</el-form-item>
<!-- 时间段选择 -->
<el-form-item v-else>
<el-date-picker
key="time-picker"
v-model="rawTime"
type="daterange"
:range-separator="'至'"
:start-placeholder="'开始时间'"
:end-placeholder="'结束时间'"
format="yyyy-MM-dd"
/>
<el-date-picker key="time-picker" v-model="rawTime" type="daterange" :range-separator="'至'"
:start-placeholder="'开始时间'" :end-placeholder="'结束时间'" format="yyyy-MM-dd" />
</el-form-item>
<!-- 按钮 -->
<el-form-item>
@ -48,7 +42,8 @@
<transition mode="out-in" name="slide-to-left">
<equipment-efficiency-graph v-if="showGraph" key="graph" ref="eegraph" @close-graph="showGraph = false" />
<base-table v-else :data="dataList" :table-head-configs="tableConfigs" :max-height="calcMaxHeight(8)" @operate-event="handleOperations" @refreshDataList="getDataList" />
<base-table v-else :data="dataList" :table-head-configs="tableConfigs" :max-height="calcMaxHeight(8)"
@operate-event="handleOperations" @refreshDataList="getDataList" />
<!-- v-loading="dataIsLoading " -->
</transition>
<!-- <el-pagination
@ -66,11 +61,11 @@
<script>
import i18n from '@/i18n'
import BaseTable from '@/components/base-table'
import TableOperateComponent from '@/components/base-table/components/operationComponent'
// import TableOperateComponent from '@/components/base-table/components/operationComponent'
import TableTextComponent from '@/components/base-table/components/detailComponent'
import EquipmentEfficiencyGraph from './equipmentEfficiencyGraph.vue'
import { calcMaxHeight } from '@/utils'
import { timeFilter } from '@/utils/filters'
// import { timeFilter } from '@/utils/filters'
import moment from 'moment'
const tableConfigs = [
@ -171,9 +166,10 @@ export default {
EquipmentEfficiencyGraph
},
created() {
this.getFactoryList()
activated() {
this.getFactoryList().then(() => {
this.getProductLineList()
})
},
watch: {
timeType() {
@ -184,12 +180,12 @@ export default {
methods: {
//
getFactoryList() {
this.$http({
url: this.$http.adornUrl('/monitoring/factory/page'),
return this.$http({
url: this.$http.adornUrl('/monitoring/factory/list'),
method: 'get'
}).then(({ data }) => {
if (data && data.code === 0) {
this.factoryList = data.data.list
}).then(({ data: res }) => {
if (res && res.code === 0) {
this.factoryList = res.data
/** set default */
if (this.factoryList.length) {
this.dataForm.ftId = this.factoryList[0].id
@ -200,20 +196,31 @@ export default {
}
})
},
//
handleFactoryChange(val) {
this.getProductLineList()
},
// 线
getProductLineList() {
this.$http({
url: this.$http.adornUrl('/monitoring/productionLine/page'),
const query = {
url: this.$http.adornUrl('/monitoring/productionLine/list'),
method: 'get'
}).then(({ data }) => {
if (data && data.code === 0) {
this.productLineList = data.data.list
/** set default */
if (this.productLineList.length) {
this.dataForm.productlines = [this.productLineList[0].id]
}
if (this.dataForm.ftId) {
query.params = this.$http.adornParams({
factoryId: this.dataForm.ftId
});
}
this.$http(query).then(({ data: res }) => {
if (res && res.code === 0 && res.data.length) {
this.productLineList = res.data
/** set default */
this.dataForm.productlines = [this.productLineList[0].id]
} else {
this.productLineList = []
this.dataForm.productlines = []
}
})
},

View File

@ -96,7 +96,7 @@ export default {
BaseTable
},
created() {
activated() {
// this.getFactoryList()
this.getProductLineList()
},
@ -123,17 +123,18 @@ export default {
// 线
getProductLineList() {
this.$http({
url: this.$http.adornUrl('/monitoring/productionLine/page'),
url: this.$http.adornUrl('/monitoring/productionLine/list'),
method: 'get'
}).then(({ data }) => {
if (data && data.code === 0) {
this.productLineList = data.data.list
}).then(({ data: res }) => {
if (res && res.code === 0) {
this.productLineList = res.data
/** set default */
if (this.productLineList.length) {
this.dataForm.productlines = [this.productLineList[0].id]
}
} else {
this.productLineList = []
this.dataForm.productlines = []
}
})
},

View File

@ -5,7 +5,8 @@
<!-- 产线 -->
<el-form-item>
<el-select v-model="dataForm.productlines" :placeholder="'产线'" @change="handleProductLineChange" clearable>
<el-option v-for="productLine in productLineList" :key="productLine.id" :value="productLine.id" :label="productLine.name" />
<el-option v-for="productLine in productLineList" :key="productLine.id" :value="productLine.id"
:label="productLine.name" />
</el-select>
</el-form-item>
<!-- 工序 -->
@ -30,14 +31,8 @@
</el-form>
<div class="time-chart" style="margin-top: 10px;">
<div
v-show="equipmentCount > 0"
id="time-chart__inner"
ref="time-chart__inner"
class="time-chart__inner"
style="min-height: 50vh;"
:style="{ height: autoHeight + 'px', width: '100%' }"
/>
<div v-show="equipmentCount > 0" id="time-chart__inner" ref="time-chart__inner" class="time-chart__inner"
style="min-height: 50vh;" :style="{ height: autoHeight + 'px', width: '100%' }" />
<div v-show="equipmentCount === 0">请先查询数据</div>
<!-- <div v-show="equipmentCount === 0">{{ $t('module.basicData.visual.hints.searchFirst') }}</div> -->
</div>
@ -231,9 +226,6 @@ export default {
}
},
created() {
this.getProductLineList().then(() => {
this.getWorksetionList()
})
this.getEqList()
},
mounted() {
@ -241,6 +233,11 @@ export default {
this.initChart()
})
},
activated() {
this.getProductLineList().then(() => {
this.getWorksetionList()
})
},
updated() {
if (this.chart) this.chart.resize()
},
@ -259,11 +256,11 @@ export default {
// 线
getProductLineList() {
return this.$http({
url: this.$http.adornUrl('/monitoring/productionLine/page'),
url: this.$http.adornUrl('/monitoring/productionLine/list'),
method: 'get'
}).then(({ data }) => {
if (data && data.code === 0) {
this.productLineList = data.data.list
}).then(({ data: res }) => {
if (res && res.code === 0) {
this.productLineList = res.data
/** set default */
if (this.productLineList.length) {
this.dataForm.productlines = this.productLineList[0].id