This commit is contained in:
liushuai
2020-02-27 08:35:46 +08:00
parent 7e81b57ab4
commit b740e50051
14 changed files with 568 additions and 458 deletions

View File

@@ -1,204 +1,191 @@
<template>
<div class="app-container">
<el-card style="width: 1137px">
<span>机床号</span>
<el-select v-model="Machine" filterable clearable size="small" style="width: 150px;" placeholder="机床号" @change="getGroup">
<el-option
v-for="item in Machines"
:key="item.value"
:label="item.label"
:value="item.value">
<div style="float: left">{{ item.label }}</div>
<div style="float: right; color: #8492a6; font-size: 13px">{{ item.value2 }}</div>
</el-option>
</el-select>
<span>组号</span>
<el-select v-model="Group" size="small" clearable placeholder="组号" style="width: 120px;" @change="getTableData">
<el-option
v-for="item in Groups"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<span>零件号</span>
<el-input v-model="number" placeholder="零件号" clearable size="small" style="width: 150px"/>
<el-button type="primary" plain class="el-icon-search" size="small" style="margin: 0px 10px;" @click="pageCurrent10 = 1;pageSize10 = 10;getTableData()">查询</el-button>
</el-card>
<el-card style="width: 1137px">
<el-table v-loading="" :data="tableData10" stripe highlight-current-row border style="width: 100%;max-height: 315px;margin-top: 10px" height="315px" size="mini" @sort-change="sortChange" @selection-change="handleSelectionChange">
<el-table-column type="selection" align="center" width="55"/>
<el-table-column label="机床图号" prop="机床图号" min-width="180" align="center">
<template slot-scope="scope">
{{ scope.row.机床图号 }}
</template>
</el-table-column>
<el-table-column label="组号" prop="组号" width="120" sortable="custom" align="center">
<template slot-scope="scope">
{{ scope.row.组号 }}
</template>
</el-table-column>
<el-table-column label="零件图号" prop="零件图号" align="center" sortable="custom" width="220">
<template slot-scope="scope">
{{ scope.row.零件图号 }}
</template>
</el-table-column>
<el-table-column label="零件名称" align="center" width="220">
<template slot-scope="scope">
{{ scope.row.零件名称 }}
</template>
</el-table-column>
<el-table-column label="数量" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.批次数量 }}
</template>
</el-table-column>
<el-table-column label="材料" prop="材料" align="center" sortable="custom" min-width="160">
<template slot-scope="scope">
{{ scope.row.材料 }}
</template>
</el-table-column>
</el-table>
<!--<div class="block">-->
<!--<el-pagination-->
<!--:current-page="pageCurrent10"-->
<!--:page-sizes="[10, 20, 30, 40]"-->
<!--:page-size="pageSize10"-->
<!--:total="total10"-->
<!--style="display:inline-block;width:50%"-->
<!--layout="total, sizes, prev, pager, next, jumper"-->
<!--@size-change="handleSizeChange10"-->
<!--@current-change="handleCurrentChange10"/>-->
<!--</div>-->
</el-card>
<el-card style="width: 1137px">
<span>离线备料单号:</span>
<el-input v-model="purchasingOrder" placeholder="离线备料单号" size="small" style="width: 160px" clearable/>
<span style="margin-left: 10px">供应商:</span>
<el-select v-model="supplierName" placeholder="供应商" size="small" style="width: 150px" filterable clearable @change="searchTable">
<el-option
v-for="item in supplierNames"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<el-button type="success" size="small" icon="el-icon-search" style="margin-left: 10px" @click="searchTable()">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-plus" style="margin-left: 10px" @click="addPurchaseOrder">创建采购计划单</el-button>
<!--<el-tooltip :open-delay="1200" effect="dark" content="保存选中的采购计划单" placement="top">-->
<!--<el-button type="baocun" size="small" icon="el-icon-download" style="margin-left: 10px" @click="saveMateriel">保存采购计划单</el-button>-->
<!--</el-tooltip>-->
<el-button type="primary" size="small" plain icon="el-icon-download" style="margin-left: 10px" @click="submitAddMaterial">选入备料</el-button>
</el-card>
<el-card style="width: 1137px">
<el-table v-loading="" :data="tableData" stripe highlight-current-row border style="width: 100%;max-height: 230px;margin-top: 10px" height="230px" size="mini" @row-click="searchMX">
<el-table-column label="采购状态" prop="采购计划状态" align="center" width="90">
<template slot-scope="scope">
<span v-if="Number(scope.row.采购计划状态)===0" type="warning" size="mini">未到货</span>
<span v-if="Number(scope.row.采购计划状态)===3" type="success" size="mini">已到货</span>
<span v-if="Number(scope.row.采购计划状态)===4" type="info" size="mini">已结算</span>
</template>
</el-table-column>
<el-table-column label="离线采购计划编号" align="center" width="200">
<template slot-scope="scope">
{{ scope.row.离线采购计划编号 }}
</template>
</el-table-column>
<el-table-column label="离线采购计划名称" align="center" width="180">
<template slot-scope="scope">
{{ scope.row.离线采购计划名称 }}
</template>
</el-table-column>
<el-table-column label="供应商" align="center" width="250" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.供应商名称 }}
</template>
</el-table-column>
<el-table-column label="下单日期" prop="下单日期" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.下单日期.split(' ')[0] }}
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="290">
<template slot-scope="scope">
<el-tooltip :open-delay="1200" effect="dark" content="打印采购计划单" placement="top">
<div style="display: inline-block">
<el-button size="mini" type="text" icon="el-icon-printer" @click="exportExcel(scope.row)">打印单据</el-button>
</div>
</el-tooltip>
<el-tooltip :open-delay="1200" effect="dark" content="编辑" placement="top">
<div style="display: inline-block">
<el-button :disabled="parseInt(scope.row.采购计划状态)===3 || parseInt(scope.row.采购计划状态)===4" style="margin-left: 10px" type="text" size="mini" icon="el-icon-edit-outline" @click="editPurchaseOrder(scope.row)"/>
</div>
</el-tooltip>
<el-tooltip :open-delay="1200" effect="dark" content="删除" placement="top">
<div style="display: inline-block">
<el-button :disabled="parseInt(scope.row.采购计划状态)===3 || parseInt(scope.row.采购计划状态)===4" style="margin-left: 10px" type="text" size="mini" icon="el-icon-delete" @click="deletePurchaseOrder(scope.row)"/>
</div>
</el-tooltip>
</template>
</el-table-column>
</el-table>
<!--<div class="block">-->
<!--<el-pagination-->
<!--:current-page="pageCurrent2"-->
<!--:page-sizes="[10, 20, 30, 40]"-->
<!--:page-size="pageSize2"-->
<!--:total="total2"-->
<!--style="display:inline-block;width:50%"-->
<!--layout="total, sizes, prev, pager, next, jumper"-->
<!--@size-change="handleSizeChange2"-->
<!--@current-change="handleCurrentChange2"/>-->
<!--</div>-->
</el-card>
<el-card style="width: 1137px">
<el-table v-loading="" :data="tableData3" highlight-current-row border style="width: 100%;margin-top: 10px" height="300px" size="mini">
<el-table-column label="采购状态" align="center" width="90">
<template slot-scope="scope">
<span v-if="Number(scope.row.是否到货)===0" type="warning" size="mini">未到货</span>
<span v-if="Number(scope.row.是否到货)===1" type="success" size="mini">已到货</span>
<span v-if="Number(scope.row.是否到货)===2" type="info" size="mini">已结算</span>
</template>
</el-table-column>
<el-table-column label="物料编码" prop="物料零件编码" align="center" width="180">
<template slot-scope="scope">
{{ scope.row.物料零件编码 }}
</template>
</el-table-column>
<el-table-column label="零件名称" align="center" width="160">
<template slot-scope="scope">
{{ scope.row.零件名称 }}
</template>
</el-table-column>
<el-table-column label="材料" prop="材料" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.材料 }}
</template>
</el-table-column>
<el-table-column label="数量" align="center" prop="数量" width="100px">
<template slot-scope="scope">
<el-input :disabled="parseInt(scope.row.是否到货)===1 || parseInt(scope.row.是否到货)===2" v-model="scope.row.数量" size="mini" style="width: 100%" @change="saveWeight(scope.$index, scope.row)"/>
</template>
</el-table-column>
<el-table-column label="成品尺寸(长、宽、高)" align="center" width="160px">
<template slot-scope="scope">
<el-input :disabled="parseInt(scope.row.是否到货)===1 || parseInt(scope.row.是否到货)===2" v-model="scope.row.成品尺寸" size="mini" style="width:100%" @change="saveWeight(scope.$index, scope.row)"/>
</template>
</el-table-column>
<el-table-column label="备注" align="center" prop="备注" width="220px">
<template slot-scope="scope">
<el-input :disabled="parseInt(scope.row.是否到货)===1 || parseInt(scope.row.是否到货)===2" v-model="scope.row.备注" size="mini" style="width:100%" @change="saveWeight(scope.$index, scope.row)"/>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="100px">
<template slot-scope="scope">
<el-tooltip :open-delay="1000" effect="dark" content="物料移出采购计划" placement="top">
<div style="display: inline-block">
<el-button :disabled="parseInt(scope.row.是否到货)===1 || parseInt(scope.row.是否到货)===2" type="text" size="mini" icon="el-icon-right" @click="deleteMX(scope.row)">移出</el-button>
</div>
</el-tooltip>
</template>
</el-table-column>
</el-table>
</el-card>
<div>
<div style="width: 100%;overflow:auto">
<div style="white-space: nowrap">
<el-card style="margin-left: 0px;width:820px; display: inline-block;height: 745px">
<el-col>
<el-select v-model="Machine" filterable clearable size="small" style="width: 150px;margin-top: 3px" placeholder="机床图号" @change="getGroup">
<el-option
v-for="item in Machines"
:key="item.value"
:label="item.label"
:value="item.value">
<div style="float: left">{{ item.label }}</div>
<div style="float: right; color: #8492a6; font-size: 13px">{{ item.value2 }}</div>
</el-option>
</el-select>
<el-select v-model="Group" size="small" clearable placeholder="组号" style="width: 120px;" @change="getTableData">
<el-option
v-for="item in Groups"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<el-input v-model="number" placeholder="零件号" clearable size="small" style="width: 150px"/>
<el-button type="primary" plain class="el-icon-search" size="small" style="margin: 0px 10px;" @click="getTableData()">查询</el-button>
<el-table v-loading="" :data="tableData10" stripe highlight-current-row border style="width: 100%;max-height: 315px;margin-top: 10px" height="690px" size="mini" @sort-change="sortChange" @selection-change="handleSelectionChange">
<el-table-column type="selection" align="center" width="55"/>
<el-table-column label="机床图号" prop="机床图号" width="120" align="center">
<template slot-scope="scope">
{{ scope.row.机床图号 }}
</template>
</el-table-column>
<el-table-column label="组号" prop="组号" width="80" sortable="custom" align="center">
<template slot-scope="scope">
{{ scope.row.组号 }}
</template>
</el-table-column>
<el-table-column label="零件图号" prop="零件图号" align="center" sortable="custom" width="180">
<template slot-scope="scope">
{{ scope.row.零件图号 }}
</template>
</el-table-column>
<el-table-column label="零件名称" align="center" width="140">
<template slot-scope="scope">
{{ scope.row.零件名称 }}
</template>
</el-table-column>
<el-table-column label="数量" align="center" width="70">
<template slot-scope="scope">
{{ scope.row.批次数量 }}
</template>
</el-table-column>
<el-table-column label="材料" prop="材料" align="center" sortable="custom" width="150">
<template slot-scope="scope">
{{ scope.row.材料 }}
</template>
</el-table-column>
</el-table>
</el-col>
</el-card>
<el-card style="margin-left: 1px;width:1120px; display: inline-block;">
<div> <!--slot="header"-->
<!--<el-input v-model="purchasingOrder" placeholder="采购计划单号" size="small" style="margin: 3px 0;width: 155px" clearable @keyup.enter.native="pageCurrent2=1;pageSize2=10;total2=0;searchTable2()"/>-->
<el-input v-model="purchasingOrder" placeholder="离线备料单号" size="small" style="width: 160px;margin-top: 3px" clearable/>
<el-select v-model="supplierName" placeholder="供应商" size="small" style="width: 200px" filterable clearable @change="searchTable">
<el-option
v-for="item in supplierNames"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<el-button type="primary" size="small" plain icon="el-icon-search" style="margin-left: 10px" @click="searchTable()">查询</el-button>
<el-button type="distribution" size="small" plain icon="el-icon-circle-plus-outline" style="margin-left: 10px" @click="addPurchaseOrder">采购计划单</el-button>
<!--<el-tooltip :open-delay="1200" effect="dark" content="保存选中的采购计划单" placement="top">-->
<!--<el-button type="baocun" size="small" icon="el-icon-download" style="margin-left: 10px" @click="saveMateriel">保存采购计划单</el-button>-->
<!--</el-tooltip>-->
<el-button type="primary" size="small" plain icon="el-icon-download" style="margin-left: 10px" @click="submitAddMaterial">选入备料</el-button>
</div>
<el-table v-loading="" :data="tableData" stripe highlight-current-row border style="width: 100%;max-height: 230px;margin-top: 10px" height="230px" size="mini" @row-click="searchMX">
<el-table-column label="进程" prop="采购计划状态" align="center" width="70">
<template slot-scope="scope">
<span v-if="Number(scope.row.采购计划状态)===0" type="warning" size="mini">未到货</span>
<span v-if="Number(scope.row.采购计划状态)===3" type="success" size="mini">已到货</span>
<span v-if="Number(scope.row.采购计划状态)===4" type="info" size="mini">已结算</span>
</template>
</el-table-column>
<el-table-column label="离线备料计划编号" align="center" width="140">
<template slot-scope="scope">
{{ scope.row.离线采购计划编号 }}
</template>
</el-table-column>
<el-table-column label="离线备料名称" align="center" width="160">
<template slot-scope="scope">
{{ scope.row.离线采购计划名称 }}
</template>
</el-table-column>
<el-table-column label="供应商" align="center" width="200" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.供应商名称 }}
</template>
</el-table-column>
<el-table-column label="下单日期" prop="下单日期" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.下单日期.split(' ')[0] }}
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="240">
<template slot-scope="scope">
<el-tooltip :open-delay="1200" effect="dark" content="打印采购计划单" placement="top">
<div style="display: inline-block">
<el-button size="mini" type="text" icon="el-icon-printer" @click="exportExcel(scope.row)">打印单据</el-button>
</div>
</el-tooltip>
<el-tooltip :open-delay="1200" effect="dark" content="编辑" placement="top">
<div style="display: inline-block">
<el-button :disabled="parseInt(scope.row.采购计划状态)===3 || parseInt(scope.row.采购计划状态)===4" style="margin-left: 10px" type="text" size="mini" icon="el-icon-edit-outline" @click="editPurchaseOrder(scope.row)"/>
</div>
</el-tooltip>
<el-tooltip :open-delay="1200" effect="dark" content="删除" placement="top">
<div style="display: inline-block">
<el-button :disabled="parseInt(scope.row.采购计划状态)===3 || parseInt(scope.row.采购计划状态)===4" style="margin-left: 10px" type="text" size="mini" icon="el-icon-delete" @click="deletePurchaseOrder(scope.row)"/>
</div>
</el-tooltip>
</template>
</el-table-column>
</el-table>
<!--<div class="block">-->
<!--<el-pagination-->
<!--:current-page="pageCurrent2"-->
<!--:page-sizes="[10, 20, 30, 40]"-->
<!--:page-size="pageSize2"-->
<!--:total="total2"-->
<!--style="display:inline-block;width:40%;float: right;margin-right: 60px"-->
<!--layout="total, sizes, prev, pager, next, jumper"-->
<!--@size-change="handleSizeChange2"-->
<!--@current-change="handleCurrentChange2"/>-->
<!--</div>-->
<el-table v-loading="" :data="tableData3" highlight-current-row border style="width: 100%;margin-top: 10px" height="455px" size="mini">
<el-table-column label="进程" align="center" width="70">
<template slot-scope="scope">
<span v-if="Number(scope.row.是否到货)===0" type="warning" size="mini">未到货</span>
<span v-if="Number(scope.row.是否到货)===1" type="success" size="mini">已到货</span>
<span v-if="Number(scope.row.是否到货)===2" type="info" size="mini">已结算</span>
</template>
</el-table-column>
<el-table-column label="物料编码" prop="物料零件编码" align="center" width="140" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.物料零件编码 }}
</template>
</el-table-column>
<el-table-column label="零件名称" align="center" width="120">
<template slot-scope="scope">
{{ scope.row.零件名称 }}
</template>
</el-table-column>
<el-table-column label="材料" prop="材料" align="center" width="95">
<template slot-scope="scope">
{{ scope.row.材料 }}
</template>
</el-table-column>
<el-table-column label="数量" align="center" prop="数量" width="100px">
<template slot-scope="scope">
<el-input v-positive="'int'" :disabled="parseInt(scope.row.是否到货)===1 || parseInt(scope.row.是否到货)===2" v-model="scope.row.数量" size="mini" type="int" style="width: 100%" @change="saveWeight(scope.$index, scope.row)"/>
</template>
</el-table-column>
<el-table-column label="成品尺寸(长、宽、高)" align="center" min-width="120px">
<template slot-scope="scope">
<el-input :disabled="parseInt(scope.row.是否到货)===1 || parseInt(scope.row.是否到货)===2" v-model="scope.row.成品尺寸" size="mini" style="width:100%" @change="saveWeight(scope.$index, scope.row)"/>
</template>
</el-table-column>
<el-table-column label="备注" align="center" prop="备注" min-width="100px">
<template slot-scope="scope">
<el-input :disabled="parseInt(scope.row.是否到货)===1 || parseInt(scope.row.是否到货)===2" v-model="scope.row.备注" size="mini" style="width:100%" @change="saveWeight(scope.$index, scope.row)"/>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="90px" fixed="right">
<template slot-scope="scope">
<el-tooltip :open-delay="1000" effect="dark" content="物料移出采购计划" placement="top">
<div style="display: inline-block">
<el-button :disabled="parseInt(scope.row.是否到货)===1 || parseInt(scope.row.是否到货)===2" type="text" size="mini" icon="el-icon-right" @click="deleteMX(scope.row)">移出</el-button>
</div>
</el-tooltip>
</template>
</el-table-column>
</el-table>
</el-card>
</div>
</div>
<el-card style="width: 1137px">
<div id="WGBLD" style="width: 1037px;margin: 0 auto">
<table cellspacing="0px" align="center" border="1 solid black" width="100%">
@@ -443,7 +430,7 @@ export default {
getTableData() {
this.tableData10 = []
if (!this.Machine && !this.Group && !this.number) {
this.$message.error('请输入筛选条件!')
this.$message.warning('请输入筛选条件!')
return
}
if (this.Machine === '') {
@@ -498,7 +485,7 @@ export default {
searchTable() {
this.tableData = []
if (!this.purchasingOrder && !this.supplierName) {
this.$message.error('请输入筛选条件!')
this.$message.warning('请输入筛选条件!')
return
}
this.purchasingOrder ? this.check3 = 1 : this.check3 = 0