零件数查询

This commit is contained in:
chenjianan
2019-07-18 16:22:12 +08:00
parent d8037ef3ae
commit 707dcb4278
2 changed files with 226 additions and 21 deletions

View File

@@ -1,5 +1,39 @@
<template>
<div class="app-container">
<el-card>
<div style="width:100%">
<el-divider content-position="right">
<el-button type="text" @click="searchUnInquiryPartNumber">刷新</el-button> | 待询价零件数
</el-divider>
<el-row>
<el-col v-for="(machine,index) in machines1" :key="index" style="width: 200px">
<el-card shadow="hover" class="sudoku_item" style="height:80px;width: 90%" @click.native="clickCard1(machine.项目流水号, machine.机床流水号)">
<el-badge :value="machine.未询价零件数">
<div style="width: 100px;height:50px;margin:0" class="sudoku_item">
{{ machine.机床图号 }}
</div>
</el-badge>
</el-card>
</el-col>
</el-row>
<el-divider content-position="right"/>
<el-divider content-position="right">
<el-button type="text" @click="searchUnBuyPartNumber">刷新</el-button> | 待采购零件数
</el-divider>
<el-row>
<el-col v-for="(machine,index) in machines2" :key="index" style="width: 200px">
<el-card shadow="hover" class="sudoku_item" style="height:80px;width: 90%" @click.native="clickCard2(machine.项目流水号, machine.机床流水号)">
<el-badge :value="machine.未采购零件数">
<div style="width: 100px;height:50px;margin:0" class="sudoku_item">
{{ machine.机床图号 }}
</div>
</el-badge>
</el-card>
</el-col>
</el-row>
<el-divider content-position="right"/>
</div>
</el-card>
<el-row>
<el-col :span="24">
<el-tabs v-model="tabName" type="border-card" @tab-click="tabClick">
@@ -76,6 +110,7 @@
<template slot-scope="scope">
<el-tag v-if="unInquiry(scope.row)" type="warning" size="small">未询价</el-tag>
<el-tag v-if="inquiry(scope.row)" type="success" size="small">已询价</el-tag>
<el-tag v-if="approval(scope.row)" type="primary" size="small">审批中</el-tag>
<el-tag v-if="purchased(scope.row)" type="info" size="small">已采购</el-tag>
</template>
</el-table-column>
@@ -262,6 +297,7 @@
<template slot-scope="scope">
<el-tag v-if="unInquiry(scope.row)" type="warning" size="small">未询价</el-tag>
<el-tag v-if="inquiry(scope.row)" type="success" size="small">已询价</el-tag>
<el-tag v-if="approval(scope.row)" type="primary" size="small">审批中</el-tag>
<el-tag v-if="purchased(scope.row)" type="info" size="small">已采购</el-tag>
</template>
</el-table-column>
@@ -815,6 +851,7 @@ import { searchMaterial, searchPart, searchSupplier, searchCreateInquirySheet, s
import { mapGetters } from 'vuex'
import { exportExcelMethod } from './exportExcel'
import $ from 'jquery'
import request from '@/utils/request'
export default {
name: '', // 创建询价单
@@ -880,6 +917,9 @@ export default {
children: [{
value: 5,
label: '未采购'
}, {
value: 7,
label: '审批中'
}, {
value: 6,
label: '已采购'
@@ -969,7 +1009,9 @@ export default {
dialogVisible4: false,
backlogGroupPartNum: '',
backlogMaterialNum: '',
cancelNum: 0
cancelNum: 0,
machines1: [],
machines2: []
}
},
computed: {
@@ -982,13 +1024,134 @@ export default {
this.fetchData()
this.searchTable11() // 查表1
this.searchTable2() // 查表2
this.searchUnInquiryPartNumber()
this.searchUnBuyPartNumber()
},
methods: {
clickCard1(project, machine) {
this.projectValue = project
this.machine = []
this.machineValue = ''
this.group = []
this.groupValue = ''
searchMachine(this.projectValue).then(response => {
for (let i = 0; i < response.data.length; i++) {
this.machine.push({
value: response.data[i].机床流水号,
label: response.data[i].机床图号,
name: response.data[i].机床名称
})
}
this.machineValue = machine
this.materialStatusValue = [2, 3]
this.searchTable11()
this.searchTable12()
})
},
clickCard2(project, machine) {
this.projectValue = project
this.machine = []
this.machineValue = ''
this.group = []
this.groupValue = ''
searchMachine(this.projectValue).then(response => {
for (let i = 0; i < response.data.length; i++) {
this.machine.push({
value: response.data[i].机床流水号,
label: response.data[i].机床图号,
name: response.data[i].机床名称
})
}
this.machineValue = machine
this.materialStatusValue = [2, 4, 5]
this.searchTable11()
this.searchTable12()
})
},
async searchUnInquiryPartNumber() {
this.machines1 = []
await request({
url: '',
method: 'post',
data: {
type: '3',
name: ` select 项目流水号,机床流水号,机床图号,sum(未询价零件数) as 未询价零件数,人员编号 from (
SELECT 项目流水号,机床流水号,机床图号,count(*) as 未询价零件数,人员编号
FROM MRP_计划订单_组件零件清单_标准件和外购件_视图
left join (
select 采购管理_采购合同_采购部.*,组件零件流水号,数量,已到货数量 from 采购管理_采购合同明细_采购部
inner join 采购管理_采购合同_采购部 on 采购管理_采购合同明细_采购部.采购合同流水号 = 采购管理_采购合同_采购部.采购合同流水号
where 采购管理_采购合同_采购部.是否未通过 = 0
) as 通过的合同 on 通过的合同.组件零件流水号 = MRP_计划订单_组件零件清单_标准件和外购件_视图.组件零件流水号
left join 采购管理_供应商 on 通过的合同.供应商流水号 = 采购管理_供应商.供应商流水号
where 询价状态编号 = 1 and 采购状态编号 = 1 and 零件类型 = 2
and 人员编号 = ${this.id}
group by 项目流水号,机床流水号,机床图号,人员编号
union all
SELECT 项目流水号,机床流水号,机床图号,count(*) as 未询价零件数,人员编号
FROM MRP_计划订单_组件零件清单_基本件_视图
left join (
select 采购管理_采购合同_采购部.*,组件零件基本件流水号,数量,已到货数量 from 采购管理_采购合同明细_采购部
inner join 采购管理_采购合同_采购部 on 采购管理_采购合同明细_采购部.采购合同流水号 = 采购管理_采购合同_采购部.采购合同流水号
where 采购管理_采购合同_采购部.是否未通过 = 0
) as 通过的合同 on 通过的合同.组件零件基本件流水号 = MRP_计划订单_组件零件清单_基本件_视图.组件零件基本件流水号
left join 采购管理_供应商 on 通过的合同.供应商流水号 = 采购管理_供应商.供应商流水号
where 询价状态编号 = 1 and 采购状态编号 = 1
and 人员编号 = ${this.id}
group by 项目流水号,机床流水号,机床图号,人员编号
) as table1
group by 项目流水号,机床流水号,机床图号,人员编号`
}
}).then(res => {
this.machines1 = res.data
})
},
async searchUnBuyPartNumber() {
this.machines2 = []
await request({
url: '',
method: 'post',
data: {
type: '3',
name: ` select 项目流水号,机床流水号,机床图号,sum(未采购零件数) as 未采购零件数,人员编号 from (
SELECT 项目流水号,机床流水号,机床图号,count(*) as 未采购零件数,人员编号
FROM MRP_计划订单_组件零件清单_标准件和外购件_视图
left join (
select 采购管理_采购合同_采购部.*,组件零件流水号,数量,已到货数量 from 采购管理_采购合同明细_采购部
inner join 采购管理_采购合同_采购部 on 采购管理_采购合同明细_采购部.采购合同流水号 = 采购管理_采购合同_采购部.采购合同流水号
where 采购管理_采购合同_采购部.是否未通过 = 0
) as 通过的合同 on 通过的合同.组件零件流水号 = MRP_计划订单_组件零件清单_标准件和外购件_视图.组件零件流水号
left join 采购管理_供应商 on 通过的合同.供应商流水号 = 采购管理_供应商.供应商流水号
where 询价状态编号 = 3 and 采购状态编号 = 1 and 零件类型 = 2
and 人员编号 = ${this.id}
group by 项目流水号,机床流水号,机床图号,人员编号
union all
SELECT 项目流水号,机床流水号,机床图号,count(*) as 未采购零件数,人员编号
FROM MRP_计划订单_组件零件清单_基本件_视图
left join (
select 采购管理_采购合同_采购部.*,组件零件基本件流水号,数量,已到货数量 from 采购管理_采购合同明细_采购部
inner join 采购管理_采购合同_采购部 on 采购管理_采购合同明细_采购部.采购合同流水号 = 采购管理_采购合同_采购部.采购合同流水号
where 采购管理_采购合同_采购部.是否未通过 = 0
) as 通过的合同 on 通过的合同.组件零件基本件流水号 = MRP_计划订单_组件零件清单_基本件_视图.组件零件基本件流水号
left join 采购管理_供应商 on 通过的合同.供应商流水号 = 采购管理_供应商.供应商流水号
where 询价状态编号 = 3 and 采购状态编号 = 1
and 人员编号 = ${this.id}
group by 项目流水号,机床流水号,机床图号,人员编号
) as table1
group by 项目流水号,机床流水号,机床图号,人员编号`
}
}).then(res => {
this.machines2 = res.data
})
},
unInquiry(row) {
return parseInt(row.询价状态编号) === 1
},
inquiry(row) {
return parseInt(row.询价状态编号) === 3 && parseInt(row.采购状态编号) !== 3
return parseInt(row.询价状态编号) === 3 && parseInt(row.采购状态编号) === 1
},
approval(row) {
return parseInt(row.询价状态编号) !== 1 && parseInt(row.采购状态编号) === 2
},
purchased(row) {
return parseInt(row.询价状态编号) !== 1 && parseInt(row.采购状态编号) === 3
@@ -1736,3 +1899,45 @@ export default {
background: lightgray;
}
</style>
<style rel="stylesheet/scss" lang="scss" scoped>
.item {
margin-top: 10px;
margin-right: 40px;
}
.sudoku_row{
display: flex;
align-items: center;
width:100%;
flex-wrap: wrap;
}
.sudoku_item{
margin-bottom: 20px;
margin-left: 20px;
/*border: 1px solid red;*/
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
width:15%;
height: 200px;
padding-top: 10px;
padding-bottom: 10px;
}
.opacity{
opacity: 0.4;
background: #e5e5e5;
}
.sudoku_item img{
margin-bottom: 3px;
display: block;
}
.dashboard {
&-container {
margin: 30px;
}
&-text {
font-size: 30px;
line-height: 46px;
}
}
</style>