<template>
|
<a-card :bordered="false">
|
<!-- 查询区域 -->
|
<div class="table-page-search-wrapper">
|
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
<a-row :gutter="24">
|
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
<a-form-item label="订单号">
|
<a-input placeholder="请输入订单号" v-model="queryParam.orderCode" allowClear></a-input>
|
</a-form-item>
|
</a-col>
|
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
<a-form-item label="物料编码">
|
<a-input placeholder="请输入物料编码" v-model="queryParam.materialNumber" allowClear></a-input>
|
</a-form-item>
|
</a-col>
|
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
<a-form-item label="物料名称">
|
<a-input placeholder="请输入物料名称" v-model="queryParam.materialName" allowClear></a-input>
|
</a-form-item>
|
</a-col>
|
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
<a-button type="info" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
|
</span>
|
</a-col>
|
</a-row>
|
</a-form>
|
</div>
|
<!-- 查询区域-END -->
|
|
<!-- table区域-begin -->
|
<div>
|
<a-table
|
ref="table"
|
size="middle"
|
:scroll="{x:true}"
|
bordered
|
rowKey="id"
|
:columns="columns"
|
:dataSource="dataSource"
|
:pagination="ipagination"
|
:loading="loading"
|
class="j-table-force-nowrap"
|
:expandedRowKeys.sync="expandedRowKeys"
|
@expand="handleExpand"
|
@change="handleTableChange">
|
<a-table
|
slot="expandedRowRender"
|
slot-scope="text"
|
:scroll="{x:true}"
|
:columns="innerColumns"
|
:data-source="innerData"
|
:pagination="false"
|
></a-table>
|
<span slot="action" slot-scope="text, record">
|
<a @click="handleDetail(record)">详情</a>
|
</span>
|
</a-table>
|
</div>
|
<pms-process-bill-materials-modal ref="modalForm" @ok="modalFormOk"></pms-process-bill-materials-modal>
|
</a-card>
|
</template>
|
|
<script>
|
|
import '@/assets/less/TableExpand.less'
|
import { mixinDevice } from '@/utils/mixin'
|
import { JeecgListMixin } from '@/mixins/JeecgListMixin'
|
import PmsProcessBillMaterialsModal from './modules/PmsProcessBillMaterialsModal'
|
import { getAction } from '@api/manage'
|
|
export default {
|
name: 'PmsProcessBillMaterialsList',
|
mixins: [JeecgListMixin, mixinDevice],
|
components: {
|
PmsProcessBillMaterialsModal
|
},
|
data() {
|
return {
|
description: '订单BOM管理页面',
|
innerData: [],
|
expandedRowKeys: [],
|
// 表头
|
columns: [
|
{
|
title: '#',
|
dataIndex: '',
|
key: 'rowIndex',
|
width: 60,
|
align: 'center',
|
customRender: function(t, r, index) {
|
return parseInt(index) + 1
|
}
|
},
|
{
|
title: '订单号',
|
align: 'center',
|
dataIndex: 'orderCode'
|
},
|
{
|
title: '物料编码',
|
align: 'center',
|
dataIndex: 'materialNumber'
|
},
|
{
|
title: '物料名称',
|
align: 'center',
|
dataIndex: 'materialName'
|
},
|
{
|
title: '基本单位',
|
align: 'center',
|
dataIndex: 'productionUnit'
|
},
|
{
|
title: '订单数量',
|
align: 'center',
|
dataIndex: 'productionQuantity'
|
},
|
{
|
title: '操作',
|
dataIndex: 'action',
|
align: 'center',
|
width: 147,
|
scopedSlots: { customRender: 'action' }
|
}
|
],
|
innerColumns: [
|
{
|
title: '#',
|
dataIndex: '',
|
key: 'rowIndex',
|
width: 60,
|
align: 'center',
|
customRender: function(t, r, index) {
|
return parseInt(index) + 1
|
}
|
},
|
{
|
title: '物料编码',
|
align: 'center',
|
dataIndex: 'materialNumber'
|
},
|
{
|
title: '物料名称',
|
align: 'center',
|
dataIndex: 'materialName'
|
},
|
{
|
title: '基本单位',
|
align: 'center',
|
dataIndex: 'productionUnit'
|
},
|
{
|
title: '需求数量',
|
align: 'center',
|
dataIndex: 'usageQuantity'
|
}
|
],
|
url: {
|
list: '/pms/processBillMaterials/list',
|
queryByMaterialId: '/pms/processBillMaterialsDetail/queryByMaterialId'
|
},
|
}
|
},
|
created() {
|
},
|
computed: {},
|
methods: {
|
handleExpand(expanded, record) {
|
let that = this
|
if(expanded) {
|
this.expandedRowKeys = [record.id];
|
getAction(that.url.queryByMaterialId, {materialId: record.id}).then((res)=>{
|
if(res.success){
|
this.innerData = [...res.result];
|
}else{
|
that.$message.warning(res.message);
|
this.innerData = [];
|
}
|
})
|
} else {
|
this.expandedRowKeys = [];
|
}
|
}
|
}
|
}
|
</script>
|
<style scoped>
|
@import '~@assets/less/common.less';
|
</style>
|