质量统计

This commit is contained in:
qianhao.xu
2023-12-12 22:34:16 +08:00
parent e3585a0204
commit b44d31a43d
5 changed files with 173 additions and 27 deletions

View File

@@ -0,0 +1,9 @@
import request from '@/utils/request'
export function QueryQualityStatisticsTable(query) {
return request({
url: 'mes/op/operation/quality/gueryQualityStatisticsTable',
method: 'get',
params: query,
})
}

View File

@@ -84,10 +84,10 @@ export default {
})
//接受缓存
connection.on('GetCache', (checkid, sum) => {
store.dispatch('socket/GetCache', {checkid,sum})
connection.on('GetCache', (Moudle,checkid, sum) => {
store.dispatch('socket/GetCache', {Moudle,checkid,sum})
})
},
}

View File

@@ -0,0 +1,106 @@
<template>
<div class="app-container">
<!-- 搜索部分 -->
<div>
<el-form :model="search" inline>
<el-form-item label="年">
<el-input v-model="search.year" placeholder="输入年份"></el-input>
</el-form-item>
<el-form-item label="周">
<el-input v-model="search.week" placeholder="输入周"></el-input>
</el-form-item>
<el-form-item label="日期">
<el-input v-model="search.date" placeholder="输入日期"></el-input>
</el-form-item>
<el-form-item label="工单号">
<el-input v-model="search.workorderid" placeholder="输入工单号"></el-input>
</el-form-item>
<el-button type="primary" icon="el-icon-search" @click="GetQualityStatisticsTable">搜索</el-button>
</el-form>
</div>
<vxe-table :data="QualityStatisticsTable" align="center" :loading="loading">
<vxe-column type="seq" width="60"></vxe-column>
<vxe-column field="id" title="id"></vxe-column>
<vxe-column field="fk_workorder_id" title="工单id"></vxe-column>
<vxe-column field="productName" title="产品名称"></vxe-column>
<vxe-column field="color" title="颜色"></vxe-column>
<vxe-column field="require" title="投入数"></vxe-column>
<vxe-column field="left_right" title="左右产品"></vxe-column>
<vxe-column field="team" title="班组"></vxe-column>
<vxe-colgroup title="首检">
<vxe-column field="qualifiedNum01" title="首检合格数量"></vxe-column>
<vxe-column field="defectNum01" title="首检抛光数量"></vxe-column>
<vxe-column field="polishNum01" title="首检打磨数量"></vxe-column>
<vxe-column field="scrapNum01" title="首检报废数量"></vxe-column>
</vxe-colgroup>
<vxe-colgroup title="二检">
<vxe-column field="qualifiedNum02" title="二检合格数量"></vxe-column>
<vxe-column field="polishNum02" title="二检打磨数量"></vxe-column>
<vxe-column field="scrapNum02" title="二检报废数量"></vxe-column>
</vxe-colgroup>
<vxe-colgroup title="三检">
<vxe-column field="qualifiedNum03" title="三检合格数量"></vxe-column>
<vxe-column field="polishNum03" title="三检打磨数量"></vxe-column>
<vxe-column field="scrapNum03" title="三检报废数量"></vxe-column>
</vxe-colgroup>
</vxe-table>
<pagination
:total="pagination.total"
:page.sync="pagination.pageNum"
:limit.sync="pagination.pageSize"
@pagination="GetQualityStatisticsTable()"
/>
</div>
</template>
<script>
import { QueryQualityStatisticsTable } from '@/api/operationManagement/quality/qualityStatistics.js'
export default {
name: 'qualityStatistics',
data() {
return {
search: {
year: 2023,
week: null,
date: null,
workorderid: "",
},
pagination: {
total: 0,
pageNum: 1,
pageSize: 10,
},
loading: true,
QualityStatisticsTable: [],
}
},
mounted() {
this.GetQualityStatisticsTable();
},
methods: {
// todo 获取表格
GetQualityStatisticsTable() {
const query = { ...this.search, ...this.pagination }
if (query.year == null||query.year==0) query.year = -1
if (query.week == null||query.week==0) query.week = -1
if (query.date == null||query.date==0) query.date = -1
if (query.date == null||query.date==0) query.date = -1
QueryQualityStatisticsTable(query)
.then((res) => {
if (res.code == 200) {
this.QualityStatisticsTable = res.data.item1;
this.pagination.total = res.data.item2;
this.loading = false
}
})
.catch((err) => {
this.$notify.error('未知错误')
})
},
},
}
</script>
<style lang="scss" scoped></style>

View File

@@ -570,7 +570,7 @@ export default {
})
.then(() => {
if (res.code == 200) {
if ((res.data = 1)) {
if ((res.data ==1)) {
this.$notify.success('删除成功')
this.getList()
} else {

View File

@@ -79,26 +79,24 @@
</div>
<div class="f">
<div class="f_item">
<div class="f_name">产品名称</div>
<div></div>
<div class="f_name">工单id{{ ProductSituationForm.workorderid }}</div>
</div>
<div class="f_item">
<div class="f_name">左右:</div>
<div></div>
<div class="f_name">产品名称{{ ProductSituationForm.productName }}</div>
</div>
<div class="f_item">
<div class="f_name">颜色:</div>
<div></div>
<div class="f_name">左右:{{ ProductSituationForm.direction }}</div>
</div>
<div class="f_item">
<div class="f_name">颜色:{{ ProductSituationForm.color }}</div>
</div>
<div class="f_item">
<div class="f_name">班组:</div>
<div></div>
<div class="f_name">班组: {{ ProductSituationForm.team }}</div>
</div>
<div class="f_item">
<div class="f_name">投入数:</div>
<div></div>
<div class="f_name">投入数:{{ ProductSituationForm.inputNum }}</div>
</div>
</div>
</div>
@@ -122,14 +120,41 @@ export default {
team: [{ inspectionModule: '' }], //班组
ProductSituationForm: {
name: '',
workorderid:"VW123456",
productName: 'VW12309',
direction: '左',
color: 'blued',
team: 'A',
inputNum: 7852,
},
signal: null,
data: null,
}
},
watch: {
'$store.getters.counterList': {
immediate: true,
deep: true,
handler(newValue, oldValue) {
switch (this.$store.getters.counterList.Moudle) {
case '油漆':
this.paint.filter((it) => it.id == this.$store.getters.counterList.checkid)[0].counter = this.$store.getters.counterList.sum
break
case '设备':
this.device.filter((it) => it.id == this.$store.getters.counterList.checkid)[0].counter = this.$store.getters.counterList.sum
break
case '毛坯':
this.blank.filter((it) => it.id == this.$store.getters.counterList.checkid)[0].counter = this.$store.getters.counterList.sum
break
case '程序':
this.program.filter((it) => it.id == this.$store.getters.counterList.checkid)[0].counter = this.$store.getters.counterList.sum
break
case '班组操作':
this.team.filter((it) => it.id == this.$store.getters.counterList.checkid)[0].counter = this.$store.getters.counterList.sum
break
}
},
},
},
computed: {
...mapGetters(['counterList']),
@@ -173,25 +198,31 @@ export default {
switch (item.inspectionModule) {
case '油漆':
// 把数据传递到redis
this.signalr.SR.invoke('SaveCacheInformation', '工单号', 'id', this.paint.filter((it) => it.id == item.id)[0].counter + 1).catch(
(err) => {
console.log(err)
},
)
this.signalr.SR.invoke('SaveCacheInformation', this.ProductSituationForm.workorderid, '油漆', item.id + '').catch((err) => {
console.log(err)
})
// redis再将数据返回
this.paint.filter((it) => it.id == item.id)[0].counter = this.counterList.sum
break
case '设备':
this.device.filter((it) => it.id == item.id)[0].counter++
this.signalr.SR.invoke('SaveCacheInformation', this.ProductSituationForm.workorderid, '设备', item.id + '').catch((err) => {
console.log(err)
})
break
case '毛坯':
this.blank.filter((it) => it.id == item.id)[0].counter++
this.signalr.SR.invoke('SaveCacheInformation', this.ProductSituationForm.workorderid, '毛坯', item.id + '').catch((err) => {
console.log(err)
})
break
case '程序':
this.program.filter((it) => it.id == item.id)[0].counter++
this.signalr.SR.invoke('SaveCacheInformation', this.ProductSituationForm.workorderid, '程序', item.id + '').catch((err) => {
console.log(err)
})
break
case '班组操作':
this.team.filter((it) => it.id == item.id)[0].counter++
this.signalr.SR.invoke('SaveCacheInformation', this.ProductSituationForm.workorderid, '班组操作', item.id + '').catch((err) => {
console.log(err)
})
break
default:
this.$notify.warning('异常操作,警告')
@@ -201,7 +232,7 @@ export default {
//todo 数据同步
/*
1.从后台获取数据
*/
//todo 初始话 signalR